Find this useful? Enter your email to receive occasional updates for securing PHP code.

Signing you up...

Thank you for signing up!

PHP Decode

<?php /** Adminer - Compact database management * @link https://www.adminer.org/ * @aut..

Decoded Output download

<?php 
/** Adminer - Compact database management 
* @link https://www.adminer.org/ 
* @author Jakub Vrana, https://www.vrana.cz/ 
* @copyright 2007 Jakub Vrana 
* @license https://www.apache.org/licenses/LICENSE-2.0 Apache License, Version 2.0 
* @license https://www.gnu.org/licenses/gpl-2.0.html GNU General Public License, version 2 (one or other) 
* @version 4.8.1 
*/function 
adminer_errors($cc,$ec){return!!preg_match('~^(Trying to access array offset on value of type null|Undefined array key)~',$ec);}error_reporting(6135);set_error_handler('adminer_errors',E_WARNING);$wc=!preg_match('~^(unsafe_raw)?$~',ini_get("filter.default"));if($wc||ini_get("filter.default_flags")){foreach(array('_GET','_POST','_COOKIE','_SERVER')as$X){$fh=filter_input_array(constant("INPUT$X"),FILTER_UNSAFE_RAW);if($fh)$$X=$fh;}}if(function_exists("mb_internal_encoding"))mb_internal_encoding("8bit");function 
connection(){global$g;return$g;}function 
adminer(){global$c;return$c;}function 
version(){global$fa;return$fa;}function 
idf_unescape($v){if(!preg_match('~^[`\'"]~',$v))return$v;$wd=substr($v,-1);return 
str_replace($wd.$wd,$wd,substr($v,1,-1));}function 
escape_string($X){return 
substr(q($X),1,-1);}function 
number($X){return 
preg_replace('~[^0-9]+~','',$X);}function 
number_type(){return'((?<!o)int(?!er)|numeric|real|float|double|decimal|money)';}function 
remove_slashes($kf,$wc=false){if(function_exists("get_magic_quotes_gpc")&&get_magic_quotes_gpc()){while(list($z,$X)=each($kf)){foreach($X 
as$od=>$W){unset($kf[$z][$od]);if(is_array($W)){$kf[$z][stripslashes($od)]=$W;$kf[]=&$kf[$z][stripslashes($od)];}else$kf[$z][stripslashes($od)]=($wc?$W:stripslashes($W));}}}}function 
bracket_escape($v,$_a=false){static$Sg=array(':'=>':1',']'=>':2','['=>':3','"'=>':4');return 
strtr($v,($_a?array_flip($Sg):$Sg));}function 
min_version($uh,$Id="",$h=null){global$g;if(!$h)$h=$g;$Sf=$h->server_info;if($Id&&preg_match('~([\d.]+)-MariaDB~',$Sf,$C)){$Sf=$C[1];$uh=$Id;}return(version_compare($Sf,$uh)>=0);}function 
charset($g){return(min_version("5.5.3",0,$g)?"utf8mb4":"utf8");}function 
script($bg,$Rg="\n"){return"<script".nonce().">$bg</script>$Rg";}function 
script_src($kh){return"<script src='".h($kh)."'".nonce()."></script>\n";}function 
nonce(){return' nonce="'.get_nonce().'"';}function 
target_blank(){return' target="_blank" rel="noreferrer noopener"';}function 
h($lg){return 
str_replace("\0","&#0;",htmlspecialchars($lg,ENT_QUOTES,'utf-8'));}function 
nl_br($lg){return 
str_replace("\n","<br>",$lg);}function 
checkbox($E,$Y,$Na,$sd="",$te="",$Ra="",$td=""){$K="<input type='checkbox' name='$E' value='".h($Y)."'".($Na?" checked":"").($td?" aria-labelledby='$td'":"").">".($te?script("qsl('input').onclick = function () { $te };",""):"");return($sd!=""||$Ra?"<label".($Ra?" class='$Ra'":"").">$K".h($sd)."</label>":$K);}function 
optionlist($xe,$Nf=null,$oh=false){$K="";foreach($xe 
as$od=>$W){$ye=array($od=>$W);if(is_array($W)){$K.='<optgroup label="'.h($od).'">';$ye=$W;}foreach($ye 
as$z=>$X)$K.='<option'.($oh||is_string($z)?' value="'.h($z).'"':'').(($oh||is_string($z)?(string)$z:$X)===$Nf?' selected':'').'>'.h($X);if(is_array($W))$K.='</optgroup>';}return$K;}function 
html_select($E,$xe,$Y="",$se=true,$td=""){if($se)return"<select name='".h($E)."'".($td?" aria-labelledby='$td'":"").">".optionlist($xe,$Y)."</select>".(is_string($se)?script("qsl('select').onchange = function () { $se };",""):"");$K="";foreach($xe 
as$z=>$X)$K.="<label><input type='radio' name='".h($E)."' value='".h($z)."'".($z==$Y?" checked":"").">".h($X)."</label>";return$K;}function 
select_input($wa,$xe,$Y="",$se="",$Xe=""){$_g=($xe?"select":"input");return"<$_g$wa".($xe?"><option value=''>$Xe".optionlist($xe,$Y,true)."</select>":" size='10' value='".h($Y)."' placeholder='$Xe'>").($se?script("qsl('$_g').onchange = $se;",""):"");}function 
confirm($D="",$Of="qsl('input')"){return 
script("$Of.onclick = function () { return confirm('".($D?js_escape($D):lang(0))."'); };","");}function 
print_fieldset($u,$Ad,$xh=false){echo"<fieldset><legend>","<a href='#fieldset-$u'>$Ad</a>",script("qsl('a').onclick = partial(toggle, 'fieldset-$u');",""),"</legend>","<div id='fieldset-$u'".($xh?"":" class='hidden'").">\n";}function 
bold($Ga,$Ra=""){return($Ga?" class='active $Ra'":($Ra?" class='$Ra'":""));}function 
odd($K=' class="odd"'){static$t=0;if(!$K)$t=-1;return($t++%2?$K:'');}function 
js_escape($lg){return 
addcslashes($lg,"\r\n'\\/");}function 
json_row($z,$X=null){static$xc=true;if($xc)echo"{";if($z!=""){echo($xc?"":",")."\n\t\"".addcslashes($z,"\r\n\t\"\\/").'": '.($X!==null?'"'.addcslashes($X,"\r\n\"\\/").'"':'null');$xc=false;}else{echo"\n}\n";$xc=true;}}function 
ini_bool($cd){$X=ini_get($cd);return(preg_match('~^(on|true|yes)$~i',$X)||(int)$X);}function 
sid(){static$K;if($K===null)$K=(SID&&!($_COOKIE&&ini_bool("session.use_cookies")));return$K;}function 
set_password($th,$O,$V,$G){$_SESSION["pwds"][$th][$O][$V]=($_COOKIE["adminer_key"]&&is_string($G)?array(encrypt_string($G,$_COOKIE["adminer_key"])):$G);}function 
get_password(){$K=get_session("pwds");if(is_array($K))$K=($_COOKIE["adminer_key"]?decrypt_string($K[0],$_COOKIE["adminer_key"]):false);return$K;}function 
q($lg){global$g;return$g->quote($lg);}function 
get_vals($I,$d=0){global$g;$K=array();$J=$g->query($I);if(is_object($J)){while($L=$J->fetch_row())$K[]=$L[$d];}return$K;}function 
get_key_vals($I,$h=null,$Vf=true){global$g;if(!is_object($h))$h=$g;$K=array();$J=$h->query($I);if(is_object($J)){while($L=$J->fetch_row()){if($Vf)$K[$L[0]]=$L[1];else$K[]=$L[0];}}return$K;}function 
get_rows($I,$h=null,$m="<p class='error'>"){global$g;$fb=(is_object($h)?$h:$g);$K=array();$J=$fb->query($I);if(is_object($J)){while($L=$J->fetch_assoc())$K[]=$L;}elseif(!$J&&!is_object($h)&&$m&&defined("PAGE_HEADER"))echo$m.error()."\n";return$K;}function 
unique_array($L,$x){foreach($x 
as$w){if(preg_match("~PRIMARY|UNIQUE~",$w["type"])){$K=array();foreach($w["columns"]as$z){if(!isset($L[$z]))continue 
2;$K[$z]=$L[$z];}return$K;}}}function 
escape_key($z){if(preg_match('(^([\w(]+)('.str_replace("_",".*",preg_quote(idf_escape("_"))).')([ \w)]+)$)',$z,$C))return$C[1].idf_escape(idf_unescape($C[2])).$C[3];return 
idf_escape($z);}function 
where($Z,$o=array()){global$g,$y;$K=array();foreach((array)$Z["where"]as$z=>$X){$z=bracket_escape($z,1);$d=escape_key($z);$K[]=$d.($y=="sql"&&is_numeric($X)&&preg_match('~\.~',$X)?" LIKE ".q($X):($y=="mssql"?" LIKE ".q(preg_replace('~[_%[]~','[\0]',$X)):" = ".unconvert_field($o[$z],q($X))));if($y=="sql"&&preg_match('~char|text~',$o[$z]["type"])&&preg_match("~[^ -@]~",$X))$K[]="$d = ".q($X)." COLLATE ".charset($g)."_bin";}foreach((array)$Z["null"]as$z)$K[]=escape_key($z)." IS NULL";return 
implode(" AND ",$K);}function 
where_check($X,$o=array()){parse_str($X,$Ma);remove_slashes(array(&$Ma));return 
where($Ma,$o);}function 
where_link($t,$d,$Y,$ue="="){return"&where%5B$t%5D%5Bcol%5D=".urlencode($d)."&where%5B$t%5D%5Bop%5D=".urlencode(($Y!==null?$ue:"IS NULL"))."&where%5B$t%5D%5Bval%5D=".urlencode($Y);}function 
convert_fields($e,$o,$N=array()){$K="";foreach($e 
as$z=>$X){if($N&&!in_array(idf_escape($z),$N))continue;$ua=convert_field($o[$z]);if($ua)$K.=", $ua AS ".idf_escape($z);}return$K;}function 
cookie($E,$Y,$Dd=2592000){global$ba;return 
header("Set-Cookie: $E=".urlencode($Y).($Dd?"; expires=".gmdate("D, d M Y H:i:s",time()+$Dd)." GMT":"")."; path=".preg_replace('~\?.*~','',$_SERVER["REQUEST_URI"]).($ba?"; secure":"")."; HttpOnly; SameSite=lax",false);}function 
restart_session(){if(!ini_bool("session.use_cookies"))session_start();}function 
stop_session($zc=false){$nh=ini_bool("session.use_cookies");if(!$nh||$zc){session_write_close();if($nh&&@ini_set("session.use_cookies",false)===false)session_start();}}function&get_session($z){return$_SESSION[$z][DRIVER][SERVER][$_GET["username"]];}function 
set_session($z,$X){$_SESSION[$z][DRIVER][SERVER][$_GET["username"]]=$X;}function 
auth_url($th,$O,$V,$k=null){global$Kb;preg_match('~([^?]*)\??(.*)~',remove_from_uri(implode("|",array_keys($Kb))."|username|".($k!==null?"db|":"").session_name()),$C);return"$C[1]?".(sid()?SID."&":"").($th!="server"||$O!=""?urlencode($th)."=".urlencode($O)."&":"")."username=".urlencode($V).($k!=""?"&db=".urlencode($k):"").($C[2]?"&$C[2]":"");}function 
is_ajax(){return($_SERVER["HTTP_X_REQUESTED_WITH"]=="XMLHttpRequest");}function 
redirect($B,$D=null){if($D!==null){restart_session();$_SESSION["messages"][preg_replace('~^[^?]*~','',($B!==null?$B:$_SERVER["REQUEST_URI"]))][]=$D;}if($B!==null){if($B=="")$B=".";header("Location: $B");exit;}}function 
query_redirect($I,$B,$D,$sf=true,$jc=true,$qc=false,$Gg=""){global$g,$m,$c;if($jc){$hg=microtime(true);$qc=!$g->query($I);$Gg=format_time($hg);}$dg="";if($I)$dg=$c->messageQuery($I,$Gg,$qc);if($qc){$m=error().$dg.script("messagesPrint();");return 
false;}if($sf)redirect($B,$D.$dg);return 
true;}function 
queries($I){global$g;static$nf=array();static$hg;if(!$hg)$hg=microtime(true);if($I===null)return 
array(implode("\n",$nf),format_time($hg));$nf[]=(preg_match('~;$~',$I)?"DELIMITER ;;\n$I;\nDELIMITER ":$I).";";return$g->query($I);}function 
apply_queries($I,$S,$fc='table'){foreach($S 
as$Q){if(!queries("$I ".$fc($Q)))return 
false;}return 
true;}function 
queries_redirect($B,$D,$sf){list($nf,$Gg)=queries(null);return 
query_redirect($nf,$B,$D,$sf,false,!$sf,$Gg);}function 
format_time($hg){return 
lang(1,max(0,microtime(true)-$hg));}function 
relative_uri(){return 
str_replace(":","%3a",preg_replace('~^[^?]*/([^?]*)~','\1',$_SERVER["REQUEST_URI"]));}function 
remove_from_uri($Le=""){return 
substr(preg_replace("~(?<=[?&])($Le".(SID?"":"|".session_name()).")=[^&]*&~",'',relative_uri()."&"),0,-1);}function 
pagination($F,$qb){return" ".($F==$qb?$F+1:'<a href="'.h(remove_from_uri("page").($F?"&page=$F".($_GET["next"]?"&next=".urlencode($_GET["next"]):""):"")).'">'.($F+1)."</a>");}function 
get_file($z,$yb=false){$uc=$_FILES[$z];if(!$uc)return 
null;foreach($uc 
as$z=>$X)$uc[$z]=(array)$X;$K='';foreach($uc["error"]as$z=>$m){if($m)return$m;$E=$uc["name"][$z];$Og=$uc["tmp_name"][$z];$gb=file_get_contents($yb&&preg_match('~\.gz$~',$E)?"compress.zlib://$Og":$Og);if($yb){$hg=substr($gb,0,3);if(function_exists("iconv")&&preg_match("~^\xFE\xFF|^\xFF\xFE~",$hg,$yf))$gb=iconv("utf-16","utf-8",$gb);elseif($hg=="\xEF\xBB\xBF")$gb=substr($gb,3);$K.=$gb."\n\n";}else$K.=$gb;}return$K;}function 
upload_error($m){$Od=($m==UPLOAD_ERR_INI_SIZE?ini_get("upload_max_filesize"):0);return($m?lang(2).($Od?" ".lang(3,$Od):""):lang(4));}function 
repeat_pattern($Ue,$Bd){return 
str_repeat("$Ue{0,65535}",$Bd/65535)."$Ue{0,".($Bd%65535)."}";}function 
is_utf8($X){return(preg_match('~~u',$X)&&!preg_match('~[\0-\x8\xB\xC\xE-\x1F]~',$X));}function 
shorten_utf8($lg,$Bd=80,$pg=""){if(!preg_match("(^(".repeat_pattern("[\t\r\n -\x{10FFFF}]",$Bd).")($)?)u",$lg,$C))preg_match("(^(".repeat_pattern("[\t\r\n -~]",$Bd).")($)?)",$lg,$C);return 
h($C[1]).$pg.(isset($C[2])?"":"<i></i>");}function 
format_number($X){return 
strtr(number_format($X,0,".",lang(5)),preg_split('~~u',lang(6),-1,PREG_SPLIT_NO_EMPTY));}function 
friendly_url($X){return 
preg_replace('~[^a-z0-9_]~i','-',$X);}function 
hidden_fields($kf,$Yc=array(),$df=''){$K=false;foreach($kf 
as$z=>$X){if(!in_array($z,$Yc)){if(is_array($X))hidden_fields($X,array(),$z);else{$K=true;echo'<input type="hidden" name="'.h($df?$df."[$z]":$z).'" value="'.h($X).'">';}}}return$K;}function 
hidden_fields_get(){echo(sid()?'<input type="hidden" name="'.session_name().'" value="'.h(session_id()).'">':''),(SERVER!==null?'<input type="hidden" name="'.DRIVER.'" value="'.h(SERVER).'">':""),'<input type="hidden" name="username" value="'.h($_GET["username"]).'">';}function 
table_status1($Q,$rc=false){$K=table_status($Q,$rc);return($K?$K:array("Name"=>$Q));}function 
column_foreign_keys($Q){global$c;$K=array();foreach($c->foreignKeys($Q)as$p){foreach($p["source"]as$X)$K[$X][]=$p;}return$K;}function 
enum_input($U,$wa,$n,$Y,$Yb=null){global$c;preg_match_all("~'((?:[^']|'')*)'~",$n["length"],$Jd);$K=($Yb!==null?"<label><input type='$U'$wa value='$Yb'".((is_array($Y)?in_array($Yb,$Y):$Y===0)?" checked":"")."><i>".lang(7)."</i></label>":"");foreach($Jd[1]as$t=>$X){$X=stripcslashes(str_replace("''","'",$X));$Na=(is_int($Y)?$Y==$t+1:(is_array($Y)?in_array($t+1,$Y):$Y===$X));$K.=" <label><input type='$U'$wa value='".($t+1)."'".($Na?' checked':'').'>'.h($c->editVal($X,$n)).'</label>';}return$K;}function 
input($n,$Y,$r){global$ah,$c,$y;$E=h(bracket_escape($n["field"]));echo"<td class='function'>";if(is_array($Y)&&!$r){$ta=array($Y);if(version_compare(PHP_VERSION,5.4)>=0)$ta[]=JSON_PRETTY_PRINT;$Y=call_user_func_array('json_encode',$ta);$r="json";}$_f=($y=="mssql"&&$n["auto_increment"]);if($_f&&!$_POST["save"])$r=null;$Gc=(isset($_GET["select"])||$_f?array("orig"=>lang(8)):array())+$c->editFunctions($n);$wa=" name='fields[$E]'";if($n["type"]=="enum")echo 
h($Gc[""])."<td>".$c->editInput($_GET["edit"],$n,$wa,$Y);else{$Pc=(in_array($r,$Gc)||isset($Gc[$r]));echo(count($Gc)>1?"<select name='function[$E]'>".optionlist($Gc,$r===null||$Pc?$r:"")."</select>".on_help("getTarget(event).value.replace(/^SQL\$/, '')",1).script("qsl('select').onchange = functionChange;",""):h(reset($Gc))).'<td>';$ed=$c->editInput($_GET["edit"],$n,$wa,$Y);if($ed!="")echo$ed;elseif(preg_match('~bool~',$n["type"]))echo"<input type='hidden'$wa value='0'>"."<input type='checkbox'".(preg_match('~^(1|t|true|y|yes|on)$~i',$Y)?" checked='checked'":"")."$wa value='1'>";elseif($n["type"]=="set"){preg_match_all("~'((?:[^']|'')*)'~",$n["length"],$Jd);foreach($Jd[1]as$t=>$X){$X=stripcslashes(str_replace("''","'",$X));$Na=(is_int($Y)?($Y>>$t)&1:in_array($X,explode(",",$Y),true));echo" <label><input type='checkbox' name='fields[$E][$t]' value='".(1<<$t)."'".($Na?' checked':'').">".h($c->editVal($X,$n)).'</label>';}}elseif(preg_match('~blob|bytea|raw|file~',$n["type"])&&ini_bool("file_uploads"))echo"<input type='file' name='fields-$E'>";elseif(($Eg=preg_match('~text|lob|memo~i',$n["type"]))||preg_match("~\n~",$Y)){if($Eg&&$y!="sqlite")$wa.=" cols='50' rows='12'";else{$M=min(12,substr_count($Y,"\n")+1);$wa.=" cols='30' rows='$M'".($M==1?" style='height: 1.2em;'":"");}echo"<textarea$wa>".h($Y).'</textarea>';}elseif($r=="json"||preg_match('~^jsonb?$~',$n["type"]))echo"<textarea$wa cols='50' rows='12' class='jush-js'>".h($Y).'</textarea>';else{$Qd=(!preg_match('~int~',$n["type"])&&preg_match('~^(\d+)(,(\d+))?$~',$n["length"],$C)?((preg_match("~binary~",$n["type"])?2:1)*$C[1]+($C[3]?1:0)+($C[2]&&!$n["unsigned"]?1:0)):($ah[$n["type"]]?$ah[$n["type"]]+($n["unsigned"]?0:1):0));if($y=='sql'&&min_version(5.6)&&preg_match('~time~',$n["type"]))$Qd+=7;echo"<input".((!$Pc||$r==="")&&preg_match('~(?<!o)int(?!er)~',$n["type"])&&!preg_match('~\[\]~',$n["full_type"])?" type='number'":"")." value='".h($Y)."'".($Qd?" data-maxlength='$Qd'":"").(preg_match('~char|binary~',$n["type"])&&$Qd>20?" size='40'":"")."$wa>";}echo$c->editHint($_GET["edit"],$n,$Y);$xc=0;foreach($Gc 
as$z=>$X){if($z===""||!$X)break;$xc++;}if($xc)echo 
script("mixin(qsl('td'), {onchange: partial(skipOriginal, $xc), oninput: function () { this.onchange(); }});");}}function 
process_input($n){global$c,$l;$v=bracket_escape($n["field"]);$r=$_POST["function"][$v];$Y=$_POST["fields"][$v];if($n["type"]=="enum"){if($Y==-1)return 
false;if($Y=="")return"NULL";return+$Y;}if($n["auto_increment"]&&$Y=="")return 
null;if($r=="orig")return(preg_match('~^CURRENT_TIMESTAMP~i',$n["on_update"])?idf_escape($n["field"]):false);if($r=="NULL")return"NULL";if($n["type"]=="set")return 
array_sum((array)$Y);if($r=="json"){$r="";$Y=json_decode($Y,true);if(!is_array($Y))return 
false;return$Y;}if(preg_match('~blob|bytea|raw|file~',$n["type"])&&ini_bool("file_uploads")){$uc=get_file("fields-$v");if(!is_string($uc))return 
false;return$l->quoteBinary($uc);}return$c->processInput($n,$Y,$r);}function 
fields_from_edit(){global$l;$K=array();foreach((array)$_POST["field_keys"]as$z=>$X){if($X!=""){$X=bracket_escape($X);$_POST["function"][$X]=$_POST["field_funs"][$z];$_POST["fields"][$X]=$_POST["field_vals"][$z];}}foreach((array)$_POST["fields"]as$z=>$X){$E=bracket_escape($z,1);$K[$E]=array("field"=>$E,"privileges"=>array("insert"=>1,"update"=>1),"null"=>1,"auto_increment"=>($z==$l->primary),);}return$K;}function 
search_tables(){global$c,$g;$_GET["where"][0]["val"]=$_POST["query"];$Qf="<ul>\n";foreach(table_status('',true)as$Q=>$R){$E=$c->tableName($R);if(isset($R["Engine"])&&$E!=""&&(!$_POST["tables"]||in_array($Q,$_POST["tables"]))){$J=$g->query("SELECT".limit("1 FROM ".table($Q)," WHERE ".implode(" AND ",$c->selectSearchProcess(fields($Q),array())),1));if(!$J||$J->fetch_row()){$gf="<a href='".h(ME."select=".urlencode($Q)."&where[0][op]=".urlencode($_GET["where"][0]["op"])."&where[0][val]=".urlencode($_GET["where"][0]["val"]))."'>$E</a>";echo"$Qf<li>".($J?$gf:"<p class='error'>$gf: ".error())."\n";$Qf="";}}}echo($Qf?"<p class='message'>".lang(9):"</ul>")."\n";}function 
dump_headers($Xc,$Xd=false){global$c;$K=$c->dumpHeaders($Xc,$Xd);$Ie=$_POST["output"];if($Ie!="text")header("Content-Disposition: attachment; filename=".$c->dumpFilename($Xc).".$K".($Ie!="file"&&preg_match('~^[0-9a-z]+$~',$Ie)?".$Ie":""));session_write_close();ob_flush();flush();return$K;}function 
dump_csv($L){foreach($L 
as$z=>$X){if(preg_match('~["\n,;\t]|^0|\.\d*0$~',$X)||$X==="")$L[$z]='"'.str_replace('"','""',$X).'"';}echo 
implode(($_POST["format"]=="csv"?",":($_POST["format"]=="tsv"?"\t":";")),$L)."\r\n";}function 
apply_sql_function($r,$d){return($r?($r=="unixepoch"?"DATETIME($d, '$r')":($r=="count distinct"?"COUNT(DISTINCT ":strtoupper("$r("))."$d)"):$d);}function 
get_temp_dir(){$K=ini_get("upload_tmp_dir");if(!$K){if(function_exists('sys_get_temp_dir'))$K=sys_get_temp_dir();else{$vc=@tempnam("","");if(!$vc)return 
false;$K=dirname($vc);unlink($vc);}}return$K;}function 
file_open_lock($vc){$q=@fopen($vc,"r+");if(!$q){$q=@fopen($vc,"w");if(!$q)return;chmod($vc,0660);}flock($q,LOCK_EX);return$q;}function 
file_write_unlock($q,$sb){rewind($q);fwrite($q,$sb);ftruncate($q,strlen($sb));flock($q,LOCK_UN);fclose($q);}function 
password_file($i){$vc=get_temp_dir()."/adminer.key";$K=@file_get_contents($vc);if($K||!$i)return$K;$q=@fopen($vc,"w");if($q){chmod($vc,0660);$K=rand_string();fwrite($q,$K);fclose($q);}return$K;}function 
rand_string(){return 
md5(uniqid(mt_rand(),true));}function 
select_value($X,$A,$n,$Fg){global$c;if(is_array($X)){$K="";foreach($X 
as$od=>$W)$K.="<tr>".($X!=array_values($X)?"<th>".h($od):"")."<td>".select_value($W,$A,$n,$Fg);return"<table cellspacing='0'>$K</table>";}if(!$A)$A=$c->selectLink($X,$n);if($A===null){if(is_mail($X))$A="mailto:$X";if(is_url($X))$A=$X;}$K=$c->editVal($X,$n);if($K!==null){if(!is_utf8($K))$K="\0";elseif($Fg!=""&&is_shortable($n))$K=shorten_utf8($K,max(0,+$Fg));else$K=h($K);}return$c->selectVal($K,$A,$n,$X);}function 
is_mail($Vb){$va='[-a-z0-9!#$%&\'*+/=?^_`{|}~]';$Jb='[a-z0-9]([-a-z0-9]{0,61}[a-z0-9])';$Ue="$va+(\\.$va+)*@($Jb?\\.)+$Jb";return 
is_string($Vb)&&preg_match("(^$Ue(,\\s*$Ue)*\$)i",$Vb);}function 
is_url($lg){$Jb='[a-z0-9]([-a-z0-9]{0,61}[a-z0-9])';return 
preg_match("~^(https?)://($Jb?\\.)+$Jb(:\\d+)?(/.*)?(\\?.*)?(#.*)?\$~i",$lg);}function 
is_shortable($n){return 
preg_match('~char|text|json|lob|geometry|point|linestring|polygon|string|bytea~',$n["type"]);}function 
count_rows($Q,$Z,$kd,$s){global$y;$I=" FROM ".table($Q).($Z?" WHERE ".implode(" AND ",$Z):"");return($kd&&($y=="sql"||count($s)==1)?"SELECT COUNT(DISTINCT ".implode(", ",$s).")$I":"SELECT COUNT(*)".($kd?" FROM (SELECT 1$I GROUP BY ".implode(", ",$s).") x":$I));}function 
slow_query($I){global$c,$T,$l;$k=$c->database();$Hg=$c->queryTimeout();$Zf=$l->slowQuery($I,$Hg);if(!$Zf&&support("kill")&&is_object($h=connect())&&($k==""||$h->select_db($k))){$qd=$h->result(connection_id());echo'<script',nonce(),'> 
var timeout = setTimeout(function () { 
	ajax(\'',js_escape(ME),'script=kill\', function () { 
	}, \'kill=',$qd,'&token=',$T,'\'); 
}, ',1000*$Hg,'); 
</script> 
';}else$h=null;ob_flush();flush();$K=@get_key_vals(($Zf?$Zf:$I),$h,false);if($h){echo 
script("clearTimeout(timeout);");ob_flush();flush();}return$K;}function 
get_token(){$qf=rand(1,1e6);return($qf^$_SESSION["token"]).":$qf";}function 
verify_token(){list($T,$qf)=explode(":",$_POST["token"]);return($qf^$_SESSION["token"])==$T;}function 
lzw_decompress($Da){$Gb=256;$Ea=8;$Ta=array();$Af=0;$Bf=0;for($t=0;$t<strlen($Da);$t++){$Af=($Af<<8)+ord($Da[$t]);$Bf+=8;if($Bf>=$Ea){$Bf-=$Ea;$Ta[]=$Af>>$Bf;$Af&=(1<<$Bf)-1;$Gb++;if($Gb>>$Ea)$Ea++;}}$Fb=range("\0","\xFF");$K="";foreach($Ta 
as$t=>$Sa){$Ub=$Fb[$Sa];if(!isset($Ub))$Ub=$Ch.$Ch[0];$K.=$Ub;if($t)$Fb[]=$Ch.$Ub[0];$Ch=$Ub;}return$K;}function 
on_help($Za,$Xf=0){return 
script("mixin(qsl('select, input'), {onmouseover: function (event) { helpMouseover.call(this, event, $Za, $Xf) }, onmouseout: helpMouseout});","");}function 
edit_form($Q,$o,$L,$ih){global$c,$y,$T,$m;$ug=$c->tableName(table_status1($Q,true));page_header(($ih?lang(10):lang(11)),$m,array("select"=>array($Q,$ug)),$ug);$c->editRowPrint($Q,$o,$L,$ih);if($L===false)echo"<p class='error'>".lang(12)."\n";echo'<form action="" method="post" enctype="multipart/form-data" id="form"> 
';if(!$o)echo"<p class='error'>".lang(13)."\n";else{echo"<table cellspacing='0' class='layout'>".script("qsl('table').onkeydown = editingKeydown;");foreach($o 
as$E=>$n){echo"<tr><th>".$c->fieldName($n);$zb=$_GET["set"][bracket_escape($E)];if($zb===null){$zb=$n["default"];if($n["type"]=="bit"&&preg_match("~^b'([01]*)'\$~",$zb,$yf))$zb=$yf[1];}$Y=($L!==null?($L[$E]!=""&&$y=="sql"&&preg_match("~enum|set~",$n["type"])?(is_array($L[$E])?array_sum($L[$E]):+$L[$E]):(is_bool($L[$E])?+$L[$E]:$L[$E])):(!$ih&&$n["auto_increment"]?"":(isset($_GET["select"])?false:$zb)));if(!$_POST["save"]&&is_string($Y))$Y=$c->editVal($Y,$n);$r=($_POST["save"]?(string)$_POST["function"][$E]:($ih&&preg_match('~^CURRENT_TIMESTAMP~i',$n["on_update"])?"now":($Y===false?null:($Y!==null?'':'NULL'))));if(!$_POST&&!$ih&&$Y==$n["default"]&&preg_match('~^[\w.]+\(~',$Y))$r="SQL";if(preg_match("~time~",$n["type"])&&preg_match('~^CURRENT_TIMESTAMP~i',$Y)){$Y="";$r="now";}input($n,$Y,$r);echo"\n";}if(!support("table"))echo"<tr>"."<th><input name='field_keys[]'>".script("qsl('input').oninput = fieldChange;")."<td class='function'>".html_select("field_funs[]",$c->editFunctions(array("null"=>isset($_GET["select"]))))."<td><input name='field_vals[]'>"."\n";echo"</table>\n";}echo"<p>\n";if($o){echo"<input type='submit' value='".lang(14)."'>\n";if(!isset($_GET["select"])){echo"<input type='submit' name='insert' value='".($ih?lang(15):lang(16))."' title='Ctrl+Shift+Enter'>\n",($ih?script("qsl('input').onclick = function () { return !ajaxForm(this.form, '".lang(17)."', this); };"):"");}}echo($ih?"<input type='submit' name='delete' value='".lang(18)."'>".confirm()."\n":($_POST||!$o?"":script("focus(qsa('td', qs('#form'))[1].firstChild);")));if(isset($_GET["select"]))hidden_fields(array("check"=>(array)$_POST["check"],"clone"=>$_POST["clone"],"all"=>$_POST["all"]));echo'<input type="hidden" name="referer" value="',h(isset($_POST["referer"])?$_POST["referer"]:$_SERVER["HTTP_REFERER"]),'"> 
<input type="hidden" name="save" value="1"> 
<input type="hidden" name="token" value="',$T,'"> 
</form> 
';}if(isset($_GET["file"])){if($_SERVER["HTTP_IF_MODIFIED_SINCE"]){header("HTTP/1.1 304 Not Modified");exit;}header("Expires: ".gmdate("D, d M Y H:i:s",time()+365*24*60*60)." GMT");header("Last-Modified: ".gmdate("D, d M Y H:i:s")." GMT");header("Cache-Control: immutable");if($_GET["file"]=="favicon.ico"){header("Content-Type: image/x-icon");echo 
lzw_decompress("\0\0\0` \0\0\n @\0C"\0`E?tvM'Jdd\\b0\0"fXPaJ08#RTz`#.?-\0Im?.M\0(/(%\0");}elseif($_GET["file"]=="default.css"){header("Content-Type: text/css; charset=utf-8");echo 
lzw_decompress("\n17B14vb0sB:#(b.\rDc)a7Esfi744iATVV,:1Q`>:7GLXD*bv<#e@4fo:<o\nia_:iBv|N4.5NfivplOFQk\$2T-:a2#8#6nhtO42*r@p@!6r[Bj!Hb=!1V\"0\nSD7DC!! =tCC:+=cR/E428([W=ySb=BS+@pL4Ydq3Ack[&>Zpkm]u-c:Ntp8#.~mPP9v[Q\n+2Vz8(	Ey*#j2]R)[NR\$<>:$;>rTnwN w\\Yt^>\r}\rz\nL%J\",Z8i0u?s3#:E]xs^8K^*0w~v2w^77cu+U%{P4./!1Cqx!HL65f=Hl V1\0a2_\0&d)KE'n[X\0Z[P@`\"Ee9yF>9b:\0}(\$7HMA6R{MqGCC(Ct>[/&C]G4@r>Sq/QmL6fKPr%t=\"SH\$} )w,W\0Fu@9\rr2DXOI>n%'t\rz\1hl]Q5Mp6kqh$H~|*4SS t\\g\n-:plBc(wO0\\:p4jO6Hrq\n%y']\$aZfc*-kzjlg\$\"\r#c\"j\rPh1/DA)knp76YR{P-a6zJH,dlBho#Dr^^E aPzXV_%K=EbkU(.!8I.@Kn:2m	C*\nR0u]P/JQd{L:Y2bT V=L4rMeLio< GMhm^U5HiM/nT[-<__Xr(<uGNX20\$^:'9fN'ab!%6@$G1(mUN+f0[U-:I^\$b\reug~9bhXr!\$e,w+k\nkcuWdY\\{.gp8t\rRZvJ:>Y|+Ct\rjt6/`~KRwLY*qx~Dxi72_{_zd)C$?KP%T&&\0PA^~p \r\$+D6J\$(lh&S>;zxz>o[2OxV0fBlkZkhXcdT=p0lVrnm(CCrG\r0i:`Z1Q\n:\0q:`-#}1;q#|hlD\0fiDp``0y1MQ\\%oq\0211 bi:r/ `)@1NZ1 \rdIv1 t0:0A2V%fi3!&QRc%&w%\r#Qw`% *r&ir{*(rg(#(2(@i- 1\"\0Re.r,ry(2Cb3%,R1a\rL-3Bp1O'R3*=\$^iI;/3i5&}17# 8\"823!\\\0rk9;S23*q]5S<#383#e>~9SrT*a@es:-*;,3!iL +n *3i71_FS;3\rA>x: \r0@-7J3 OB%4+tgrJtJ\rT@)dP>Fi\nr\0b(D2t,\$KCt#Pi.2C\";}elseif($_GET["file"]=="functions.js"){header("Content-Type: text/javascript; charset=utf-8");echo 
lzw_decompress("f:gCIn83)781x:\nOg#)r7\n\"|2SiH)NSr\"0`(\$s6O!V/=' T4iS6IOG#XVCZ1.p8,[H~Cz2lc3sbnTIU*fzE.:I!_l^(N{S)rYl33n+GyixV3wuhac\rCh\r)`3'm5\nP2Pq }BhR(0b\\0Hr44B!p$rZZ.(\\5|\nC("PTHN8HP7Jp~2%C1C8H*jS(/KU<2pOIdOH-25-z7\"(P\\32:]U!]<Ail\r0vJ8m<m;p#DiZN0wJD2t*iIh\\9yl*W3\"6[\r*\$nzx\r3p:(p\\;mz98Nj2rH&(7i cet2:SH/)xri9yV^WkZl40pDi-T0l%=9(5\nn,4\0}.Rs\02B\\1S\0003,PHJspK CA!2*W\$^\n1 Iv\\.*AE(dbDh&?HsQ2x~nJT2&RGTwP\)6\\3\0R	'\r+*;R!~%t< K#&	`CX0MG&3D<!3hJe hrml7v-ey\rEJ\ni*\$@U0,\$UEu)@(tSJk~`\n#\rp9j&Nc(rTQUS\08n`ybL5xf+\"{kM\r%[	e1! F@b)R72\nWLtd0wgl0n@\nAM5nENl1 AFBol,muNx-C( f\r1p[9x(iBQl8CXU Tbp+V\0;CbXsHxG*awn!mSIK/7eeNS/;d>}l~ %^fpDEt\nx=*dTj2\n,e=M84aj@snfn\rd0%~	<AHG8\$zu2*>(wK.bP{oz#8=8>A,e+x*b=m,azkW,mJi+[.RKZL2`(vZ,HNxX\$*\n\$<qh!SxsA!:K}RA2kXp\n<VV}g&Y!+YYE3rktU)[lD+ _oh140blG#dK@O\0H6\r\cg\0Ben	zr!nWz& {HX w@Gr*H#nd,,;g~\0E\r`]`%&m\r%4SvfH\$%-qB-& h\rsn#Fr&dF6\"|s@)0rp\0X\0|DL<!D{.B<E0nB(|\r\nh!r\$(^~/pq\#RR%dj` V bSdiEr<i/k\$-\$o+lO&eviMPA'u'( M(h/+So.n.(\"h&p/1DE,'l\$/.,WbbO3H:J`!.,F(1lqX\r~R`rJ%Ln\"\rH!qb2%Wj#9ObE.I:67\0+%.a7E8VS(DGB/<\r >M@HDsZ[tHEnx(xGkjW>T/8c8_IGII!Ed^tdDV!C\rb3!3@3N}0M(fI\r X"td\nbtNO`P\$\nZ5U5WU^hotM/5K4EjKQ&53GXXx)5D\rVr5b\\J\">\r[-u\r00k{\nr^|U~YtrIR ePMSwWXKOU;U\nOYQ,M[\0_DWJ*g(]r\"ZC6uYY60q(8}X3Th9jjMtbqMP5>Yk%&\\1d4 Yn<U]1mb^\"NVeMW\n nf7\n2r8=Ek7tV7PLa6v@'6i&>a	\0p(J)\\nm\02qJPfj"[\0X,<\\md%omn,\r4\rEH]WM0DK\r>z]2sxDd[stS\0Qf-K`twT9\nB9 NbBI5oJJNdrh2\"HC:9Yn16zr+z\\T Y2lQ<2O+%h0A2R1/hH\rXNB& @x8&Lv*jGH\	&s\0Q\\\"	rBs	BN`7Co(n19E U0U t'|mh[\$.#	 |{\0xw%EsBdCU~OZ31{eLY\\(*R`	nCFX|`N\$[@`Zd\"\\\")I:0[-g*`hu%,7H6N\$MUYf&1e]pzG/ w \\#54IdEqkqDbz?>:[ZX:5	Y0 \$\0CdSg{@\n`	C M# t}x{)KZj0PFYBk0<<JEg\r.28*fkJD4TDU76K+J=IOD85MN\$R5\rNy\\qU\n@P7N\rR{*qm$\0Rq+U@f*CMC NC We&_X_h3FW|G'V^\rGRPgYi \n+/\\6dmh@qh,Jmem]eZb0YeB;OwapDW\0-2/bNsRah&qt\n\"iRmhzS7PPBmY d7}3?*tT~;TL*	Asx-7f5`\"NG@[-M6qq he5\0*ISF9}p`{kP0T<Z9<\r;!g\r\nK\n\0*\nb7(_@,\r]K+\0p C\\,0^@;X\r$\rj+/BJ{\"a|n\05156 .\0d8Y:!=X.uC!SopRh\\hE=y:< :u0siTsB\$ u	.0M\\/+\n=dA)\r@@3.eZa|.Yk#Yq=MB AMdU\"Hw4>8?e_`X:9Gy6Xrl1B9RzhB{\0%D5F\"\"iAf \"tDZ\"_$!/DF,25Ty\0Nx\r#q\nB2\n6!/\nQ*;)bRZ0\0Do48\n%\\PIk(0u/G\\4FpG_G?)gt[v0?b;(NS)\n@j0,z>0GcVX%Q+FQ-lw5G(hcH?Nb@3U`rwUl#8E\"O6\ne`\\hKfV/PaYK x	Oj7F;>V\r'Jz#PBY5\0NC^\n~LrRRZ\0x^i<Q@fBHf{%P\"@)DE(iM2S*y"e1\n4`>Q*ynT%+WXKQ[PYy#DD<FL6']\rF!%\n0c%c8WrpG.TDoUL2$:t5Yp#^\n:#D@\r*K7\0CCxBhnK1\"*y[l_/x054\0005J\"2%Yaa1SO4niPq6~\\ddD3g^^6HD.ksLIrb@Nt\0s:ub@^1\02?Ne+lz6q=x,%@s0\n)L<PbA>I	^K4gIXi@PjE&/1@	0coa'#6F@H0{z3t|cXMJ.*BZDQ\0vXa**bxPKG8yK	\\#=gh&8])CnzW\\gM 7!,9\$T\",%.F! A--0002R>KE'I9j(Q@7'J.T\0]KSDAp5\r0!e	d@RS;7HBbxvi`@AMXGiU*'VDN'\$h\$d_yZ]8P*he;pe\$k7NDTx_GitbE\$iE\"cr?>(W@322aI{B`iGo^6E\rGMp1iX\00032Kl&'IL\"7>j(>FG_& 10IA31=h q\0JVq(/dOC_sm<gx\0\"EkH\0J8(km[S4Y40+L\nbRR:<\$!r;%|(|H\0]=0\"\"=)f6V}F=[hu\0t~QiJLq#kbnT!ncS+E<-a]n\nJ~J8 p NJ.S2c9y-`a\0*@\0+g61e\0 _}!IGLf)Shx\0000\"hM	j\0/\$>u*Z9e+JtzRKDyq-fmBIHBsQlX.|c['mlKrQ26]nd[d\"GJ9uoZn@nlW|*gX\nn2|x`DkuPP!Q\rr`W/	1-o,71bUs7q.\\Q\"CCT\"*?utsPz[[YFFD3\"u)wz:#Iiwo0n\\0qm&79[HLO2v|Bt\Hd\" \n\0GF}\"QEK{}\ryrtNu[Agh;S.|y_b!+R@0NPjDz	[U\"{e8EL4J0 d Q^`0`]c@hy8ef\nhaXmSjBQ\"\rK3=>AX[,,\"'<%a.\$%\0VM\$@j>}Ve$@#3:`Uu@#EG/XD\$havxS\"]k18a9dJROs`EJUom{lB8(\n}eib, ;NQ\I5yR\$!>\\guj*?nMh\r%dNd#}pA:-\\*2I 0h@\\8q]\":cy	da6>U:@2\$2FN\r(d*\0[#cj>!(SLeTM	9\0W:BD3J@srue +'B\"B\"z2lxF[Ea9db^,C=/2$C8}D`^;6B0U7	,1V[.	H9(1LzC	$.AhrY	H~or19\\P)\",w0\0w~9\0fq&9-J#3^4m/\0\0006n8>.cph_A@[7|9\$pMh>5K=hAt^	\"	cB;t\n;4Iy-0yeUB3HPs|\r$0l3oF~PK.,'J/td:n\nYzwZIo@1\$=VWz	nBaAq@Ip	@lH{UXf\\z,-\\^y n^BqzX\$*J724.!M0FGm*mI^tjl7SQ.ihLB6h&l\\c%kj p=i@.(klHUW\"ojp!S5pL'`\0O *Q3XJ\08\n\r*ar`<&XBh!x&Bht\$]cL[d\0w%;BCQ\rpQZZAu=N&ia\nK6I}n	\nd)bp\"07@Nx\$BB/MgBi\\mI;5=#&4P\,qc\ncw\0BgjD@;=0mkr`'5k-{\0_Mu2q9\n+G\r4:51:?(yGgWK\rm5.eHJAk#..\\=7W+^yDbGOZ4(|xPr,yqaO2kn#p2.cUcj~7ZR:9w(aL%-,#8%XWn}6H#&J,'zMM /y6YQddEp2gg/'8;UWN{CiKXNdGRCJYi#>zSMUcR0)]:=t\$sF7	=\$B!qs	1\"v%Il<b!6(Cd-<H`~2KKy,qA\0}pb\\(|MW5;\$5T|@9).F=`H\0	 N @%wd|kCI!:l,<utNeW^wDu ihIZ:r3+uoCs2aX	H27>yrpTLf:At|i[wW 7au5Q' \03\$\rk)a;~I\"1'Gcm\0P\n#>B\"|2\$}<3PYXgod<qE\"`g8r]\n:qVbTm9K&m)@Qz=\n}O\r.vpJW&50	I\nl\0O5*=	P-\0*S:[email protected](Z\$nzA!t85<W8n5\$IZ'}ET\n_Do&J6i\$ELu+I~SSZTXPYz"\$V]M(t_S/t05_Z'#1P,}(~\0!`-P\ney (`9O!;5\n\$7[ Y8&!CLH(\0'2r%;4_O5D\0V6' AYSr4+h@bO\0r@\rJ0\08O;k(6|	`8 0&E\0VkNKxdpsLXu\0t >(N'fldA+~kPR\0K]bU\\d\0S@b\0\0b0_\\@\nNOPfAj 4<9`S 3T7T!\0eI 1!\04 @!8\0!:K,ASe.::._d81v`B\"!.^.^\n&\r(.O0@Pnj#rH !i @Aa{ #6F@O(./B)L02BqpJ<.\0\n\0@8C4Pr	P)$q.]\"B##\\4\$:.(*Oi>|#T'`Bua/a`p\0`0");}elseif($_GET["file"]=="jush.js"){header("Content-Type: text/javascript; charset=utf-8");echo 
lzw_decompress("v0F==S	_6M:ECI:CXc\rJ(:=Ea28xiSANNNBl0l(D|>EyHch3EbbEp9.\n?Kbiw|d.x8EN23y6GFmY8o7\n\r0\0DbcQ7d8~N)E`)<xon2!r:;9Cn<b?`4\r#`<BeN \r.D`jpar>$1c7ARLi\r1!(j+62X+.\r!xh'6Sn1(W07q:68n+5_(s\r/m6PQ\nV-.:we|X] Xe71fujZ{p\\AU<k@}&L7UwuYhu PAhXEZ]lplvHW>Y-YhC[*F#~!0Pf\^B<\\fO\jFjZ1\\:>NXaFfh{\"s\n4?p\"\(PNgr&}PhW*r_shnm.\0@dW \$QTl0 dH)PgUBrt:0)\"[(DO\nR8!V4hSq<=K]]0'wA<~|A22=p)\0P	sn3f\0FvGI@+_I`r.NI[SJaUfSzM\"Q|9Bcaq\08#a:z1Uf>le5#U@iUGn%sgxLpP?BQ\\bQ=7:Q\r:t:y(\n)\nX;aA\rPGH!@\n\nAl~HV\nsBr3\rP%\r}b/\$5P\"w_UAtUjvh4))<j^<L*Bg	9O\$zyM3\\9.o(i7	t&\nj!\ryygR\"~)TZ0E9MtXe!@yl	8;R{eULF1E5-	!J;HR8p@0,psK0\r4\$sJZ'\$cLRMpY&3GzJ%P[x{pzCV'\\KJa&\"o^Q+h^iTR,5[\$)U`SZ^r=nTU	1Hyk+\0v\r	<Gt3%kYT*|\"ClhE(\rr.6rBjO'\$^6#Xmh8:0;'('+^]N,Oi>S\\\!*tl`u\0p'Pbs{v{7\"{r(^Eg/Ug`nL\n)(Aa &PO\n0(M&FJ'! 0<*n/b.o\0dni:RP2\0/v"00gj0}	=M0n/pg\0o\n0\rFbi}\n	NQ'FaLrr0	oep4Dq(~ EprQVFHlKjj!`_bh\r1n!z\\\r`V_k\"\\'V\0`ACV\r%\rk@NB !n\0Z6\$d,%a\n#S\$!\$@2I\$r{!J2HM\\hb,'||cj~g`\$+<$-FDdL\n@bVf2_(<%@,\"Ner`Z4'ld9-f@&B\$(278I P\rk\\2`\rdLb@E2`P( B'0&:dB^*\r\0c<K|sZ`O3@C>@*	=\0N<g6s67Sm7u?	{<&L3~D\rx,rnO\0o{0k3>m1\0I@T34+@eGFMCrE3tm!1D @H( <g,V`R]@Cr7s~I0v5\rVPr<b%(DdPWbfO 0b&vj4LS5&dsF M".H0L\"/J`Yu*\"U.I53Q3Qg5s&jGQMTmGBtl-c*\rZ7/RUVNLk.rYi-S3\T^G>ZQj\"isS$Ib	fB|iYv4`._uU`ZJ	e@Ce\"m6JRT?XMZpQvjjV{\rT P]\rQAV)JiN99fl Jm;u@<FejI<+CW@Zl2F7`KG~L&+NWHw	s'gq+Liz.WzdW(y)v4,\0\"d\$B!)1U5bp#m=@wP\0`O|	YEOu_\n`F`}M#1f  zc xfkZRs2-Z2+(cDX!&-vP\0'L Lo	r@\rxFE=5N?7Nw`X98 qz%6taN~,'M\rf9w!xx[8;xA-I5\$D\$%]&o-39zy6;uzZ _x\0D?X7yOY.#38eQ=*Gwm YYOYF)z#\$e)/z?z;^Fg`^#?eMu0>"?@Xv\"*\r6v~V~&^g'f6:-Z~O6;zx;&!{9Md \r,9:+][g[s[iiy+|77w}EWWk|Jmq xwyj#e(yM@Y(g-(@ySY@o9;+;ZN kVu[|qON?	`u6||X|OY]c\rhn'rS.1USXz]?Cr\\\$U|x'eM(O]{FD}yuXL\\x;UWtv\OxWJ95WiMi[Kf(\0\r7;KI\rv\rV3.^2^0\$Q['^X~t1\"6L+ApM><KT76Mfg=PPr2Sb\$C[Q#G`uwp\rkezhjzi(=74\"ef~ZU-VJZ7T8.<RM\$y5_iJbgS?`+ M7`0__?F\0X[J8&~D#{P4\"\0@\0F ?*^w:uxKy[(#/zr_g\0?1wMR&M?StT]G:I)B v16:W{=!!\0xq&}z\"]oz6P[\\ }`S\0HMBP]FT8S5/Ir\n 0aQ\n>j;=A=pVL)X\n`e\$TQJk7*O .\r\$#pT>!v|}.%,;f*?\0D! #:MRc/06	7@\0VvghZ\nR\"@	+EIn8&2XP=h[\r:F\0:*r}#!\"c;h/0\0iW_h;VRb%!]SBUl	r-\0\"Q=Ih	 FLxR@\0*5k\00'	@ElOHCx@\"G41`P(G91\0f:Q@`'>741rIHGt\nRH	71h)D8B`(V<Q8c? 2E4j\09\r@\0'FD,!H=E&xd_HE6uG\0RXZ~P'U=@l+A\nhIiPGZ`\$E\0} QjAW\$!3r1 {%i=IfK!e\$8!h#\\HF|i8tl\$i*( $x"Wzs{8d`&&E15jWVR-#{\0Xi*7F3`p@#7	0[h\\{]8l`f@reh\nW2@\0`K(L\0vT0L: 0@L1T0bW\\DNns3"`2\rU+^ReSni0b	J2ss^n<Fla\0\0mA2`|6	nr\0D7m-)\\\n=y7c|o/P<Y:K&C/Q*8/&p.\0u3(eOP\r(ac>N|	tn6v_;ygQ;y[S	uddHHZ\rqC*) \"!k'`\nkhTsREa\n#10;S@(Iv\rnj~63\n.2plBt$bp+*tJsJQ8;4P(!.Ppk@)65!(\n+`=H,\\4\"[C1-uo[\" Te)AE={ \n`;?G5I.%EsgFs	KGn4i/,i0u)73SzgV[h'<TMP*o\nHn4M-WN/@8mHRptpV=h*0	1;\0uG6@s\0)T\\(\",5ilE*\"@jRQ/L@ZP)(jjJ*0r-Qg9@H\n-e\0w%^ ET< 2H@\0#;ITlA+C*Yh/D\\83AE/}0tJ|Qm%(p\nU\rsEX5u%B- w]*E)<+qyV@mFH BN#]Q1\$Xxt@]Gj)-@qL\ncIY?qC\r(@X\0Ov<RQJ9lxCud vTZkl\r\\o&?o6E\r'3J6@6FZ50VTyC`\0S!&6rDf`JvqzFZ.\$kXkJ\\""iroX\0>PP\0aV=6K3ZQmE0:32V4N6lhhU:	>j0g\\|Shy\$,5a7&[WX4q8!HD+:9,DUa!X\$GBt9-+oL}qKx6&%xR\"IWA`cl6*0vkp8z+qXEIN*qPKFO\0(|k *YF5;<6@QU\"AXv)HSTpbj1+e Qx8@\Q,Nb#YHp1kB8NoX3,#U\"eH#zq^rG[:\rmng5V]Wkh\\Zk ojW.hF[twM3!nK_SFj-S[rw0^hf-?X5/IY 7ad 8bqbn\n1YRT,+!NT2IK`K\"O)\nY!}K^D@na\$@ $Aj\\D[=bHpSOAGho!F@lUXn\$\\_`B]2\"z0i1\\w.fyK) p0X>1	*,]\"<cQq.	<+t,]Lg\$6v%GE*0)qnCI`KF@5p{\\pN'S(+5+\"U0inMbrKr|a@|kaWR4\"?5p7Hp5YpWG#AWD+`\"}H\pC3sO:)/\r4<A\nn/T7P16OYXtS<9nwsx@1xs@4o0R\0&S^:Q4OInZn3L(x\$CCnAkL6rwhnrZj6}MGu~3g4:3g~v3+a}=8'n)cC4L=h{iJwgDL=6N\\?hS>hhWE1jxtT[,tA#T9K-YQe?4z@JkWYuz4	0>9yu=}gs_s{@rH'{e[h-Ul?JO\0^Hl\0.Zxu\"<	/7n3_0`\0H`\0Hh[P<gm@~0kv\nz\n@(nk5n5@_`_l1P0coEl{o0z 8w=|/ya#xq@a\08dwvRGp8vmtuo`2;#xm;V3O\r,~ow[} clyO;?^j\":xW.u(<gvhWq\\;8)M\\5vx=hib-|byDHh\rcey7p@D=1!4Ra\r9!\0'@>iS>ofsO 9.l0!QD9dW4\0y`RoF>Fa02I'\\\0\$\n RaUs"1eYZ#G!PP\0|Hnp>W:`YP%n8>`]4`<\0z44:HDp>*808A:]wz>9\n+iiPoG01)RgMgsLCr!3R)00VPpK\n|9e[D0o,N8n#{z3BS\";e5VD0[\$7z0	T 3Q'RLy\0o\0:[}(|X>xvqWtB1wG;5|JI@#I\\p8!']l-lB,HN%%	/;FGSc|W$t+#B1y2\\Z&)db',XxmHd	>=-lKJ\0@\"(AZ7>\\#>\0Xr:ogbD_C.R]ZIG(|@\0SO {@k}S8l\0gHGs_J\$hkFq4>v!_7Vq1zSejKdyuS.2\"{?shyG\nQow'L}G9W@_uZ=,}0\"'\?pG_'T#o\r\"O7=8M? \0bUd7I O\"-2_0\r?hOt\0\0002~ 4,hPcz`@\"; ,='S.bSR,~@ '8Z0&np<p(.@R3@^\r+@,	EB,h\r><6]#;.8P;@L,+>p(#f1,8PR)e\0R!\nr{eA@*nD6N\rR8QK0>PNIQ=r<&fNGJ;P&`);!\0pp\rn(@%&	SdYC8O#v,#7\"CpBjX3~R9B#@\n>T-5/=End\"!;p*nZ\08/jX\r>F	Pe>OLO0\0)k[	'L 1\0CT`zp< .>0> Bn<\"he>!H{!\rr\">R1d\"U@63>o\rvL:K20>0Br*Hy;`8\02A+\0\0AwSl\r[6=0z/J+W[~C0e30HQPDPY}4#YDp)	|@&/F		aH5#.A>0;.Y	D2=3	pBnuDw\n!CQ \0Q4D*J%puD(!>u,71M+31:\"PRQ?P+11= M\$ZlT7,Nq%E!2U*>GDS&ozh8881\\:0h C+#A%D!\0DA3\0!\\hT!dYj2nA+HwD`AB*+%X.B&XeEo\"r82@8DaNh8[WzZ\"L\0\08xX@ E;af1;nhZ3E0| AtB,~8^<2/	8+O+%P#\n??eO\\]7(#D(!c)NFE#DX0A\0:B``  H>!\rB\0V%ceHFHm2B2I`#>n\n:LC00x((\nL\"G\n@`[\ni'\0y)&(p\0N	\"N:8\r!'4|~\"clt0ckQQ+ZGkFcx@&>z=\$(?(\n>Cqt-},t xqfb\0\0zT9zwDmn'bH\0zHzIy\",-\0"<2'#H`d-#clj`i(_g*j\r\0 62<q\r\$CAI\$x\rH ZpZrRU\0\rIRXi\0<~xS%j@^T33GHz(\0f&8+r%hCxlb(h&`fn.L+/\"=I0d\$47rA(42gJ(D-'G9Z=r`);x\"8;>&@2l0I\rrJDhA22p`O2h8HwtBFg`7{,Kl%C%om+X41\n2pZB!H6*\0%< K',3;8\0Z+E+l+Y-tfQ-+ 95LjJ.G,\\.\$2-1-c.lfxBqK,dAKo-3Kr/|\r,H!0@.&|+03JZQ	\r&\nj|#\"A/8)1#$\"\n>\nL1h9\0BZd#b:\0+A22\nt.LHC\0\\rKk+.(D1ss9P4@.AhJ30J\$\03Q3\0\0,Iu/VAUMLe4D% Ap\n235-T53+fL~-> M4XLd*\\YDM5 XfDss%	p+K/=K6pH37lK0DuP\rO&(;L@N>S2(JErF	2MM\$q\$/I\$\\D\"\nw.t	PnW-\0C:jRS8;daE+(XrM;*1&2X)<L9;gIs+K<Y-Z:A<OO*2v7+|<Th\$<;v\$O ,Hk-\r;O>>3@O{.4pO?Tb~O4>1SS4P3P?4NAxp%=P@R?x0N?TJC@	.dM&=\\:L:\rI'Ar;\r/Bi>L7:9|C\$)z@tl>C\nBi0G,\0FD%p)o\0\n>`)QZIM\0#\0DQ.H$\n \$%4ID3o:L\$m 0	\\(8hDDX4TK{xn,\nEp\n'>\0tI` -\0D/KP`/H$\n=>UFP0G}4B\$?E%TWD} *H0T\0t\"!o\0EtfRFu!DF-4VQH4uN\0DQRuE\n&Qm)m #\\D(\$x4WFM&R5HF+F \nTR3DLoy4TQ/E[<t^F)QQIIF'TiX!FR5Km+IRE+\0(R?+HJTD\$wQTz\0G8|R6R	4XR6\n4yNNM&Q/7#',|\n	.\0>o#1D;UJjFNJ #%-?C3EP{`>QOI@%,\"ITP>n\0QP5DOFTY<oQ=T\0x	5D,0?ix  mE}>[\0&RLHS9GI1M4VHoT-S)QF [TQRjN]N(8\nuU\n?5,Tm?@\nu-R \nU3IEStQYJu.QFo\$&i	PCG\0uRu)U'R0DuIUJ@	:*Rf%&\\RMU9RfUAU[TUQSe[\0KeZUaUhmS<,R`&Tj@!\\x>\0&pQQ)TU@%\0W	`\$(1?$C\nOV7Xu;YBVHRU-+Y}\\KMoVT!<{RZA5R!=3U({@*Ratz\0)QP5HN5+[9"\nSL\rVouUIYR_TYp5O\\q`Uu'Uw\\mRU\\Es5\\\\{Z%O\$F>5EVm`Wd]& \$!RZ}]}v5ZUgy` ^=F^vKex@+r5#?=usYNsS!^c5u`0XE~1J@#1_[4JVI4n\0?R~)&B>tR_EkTUS|Uk_&E(?JJUBQT}HVjQx\neVsU=VN4\\x34D\":	KQ>[r_#][j<6X	cKL}>`'\05XU[\0(Wt|t]p/]H2IQO1QjZHm)d^SXCY\rtu@J%M?Q\n=R:E-G\0\$d]eh*QWtc`AY=S\r	m-=Mw]Jf\"{#9TeM6geaLQ&&uT51Y>Q#\0P?ub5FU)V5R@$!%oPEU-Bp\nF\$S4tUF|{q0mjs\$jcaZI5Xj26&>vn\r)2kTJeQ-cVMz>]ac`tHj6+kM\0>##3l=^60vZ9Se\">)/T=9\0`P\0]k-6{k[F\r|SJMQD=/XVa'tolj}C@\"KPm3\0#HVv{gx	n|[Ur`3#Gk%LI`CD	 \"\0#cN6fzeF7N\r:G	\$ITWGsWMBc!#cnu&(wSfTZ:0CN`Yj=>Z!=rV]g	rl.UuJuJ\0sJ'W%\\>?Vj4}I/-rRLS\0,Rgq>\0_\V8Zc<^\\llj\0T]CwzIwNpVWjvY>2o\$|UW%{toX3_5~6\"Zl}`cR=^U17ed=f,mGp)9L>| \"5`:,xJb6\0AR\$qoA@<@"as.V^^\0[H@bKz\r=^zB\0o<t<x00*RI{^:{K1E0"\047'\n`UT?MPl(	Z|&t\"ILw+}Wi\r>__u63[8T-x~7{jMECaXG9\000750._%\n\r#<M|2;o^a+FLk;_M\\pr@ORzANEYO	(1NR8Cn?O)1Ao\0?J\"OFa-bPS)5xCjL\"l#@N:B9:N CB:j6JkuKWI=@Tvn0^o\\?/&uc~Jb6\00wx8j%SVH@N'\\N`n\ruKf>G\r=@G\nOhfCX|I]auy^no^rt\r8#N	V;*V#9r\rxc(\raja`g0Qx(gl{h`sW<Kj';)Gnq\$p_^& Db!EjPV'(=br\"b\0tn>J1;4^sQp`fr`7xE<l8s'PTz_[>:`1.;7[6!*\$`\0@m>>\0/+`;C\0*<F+q M;1K\n:b3j1:c>h#;8:\0XHaM1YCvN\0+\0t#\$!@*l	FdhdFf=04x\0004ED6K\0N];q4sj--8\0Df5p4J'[H^NR FKwzE|!dbx0,E_u/(xRaHYce5\0@2@feyYMhez\rv\\0e\\cueNY`9h~^Yqe]qe_|6!ufJM{YjeCS6\0DuasFL}\$Mb,0Bu2gxF{an:i\rPjerrGBYM+qYd0,>6fo0of\0V!fl6 1e\0>kbf!(ra&	mBg=@r \rphI9bm\$BYx@QEOm9\"t \0>%\$rN&s9f4gMfwyy`X1y5x^z,& k1x6\n&xgg{r?-|t}gHgK9J<CC17g!0HcdyfDA;9T00! 6^S?E(P .5EPJv.+\$>P+?~g6\rhpz(`\"yFad6:f\0{f >y`-\rhr\r8i\"_9CIfX2\"hL~\"%V:!%xyzygvxqgZi` _g6PA\$=9|p.!i8zVCZ\"(9!DgU\0`4To@BNa{rnE8&=*Z:\n?gh.N5(Shi2cf@7z\"rP.8T'k(q2&D2~v8@=X`qZ`9j5^nqv3I6dT\\ 3,3(PuV\0UQ.:J\r1\r\0h@?N\nsh;r~7O\$(RjFYF~xf\"o#P-3/Gxn@\"G?ZpxX`v4X[I7Xc	b_9ti6f5FpX'2r0D,#Gl( =a-8dbS4~;0R3zN`+4<^ay	}rk&4@?~E@LS@qqN</Hj^sCbgGy\nGN}c\n +pNTB[dnj;jwhc9p[y405N+Xda/zn*P#t~V=#n);j:JC!>x5==2.';:SA	&men<6ma=Y.gIxIJ\0~aYT\\`nP)[{rDBv-EK;^n{h;p699Q~iA@D jzLV~	8B?F}FTdcFg7 6#.EJ35K;n5:ySCo.{d\\0\0!)g+\0YNtbp+c\0B=\"cTcPIDV0!ROlON~aF|%	WQ:l@:8&[n,JTw9(<O\r\$m/HnP\$o^U"<.nq8\r0;n+3n{\$7,Ez7\0l!{.s8PAFx1p+@OP5lK\\msqQ!7oEq5?GHO\$l+,;~`7|Ji\rc+|#+<&<W,^nh%dCizXA'DEk@B.\n99ANkNd`p`%2\0");}else{header("Content-Type: image/gif");switch($_GET["file"]){case"plus.gif":echo"GIF89a\0\0\0001\0\0\0\0\0!\0\0\0,\0\0\0\0\0\0!Mo) qe\0;";break;case"cross.gif":echo"GIF89a\0\0\0001\0\0\0\0\0!\0\0\0,\0\0\0\0\0\0##\nao~y_waJ]\0\0;";break;case"up.gif":echo"GIF89a\0\0\0001\0\0\0\0\0!\0\0\0,\0\0\0\0\0\0 MQN\n8ya\0\0;";break;case"down.gif":echo"GIF89a\0\0\0001\0\0\0\0\0!\0\0\0,\0\0\0\0\0\0 M[W\\&\0\0;";break;case"arrow.gif":echo"GIF89a\0\n\0\0\0!\0\0\0,\0\0\0\0\0\n\0\0i\0\0;";break;}}exit;}if($_GET["script"]=="version"){$q=file_open_lock(get_temp_dir()."/adminer.version");if($q)file_write_unlock($q,serialize(array("signature"=>$_POST["signature"],"version"=>$_POST["version"])));exit;}global$c,$g,$l,$Kb,$Rb,$bc,$m,$Gc,$Lc,$ba,$dd,$y,$a,$vd,$re,$We,$mg,$Qc,$T,$Ug,$ah,$hh,$fa;if(!$_SERVER["REQUEST_URI"])$_SERVER["REQUEST_URI"]=$_SERVER["ORIG_PATH_INFO"];if(!strpos($_SERVER["REQUEST_URI"],'?')&&$_SERVER["QUERY_STRING"]!="")$_SERVER["REQUEST_URI"].="?$_SERVER[QUERY_STRING]";if($_SERVER["HTTP_X_FORWARDED_PREFIX"])$_SERVER["REQUEST_URI"]=$_SERVER["HTTP_X_FORWARDED_PREFIX"].$_SERVER["REQUEST_URI"];$ba=($_SERVER["HTTPS"]&&strcasecmp($_SERVER["HTTPS"],"off"))||ini_bool("session.cookie_secure");@ini_set("session.use_trans_sid",false);if(!defined("SID")){session_cache_limiter("");session_name("adminer_sid");$Me=array(0,preg_replace('~\?.*~','',$_SERVER["REQUEST_URI"]),"",$ba);if(version_compare(PHP_VERSION,'5.2.0')>=0)$Me[]=true;call_user_func_array('session_set_cookie_params',$Me);session_start();}remove_slashes(array(&$_GET,&$_POST,&$_COOKIE),$wc);if(function_exists("get_magic_quotes_runtime")&&get_magic_quotes_runtime())set_magic_quotes_runtime(false);@set_time_limit(0);@ini_set("zend.ze1_compatibility_mode",false);@ini_set("precision",15);$vd=array('en'=>'English','ar'=>'','bg'=>'','bn'=>'','bs'=>'Bosanski','ca'=>'Catal','cs'=>'etina','da'=>'Dansk','de'=>'Deutsch','el'=>'','es'=>'Espaol','et'=>'Eesti','fa'=>'','fi'=>'Suomi','fr'=>'Franais','gl'=>'Galego','he'=>'','hu'=>'Magyar','id'=>'Bahasa Indonesia','it'=>'Italiano','ja'=>'','ka'=>'','ko'=>'','lt'=>'Lietuvi','ms'=>'Bahasa Melayu','nl'=>'Nederlands','no'=>'Norsk','pl'=>'Polski','pt'=>'Portugus','pt-br'=>'Portugus (Brazil)','ro'=>'Limba Romn','ru'=>'','sk'=>'Slovenina','sl'=>'Slovenski','sr'=>'','sv'=>'Svenska','ta'=>'','th'=>'','tr'=>'Trke','uk'=>'','vi'=>'Ting Vit','zh'=>'','zh-tw'=>'',);function 
get_lang(){global$a;return$a;}function 
lang($v,$ie=null){if(is_string($v)){$Ze=array_search($v,get_translations("en"));if($Ze!==false)$v=$Ze;}global$a,$Ug;$Tg=($Ug[$v]?$Ug[$v]:$v);if(is_array($Tg)){$Ze=($ie==1?0:($a=='cs'||$a=='sk'?($ie&&$ie<5?1:2):($a=='fr'?(!$ie?0:1):($a=='pl'?($ie%10>1&&$ie%10<5&&$ie/10%10!=1?1:2):($a=='sl'?($ie%100==1?0:($ie%100==2?1:($ie%100==3||$ie%100==4?2:3))):($a=='lt'?($ie%10==1&&$ie%100!=11?0:($ie%10>1&&$ie/10%10!=1?1:2)):($a=='bs'||$a=='ru'||$a=='sr'||$a=='uk'?($ie%10==1&&$ie%100!=11?0:($ie%10>1&&$ie%10<5&&$ie/10%10!=1?1:2)):1)))))));$Tg=$Tg[$Ze];}$ta=func_get_args();array_shift($ta);$Cc=str_replace("%d","%s",$Tg);if($Cc!=$Tg)$ta[0]=format_number($ie);return 
vsprintf($Cc,$ta);}function 
switch_lang(){global$a,$vd;echo"<form action='' method='post'>\n<div id='lang'>",lang(19).": ".html_select("lang",$vd,$a,"this.form.submit();")," <input type='submit' value='".lang(20)."' class='hidden'>\n","<input type='hidden' name='token' value='".get_token()."'>\n";echo"</div>\n</form>\n";}if(isset($_POST["lang"])&&verify_token()){cookie("adminer_lang",$_POST["lang"]);$_SESSION["lang"]=$_POST["lang"];$_SESSION["translations"]=array();redirect(remove_from_uri());}$a="en";if(isset($vd[$_COOKIE["adminer_lang"]])){cookie("adminer_lang",$_COOKIE["adminer_lang"]);$a=$_COOKIE["adminer_lang"];}elseif(isset($vd[$_SESSION["lang"]]))$a=$_SESSION["lang"];else{$ka=array();preg_match_all('~([-a-z]+)(;q=([0-9.]+))?~',str_replace("_","-",strtolower($_SERVER["HTTP_ACCEPT_LANGUAGE"])),$Jd,PREG_SET_ORDER);foreach($Jd 
as$C)$ka[$C[1]]=(isset($C[3])?$C[3]:1);arsort($ka);foreach($ka 
as$z=>$H){if(isset($vd[$z])){$a=$z;break;}$z=preg_replace('~-.*~','',$z);if(!isset($ka[$z])&&isset($vd[$z])){$a=$z;break;}}}$Ug=$_SESSION["translations"];if($_SESSION["translations_version"]!=1579331192){$Ug=array();$_SESSION["translations_version"]=1579331192;}function 
get_translations($ud){switch($ud){case"en":$f="A9Dys:Gff:S2\"1..L'I#,KOP#I%9i429%Pb2an2NC4C`(:Eb:&FY\r\n 8Z=\$A`0ndF:Z)mwpQq#qw7SX3/J6g2qs_foE<Bk#nEc>`@\$cB38xJ\0|63,x48c:CA&2.(N'NcCEB%<\r=\$6-\n:3#4N)\0#t4Ac@U)0Xkl*8\00030[T6431@&\ru8}2m4{C4W>WsY\\ /d\"'~,s([3\\E\n%Cz:P,83BB\rA Cx\rJP\r7(5BU@OjI~GF!1[K06 gU%.hAGM8T_o{2:)+}l-mb2EH	S8l\[QmGQk_&I^X>emL\rdR<O8\") VY\"\\e A s=\$0esq\rDe=+L1,q@Pzu@\n\n\0)\$Dg \r(RAwLfi2d\\O&\$~'9t.\n>#<@C4q:R\7U\$*g!)+%&4pz&.zD!.M&CLC'd1	uBxS\nMST9uKV5e\$l1Nd#HlMO3Mq2BD!P\"j E	)&M\nA[kv5\$79W\rQG;\0*{'lLG5L\0 cd0b8\n\nntt0Hab6y+f4$YI~'Z}9P/ST4Q k@)PmJ-*x-YqSkV*r`cM@>liIAa M/d\\1	vxC\0^0Mz	}{qA~m%?DKsg6J;'c&\rC&To#9D[XAl=AgIA\\2,IZ^FC2;%	f;YCdr#I(IjnNsZK^ZuY6*%kJr&VB/=D61{d-}fv<)u3Qm; \nKuNa5l]\rn7VTsoRli#|S-JD~C5G	NoF#J 4R?Q5ZC2m1RM*>f]LVd\n]-bQzS*^EeJjycM\\tW#W^#Lg*W@>\0S} A_,&k=,>r[}xnJ)(\"wp4.mOnc\" +VEN/d%N&t0f/\nyO#%an%\0=>/4+\$#p_	;\"2.\"pz\nR\$rV`D60l\r \"\0\npe\.JBr6/"fT3JV\rv).AFJ)@Z(*,Dbp \"MM1.qiQq6\$'mckoX\0e4BKl@\"vR%HdfHN*rP/t_)fZ?I*L(R";break;case"ar":$f="Pl*\r,&\n(J.0Se\\\rb0,\nQ,l)A_1CeS\ng@OgXM0cA8*y#au4 Ir*;rSUdJ	}*zU@X;ai1l(nd'c(F3NbNS:LZzP\b[Q`u	!Jy&2(gTSM5KK(7\rm8(rB+\\Y*+\"	)\"XeJT*IPF\"et~M# @\0M0#mCCLC(C@t2tA#8^2xJ`|6-+A#kt4!&m?2XjP<+!11Hn@P0Ct\$^#%|\"e\$Y\\RR<B,BjlkR<#XZj<iKk#`ch0@d(@)\"bdFf\r!o1lkmEyddy=sdyZ>l; BE,VMpWP*A0(mC7LUH^qP1hC36J+%`*\r7!\0`\0<C8a=@@u7`9\nR\n9|%cK\$\0lr}2xn4D\n}OUTZ\n@9)%(J }U9R!'UoVDAGjK8\$TLj7pK4(x>@\\SP\n	B(eQun\"C\rP:D|eMpX^\"'	p4T M#K(!k0h_n~Ml0@\r,aH PR_\n1}urjC@peC\\L!:ja6q%lVKS!GR38I)D:fj]0@DoUn)9FaFT\r@!0UAJpYA7d~O(V8Q0&kh2VGZqBPG>G,AFr9J:UJL&})B$F7>fAH4L c~Q.lkY\r?d{T!dELc|G&~CQ^;Z`1|rja@\$;c6ZO;IZ0T\n	7. $6n#HiTVpBW \n@\"p~&\\.s!v'dEQhb v]#1Hl/qA-nHd2~}K*6S+][fLn#A0J9ldg\n\$rQVu<JNtd2%M@L4@d\n`	Cq\"%\0*45;\";l\nG\rvZWkT@r;\\\n\\5CzBhn E#mqkvp8d`T\n!Ae0iJ^4( (F-x \"'D%'X+Nx~!Oyb0RS&^W\zyfJ#M:?Hs\$\0Oqwi lv/n ;ag9>\\O2\\ &<KSNv?9x2?I\"vG yb19B\nCCc<<uX=}V.f,D	'M\npqoLh.OD&]j:Z2l*BlLWC0g+zvp1E\"Vx"\\\0P&/lHbBFH\np\no8baBOV1)hP8=\0%&V)12 \nb>/POb/e0obf^Otd?d4pXDqVqF,L1la\"m\r&0qoq\",*7!-r&q4!\r!s0{:rHI2R9E\"o\"/fi 2/\nEh\0rc(A2+2\$Psvf\"2C\"c(,%r&C/o(t&R'-,/pWJGY\nDC@K112D>&W(R.E16k&qmC*bE`\"rt.O.DNB6`g\rV@`L`x}@M\rK\n`\nptHW;NoFj#3;_%u*9\0EdtL{B`\rLRv`-!F/s0+0{0-hI:6cD4(t\0$Y8DL+2*XblsqIDK &Ze\0BN{Ls\"'K.^8*:Oq~|F\"6\rs@q]Kc~x\"a\$\0@	t\n`";break;case"bg":$f="\rE4!AwhZ(&\nfaD4\"4\r;Ae2a.arp@|.W.X4P$hR}@p4sE7f&E,X\nFC17co)_G_<G},kqPX}F+97iZi_aZn^SYV~]\\Rjlv=	\0@D|[^]#3d\0*2C.(+z>PK>B\"v>H%(Yp\$*Z@Bb#tPx1c(@;#@8P`@OAx^;p@]7RxDWCL4V6Hx.18K+\"%xr<Y-b+#(KJ&F4!KV #\\Ij3	yBHh(JrA%Vr76Za%E0FVf>QF\"4\$f?)A/R>7K\\"\$,+ye> \nb9+2z\$il]<J\\]:/r/(hNvsv}N;-zdswi<~?gB #6PAwcA<Ef8s9n:	+3=\"~&W\$%Kp0pdK4!Er%TE]L<J#ADCNI:+r~8Fb./5D%)^%6Ut@|FId`x%I\"aV3*Sb@:dL8C\"gS\0M)T;Y*rV*2@c,YNVZ-/I i\"eN/#vq!Wp\\6d2T*RuRV\n@HD5~6d8=W &mw7g\n gSTw^Q\\/FKTPd,uC`lCQ(he`@iFwO!:e(jnXCd\n8G8I4m{^rb=GBH\n(-1*(\rc`%=m\r(gJ=:&Czu(@{X@klO'AZurF\"0 gTMC]e(eJ\r`'thqEI}PdvV()G<E_SZbnk*8Eo,`\$QxD|SjjY/ *VRQ\r|F^+( %27X,Q+*ez`Fg`\"?;XwGBU!*Y;/)tg44FnpY[Cj\nv4R&oRA^f\\Bz{jKknr[email protected]'-SB	I[i=,\"srMH3V9T@uG4XFam#1!X]!6F&vZ\r\\b+9i(qpcvkx!tn>Ml*+n\$B0).w:|2Qq^'\\g&_VbDXX<s#8.w\\9U-(4!*@ !TM9'K{r(RnZ&a^0`\0s>,`R\0p+PdIB[r+01Cdn<9\n @N\"oQ) 60H&"D&&pPi5,|.!</dnd\"?r\r.^ HJ#b?JBr@Bj&%Bc+fXB|0ecB%h|l\"N:0|'!G,txEffjGjb~T\n8\"%?#v!\$F\"fB!#7!gm|H-1:#P0P\0R)M.2})*1mp+Vwl}n+,+rQU2"#=\"rq/,?/&PV,fp@IS93u-1*b[SZa+Pd+#jY5*T-o5\0Se&Gw-d{.1Pqi\$x+r8j~:@l/pH<*d,z9x)8\"8o_/K#Cx|7*	6+DS'E'.",~r8|pp48ttY9,@E](R:arJ;7i6JBd%A6tJN3COJ2&+|U\rT^\nO4&oKFu;P4,zd*D2/yEUIt5Eh=T]C4pB %6fwGK\$4Q^3u4Yv#GaQU@ iCpZ/$?	U,/(ErM.hQkkG92TMcVh_vm7n.ur+&:j@\0b:bcj +h_Ur,.\"~@\nZ4pY1	\rVlL0CV+2sUg1A/&^RjP6N2W6?u04D1GPZ(FkKrvw/b*TATRke5jTvN  M-c*r7znF@w;I}Tc>yC[Gl|WA)FA3_;OBJ0Bn@Z3\$BH"dhFD4	%8v/^Y	Ex6\\Fe/u[0>x\r\0^Q0%N5TG,N8break;case"bn":$f="\nt]\0_ 	XD)L@l5BQp 9\n\0,SE0a%. \0.b2nD*DMOJv\$:IK5U4L	Nd!u>a\\@'Jx4D.SE<OSbOf\0Br)W{KP~\\_W	N8'cI2O9d0<CA#%35!nnJmk,q(n+LxIL\0IVB,X(_)7*\np2C@0F+322KW5bIm*yBQ8|NK2CS\n^SS l6 x#r`5#/=H(0z\raH\\0|7jC ^.A`7P}+r\"j}RPF|0_BNs%P,> J4]INU@B\rBv/N7tSFTPSRSEqP:y5\"\"[6.~OzF0,A0j\04LQ8aLw)q.k%DtU1R1n\$I\"R.FD)JTcg!P)#0g!#fOV)HsAzaSA'vLlR,best`L'nJ{5iI|\S1P&>Qz.PaG8F(zz#Y\r43Gw\$Y{pJ	(srGtf\r8\0K2pyU|37ttR0pkj7S)TDX\"RNrk&Y1bq4E`Oq.ER9/`z }@X2MaL26w0^3!=BC#r^IbIJ\$@~kMjl-\ntuCrly/H#U_\$6Wt`1\n5nd45\"d%Ed7A\r9Nf\n9beMK0;H\rXU:qR{!%\0RQ6]\n/QeH1\rT='+Uybxw%s47j=P);\0	{+r-fw?4U Vx[h\rp@RK-F_`Yxd(l4WR,(b0)32XY@4ID5xB;f,BL!VHy;v@>Kp8n\r+YVz]BQ(\r!7T!RHO	Rl+ i|Qgb=V!-fU\\J9WUzK\0\0f,P-j4wG8glb+LD6d2G5[!PJ;)#xRd`zm[,)+	DI0x\r^Ih]t<)rh%FFhTx]8dcK3B\"<),@Nb)gP9;2>]&a2)e*kuOr!J1pS:rSO&U=;x\"b	/`<oDHiB@SZ4df8s!`Ni(Tnu.8C0@-nN)O`e:3(~RNzO\$"H \n`M,vkj}n\\#f\nkF@\"c	FIO\nhO1	h8Pppt'\nnfZd*S\0#)|=,\n,|nS	zgGoe	Y@M'*0KRR1Sf(olQljTG(iOJmO\"FzQ-(EL\$2lr-5Ntt@j&0.\"JfQn-(wLk)Rv~d9R(pf((+%)nvH/nl(p\\#Qj140U6SmguH/02'5gPyL(-?-0Phs-8g	k3<&?cae#(=/!:stwi@pCJAs2uH=sD+Da@,j^B	,s@,M,hcZ	4.TcK%>7(?(lf+X&.'UAT!/!GIGNBxYMBKbdr\!Ok*!S5HdoA@<=8/NXHRUe30[R}?3Q<ABLU]c]TY2o[^B:GY{A-a1a#i8O%a~\$'Z-c\"!j; uZc!EpGZR{fJYRY9/Q0m_U.naO6)DD*&(\$hGe\\v'kO&0R\0J4O^QxhU@W#mvJ7ilkqhqpel`s(2Vq`u=kvsVg.Pe4`cW`@Gh4pgSQaGDE7oYz5nWCG{#{~*.tgQWzthzGG@@m\r rhMEqG?iN\rr E.i\nZx>I74;{7NLBK|8F|-N	JSN,dO(Q\07DduQ3FWhjvb2(L7ga	j[@\0XHR~Wn2-o@m>r!QY02r8V;S\rjFWq	VRmrxuf[f)C@h\nUN2&C\\07y>urp-=2T%2mn T)Mf @W4urSY6('{+5\$s:#`)N/R\$%=5	=h_{Ogg'[Gup&[email protected]@	\0t	@\n`";break;case"bs":$f="D0\reL	E4S6MA7tp@u9N0\"d7dpAHa).RL	p7X\nFC17AGbe4yFY\n,Af -3Nw\r]3Xw!D6e>9\$iMVbq\$n%LIT)/9>c[Z4P0*-R 29($((#j((0h@L`@ #C&33Zr8J2\r#xKCHFCX]0\r1+D7QLu7;B\"2b:!-a\rKcE\rHr#@kk73##HM3Z3bND\"nDV5.5hv0AeHQ5=3thunB#PU.PP@h"')*c')x9+lb46N)( Cipr;C@K\"8]pC2h@	LC7)?\$:\0 UB9*+]o@R2*6t`HAY?\r.3ncL;rN	K\$\$@	2\rde+\"A`.AtiI*,dL5?@XnN.@>	,46Xd9<3!is#jaG5\n`#~l\rc\0a<f\"(a113Iwr@r#/!\r\0(e9_#r4K*8h5+CVmOA;^L;8'D~\ro\$Crt!'L])\$) ;C\n!OPa 0F-;	fMVa\$4Q!`)du5H9'%54TO\naQS*UA B)Tp 7bCsG*C\nlWgiHF\nV\\\\L\$nX\r lLv#f~\0\0U\n @A l2f	 Z(L[)WIBVKh\ncyjdbDb.t|bg!B-\\36=P[UhD7D'*ENI)\"Sd@JmL{Sjl70YseP\nP0*)<SqwiAlPFN	%(FRRm#-AaAD8BHG7kNr8YABU	9I@Y{Dm9<T8GdC8Py:m`7%g'}`\0I'|Pz;MsyQgo./E	$p=of&|nM\p^8(Im%HaZTO*)sugP;#Sd8\\EC(b0QI?\\T!j}u ]-*UFyI4%!zw'[},aq+~+z^#\"aa|V~jkpXOCZ0(uL\n%YF@C/n&r\08M\rap,(\"F0D1VLp'KA(pAicHd^eOJ3f\n>$>(Zb0 \" /q\rh FnkB|r\nkoopral#	%0U	"`hP`f8#lX|*\rS0%ifa"	MTa>J\"cHH2Qj#a^T1~D?e8T@# C+!jT#t\$#Q7Z6_qm#`A\=	\rjnH1+cJFm,\r)*eE:F`~{#W1+Elc=#6\rVrx+\$v\bPGc\0\0\npqNj\r2T73N24U6F^\$nL'\b10&b 816V3+H@\r8D@:B@	\"umi`TE\&\rv*;K>-@\0T	>+21*,`1iP3pk\n>(0\r#BID B'^F\r<n_;D;Ib98t13@G,nMNP:";break;case"ca":$f="E9jNC\33ADi9LF5M	e6`gIhpL9Q*KL ,W-\r<&\"Pb2an1eyg4&Q:h4\rCMXa\\>RK&v3t0Y\$l\"P`o9>Uy=n)+OoM|*uNr9]f%3M2:H!0P:\n0#1h2e1KV#s:BFI4c|0cX70;CI!p XAx^;r?%38J\r:|B!P2L\"&\r:M 5(\"hlKGNp>\0\0MaX 6jH#)\\o`0G:Z9HPDP> ^Ir8#`|ah&B+`p<F\r#VD0\n7Xp&.(CaTRL4%<9Di:7BZ \"\<S<:!#J6 &\r,!/62\r*:7K8\n *\r	\"3N\r-3+XS}'w~R	\"b*0oBFI	2&d`wMp/@eDL;Ff48&ungE^\"JQDCpIOKS(r\\Kr1TSZmMRPY?@St5!A:3r4{IU:.Uh: O5\n!Fs	z/i(0a(Fn4FcYM~sfL!o\$p\0P	AAQ(ezo}*mo+r\$g%nZq<`h&,#s&*\n7RnxqFrR\r?`fK(t\nxy\"&!\$I/\n=DK(	*?(oc6A@'0AI'/cI\0R+-y[M:Sei]M.*&IAVnR5*KDbI3SLA0A?Db/I}\0U\n @\0D0\"*Y=R(N#P):)jS	He4D=A#jxXHh5y,!#\\d\0\$8:h1).)L3ga,=Vk2BuR=.:\0]O,5Uk(wh7S 0r-WcC+X#!hqLlj0P:%bj#"FE]-\$h|\"6J[*#jLn8]Ac4ck9 }	n%	5\$:^G\ns t>UYO{\"w*nuonMOh\"IAXDP[)R6Q+Nry41I+.5^Ibbne\nSzMO/?<mLhVM.N`aH@yo?G\\pU=E/x[:YfFV0QaVR[o0TK\"TH`F6V2\nra\$VO!tNyh%EjMCI:@R|kX7t7~_3h#-/?in}*V#\n8bE0#0m\r2ke&o0nPR`6G~@C>u,^4)7\n=dDfk" 3DS/O%~0lr'\0xlo\$=\n,^mfip0\0@UKf$A`X;M\nhM-@*2$	\0Q\n1D`yi*25+91jqH[	0kN2.R%QQM1\nL',AD.1J\$	(@-)HGqDr%m&&/T e4\rV\$BIF]O<@ZarljAD|nZwM(\\8HRf&Z BLf C?c1m$q62e'i0VhN4781S| 5	}\"+S6&F:@kof8f>`Nc, !E)XSdj/GK2 p2\0003Z\\*v%6l8:q\"[Rdh	\0@	t\n`";break;case"cs":$f="O8'c!\nfaN2\r2i690HiiA;Y@v2\r&ysJGQ8%9e:L:e2t@\nFC17APTj\nbdWeHMNe/J{pPle2bFrP7n[?j1F761T7rFE3i^0c4{3T(	(B#Z-((\"#z90.6#tC\"\$.Vc@5f!\0A\0\rX@2Ax^;p\\99cR2F#2Rx!2! P74>:)c[^xszCmE3M\rc(p5UL0HK\\U<h8*Q P7 PBHC-71b^%\"cp#p=PP\";@HBb`C7,(K\*U(wvNsQ+{FR&yRsFz4\0\$-[#ln]6VPP!C9X1*\r94bFx\$>QD9Vjqp003FIX2E0em#HR9aC[M'^^V<\rl	xok_`a_\";|^`y\r=Bk\?b4lce%lTVGou:K\\\"OJ))pTRKTRl@>D9H*PtrCCOp4\n)5spXqFII4We (&	i.%dFQ9&<a:v	5L*	<o?tpg<X\$"RJ{HG]ESHvohQ4!PVR-|l8a|^FN#H\n\0y[=*\0:\$4b0C=\\^#Ijt.u(c>	9))&.q\0C\naH#HgvNoI9\$!*8`L+ENM7gS\\h_1ThQRiB{ &R@55q \n<!@'0P\\h(l\$nyw0ijW\n \nlrO}@oDx*C|*P~L$"		XC\r!\)5d<b*4ryo=\nI	7D,\\BBd&\$^\$\"|ql5W;JZ=$6CJ:-*Lui. + 7T\"h6S[o*6	uD(Bj_Ot5Y-AN_E_;e,VMKzu*AZ/s	g(C8J\\;\nj.d7	E	LoaA%.T!\${I6@K/?^W(`bf_\nV'5O4pBm\r%JO51]mUlee1z1uN[s	s~arE=uhRz;f2t	]xW=s'S0\$iYH'yrEd0*W1ij#x!h>?(\"&pJ1)u}nE\$^oxCY7F0P'_0O<(:m^NcK\0\nLTI7\nj\nE4H(JwUf`@]Mb+)\\\%eG+/\\YE`@\r`,)&ELIT#P"Vn0=@\n P<dOp\0V=n;y Fp@1Myr\"3.YibAI\$UX`<dI2H*28LBi}#N+CbA1x\\xEjdi\0Xuf0;\"!8\rZ\n\0PA\"O$Z\$gg\$'L:=FE	b*-%0P+0&+?l\rLl{-.UP&BZ\$Dg#-1\0.42-'2:r?&R7D5\"%R&@\nw56-/r	q<Q\"nmnw9I]90#S4s%`#*d\C9#9G:;mn5fQ?7?N?(\rV;ai?oNj1B	9hnZ\n]F tt#TqGEl@T\$j\".FURhB? YbE#{]8\rN}KCo,F,\n<@RA+O!{OnnC@-	\rQ@4e1({\"jVS#Ss!Q5H<CT5BF\0eED?\0a5BG(rN`,2On\"Y`2\"UoE#Urk&QRr:?]S?[\"4Bp<!C\\Q ";break;case"da":$f="E9Qk5NC\33AADA0#cI\\\n&Mpci :IMJs:0#BS\nNFM,PFY80cA8r4I7	|lIS%o7l51r6n7/)@a:0]teg:`B\rg)\n!pQT7WXjR(&oYBcbO2\rZ2\r<-\r1p1?4@#@8?\0y\r	CC.8al\r:0"!cj2?P5d3H|	B"0CrhhTp"X*#US\r|J/702#aM7B2+<\r3+0U:R;@k#4m`U	L\"njp64c:D	RmMPZ9l)\"`Z5D)>MhK\"	\rc(\nE-K6k=^j,SEET\"S:ZZ&r\r2oDTb\\#A\\8vdk@bObx_O6*\r<DC5AX+[l`2S\n\"c:\$m:&Q\r)HC#IT	I)dK!DV <5.Zp_#,BN} #H; JOaDL&|rtiIUCy4 EfNfNzuL9)hWfmL9spT\\A\"0\"pN@\$\0[>(@R.d4fIrSlD2g*p@fMF*\$e E|7`7Jl;\$-)\n&3F)Jn(a.3b|	#&:o_?p8I\"!'E?L@)BO\naQ\"=T3nHm^9RRjZc\r3i H!9s'\r90Hg\n2P(CjF[B2'(\\s(6!K@BD!P\"\n(L<OPRCrncjgP46(,534%EEHQ\r\"jmMre5s=5T\\4H\"0Q	.O.o)8p*(qsCHzURA:42KmT`	+/ EY%^R\$mZ*	Ae5Y1DhC*hY(Pp)@7,6b1Oa,\r		cP!\0L\0h=BE#\n[V+AyT3HX.Vg'	p\0)x-Nl\\l:!GU9OU\$C%`OrsBm\nyc-\0(\"rvph%F`@nIwyn5q/\"`&C,S6EU(L^OeQ:* R,E|NhAm#\$f@q\$C96yBxFOJvM]ts$oMBG|eov&*J}?C+0ruc,qjKr9xDp98\0Cx\n=BbJUaTXSdh17;OpNeQ\0LnN	g\$J\r2|40M`(RX0BP)qo'pDH\$ezD\"R6|LgOET/dUljcZ,aiNO`x0\"]l0OC\r	TPb`\$Pl,KFHDBuQOUe- qvpdV\re\rmFLE\r)o	OO(Bf|'I7@Zp1mOU1+.\ni9'ET2.aZ>k`;l'0E)'N\"b2+&Pe2[jrB:r\0d2\"\nJFzOqo&BT/@7\n:Q>?p&";break;case"de":$f="S4@s4S%pQ n6LSp'C)@f2\rs)aiMdd\$RCI0cI :y7aC4(t\n%6[dfa&7n9Cg/* )aRA`+G;=DY:Q\nc\n|j']\\<,U;Izg#7%_,a#\\\np\rCx$hH ;.,(3(#C\rJj6#zZ@xfij7n;C@IcC#Z-3:t#QC8^xD\rJ@1mISCz::b;%Np@P`b-abtU#\r8 xZ\$NBC)&b\$\0P3weVJ*}\rTzZp(hh(b)-1<7E#][WNBsuL(cD 5r5-X	#ls8OX<jG\$Fl18]AIZi0C\r-m{BS(v#6#l`PY\rh`X\\r8A8. bj " )==r3}^#7Hz\"Cr2e5GF<&(p\"L`LA2&gSZmM@~PXG\nQ^T\n/ia:bD'PF\0000XLi3pG0'XdS#7'o[D }1o1d&FG2M`\$0BdXM='T(BJ^68oK+d0BcQ\$>_P20`	%`0 g\rt;9#C8:8KGOC\"gIAAQ 0dCo%0Q,Y)\0007f,ID6(XU\rW;WC !,'dNh+ru4Q0 \n\nF/))E~(@<gGM!5T:2rM\n'0RA\"_M.*?AH!f+\"MuPEOMNdHh\$S3\0-],8JS0 =5l]G(JDO\";cW1PDv2\nQT(FQlG*BE4K\rW\"5dKoF[x4BD!P\"B`E*(u'[ja<8K	=&L'^5{sR?) wS#X>GB50;SYM+gQ<WkD1@}tK]&XlMYB~\n#8TlpEAo%TRqf1fgTgH[\r9X,@U/0\0\ndpA;LF3&.;@)a\rf6PU`%u#2rL*\0q:8#]+uYFybj\,Rj|S) Ljung*BtB`Ag(2<q].0@kO6/';\\\0[<wsyb,730_\$y`3CH_Ynt+> LTr&RLj<B+SW(Xux\\xHiCs}h>(6Y;7G%?og/ro[Pf|hr1A]]}.'[B1EIH0+f[lGN*Y( P	T,BgO~PF5B0Fl%\\n`nzo/d0~?r	N#\r6w/\r%Pl0rpr,0V\r~0\0:>6Bf #ZGC,Jpbr yR >+'-M|vlFhf-9Q4 DIppU\nTp"0q-(j7C*7\ne\\#`	Ijlt*1g!pn	e\\`AR:@R?\$RH:T1.6 2 reWCil+{(4(y\$G^Py(+nE',R#q\"B!`"\r&S(X\r=/rFIOq/wfi>D`kL'pe0\rW1j`0I\$m1& \np4K6&p|n@ O%TmRO`;/*?nD\$\"73J03U'bf'bEkEsI:XbPSH/H@Ap)Co@0P]D\0Q\$u)\ng4=M@x2\"jl\$x0!N`pnR'D&22.	4S \07e_5,!FT&N=fWC\rg\"M2vO@BY@b84\nB  ";break;case"el":$f="= &rgY=;	E0g\$Y9zUJ2'gakxc7C(@j9sz8UYzI>P'DS\nTH}k-(KJ4j0b2a]`sOjC;3TA]OvOxB-wJ`k4L[_"h-2_Uk]u*\"M?O3)\(R\nB\\\nhg6p7kZ~A@&.WB@I1H@&tg:0Z'vgB(rQ\"O9sLJM8l(]43\$%Oaz,YnR# @2\rK<:#u`5x#\0@\0c\0ybwrUVLAtm\r-V#xpvg)PX/;D;:d4e\\VB@N8RBg%B\r>\0(jeKN/!N]<MgB+Z6-DFC\n,!Q5b=A0$Qq7o6'l)IBgElm9%H<P%CxBf[(=<@K QE} 8H"SP}~PU/(sCQs &\0t-3XJPa J12>9K L7DhIwE'B+>\"	r_'i $BJJT3BA:\"@\$	DMQSM_|T8FW0;H\"E)n&$[c#\$zV&O([/xRJ*hY5R,)MvMr5LL|n1eJ	((x@Ra!UUj9-HdU.W:wuKaC\r_`RD.!	H})EOlIc.D{(iJ5F|K!* u.^b3`pvg)e>*@2qp**SvDEqV1VEBMnJ5%a)!Cl?\$j\nj,9g	fk409U|0u7uYqV Z+6\"@\r0H\"%qb#\$5ydBF-_~P	@Ir>Qp\"n[`hc4BHv3DV^\\tsID/\$oVk9u~.8-Ejyr(\$CFE|044M\$Q4vN)9`urTL.crDJv{SP+B.a?n4cLQ%y&fy7	~Y\Va:20 \n<)HhPoU[R`ZP:C_u<PJ3D&w{L\00lEVKbSxgX6Sp\r\"Q{uH$N9\$p%\"gS&\\.mAP	=1A)g)Y4?7gTm]h-IW|dk<hJ!P))~.	q?i`bY7NA \\c~<|R_C1)'`\"h]>`o9oLN\rh>v,BHm2!axQ/\08x&DIJqKV;+\\poDf{J>k`'yd\"w~nhE;tDh|30<Bdg(Tz}p\"Ihc|hOf@\n 	\0@ E\\LvVW%vINF/D4JyF#&9b9BJ-G5h|EozbO	5q+.q9@n5gb*1'"	&~&Zk aQ)qn\$)-aE~BnX0\"b%24nRh\$?B'=%U!'NCVF\r0h:OV\$kO.00-3K2,\"IPI.\r,nw5pC5(fk6:i0DIi9v=,J\$>~6S|s7:;e:1hX?;I)\n,&p0'@h291V-p\$BCT<;~}MD^36isiF0Q\$d7=g7Cwxe*&uK\$.#14Pq/MBcr>gtIw1h-U0U;DSi9i	EBfqKNoH*2@MC\$&q<5eEz&WUBeHRTN3T\nITpROuL5Qs1Fh8\$Mew\nuVgRDTCJ_Hf)QHU!KUc&yhE]IPby,)\"M&tp5R6qb!g1gfYe5eh@\$ehZgbm\r\rB(#3&/-+C*y+hyd{GTNWSg6pU=R'1(!@k<ctM@WeW?l7N<p6<*1Ygrd@:p3SyO)Yw-q~v+56OO2	ywdv71.qc69]w<m<#%wRz$^ynJ@/oN!jO$I	JF5&*N\n5/\$\"8SqC5IO\n	i\n\rV`B\"\\$h<2BRAx&np(IlfqMwzE|1"J.\r|o6.zBJ|0riRwcCGYnE'\n56v+*oBe-NyRF@Nj"!t0On.Y_0&V>t8m'US?u6z#YCCwrw_= .ESD>=gof:R6v5v](3aPq\$w	6PYD 5hG3ob1\$3\nHj	s@q%\r*DGoR[Z*',IN0ltJ.:15@03ZS+bH/Rb J1cq}";break;case"es":$f="NgF@s2#x%pQ82yb6Dlp4Y(6Xk\nxE)t	Nd)\nr2\03\rF4U@Q&Vt21L\"-MU#vgWu<fprq3t\"OB7(%IU7`\rK@n IP&\rSD,j?R;XF(0\0C7kX:Ax^;p38I\rrDr4m=79S:c,\nM*N0L#:8++B\$\0<\0Ms]<\"6hJ8B#k7le [Cdj;.ue\$@:x,[#1&gDB\n2+-R@11Wx\nvh&ST\"8X2h5P<\$rP\$j 2/p*Dn*<\"ugnb0\nb5!<2C,&aL\rBR_7[xQ13`#	#.A_u2R\nh0=38@a*\nP4^cU*;grkM^>(%8IL>I%l3=%ZL~/84Lp\r&02BXS;)78v`B,P '!=P8#\$F\$>5\n^DeWF47r!g}\rbnPy818*xWV?(FH\n73\\FAJ% cho\0&-dpFD-?d\rZ\\<Qj(2.ZNqdFGI$]r`KK\0Oh6\nv01`l]	\0S~#lH6xGUi5n]#Q9\"!I\"a9@\rhxS\n!rG91l^z0tOXpR$( &Xo*K:$hU`B&'%* U\$-blH)\\bj6{ta`P%\$/q('q2 TJa2\0M*l)uaR<q\rj7f4t:	 *\n rJV>uR1az?B1G7T07LB\na=1>n>EBv\nP60\rA.b1kg+O!8!DzWRFFObyNl pf%Sh	\06S`e\rN=mW@zW[]Y/1{4=6-v3F[RFdzl`=U+VcqnGweG:8N&l!M'5<Uk%jIE<,<uQn1%@&i^VoLf_qvu\n?b?$+[#yVD=T\nweY}\r1x5OZ0B-t.Jrr<`p;-3V%> ?v54x\neEeJIj9uR(xlVc0#<@y\$*7yVpaLgyB2N,&m#\\jXp,cmJVl|&.>-/CaH(/Cd\ri\n*k,/O0;X8\n\nK	P.KTD7mXZ8l;o8umS./g A\$!0ZB%|%\$Bke>\r.E0&*hG^/opta.Rj 4%--NUeimhAq/LZvWCer#!#%t2C%QW%BViP&h-&\rV+Bxbh\r\ny\np0b0,o5\"8#/K\rG/-2j-NBDr~D2O/BHKLnDD.qE/Q-J9G.\"J>f&/J=62d7C5$ETBPrKvb\$PGjK\0X{J!7e^vJ1XB(t1\01B>XO2v: 	\0@	t\n`";break;case"et":$f="K0 5M)~\nfaF0M\ry9&!n2IIcfp(a5tS%9NS\$\nFC17AGHn7&xTn*LP jn)NfS9\\U}:RNqUj;F| /IRaatA'#<{U79ZfY=(L3|7\$0( `\"	NxA *c\\0c;A~H\nR;CC-H# X0z\ra:\\7\$C ^)P!$mP\nj\$,\\\n++(j9GB~CP\n\"**@MtW+<N7A{P(J\$P(#2C`.:#tA%ZL Pw,M%Ic\0z)BK234cZ4v\\CcL 0cx1a6ncxrJ4,%VBQU(~	H\rQJyJO	?6W6IJ>A KHA7]\"kn`w6!/Km#c+-%.;7:/9/0onvyS\n:Z\np*rNLRXHdQ&XKIq/&NfM'?h} guZj\\6<H;C&\$2RnaOzE1)0.I9%4[K4 RfpIYn\rQpp=.b`%ABxu?ij@\rx!"cGi'4C{\rRSx#)2_iz*((L;\0PCOsC4FH-GQxrk-)AH|_i(:I0KZUXH6dmxb&%L04!&K~	xq=\\x*1PRz\r(L)q@i2\$%RP0cFE8J`MF\0-mjh[\n GF"P\\LzmR3a,n7\0a\\`-uk0>EP\nbXd^rp(}<3U	d2\0U\n @@D0\"L\$I7NZ	a,QeL:'L$t\r2\$WP\0Ca~.	I.~YG*PB[ t-H]Etb0H0hU1	\n,{FKyq|g0bcw3;OLlAeB'.}	1CfTW6-lgXLR<8(u%CMp89=zI"%BxP'9W`ST(B@PQA@ lhQxp6!(-W^^MIarqTDk5\n_HFou:.>!HI\$8St'\nA4j\r52}`fl#Y4Z4xP.<kK&sALB_9|[=%h>y8wbnR\t7lu|h8|_vn?grHx?C"Aha4o<^4H:5v[QG,5M=*QNZf@D5q|;EU-{U'M}tD41.i+mWjjbNbN0p\0K0/)\0*J	J.'D3ch``Dr\$ BG#BqL4i%bu/.,Zh\\;eS)zS>0\r*<S<T.01\0$\"2*&Q%qq9sH4 @P>\nF\\jC	'B_Z8E\$iJQKpd]0&+\$QDg],,1&)-L\n1b0AH\\OJ1 eR%PrAqY,@7.\$q=X2Q P	_`\r#RzWG+h2)W `o~+bl2VdqM{FFe#&  @h`eNs\")k\\\nZr\$M#~\\|F\"` \"d}l0Z9-%\$y6>;pf\nT47f>ZQ5l,`rl.!\0Fs<r@34%\"\$ X^EL\"ROi.b9BPqnOf	,EO 6;LCx5eAfs@XAeC&c<`	\0t	@\n`";break;case"fa":$f="6PaT6(J.0SeaQ\n\$6a+X(A2[\"S-\\J)Cfh!(i2o	D6\nsRX\0Sm`k6mkv6C!ZdJX+<NCiWMb\"*5o#d\ZA#g+>mc[Pvr\rZUs/Hr%)NqGXU+)6\r*<7\rcp\0Cx*F(I&:_+k	k,`Xk2B\"8@2\r@C6:##o`1#\0@\0c2\0y*?wpPp_3sLJ|6RACl4!	,Z;djB^M$k	D\"\r8%~U6dBO\02k"V_k\r?X+Imt:LZUqq{\$D#Yc\r::55S\r<,(0(/o%e@^ma\n&0)RBYcvVz_C=*bWVWvj"B[z*Z0w^HK?x!_TB dT7r(:9KIir:hR@<\0'es 5\";gh^\$>C(f6I)D&&OBYVq\\n(*2DF(VA&J[{Ww>P'3r?-_DQXI][*@:\r67NC\">Mx4O;rP8@+)[B;*HWUFM!7ZX[66'dh@E1,k#\n[cz!B\\q\"DOAC2QNHX!eW%hn\rXTc![h84HT	3r!6\0CA2P\$3a%\0frM\n]r4tX!WQ|H5K:UUo(\"3>\0((`ku6(\\aIrdD\r 95\r%j ARRsLYdL5%ia#S\nA|	'3uFdd\$\rS&eep`[Bc&t	\$h<4*RFKjuHI3 \"z>(1$>+CL\r.J#nXKMhEVJ]HW0(I\\(%fMzKg(C#J?TynHx/QNn?U38~ ('BD!P\"(L)Zn Ld2\nIhuH-bAg~I$n|DiJ+qiEGTmGDUVF+1ttzp\J:o!k*#+k\"/@ a.[mJQT,|.3,6jv-Q`l47N-1Z-/lL5>G{KAa \\RT#S8LjZbF_wNBp7Y)/3bMu5[]SCr'U2vIY;JMQ4<n Ic%o?<{zL`zn'_lW|;f|Gu22~`K\n+\$8sZ><a}DgV\$j PPYm\0rhC&!\0P"n, ,Em8~~q-48X\$ng\n4.C\n(0\"WO\\0lJKopFkP^A\nlA?'\0lG(d?lL[%	]h~EmqQm;]PPMe)Nn0^D@\"CpBLp-)Rui~o<)-\$:,C)zm`P%Q	CE#1'bwvNY#)kqv7B):7q\$<kM,DcBV<wn,\nrDx1&+:3"Jd-~5poCN2 rVie\rPf\np\\)*TO\nEjf%BS% M:7\0l@ELF1b~O0#&ZDBm'??	r#q7\nwr4	@j;@7zSwcVz=T",d0GFni~h*@\nD%\07GeTA	JBF's)et\\@";break;case"fi":$f="O6NxL#\33`7iH\$:GNal4eu:&`t:DHb4oAB?K3\rF<\rL5 *Xk:+ddZA\r';ejINw}G\r,2h@(vap1I*mMzaC^vcKut2se#Q4p%S%BBXp0\r29(c\rLP\n%0@4Ry	n0:h*R94lj0z\r\n\0Ax^;rOapcc ^)rXx!;%@c(H\rc,@:kT`#[:!#^;HK]%5@#8A-. V{.V!4#=78D#\r4	\n:5W$J&Cu2SVr/\roKb6 ELiK	);\r!\\=bX}+6.P%H:~Z[#MryemiJ@0K4Jeg\\\n\r->vNz1(3l&#L6zR)j44U=ZtW.DP-II((:c_tKwQca~?hp/P^Z-h]#a\r` Fi:\\K1&DRl`v\ru2uVG5	/RQ;2\0w0HH Z*sRHIu(tL\rN\0JbP,L)sB@uI&-*vT\n)EB6L3C[\n'dlGwR47x;*/)EwevV'zeXri~0@@Pq()3O=K\0S(e-,Dh\r(!4>\0|~Q\nGM=d8}tSQWaY*|fQ((D[DQt}Q(Rp 	XBvdMR\nK' ]C?f<jKBDS9\$O .6UJTr|<6liD9`iWpN8O\naPs@u: n3D	FnXIIVOnJL*\0tO3B%kD^JjsZpAb<'\0 A\nB`EhAKyYz:\0A[:gr d9PlG\$&/%f3cEEU\"gfuSllCk%#9nz%\"d),I^frsX&.nbT`)IMcA\$71Gt23Uiis8>rVbTmuZw)GlDaJNm	Zep\0KZ@(s3HZRDPNmc\n \r9r+0i	{}%{'Wsp^x5ili	p<vk?htE((j\"VKn*p|;roQmstw#\nHrV+4+te+~(\nLocwrQ0xH9<P0KN\r/[7V\\rhPu*>r>ulLp2NuKRq	k\$Bk WlB_R=dHjYV	9}]fiF/No	cDR|\$-x|p#.\oO6 6E4F \$vYL|U\$`o\$| N%(J#E\n<BP`@f8D\n_xXWoTNFAOZ\" -!OV\0XQ0Ft, bhb&	 	D&|#P&&1op:\0%BG~\"C\$\"Ew\0\rZqTK)YpJ a1q$:<0/rD@Av##.Q%\$_`4q;&rnp6ft?U*`cnL8FtHx)2R\n	&2r];&M[! fQBq\")f5,/cX5\\"R61+,Ww\"d[,mnBClm/cDn^f \"7/7pQ4TepDDv	(a"o\"&QV(l\\F\$L67,C6J-<<*=LLf8\0%h%(w@qq,NG0";break;case"fr":$f="1iu9fSi7\n\0%(m83IIcIDi6L2@2:JeS\ntLM& PsLeC4(<B\n LgStgM7?7Y3:NINa;OB',f&BuLKg!uzc7\\kn30P*P<HcRP#P-c\\9P(Ljk\r/G;-b j EB<4X)20z\r\rAx^;p\\3sh\rrP^0`;QQ6':7KroTBr&62on7KxMl!m6t\"2222o	Yc-#;8[U">W&LJa P9+VT{/6H:yM	E`9N5~eVD)\"bC>O_z1LquRTmf Pz&\"94n>E<_P.aP3Bt8En\$\"C[*hJ]pbi4&\\02%4oZoKB;'|kp3YZ3MzB#&,c0.'ee8`MR-P#1!+}'\0K'\rGx\0j \"\r3A ,U$?f@a\$)%u9xOI0#D<	(g9l0`BDFz2#}OBg"\0m{)&FT7(A4L5v)H.;id`1Jrf37Q>FeJJ9(i*K	ck\r5:S$8R.E\r1_1C;aP+[8DAA2B\"tr!*n&	6%\r6-7pS\nAnRNV\0\r\0%SFyxT2E%P )5d#isRj^\r\vP|EJzSG%#k}.|\0>~ \0R;O66ql]d94wYa;K}0&0P4FsW>2ne\"VT	`=36ZKet	{7gXH`cV2 \n@\"o&\\W'as>Y<5Q\nzN<8)p}Y=iO[e9DhHp$\k?((8lr21d*gVe\$Fts\n&Fcl3;/H>XHH:v&(QU_A@=gK-[G0a\nJ2e)\nLh*NRC\nmJ\rnDblqD\n}=E/pMi.^+9\$Hbit!Um>vT\n!AJZD)GNr2{b_\"VL_8e[wdLTdMHc4R`O;+EawZc|p9\$?5+tP]>J\"r9cNe!2|0Fr[M\$6ckp@b3-tQqu!'O\nPA:/\nu\*gW}O~XtlN+jL2&OA\0ExL%\0dRO_efYb\"ZC`\rhaTMPTS|3N]DZ%iZg0*g#p\0L)\0\0\"xbp]llU	p\n\0$Ys\nip bfbPP(/rronB8kd.eL2&[email protected]!1d}hrEq'1*JuB$Rof2bQ\0E{P\rmy(rr1]\0.RfP/\n!Rc'\",\$F32K\"NY_#DDP\\\"_L!E\0Q\nI%9)p2%%002Xie2e+V^2g%b0e,n,2^%f2Cek+1\n\$rs0D[03%C00.\nO`&/y -113ZC_\$`?f-+RdF|%3s)C1!3^I7%\$N0$S,@k5q-\niA\0b|jJ@Z6N>0CbUBtq\$TD^dcE`@@nE\\iM0EG\0DG81!pvZGqT!;C<4;o)PvQ}9&!4lu\0;\rM:5tM)LTh&;dIF:\\O". p\"c#y#h\rBt=/c@qNld\nrpC\\ 	\\BZ`A`;break;case"gl":$f="E9jg:\\33AAD@l2\r&a9\r2aBA'6XkYxlc\nNFd1\0M	h,\nFC17AF#\n74ue7B\rb7fS%6P\n\$EFS'M\"cr5z;d0[(p% n#	)A`'7T8N6hGcK&;Tu\n9M\nf\$MJh.Jd\nRsjP@1"*L($cph09#4\r#\0xC@t1SxrSJ|6./)x?C*@1p:03X-7+p@U/Lx"cxC(BP\r\0Mi[WBXO#\"1vT+H|P+.o(c4L\n7Pf;63:c03\0w0(&ejnU\r4p_P\$X(T~WPC	s#6r2KE)\"C-Dz!H57\n\r+%Ci01UTXDOENB^$2cT:2;B;zX0I\nS(wOz\"ChAk5\"_	|F#\n#)_\"VRk#*SJ],?)4BzqITxr[NJQeeQ\rd\$VK	i.%,L0`	@)XMgJ<Ja1rR`\r	6D9RCUjcJr8a\0ia8^,x'\0\r\0PUL eLvG\"oG<;,'|.vH-v\r<?f~i#I#pH6&	ph3elHC_OS\nAPC@ +xd4gl=')e\raNF\np}i6\$_aPdH.P#QS'0b6S\V|% UPS#(a\r a'\$S\n-tI	+2hs4_EEP\"I+	)Q0BL	!h ) \n@\"n&' yo=&[eYa,LM( jF\"u(dY9GuAz.z Eh$<1Vv\n;(()U,mt3m&|f*#,W.:pPSce-c~f1^lUbX]C@2\rallH\nmMzqb0RR8&z@NE]-^F49RL!!J*0*KN/F<Ls\"_a3!jt\"C4aI.<LR*0yL,4kvw0+\V>\"Sr~3Q'FC}!\$?lP~\\kzh!)u^\r;4\"(QwC]m3JccbZU]S#;D]g&ow<xt{MC<hU.0dV3GXfJ| )\$\0uhmQBhUolm00\"n@D0r2BP`^B)T>9#\n"BBE0gB]F"p\n@v%\\ij\"	\""05G#	F1,bj?\rL1P8\$kO~SmI+	7OU\nf1{ V%Nde7>4b{hI?QF\\gjq#fC!=#/2\$h#R,#UE%[P\r2;	qi%Rf3`@B\"`F\"2Tr\0j|\rb4.)#Z\")q1*\$+oR{^xpw@A```@j\\t1+.\";	%4b@Zn\$i1N.#\"6#9FzeE-0\/fm/l-/-;4 7<gl~3>(3PL<,(n]PocC;:=;@_r>FbPPbo BB.1l1!B:bd1^HVLH)E~\n>@-j:#~\".lJE\r";break;case"he":$f="5rt@ ak(ffP<=R\rtSFd~k-tq `z\02nI&A-yZV\r%`(`1Q9'K&cu4Q K*u\ruI4 MH|Bjs5-uF}D 3~G=`1:Fk)\\N5n59q-|_|mzSIn,cNfLJ @2\r;C2:#rp0#\0@\0c\0y+%\n;3!\rk\n#xzHJ[H2	l#njTB\r4[AkEt(\nfL947\ri\"k?S/-p}'U2A;)\$'Hm\"	--zIB&Y\\p?TS']!rin3qPuYMZ)6ki6y.LlB dj7i:\\7i(L4yU^Ql6)5C[[ O)O'vs:}sH52koa'm@2^\r*9W]ug4%It)J0:ND&rLNp( <3,N:\nIOJ)M*pK&\$)SI|c^JLl`3QrN\nWi\r\$jqA2a\"b`l\rnDriP4!!5B(\0P	@\na{d*nEaCJ*\rArh:K+'!hsGFXCppG \$ h\r!4&MF1naC?rDthRHr!%o	\")ftBT<~C\0Z^#+\\&O1HN(\$82DA\\<RRBb%I/E<u6 \$@=\nH9sI*L('\res)uB&b`M=X&dj\xH@g\r-g`nZ5!6Ov	VW!Xni %GkrF%n!n OI{#ds9M\$V*AAbHTb1l,cXs\rzU,!ciN 5vU1nF\$\\T"!P*sg\\<>19\"Rmzs	=%dyI8el!P\\R^5Ych,/7#q@-DViEmv19aCi5\rhUD	7\0[{k=EJGp@GH4z`w^,6oxgTDQ-rk\rjB!(93ZpD{*fEZp%@p~\nr9UrPQz)g[Qm\\7D*BU<U9asL	8\\m;+?}vnfk	k+.3{'WMbnO{@_53toS=\0B!`XM0R,['^-?3I>0?8}{f?Z0H_Z:t\\|#{FQv|_UR?K.P74%p0 \$<69>Dn.F#g'z%80x|\09m :h/&k^k-n<='eZ@nL(d~clVl4bq,R*YK\0E1r0*]\r]-q&2Eh!^nE&3l:n0'l^\\#h0p -<XqWP~gF41[!O:xY2E-QIg#b aD!(<#kC\0BY>@Ef?g\rb+$^*> @";break;case"hu":$f="B4e7\33\r5	d8NF0Q8C|6kiL 0T\\\n 'LMBl4fjMRr2X)\no9:OF\\\nFC17AL5\nLLt1eJ)F)\n!aOL5LsT\r*DAq2Qd'c-L8'cI'!!4Pd&MJ6ApW>do6Nn\"a}1]\n*Jn\\t1(6B7J{z:H(T	IC\r'|\"PBP\"=A\0r(AHPb0c\n9|,# XAx^;pl38KR\rcZ\r#x()Lk'*i nQUUCRB0\0K\r2h:6%YTN5P#^V8cm*i[X-3#RP0cL<58.5[CCMb\r)X\r5Ch7S&3b7Zc&K#LK&C3[SjU(%j1{BN%EBd8@6h+lFNzY=h\"(.#lc>7sMjs+#tGl[5~ZP"\"(\$d(-QK5x(Ro}kr\$5rU/3+AYQq@\nYEEJP:wh0BjM8tN2P 8\$BQ\rO:%r3F9+!4L\r% 2gM)6!iW	Ts8hn!>sHe@~e('rJy\$8 I-Fr*0JX'`JDHc%\"s%C4p\ri@1W10%R4eL1dt3| \n (LX2E2G2>M!R&blX\$L%\".DW  d43J7-bw8!4 ?\0FY010J95qgYl\rbVL4>a\"I>(D5JTG`J+J3@tI\"!J@(jfs\$1xS\n@dg\$9P\\j*CV2W\"<\rNi81Q2+\0&e] (\$9\"Z\\njIj)n*Z+BPHf!\n.\r\0%\$P;['jX\n\nqfSN\0)2ZMpUpF;v1b1)*\$=W_aC\$fM`/IEFn--(\n\$0\nXr:Y\\/yxkYVd\0Cg-sMD`\r\n#GU GCD[[CK*@ \ngm]c"]Ym!np_zrAp	d6(8.y t/s7	bqrQ*m\r|'U b:2%0\"/OTY`=E&jGFO61m\\ UxO.a1GN'\nwx	Xl5kgQ^Fcq/jp/+Y^'3KbfaC\\G7`-GK-+^v-;kR'0D/cv9+2jCbV8j&2`A!ZLUnJ<l-P]zj6Pn S	 hHpM\n\"+\ni&tUaul[n\rd&0&t /\r#\r8%^A+I6+\nM	V&&~BrEMl)0hrW|TSqhF{'l)O|Gl;q`;@N|#\"EBN2>&S)KX`F`TU\rv\$o\ro,^k'\"/1E\\\nC(-:G\nS>'\${!E)&h#&|=+w\"o&7D:8 + mz*(EQ\0>5oa#rPq03/R	rXYO:gNOS3	AE:\rVoI^\nJn\r)H~@\npsH^&Hsps/'\$BH\$J_h^&/dv"0EaB0kH:\rM#j	%\"(mn	e\n)x NcC7\0\\cUd>N\\n\rJ-1v+v"For%*8(5cZ Gl\rFbstxcF	fnMfmf{%F5Ah\n^?hRVUuE2-atp<t~+-Q*\r\"\rwc:lt\r;break;case"id":$f="A7\"7BQp 9A8Ni:91p(e9NRiD70#d@%9L@tAP)l`1Q93||+6bUt0f)Nf+o:\r@n7#Il2:cMp*4Sq7hA]7c''D\$47jNznQ9)dBjV:p	@P2\rBPlcVV9C(C@t(pz29^)AjP5HJ5l<tn!(ENh7{#K+1xT#B2B3ppvOnZ*\\%or5'#:2h&lQP.	((P9gK6(Z\\:>a^(r\$oE	p#wPU	"@PB\"@@h2\rc]C0\"V JTIrd2Ufrhu70[t\$0NcI#Cn2RZvad[|FBq,\$L(\rx,w32XF|r2o0B9Ih6\0Yl!\" E~lX1J(@15#.	9%6hIzD	Q):[4`_-H\n)\0BeIa\$MBniPB\rd;ZW	*\0BJ"e8hn:9dt|M!j9\nC\naH#EI(K\r&P6hbe\"JfzlTZI9|H93CHk(LA;RqviQWc]3%1573PQl\0T[rhLOH 	iJPr,A3A3`0M<JBRy{A a*E3r#hr {\$!D**	PT*\0B`E@('CfH|X2M\$MiY.NsM\n`v\"B0AXd(\\:\rER3x{M5^,W1\$k:'N(aMRfX2vMMPjHE"%@z>hD1J2	-,\n*dFPR6cP#N(\$Aa N%9\rr!:N%(Dh/x2X_ndN(s)Ge\0oB\$l"xF9~H3&0cr{GR|qi~\0:G0	C\r-L^~.\"X\\IjPqK(jS`NVr4Kjd(*Pajgx\"pPP&EB\r-Ez-[Efje\0Sh\0(5pl1p-z|K0NW_o}X~5{ZqOXaV?w';n|l0C7u	{x\n	N\0j*z&=b\r;PtZ:st+6d6\"sX-`^m9&;yI|y\nGue\$U6*0W_-\\pA/NX-cQ]yvG<O	0e}-^W\\K QoX\\>;\"hDT(i/,Ubd|\rRBN~dVEjVBZ'\nZr#&Bi	U\0C-8,>kb,7\"@`%rdr(c:Bn4ore1P&&1UnP\$A`Qr8O@XeM\", b^E&C0V\"/\"b^@\$$\r,(fdI jjO;break;case"it":$f="S4#x%(a9@L&2\rp\"u9qp(abI!6NsY7j\0cH 2gC,Z0cA8|\\oN&(ZM7\r1Ib2Ms:$9ZY7D	#\"'j	 !4NzSf 10x-TE% n\"&VNw;PCS2,TAE	kvI	zs P2\r[:!4V4212C(C@t0,^\rC7rr35h\n/K*sbr6\r\0M9OT\n7\"\nL?S0004+X{#6C`nt\n/cmlcpB|lP\ns3,YTe#_C\"0)\"`0L+r@QP6HK9.2R!NAf/T*0@*`2jo3x"/UtN#z)2HB7+	V\r<ATcpeG\naJZ{).'czZ*2Mj7Q]lt!<%9JRLtysa3M4J0IbR6*l\r1G1 HR\$\$IC;/94RY=@|QM[gF\ntPH=JHN;@)0a!.d|bj'o5uQNPn8Gh5nW)-EbI		GPa(.xVA\0P	A[\0((	-j2LhX)\$yNjr!Q;N:4i%)|8 f5,P!U!7\nC\naH#I@A%AL[\r+*!}d.^DHXy2\$\rDGmx]\0B5RpJ\r\$( rn\"HF#Mz7tnm5RQ:1Sf0 R6/Cw9@+BD!P\"(LPhR9DbaB\nr+C@PR&J@T\"NXyd`0Ltb!@5cnFhj	9(_M	\"\\{K8tRA)sTZ/)*||xsv@`y\84`6+2bce[Aa N"g1H!fx,x  EcUn:5R!o<%Ge@Co.\\b'pvbh_`@/Ty?h@St,nI]_tA7FDf#1jZ}BEAptd{y\03-y/nXr])\n}wovp!,U;,Y\r\>zIO(fVTCg}Jww[JyoaNkITnildSyt@HH#tsp/MEAo PPRy0-y\nr1b9Lf7zoPo==xh?F\\\"r4Ti}\"TtsFD<s\"[)$wCx/y\nZ0G5g>3bq>\"|<.o-C/%\" f:Yp>hO4\0Yn&Bpx.fcnt]c\ne\"ZFDJ\"Tg\"0})#W\kn=	BW,C1<&kHc\rV8BI[ U.	a \nphr/G`%1R-(b&H(]L\"N0Te;#qZ1nZib0X\$f%>/&B##$1_H#\n4b] \$3.g3\"\"\"r;@5c(\"vB~oQ&r&N6\n\$H\r\"JD@\$-\"L8!T\0G-Or>[] e2PD\$^\nq\$T\0@	t\n`";break;case"ja":$f="nc/2-O@N4UP\}%QGq\r[^G0e<	&S8r&#AKY}t \$I+8B05\rSR9P:aKI \n\n>Ygn4\n:ShizRxL&`N8'cI2Myd05CAtt0S~9s=\\\mtTBOsW:QP\np2C9E8i\\\t/BlrjHWAEYp\$r?( hA\0-h|8Arm)8.H4a7c2\0y5G)t39xDc46#HxAkE\$hJ	se*WXt)\\rDb\rDK\$E8wvI @>gI\\\0S\$CEi9hQ9s}7K6JdNB0rB&#'&X,Et!	p-V)Ic$=h?&;_'AR8NAFDoF6!}H8Ctna{fJs,r8UnH*6HTT3)ZbRADP7`l:0`sOuR  t N(`PGTg\r(@C\r!*\"Q\n)F(2RwZr@*U\rBz YF^1q(@57(@CyOh<\0 .O(UTZQ4SJeo I\r\"@>u'E\$rj.J(I1>'JA]86k@Uy4@dP~K.r]	8NGX<IpCc',PQx-G0 B\r:af'@\$9dOB\"\n&sV%,{>MCUFn6fUt7G-&&&9FaZ(5|~bkju2q@nA;>CaN0T0|9D3,qK+r'0 I+a5RI(!	#H,_\0dt.>qM!h RTpNxS\n!)&bHd[sWU.\0cT\nh,m%i=V\rH&\0Ma*Hii[CAax.SZ9E	PT+\0B`E\"xhzB%>2-Fm@{p&t,53<7fT%0Qq-0^eEugqZr	(*%Q+\"lXXdzygg9\0;k\r\n0Ay_VkZLFMyMeOV#{R<7-ix2o[h0&7HB4\"1&@ h#o\rr\\K(`g*I0u#7wF6DHT.{0Yuas w(;{QJ4?Eg<\$ qBN-nt,A\\2+}m(Uf\"1dQk  ER^YC[Z qb]\"+Qk-bY'vG$oib2\0/r\0n%gL`^\"#*p@%?)^I\rmP5B\"G^frB0b\\\nLE-&bO-[1\r0\"o.OPZPnp\$08K1Sb>e'>>E]n\"E*0,Fm\nb3p107XXHo,\"mGX]@\r11\nfabt26?\"\00|0VkceK&M'\$v8(s/+D,#{N qC15\"r\n!P+..//x '3BM*G[Aa0=ap'')!E&IHne$RH/qn\$c+3i&`\0000g\rV\0`DM`x	8\rNc\rK\npuRHF9gn3a#\$ +F9\\G*c16q%B\"2n4&B^W#EB9Dm<'9/O <h<m'~8RH6Ip?I#)/R	J+\"0'\"`t#V%4u@HtY 8>^o'0U\r%qp.C4 @L`\0aKeH2(iZ.]F#h\"g@m'!f0xU!";break;case"ka":$f=" 	n\0%`	j@s@#		(0\00VAC%PX\n9=A`hJs!OAG	,I#	itAgPb2aU\\)'V@.%:B M@TzduS*wyO(Noh2>\\r;7HP<6Imswi\\\rP3ZH>AP\"9 jtMs<Jl-:(idbM\njsZ=1AM\$:NpDDj*SS.# \rI0)('rJ,\0x0@Ax^;pP0\\7C8^2xcxDn?)n=tjT\r1R?-9D*e]5OQ#v8\"Jz>_L@A320	;[,U;]s,F#dW<B)m]A\0/Nr+(oBJyj6nH3}D\"rwh,{+)\"e'z(kwzo*cNszwSk-'v'E)3%)m\$dI=|fzb;w}T9"UK2+P1f.tDaG3v~7P-@wi9K+I-fM%2Ieo3N0:fzsXH**DrZq@&02K!`>BN^bD\0r;]OreN ctJPjCHc\n8E4Qd(1GTjSVUzVjt7LYK6'gM##rm5NOlF&a9J	4bgeKnJ|Ap'AuS*TrVJeq#WX+,9Yvs`S{9w5?c(9F|u^(h 4qf9W1D&TWMq9[oHw2%:\$	F>RElM>@i%A_&2/yZnIxVi&Nu'kt%/uthtSd^6XMy@{WkK6eLR##J4=Rr899\"K(;-3BIi,h7E|vH(0i0W_t6#\zcZ"c:4(kCRudV85g8svQT2lgU,ZfC8/m0n96@_\rwi#f*b0T\n3JMgR	^*><0esx,i  (\rg<n9P2N)^nl7/X^mBloE#l;GXK#u9d3OEq>Y%=r0tKmRAF0NO\0u7']A'2#W+6-!3li.ae*(wv9AG{H2{vd$5'3Cq5tDE#l{}gKj-t_bJ\nTQ<];[=RP?n.+zYtBT!\$:8^YyG=8.#y|jMlnEJA(#rn{J)\\fY%d^}CN0Fo&>'sML@N|,&G\\\"`/@GN+72L(\\v/1	kHK1L\0|nJ2u4-,m\rfr'zpJ\\9\0Zf)/8un\n]\",=h;(ENkc\"\n10|`x0_Oq/\0,rhMJ<HRFEQOp\$Mbj4JJV+t\0007m'N&)'\"hipy)qBARdpl'\r>}\$i*|r*OTdl0}rJ).|E%N\"Hhg~56O7k7\\Q '='M:Cv: V{u'D	r0m]!2%8!92@\$\$72d(R@A2#B'?C	.CQB/+Qn]9qR/554F^nGJBqFb2dS)kVHC+aBQ&2wL1IQJ!f{@A@DYy78#X:4)b5=29E#&GCF|\\Bh^\rV?ASS0gRQ-aXJu\n`p\${/K(q!1r,OFo,\$r{K>tP^PH[cS4oSYK2y;ff,VL%BY-kS ^akpLv0\$@)+&5=J~PMref,`&	,HU55)M\\D?XgRi)LMSU6Fdfk,gcK_()G'NPiZ'mn:{gl5b'=^sq6pDu}2Q=h-({heDLu\0r* \0dTZQQU.\$f";break;case"ko":$f="dHL@ZR	E0D:!#+Bud<LJN\$HiBvr2X,S\n%VAc*D0cA8k#-^O\"\$S6u\$-ah%+SLAvG\n^(&MVv\$-F+Nu-t}K'Rl##`cIV	[6M P7\rcp\0CxmBZ!L:dB@0R\rM/d!A1pt56Nga0@EP'a8^%\"X2\rxPcS8s##4\r X0z\ra\\07xD%?4\$6HxByiNHIBj/Eh*LI\0c](9ZuEKIr[P###6y\$0PBDqa(J#%gDPv'+:cA+T&8X?N)+tec6OEJL> H #cA=Cd9c\"c%sjncX}\r$T=s].E!m=okG{3+Al~dqt7]lwB|PeHA?uiQcO\\XtazS\"V>90FJnT#,6AB\rPSrsQ@@h\$0eDde-H5FYk@ZdWA3A \nMJu2T!PrUJ0``\"^e3b\$K"zrJ$(DZ\\&rL	0 .R\nIJ)e0\nRD%NJUO9dHm\rx6A \rj\0tiCMH	r%R&_W004P :h%W\rP*\reh rBWDD'HH\nIv0:+e|B<Yj+8A5XlA;tJldN6T\rC(\$Z\r1C:zS=H0F ft'l4Gj.ZD)%-vv4GLJ2RaFDGw\n	H)v\\u.)X:T*`R4mY/xS\n0-b{5kC4F`/u2 w4PP\"im=V`@(o`/=s KIy1DKf'x&EExqa*aNtuGp`Ls,(!/tF82aD|NY/nu1svhuWn$v#34,dZ3zZ8\ry(QAJ/EBhXIT%h9Zv2Pl\"),\0dl<Lpm&ybD \\.U4]-Hvp7bN?IE)UqP^bvE7%"#{_*@ <44Q~-EL0@=Q6t]qx\nd/^&W%;i4;Xhji~\$aDDU\nDtKZR	rt9oUnx	Le+^KH7<45ksgr`hJ4s4|=\$v"#F8a7HNa-}~5R5:FghA|3h`wkHZp0Cn3n6/NF0NV \r\npn0\npc4<%p)&\"8'D8//xM, =\"<fpq+,!*]Mp\r1-PIKgY5epJ0.Plq<3BZ,n$0\"clmNHk0 l\n8\""GG\\	#r@t`\rT'.>DBD7%&Ihl%\n%S&G\\Ef&0dTbRs!p*CO2	Prl-,nem JnK.=?b=H1!jb>g50+0%O0Jh(\rV\n\rgAFOr ( \r@\npx5<#%1O,4geD;2ps#_<A\")+kXn\$2F<3(;@Nf&8dpk<0@v#b:6IA\\!QE:s+E/0k2LnVy@#FQIS&Ff\0p`&fC`0d?2&taj[0rgJETFftly\n!\nMf6F))Fin\\Ak)a00Fe!a`F\n&";break;case"lt":$f="T4H%(e8NY@@f\r49Ma!^-	Nd)!BaS9: 0cA8Ui0P!@l2Kg\$)L=&:\nb+ulF0jo:\r#(8Y:E@t4MIS9Phb&Nq|JPV<k49`\$,#H(,1XI&9X9VB4-\nc`	_\r\")#jHC\nB;%2\r1+-B4c\"\"0\0c XAx^;p\\#.\r*V!\nPR.bck=T6P\$:B#b*	eK;@.j>4@H*@:bX:U)K/5q#;3$cB4W	RTh\"bT\\9hm[Zc;%4c.BC8hr4?Qa\rv<>K;\r,!HAPoKAjK'_(5ro>4hr^5J916G4*\r7:P:H-,fGuR	U\"^bRpuLotHGIDRlM;\$xOA!`\"Oo\0=B	z 	FIQR:O9,`/Q&5kM88+\nCyOq]bp.B4t!D8D],!eR40	M!  zX33~*~|>6\r;`!\r`\ri\r!^\"DB*PA8.GV\nJc=\n!zE.oBWe?CC~KVM8K*pe\$<P\0C\naH#G4ZX Lp]E]#jH d o\"\$ZKHBeh6CahI5>'d^BGm!\$D15G8CGmpPQ&6'0OdFll\\_zmdmB\r,\$P(YU!_cYf:3sI\0`5)r\$@Hb>7A)'x@*Dt-)j0W8sxlCr,\"&'n}Eqj`G"K9Y[y\$mKC.P)}e^,q\\\" nlh'\\K@AtGsV`20Bw~Ljo0	z(Jiu&gt\0(	d\0  H;g<,yS\njp2$P]fJ)%_W3qYq8UrJ;a*@ \r- s)KVM(A^p8Ng3dt~>zQ\nu`\$*)@\$\qIcq]4| tOO7_\\39UFC1:a=KOKd0Wp&%Mg#N*ZN/gTazOz,=o\"t;r-0YD{_k\$zS>^{_b\"Y/5Il;|p%pwFg /6P\"58\r%[ @T&R+2q#\\Tm@/P8.W\0	,0tK^}\00?-Qp%B\"e<jQ=\r\rlxprdRxi7\"i,:\"<\\\"#z#}^g`D@(b'.r-d\rMQU^z0-p)PRUn#\rNjX <RdZi=\n	1nw oHkbc\"\0Tm";#PR`@pm,8'MiX@NBdj *\"HR\n g0,>TBY3\$(%r<X8~6q]!a	0_P\"0\r31261ne*\rV\0`Cj;\"z@*:~ \nps@$,^)!3#.~`[rpp\0@B&\"\"v8b,bdp8@Uc\0B3C6\n`E\nJd48B%\"O|Xs:!BB)\0R?.*\$JUF/ LBs\$z2dtD dm\0`E[l\naUqF1fed	'\\^4Rn	6=-Nbl&\nME\rd>\"KeJlv\$CQ<\r>" \n2)O8";break;case"ms":$f="A7\"BQp 9S	n0Mb4d3d&p(=G#i4N30r5	Nd))WFSQ%5\rQ7PcaT4f\$RH\n*7[9JXe6@k2B/k4%4s.g@	oF6BNyCJ|y#h(GuH>T7r\063Pj0;I::`+AP2\rK\r8z,0cL'\nu/C4\r `@ c@Ax^;r\\\$\r|vZ-!4D* K\"P\rb.zhP0MRp#\n<S710\"Z|7Bu\022PK#8	$RzC0\"@'ibn0j0:L\\\$(-pOv)\"` R`+wj@z~[MJV!\"Y@\r=iQ>7&K:V]5w~P\n7I3*n#oYU	R6')\nG%&\n0AV*D}P0$S(RW\$Y@74HI*J.\$+L'2@|2-LB?`)GKI=(4[K};Uj&0:5@4jT`\rtL#qGh<z=!#8f9Tbu#xB?Ga!r<@@P&(\nIeU\n~:0AtFJ'\$/('\r\$N*25K7GJ;!ew0\0F:UAf7Bq<ra(PQ6&!8:IBQ dJ\r&vI0!l}0\"7C>uQ-B\"H'te\r8@I,l'DILF\nz2xdF5`Qh\n	PT@-rX0,+V49Sb\nRI@ %\nh@%8	VCSAD&zq~>T+AXZ6Gn)H]R6\r7bHbE:H\n	Lpi`%~Epk:9lkY 0_rKle\"#crn9>AI!ai3\\t@<S'erJ 8HZ\KIJNPe.BA2#yFWm>Hv	Um)\"dVY#w6PnfJ?66r9#@^`jW%^LTL'~	\ruK^R0G	IO_m-GB4\"<FHx~'W+g!LKji\rLZv#\rz.'5\\>N&ONckxt]_{me(K\"yz`'>&(":1BF<3*yqA7dB9y s#W@]Mk\$}&{_wnTt\O'Wr(:^w%O([>FT(viO\$22RN\08l%F-\"ZQ\0P<\\p5DN\nC\\ZlY.\"Y0b/h@		hMBUp80%VG@D:*|!NB\$k`(2$\"%c8$nl\np\$6\\DBv#m8	mL8H+\"Q0XX\$(RB\\\n2_["b\0oNl.5Q6&n*6REJfu\"h\r'*BbO!`@F\0?##V;\"\$;Q&8Np@\r\0l`Pm@";break;case"nl":$f="W2N)\nfaO7M5FSn2X!0a<MSl2tI&#yNb)5!Qq;1Q9 &pQM`(fY;`n,	n7s4'S,:*R	t)<_u52vt+CNG#U7r({S	<\nhkoj9n4P7%(P2\r@m`pn@<m5O8x(:7At2#R7+x!	.CW+9je:++FS'+44pJClBXbrLT\rV0b;#`juq1uI!3%\"P#i(@]s#&{Z9BP8OT	KeSP P2\$<6G22.E5\"J	* Cj*`#\$04k	47\".3(+\r&YpA=	OCHpaO+n8<|#Je3SL,S:;<**|Gt2c20uJFpR{1&GBj\r(ds%%>kNlV{L*\$\r9	~*~xZ0T s!!Yt.9PEI!E0`cJeGPC#.@\$#\"!#aSAUw@)cax(hh@^E(A\"d2*Q6\$T4m+`V\$g) OX.E(qdv-Q5&,8D+6#mh(Lz@Rg\rSJ 	s(2^Mp\0-i=.Nc_=nFx)4kazITI@Leb/\01@a:HbTZ<`z!52C\0\nzF\0U\n @E0\"z@a@`3`txF7\"snP0K4f4Rb(i0(I*:bM7!2f6,I:*E9g1'1cVcq;IE/2Q\$\\yNa7QqRiC(wR4<XCVHB)0\"&9zz]i'f0+8`*fBawBH0\$\"9\r\nV\$\$@WgCTHc \0\\sJ)#b7b_cf#p9DIgZ|9NX:cs\")KUKz!<Z	V\$}\03E }5~;-?WX\n'l`K/BRT2FrWxIUS*e4#wZ\rKU	_vd6#l0SZ!*ht<:niB'SaW ,5`	sZlA?\rvRsJ\nd_&vqv^}_VxVWXkuFt5Hpm#8!L`:DzRY4z>k?~eo%Y C8X[5`dTl6\"HW|n4#fJ9GDnPb:[B\r# Ys/L[l2Sip)o]L8Tnn\nR9P\n0]D;,ADg\niR=LAp\rWP`Z\nD!bf/cC!e#G5\r\r\$~!CTYb\nmQ>UR*p_ R jT=$krz&B1C.sg hv@\npn\$R&\r& -J\0 #4(\">\$/`gb%l<> @QDbzC6X;bj	#x(\$Yf0.B2PRVB%#6HQ(f*c838Q0'KCS\",]v\"R`k`&\r, 2t#E(@k'E*QE\r.%.bV/2l(dl,r*1:\"(r.C|%F0@	t\n`";break;case"no":$f="E9Qk5NC\33AADAa\\6x%kl9B))#IZiq,@\nFC17AGCyo9Ln\$6B%#)nh&K6nWmj4`e>\rKM7'\\^^Mamv	jL;i`N-1B9{q;G+DyG#NQB<C#0<2.[z?69k` jx<:kC0c>.A\0@24\r`@E3t1p9a|z9qJ(|63-f7\$b\n\n:<#XRT3T@.#\n7-8\0\0HKP>%\nUh/\rVB2*S\0)5bn0~ P#BC\$2\rz\$\"`Z5:4.#C\n5C+\"	d0D+[\0\$LH\0V=A >*r/*#Dz0\r&2	\0N)n8'&\"@~p\$e3p#+O	1\6PA^G5B@R0%C+GC(P9)H:B:H4^c{J1bI2X.\r|:HD}p%;9NILP\\pZ0n`*y	nTj_@\n bCHwJe`lM&fxo/@7019Y\$  :lFi3p4Q4TDb\"nCfo\$:Dv(g\\9s)E'H!	@Oi'4&MpKYD?\"\\lOA}wA<PcwM3&?\"SFt40rb.7) )0dfPVS12HR~C	kEb>d|HI\"!FE1A3f2iik} /v`nHEO	hV	0gPs5\"8G\"\$i&`%`gJS3U)e!`FpL\n@\rP*VQcE	5[)?j<HYhZ|L8 :\$hfJPU#bUYL5&a$1>'!
lS9JJIi	wk;%<gjyzATkPD=KQJ1>1(1ad~[Ma		-,1 )k\"5AI>UfeAa Rb#4) R-\r&xPKz\02\0%4A9<%-b%Q!h.JimbTvC"yr4ev	HK4s`wSn2:G[\\U-@P#`L\0W\$0001f>+j_3,@RXI818PlS\"Z/&lZ\n5*h2P`0"jn@]4uOlu+%{tVJ-qW=]*SDH)@P-V\\kY44t-vOlc\\O{'WrNV_+4\0~bP/3\nd|J\$0&he,p\$!7Kds\"SpPTBOhd#V&V)n4]@\rt]@T(<0.B.S2nno6ph#L<?rG +0Z;k/#PV8b\0004Plm@z;%#m\n\n^gC0V(jPf	e\\T	V O`@P\0`\"ycJ4Nf\nr1>cx\"b)p8J/\"H8q.K:j(m\$ni.Kf#\\oD\n#'&'5Nr)2rf2&!l7F#2 \rlT_\$e2B\nfJ!uRx]@(#%\n0\0i }'%!Q;break;case"pl":$f="C=D)eb)e7BQp 9\r&bb\$Gs(M0i0!a`b!)%9Y 4I0cA8X1b2i<\n!Gj\r\"'CD78k@r2FF6.4 i'\nv;=SF7&A<pk'z\n*\0Q+5&(yI()h9<	3\$#R7\n#xcK5\n5DbD7`#P\r#c\0xC@t1xOx^*)D-[CBCM;@C\"40H\$\0005M{_V}\$cx\0*#7B#p[.\rn9)A6+UHP:-:( L`PHz6(oH0Rz6a\n1`:R:L 8oIcorH>nr{(Tn;=]E\0N]'uZ9tf#CL6*.Ao>5P6@\"[j{S!-Y@\\(\r9\">[email protected]:jA;S_CqO	W6kv\$1/P5KG%h~CDa',E\ni-#\nxoGuI[	t2*gM)6p\r4e	apD&H\\(m2RB%%3\\v,%bL4&/Sz;F7LnOiH dFT E	aA AVZW@ oE(+5!\0hhIh3a&IjA%f &\$Ikax/Q\$=6s6Ux(7\"^LIvb#S.]h'.\\k@)A'bgQJ(4rt,	b@b	N	ik9DLL54l,R07pUJC:bU0*X3y) %B;G*6\rgvNI/-La2NP&(MVdVF E":OySf2N 1%pvJs+C<K#WZLd^JH#\$wR Rr<D<6`HK@oX3R\$|lSn:-7	+9hnw#,	st:f(2Sfd*(Q*3@5Bgyej\rJ|\03PyiJFBoAC\n@oZ&1\n`2Q^t5i]ZC"S#h7!C#7MX0@Q6P\\xb(D24\r3!HL#[:|PL_,lT|g` @BH#uL{T?pu\"j6}@Gc\$5]_ewz\\2pg{=^?;2vxvO;%z>779y#duF\"F$#K8-\nT\$zdl*CKbl'S8\rH)#QI_ w&0C\"j%&8C~|n%jsaFf(0NDp[PaJ\$&6\0i4h\\\"KV]b\"@W4+A`0no@ZYZ\"\nV,D,,q;pk17 HD.JM1gE#&{1[0Yq.BlvFdCal(+4	t\$jf-dGb%m4qYE\$-R!K\\@Pm(m#	p9PaOJ_).U#Q%q.\\('a+T,R%,p-rz&HZcc,Ie <K).^n\$v@`q]0-)M3sT\rh&*6HETD)8_9ml' \"=RA@6q(\$*4.9)dgB<\n!Z3c;AOf\0#j!BqB= #/#6*\"Xi<EC2!8-qOF#(&R`>i\$)),L1,FtQ#B\$mIi\nZl%nGtE@MN~\r\$Bb0B;\$u`4b3>jCM0E9d5*\nOFd%3p;Ur&0zsQ` L0%SXWXEO_W)-Y-bpEZa){R(In 5v|G\npP6_\"'OYT K\\(1 -&0b+\"3Q\n-{XayI4\\Gd#X\0>e6\"\rW^>l!`q|;";break;case"pt":$f="T2D:OF(J.0Q97j9c)@e7&2f4SI.&6I2dsX@%9jT 7E!85\rQz4Fi7MZ	&))X\n\$py\"&aV#'2HfK\$\\[\rOZ&M[7ES<n5L@% L4\r\nh:T8p4X.p\nn' P2\r:\"m< c<pP@;#\rIC930z\rar.8^C ^*'{B-x0,NLJr]2+U<9T,;#\"<P\r(\0 MaX!#J=erLCh09\"0%J17\n	6`>|\rm(3xbi6j{\r3157Z&LRUlGIqEWRBctS#k0\$[PD!L\"#2N9g{e%(q:iocK4m*Y09N.S&;'gcc5ak%.<^+n42SHy=x8-;hrGCs2CLKR2twM p/)D<>xep&0Rphb3]>,BMN.K~DRlM@5?\rz8@R6o\0005tGH;2[ 'vHW%\$	O4[T&i\nC42}/R7hngP1ac.\n~!&H@Ia|@PH- PTI'+2<I l'07' [#;?I\009CzA%a EpKI<(],y9WlaL)g6"B]\n\n'I JE 0R?!.%uNI&7u7N(\n\"R7X3xS\n,\"Rx @ u!t 3&?M)jjEM{7'e\n5@Fa iSd(L9('BD!P\"L(LtsrX0X<d LX0D(4VAhGiZ(7FG43d=nQnsJ@\n\nrEs`T)i}`\"1F Fb3U@\"0^+1W7nLzPF81\n.^[T~\\@dj3MDS6FH=O\$o<3r\\1tALRHsD+-\$7\n!@>u)#%%[email protected]6=U++jBR{|N<OlfpM|\$9rR60{\rG)\0r)gd-<B10On'*1rbqG<q7A<NBbf!|MzGtu`/3o*cxwtG1( L\$^>5SiIpqD6c>m0:E2_GVvsBH^ZAEecyQ%w;%3/}Xvqclp.\rMq/rv\$n5,+[nnJCHcdb6e\r/bkTnY\"<#-[j-\00:TNcUN Z\0WU/j\n,[\0.#0*	m8 +!Zd>(J( :\$pFTp\r-)cyQL;FZ\nBk\$oON}br:Q7'%b\0\r:q0\"p\nR]q}0d=\rXB|@rg fRr5H0BoJcrVc+\n!D|}`3qTN*k\r\np\$:#<I	rFk	th\rq '\0PdLat]#bW26E?rV!'F1*Ebk'\0006O0\\nn~(|v4*\rI2U`b`R/3*0c\n\"oE'@J#&2I6i+<401+ 6*frM5\$K  ";break;case"pt-br":$f="V7m(1	E0'0R 86G%iXj2LSIpNLv>%9\$\\ 7FZ)r95\rQz4Fi7M&)A"*RNXHF[MS!\r4gfo7TY|%7RA\\iAfDIA\$TfM8jBVB92`#\"\nKnv\0I\rBj0p X`Ax^;t7ar38I(7z,c\r@P<nA\r4@%\"7LSTMJpM\$\nxClB\nt45A7m#j=0CkD:`e9Zht(0I\r	C6kn:7*W\nw(%2ji*&L[> [3F\"B6!}fWl4#lpB(\\Hlh\"fYCA3/DX0&;/*Y+2LmSX\r\0,7)#n_)x/|2S$HS\$\"\\7q[4R/LwMh,\rAPR)MM\$IrVpPV})m.*g~i9&[	P@\nbTP'o`M@Ch>wIp\$Kc#&t43#L:n!^&\0TYqdbPNUrH\rP6[?TC0id,d\0+Q=(R{	$@F8!4D|/qS\nA=C4I C(v!f(E\$\"DA@rp!\$VJ4\"%phf=c_$\$hP	3s3 #FT6|s&		MM'd'#d2KK\0F\n|+25\"N\$H\00P*[, E	zXJA`KE.(G*u"G"jDtrSm&~z]j5vQXYr'h+<G\n:\c&N*\\C8fa:1f40\njqYi	euMH_	ef'CFY#'#0_j\0m=jL1|CuRT\0\nN0IqM1TT\n!@1#b\3JyCzVzU*%=Z12F>^(5%F8bbLZRNX8 Q|PC!Z!ar/expQlnbG\n\n/ay0DV6 +0)xecIsX08-/_W0a>600}bO`\r'n)3`fAHB]4b8}v,f4f@YZ;o8j<D+n2fUFoh#\0j!fkTA\0g]0{/,^x|)T3K2!g.8?BmKa6~/\0\0,n%cC\"\$\$.NYXhd%D>0>PR?#hoQ\n+\n?hk2Id#6]&%/OA\rC\n\r3o8>Zo	:@(DX#8e-IPPQa&n,.\"vZ*:zJ0\"hfoF@Fd&LnX&bBB'd1QbXIbzL3er\$iEQK*z_b7#0o<2ra#\$u&rV@B,\rB9qL2`Z_s>\rF`\nq2L-~n	-'ok-%	#<\$D\$\\%#0,\0\nB)@\"g@[/rDJ\$4=,CnDatS\"n6>qIP<$ojR"7h!g71LZk7Dz^;?*,`1\r`{B~"8a`lG`;ct3/820EBbIS&@V*;\$\$@;break;case"ro":$f="S:VBl9LBQp	@p:\$\"fLL#>eL1p(/iL-	Nde9%	nh|FC17AFsyo9B&7F2`uZ:LFSazE2`xHx(n9gIf;, :nN,;A2-K!{:<nd& g-0`PP7\rcp)j6IrBpK\nP0L#P+>:L8&j(Li@2\r1ChKlS\$0!\0r\r`@%C;ArL3\r:\r.!6<D <o-UV\r5s\rbANJ+r3h\r!-hh(k4Q \"`h(2njt[bF%1,;&bL;V@)	{lL&9 V415!iSV4-:p7MHC:\"i@\")ZpZ\n*rz)]EiaB\$?qB8h6F\0Sb\r\nz\$*\r<'a(aJm}^5S^H3~f;npRM84yH	zD/P}R@M		 !	L3SEI< 3rN'SP,J>nAUCZ+Hhf2 A,S-dr(eg{qhCwK),\$od"Kn'r;iL"E88\\SC\nqG#jjW}F#Lh'BOBS\nA;Gy	F\\\$QJ9m\$`fgr4m"VH%Ry<\$V|!gsyt,\r50Thy)dHpd!}BRK#\\BA']\nlcvK0T\nr>USF&2Ld3-]vje]R\0Sn*E't[>IN)8.0H}\rjNVxAYuKmx ta\0h~h>|1V8t0@?D/9pGeVk\"S[mQ\\raj:D2VlWt:\\+`R? 1JpWm\$R\"A2f`KX3SRvs_IJ!!P*StpL0/eQh8cXkUgkPQg)"3[W.;wGj-:W'6}quwwFT WD"`q*eoG4&|G:M'9qx\"3OaEueY/nA[6*0N)b\n3W+G22&:yy|nS'.\\8y`D&uS2kH({CuB<\r*}\\*p5Y\0Ly\0G*: V,.DU\rND@50D5L(lh:&cHopt,H\nCP|*>v/,cc\\\rc;'D[i	px.eFkL[3VEhLej%~,j\rxLlGL OPLoT)F F[#BB:@aDCob~S\$:c:YFaQo:-Yq:-^TQ\r`\$1WP9%D\"{Jw<E/%\"zR@oDQ!#FBBm%B\\fnh@$n?id\nA)[): 2d'K\nr3D\\ NW\$/T?db2hFqgcX!%dE.R1m\\5\0m*W p-Fz'~fbnZ2\$Yx|b:#$gcj<#4bOo4\">[Vp !bzFbm8xG`_bDEd_cWW12, 4lS(QA40T6l2jdgm@/%_NqFRtEd.XF`@ZVp,/:% DJB:nn\$-0\"Pt\rhxQ8\\(`	\0t	@\n`";break;case"ru":$f="4Qb\rh-Z(KA{@s4\$h4mFyAg\nQBKW2)RA@pz\0]NKWRiAy-]CE#l\n@N'R)\0	Nd*;AEJK$&'AA@\nFC17c+&\"II>K,q.u9L,&NsDMe!_Z*r;i9Xd'6ky}V\nN3\0\$,:)f>e\nmz!0<=lP*i;P1WjtkS<9DzT\nkX]\$(!y&h2X4\$n)56d+RCN# $5B>rb_ESMV*\$xX@4C(C@t41MK|h5ihj)*D2\\x.#N\$,!EdnG&!6] LIcH9?7:%VN{dkK5 jt\$;voL67~*|@\"]bR&)zD|.3GNdvJRcBaOT}6#\nM{!\\W%t9YA\nb"#)+\\F,/=cwi2	W%AcC%P^4XxVZpa\"	#`#9	DV@D\r! KsX-k\rSei\r^RH0004O\nkEM1,hq5&C\\i@I3M_QTDochsy|yQ) xH#uC*#`RlP0YBt,*9%SN\"h%VOE!;\",IK#%f9K=3hs6Q3uwC\"JNQ~Y#x>LZ UUK9'(-]Sznd%ZYl-^\"Xa)m%h>x,TzN(b.m%\$\\=4E*4\nI-e+N\")f,&Z]lEL\\hH]ZsR\r\$9y:W!GID|*\ldQ0z'XYJ;/('gMlYHm("weQND\$!S,\\#zd(.@?rFTBCPHLb\$5j}5Q[11+vJY\rub}AwJK.\\cw^@7 FR9B~\rQBF\"GtR%td9K(*S\rr@\"	IZN>e\$\$gXW\0f)\"&*k3DU@LRn]{?Iy^4`*LOq5xuAo%]-b\0O%4lh8d+_AVjHg9v!:zoLER#iROd}GJ8~)L!>.[`p1=	J3;d'Bv\raYxX	d}__Z LBLJ!A@\$	>\rC:.5z)',ACp|oJFCMFc@b'wBapN0gc(LLb|\0H=k)&Dj/IzPbKn/BPf0\$e\n]nH&2mGA0ATC+elN\n 	L,QK& z\$g^1\$#&H&+\$|J\nOt0aqnO	rzq~Freh}MX\$q8K(#c(*f0/Cr.\$rdFbv@`Ql%&\"Xxv%\"C%b%n/-J\"0(2hH`vLic3F'2PKdmdJ>2A1n8N,2lJ\$%/C)`EK3H0,.BFNO[3=sB/4y@*X@yfLBP33FZo,o\$u.B\"ZMOa8ILB>%&Lw\"PCN\0R<&6i/`lJC2JFU4Sl5BEC=q5p3i3Wr0QBsY>TJ	/!4g\$FaAGR&eTR~t1HtcH7L\$oIaI}J\"%DA2l}4m3MMGN"CN>U\$*,.jS,I8-B%%bbam!P]?04?LhU0ibmN>H007!f:4L:f3A\r5Auo;6]Q\0^c]]+Oh;2]P0S9bV<|j\"!A\reBBg0nEMZKHVfP\\{3UK5c&%+u\$DQIV&I6CkBpoldNw		RPNt.!tMpaEpqbc~[oq0VHGO*A/O4!]WRti5vN!vrWtK\"ShKt+2l}Hbt241{vd\$wxNuE*sr{qLt7/tw2G{#8hVS{]a9,%N{\\Wk,#2'XUp>UVmZ\nqrl^UBl	ladXlUjt=}{c	.V-wb?ck|Cxr\\9XF8P`hvAv.'e`+f3&PL(o>l!\$qfOtH;UH4GbR8qI+-9|y>Y50'Y3;8\ru>r3S6C~MxNP"::\0>@\n`o\0\$u\nDPm\"\0003Z?OG.2\0AjGff\$}dPs.a]YHt~j:Bt-SbSZ%n046\n*TN%";break;case"sk":$f="N0P%(@n2\rl7&P\r25xdB\$r:\rFQ\0189H0cA8)DsLnbM&}0gk02pQZ@b0 _0h\rY83Nb/NbaaWwM\ro;ICv0<bXj&0zn5"jH?n-~	\rR@n0b<4\rp91	R4D#( j \"5#Dcp0000j`C=\"Ec XH2Ax^;r#\\9xD&.2&Hx%\"*2&c\"\nCn\"44'VmP5:7<2:6=e6me\rMh!t8*R7uPPbHC-C R:0V:co`_/P5*#CJ\rbkFc^\r0	1#r(b:&|:&Vl6PU=\\#.J =z\0 P1bCH^(Z\;^;R\"6\nsZGiH2e26q4OIK`9.8.|lx\rR'qCcp5/0t@CnbCeD;\"f)\nEIIh0ibQ0S:iMi7xOAfTz\ru\"HQn_ERJOJ0&%BjM8tBwIn/8nUTCZG=r!m	yt#\"<A\$X`6Y/@Xf6DQM*EU` ^zCL{/`V\"2	VM|\\\"B)0\0PCQ#=Hv<JBquD4X1L\"p-8_\"w\ruw6ytgD2n'*\$\"o# o8^XK2{dj.N&./U#@9RHXy3\rONVBU+2\0vRRQ>R\$\nO\naQn<4pIU~ (!30he\rUxt l@_`b.`)\n{*A.o%!:@3Y?\",3]L8PT@-j>XIYPet+T}%S\"+/0n9htLeP\",%(eDkg794|50-PXoHa1$\\g\$Ld\0o9#Fbb\r@\r	mL4e:v0X0}X0mvNubD\0J1Bz<S#V6#gh4a\0PFQjue&<[hU#F,I#AcPn!A]OB$\0|{tFh2\0foRT%\njmQZ!\n2+s6Y\rr	IyF]slH3+9?<qYn\0NJ\n=jM9VL\"D%Gu+(x9f]p8re{AU3\$Ptd:l~/rdPP>#x.FDl\"~o\n:B6G\02  F*Ov#eb>\n#p^(lnRE.[ohp\0Lt-G\\0Cq\$0P	n\rSt\$ pHT0H/O0_mu0PtCHPU{U*% rExEb,\"@\"C&`W.KF"(SdT*CVS<\"\"H\$~WBg\0Xm:&n9b>Zp\"#nqXo#!#6k:BR@&\r4]&/\$r<|1Tl#)1ne\$|Sj'Qt p4B-SR'p\r-f@U|F/-n\"JZDU&o#s,(M3|P0%k4m)f5XAgRvrm)|42\r:rw\$d8D!7s4n4.:A<do01T,Ne$H\$\nWF B9eJ\rV\rg?+8\n(\$T#\$% 	\"Gnp?cB&Zny3to)(#4#<\$Th\nFm^f@	\\6E\$0<\n79L%\0	O4c{!B4bp-0a\nQ=*nG&(~,\rn!2Q[T\$5c@'F''*FuVpGK"?:#\\\r\n(2~'*F5\nN'K^m%\"g5eJ1R-@F\$\$nlj_T?dAgaB	\0@	t\n`";break;case"sl":$f="S:Dib#L&%(67W@d0\r]0I\r&y'%9nn^ #!6 !F9<lI*LQZvMN\03Nb	[email protected]67Qfn_n3'Qp]/SqG(K(ay2B;4BB(0\0*5R<0d j\$'1C&hr\\J`@&3'4Ar439xD\n#xk([\$+;.28M.\r2(n\r*\0MQUU\r]TRKY2``P4\0P7# 2OfB\$0bk\r:K+\0C 5x8b7P47&*k83.h[?7&-C\"mc]HrUT=%\"E;Mu\0AN|P{N\"@P\\(K[\0@M^if)Ay\r#f#CP*!SJ'J^'bM{%5=<R3[@_)P9)|\n9<s=T1)Q6w 1,#IT'J7*2M<j*x	cz 	/	\$<l\0B|i\$QC/+\$KM-0Hm]d|Q	!=N-GO7D`@b\$dkey2J3ba:QcuF@a?1Hr@u9	`B@\0()\0d&o%72N'.f E\\7u8vA@b\\g1Q.pwRc(h3xgaL)h	7FIh5L	4X@eAF!dJ1\$IjU@CS4	V6\$#M! az)t\"\nNIO\$IxS\n-:@4IvIVH14>H\r,UE2 K0I@BD3J`GR1B0sf8!H2|QH'cA4Y(7uuG0R'Enb9~f	1fyfgb2a;tX\0#\$Rc'3P\0(-Eb2	Y\ne xripN\ntI(0TA&nY6y\rLE2LYk[/{\0l>&%:qH\\FMD>Y^O9>'<'pC	\0.T>#_%N&j*y0\\iJCu@doH+\0U9 2%u)6u7CcuR\06K{gblcga-Is4\$)nnzGx*t\r*8ydT8[cx,\"8Jb#sf/B>PGgCAH\">/k`KbND._\rS>1NFxttWnJtfLIV\0OZq:O	HL,\0^|z6chvP_F\$\nyaQk</ONF@'J(c\"%E~\rm-x9\$-0=GJm<0e`LV0L!7p!/L\0&vNhr6K>WS=`d\$ *bJ6	01\rC\$|CG\rnlL7LRlzW\\U(\0\nC\nQ\\\rov\0QZ(c%MO2fKw\0GH/\$]\$*fKrrrejPgq0$+'p8 =\"q!%p,L* Mn/#'RA\$x/cb-1P/8pg\0Bn&3P[,R\nqvU+So*T3,s,Sgf\rV'~(%(i6\nplbT08T'\r8+#m&@X/` \nOY! Vr?)&&k I:"N0	\$D\\`7>F<0\$bf6B(bBRKvC':64Fs\n1#PC\$4EIQE*2Oho@\\<	7IBt'\\n/\"\0+5\084/#\$7D\"X6@;;4%pE&i";break;case"sr":$f="44P-Ak	@6\rh/`\\33`hC\\fJe_hhQjQa1CV9%9P	u6ccU/APb2a$_TI0.\"u-AcYXZ\$Q4Yiqc9m:M2\rMS9q!\r<bx>DqM|];RTR=q0!/kV\nS)3<2E2	p2C<12?sT\$R&`\n|%8	!?/,LS L l% 8Cxcg;#p3;.>8Hc X(0z\raH\\0|i7JC ^-0jh,!\\(\0T-w\rF#>(aa,\">S\$_HH'ixZDd@N#ZMyR<C&k+u\\9s',wlC;*	sm(H&fHYrRsJ]hX)\"b	*I^n+1rqQWry|J	J%J~|z{'gaMB 2R@Awrd2y!\\SVQb6\r4c&N(\$r7&0lM/4o87@`uO00033`@xgBA@g(HEFpu:>5lrB\nB`6E`\r!8)zS*T#JHmxk_/eDujMJJL)\0nTTuVCr0Y+H\0\$W\$6Ut I5<%N6`]!!N\"XJi(y(j\r>`l\r1|3KEq\"%\"N\$Ap\0igP(!,6#yq\nH\n#^&!HAyYD,fmLcCOZR20ha3(v)Pcf**d) 04.l[*D\$B;ZJ;\$ZT*>QTzFJ	Jyh(A\$X#\$J<i# &p1JkR9PHP	T[?f-1#e;R[))%L<HUY@@f@*Xa\r$4oe#CL]dn \n@\"A\0(dK\$CUO\0R@ &\\sZ\"Nb	tDZe>+[ZW73X%\"68'2\$25$h:#5#RZX	 P)sHjiwtEuE?p<>(U#\$2\\(]SR`&Iw#zJSJo<&cVPxiLe9urnC.vHe5c AxI\$Lmp,5\$&mwawF%*O7h{+A@Nv)hZs9zXMaP*:03psO)@.a8y'P@ny%\"2(	UR}%Bf7kk4/n@ FOA]4~&-\".IOP >O/Yp^+aB	Q@F@bJ.,)Nkj.dFOi)\rHo~ 0\nv!.%rk~,C,$?/[0O*0BmK0*d?.0\"oPAqx?Mpbdw:*#7k:M*K<ON@F@8ll.@%	\$QS/z4pfd-)lN2g\rt&G%*vC2pm&''.5}({l">P\$e0B2q1+0R~6&,R\$R)o04<,C%,n(R!02^Q\"D:.,B\"qJR:*!61 FZpFrDl`Z-[7B0/3cNgfxm-pHq1CIF64i3(8)1q2"sB&.5DGL:{LVcXyG5\$:J>T1-3cCIRJg(fJi/o[5PwXMl\\K&@I.iPC2"NAMKC\$@Hwtu!%3BfH\\&u-u[VU^U)\$UR2>1-JBDnAO`\"<_[0i3uB./0pu3.CL/`5r`\rV~T*n@@ZBbZa-=g_/fN]]m)5N\0\r.)M=_!/>&:]61$dv0_N6rF2\"p{41vnH\rq	d+qew;pwO)njS2\$B\0nEm]CI)8D?ytOumhoj=)A:/B&v.&E\r464m~^cPSj'";break;case"sv":$f="C!(J.!#ILADd06MQ!3:3ykB BS\nhFLq3\rF7ATSI:a6&2&')H7#qD).hD16o0\"?M\ngguh<#mr7B'[m0*JL[4kMAn's5mE8Ye*	8\0000\nX.h6(4((9v*]\n\$9p@%#C3t\$Q*(8^9),&!`\0P4jXAC\\\"p\0lAM#\0UF6&C<)\r rt:)o3&2<\$x2\r3K	CVB2((\"d(O=59p\"`Z50X;BPiLh1A@RMABp0,$94Qk X3:<:B;\nddN8#ZF3Gx['c8<-V(0\rx\r\nh&AL]d322\$2ac<[H9l0#ssS\\\"7#A-]t=Kl*\\%\r]E`J]e|)M1!8l(t/YS)6 2D`0 }%U& :`\r&` BBJI8;rJwaf``>kH*I3~\$ehZB Np)4^9Q8H,<T\$R\n-0ZB\$08H\n\0L\nFD`PSIIyH8ID5\r&\nOv@b'FRfzs-5IdyRfa*E\nO\$04\r\0%&9N*x^'e9p^PptOme0\n}A[R))AUX`s\r\$\0-F/v@X%bF(	0b^ %!*Y7Fl1rtITB  \n@(@(R	!8#BxR\nP pjT|0`o]Tpt9s{h:DE^HF\>w' UH&M~oXFB\n@3BP[RDE7@G!eHmT&rRZUR\$Gk.vp	p<xM\r.	1&EUIcr4\\TATIe\$nwEd!*\09QB\n#tL&cBs(;?}_fOmHDwi\$iH1M1]d#nOj9~Fnj{OnQ5n)^35v\n{ga,n)04	^{2\$qW\SySV~hPE\nF^{5iH^~a6JEB9V'Qtq4\SOm\rhUI\\d\$O]b\\LW1\r\0x0Rmq:EEDaUlc<"@\r'OMB\nYOE=)&s|S$i^{'r,)j6)U!u5}HvGNai,mah.eL(M\$HP/0B",mFPH,\ndZ[\rEr\"_4\$v#20\$b}eZc.:Y PAV,p;-lX02e\n<Gq @#4\"C"|P"2Cn[{mBr3_n2bj@S	#SnnxQZR11AjuO``*)"g~0\$5)*cP\0\n\r\n&x0NUm"i\"}x#N(:R\\rZ Dh@=0j'Bj/-pE@x1t2r*-	\$*(/\"r=,\n>>b|ib%2~0c+t:_*|0k+F\"h4+\*er1'U\0";break;case"ta":$f=" iF\\Hd_BQp 9\\UW<\@1	|@(:\r.WAR&`DJ$:TX`*rj1k,z@%9|UdjC4~L:E5e&.uW["+@\0,-[&a;D&<!\r?8\nRlzR.n8N\"AN*q`&B%0dBB(BnKB4r\$)20\n*\0CxO~)#nzZ*S-\\B@92/\n)IJ6l\",mEM%YVAE"U/N l3 cx##r@6K4@;/j<C X0z\ra\\tMC8^2xL\0|63MCk!"4\"u6)M[5KqGU\\\rQjSM68b,27[IJ2FZNeKV)m1\".rg\0Tz#R	Nf#pdrBg1)3gOF*|k(DEoEGR'Q,Pwn6{	\0c!\"RK7du^s-Aoi%7\n5_NWk.GPV-@#U6MCo3]ph[nax|K	T(	&ig?]I\"ShpDgDU4hU@9<F\0&Q>VPh[I\nt=	%C=q\\:OM^UXE!&;G-Er]\"F #PC,@) vv<A3`qM6@\rV0qAG0S@e44-^\"EQnR`1%x*e\$S:lENXd,PV>Y%M\0[3w\0%\"\"sAsS =HdH \n_\n'0jf4@j|w`kc*J +C[Y{ZmD(\n*V5\r/+OA2@CC5ZF8E\0\0c4|mhLKiptd2c\0\n\n (Kps>LfwSOYZ7|/'3J4zoU=L-Lb-.i_xPuRx!0A0]:f62!3`^j#P-2r-l4WmyMOD_x5~ABcf*Zi[]uS'RiI'qdyz\rv4k5B15rK=vT\0\$F<v	8<6z&PC.;<8m76&RP8Kt#LKi;`@uqYg:o	v P*^ E	y~f|r5(*U,Np/^2y[viBy;H4('6D__tyTHDv o/.Xm/\\nhDNx\n=JXD%\\%0\\,5n\\snh t#@Jhx)d8x#\0lDA\0^n`GbNgb\n`~*8$BpnkhG.LR l(g\":f*.b`B1n*BY\r\nQ	IMNjVEhx`q\nJr+hRB\$>R,\$`./PD)-	\"h 	\0@r%LZ\0 {\"&qCz#f/apF1.^M^GFpD%rlrm.)`\\,FBS i3q()j)lHW(Q\" \$r0\rgRl>;2_+g,\r,#,*\$\$p,FP5M`r4](28Mr'5]8NB(S()MY*\r%R6O)m%l&4`ONv.\rq97f4*qb6QTseFo<&Q~-D06bZ\0=Pp-Je\0ORI9m~,CFI NQ}IBq543TFi/\rMtrSGMVOJM*h =p7!NunsM 5@A#RsUV,gQ[-4YN	Xc*\r4u\0+R	F\\vDrWUmZ2uoO+*1OJ2^X\\lmOPN_u_YYrPz+TBs`1R\",-Ra-JYMGv7drmL]^0)\"q=\nuCHk=%2&2nUm6=VAKUVbtzLTIqq/ZIfdniZ,adI	g|@H#~h6rP/GqgssQq1cLV5g4VSO5 dWj*'Faw1nuH/.6x1zt@qiv{V-lu	`dx1c~!V)K+LXEOtb< b~r-nsgxv8|ON(umCr7}Xine:w\nY88e4hHQ;tr'/mhtJ-|\"iVe;vaNL=hAfXe*-tXDw|2&ykWY|Ci'r)%,m;oTY6Qa;+\r42e0C~/ZxWqaR\"'Fj>mxU;qO>yWZ\\ zIekz\+MvE}0IX'uO1,B!So5ZE/E&B&-Eg8k<Zogi\rV`Zu <\nZ	^n~I\",fW1n91:ktNwC{ {3ch-~P<S*)F5VkM,J\"&}G#8y\\3q\"?m;F2[[ZCT>6K=^h CGzR:PLfkZZUmkVu@CZ5uu	Q1y/Q63O,A	Q?AzI%zQZS.\0^cjX\0cd'm8x @rG8*0[LUyqOj'\\>wI@Ik/P>}JP\\P`\r-cn=wu}LD\0t	@\n`";break;case"th":$f="! M@0tD\0\nX:&\0*80	E0/\0ZB(^\0A2\0&bKGn	I?J\\)b)\\\"s\0CJ_6\\+eV6rJ5k]%99fv2 #!65\(zyW e\0MLrS{q\0\\Iq	nR7;Z=jY7D	 7Lxr/O\0@-pBP,QpXD1jCb2;\$3\$\r6J+6Q1P#pP.07\ro(rZb8+q10/\nzL)5'' Si'qyJ{J7(\\1m<W;CN* l7 >xp13\rAC(C@t6-9N#8^2xL@|6|3N#l4!,,Xy\"mJ!ri\n4`\\;./iL2<R[O=#\$Vr=p+#i9P@ 	Y,FP+R+4v%\".	Y-sm<Y6\n\"^6..B1Gq\\i*\\.3:D>%9V%QZ\0Q+5z:{qcZB7F6?a\r\\9*QH \naD&5PR+WYjQ%0hb\0T.cz{HQC0?%l33byQZ8F0\"j@sm\rx@m2\niHHAH\$x;e 5*Z8D4 rG6f\rhh@:t`6aR  `P((`Z<WJK<,pm rbh?p9LEx8C\"Gzu`,\rSF@>}+26JVX\\6\"Kb.%),pST@/xvQ`&\$?Xxs]6dy`;Fp.a,-i	!8&Wu}!,\rxfLj8@T.[2@CcG)]ahLuTS=6.T5:^K#L-;.s'o\0\0(1\0!HOu%%QU*>GAmo^>Z,cGo6&@	mCC:W'nB\  aL)fIX[C`cB.t=0)Rn-,Wf\nSsNS;:ICY4#`A^5m5db4c2C'hEB6yU*\0!Qh.d`u|cZ}\0Sbn` u 
46'(	;;&j8.!E2 \n@\"@W\"y=Z^sN\n~]YSFBkA+.BkXCJCuaKw09G[aB<+2Kj*YrsWk2Zw$^KTI\r\n#\$'>2.gVVymCgwL!^K3:R~l,Ko>M-\"L'cWsPp	'~me*|B~oO>iTDF<'~vo0;M1h\$^(nEq\nn\nfK 	\0@r%Z \nHj\"1I\0^3Wbvi	\$&pwx;m~)rL-PZe&+O(U	E\0	@N\0Ch+e&#2npK 	0D5|pplF\nE&*3x 9vp~G#-\\6b\09^!hhf,9BBk\nZ|)\rH\$B~-d;$2b<hycez&rQ\"\$P/(2'r/1F vd(oh+fj{R0PQ/r\$|E1\0.(8zSBF)H|oJI*+\\j,K\$e*\r+/6M`7S\0hT99	C2s\\93Gy'i0/h?\"_f Id.DUHIN;@:T05B\$on&Bf\$;Hs,sLDG8{'fB<{H\"3IFPTEso^ooly=	@L4jt\"4iG&o4xi*h\$DhSPWA;?NEu\0;LlTR.4x \$3<\"4\$M::SwUQ[RRhSVERk5U<\$e#h+Xr9C[5rR`]'uI7Um]]5PVW<9tSC7)XU@@C2UVv>\0<\$vE5cU%9	4`ssAumg,agu}a-2gEhp*URVah3a8j1DGYW5T9	R3<B	%Sm3	V6m	ro=3nnzEk>oW2HB _ 6fmG8r[1G^39I\n`m@\r rm1S8#R\nZq=?5\\;bD5&)5f@	(R 9gyEn4UNS9XrVn2b+\0\rxI{'g-,C\"ta\nh	dDl}sLg!*;x?6w^6}_=`n<Xh(P3!]Dvv?Ks75QI({135|qIhKn|f\n\rONRB'=Rg#N,lOC1r3p5F/=1\"J\ry&+kUvgB\0	\0t	@\n`";break;case"tr":$f="E6M	i=BQp 9 3`'y\\nb,P! 2H<NXbn)':GX@\nFC17ASv*|%4F`(a1\r2Q%O3KfSdkXjya5lFix\Fa63]7F	AE= 4\\KK:78)NgI,]gn|c7+%1>#(.8 *#x\n9h0.4\r8FC`@\"2Ax^;pnHL~9xDJC2J6K 2`P0	@jJA+s'I\rlba(0CUU%*/h'|.uN)8#8#Z6Oc P#(=^.-H0Rlc8o(P;w<<\nP$OO\$VuOTdRTBR\"\"Iz6YOY\"@Tg>Sr\$[t<=rB3NeTRObB::fI?,\r|0ObUr. \0\rUX5I=P&S=p052fv5uH&IVK\\%y3m*P|@,keQjrfB\rbbS%GK:*#bGw02P\\l>Z	c)%%RUJ\$p&-&p)L&qA+ \r:4&`d!&rhCk36r`GzE!7,\\S`4C!2mprI\rBP	@(\0z)82 qXGP*\H	9cG\"\$Q6\$:`p\\9fH7M8\0 a65M08GZzwL0Fr\r,2agvc^Ag3Yd2BTr\r<p<<\$mFDWn<YwRy/`(ri nsZDSK#p9MPR^F%qs\"L>B >=5#\n.Bv-m)07e8+P*YrHyG@@*dnnu0\"vC58q5\ncWB9(N	(,[PA`pb OMmg6G"-CihK(k/j \"GR\"6ra39\\,U;p\$+U48A5p rnQY09KCumLW*\r8\"r\niJ'+k\n(+\r	g\"vI;6Aa %M9!t/^U0A}^]A:.]$+0}dw>rQO3wpcY\\{RRNJr(:g3I&oK>E{;Py#&Ca+5YE?C4 .Y(\r@n2p^lf~Uv0~SRYK1g=R md+`iF^S/5wTHJtx@JjpfuX:0f^IZGd;(P[\0D%tHp\r*ntPnB-E!b&Jm\\aOP/@^+b/hFp	$VED(i:jD	\$	g?=	\$>b0dt.F\\eRR\rbQ- x\"Qk\rp0Q1/H&U[FN#p\"(@aYAQW\0[\"O\"D[C\"WQ=sO@b\nmlX6MoE(1gQn;:>mo02	jl}{D@O22k2crR,F2\$O,?*UMU%Vn>o@\$#.}c8 c`%\0re/\0Z\$\na')+\$(-j.ln&\n\"Rh&ql)e0cfUG<}\"|+\\"/\n+V91on0GVkW,@%2	217j^^e6_` k\"A!m(.P7Q	2\$\n6O:So f8|lW55',#@.3&10(s7V?\0qsbreak;case"uk":$f="4h-`BQp 9	--}[ZH`RdbbhdG\rMs6@Se+E6JJsh\$g\$f>C4jSdR\rh\rVG!TIZLi%QvUXhZkM)455CBhT6\\hvclVYjpNUf@;If\r:bibj i%ln{y$CCI#D\r5X?jp`Dbd*5\"=L\r2\\Jhq\\V^..P2\rHK9^yJ:D%rcd-6X@4C(C@t4%\rD0K8}h['B/i\r6\nT#eXtWr4k\0bK@JRD`J2Tk^F%_#hH(;K#D>hwf8l70j0j^,LE\n4R5hjsL#lD_h`Z2G2h~-4\$I\0J.8!z&&kA#Nls9mS!8'~Oo.BB )FN^+(i%^#qo\0h=*6'W!<D\r! K0s,;Q%i\rSrP&L@8N~diA~vrm'\\aV6IP9BhIyTzSs)XW. ;CB3(|]`\\^de7qF(p\nAP=@XZt+9+-d\$JLfiUFAzRyGiE\${)-E .YE\0Q|&r\n\n\rBpEXV\+xXSbu$3!,Dq.].:T"5BG\nA)HGLK,V/JY]<\r:\$cAVjvUc,at0Qk\rLB)`|A\$g7pxO)>JL|q|7RI@RTYM&K<KNx2&cX|9E*lT][zbH9:\nTs9b^h| (^1pSafqT!UJ(k[\n1-#cRmTT\r_]RP(Cos!\\LH\$^w\"K:T4}6fI>.P01^R]'	]E-Tm<4C'rA\r:WM<!-bp(T!7qAN9(6U-#L_O:v.;,S(<5}PtL~P;h\"qb^:l/e;t&d:%\n7ZxX{wP.oWp>d5r%`R2r'<4PJ/9Fee7r@IZ)}r|I5!\$&\nM]%BZzb=}.6^rd4QfEb\nw,cAH7\r~vD.g-*s\ry7\027}sQ|;@\ranm\n(Outl2&|RscKIhvg:8\$L^&-\\>d*4Z$z	5\$\n 	|E,GH\$*w8^FZEaEqs\r,A6w)\"N0\nH_\"pjcJkOOgeAq,w~4`'Z1l#p\$_koQ>Vf0sl:6067\r|mw\r"b0]QqX>mvFJ(QD,1VcGX^\0'4j\\KNF*^@D.8^&(X#B,b#\n/bo(DRfg4DD*Q*nT\"%*\rNf2lF<:D,e#CL&['+3,Po2*)e2{Bd(@Qt)r.m,`IE:``tl3|sOms7/8,4N+'2r1\r.hUq|cd843A3i,*S4?Sa=k=I;E82.23't;C4'QyE*CC3Ed08Gp,)+S/T)8~bHIH~Cp`q0thn72rKlH+>n#EQF$^(F{P5FL>S4ORF})RSGkh\n|\nKS=DErSA1VJ;~5kD*d>~+ha'{2c?=E\\!T\0V=UuXST&{&y5rUV_	`f|V\\$_0gETE\n]OVQd-WU3T6YUOFM,U{`eU/	bdvF=WK6vPi*tCRT6.?_yT!J>1_1\$\0G>\0[Gt\")ooS{	opvo8pm.pgK]Nr11op\$<vS>qF1!BKv^uUB@ pl;lQJua6-bjZQ\nqIs`Tu9,(_4P97MCK}5Qqj|.\nv\r;:AdO#t%(rD ED\"!9,e`-.yOxi3.nR"<%e*88,DXSZW|5{i]I(c>p\0hoTbyaP_xR-r\r~hAL\$ \\&*-/1&n\n`X%.P+sLixP{D4\$j\$qT.sMRH#X8<1+N,&/N#:-#\n^ReLH";break;case"vi":$f="Bp& *.0Q,Z)v@Tf\njp*`Y<#\$b\$L2@%943\rF9N1QE3h[J;o(UbdaRiD0\0A)X@q:g!C_#y6:K;}FS06\\vN5n5l	;# \\	Z:\nzT\"Pi>2AQtV\0PP6 #p k=cxc|(9c #\0xC(C@t2,?#8^2|^)2oc,6F;r\$V( aHkxed_3+#(#aH!t7%&L4h'dH`=#nUVnv'Jv7]JG+5%n]7Q7,tWZi\$TH;FR!	\n(7(Sd46)8@)\"`<UPYdH!b&iXr\\WCx5EMJ<1TY\n:PLH*?!!s7KU cG8]=~H/A:\nf9\0a\00"j23PAhxVp@x\$:RHS|44vtnN\\Q4xrJpn2\"QSIwLST]\"F~7C\"HN<'P;rQ*ED>QL	pP\rA@tM'e 'mbEw,J5	!D,."|(_FnKSwO)Q0xJA0P(b>}>\$_@hH\"ieQRt4S(p>6UC2A+HoG]94Aj8 --TAn\0	3DxKpI)!R?`toQ&;\$f19k`>&0 ;s~oN!x0gO"5mc]2R4++34HLGSbAp .z+%\"D8uW*e_ 5O&%@9Qs}[(\nLMDB/d^xS\n,s\"-WeGk:'nNuJ,V\n#]K\UxOmJ\0s%=D8r]EV5MqH\\e(NbjrA%MNaYa#t\$|\\]@EsTyd[s\\\$=D1,g-&|&tW^Zxrw:qg\n)(K0%itHktZK+\0F2.kCY\$9]OH\\~\\7N7{t-N7\n ()& d![dcn[o`A\nP 0\"K})Y!\rqiZqk\0^rL2IfWC.;;5&4A8YT3^|jIw 5\"b*Vi#!C}<ch]n\$PL7RaI\\e|bS;\nxNxS[0(e]2#n0bXtMOjK|,Pkng%*\"[2~#Vb[?H T.)vat68\\:F\r%l;/BlN(nB\\\MH%C:>cO/9_G	\0f&<\"'kb&mcZ-,Rd&@!*\$b	pp&Zm#"	HX	{0\n@)ls>hGLkq-kW]^BlcGe\rm:%zNEvu	0pMd|?_n\$rsogl9y\r,|\\NM	NL*T C5N<%h%GHANfAL%Ry&$(g{nhp%PqX0rHN:Ci|#;\$Z)rEJb\\	b\$~r=,p/OBnZN\n&C3\nl.U@*R<{xIq6U5Ok5e_5JH#f\\Z2j&*iw7RW<\"|\$prb8F_5r-$l=\r+*MBh`!.s@ttY(Arb\"C\n'gqP\$,9U#FwH('3@\r{0003O'6 xI\0";break;case"zh":$f="\\r|%:\$\nr.2r/d[8 S8r!T\\sI4brJs!JrST\n5\rSR9Q*-Y(eB+I9PYj^FX9P2s&E~yc~#}Krsk|i-r)c(C#*!AR\nkP/WZU9WJQ3.\".TD-Js\nZH)tIrs	Ap2\rHGIvL&"s| '+\0BI1g,\r'1\rCp79c2:e1ANGI\0DS,ZZLH]6\$\\ZJ3qreR+ZK)v]P+V\"E!A.0Y<Q9UAUQPrD0BrJHv]"^9zW%s]Yx:DaJ5	CL!Xr\rm)\"eLnI54!P>D\\7OTV;dd5SGAM2l.r4piP,uOS91K!%~%IXs22YiUc\nR]^D`!A}\\#`	=)0\\'Ai:eUV\$1-9#e~kXO^XC9uynt*&d} HR\$\$IRd(J^t+2\r:\r?1LX_!A"<\"Z:(`x&7W-x(TTN	\nCH\$QJo=+%(xl9ThzL=6\$ef\n9D`mBB4\$0@Ws	1eU>b! @mf)1EDFqD?\0d\$GPJ<	h\"pgX"YAQ(F@S@Kq%P\nxj+WD&&!kR\\qS\nAqI+ueNKa\"v5h_dRlN	ZRjP5vX1HN#jTS:,D0B0*0\0R\nz (\"E \"tUNs P(P&kX'&`va@|A<'\0 A\nB`EeVz-OYE:D:7p\"QN.&Nxm&h9o&[	YDQ	J`\"}}%8Kk2W2M&r:2E\$RjT(\\"KE,mhAb*W*('\\1tN+>M&HZ+Ae0H\\\r5Abm0@LQ+eT\0^3,%|QHyA`#7H^DQ1\"/DF!}H\n&_\n`\n\njMxHZ-s4+W	'B|HRb=aqm/emz=Lr+FpwX(Gpp?Q\01go[tb1D+ZXhZVii{ay?K*+sBd]\nhZxYpnFT:9xx~:gms#7B\\\\jWn$YXVB.rszFD+;,kJqrZbFfR{`G{%7aOJ>vszWQvg'\\w*9?W^G\nZL`h\\u3a<|48z#K\0p=@oB0LpL/b	\r\02A>-4+-J6+pt!\\'^\\0:xag\rzg.pI\nZl*b6#~OJ!(4!^p;' Cn/rV!^mLHzZ4uFj`\0\\\"\\&l%2X10unF4i[.\nnffNRO\\Vn\r6 n\$1$Ql4GQ?M\$2FR:`r(\"a._.";break;case"zh-tw":$f="\\r%:\$\ns.eUE9PK72(h)@:i	%e {	Nd T\\8C4aS@/%NNdCBQ+B,\$uwT9WKW2mizX:P	*_/*eSLK^9\r7Zz>)Nn!U=R\n^JT](I[f]*\gA2yO#i`\\nsh	ZBGTr{40&Q8),ha!\00z\ra0\\Z\rp^8# ^)A\ntTex!\$	psd<-D%yP	 s-WFQO:\|FMZS\0(P9*iXB m OgANQD<vEMdTMFzr}M D)8!v]bss'UEs*\$nq\n\rG~g1s\nbV&tj-;#T1tV,Z']%WDQTa)#@sxOTah1PP\$#hVKJAfK#V*\\\\*\rI6Q0DC2$7B(\$rMIGF)C\$_IF3-'Oa:=OdQE)\nW(H'JKy0>S:iL\rN`s+EH@\na7A#\"9CCX\$,1xP?RUJ4&\"Cps:(72T>D+YEn0F!tOa\$T`vrAvj0W3dj5(Q	T&d,MP_"TQ1,D0a\\p!B>+eXEr\0IIQ/G02Q#JlS\nA@F2/\rQ1/K\n%9pwY*''YA[i\"q6Aa<'19fl<rD@9K\"G4N#,xS\n#DvPLem6Vq1(@ Q=W	"e\0,R	qgE\0KA|)P5 \n@\"@U\"mHHLd5u\\kc+yW*s.'h,yl\" sxMrH!1P\"HB\n3t0MW]Jy{,won7IH3	.E+2xfxJ	b*\0TXqh(#g'ey8@+&T7ZKKi<B\\U;>J<B\"\0].g<tlK0_VtKo\n!SfZ|RzJ)5 	jd	bA,]I\r6P.ySn <DrrT7a#I9D_AX0P8o#n*XAo+E.OT	I)MT}&'vSE`YHlB*~SNbUt(9Bz<\r1|Eva@yEFl\no&+!evq]rUB6\r]1	wa\r>6}nM=y\\OcNMj4ZGfHPk>s9\$\$Bd\"z_VG\"]N\\zFD6T/F<JT%FlflG3.!s\rFlf\0S&^\\ {:v*vla!	\r\nPX,^'nn\\e#qYFYnv0r0(s#M=&0q.2M_"4fKX*0<AHQF0bk3C\\F gT\r9[@2LH\nZBjiDB2#b:EN,Q\nF0\\TC|x)H)q$&bbfDb.z+&0l-n'\nGvE(&oABi%6/B0\"+@  .\0 ')NS):.Q%&RhQlQo_%,sLA";break;}$Ug=array();foreach(explode("\n",lzw_decompress($f))as$X)$Ug[]=(strpos($X,"\t")?explode("\t",$X):$X);return$Ug;}if(!$Ug){$Ug=get_translations($a);$_SESSION["translations"]=$Ug;}if(extension_loaded('pdo')){class 
Min_PDO{var$_result,$server_info,$affected_rows,$errno,$error,$pdo;function 
__construct(){global$c;$Ze=array_search("SQL",$c->operators);if($Ze!==false)unset($c->operators[$Ze]);}function 
dsn($Ob,$V,$G,$xe=array()){$xe[PDO::ATTR_ERRMODE]=PDO::ERRMODE_SILENT;$xe[PDO::ATTR_STATEMENT_CLASS]=array('Min_PDOStatement');try{$this->pdo=new 
PDO($Ob,$V,$G,$xe);}catch(Exception$hc){auth_error(h($hc->getMessage()));}$this->server_info=@$this->pdo->getAttribute(PDO::ATTR_SERVER_VERSION);}function 
quote($lg){return$this->pdo->quote($lg);}function 
query($I,$bh=false){$J=$this->pdo->query($I);$this->error="";if(!$J){list(,$this->errno,$this->error)=$this->pdo->errorInfo();if(!$this->error)$this->error=lang(21);return 
false;}$this->store_result($J);return$J;}function 
multi_query($I){return$this->_result=$this->query($I);}function 
store_result($J=null){if(!$J){$J=$this->_result;if(!$J)return 
false;}if($J->columnCount()){$J->num_rows=$J->rowCount();return$J;}$this->affected_rows=$J->rowCount();return 
true;}function 
next_result(){if(!$this->_result)return 
false;$this->_result->_offset=0;return@$this->_result->nextRowset();}function 
result($I,$n=0){$J=$this->query($I);if(!$J)return 
false;$L=$J->fetch();return$L[$n];}}class 
Min_PDOStatement 
extends 
PDOStatement{var$_offset=0,$num_rows;function 
fetch_assoc(){return$this->fetch(PDO::FETCH_ASSOC);}function 
fetch_row(){return$this->fetch(PDO::FETCH_NUM);}function 
fetch_field(){$L=(object)$this->getColumnMeta($this->_offset++);$L->orgtable=$L->table;$L->orgname=$L->name;$L->charsetnr=(in_array("blob",(array)$L->flags)?63:0);return$L;}}}$Kb=array();function 
add_driver($u,$E){global$Kb;$Kb[$u]=$E;}class 
Min_SQL{var$_conn;function 
__construct($g){$this->_conn=$g;}function 
select($Q,$N,$Z,$s,$ze=array(),$_=1,$F=0,$gf=false){global$c,$y;$kd=(count($s)<count($N));$I=$c->selectQueryBuild($N,$Z,$s,$ze,$_,$F);if(!$I)$I="SELECT".limit(($_GET["page"]!="last"&&$_!=""&&$s&&$kd&&$y=="sql"?"SQL_CALC_FOUND_ROWS ":"").implode(", ",$N)."\nFROM ".table($Q),($Z?"\nWHERE ".implode(" AND ",$Z):"").($s&&$kd?"\nGROUP BY ".implode(", ",$s):"").($ze?"\nORDER BY ".implode(", ",$ze):""),($_!=""?+$_:null),($F?$_*$F:0),"\n");$hg=microtime(true);$K=$this->_conn->query($I);if($gf)echo$c->selectQuery($I,$hg,!$K);return$K;}function 
delete($Q,$of,$_=0){$I="FROM ".table($Q);return 
queries("DELETE".($_?limit1($Q,$I,$of):" $I$of"));}function 
update($Q,$P,$of,$_=0,$Rf="\n"){$rh=array();foreach($P 
as$z=>$X)$rh[]="$z = $X";$I=table($Q)." SET$Rf".implode(",$Rf",$rh);return 
queries("UPDATE".($_?limit1($Q,$I,$of,$Rf):" $I$of"));}function 
insert($Q,$P){return 
queries("INSERT INTO ".table($Q).($P?" (".implode(", ",array_keys($P)).")\nVALUES (".implode(", ",$P).")":" DEFAULT VALUES"));}function 
insertUpdate($Q,$M,$ff){return 
false;}function 
begin(){return 
queries("BEGIN");}function 
commit(){return 
queries("COMMIT");}function 
rollback(){return 
queries("ROLLBACK");}function 
slowQuery($I,$Hg){}function 
convertSearch($v,$X,$n){return$v;}function 
value($X,$n){return(method_exists($this->_conn,'value')?$this->_conn->value($X,$n):(is_resource($X)?stream_get_contents($X):$X));}function 
quoteBinary($If){return 
q($If);}function 
warnings(){return'';}function 
tableHelp($E){}}class 
Adminer{var$operators;function 
name(){return"<a href='https://www.adminer.org/'".target_blank()." id='h1'>Adminer</a>";}function 
credentials(){return 
array(SERVER,$_GET["username"],get_password());}function 
connectSsl(){}function 
permanentLogin($i=false){return 
password_file($i);}function 
bruteForceKey(){return$_SERVER["REMOTE_ADDR"];}function 
serverName($O){return 
h($O);}function 
database(){return 
DB;}function 
databases($yc=true){return 
get_databases($yc);}function 
schemas(){return 
schemas();}function 
queryTimeout(){return 
2;}function 
headers(){}function 
csp(){return 
csp();}function 
head(){return 
true;}function 
css(){$K=array();$vc="adminer.css";if(file_exists($vc))$K[]="$vc?v=".crc32(file_get_contents($vc));return$K;}function 
loginForm(){global$Kb;echo"<table cellspacing='0' class='layout'>\n",$this->loginFormField('driver','<tr><th>'.lang(22).'<td>',html_select("auth[driver]",$Kb,DRIVER,"loginDriver(this);")."\n"),$this->loginFormField('server','<tr><th>'.lang(23).'<td>','<input name="auth[server]" value="'.h(SERVER).'" title="hostname[:port]" placeholder="localhost" autocapitalize="off">'."\n"),$this->loginFormField('username','<tr><th>'.lang(24).'<td>','<input name="auth[username]" id="username" value="'.h($_GET["username"]).'" autocomplete="username" autocapitalize="off">'.script("focus(qs('#username')); qs('#username').form['auth[driver]'].onchange();")),$this->loginFormField('password','<tr><th>'.lang(25).'<td>','<input type="password" name="auth[password]" autocomplete="current-password">'."\n"),$this->loginFormField('db','<tr><th>'.lang(26).'<td>','<input name="auth[db]" value="'.h($_GET["db"]).'" autocapitalize="off">'."\n"),"</table>\n","<p><input type='submit' value='".lang(27)."'>\n",checkbox("auth[permanent]",1,$_COOKIE["adminer_permanent"],lang(28))."\n";}function 
loginFormField($E,$Sc,$Y){return$Sc.$Y;}function 
login($Fd,$G){if($G=="")return 
lang(29,target_blank());return 
true;}function 
tableName($tg){return 
h($tg["Name"]);}function 
fieldName($n,$ze=0){return'<span title="'.h($n["full_type"]).'">'.h($n["field"]).'</span>';}function 
selectLinks($tg,$P=""){global$y,$l;echo'<p class="links">';$Ed=array("select"=>lang(30));if(support("table")||support("indexes"))$Ed["table"]=lang(31);if(support("table")){if(is_view($tg))$Ed["view"]=lang(32);else$Ed["create"]=lang(33);}if($P!==null)$Ed["edit"]=lang(34);$E=$tg["Name"];foreach($Ed 
as$z=>$X)echo" <a href='".h(ME)."$z=".urlencode($E).($z=="edit"?$P:"")."'".bold(isset($_GET[$z])).">$X</a>";echo 
doc_link(array($y=>$l->tableHelp($E)),"?"),"\n";}function 
foreignKeys($Q){return 
foreign_keys($Q);}function 
backwardKeys($Q,$sg){return 
array();}function 
backwardKeysPrint($Aa,$L){}function 
selectQuery($I,$hg,$qc=false){global$y,$l;$K="</p>\n";if(!$qc&&($zh=$l->warnings())){$u="warnings";$K=", <a href='#$u'>".lang(35)."</a>".script("qsl('a').onclick = partial(toggle, '$u');","")."$K<div id='$u' class='hidden'>\n$zh</div>\n";}return"<p><code class='jush-$y'>".h(str_replace("\n"," ",$I))."</code> <span class='time'>(".format_time($hg).")</span>".(support("sql")?" <a href='".h(ME)."sql=".urlencode($I)."'>".lang(10)."</a>":"").$K;}function 
sqlCommandQuery($I){return 
shorten_utf8(trim($I),1000);}function 
rowDescription($Q){return"";}function 
rowDescriptions($M,$Ac){return$M;}function 
selectLink($X,$n){}function 
selectVal($X,$A,$n,$Ge){$K=($X===null?"<i>NULL</i>":(preg_match("~char|binary|boolean~",$n["type"])&&!preg_match("~var~",$n["type"])?"<code>$X</code>":$X));if(preg_match('~blob|bytea|raw|file~',$n["type"])&&!is_utf8($X))$K="<i>".lang(36,strlen($Ge))."</i>";if(preg_match('~json~',$n["type"]))$K="<code class='jush-js'>$K</code>";return($A?"<a href='".h($A)."'".(is_url($A)?target_blank():"").">$K</a>":$K);}function 
editVal($X,$n){return$X;}function 
tableStructurePrint($o){echo"<div class='scrollable'>\n","<table cellspacing='0' class='nowrap'>\n","<thead><tr><th>".lang(37)."<td>".lang(38).(support("comment")?"<td>".lang(39):"")."</thead>\n";foreach($o 
as$n){echo"<tr".odd()."><th>".h($n["field"]),"<td><span title='".h($n["collation"])."'>".h($n["full_type"])."</span>",($n["null"]?" <i>NULL</i>":""),($n["auto_increment"]?" <i>".lang(40)."</i>":""),(isset($n["default"])?" <span title='".lang(41)."'>[<b>".h($n["default"])."</b>]</span>":""),(support("comment")?"<td>".h($n["comment"]):""),"\n";}echo"</table>\n","</div>\n";}function 
tableIndexesPrint($x){echo"<table cellspacing='0'>\n";foreach($x 
as$E=>$w){ksort($w["columns"]);$gf=array();foreach($w["columns"]as$z=>$X)$gf[]="<i>".h($X)."</i>".($w["lengths"][$z]?"(".$w["lengths"][$z].")":"").($w["descs"][$z]?" DESC":"");echo"<tr title='".h($E)."'><th>$w[type]<td>".implode(", ",$gf)."\n";}echo"</table>\n";}function 
selectColumnsPrint($N,$e){global$Gc,$Lc;print_fieldset("select",lang(42),$N);$t=0;$N[""]=array();foreach($N 
as$z=>$X){$X=$_GET["columns"][$z];$d=select_input(" name='columns[$t][col]'",$e,$X["col"],($z!==""?"selectFieldChange":"selectAddRow"));echo"<div>".($Gc||$Lc?"<select name='columns[$t][fun]'>".optionlist(array(-1=>"")+array_filter(array(lang(43)=>$Gc,lang(44)=>$Lc)),$X["fun"])."</select>".on_help("getTarget(event).value && getTarget(event).value.replace(/ |\$/, '(') + ')'",1).script("qsl('select').onchange = function () { helpClose();".($z!==""?"":" qsl('select, input', this.parentNode).onchange();")." };","")."($d)":$d)."</div>\n";$t++;}echo"</div></fieldset>\n";}function 
selectSearchPrint($Z,$e,$x){print_fieldset("search",lang(45),$Z);foreach($x 
as$t=>$w){if($w["type"]=="FULLTEXT"){echo"<div>(<i>".implode("</i>, <i>",array_map('h',$w["columns"]))."</i>) AGAINST"," <input type='search' name='fulltext[$t]' value='".h($_GET["fulltext"][$t])."'>",script("qsl('input').oninput = selectFieldChange;",""),checkbox("boolean[$t]",1,isset($_GET["boolean"][$t]),"BOOL"),"</div>\n";}}$Ka="this.parentNode.firstChild.onchange();";foreach(array_merge((array)$_GET["where"],array(array()))as$t=>$X){if(!$X||("$X[col]$X[val]"!=""&&in_array($X["op"],$this->operators))){echo"<div>".select_input(" name='where[$t][col]'",$e,$X["col"],($X?"selectFieldChange":"selectAddRow"),"(".lang(46).")"),html_select("where[$t][op]",$this->operators,$X["op"],$Ka),"<input type='search' name='where[$t][val]' value='".h($X["val"])."'>",script("mixin(qsl('input'), {oninput: function () { $Ka }, onkeydown: selectSearchKeydown, onsearch: selectSearchSearch});",""),"</div>\n";}}echo"</div></fieldset>\n";}function 
selectOrderPrint($ze,$e,$x){print_fieldset("sort",lang(47),$ze);$t=0;foreach((array)$_GET["order"]as$z=>$X){if($X!=""){echo"<div>".select_input(" name='order[$t]'",$e,$X,"selectFieldChange"),checkbox("desc[$t]",1,isset($_GET["desc"][$z]),lang(48))."</div>\n";$t++;}}echo"<div>".select_input(" name='order[$t]'",$e,"","selectAddRow"),checkbox("desc[$t]",1,false,lang(48))."</div>\n","</div></fieldset>\n";}function 
selectLimitPrint($_){echo"<fieldset><legend>".lang(49)."</legend><div>";echo"<input type='number' name='limit' class='size' value='".h($_)."'>",script("qsl('input').oninput = selectFieldChange;",""),"</div></fieldset>\n";}function 
selectLengthPrint($Fg){if($Fg!==null){echo"<fieldset><legend>".lang(50)."</legend><div>","<input type='number' name='text_length' class='size' value='".h($Fg)."'>","</div></fieldset>\n";}}function 
selectActionPrint($x){echo"<fieldset><legend>".lang(51)."</legend><div>","<input type='submit' value='".lang(42)."'>"," <span id='noindex' title='".lang(52)."'></span>","<script".nonce().">\n","var indexColumns = ";$e=array();foreach($x 
as$w){$rb=reset($w["columns"]);if($w["type"]!="FULLTEXT"&&$rb)$e[$rb]=1;}$e[""]=1;foreach($e 
as$z=>$X)json_row($z);echo";\n","selectFieldChange.call(qs('#form')['select']);\n","</script>\n","</div></fieldset>\n";}function 
selectCommandPrint(){return!information_schema(DB);}function 
selectImportPrint(){return!information_schema(DB);}function 
selectEmailPrint($Wb,$e){}function 
selectColumnsProcess($e,$x){global$Gc,$Lc;$N=array();$s=array();foreach((array)$_GET["columns"]as$z=>$X){if($X["fun"]=="count"||($X["col"]!=""&&(!$X["fun"]||in_array($X["fun"],$Gc)||in_array($X["fun"],$Lc)))){$N[$z]=apply_sql_function($X["fun"],($X["col"]!=""?idf_escape($X["col"]):"*"));if(!in_array($X["fun"],$Lc))$s[]=$N[$z];}}return 
array($N,$s);}function 
selectSearchProcess($o,$x){global$g,$l;$K=array();foreach($x 
as$t=>$w){if($w["type"]=="FULLTEXT"&&$_GET["fulltext"][$t]!="")$K[]="MATCH (".implode(", ",array_map('idf_escape',$w["columns"])).") AGAINST (".q($_GET["fulltext"][$t]).(isset($_GET["boolean"][$t])?" IN BOOLEAN MODE":"").")";}foreach((array)$_GET["where"]as$z=>$X){if("$X[col]$X[val]"!=""&&in_array($X["op"],$this->operators)){$df="";$db=" $X[op]";if(preg_match('~IN$~',$X["op"])){$ad=process_length($X["val"]);$db.=" ".($ad!=""?$ad:"(NULL)");}elseif($X["op"]=="SQL")$db=" $X[val]";elseif($X["op"]=="LIKE %%")$db=" LIKE ".$this->processInput($o[$X["col"]],"%$X[val]%");elseif($X["op"]=="ILIKE %%")$db=" ILIKE ".$this->processInput($o[$X["col"]],"%$X[val]%");elseif($X["op"]=="FIND_IN_SET"){$df="$X[op](".q($X["val"]).", ";$db=")";}elseif(!preg_match('~NULL$~',$X["op"]))$db.=" ".$this->processInput($o[$X["col"]],$X["val"]);if($X["col"]!="")$K[]=$df.$l->convertSearch(idf_escape($X["col"]),$X,$o[$X["col"]]).$db;else{$Ya=array();foreach($o 
as$E=>$n){if((preg_match('~^[-\d.'.(preg_match('~IN$~',$X["op"])?',':'').']+$~',$X["val"])||!preg_match('~'.number_type().'|bit~',$n["type"]))&&(!preg_match("~[\x80-\xFF]~",$X["val"])||preg_match('~char|text|enum|set~',$n["type"]))&&(!preg_match('~date|timestamp~',$n["type"])||preg_match('~^\d+-\d+-\d+~',$X["val"])))$Ya[]=$df.$l->convertSearch(idf_escape($E),$X,$n).$db;}$K[]=($Ya?"(".implode(" OR ",$Ya).")":"1 = 0");}}}return$K;}function 
selectOrderProcess($o,$x){$K=array();foreach((array)$_GET["order"]as$z=>$X){if($X!="")$K[]=(preg_match('~^((COUNT\(DISTINCT |[A-Z0-9_]+\()(`(?:[^`]|``)+`|"(?:[^"]|"")+")\)|COUNT\(\*\))$~',$X)?$X:idf_escape($X)).(isset($_GET["desc"][$z])?" DESC":"");}return$K;}function 
selectLimitProcess(){return(isset($_GET["limit"])?$_GET["limit"]:"50");}function 
selectLengthProcess(){return(isset($_GET["text_length"])?$_GET["text_length"]:"100");}function 
selectEmailProcess($Z,$Ac){return 
false;}function 
selectQueryBuild($N,$Z,$s,$ze,$_,$F){return"";}function 
messageQuery($I,$Gg,$qc=false){global$y,$l;restart_session();$Tc=&get_session("queries");if(!$Tc[$_GET["db"]])$Tc[$_GET["db"]]=array();if(strlen($I)>1e6)$I=preg_replace('~[\x80-\xFF]+$~','',substr($I,0,1e6))."\n";$Tc[$_GET["db"]][]=array($I,time(),$Gg);$fg="sql-".count($Tc[$_GET["db"]]);$K="<a href='#$fg' class='toggle'>".lang(53)."</a>\n";if(!$qc&&($zh=$l->warnings())){$u="warnings-".count($Tc[$_GET["db"]]);$K="<a href='#$u' class='toggle'>".lang(35)."</a>, $K<div id='$u' class='hidden'>\n$zh</div>\n";}return" <span class='time'>".@date("H:i:s")."</span>"." $K<div id='$fg' class='hidden'><pre><code class='jush-$y'>".shorten_utf8($I,1000)."</code></pre>".($Gg?" <span class='time'>($Gg)</span>":'').(support("sql")?'<p><a href="'.h(str_replace("db=".urlencode(DB),"db=".urlencode($_GET["db"]),ME).'sql=&history='.(count($Tc[$_GET["db"]])-1)).'">'.lang(10).'</a>':'').'</div>';}function 
editRowPrint($Q,$o,$L,$ih){}function 
editFunctions($n){global$Rb;$K=($n["null"]?"NULL/":"");$ih=isset($_GET["select"])||where($_GET);foreach($Rb 
as$z=>$Gc){if(!$z||(!isset($_GET["call"])&&$ih)){foreach($Gc 
as$Ue=>$X){if(!$Ue||preg_match("~$Ue~",$n["type"]))$K.="/$X";}}if($z&&!preg_match('~set|blob|bytea|raw|file|bool~',$n["type"]))$K.="/SQL";}if($n["auto_increment"]&&!$ih)$K=lang(40);return 
explode("/",$K);}function 
editInput($Q,$n,$wa,$Y){if($n["type"]=="enum")return(isset($_GET["select"])?"<label><input type='radio'$wa value='-1' checked><i>".lang(8)."</i></label> ":"").($n["null"]?"<label><input type='radio'$wa value=''".($Y!==null||isset($_GET["select"])?"":" checked")."><i>NULL</i></label> ":"").enum_input("radio",$wa,$n,$Y,0);return"";}function 
editHint($Q,$n,$Y){return"";}function 
processInput($n,$Y,$r=""){if($r=="SQL")return$Y;$E=$n["field"];$K=q($Y);if(preg_match('~^(now|getdate|uuid)$~',$r))$K="$r()";elseif(preg_match('~^current_(date|timestamp)$~',$r))$K=$r;elseif(preg_match('~^([+-]|\|\|)$~',$r))$K=idf_escape($E)." $r $K";elseif(preg_match('~^[+-] interval$~',$r))$K=idf_escape($E)." $r ".(preg_match("~^(\\d+|'[0-9.: -]') [A-Z_]+\$~i",$Y)?$Y:$K);elseif(preg_match('~^(addtime|subtime|concat)$~',$r))$K="$r(".idf_escape($E).", $K)";elseif(preg_match('~^(md5|sha1|password|encrypt)$~',$r))$K="$r($K)";return 
unconvert_field($n,$K);}function 
dumpOutput(){$K=array('text'=>lang(54),'file'=>lang(55));if(function_exists('gzencode'))$K['gz']='gzip';return$K;}function 
dumpFormat(){return 
array('sql'=>'SQL','csv'=>'CSV,','csv;'=>'CSV;','tsv'=>'TSV');}function 
dumpDatabase($k){}function 
dumpTable($Q,$ng,$md=0){if($_POST["format"]!="sql"){echo"\xef\xbb\xbf";if($ng)dump_csv(array_keys(fields($Q)));}else{if($md==2){$o=array();foreach(fields($Q)as$E=>$n)$o[]=idf_escape($E)." $n[full_type]";$i="CREATE TABLE ".table($Q)." (".implode(", ",$o).")";}else$i=create_sql($Q,$_POST["auto_increment"],$ng);set_utf8mb4($i);if($ng&&$i){if($ng=="DROP+CREATE"||$md==1)echo"DROP ".($md==2?"VIEW":"TABLE")." IF EXISTS ".table($Q).";\n";if($md==1)$i=remove_definer($i);echo"$i;\n\n";}}}function 
dumpData($Q,$ng,$I){global$g,$y;$Ld=($y=="sqlite"?0:1048576);if($ng){if($_POST["format"]=="sql"){if($ng=="TRUNCATE+INSERT")echo 
truncate_sql($Q).";\n";$o=fields($Q);}$J=$g->query($I,1);if($J){$fd="";$Ia="";$pd=array();$pg="";$tc=($Q!=''?'fetch_assoc':'fetch_row');while($L=$J->$tc()){if(!$pd){$rh=array();foreach($L 
as$X){$n=$J->fetch_field();$pd[]=$n->name;$z=idf_escape($n->name);$rh[]="$z = VALUES($z)";}$pg=($ng=="INSERT+UPDATE"?"\nON DUPLICATE KEY UPDATE ".implode(", ",$rh):"").";\n";}if($_POST["format"]!="sql"){if($ng=="table"){dump_csv($pd);$ng="INSERT";}dump_csv($L);}else{if(!$fd)$fd="INSERT INTO ".table($Q)." (".implode(", ",array_map('idf_escape',$pd)).") VALUES";foreach($L 
as$z=>$X){$n=$o[$z];$L[$z]=($X!==null?unconvert_field($n,preg_match(number_type(),$n["type"])&&!preg_match('~\[~',$n["full_type"])&&is_numeric($X)?$X:q(($X===false?0:$X))):"NULL");}$If=($Ld?"\n":" ")."(".implode(",\t",$L).")";if(!$Ia)$Ia=$fd.$If;elseif(strlen($Ia)+4+strlen($If)+strlen($pg)<$Ld)$Ia.=",$If";else{echo$Ia.$pg;$Ia=$fd.$If;}}}if($Ia)echo$Ia.$pg;}elseif($_POST["format"]=="sql")echo"-- ".str_replace("\n"," ",$g->error)."\n";}}function 
dumpFilename($Xc){return 
friendly_url($Xc!=""?$Xc:(SERVER!=""?SERVER:"localhost"));}function 
dumpHeaders($Xc,$Xd=false){$Ie=$_POST["output"];$nc=(preg_match('~sql~',$_POST["format"])?"sql":($Xd?"tar":"csv"));header("Content-Type: ".($Ie=="gz"?"application/x-gzip":($nc=="tar"?"application/x-tar":($nc=="sql"||$Ie!="file"?"text/plain":"text/csv")."; charset=utf-8")));if($Ie=="gz")ob_start('ob_gzencode',1e6);return$nc;}function 
importServerPath(){return"adminer.sql";}function 
homepage(){echo'<p class="links">'.($_GET["ns"]==""&&support("database")?'<a href="'.h(ME).'database=">'.lang(56)."</a>\n":""),(support("scheme")?"<a href='".h(ME)."scheme='>".($_GET["ns"]!=""?lang(57):lang(58))."</a>\n":""),($_GET["ns"]!==""?'<a href="'.h(ME).'schema=">'.lang(59)."</a>\n":""),(support("privileges")?"<a href='".h(ME)."privileges='>".lang(60)."</a>\n":"");return 
true;}function 
navigation($Wd){global$fa,$y,$Kb,$g;echo'<h1> 
',$this->name(),' <span class="version">',$fa,'</span> 
<a href="https://www.adminer.org/#download"',target_blank(),' id="version">',(version_compare($fa,$_COOKIE["adminer_version"])<0?h($_COOKIE["adminer_version"]):""),'</a> 
</h1> 
';if($Wd=="auth"){$Ie="";foreach((array)$_SESSION["pwds"]as$th=>$Tf){foreach($Tf 
as$O=>$ph){foreach($ph 
as$V=>$G){if($G!==null){$xb=$_SESSION["db"][$th][$O][$V];foreach(($xb?array_keys($xb):array(""))as$k)$Ie.="<li><a href='".h(auth_url($th,$O,$V,$k))."'>($Kb[$th]) ".h($V.($O!=""?"@".$this->serverName($O):"").($k!=""?" - $k":""))."</a>\n";}}}}if($Ie)echo"<ul id='logins'>\n$Ie</ul>\n".script("mixin(qs('#logins'), {onmouseover: menuOver, onmouseout: menuOut});");}else{$S=array();if($_GET["ns"]!==""&&!$Wd&&DB!=""){$g->select_db(DB);$S=table_status('',true);}echo 
script_src(preg_replace("~\\?.*~","",ME)."?file=jush.js&version=4.8.1");if(support("sql")){echo'<script',nonce(),'> 
';if($S){$Ed=array();foreach($S 
as$Q=>$U)$Ed[]=preg_quote($Q,'/');echo"var jushLinks = { $y: [ '".js_escape(ME).(support("table")?"table=":"select=")."\$&', /\\b(".implode("|",$Ed).")\\b/g ] };\n";foreach(array("bac","bra","sqlite_quo","mssql_bra")as$X)echo"jushLinks.$X = jushLinks.$y;\n";}$Sf=$g->server_info;echo'bodyLoad(\'',(is_object($g)?preg_replace('~^(\d\.?\d).*~s','\1',$Sf):""),'\'',(preg_match('~MariaDB~',$Sf)?", true":""),'); 
</script> 
';}$this->databasesPrint($Wd);if(DB==""||!$Wd){echo"<p class='links'>".(support("sql")?"<a href='".h(ME)."sql='".bold(isset($_GET["sql"])&&!isset($_GET["import"])).">".lang(53)."</a>\n<a href='".h(ME)."import='".bold(isset($_GET["import"])).">".lang(61)."</a>\n":"")."";if(support("dump"))echo"<a href='".h(ME)."dump=".urlencode(isset($_GET["table"])?$_GET["table"]:$_GET["select"])."' id='dump'".bold(isset($_GET["dump"])).">".lang(62)."</a>\n";}if($_GET["ns"]!==""&&!$Wd&&DB!=""){echo'<a href="'.h(ME).'create="'.bold($_GET["create"]==="").">".lang(63)."</a>\n";if(!$S)echo"<p class='message'>".lang(9)."\n";else$this->tablesPrint($S);}}}function 
databasesPrint($Wd){global$c,$g;$j=$this->databases();if(DB&&$j&&!in_array(DB,$j))array_unshift($j,DB);echo'<form action=""> 
<p id="dbs"> 
';hidden_fields_get();$vb=script("mixin(qsl('select'), {onmousedown: dbMouseDown, onchange: dbChange});");echo"<span title='".lang(64)."'>".lang(65)."</span>: ".($j?"<select name='db'>".optionlist(array(""=>"")+$j,DB)."</select>$vb":"<input name='db' value='".h(DB)."' autocapitalize='off'>\n"),"<input type='submit' value='".lang(20)."'".($j?" class='hidden'":"").">\n";foreach(array("import","sql","schema","dump","privileges")as$X){if(isset($_GET[$X])){echo"<input type='hidden' name='$X' value=''>";break;}}echo"</p></form>\n";}function 
tablesPrint($S){echo"<ul id='tables'>".script("mixin(qs('#tables'), {onmouseover: menuOver, onmouseout: menuOut});");foreach($S 
as$Q=>$ig){$E=$this->tableName($ig);if($E!=""){echo'<li><a href="'.h(ME).'select='.urlencode($Q).'"'.bold($_GET["select"]==$Q||$_GET["edit"]==$Q,"select")." title='".lang(30)."'>".lang(66)."</a> ",(support("table")||support("indexes")?'<a href="'.h(ME).'table='.urlencode($Q).'"'.bold(in_array($Q,array($_GET["table"],$_GET["create"],$_GET["indexes"],$_GET["foreign"],$_GET["trigger"])),(is_view($ig)?"view":"structure"))." title='".lang(31)."'>$E</a>":"<span>$E</span>")."\n";}}echo"</ul>\n";}}$c=(function_exists('adminer_object')?adminer_object():new 
Adminer);$Kb=array("server"=>"MySQL")+$Kb;if(!defined("DRIVER")){define("DRIVER","server");if(extension_loaded("mysqli")){class 
Min_DB 
extends 
MySQLi{var$extension="MySQLi";function 
__construct(){parent::init();}function 
connect($O="",$V="",$G="",$ub=null,$Ye=null,$ag=null){global$c;mysqli_report(MYSQLI_REPORT_OFF);list($Vc,$Ye)=explode(":",$O,2);$gg=$c->connectSsl();if($gg)$this->ssl_set($gg['key'],$gg['cert'],$gg['ca'],'','');$K=@$this->real_connect(($O!=""?$Vc:ini_get("mysqli.default_host")),($O.$V!=""?$V:ini_get("mysqli.default_user")),($O.$V.$G!=""?$G:ini_get("mysqli.default_pw")),$ub,(is_numeric($Ye)?$Ye:ini_get("mysqli.default_port")),(!is_numeric($Ye)?$Ye:$ag),($gg?64:0));$this->options(MYSQLI_OPT_LOCAL_INFILE,false);return$K;}function 
set_charset($La){if(parent::set_charset($La))return 
true;parent::set_charset('utf8');return$this->query("SET NAMES $La");}function 
result($I,$n=0){$J=$this->query($I);if(!$J)return 
false;$L=$J->fetch_array();return$L[$n];}function 
quote($lg){return"'".$this->escape_string($lg)."'";}}}elseif(extension_loaded("mysql")&&!((ini_bool("sql.safe_mode")||ini_bool("mysql.allow_local_infile"))&&extension_loaded("pdo_mysql"))){class 
Min_DB{var$extension="MySQL",$server_info,$affected_rows,$errno,$error,$_link,$_result;function 
connect($O,$V,$G){if(ini_bool("mysql.allow_local_infile")){$this->error=lang(67,"'mysql.allow_local_infile'","MySQLi","PDO_MySQL");return 
false;}$this->_link=@mysql_connect(($O!=""?$O:ini_get("mysql.default_host")),("$O$V"!=""?$V:ini_get("mysql.default_user")),("$O$V$G"!=""?$G:ini_get("mysql.default_password")),true,131072);if($this->_link)$this->server_info=mysql_get_server_info($this->_link);else$this->error=mysql_error();return(bool)$this->_link;}function 
set_charset($La){if(function_exists('mysql_set_charset')){if(mysql_set_charset($La,$this->_link))return 
true;mysql_set_charset('utf8',$this->_link);}return$this->query("SET NAMES $La");}function 
quote($lg){return"'".mysql_real_escape_string($lg,$this->_link)."'";}function 
select_db($ub){return 
mysql_select_db($ub,$this->_link);}function 
query($I,$bh=false){$J=@($bh?mysql_unbuffered_query($I,$this->_link):mysql_query($I,$this->_link));$this->error="";if(!$J){$this->errno=mysql_errno($this->_link);$this->error=mysql_error($this->_link);return 
false;}if($J===true){$this->affected_rows=mysql_affected_rows($this->_link);$this->info=mysql_info($this->_link);return 
true;}return 
new 
Min_Result($J);}function 
multi_query($I){return$this->_result=$this->query($I);}function 
store_result(){return$this->_result;}function 
next_result(){return 
false;}function 
result($I,$n=0){$J=$this->query($I);if(!$J||!$J->num_rows)return 
false;return 
mysql_result($J->_result,0,$n);}}class 
Min_Result{var$num_rows,$_result,$_offset=0;function 
__construct($J){$this->_result=$J;$this->num_rows=mysql_num_rows($J);}function 
fetch_assoc(){return 
mysql_fetch_assoc($this->_result);}function 
fetch_row(){return 
mysql_fetch_row($this->_result);}function 
fetch_field(){$K=mysql_fetch_field($this->_result,$this->_offset++);$K->orgtable=$K->table;$K->orgname=$K->name;$K->charsetnr=($K->blob?63:0);return$K;}function 
__destruct(){mysql_free_result($this->_result);}}}elseif(extension_loaded("pdo_mysql")){class 
Min_DB 
extends 
Min_PDO{var$extension="PDO_MySQL";function 
connect($O,$V,$G){global$c;$xe=array(PDO::MYSQL_ATTR_LOCAL_INFILE=>false);$gg=$c->connectSsl();if($gg){if(!empty($gg['key']))$xe[PDO::MYSQL_ATTR_SSL_KEY]=$gg['key'];if(!empty($gg['cert']))$xe[PDO::MYSQL_ATTR_SSL_CERT]=$gg['cert'];if(!empty($gg['ca']))$xe[PDO::MYSQL_ATTR_SSL_CA]=$gg['ca'];}$this->dsn("mysql:charset=utf8;host=".str_replace(":",";unix_socket=",preg_replace('~:(\d)~',';port=\1',$O)),$V,$G,$xe);return 
true;}function 
set_charset($La){$this->query("SET NAMES $La");}function 
select_db($ub){return$this->query("USE ".idf_escape($ub));}function 
query($I,$bh=false){$this->pdo->setAttribute(PDO::MYSQL_ATTR_USE_BUFFERED_QUERY,!$bh);return 
parent::query($I,$bh);}}}class 
Min_Driver 
extends 
Min_SQL{function 
insert($Q,$P){return($P?parent::insert($Q,$P):queries("INSERT INTO ".table($Q)." ()\nVALUES ()"));}function 
insertUpdate($Q,$M,$ff){$e=array_keys(reset($M));$df="INSERT INTO ".table($Q)." (".implode(", ",$e).") VALUES\n";$rh=array();foreach($e 
as$z)$rh[$z]="$z = VALUES($z)";$pg="\nON DUPLICATE KEY UPDATE ".implode(", ",$rh);$rh=array();$Bd=0;foreach($M 
as$P){$Y="(".implode(", ",$P).")";if($rh&&(strlen($df)+$Bd+strlen($Y)+strlen($pg)>1e6)){if(!queries($df.implode(",\n",$rh).$pg))return 
false;$rh=array();$Bd=0;}$rh[]=$Y;$Bd+=strlen($Y)+2;}return 
queries($df.implode(",\n",$rh).$pg);}function 
slowQuery($I,$Hg){if(min_version('5.7.8','10.1.2')){if(preg_match('~MariaDB~',$this->_conn->server_info))return"SET STATEMENT max_statement_time=$Hg FOR $I";elseif(preg_match('~^(SELECT\b)(.+)~is',$I,$C))return"$C[1] /*+ MAX_EXECUTION_TIME(".($Hg*1000).") */ $C[2]";}}function 
convertSearch($v,$X,$n){return(preg_match('~char|text|enum|set~',$n["type"])&&!preg_match("~^utf8~",$n["collation"])&&preg_match('~[\x80-\xFF]~',$X['val'])?"CONVERT($v USING ".charset($this->_conn).")":$v);}function 
warnings(){$J=$this->_conn->query("SHOW WARNINGS");if($J&&$J->num_rows){ob_start();select($J);return 
ob_get_clean();}}function 
tableHelp($E){$Hd=preg_match('~MariaDB~',$this->_conn->server_info);if(information_schema(DB))return 
strtolower(($Hd?"information-schema-$E-table/":str_replace("_","-",$E)."-table.html"));if(DB=="mysql")return($Hd?"mysql$E-table/":"system-database.html");}}function 
idf_escape($v){return"`".str_replace("`","``",$v)."`";}function 
table($v){return 
idf_escape($v);}function 
connect(){global$c,$ah,$mg;$g=new 
Min_DB;$nb=$c->credentials();if($g->connect($nb[0],$nb[1],$nb[2])){$g->set_charset(charset($g));$g->query("SET sql_quote_show_create = 1, autocommit = 1");if(min_version('5.7.8',10.2,$g)){$mg[lang(68)][]="json";$ah["json"]=4294967295;}return$g;}$K=$g->error;if(function_exists('iconv')&&!is_utf8($K)&&strlen($If=iconv("windows-1250","utf-8",$K))>strlen($K))$K=$If;return$K;}function 
get_databases($yc){$K=get_session("dbs");if($K===null){$I=(min_version(5)?"SELECT SCHEMA_NAME FROM information_schema.SCHEMATA ORDER BY SCHEMA_NAME":"SHOW DATABASES");$K=($yc?slow_query($I):get_vals($I));restart_session();set_session("dbs",$K);stop_session();}return$K;}function 
limit($I,$Z,$_,$ke=0,$Rf=" "){return" $I$Z".($_!==null?$Rf."LIMIT $_".($ke?" OFFSET $ke":""):"");}function 
limit1($Q,$I,$Z,$Rf="\n"){return 
limit($I,$Z,1,0,$Rf);}function 
db_collation($k,$Xa){global$g;$K=null;$i=$g->result("SHOW CREATE DATABASE ".idf_escape($k),1);if(preg_match('~ COLLATE ([^ ]+)~',$i,$C))$K=$C[1];elseif(preg_match('~ CHARACTER SET ([^ ]+)~',$i,$C))$K=$Xa[$C[1]][-1];return$K;}function 
engines(){$K=array();foreach(get_rows("SHOW ENGINES")as$L){if(preg_match("~YES|DEFAULT~",$L["Support"]))$K[]=$L["Engine"];}return$K;}function 
logged_user(){global$g;return$g->result("SELECT USER()");}function 
tables_list(){return 
get_key_vals(min_version(5)?"SELECT TABLE_NAME, TABLE_TYPE FROM information_schema.TABLES WHERE TABLE_SCHEMA = DATABASE() ORDER BY TABLE_NAME":"SHOW TABLES");}function 
count_tables($j){$K=array();foreach($j 
as$k)$K[$k]=count(get_vals("SHOW TABLES IN ".idf_escape($k)));return$K;}function 
table_status($E="",$rc=false){$K=array();foreach(get_rows($rc&&min_version(5)?"SELECT TABLE_NAME AS Name, ENGINE AS Engine, TABLE_COMMENT AS Comment FROM information_schema.TABLES WHERE TABLE_SCHEMA = DATABASE() ".($E!=""?"AND TABLE_NAME = ".q($E):"ORDER BY Name"):"SHOW TABLE STATUS".($E!=""?" LIKE ".q(addcslashes($E,"%_\\")):""))as$L){if($L["Engine"]=="InnoDB")$L["Comment"]=preg_replace('~(?:(.+); )?InnoDB free: .*~','\1',$L["Comment"]);if(!isset($L["Engine"]))$L["Comment"]="";if($E!="")return$L;$K[$L["Name"]]=$L;}return$K;}function 
is_view($R){return$R["Engine"]===null;}function 
fk_support($R){return 
preg_match('~InnoDB|IBMDB2I~i',$R["Engine"])||(preg_match('~NDB~i',$R["Engine"])&&min_version(5.6));}function 
fields($Q){$K=array();foreach(get_rows("SHOW FULL COLUMNS FROM ".table($Q))as$L){preg_match('~^([^( ]+)(?:\((.+)\))?( unsigned)?( zerofill)?$~',$L["Type"],$C);$K[$L["Field"]]=array("field"=>$L["Field"],"full_type"=>$L["Type"],"type"=>$C[1],"length"=>$C[2],"unsigned"=>ltrim($C[3].$C[4]),"default"=>($L["Default"]!=""||preg_match("~char|set~",$C[1])?(preg_match('~text~',$C[1])?stripslashes(preg_replace("~^'(.*)'\$~",'\1',$L["Default"])):$L["Default"]):null),"null"=>($L["Null"]=="YES"),"auto_increment"=>($L["Extra"]=="auto_increment"),"on_update"=>(preg_match('~^on update (.+)~i',$L["Extra"],$C)?$C[1]:""),"collation"=>$L["Collation"],"privileges"=>array_flip(preg_split('~, *~',$L["Privileges"])),"comment"=>$L["Comment"],"primary"=>($L["Key"]=="PRI"),"generated"=>preg_match('~^(VIRTUAL|PERSISTENT|STORED)~',$L["Extra"]),);}return$K;}function 
indexes($Q,$h=null){$K=array();foreach(get_rows("SHOW INDEX FROM ".table($Q),$h)as$L){$E=$L["Key_name"];$K[$E]["type"]=($E=="PRIMARY"?"PRIMARY":($L["Index_type"]=="FULLTEXT"?"FULLTEXT":($L["Non_unique"]?($L["Index_type"]=="SPATIAL"?"SPATIAL":"INDEX"):"UNIQUE")));$K[$E]["columns"][]=$L["Column_name"];$K[$E]["lengths"][]=($L["Index_type"]=="SPATIAL"?null:$L["Sub_part"]);$K[$E]["descs"][]=null;}return$K;}function 
foreign_keys($Q){global$g,$re;static$Ue='(?:`(?:[^`]|``)+`|"(?:[^"]|"")+")';$K=array();$lb=$g->result("SHOW CREATE TABLE ".table($Q),1);if($lb){preg_match_all("~CONSTRAINT ($Ue) FOREIGN KEY ?\\(((?:$Ue,? ?)+)\\) REFERENCES ($Ue)(?:\\.($Ue))? \\(((?:$Ue,? ?)+)\\)(?: ON DELETE ($re))?(?: ON UPDATE ($re))?~",$lb,$Jd,PREG_SET_ORDER);foreach($Jd 
as$C){preg_match_all("~$Ue~",$C[2],$bg);preg_match_all("~$Ue~",$C[5],$Ag);$K[idf_unescape($C[1])]=array("db"=>idf_unescape($C[4]!=""?$C[3]:$C[4]),"table"=>idf_unescape($C[4]!=""?$C[4]:$C[3]),"source"=>array_map('idf_unescape',$bg[0]),"target"=>array_map('idf_unescape',$Ag[0]),"on_delete"=>($C[6]?$C[6]:"RESTRICT"),"on_update"=>($C[7]?$C[7]:"RESTRICT"),);}}return$K;}function 
view($E){global$g;return 
array("select"=>preg_replace('~^(?:[^`]|`[^`]*`)*\s+AS\s+~isU','',$g->result("SHOW CREATE VIEW ".table($E),1)));}function 
collations(){$K=array();foreach(get_rows("SHOW COLLATION")as$L){if($L["Default"])$K[$L["Charset"]][-1]=$L["Collation"];else$K[$L["Charset"]][]=$L["Collation"];}ksort($K);foreach($K 
as$z=>$X)asort($K[$z]);return$K;}function 
information_schema($k){return(min_version(5)&&$k=="information_schema")||(min_version(5.5)&&$k=="performance_schema");}function 
error(){global$g;return 
h(preg_replace('~^You have an error.*syntax to use~U',"Syntax error",$g->error));}function 
create_database($k,$Wa){return 
queries("CREATE DATABASE ".idf_escape($k).($Wa?" COLLATE ".q($Wa):""));}function 
drop_databases($j){$K=apply_queries("DROP DATABASE",$j,'idf_escape');restart_session();set_session("dbs",null);return$K;}function 
rename_database($E,$Wa){$K=false;if(create_database($E,$Wa)){$S=array();$wh=array();foreach(tables_list()as$Q=>$U){if($U=='VIEW')$wh[]=$Q;else$S[]=$Q;}$K=(!$S&&!$wh)||move_tables($S,$wh,$E);drop_databases($K?array(DB):array());}return$K;}function 
auto_increment(){$za=" PRIMARY KEY";if($_GET["create"]!=""&&$_POST["auto_increment_col"]){foreach(indexes($_GET["create"])as$w){if(in_array($_POST["fields"][$_POST["auto_increment_col"]]["orig"],$w["columns"],true)){$za="";break;}if($w["type"]=="PRIMARY")$za=" UNIQUE";}}return" AUTO_INCREMENT$za";}function 
alter_table($Q,$E,$o,$_c,$bb,$Zb,$Wa,$ya,$Qe){$sa=array();foreach($o 
as$n)$sa[]=($n[1]?($Q!=""?($n[0]!=""?"CHANGE ".idf_escape($n[0]):"ADD"):" ")." ".implode($n[1]).($Q!=""?$n[2]:""):"DROP ".idf_escape($n[0]));$sa=array_merge($sa,$_c);$ig=($bb!==null?" COMMENT=".q($bb):"").($Zb?" ENGINE=".q($Zb):"").($Wa?" COLLATE ".q($Wa):"").($ya!=""?" AUTO_INCREMENT=$ya":"");if($Q=="")return 
queries("CREATE TABLE ".table($E)." (\n".implode(",\n",$sa)."\n)$ig$Qe");if($Q!=$E)$sa[]="RENAME TO ".table($E);if($ig)$sa[]=ltrim($ig);return($sa||$Qe?queries("ALTER TABLE ".table($Q)."\n".implode(",\n",$sa).$Qe):true);}function 
alter_indexes($Q,$sa){foreach($sa 
as$z=>$X)$sa[$z]=($X[2]=="DROP"?"\nDROP INDEX ".idf_escape($X[1]):"\nADD $X[0] ".($X[0]=="PRIMARY"?"KEY ":"").($X[1]!=""?idf_escape($X[1])." ":"")."(".implode(", ",$X[2]).")");return 
queries("ALTER TABLE ".table($Q).implode(",",$sa));}function 
truncate_tables($S){return 
apply_queries("TRUNCATE TABLE",$S);}function 
drop_views($wh){return 
queries("DROP VIEW ".implode(", ",array_map('table',$wh)));}function 
drop_tables($S){return 
queries("DROP TABLE ".implode(", ",array_map('table',$S)));}function 
move_tables($S,$wh,$Ag){global$g;$zf=array();foreach($S 
as$Q)$zf[]=table($Q)." TO ".idf_escape($Ag).".".table($Q);if(!$zf||queries("RENAME TABLE ".implode(", ",$zf))){$Bb=array();foreach($wh 
as$Q)$Bb[table($Q)]=view($Q);$g->select_db($Ag);$k=idf_escape(DB);foreach($Bb 
as$E=>$vh){if(!queries("CREATE VIEW $E AS ".str_replace(" $k."," ",$vh["select"]))||!queries("DROP VIEW $k.$E"))return 
false;}return 
true;}return 
false;}function 
copy_tables($S,$wh,$Ag){queries("SET sql_mode = 'NO_AUTO_VALUE_ON_ZERO'");foreach($S 
as$Q){$E=($Ag==DB?table("copy_$Q"):idf_escape($Ag).".".table($Q));if(($_POST["overwrite"]&&!queries("\nDROP TABLE IF EXISTS $E"))||!queries("CREATE TABLE $E LIKE ".table($Q))||!queries("INSERT INTO $E SELECT * FROM ".table($Q)))return 
false;foreach(get_rows("SHOW TRIGGERS LIKE ".q(addcslashes($Q,"%_\\")))as$L){$Vg=$L["Trigger"];if(!queries("CREATE TRIGGER ".($Ag==DB?idf_escape("copy_$Vg"):idf_escape($Ag).".".idf_escape($Vg))." $L[Timing] $L[Event] ON $E FOR EACH ROW\n$L[Statement];"))return 
false;}}foreach($wh 
as$Q){$E=($Ag==DB?table("copy_$Q"):idf_escape($Ag).".".table($Q));$vh=view($Q);if(($_POST["overwrite"]&&!queries("DROP VIEW IF EXISTS $E"))||!queries("CREATE VIEW $E AS $vh[select]"))return 
false;}return 
true;}function 
trigger($E){if($E=="")return 
array();$M=get_rows("SHOW TRIGGERS WHERE `Trigger` = ".q($E));return 
reset($M);}function 
triggers($Q){$K=array();foreach(get_rows("SHOW TRIGGERS LIKE ".q(addcslashes($Q,"%_\\")))as$L)$K[$L["Trigger"]]=array($L["Timing"],$L["Event"]);return$K;}function 
trigger_options(){return 
array("Timing"=>array("BEFORE","AFTER"),"Event"=>array("INSERT","UPDATE","DELETE"),"Type"=>array("FOR EACH ROW"),);}function 
routine($E,$U){global$g,$bc,$dd,$ah;$qa=array("bool","boolean","integer","double precision","real","dec","numeric","fixed","national char","national varchar");$cg="(?:\\s|/\\*[\s\S]*?\\*/|(?:#|-- )[^\n]*\n?|--\r?\n)";$Zg="((".implode("|",array_merge(array_keys($ah),$qa)).")\\b(?:\\s*\\(((?:[^'\")]|$bc)++)\\))?\\s*(zerofill\\s*)?(unsigned(?:\\s+zerofill)?)?)(?:\\s*(?:CHARSET|CHARACTER\\s+SET)\\s*['\"]?([^'\"\\s,]+)['\"]?)?";$Ue="$cg*(".($U=="FUNCTION"?"":$dd).")?\\s*(?:`((?:[^`]|``)*)`\\s*|\\b(\\S+)\\s+)$Zg";$i=$g->result("SHOW CREATE $U ".idf_escape($E),2);preg_match("~\\(((?:$Ue\\s*,?)*)\\)\\s*".($U=="FUNCTION"?"RETURNS\\s+$Zg\\s+":"")."(.*)~is",$i,$C);$o=array();preg_match_all("~$Ue\\s*,?~is",$C[1],$Jd,PREG_SET_ORDER);foreach($Jd 
as$Le)$o[]=array("field"=>str_replace("``","`",$Le[2]).$Le[3],"type"=>strtolower($Le[5]),"length"=>preg_replace_callback("~$bc~s",'normalize_enum',$Le[6]),"unsigned"=>strtolower(preg_replace('~\s+~',' ',trim("$Le[8] $Le[7]"))),"null"=>1,"full_type"=>$Le[4],"inout"=>strtoupper($Le[1]),"collation"=>strtolower($Le[9]),);if($U!="FUNCTION")return 
array("fields"=>$o,"definition"=>$C[11]);return 
array("fields"=>$o,"returns"=>array("type"=>$C[12],"length"=>$C[13],"unsigned"=>$C[15],"collation"=>$C[16]),"definition"=>$C[17],"language"=>"SQL",);}function 
routines(){return 
get_rows("SELECT ROUTINE_NAME AS SPECIFIC_NAME, ROUTINE_NAME, ROUTINE_TYPE, DTD_IDENTIFIER FROM information_schema.ROUTINES WHERE ROUTINE_SCHEMA = ".q(DB));}function 
routine_languages(){return 
array();}function 
routine_id($E,$L){return 
idf_escape($E);}function 
last_id(){global$g;return$g->result("SELECT LAST_INSERT_ID()");}function 
explain($g,$I){return$g->query("EXPLAIN ".(min_version(5.1)&&!min_version(5.7)?"PARTITIONS ":"").$I);}function 
found_rows($R,$Z){return($Z||$R["Engine"]!="InnoDB"?null:$R["Rows"]);}function 
types(){return 
array();}function 
schemas(){return 
array();}function 
get_schema(){return"";}function 
set_schema($Kf,$h=null){return 
true;}function 
create_sql($Q,$ya,$ng){global$g;$K=$g->result("SHOW CREATE TABLE ".table($Q),1);if(!$ya)$K=preg_replace('~ AUTO_INCREMENT=\d+~','',$K);return$K;}function 
truncate_sql($Q){return"TRUNCATE ".table($Q);}function 
use_sql($ub){return"USE ".idf_escape($ub);}function 
trigger_sql($Q){$K="";foreach(get_rows("SHOW TRIGGERS LIKE ".q(addcslashes($Q,"%_\\")),null,"-- ")as$L)$K.="\nCREATE TRIGGER ".idf_escape($L["Trigger"])." $L[Timing] $L[Event] ON ".table($L["Table"])." FOR EACH ROW\n$L[Statement];;\n";return$K;}function 
show_variables(){return 
get_key_vals("SHOW VARIABLES");}function 
process_list(){return 
get_rows("SHOW FULL PROCESSLIST");}function 
show_status(){return 
get_key_vals("SHOW STATUS");}function 
convert_field($n){if(preg_match("~binary~",$n["type"]))return"HEX(".idf_escape($n["field"]).")";if($n["type"]=="bit")return"BIN(".idf_escape($n["field"])." + 0)";if(preg_match("~geometry|point|linestring|polygon~",$n["type"]))return(min_version(8)?"ST_":"")."AsWKT(".idf_escape($n["field"]).")";}function 
unconvert_field($n,$K){if(preg_match("~binary~",$n["type"]))$K="UNHEX($K)";if($n["type"]=="bit")$K="CONV($K, 2, 10) + 0";if(preg_match("~geometry|point|linestring|polygon~",$n["type"]))$K=(min_version(8)?"ST_":"")."GeomFromText($K, SRID($n[field]))";return$K;}function 
support($sc){return!preg_match("~scheme|sequence|type|view_trigger|materializedview".(min_version(8)?"":"|descidx".(min_version(5.1)?"":"|event|partitioning".(min_version(5)?"":"|routine|trigger|view")))."~",$sc);}function 
kill_process($X){return 
queries("KILL ".number($X));}function 
connection_id(){return"SELECT CONNECTION_ID()";}function 
max_connections(){global$g;return$g->result("SELECT @@max_connections");}function 
driver_config(){$ah=array();$mg=array();foreach(array(lang(69)=>array("tinyint"=>3,"smallint"=>5,"mediumint"=>8,"int"=>10,"bigint"=>20,"decimal"=>66,"float"=>12,"double"=>21),lang(70)=>array("date"=>10,"datetime"=>19,"timestamp"=>19,"time"=>10,"year"=>4),lang(68)=>array("char"=>255,"varchar"=>65535,"tinytext"=>255,"text"=>65535,"mediumtext"=>16777215,"longtext"=>4294967295),lang(71)=>array("enum"=>65535,"set"=>64),lang(72)=>array("bit"=>20,"binary"=>255,"varbinary"=>65535,"tinyblob"=>255,"blob"=>65535,"mediumblob"=>16777215,"longblob"=>4294967295),lang(73)=>array("geometry"=>0,"point"=>0,"linestring"=>0,"polygon"=>0,"multipoint"=>0,"multilinestring"=>0,"multipolygon"=>0,"geometrycollection"=>0),)as$z=>$X){$ah+=$X;$mg[$z]=array_keys($X);}return 
array('possible_drivers'=>array("MySQLi","MySQL","PDO_MySQL"),'jush'=>"sql",'types'=>$ah,'structured_types'=>$mg,'unsigned'=>array("unsigned","zerofill","unsigned zerofill"),'operators'=>array("=","<",">","<=",">=","!=","LIKE","LIKE %%","REGEXP","IN","FIND_IN_SET","IS NULL","NOT LIKE","NOT REGEXP","NOT IN","IS NOT NULL","SQL"),'functions'=>array("char_length","date","from_unixtime","lower","round","floor","ceil","sec_to_time","time_to_sec","upper"),'grouping'=>array("avg","count","count distinct","group_concat","max","min","sum"),'edit_functions'=>array(array("char"=>"md5/sha1/password/encrypt/uuid","binary"=>"md5/sha1","date|time"=>"now",),array(number_type()=>"+/-","date"=>"+ interval/- interval","time"=>"addtime/subtime","char|text"=>"concat",)),);}}$eb=driver_config();$cf=$eb['possible_drivers'];$y=$eb['jush'];$ah=$eb['types'];$mg=$eb['structured_types'];$hh=$eb['unsigned'];$ve=$eb['operators'];$Gc=$eb['functions'];$Lc=$eb['grouping'];$Rb=$eb['edit_functions'];if($c->operators===null)$c->operators=$ve;define("SERVER",$_GET[DRIVER]);define("DB",$_GET["db"]);define("ME",preg_replace('~\?.*~','',relative_uri()).'?'.(sid()?SID.'&':'').(SERVER!==null?DRIVER."=".urlencode(SERVER).'&':'').(isset($_GET["username"])?"username=".urlencode($_GET["username"]).'&':'').(DB!=""?'db='.urlencode(DB).'&'.(isset($_GET["ns"])?"ns=".urlencode($_GET["ns"])."&":""):''));$fa="4.8.1";function 
page_header($Jg,$m="",$Ha=array(),$Kg=""){global$a,$fa,$c,$Kb,$y;page_headers();if(is_ajax()&&$m){page_messages($m);exit;}$Lg=$Jg.($Kg!=""?": $Kg":"");$Mg=strip_tags($Lg.(SERVER!=""&&SERVER!="localhost"?h(" - ".SERVER):"")." - ".$c->name());echo'<!DOCTYPE html> 
<html lang="',$a,'" dir="',lang(74),'"> 
<meta http-equiv="Content-Type" content="text/html; charset=utf-8"> 
<meta name="robots" content="noindex"> 
<title>',$Mg,'</title> 
<link rel="stylesheet" type="text/css" href="',h(preg_replace("~\\?.*~","",ME)."?file=default.css&version=4.8.1"),'"> 
',script_src(preg_replace("~\\?.*~","",ME)."?file=functions.js&version=4.8.1");if($c->head()){echo'<link rel="shortcut icon" type="image/x-icon" href="',h(preg_replace("~\\?.*~","",ME)."?file=favicon.ico&version=4.8.1"),'"> 
<link rel="apple-touch-icon" href="',h(preg_replace("~\\?.*~","",ME)."?file=favicon.ico&version=4.8.1"),'"> 
';foreach($c->css()as$pb){echo'<link rel="stylesheet" type="text/css" href="',h($pb),'"> 
';}}echo' 
<body class="',lang(74),' nojs"> 
';$vc=get_temp_dir()."/adminer.version";if(!$_COOKIE["adminer_version"]&&function_exists('openssl_verify')&&file_exists($vc)&&filemtime($vc)+86400>time()){$uh=unserialize(file_get_contents($vc));$mf="-----BEGIN PUBLIC KEY----- 
MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAwqWOVuF5uw7/+Z70djoK 
RlHIZFZPO0uYRezq90+7Amk+FDNd7KkL5eDve+vHRJBLAszF/7XKXe11xwliIsFs 
DFWQlsABVZB3oisKCBEuI71J4kPH8dKGEWR9jDHFw3cWmoH3PmqImX6FISWbG3B8 
h7FIx3jEaw5ckVPVTeo5JRm/1DZzJxjyDenXvBQ/6o9DgZKeNDgxwKzH+sw9/YCO 
jHnq1cFpOIISzARlrHMa/43YfeNRAm/tsBXjSxembBPo7aQZLAWHmaj5+K19H10B 
nCpz9Y++cipkVEiKRGih4ZEvjoFysEOdRLj6WiD/uUNky4xGeA6LaJqh5XpkFkcQ 
fQIDAQAB 
-----END PUBLIC KEY----- 
";if(openssl_verify($uh["version"],base64_decode($uh["signature"]),$mf)==1)$_COOKIE["adminer_version"]=$uh["version"];}echo'<script',nonce(),'> 
mixin(document.body, {onkeydown: bodyKeydown, onclick: bodyClick',(isset($_COOKIE["adminer_version"])?"":", onload: partial(verifyVersion, '$fa', '".js_escape(ME)."', '".get_token()."')");?>}); 
document.body.className = document.body.className.replace(/ nojs/, ' js'); 
var offlineMessage = '<?php echo 
js_escape(lang(75)),'\'; 
var thousandsSeparator = \'',js_escape(lang(5)),'\'; 
</script> 
 
<div id="help" class="jush-',$y,' jsonly hidden"></div> 
',script("mixin(qs('#help'), {onmouseover: function () { helpOpen = 1; }, onmouseout: helpMouseout});"),' 
<div id="content"> 
';if($Ha!==null){$A=substr(preg_replace('~\b(username|db|ns)=[^&]*&~','',ME),0,-1);echo'<p id="breadcrumb"><a href="'.h($A?$A:".").'">'.$Kb[DRIVER].'</a> &raquo; ';$A=substr(preg_replace('~\b(db|ns)=[^&]*&~','',ME),0,-1);$O=$c->serverName(SERVER);$O=($O!=""?$O:lang(23));if($Ha===false)echo"$O\n";else{echo"<a href='".h($A)."' accesskey='1' title='Alt+Shift+1'>$O</a> &raquo; ";if($_GET["ns"]!=""||(DB!=""&&is_array($Ha)))echo'<a href="'.h($A."&db=".urlencode(DB).(support("scheme")?"&ns=":"")).'">'.h(DB).'</a> &raquo; ';if(is_array($Ha)){if($_GET["ns"]!="")echo'<a href="'.h(substr(ME,0,-1)).'">'.h($_GET["ns"]).'</a> &raquo; ';foreach($Ha 
as$z=>$X){$Db=(is_array($X)?$X[1]:h($X));if($Db!="")echo"<a href='".h(ME."$z=").urlencode(is_array($X)?$X[0]:$X)."'>$Db</a> &raquo; ";}}echo"$Jg\n";}}echo"<h2>$Lg</h2>\n","<div id='ajaxstatus' class='jsonly hidden'></div>\n";restart_session();page_messages($m);$j=&get_session("dbs");if(DB!=""&&$j&&!in_array(DB,$j,true))$j=null;stop_session();define("PAGE_HEADER",1);}function 
page_headers(){global$c;header("Content-Type: text/html; charset=utf-8");header("Cache-Control: no-cache");header("X-Frame-Options: deny");header("X-XSS-Protection: 0");header("X-Content-Type-Options: nosniff");header("Referrer-Policy: origin-when-cross-origin");foreach($c->csp()as$ob){$Rc=array();foreach($ob 
as$z=>$X)$Rc[]="$z $X";header("Content-Security-Policy: ".implode("; ",$Rc));}$c->headers();}function 
csp(){return 
array(array("script-src"=>"'self' 'unsafe-inline' 'nonce-".get_nonce()."' 'strict-dynamic'","connect-src"=>"'self'","frame-src"=>"https://www.adminer.org","object-src"=>"'none'","base-uri"=>"'none'","form-action"=>"'self'",),);}function 
get_nonce(){static$fe;if(!$fe)$fe=base64_encode(rand_string());return$fe;}function 
page_messages($m){$jh=preg_replace('~^[^?]*~','',$_SERVER["REQUEST_URI"]);$Ud=$_SESSION["messages"][$jh];if($Ud){echo"<div class='message'>".implode("</div>\n<div class='message'>",$Ud)."</div>".script("messagesPrint();");unset($_SESSION["messages"][$jh]);}if($m)echo"<div class='error'>$m</div>\n";}function 
page_footer($Wd=""){global$c,$T;echo'</div> 
 
';switch_lang();if($Wd!="auth"){echo'<form action="" method="post"> 
<p class="logout"> 
<input type="submit" name="logout" value="',lang(76),'" id="logout"> 
<input type="hidden" name="token" value="',$T,'"> 
</p> 
</form> 
';}echo'<div id="menu"> 
';$c->navigation($Wd);echo'</div> 
',script("setupSubmitHighlight(document);");}function 
int32($Zd){while($Zd>=2147483648)$Zd-=4294967296;while($Zd<=-2147483649)$Zd+=4294967296;return(int)$Zd;}function 
long2str($W,$yh){$If='';foreach($W 
as$X)$If.=pack('V',$X);if($yh)return 
substr($If,0,end($W));return$If;}function 
str2long($If,$yh){$W=array_values(unpack('V*',str_pad($If,4*ceil(strlen($If)/4),"\0")));if($yh)$W[]=strlen($If);return$W;}function 
xxtea_mx($Eh,$Dh,$qg,$od){return 
int32((($Eh>>5&0x7FFFFFF)^$Dh<<2)+(($Dh>>3&0x1FFFFFFF)^$Eh<<4))^int32(($qg^$Dh)+($od^$Eh));}function 
encrypt_string($kg,$z){if($kg=="")return"";$z=array_values(unpack("V*",pack("H*",md5($z))));$W=str2long($kg,true);$Zd=count($W)-1;$Eh=$W[$Zd];$Dh=$W[0];$H=floor(6+52/($Zd+1));$qg=0;while($H-->0){$qg=int32($qg+0x9E3779B9);$Qb=$qg>>2&3;for($Je=0;$Je<$Zd;$Je++){$Dh=$W[$Je+1];$Yd=xxtea_mx($Eh,$Dh,$qg,$z[$Je&3^$Qb]);$Eh=int32($W[$Je]+$Yd);$W[$Je]=$Eh;}$Dh=$W[0];$Yd=xxtea_mx($Eh,$Dh,$qg,$z[$Je&3^$Qb]);$Eh=int32($W[$Zd]+$Yd);$W[$Zd]=$Eh;}return 
long2str($W,false);}function 
decrypt_string($kg,$z){if($kg=="")return"";if(!$z)return 
false;$z=array_values(unpack("V*",pack("H*",md5($z))));$W=str2long($kg,false);$Zd=count($W)-1;$Eh=$W[$Zd];$Dh=$W[0];$H=floor(6+52/($Zd+1));$qg=int32($H*0x9E3779B9);while($qg){$Qb=$qg>>2&3;for($Je=$Zd;$Je>0;$Je--){$Eh=$W[$Je-1];$Yd=xxtea_mx($Eh,$Dh,$qg,$z[$Je&3^$Qb]);$Dh=int32($W[$Je]-$Yd);$W[$Je]=$Dh;}$Eh=$W[$Zd];$Yd=xxtea_mx($Eh,$Dh,$qg,$z[$Je&3^$Qb]);$Dh=int32($W[0]-$Yd);$W[0]=$Dh;$qg=int32($qg-0x9E3779B9);}return 
long2str($W,true);}$g='';$Qc=$_SESSION["token"];if(!$Qc)$_SESSION["token"]=rand(1,1e6);$T=get_token();$We=array();if($_COOKIE["adminer_permanent"]){foreach(explode(" ",$_COOKIE["adminer_permanent"])as$X){list($z)=explode(":",$X);$We[$z]=$X;}}function 
add_invalid_login(){global$c;$q=file_open_lock(get_temp_dir()."/adminer.invalid");if(!$q)return;$id=unserialize(stream_get_contents($q));$Gg=time();if($id){foreach($id 
as$jd=>$X){if($X[0]<$Gg)unset($id[$jd]);}}$hd=&$id[$c->bruteForceKey()];if(!$hd)$hd=array($Gg+30*60,0);$hd[1]++;file_write_unlock($q,serialize($id));}function 
check_invalid_login(){global$c;$id=unserialize(@file_get_contents(get_temp_dir()."/adminer.invalid"));$hd=($id?$id[$c->bruteForceKey()]:array());$ee=($hd[1]>29?$hd[0]-time():0);if($ee>0)auth_error(lang(77,ceil($ee/60)));}$xa=$_POST["auth"];if($xa){session_regenerate_id();$th=$xa["driver"];$O=$xa["server"];$V=$xa["username"];$G=(string)$xa["password"];$k=$xa["db"];set_password($th,$O,$V,$G);$_SESSION["db"][$th][$O][$V][$k]=true;if($xa["permanent"]){$z=base64_encode($th)."-".base64_encode($O)."-".base64_encode($V)."-".base64_encode($k);$hf=$c->permanentLogin(true);$We[$z]="$z:".base64_encode($hf?encrypt_string($G,$hf):"");cookie("adminer_permanent",implode(" ",$We));}if(count($_POST)==1||DRIVER!=$th||SERVER!=$O||$_GET["username"]!==$V||DB!=$k)redirect(auth_url($th,$O,$V,$k));}elseif($_POST["logout"]&&(!$Qc||verify_token())){foreach(array("pwds","db","dbs","queries")as$z)set_session($z,null);unset_permanent();redirect(substr(preg_replace('~\b(username|db|ns)=[^&]*&~','',ME),0,-1),lang(78).' '.lang(79));}elseif($We&&!$_SESSION["pwds"]){session_regenerate_id();$hf=$c->permanentLogin();foreach($We 
as$z=>$X){list(,$Qa)=explode(":",$X);list($th,$O,$V,$k)=array_map('base64_decode',explode("-",$z));set_password($th,$O,$V,decrypt_string(base64_decode($Qa),$hf));$_SESSION["db"][$th][$O][$V][$k]=true;}}function 
unset_permanent(){global$We;foreach($We 
as$z=>$X){list($th,$O,$V,$k)=array_map('base64_decode',explode("-",$z));if($th==DRIVER&&$O==SERVER&&$V==$_GET["username"]&&$k==DB)unset($We[$z]);}cookie("adminer_permanent",implode(" ",$We));}function 
auth_error($m){global$c,$Qc;$Uf=session_name();if(isset($_GET["username"])){header("HTTP/1.1 403 Forbidden");if(($_COOKIE[$Uf]||$_GET[$Uf])&&!$Qc)$m=lang(80);else{restart_session();add_invalid_login();$G=get_password();if($G!==null){if($G===false)$m.=($m?'<br>':'').lang(81,target_blank(),'<code>permanentLogin()</code>');set_password(DRIVER,SERVER,$_GET["username"],null);}unset_permanent();}}if(!$_COOKIE[$Uf]&&$_GET[$Uf]&&ini_bool("session.use_only_cookies"))$m=lang(82);$Me=session_get_cookie_params();cookie("adminer_key",($_COOKIE["adminer_key"]?$_COOKIE["adminer_key"]:rand_string()),$Me["lifetime"]);page_header(lang(27),$m,null);echo"<form action='' method='post'>\n","<div>";if(hidden_fields($_POST,array("auth")))echo"<p class='message'>".lang(83)."\n";echo"</div>\n";$c->loginForm();echo"</form>\n";page_footer("auth");exit;}if(isset($_GET["username"])&&!class_exists("Min_DB")){unset($_SESSION["pwds"][DRIVER]);unset_permanent();page_header(lang(84),lang(85,implode(", ",$cf)),false);page_footer("auth");exit;}stop_session(true);if(isset($_GET["username"])&&is_string(get_password())){list($Vc,$Ye)=explode(":",SERVER,2);if(preg_match('~^\s*([-+]?\d+)~',$Ye,$C)&&($C[1]<1024||$C[1]>65535))auth_error(lang(86));check_invalid_login();$g=connect();$l=new 
Min_Driver($g);}$Fd=null;if(!is_object($g)||($Fd=$c->login($_GET["username"],get_password()))!==true){$m=(is_string($g)?h($g):(is_string($Fd)?$Fd:lang(87)));auth_error($m.(preg_match('~^ | $~',get_password())?'<br>'.lang(88):''));}if($_POST["logout"]&&$Qc&&!verify_token()){page_header(lang(76),lang(89));page_footer("db");exit;}if($xa&&$_POST["token"])$_POST["token"]=$T;$m='';if($_POST){if(!verify_token()){$cd="max_input_vars";$Pd=ini_get($cd);if(extension_loaded("suhosin")){foreach(array("suhosin.request.max_vars","suhosin.post.max_vars")as$z){$X=ini_get($z);if($X&&(!$Pd||$X<$Pd)){$cd=$z;$Pd=$X;}}}$m=(!$_POST["token"]&&$Pd?lang(90,"'$cd'"):lang(89).' '.lang(91));}}elseif($_SERVER["REQUEST_METHOD"]=="POST"){$m=lang(92,"'post_max_size'");if(isset($_GET["sql"]))$m.=' '.lang(93);}function 
select($J,$h=null,$Be=array(),$_=0){global$y;$Ed=array();$x=array();$e=array();$Fa=array();$ah=array();$K=array();odd('');for($t=0;(!$_||$t<$_)&&($L=$J->fetch_row());$t++){if(!$t){echo"<div class='scrollable'>\n","<table cellspacing='0' class='nowrap'>\n","<thead><tr>";for($nd=0;$nd<count($L);$nd++){$n=$J->fetch_field();$E=$n->name;$Ae=$n->orgtable;$_e=$n->orgname;$K[$n->table]=$Ae;if($Be&&$y=="sql")$Ed[$nd]=($E=="table"?"table=":($E=="possible_keys"?"indexes=":null));elseif($Ae!=""){if(!isset($x[$Ae])){$x[$Ae]=array();foreach(indexes($Ae,$h)as$w){if($w["type"]=="PRIMARY"){$x[$Ae]=array_flip($w["columns"]);break;}}$e[$Ae]=$x[$Ae];}if(isset($e[$Ae][$_e])){unset($e[$Ae][$_e]);$x[$Ae][$_e]=$nd;$Ed[$nd]=$Ae;}}if($n->charsetnr==63)$Fa[$nd]=true;$ah[$nd]=$n->type;echo"<th".($Ae!=""||$n->name!=$_e?" title='".h(($Ae!=""?"$Ae.":"").$_e)."'":"").">".h($E).($Be?doc_link(array('sql'=>"explain-output.html#explain_".strtolower($E),'mariadb'=>"explain/#the-columns-in-explain-select",)):"");}echo"</thead>\n";}echo"<tr".odd().">";foreach($L 
as$z=>$X){$A="";if(isset($Ed[$z])&&!$e[$Ed[$z]]){if($Be&&$y=="sql"){$Q=$L[array_search("table=",$Ed)];$A=ME.$Ed[$z].urlencode($Be[$Q]!=""?$Be[$Q]:$Q);}else{$A=ME."edit=".urlencode($Ed[$z]);foreach($x[$Ed[$z]]as$Ua=>$nd)$A.="&where".urlencode("[".bracket_escape($Ua)."]")."=".urlencode($L[$nd]);}}elseif(is_url($X))$A=$X;if($X===null)$X="<i>NULL</i>";elseif($Fa[$z]&&!is_utf8($X))$X="<i>".lang(36,strlen($X))."</i>";else{$X=h($X);if($ah[$z]==254)$X="<code>$X</code>";}if($A)$X="<a href='".h($A)."'".(is_url($A)?target_blank():'').">$X</a>";echo"<td>$X";}}echo($t?"</table>\n</div>":"<p class='message'>".lang(12))."\n";return$K;}function 
referencable_primary($Pf){$K=array();foreach(table_status('',true)as$ug=>$Q){if($ug!=$Pf&&fk_support($Q)){foreach(fields($ug)as$n){if($n["primary"]){if($K[$ug]){unset($K[$ug]);break;}$K[$ug]=$n;}}}}return$K;}function 
adminer_settings(){parse_str($_COOKIE["adminer_settings"],$Wf);return$Wf;}function 
adminer_setting($z){$Wf=adminer_settings();return$Wf[$z];}function 
set_adminer_settings($Wf){return 
cookie("adminer_settings",http_build_query($Wf+adminer_settings()));}function 
textarea($E,$Y,$M=10,$Ya=80){global$y;echo"<textarea name='$E' rows='$M' cols='$Ya' class='sqlarea jush-$y' spellcheck='false' wrap='off'>";if(is_array($Y)){foreach($Y 
as$X)echo 
h($X[0])."\n\n\n";}else 
echo 
h($Y);echo"</textarea>";}function 
edit_type($z,$n,$Xa,$Bc=array(),$pc=array()){global$mg,$ah,$hh,$re;$U=$n["type"];echo'<td><select name="',h($z),'[type]" class="type" aria-labelledby="label-type">';if($U&&!isset($ah[$U])&&!isset($Bc[$U])&&!in_array($U,$pc))$pc[]=$U;if($Bc)$mg[lang(94)]=$Bc;echo 
optionlist(array_merge($pc,$mg),$U),'</select><td><input name="',h($z),'[length]" value="',h($n["length"]),'" size="3"',(!$n["length"]&&preg_match('~var(char|binary)$~',$U)?" class='required'":"");echo' aria-labelledby="label-length"><td class="options">',"<select name='".h($z)."[collation]'".(preg_match('~(char|text|enum|set)$~',$U)?"":" class='hidden'").'><option value="">('.lang(95).')'.optionlist($Xa,$n["collation"]).'</select>',($hh?"<select name='".h($z)."[unsigned]'".(!$U||preg_match(number_type(),$U)?"":" class='hidden'").'><option>'.optionlist($hh,$n["unsigned"]).'</select>':''),(isset($n['on_update'])?"<select name='".h($z)."[on_update]'".(preg_match('~timestamp|datetime~',$U)?"":" class='hidden'").'>'.optionlist(array(""=>"(".lang(96).")","CURRENT_TIMESTAMP"),(preg_match('~^CURRENT_TIMESTAMP~i',$n["on_update"])?"CURRENT_TIMESTAMP":$n["on_update"])).'</select>':''),($Bc?"<select name='".h($z)."[on_delete]'".(preg_match("~`~",$U)?"":" class='hidden'")."><option value=''>(".lang(97).")".optionlist(explode("|",$re),$n["on_delete"])."</select> ":" ");}function 
process_length($Bd){global$bc;return(preg_match("~^\\s*\\(?\\s*$bc(?:\\s*,\\s*$bc)*+\\s*\\)?\\s*\$~",$Bd)&&preg_match_all("~$bc~",$Bd,$Jd)?"(".implode(",",$Jd[0]).")":preg_replace('~^[0-9].*~','(\0)',preg_replace('~[^-0-9,+()[\]]~','',$Bd)));}function 
process_type($n,$Va="COLLATE"){global$hh;return" $n[type]".process_length($n["length"]).(preg_match(number_type(),$n["type"])&&in_array($n["unsigned"],$hh)?" $n[unsigned]":"").(preg_match('~char|text|enum|set~',$n["type"])&&$n["collation"]?" $Va ".q($n["collation"]):"");}function 
process_field($n,$Yg){return 
array(idf_escape(trim($n["field"])),process_type($Yg),($n["null"]?" NULL":" NOT NULL"),default_value($n),(preg_match('~timestamp|datetime~',$n["type"])&&$n["on_update"]?" ON UPDATE $n[on_update]":""),(support("comment")&&$n["comment"]!=""?" COMMENT ".q($n["comment"]):""),($n["auto_increment"]?auto_increment():null),);}function 
default_value($n){$zb=$n["default"];return($zb===null?"":" DEFAULT ".(preg_match('~char|binary|text|enum|set~',$n["type"])||preg_match('~^(?![a-z])~i',$zb)?q($zb):$zb));}function 
type_class($U){foreach(array('char'=>'text','date'=>'time|year','binary'=>'blob','enum'=>'set',)as$z=>$X){if(preg_match("~$z|$X~",$U))return" class='$z'";}}function 
edit_fields($o,$Xa,$U="TABLE",$Bc=array()){global$dd;$o=array_values($o);$_b=(($_POST?$_POST["defaults"]:adminer_setting("defaults"))?"":" class='hidden'");$cb=(($_POST?$_POST["comments"]:adminer_setting("comments"))?"":" class='hidden'");echo'<thead><tr> 
';if($U=="PROCEDURE"){echo'<td>';}echo'<th id="label-name">',($U=="TABLE"?lang(98):lang(99)),'<td id="label-type">',lang(38),'<textarea id="enum-edit" rows="4" cols="12" wrap="off" style="display: none;"></textarea>',script("qs('#enum-edit').onblur = editingLengthBlur;"),'<td id="label-length">',lang(100),'<td>',lang(101);if($U=="TABLE"){echo'<td id="label-null">NULL 
<td><input type="radio" name="auto_increment_col" value=""><acronym id="label-ai" title="',lang(40),'">AI</acronym>',doc_link(array('sql'=>"example-auto-increment.html",'mariadb'=>"auto_increment/",)),'<td id="label-default"',$_b,'>',lang(41),(support("comment")?"<td id='label-comment'$cb>".lang(39):"");}echo'<td>',"<input type='image' class='icon' name='add[".(support("move_col")?0:count($o))."]' src='".h(preg_replace("~\\?.*~","",ME)."?file=plus.gif&version=4.8.1")."' alt='+' title='".lang(102)."'>".script("row_count = ".count($o).";"),'</thead> 
<tbody> 
',script("mixin(qsl('tbody'), {onclick: editingClick, onkeydown: editingKeydown, oninput: editingInput});");foreach($o 
as$t=>$n){$t++;$Ce=$n[($_POST?"orig":"field")];$Hb=(isset($_POST["add"][$t-1])||(isset($n["field"])&&!$_POST["drop_col"][$t]))&&(support("drop_col")||$Ce=="");echo'<tr',($Hb?"":" style='display: none;'"),'> 
',($U=="PROCEDURE"?"<td>".html_select("fields[$t][inout]",explode("|",$dd),$n["inout"]):""),'<th>';if($Hb){echo'<input name="fields[',$t,'][field]" value="',h($n["field"]),'" data-maxlength="64" autocapitalize="off" aria-labelledby="label-name">';}echo'<input type="hidden" name="fields[',$t,'][orig]" value="',h($Ce),'">';edit_type("fields[$t]",$n,$Xa,$Bc);if($U=="TABLE"){echo'<td>',checkbox("fields[$t][null]",1,$n["null"],"","","block","label-null"),'<td><label class="block"><input type="radio" name="auto_increment_col" value="',$t,'"';if($n["auto_increment"]){echo' checked';}echo' aria-labelledby="label-ai"></label><td',$_b,'>',checkbox("fields[$t][has_default]",1,$n["has_default"],"","","","label-default"),'<input name="fields[',$t,'][default]" value="',h($n["default"]),'" aria-labelledby="label-default">',(support("comment")?"<td$cb><input name='fields[$t][comment]' value='".h($n["comment"])."' data-maxlength='".(min_version(5.5)?1024:255)."' aria-labelledby='label-comment'>":"");}echo"<td>",(support("move_col")?"<input type='image' class='icon' name='add[$t]' src='".h(preg_replace("~\\?.*~","",ME)."?file=plus.gif&version=4.8.1")."' alt='+' title='".lang(102)."'> "."<input type='image' class='icon' name='up[$t]' src='".h(preg_replace("~\\?.*~","",ME)."?file=up.gif&version=4.8.1")."' alt='' title='".lang(103)."'> "."<input type='image' class='icon' name='down[$t]' src='".h(preg_replace("~\\?.*~","",ME)."?file=down.gif&version=4.8.1")."' alt='' title='".lang(104)."'> ":""),($Ce==""||support("drop_col")?"<input type='image' class='icon' name='drop_col[$t]' src='".h(preg_replace("~\\?.*~","",ME)."?file=cross.gif&version=4.8.1")."' alt='x' title='".lang(105)."'>":"");}}function 
process_fields(&$o){$ke=0;if($_POST["up"]){$wd=0;foreach($o 
as$z=>$n){if(key($_POST["up"])==$z){unset($o[$z]);array_splice($o,$wd,0,array($n));break;}if(isset($n["field"]))$wd=$ke;$ke++;}}elseif($_POST["down"]){$Dc=false;foreach($o 
as$z=>$n){if(isset($n["field"])&&$Dc){unset($o[key($_POST["down"])]);array_splice($o,$ke,0,array($Dc));break;}if(key($_POST["down"])==$z)$Dc=$n;$ke++;}}elseif($_POST["add"]){$o=array_values($o);array_splice($o,key($_POST["add"]),0,array(array()));}elseif(!$_POST["drop_col"])return 
false;return 
true;}function 
normalize_enum($C){return"'".str_replace("'","''",addcslashes(stripcslashes(str_replace($C[0][0].$C[0][0],$C[0][0],substr($C[0],1,-1))),'\\'))."'";}function 
grant($Hc,$jf,$e,$qe){if(!$jf)return 
true;if($jf==array("ALL PRIVILEGES","GRANT OPTION"))return($Hc=="GRANT"?queries("$Hc ALL PRIVILEGES$qe WITH GRANT OPTION"):queries("$Hc ALL PRIVILEGES$qe")&&queries("$Hc GRANT OPTION$qe"));return 
queries("$Hc ".preg_replace('~(GRANT OPTION)\([^)]*\)~','\1',implode("$e, ",$jf).$e).$qe);}function 
drop_create($Lb,$i,$Mb,$Dg,$Nb,$B,$Td,$Rd,$Sd,$ne,$ce){if($_POST["drop"])query_redirect($Lb,$B,$Td);elseif($ne=="")query_redirect($i,$B,$Sd);elseif($ne!=$ce){$mb=queries($i);queries_redirect($B,$Rd,$mb&&queries($Lb));if($mb)queries($Mb);}else 
queries_redirect($B,$Rd,queries($Dg)&&queries($Nb)&&queries($Lb)&&queries($i));}function 
create_trigger($qe,$L){global$y;$Ig=" $L[Timing] $L[Event]".(preg_match('~ OF~',$L["Event"])?" $L[Of]":"");return"CREATE TRIGGER ".idf_escape($L["Trigger"]).($y=="mssql"?$qe.$Ig:$Ig.$qe).rtrim(" $L[Type]\n$L[Statement]",";").";";}function 
create_routine($Ff,$L){global$dd,$y;$P=array();$o=(array)$L["fields"];ksort($o);foreach($o 
as$n){if($n["field"]!="")$P[]=(preg_match("~^($dd)\$~",$n["inout"])?"$n[inout] ":"").idf_escape($n["field"]).process_type($n,"CHARACTER SET");}$Ab=rtrim("\n$L[definition]",";");return"CREATE $Ff ".idf_escape(trim($L["name"]))." (".implode(", ",$P).")".(isset($_GET["function"])?" RETURNS".process_type($L["returns"],"CHARACTER SET"):"").($L["language"]?" LANGUAGE $L[language]":"").($y=="pgsql"?" AS ".q($Ab):"$Ab;");}function 
remove_definer($I){return 
preg_replace('~^([A-Z =]+) DEFINER=`'.preg_replace('~@(.*)~','`@`(%|\1)',logged_user()).'`~','\1',$I);}function 
format_foreign_key($p){global$re;$k=$p["db"];$ge=$p["ns"];return" FOREIGN KEY (".implode(", ",array_map('idf_escape',$p["source"])).") REFERENCES ".($k!=""&&$k!=$_GET["db"]?idf_escape($k).".":"").($ge!=""&&$ge!=$_GET["ns"]?idf_escape($ge).".":"").table($p["table"])." (".implode(", ",array_map('idf_escape',$p["target"])).")".(preg_match("~^($re)\$~",$p["on_delete"])?" ON DELETE $p[on_delete]":"").(preg_match("~^($re)\$~",$p["on_update"])?" ON UPDATE $p[on_update]":"");}function 
tar_file($vc,$Ng){$K=pack("a100a8a8a8a12a12",$vc,644,0,0,decoct($Ng->size),decoct(time()));$Pa=8*32;for($t=0;$t<strlen($K);$t++)$Pa+=ord($K[$t]);$K.=sprintf("%06o",$Pa)."\0 ";echo$K,str_repeat("\0",512-strlen($K));$Ng->send();echo 
str_repeat("\0",511-($Ng->size+511)%512);}function 
ini_bytes($cd){$X=ini_get($cd);switch(strtolower(substr($X,-1))){case'g':$X*=1024;case'm':$X*=1024;case'k':$X*=1024;}return$X;}function 
doc_link($Te,$Eg="<sup>?</sup>"){global$y,$g;$Sf=$g->server_info;$uh=preg_replace('~^(\d\.?\d).*~s','\1',$Sf);$lh=array('sql'=>"https://dev.mysql.com/doc/refman/$uh/en/",'sqlite'=>"https://www.sqlite.org/",'pgsql'=>"https://www.postgresql.org/docs/$uh/",'mssql'=>"https://msdn.microsoft.com/library/",'oracle'=>"https://www.oracle.com/pls/topic/lookup?ctx=db".preg_replace('~^.* (\d+)\.(\d+)\.\d+\.\d+\.\d+.*~s','\1\2',$Sf)."&id=",);if(preg_match('~MariaDB~',$Sf)){$lh['sql']="https://mariadb.com/kb/en/library/";$Te['sql']=(isset($Te['mariadb'])?$Te['mariadb']:str_replace(".html","/",$Te['sql']));}return($Te[$y]?"<a href='".h($lh[$y].$Te[$y])."'".target_blank().">$Eg</a>":"");}function 
ob_gzencode($lg){return 
gzencode($lg);}function 
db_size($k){global$g;if(!$g->select_db($k))return"?";$K=0;foreach(table_status()as$R)$K+=$R["Data_length"]+$R["Index_length"];return 
format_number($K);}function 
set_utf8mb4($i){global$g;static$P=false;if(!$P&&preg_match('~\butf8mb4~i',$i)){$P=true;echo"SET NAMES ".charset($g).";\n\n";}}function 
connect_error(){global$c,$g,$T,$m,$Kb;if(DB!=""){header("HTTP/1.1 404 Not Found");page_header(lang(26).": ".h(DB),lang(106),true);}else{if($_POST["db"]&&!$m)queries_redirect(substr(ME,0,-1),lang(107),drop_databases($_POST["db"]));page_header(lang(108),$m,false);echo"<p class='links'>\n";foreach(array('database'=>lang(109),'privileges'=>lang(60),'processlist'=>lang(110),'variables'=>lang(111),'status'=>lang(112),)as$z=>$X){if(support($z))echo"<a href='".h(ME)."$z='>$X</a>\n";}echo"<p>".lang(113,$Kb[DRIVER],"<b>".h($g->server_info)."</b>","<b>$g->extension</b>")."\n","<p>".lang(114,"<b>".h(logged_user())."</b>")."\n";$j=$c->databases();if($j){$Lf=support("scheme");$Xa=collations();echo"<form action='' method='post'>\n","<table cellspacing='0' class='checkable'>\n",script("mixin(qsl('table'), {onclick: tableClick, ondblclick: partialArg(tableClick, true)});"),"<thead><tr>".(support("database")?"<td>":"")."<th>".lang(26)." - <a href='".h(ME)."refresh=1'>".lang(115)."</a>"."<td>".lang(116)."<td>".lang(117)."<td>".lang(118)." - <a href='".h(ME)."dbsize=1'>".lang(119)."</a>".script("qsl('a').onclick = partial(ajaxSetHtml, '".js_escape(ME)."script=connect');","")."</thead>\n";$j=($_GET["dbsize"]?count_tables($j):array_flip($j));foreach($j 
as$k=>$S){$Ef=h(ME)."db=".urlencode($k);$u=h("Db-".$k);echo"<tr".odd().">".(support("database")?"<td>".checkbox("db[]",$k,in_array($k,(array)$_POST["db"]),"","","",$u):""),"<th><a href='$Ef' id='$u'>".h($k)."</a>";$Wa=h(db_collation($k,$Xa));echo"<td>".(support("database")?"<a href='$Ef".($Lf?"&amp;ns=":"")."&amp;database=' title='".lang(56)."'>$Wa</a>":$Wa),"<td align='right'><a href='$Ef&amp;schema=' id='tables-".h($k)."' title='".lang(59)."'>".($_GET["dbsize"]?$S:"?")."</a>","<td align='right' id='size-".h($k)."'>".($_GET["dbsize"]?db_size($k):"?"),"\n";}echo"</table>\n",(support("database")?"<div class='footer'><div>\n"."<fieldset><legend>".lang(120)." <span id='selected'></span></legend><div>\n"."<input type='hidden' name='all' value=''>".script("qsl('input').onclick = function () { selectCount('selected', formChecked(this, /^db/)); };")."<input type='submit' name='drop' value='".lang(121)."'>".confirm()."\n"."</div></fieldset>\n"."</div></div>\n":""),"<input type='hidden' name='token' value='$T'>\n","</form>\n",script("tableCheck();");}}page_footer("db");}if(isset($_GET["status"]))$_GET["variables"]=$_GET["status"];if(isset($_GET["import"]))$_GET["sql"]=$_GET["import"];if(!(DB!=""?$g->select_db(DB):isset($_GET["sql"])||isset($_GET["dump"])||isset($_GET["database"])||isset($_GET["processlist"])||isset($_GET["privileges"])||isset($_GET["user"])||isset($_GET["variables"])||$_GET["script"]=="connect"||$_GET["script"]=="kill")){if(DB!=""||$_GET["refresh"]){restart_session();set_session("dbs",null);}connect_error();exit;}$re="RESTRICT|NO ACTION|CASCADE|SET NULL|SET DEFAULT";class 
TmpFile{var$handler;var$size;function 
__construct(){$this->handler=tmpfile();}function 
write($hb){$this->size+=strlen($hb);fwrite($this->handler,$hb);}function 
send(){fseek($this->handler,0);fpassthru($this->handler);fclose($this->handler);}}$bc="'(?:''|[^'\\\\]|\\\\.)*'";$dd="IN|OUT|INOUT";if(isset($_GET["select"])&&($_POST["edit"]||$_POST["clone"])&&!$_POST["save"])$_GET["edit"]=$_GET["select"];if(isset($_GET["callf"]))$_GET["call"]=$_GET["callf"];if(isset($_GET["function"]))$_GET["procedure"]=$_GET["function"];if(isset($_GET["download"])){$b=$_GET["download"];$o=fields($b);header("Content-Type: application/octet-stream");header("Content-Disposition: attachment; filename=".friendly_url("$b-".implode("_",$_GET["where"])).".".friendly_url($_GET["field"]));$N=array(idf_escape($_GET["field"]));$J=$l->select($b,$N,array(where($_GET,$o)),$N);$L=($J?$J->fetch_row():array());echo$l->value($L[0],$o[$_GET["field"]]);exit;}elseif(isset($_GET["table"])){$b=$_GET["table"];$o=fields($b);if(!$o)$m=error();$R=table_status1($b,true);$E=$c->tableName($R);page_header(($o&&is_view($R)?$R['Engine']=='materialized view'?lang(122):lang(123):lang(124)).": ".($E!=""?$E:h($b)),$m);$c->selectLinks($R);$bb=$R["Comment"];if($bb!="")echo"<p class='nowrap'>".lang(39).": ".h($bb)."\n";if($o)$c->tableStructurePrint($o);if(!is_view($R)){if(support("indexes")){echo"<h3 id='indexes'>".lang(125)."</h3>\n";$x=indexes($b);if($x)$c->tableIndexesPrint($x);echo'<p class="links"><a href="'.h(ME).'indexes='.urlencode($b).'">'.lang(126)."</a>\n";}if(fk_support($R)){echo"<h3 id='foreign-keys'>".lang(94)."</h3>\n";$Bc=foreign_keys($b);if($Bc){echo"<table cellspacing='0'>\n","<thead><tr><th>".lang(127)."<td>".lang(128)."<td>".lang(97)."<td>".lang(96)."<td></thead>\n";foreach($Bc 
as$E=>$p){echo"<tr title='".h($E)."'>","<th><i>".implode("</i>, <i>",array_map('h',$p["source"]))."</i>","<td><a href='".h($p["db"]!=""?preg_replace('~db=[^&]*~',"db=".urlencode($p["db"]),ME):($p["ns"]!=""?preg_replace('~ns=[^&]*~',"ns=".urlencode($p["ns"]),ME):ME))."table=".urlencode($p["table"])."'>".($p["db"]!=""?"<b>".h($p["db"])."</b>.":"").($p["ns"]!=""?"<b>".h($p["ns"])."</b>.":"").h($p["table"])."</a>","(<i>".implode("</i>, <i>",array_map('h',$p["target"]))."</i>)","<td>".h($p["on_delete"])."\n","<td>".h($p["on_update"])."\n",'<td><a href="'.h(ME.'foreign='.urlencode($b).'&name='.urlencode($E)).'">'.lang(129).'</a>';}echo"</table>\n";}echo'<p class="links"><a href="'.h(ME).'foreign='.urlencode($b).'">'.lang(130)."</a>\n";}}if(support(is_view($R)?"view_trigger":"trigger")){echo"<h3 id='triggers'>".lang(131)."</h3>\n";$Xg=triggers($b);if($Xg){echo"<table cellspacing='0'>\n";foreach($Xg 
as$z=>$X)echo"<tr valign='top'><td>".h($X[0])."<td>".h($X[1])."<th>".h($z)."<td><a href='".h(ME.'trigger='.urlencode($b).'&name='.urlencode($z))."'>".lang(129)."</a>\n";echo"</table>\n";}echo'<p class="links"><a href="'.h(ME).'trigger='.urlencode($b).'">'.lang(132)."</a>\n";}}elseif(isset($_GET["schema"])){page_header(lang(59),"",array(),h(DB.($_GET["ns"]?".$_GET[ns]":"")));$vg=array();$wg=array();$da=($_GET["schema"]?$_GET["schema"]:$_COOKIE["adminer_schema-".str_replace(".","_",DB)]);preg_match_all('~([^:]+):([-0-9.]+)x([-0-9.]+)(_|$)~',$da,$Jd,PREG_SET_ORDER);foreach($Jd 
as$t=>$C){$vg[$C[1]]=array($C[2],$C[3]);$wg[]="\n\t'".js_escape($C[1])."': [ $C[2], $C[3] ]";}$Pg=0;$Ca=-1;$Kf=array();$wf=array();$_d=array();foreach(table_status('',true)as$Q=>$R){if(is_view($R))continue;$Ze=0;$Kf[$Q]["fields"]=array();foreach(fields($Q)as$E=>$n){$Ze+=1.25;$n["pos"]=$Ze;$Kf[$Q]["fields"][$E]=$n;}$Kf[$Q]["pos"]=($vg[$Q]?$vg[$Q]:array($Pg,0));foreach($c->foreignKeys($Q)as$X){if(!$X["db"]){$yd=$Ca;if($vg[$Q][1]||$vg[$X["table"]][1])$yd=min(floatval($vg[$Q][1]),floatval($vg[$X["table"]][1]))-1;else$Ca-=.1;while($_d[(string)$yd])$yd-=.0001;$Kf[$Q]["references"][$X["table"]][(string)$yd]=array($X["source"],$X["target"]);$wf[$X["table"]][$Q][(string)$yd]=$X["target"];$_d[(string)$yd]=true;}}$Pg=max($Pg,$Kf[$Q]["pos"][0]+2.5+$Ze);}echo'<div id="schema" style="height: ',$Pg,'em;"> 
<script',nonce(),'> 
qs(\'#schema\').onselectstart = function () { return false; }; 
var tablePos = {',implode(",",$wg)."\n",'}; 
var em = qs(\'#schema\').offsetHeight / ',$Pg,'; 
document.onmousemove = schemaMousemove; 
document.onmouseup = partialArg(schemaMouseup, \'',js_escape(DB),'\'); 
</script> 
';foreach($Kf 
as$E=>$Q){echo"<div class='table' style='top: ".$Q["pos"][0]."em; left: ".$Q["pos"][1]."em;'>",'<a href="'.h(ME).'table='.urlencode($E).'"><b>'.h($E)."</b></a>",script("qsl('div').onmousedown = schemaMousedown;");foreach($Q["fields"]as$n){$X='<span'.type_class($n["type"]).' title="'.h($n["full_type"].($n["null"]?" NULL":'')).'">'.h($n["field"]).'</span>';echo"<br>".($n["primary"]?"<i>$X</i>":$X);}foreach((array)$Q["references"]as$Bg=>$xf){foreach($xf 
as$yd=>$tf){$zd=$yd-$vg[$E][1];$t=0;foreach($tf[0]as$bg)echo"\n<div class='references' title='".h($Bg)."' id='refs$yd-".($t++)."' style='left: $zd"."em; top: ".$Q["fields"][$bg]["pos"]."em; padding-top: .5em;'><div style='border-top: 1px solid Gray; width: ".(-$zd)."em;'></div></div>";}}foreach((array)$wf[$E]as$Bg=>$xf){foreach($xf 
as$yd=>$e){$zd=$yd-$vg[$E][1];$t=0;foreach($e 
as$Ag)echo"\n<div class='references' title='".h($Bg)."' id='refd$yd-".($t++)."' style='left: $zd"."em; top: ".$Q["fields"][$Ag]["pos"]."em; height: 1.25em; background: url(".h(preg_replace("~\\?.*~","",ME)."?file=arrow.gif) no-repeat right center;&version=4.8.1")."'><div style='height: .5em; border-bottom: 1px solid Gray; width: ".(-$zd)."em;'></div></div>";}}echo"\n</div>\n";}foreach($Kf 
as$E=>$Q){foreach((array)$Q["references"]as$Bg=>$xf){foreach($xf 
as$yd=>$tf){$Vd=$Pg;$Nd=-10;foreach($tf[0]as$z=>$bg){$af=$Q["pos"][0]+$Q["fields"][$bg]["pos"];$bf=$Kf[$Bg]["pos"][0]+$Kf[$Bg]["fields"][$tf[1][$z]]["pos"];$Vd=min($Vd,$af,$bf);$Nd=max($Nd,$af,$bf);}echo"<div class='references' id='refl$yd' style='left: $yd"."em; top: $Vd"."em; padding: .5em 0;'><div style='border-right: 1px solid Gray; margin-top: 1px; height: ".($Nd-$Vd)."em;'></div></div>\n";}}}echo'</div> 
<p class="links"><a href="',h(ME."schema=".urlencode($da)),'" id="schema-link">',lang(133),'</a> 
';}elseif(isset($_GET["dump"])){$b=$_GET["dump"];if($_POST&&!$m){$kb="";foreach(array("output","format","db_style","routines","events","table_style","auto_increment","triggers","data_style")as$z)$kb.="&$z=".urlencode($_POST[$z]);cookie("adminer_export",substr($kb,1));$S=array_flip((array)$_POST["tables"])+array_flip((array)$_POST["data"]);$nc=dump_headers((count($S)==1?key($S):DB),(DB==""||count($S)>1));$ld=preg_match('~sql~',$_POST["format"]);if($ld){echo"-- Adminer $fa ".$Kb[DRIVER]." ".str_replace("\n"," ",$g->server_info)." dump\n\n";if($y=="sql"){echo"SET NAMES utf8; 
SET time_zone = '+00:00'; 
SET foreign_key_checks = 0; 
".($_POST["data_style"]?"SET sql_mode = 'NO_AUTO_VALUE_ON_ZERO'; 
":"")." 
";$g->query("SET time_zone = '+00:00'");$g->query("SET sql_mode = ''");}}$ng=$_POST["db_style"];$j=array(DB);if(DB==""){$j=$_POST["databases"];if(is_string($j))$j=explode("\n",rtrim(str_replace("\r","",$j),"\n"));}foreach((array)$j 
as$k){$c->dumpDatabase($k);if($g->select_db($k)){if($ld&&preg_match('~CREATE~',$ng)&&($i=$g->result("SHOW CREATE DATABASE ".idf_escape($k),1))){set_utf8mb4($i);if($ng=="DROP+CREATE")echo"DROP DATABASE IF EXISTS ".idf_escape($k).";\n";echo"$i;\n";}if($ld){if($ng)echo 
use_sql($k).";\n\n";$He="";if($_POST["routines"]){foreach(array("FUNCTION","PROCEDURE")as$Ff){foreach(get_rows("SHOW $Ff STATUS WHERE Db = ".q($k),null,"-- ")as$L){$i=remove_definer($g->result("SHOW CREATE $Ff ".idf_escape($L["Name"]),2));set_utf8mb4($i);$He.=($ng!='DROP+CREATE'?"DROP $Ff IF EXISTS ".idf_escape($L["Name"]).";;\n":"")."$i;;\n\n";}}}if($_POST["events"]){foreach(get_rows("SHOW EVENTS",null,"-- ")as$L){$i=remove_definer($g->result("SHOW CREATE EVENT ".idf_escape($L["Name"]),3));set_utf8mb4($i);$He.=($ng!='DROP+CREATE'?"DROP EVENT IF EXISTS ".idf_escape($L["Name"]).";;\n":"")."$i;;\n\n";}}if($He)echo"DELIMITER ;;\n\n$He"."DELIMITER ;\n\n";}if($_POST["table_style"]||$_POST["data_style"]){$wh=array();foreach(table_status('',true)as$E=>$R){$Q=(DB==""||in_array($E,(array)$_POST["tables"]));$sb=(DB==""||in_array($E,(array)$_POST["data"]));if($Q||$sb){if($nc=="tar"){$Ng=new 
TmpFile;ob_start(array($Ng,'write'),1e5);}$c->dumpTable($E,($Q?$_POST["table_style"]:""),(is_view($R)?2:0));if(is_view($R))$wh[]=$E;elseif($sb){$o=fields($E);$c->dumpData($E,$_POST["data_style"],"SELECT *".convert_fields($o,$o)." FROM ".table($E));}if($ld&&$_POST["triggers"]&&$Q&&($Xg=trigger_sql($E)))echo"\nDELIMITER ;;\n$Xg\nDELIMITER ;\n";if($nc=="tar"){ob_end_flush();tar_file((DB!=""?"":"$k/")."$E.csv",$Ng);}elseif($ld)echo"\n";}}if(function_exists('foreign_keys_sql')){foreach(table_status('',true)as$E=>$R){$Q=(DB==""||in_array($E,(array)$_POST["tables"]));if($Q&&!is_view($R))echo 
foreign_keys_sql($E);}}foreach($wh 
as$vh)$c->dumpTable($vh,$_POST["table_style"],1);if($nc=="tar")echo 
pack("x512");}}}if($ld)echo"-- ".$g->result("SELECT NOW()")."\n";exit;}page_header(lang(62),$m,($_GET["export"]!=""?array("table"=>$_GET["export"]):array()),h(DB));echo' 
<form action="" method="post"> 
<table cellspacing="0" class="layout"> 
';$wb=array('','USE','DROP+CREATE','CREATE');$xg=array('','DROP+CREATE','CREATE');$tb=array('','TRUNCATE+INSERT','INSERT');if($y=="sql")$tb[]='INSERT+UPDATE';parse_str($_COOKIE["adminer_export"],$L);if(!$L)$L=array("output"=>"text","format"=>"sql","db_style"=>(DB!=""?"":"CREATE"),"table_style"=>"DROP+CREATE","data_style"=>"INSERT");if(!isset($L["events"])){$L["routines"]=$L["events"]=($_GET["dump"]=="");$L["triggers"]=$L["table_style"];}echo"<tr><th>".lang(134)."<td>".html_select("output",$c->dumpOutput(),$L["output"],0)."\n";echo"<tr><th>".lang(135)."<td>".html_select("format",$c->dumpFormat(),$L["format"],0)."\n";echo($y=="sqlite"?"":"<tr><th>".lang(26)."<td>".html_select('db_style',$wb,$L["db_style"]).(support("routine")?checkbox("routines",1,$L["routines"],lang(136)):"").(support("event")?checkbox("events",1,$L["events"],lang(137)):"")),"<tr><th>".lang(117)."<td>".html_select('table_style',$xg,$L["table_style"]).checkbox("auto_increment",1,$L["auto_increment"],lang(40)).(support("trigger")?checkbox("triggers",1,$L["triggers"],lang(131)):""),"<tr><th>".lang(138)."<td>".html_select('data_style',$tb,$L["data_style"]),'</table> 
<p><input type="submit" value="',lang(62),'"> 
<input type="hidden" name="token" value="',$T,'"> 
 
<table cellspacing="0"> 
',script("qsl('table').onclick = dumpClick;");$ef=array();if(DB!=""){$Na=($b!=""?"":" checked");echo"<thead><tr>","<th style='text-align: left;'><label class='block'><input type='checkbox' id='check-tables'$Na>".lang(117)."</label>".script("qs('#check-tables').onclick = partial(formCheck, /^tables\\[/);",""),"<th style='text-align: right;'><label class='block'>".lang(138)."<input type='checkbox' id='check-data'$Na></label>".script("qs('#check-data').onclick = partial(formCheck, /^data\\[/);",""),"</thead>\n";$wh="";$yg=tables_list();foreach($yg 
as$E=>$U){$df=preg_replace('~_.*~','',$E);$Na=($b==""||$b==(substr($b,-1)=="%"?"$df%":$E));$gf="<tr><td>".checkbox("tables[]",$E,$Na,$E,"","block");if($U!==null&&!preg_match('~table~i',$U))$wh.="$gf\n";else 
echo"$gf<td align='right'><label class='block'><span id='Rows-".h($E)."'></span>".checkbox("data[]",$E,$Na)."</label>\n";$ef[$df]++;}echo$wh;if($yg)echo 
script("ajaxSetHtml('".js_escape(ME)."script=db');");}else{echo"<thead><tr><th style='text-align: left;'>","<label class='block'><input type='checkbox' id='check-databases'".($b==""?" checked":"").">".lang(26)."</label>",script("qs('#check-databases').onclick = partial(formCheck, /^databases\\[/);",""),"</thead>\n";$j=$c->databases();if($j){foreach($j 
as$k){if(!information_schema($k)){$df=preg_replace('~_.*~','',$k);echo"<tr><td>".checkbox("databases[]",$k,$b==""||$b=="$df%",$k,"","block")."\n";$ef[$df]++;}}}else 
echo"<tr><td><textarea name='databases' rows='10' cols='20'></textarea>";}echo'</table> 
</form> 
';$xc=true;foreach($ef 
as$z=>$X){if($z!=""&&$X>1){echo($xc?"<p>":" ")."<a href='".h(ME)."dump=".urlencode("$z%")."'>".h($z)."</a>";$xc=false;}}}elseif(isset($_GET["privileges"])){page_header(lang(60));echo'<p class="links"><a href="'.h(ME).'user=">'.lang(139)."</a>";$J=$g->query("SELECT User, Host FROM mysql.".(DB==""?"user":"db WHERE ".q(DB)." LIKE Db")." ORDER BY Host, User");$Hc=$J;if(!$J)$J=$g->query("SELECT SUBSTRING_INDEX(CURRENT_USER, '@', 1) AS User, SUBSTRING_INDEX(CURRENT_USER, '@', -1) AS Host");echo"<form action=''><p>\n";hidden_fields_get();echo"<input type='hidden' name='db' value='".h(DB)."'>\n",($Hc?"":"<input type='hidden' name='grant' value=''>\n"),"<table cellspacing='0'>\n","<thead><tr><th>".lang(24)."<th>".lang(23)."<th></thead>\n";while($L=$J->fetch_assoc())echo'<tr'.odd().'><td>'.h($L["User"])."<td>".h($L["Host"]).'<td><a href="'.h(ME.'user='.urlencode($L["User"]).'&host='.urlencode($L["Host"])).'">'.lang(10)."</a>\n";if(!$Hc||DB!="")echo"<tr".odd()."><td><input name='user' autocapitalize='off'><td><input name='host' value='localhost' autocapitalize='off'><td><input type='submit' value='".lang(10)."'>\n";echo"</table>\n","</form>\n";}elseif(isset($_GET["sql"])){if(!$m&&$_POST["export"]){dump_headers("sql");$c->dumpTable("","");$c->dumpData("","table",$_POST["query"]);exit;}restart_session();$Uc=&get_session("queries");$Tc=&$Uc[DB];if(!$m&&$_POST["clear"]){$Tc=array();redirect(remove_from_uri("history"));}page_header((isset($_GET["import"])?lang(61):lang(53)),$m);if(!$m&&$_POST){$q=false;if(!isset($_GET["import"]))$I=$_POST["query"];elseif($_POST["webfile"]){$eg=$c->importServerPath();$q=@fopen((file_exists($eg)?$eg:"compress.zlib://$eg.gz"),"rb");$I=($q?fread($q,1e6):false);}else$I=get_file("sql_file",true);if(is_string($I)){if(function_exists('memory_get_usage'))@ini_set("memory_limit",max(ini_bytes("memory_limit"),2*strlen($I)+memory_get_usage()+8e6));if($I!=""&&strlen($I)<1e6){$H=$I.(preg_match("~;[ \t\r\n]*\$~",$I)?"":";");if(!$Tc||reset(end($Tc))!=$H){restart_session();$Tc[]=array($H,time());set_session("queries",$Uc);stop_session();}}$cg="(?:\\s|/\\*[\s\S]*?\\*/|(?:#|-- )[^\n]*\n?|--\r?\n)";$Cb=";";$ke=0;$Yb=true;$h=connect();if(is_object($h)&&DB!=""){$h->select_db(DB);if($_GET["ns"]!="")set_schema($_GET["ns"],$h);}$ab=0;$dc=array();$Ne='[\'"'.($y=="sql"?'`#':($y=="sqlite"?'`[':($y=="mssql"?'[':''))).']|/\*|-- |$'.($y=="pgsql"?'|\$[^$]*\$':'');$Qg=microtime(true);parse_str($_COOKIE["adminer_export"],$la);$Pb=$c->dumpFormat();unset($Pb["sql"]);while($I!=""){if(!$ke&&preg_match("~^$cg*+DELIMITER\\s+(\\S+)~i",$I,$C)){$Cb=$C[1];$I=substr($I,strlen($C[0]));}else{preg_match('('.preg_quote($Cb)."\\s*|$Ne)",$I,$C,PREG_OFFSET_CAPTURE,$ke);list($Dc,$Ze)=$C[0];if(!$Dc&&$q&&!feof($q))$I.=fread($q,1e5);else{if(!$Dc&&rtrim($I)=="")break;$ke=$Ze+strlen($Dc);if($Dc&&rtrim($Dc)!=$Cb){while(preg_match('('.($Dc=='/*'?'\*/':($Dc=='['?']':(preg_match('~^-- |^#~',$Dc)?"\n":preg_quote($Dc)."|\\\\."))).'|$)s',$I,$C,PREG_OFFSET_CAPTURE,$ke)){$If=$C[0][0];if(!$If&&$q&&!feof($q))$I.=fread($q,1e5);else{$ke=$C[0][1]+strlen($If);if($If[0]!="\\")break;}}}else{$Yb=false;$H=substr($I,0,$Ze);$ab++;$gf="<pre id='sql-$ab'><code class='jush-$y'>".$c->sqlCommandQuery($H)."</code></pre>\n";if($y=="sqlite"&&preg_match("~^$cg*+ATTACH\\b~i",$H,$C)){echo$gf,"<p class='error'>".lang(140)."\n";$dc[]=" <a href='#sql-$ab'>$ab</a>";if($_POST["error_stops"])break;}else{if(!$_POST["only_errors"]){echo$gf;ob_flush();flush();}$hg=microtime(true);if($g->multi_query($H)&&is_object($h)&&preg_match("~^$cg*+USE\\b~i",$H))$h->query($H);do{$J=$g->store_result();if($g->error){echo($_POST["only_errors"]?$gf:""),"<p class='error'>".lang(141).($g->errno?" ($g->errno)":"").": ".error()."\n";$dc[]=" <a href='#sql-$ab'>$ab</a>";if($_POST["error_stops"])break 
2;}else{$Gg=" <span class='time'>(".format_time($hg).")</span>".(strlen($H)<1000?" <a href='".h(ME)."sql=".urlencode(trim($H))."'>".lang(10)."</a>":"");$na=$g->affected_rows;$zh=($_POST["only_errors"]?"":$l->warnings());$_h="warnings-$ab";if($zh)$Gg.=", <a href='#$_h'>".lang(35)."</a>".script("qsl('a').onclick = partial(toggle, '$_h');","");$lc=null;$mc="explain-$ab";if(is_object($J)){$_=$_POST["limit"];$Be=select($J,$h,array(),$_);if(!$_POST["only_errors"]){echo"<form action='' method='post'>\n";$he=$J->num_rows;echo"<p>".($he?($_&&$he>$_?lang(142,$_):"").lang(143,$he):""),$Gg;if($h&&preg_match("~^($cg|\\()*+SELECT\\b~i",$H)&&($lc=explain($h,$H)))echo", <a href='#$mc'>Explain</a>".script("qsl('a').onclick = partial(toggle, '$mc');","");$u="export-$ab";echo", <a href='#$u'>".lang(62)."</a>".script("qsl('a').onclick = partial(toggle, '$u');","")."<span id='$u' class='hidden'>: ".html_select("output",$c->dumpOutput(),$la["output"])." ".html_select("format",$Pb,$la["format"])."<input type='hidden' name='query' value='".h($H)."'>"." <input type='submit' name='export' value='".lang(62)."'><input type='hidden' name='token' value='$T'></span>\n"."</form>\n";}}else{if(preg_match("~^$cg*+(CREATE|DROP|ALTER)$cg++(DATABASE|SCHEMA)\\b~i",$H)){restart_session();set_session("dbs",null);stop_session();}if(!$_POST["only_errors"])echo"<p class='message' title='".h($g->info)."'>".lang(144,$na)."$Gg\n";}echo($zh?"<div id='$_h' class='hidden'>\n$zh</div>\n":"");if($lc){echo"<div id='$mc' class='hidden'>\n";select($lc,$h,$Be);echo"</div>\n";}}$hg=microtime(true);}while($g->next_result());}$I=substr($I,$ke);$ke=0;}}}}if($Yb)echo"<p class='message'>".lang(145)."\n";elseif($_POST["only_errors"]){echo"<p class='message'>".lang(146,$ab-count($dc))," <span class='time'>(".format_time($Qg).")</span>\n";}elseif($dc&&$ab>1)echo"<p class='error'>".lang(141).": ".implode("",$dc)."\n";}else 
echo"<p class='error'>".upload_error($I)."\n";}echo' 
<form action="" method="post" enctype="multipart/form-data" id="form"> 
';$jc="<input type='submit' value='".lang(147)."' title='Ctrl+Enter'>";if(!isset($_GET["import"])){$H=$_GET["sql"];if($_POST)$H=$_POST["query"];elseif($_GET["history"]=="all")$H=$Tc;elseif($_GET["history"]!="")$H=$Tc[$_GET["history"]][0];echo"<p>";textarea("query",$H,20);echo 
script(($_POST?"":"qs('textarea').focus();\n")."qs('#form').onsubmit = partial(sqlSubmit, qs('#form'), '".js_escape(remove_from_uri("sql|limit|error_stops|only_errors|history"))."');"),"<p>$jc\n",lang(148).": <input type='number' name='limit' class='size' value='".h($_POST?$_POST["limit"]:$_GET["limit"])."'>\n";}else{echo"<fieldset><legend>".lang(149)."</legend><div>";$Mc=(extension_loaded("zlib")?"[.gz]":"");echo(ini_bool("file_uploads")?"SQL$Mc (&lt; ".ini_get("upload_max_filesize")."B): <input type='file' name='sql_file[]' multiple>\n$jc":lang(150)),"</div></fieldset>\n";$Zc=$c->importServerPath();if($Zc){echo"<fieldset><legend>".lang(151)."</legend><div>",lang(152,"<code>".h($Zc)."$Mc</code>"),' <input type="submit" name="webfile" value="'.lang(153).'">',"</div></fieldset>\n";}echo"<p>";}echo 
checkbox("error_stops",1,($_POST?$_POST["error_stops"]:isset($_GET["import"])||$_GET["error_stops"]),lang(154))."\n",checkbox("only_errors",1,($_POST?$_POST["only_errors"]:isset($_GET["import"])||$_GET["only_errors"]),lang(155))."\n","<input type='hidden' name='token' value='$T'>\n";if(!isset($_GET["import"])&&$Tc){print_fieldset("history",lang(156),$_GET["history"]!="");for($X=end($Tc);$X;$X=prev($Tc)){$z=key($Tc);list($H,$Gg,$Tb)=$X;echo'<a href="'.h(ME."sql=&history=$z").'">'.lang(10)."</a>"." <span class='time' title='".@date('Y-m-d',$Gg)."'>".@date("H:i:s",$Gg)."</span>"." <code class='jush-$y'>".shorten_utf8(ltrim(str_replace("\n"," ",str_replace("\r","",preg_replace('~^(#|-- ).*~m','',$H)))),80,"</code>").($Tb?" <span class='time'>($Tb)</span>":"")."<br>\n";}echo"<input type='submit' name='clear' value='".lang(157)."'>\n","<a href='".h(ME."sql=&history=all")."'>".lang(158)."</a>\n","</div></fieldset>\n";}echo'</form> 
';}elseif(isset($_GET["edit"])){$b=$_GET["edit"];$o=fields($b);$Z=(isset($_GET["select"])?($_POST["check"]&&count($_POST["check"])==1?where_check($_POST["check"][0],$o):""):where($_GET,$o));$ih=(isset($_GET["select"])?$_POST["edit"]:$Z);foreach($o 
as$E=>$n){if(!isset($n["privileges"][$ih?"update":"insert"])||$c->fieldName($n)==""||$n["generated"])unset($o[$E]);}if($_POST&&!$m&&!isset($_GET["select"])){$B=$_POST["referer"];if($_POST["insert"])$B=($ih?null:$_SERVER["REQUEST_URI"]);elseif(!preg_match('~^.+&select=.+$~',$B))$B=ME."select=".urlencode($b);$x=indexes($b);$dh=unique_array($_GET["where"],$x);$pf="\nWHERE $Z";if(isset($_POST["delete"]))queries_redirect($B,lang(159),$l->delete($b,$pf,!$dh));else{$P=array();foreach($o 
as$E=>$n){$X=process_input($n);if($X!==false&&$X!==null)$P[idf_escape($E)]=$X;}if($ih){if(!$P)redirect($B);queries_redirect($B,lang(160),$l->update($b,$P,$pf,!$dh));if(is_ajax()){page_headers();page_messages($m);exit;}}else{$J=$l->insert($b,$P);$xd=($J?last_id():0);queries_redirect($B,lang(161,($xd?" $xd":"")),$J);}}}$L=null;if($_POST["save"])$L=(array)$_POST["fields"];elseif($Z){$N=array();foreach($o 
as$E=>$n){if(isset($n["privileges"]["select"])){$ua=convert_field($n);if($_POST["clone"]&&$n["auto_increment"])$ua="''";if($y=="sql"&&preg_match("~enum|set~",$n["type"]))$ua="1*".idf_escape($E);$N[]=($ua?"$ua AS ":"").idf_escape($E);}}$L=array();if(!support("table"))$N=array("*");if($N){$J=$l->select($b,$N,array($Z),$N,array(),(isset($_GET["select"])?2:1));if(!$J)$m=error();else{$L=$J->fetch_assoc();if(!$L)$L=false;}if(isset($_GET["select"])&&(!$L||$J->fetch_assoc()))$L=null;}}if(!support("table")&&!$o){if(!$Z){$J=$l->select($b,array("*"),$Z,array("*"));$L=($J?$J->fetch_assoc():false);if(!$L)$L=array($l->primary=>"");}if($L){foreach($L 
as$z=>$X){if(!$Z)$L[$z]=null;$o[$z]=array("field"=>$z,"null"=>($z!=$l->primary),"auto_increment"=>($z==$l->primary));}}}edit_form($b,$o,$L,$ih);}elseif(isset($_GET["create"])){$b=$_GET["create"];$Oe=array();foreach(array('HASH','LINEAR HASH','KEY','LINEAR KEY','RANGE','LIST')as$z)$Oe[$z]=$z;$vf=referencable_primary($b);$Bc=array();foreach($vf 
as$ug=>$n)$Bc[str_replace("`","``",$ug)."`".str_replace("`","``",$n["field"])]=$ug;$Ee=array();$R=array();if($b!=""){$Ee=fields($b);$R=table_status($b);if(!$R)$m=lang(9);}$L=$_POST;$L["fields"]=(array)$L["fields"];if($L["auto_increment_col"])$L["fields"][$L["auto_increment_col"]]["auto_increment"]=true;if($_POST)set_adminer_settings(array("comments"=>$_POST["comments"],"defaults"=>$_POST["defaults"]));if($_POST&&!process_fields($L["fields"])&&!$m){if($_POST["drop"])queries_redirect(substr(ME,0,-1),lang(162),drop_tables(array($b)));else{$o=array();$ra=array();$mh=false;$_c=array();$De=reset($Ee);$pa=" FIRST";foreach($L["fields"]as$z=>$n){$p=$Bc[$n["type"]];$Yg=($p!==null?$vf[$p]:$n);if($n["field"]!=""){if(!$n["has_default"])$n["default"]=null;if($z==$L["auto_increment_col"])$n["auto_increment"]=true;$lf=process_field($n,$Yg);$ra[]=array($n["orig"],$lf,$pa);if(!$De||$lf!=process_field($De,$De)){$o[]=array($n["orig"],$lf,$pa);if($n["orig"]!=""||$pa)$mh=true;}if($p!==null)$_c[idf_escape($n["field"])]=($b!=""&&$y!="sqlite"?"ADD":" ").format_foreign_key(array('table'=>$Bc[$n["type"]],'source'=>array($n["field"]),'target'=>array($Yg["field"]),'on_delete'=>$n["on_delete"],));$pa=" AFTER ".idf_escape($n["field"]);}elseif($n["orig"]!=""){$mh=true;$o[]=array($n["orig"]);}if($n["orig"]!=""){$De=next($Ee);if(!$De)$pa="";}}$Qe="";if($Oe[$L["partition_by"]]){$Re=array();if($L["partition_by"]=='RANGE'||$L["partition_by"]=='LIST'){foreach(array_filter($L["partition_names"])as$z=>$X){$Y=$L["partition_values"][$z];$Re[]="\n  PARTITION ".idf_escape($X)." VALUES ".($L["partition_by"]=='RANGE'?"LESS THAN":"IN").($Y!=""?" ($Y)":" MAXVALUE");}}$Qe.="\nPARTITION BY $L[partition_by]($L[partition])".($Re?" (".implode(",",$Re)."\n)":($L["partitions"]?" PARTITIONS ".(+$L["partitions"]):""));}elseif(support("partitioning")&&preg_match("~partitioned~",$R["Create_options"]))$Qe.="\nREMOVE PARTITIONING";$D=lang(163);if($b==""){cookie("adminer_engine",$L["Engine"]);$D=lang(164);}$E=trim($L["name"]);queries_redirect(ME.(support("table")?"table=":"select=").urlencode($E),$D,alter_table($b,$E,($y=="sqlite"&&($mh||$_c)?$ra:$o),$_c,($L["Comment"]!=$R["Comment"]?$L["Comment"]:null),($L["Engine"]&&$L["Engine"]!=$R["Engine"]?$L["Engine"]:""),($L["Collation"]&&$L["Collation"]!=$R["Collation"]?$L["Collation"]:""),($L["Auto_increment"]!=""?number($L["Auto_increment"]):""),$Qe));}}page_header(($b!=""?lang(33):lang(63)),$m,array("table"=>$b),h($b));if(!$_POST){$L=array("Engine"=>$_COOKIE["adminer_engine"],"fields"=>array(array("field"=>"","type"=>(isset($ah["int"])?"int":(isset($ah["integer"])?"integer":"")),"on_update"=>"")),"partition_names"=>array(""),);if($b!=""){$L=$R;$L["name"]=$b;$L["fields"]=array();if(!$_GET["auto_increment"])$L["Auto_increment"]="";foreach($Ee 
as$n){$n["has_default"]=isset($n["default"]);$L["fields"][]=$n;}if(support("partitioning")){$Fc="FROM information_schema.PARTITIONS WHERE TABLE_SCHEMA = ".q(DB)." AND TABLE_NAME = ".q($b);$J=$g->query("SELECT PARTITION_METHOD, PARTITION_ORDINAL_POSITION, PARTITION_EXPRESSION $Fc ORDER BY PARTITION_ORDINAL_POSITION DESC LIMIT 1");list($L["partition_by"],$L["partitions"],$L["partition"])=$J->fetch_row();$Re=get_key_vals("SELECT PARTITION_NAME, PARTITION_DESCRIPTION $Fc AND PARTITION_NAME != '' ORDER BY PARTITION_ORDINAL_POSITION");$Re[""]="";$L["partition_names"]=array_keys($Re);$L["partition_values"]=array_values($Re);}}}$Xa=collations();$ac=engines();foreach($ac 
as$Zb){if(!strcasecmp($Zb,$L["Engine"])){$L["Engine"]=$Zb;break;}}echo' 
<form action="" method="post" id="form"> 
<p> 
';if(support("columns")||$b==""){echo 
lang(165),': <input name="name" data-maxlength="64" value="',h($L["name"]),'" autocapitalize="off"> 
';if($b==""&&!$_POST)echo 
script("focus(qs('#form')['name']);");echo($ac?"<select name='Engine'>".optionlist(array(""=>"(".lang(166).")")+$ac,$L["Engine"])."</select>".on_help("getTarget(event).value",1).script("qsl('select').onchange = helpClose;"):""),' ',($Xa&&!preg_match("~sqlite|mssql~",$y)?html_select("Collation",array(""=>"(".lang(95).")")+$Xa,$L["Collation"]):""),' <input type="submit" value="',lang(14),'"> 
';}echo' 
';if(support("columns")){echo'<div class="scrollable"> 
<table cellspacing="0" id="edit-fields" class="nowrap"> 
';edit_fields($L["fields"],$Xa,"TABLE",$Bc);echo'</table> 
',script("editFields();"),'</div> 
<p> 
',lang(40),': <input type="number" name="Auto_increment" size="6" value="',h($L["Auto_increment"]),'"> 
',checkbox("defaults",1,($_POST?$_POST["defaults"]:adminer_setting("defaults")),lang(167),"columnShow(this.checked, 5)","jsonly"),(support("comment")?checkbox("comments",1,($_POST?$_POST["comments"]:adminer_setting("comments")),lang(39),"editingCommentsClick(this, true);","jsonly").' <input name="Comment" value="'.h($L["Comment"]).'" data-maxlength="'.(min_version(5.5)?2048:60).'">':''),'<p> 
<input type="submit" value="',lang(14),'"> 
';}echo' 
';if($b!=""){echo'<input type="submit" name="drop" value="',lang(121),'">',confirm(lang(168,$b));}if(support("partitioning")){$Pe=preg_match('~RANGE|LIST~',$L["partition_by"]);print_fieldset("partition",lang(169),$L["partition_by"]);echo'<p> 
',"<select name='partition_by'>".optionlist(array(""=>"")+$Oe,$L["partition_by"])."</select>".on_help("getTarget(event).value.replace(/./, 'PARTITION BY \$&')",1).script("qsl('select').onchange = partitionByChange;"),'(<input name="partition" value="',h($L["partition"]),'">) 
',lang(170),': <input type="number" name="partitions" class="size',($Pe||!$L["partition_by"]?" hidden":""),'" value="',h($L["partitions"]),'"> 
<table cellspacing="0" id="partition-table"',($Pe?"":" class='hidden'"),'> 
<thead><tr><th>',lang(171),'<th>',lang(172),'</thead> 
';foreach($L["partition_names"]as$z=>$X){echo'<tr>','<td><input name="partition_names[]" value="'.h($X).'" autocapitalize="off">',($z==count($L["partition_names"])-1?script("qsl('input').oninput = partitionNameChange;"):''),'<td><input name="partition_values[]" value="'.h($L["partition_values"][$z]).'">';}echo'</table> 
</div></fieldset> 
';}echo'<input type="hidden" name="token" value="',$T,'"> 
</form> 
';}elseif(isset($_GET["indexes"])){$b=$_GET["indexes"];$bd=array("PRIMARY","UNIQUE","INDEX");$R=table_status($b,true);if(preg_match('~MyISAM|M?aria'.(min_version(5.6,'10.0.5')?'|InnoDB':'').'~i',$R["Engine"]))$bd[]="FULLTEXT";if(preg_match('~MyISAM|M?aria'.(min_version(5.7,'10.2.2')?'|InnoDB':'').'~i',$R["Engine"]))$bd[]="SPATIAL";$x=indexes($b);$ff=array();if($y=="mongo"){$ff=$x["_id_"];unset($bd[0]);unset($x["_id_"]);}$L=$_POST;if($_POST&&!$m&&!$_POST["add"]&&!$_POST["drop_col"]){$sa=array();foreach($L["indexes"]as$w){$E=$w["name"];if(in_array($w["type"],$bd)){$e=array();$Cd=array();$Eb=array();$P=array();ksort($w["columns"]);foreach($w["columns"]as$z=>$d){if($d!=""){$Bd=$w["lengths"][$z];$Db=$w["descs"][$z];$P[]=idf_escape($d).($Bd?"(".(+$Bd).")":"").($Db?" DESC":"");$e[]=$d;$Cd[]=($Bd?$Bd:null);$Eb[]=$Db;}}if($e){$kc=$x[$E];if($kc){ksort($kc["columns"]);ksort($kc["lengths"]);ksort($kc["descs"]);if($w["type"]==$kc["type"]&&array_values($kc["columns"])===$e&&(!$kc["lengths"]||array_values($kc["lengths"])===$Cd)&&array_values($kc["descs"])===$Eb){unset($x[$E]);continue;}}$sa[]=array($w["type"],$E,$P);}}}foreach($x 
as$E=>$kc)$sa[]=array($kc["type"],$E,"DROP");if(!$sa)redirect(ME."table=".urlencode($b));queries_redirect(ME."table=".urlencode($b),lang(173),alter_indexes($b,$sa));}page_header(lang(125),$m,array("table"=>$b),h($b));$o=array_keys(fields($b));if($_POST["add"]){foreach($L["indexes"]as$z=>$w){if($w["columns"][count($w["columns"])]!="")$L["indexes"][$z]["columns"][]="";}$w=end($L["indexes"]);if($w["type"]||array_filter($w["columns"],'strlen'))$L["indexes"][]=array("columns"=>array(1=>""));}if(!$L){foreach($x 
as$z=>$w){$x[$z]["name"]=$z;$x[$z]["columns"][]="";}$x[]=array("columns"=>array(1=>""));$L["indexes"]=$x;}echo' 
<form action="" method="post"> 
<div class="scrollable"> 
<table cellspacing="0" class="nowrap"> 
<thead><tr> 
<th id="label-type">',lang(174),'<th><input type="submit" class="wayoff">',lang(175),'<th id="label-name">',lang(176),'<th><noscript>',"<input type='image' class='icon' name='add[0]' src='".h(preg_replace("~\\?.*~","",ME)."?file=plus.gif&version=4.8.1")."' alt='+' title='".lang(102)."'>",'</noscript> 
</thead> 
';if($ff){echo"<tr><td>PRIMARY<td>";foreach($ff["columns"]as$z=>$d){echo 
select_input(" disabled",$o,$d),"<label><input disabled type='checkbox'>".lang(48)."</label> ";}echo"<td><td>\n";}$nd=1;foreach($L["indexes"]as$w){if(!$_POST["drop_col"]||$nd!=key($_POST["drop_col"])){echo"<tr><td>".html_select("indexes[$nd][type]",array(-1=>"")+$bd,$w["type"],($nd==count($L["indexes"])?"indexesAddRow.call(this);":1),"label-type"),"<td>";ksort($w["columns"]);$t=1;foreach($w["columns"]as$z=>$d){echo"<span>".select_input(" name='indexes[$nd][columns][$t]' title='".lang(37)."'",($o?array_combine($o,$o):$o),$d,"partial(".($t==count($w["columns"])?"indexesAddColumn":"indexesChangeColumn").", '".js_escape($y=="sql"?"":$_GET["indexes"]."_")."')"),($y=="sql"||$y=="mssql"?"<input type='number' name='indexes[$nd][lengths][$t]' class='size' value='".h($w["lengths"][$z])."' title='".lang(100)."'>":""),(support("descidx")?checkbox("indexes[$nd][descs][$t]",1,$w["descs"][$z],lang(48)):"")," </span>";$t++;}echo"<td><input name='indexes[$nd][name]' value='".h($w["name"])."' autocapitalize='off' aria-labelledby='label-name'>\n","<td><input type='image' class='icon' name='drop_col[$nd]' src='".h(preg_replace("~\\?.*~","",ME)."?file=cross.gif&version=4.8.1")."' alt='x' title='".lang(105)."'>".script("qsl('input').onclick = partial(editingRemoveRow, 'indexes\$1[type]');");}$nd++;}echo'</table> 
</div> 
<p> 
<input type="submit" value="',lang(14),'"> 
<input type="hidden" name="token" value="',$T,'"> 
</form> 
';}elseif(isset($_GET["database"])){$L=$_POST;if($_POST&&!$m&&!isset($_POST["add_x"])){$E=trim($L["name"]);if($_POST["drop"]){$_GET["db"]="";queries_redirect(remove_from_uri("db|database"),lang(177),drop_databases(array(DB)));}elseif(DB!==$E){if(DB!=""){$_GET["db"]=$E;queries_redirect(preg_replace('~\bdb=[^&]*&~','',ME)."db=".urlencode($E),lang(178),rename_database($E,$L["collation"]));}else{$j=explode("\n",str_replace("\r","",$E));$og=true;$wd="";foreach($j 
as$k){if(count($j)==1||$k!=""){if(!create_database($k,$L["collation"]))$og=false;$wd=$k;}}restart_session();set_session("dbs",null);queries_redirect(ME."db=".urlencode($wd),lang(179),$og);}}else{if(!$L["collation"])redirect(substr(ME,0,-1));query_redirect("ALTER DATABASE ".idf_escape($E).(preg_match('~^[a-z0-9_]+$~i',$L["collation"])?" COLLATE $L[collation]":""),substr(ME,0,-1),lang(180));}}page_header(DB!=""?lang(56):lang(109),$m,array(),h(DB));$Xa=collations();$E=DB;if($_POST)$E=$L["name"];elseif(DB!="")$L["collation"]=db_collation(DB,$Xa);elseif($y=="sql"){foreach(get_vals("SHOW GRANTS")as$Hc){if(preg_match('~ ON (`(([^\\\\`]|``|\\\\.)*)%`\.\*)?~',$Hc,$C)&&$C[1]){$E=stripcslashes(idf_unescape("`$C[2]`"));break;}}}echo' 
<form action="" method="post"> 
<p> 
',($_POST["add_x"]||strpos($E,"\n")?'<textarea id="name" name="name" rows="10" cols="40">'.h($E).'</textarea><br>':'<input name="name" id="name" value="'.h($E).'" data-maxlength="64" autocapitalize="off">')."\n".($Xa?html_select("collation",array(""=>"(".lang(95).")")+$Xa,$L["collation"]).doc_link(array('sql'=>"charset-charsets.html",'mariadb'=>"supported-character-sets-and-collations/",)):""),script("focus(qs('#name'));"),'<input type="submit" value="',lang(14),'"> 
';if(DB!="")echo"<input type='submit' name='drop' value='".lang(121)."'>".confirm(lang(168,DB))."\n";elseif(!$_POST["add_x"]&&$_GET["db"]=="")echo"<input type='image' class='icon' name='add' src='".h(preg_replace("~\\?.*~","",ME)."?file=plus.gif&version=4.8.1")."' alt='+' title='".lang(102)."'>\n";echo'<input type="hidden" name="token" value="',$T,'"> 
</form> 
';}elseif(isset($_GET["call"])){$ca=($_GET["name"]?$_GET["name"]:$_GET["call"]);page_header(lang(181).": ".h($ca),$m);$Ff=routine($_GET["call"],(isset($_GET["callf"])?"FUNCTION":"PROCEDURE"));$ad=array();$He=array();foreach($Ff["fields"]as$t=>$n){if(substr($n["inout"],-3)=="OUT")$He[$t]="@".idf_escape($n["field"])." AS ".idf_escape($n["field"]);if(!$n["inout"]||substr($n["inout"],0,2)=="IN")$ad[]=$t;}if(!$m&&$_POST){$Ja=array();foreach($Ff["fields"]as$z=>$n){if(in_array($z,$ad)){$X=process_input($n);if($X===false)$X="''";if(isset($He[$z]))$g->query("SET @".idf_escape($n["field"])." = $X");}$Ja[]=(isset($He[$z])?"@".idf_escape($n["field"]):$X);}$I=(isset($_GET["callf"])?"SELECT":"CALL")." ".table($ca)."(".implode(", ",$Ja).")";$hg=microtime(true);$J=$g->multi_query($I);$na=$g->affected_rows;echo$c->selectQuery($I,$hg,!$J);if(!$J)echo"<p class='error'>".error()."\n";else{$h=connect();if(is_object($h))$h->select_db(DB);do{$J=$g->store_result();if(is_object($J))select($J,$h);else 
echo"<p class='message'>".lang(182,$na)." <span class='time'>".@date("H:i:s")."</span>\n";}while($g->next_result());if($He)select($g->query("SELECT ".implode(", ",$He)));}}echo' 
<form action="" method="post"> 
';if($ad){echo"<table cellspacing='0' class='layout'>\n";foreach($ad 
as$z){$n=$Ff["fields"][$z];$E=$n["field"];echo"<tr><th>".$c->fieldName($n);$Y=$_POST["fields"][$E];if($Y!=""){if($n["type"]=="enum")$Y=+$Y;if($n["type"]=="set")$Y=array_sum($Y);}input($n,$Y,(string)$_POST["function"][$E]);echo"\n";}echo"</table>\n";}echo'<p> 
<input type="submit" value="',lang(181),'"> 
<input type="hidden" name="token" value="',$T,'"> 
</form> 
';}elseif(isset($_GET["foreign"])){$b=$_GET["foreign"];$E=$_GET["name"];$L=$_POST;if($_POST&&!$m&&!$_POST["add"]&&!$_POST["change"]&&!$_POST["change-js"]){$D=($_POST["drop"]?lang(183):($E!=""?lang(184):lang(185)));$B=ME."table=".urlencode($b);if(!$_POST["drop"]){$L["source"]=array_filter($L["source"],'strlen');ksort($L["source"]);$Ag=array();foreach($L["source"]as$z=>$X)$Ag[$z]=$L["target"][$z];$L["target"]=$Ag;}if($y=="sqlite")queries_redirect($B,$D,recreate_table($b,$b,array(),array(),array(" $E"=>($_POST["drop"]?"":" ".format_foreign_key($L)))));else{$sa="ALTER TABLE ".table($b);$Lb="\nDROP ".($y=="sql"?"FOREIGN KEY ":"CONSTRAINT ").idf_escape($E);if($_POST["drop"])query_redirect($sa.$Lb,$B,$D);else{query_redirect($sa.($E!=""?"$Lb,":"")."\nADD".format_foreign_key($L),$B,$D);$m=lang(186)."<br>$m";}}}page_header(lang(187),$m,array("table"=>$b),h($b));if($_POST){ksort($L["source"]);if($_POST["add"])$L["source"][]="";elseif($_POST["change"]||$_POST["change-js"])$L["target"]=array();}elseif($E!=""){$Bc=foreign_keys($b);$L=$Bc[$E];$L["source"][]="";}else{$L["table"]=$b;$L["source"]=array("");}echo' 
<form action="" method="post"> 
';$bg=array_keys(fields($b));if($L["db"]!="")$g->select_db($L["db"]);if($L["ns"]!="")set_schema($L["ns"]);$uf=array_keys(array_filter(table_status('',true),'fk_support'));$Ag=array_keys(fields(in_array($L["table"],$uf)?$L["table"]:reset($uf)));$se="this.form['change-js'].value = '1'; this.form.submit();";echo"<p>".lang(188).": ".html_select("table",$uf,$L["table"],$se)."\n";if($y=="pgsql")echo 
lang(189).": ".html_select("ns",$c->schemas(),$L["ns"]!=""?$L["ns"]:$_GET["ns"],$se);elseif($y!="sqlite"){$xb=array();foreach($c->databases()as$k){if(!information_schema($k))$xb[]=$k;}echo 
lang(65).": ".html_select("db",$xb,$L["db"]!=""?$L["db"]:$_GET["db"],$se);}echo'<input type="hidden" name="change-js" value=""> 
<noscript><p><input type="submit" name="change" value="',lang(190),'"></noscript> 
<table cellspacing="0"> 
<thead><tr><th id="label-source">',lang(127),'<th id="label-target">',lang(128),'</thead> 
';$nd=0;foreach($L["source"]as$z=>$X){echo"<tr>","<td>".html_select("source[".(+$z)."]",array(-1=>"")+$bg,$X,($nd==count($L["source"])-1?"foreignAddRow.call(this);":1),"label-source"),"<td>".html_select("target[".(+$z)."]",$Ag,$L["target"][$z],1,"label-target");$nd++;}echo'</table> 
<p> 
',lang(97),': ',html_select("on_delete",array(-1=>"")+explode("|",$re),$L["on_delete"]),' ',lang(96),': ',html_select("on_update",array(-1=>"")+explode("|",$re),$L["on_update"]),doc_link(array('sql'=>"innodb-foreign-key-constraints.html",'mariadb'=>"foreign-keys/",)),'<p> 
<input type="submit" value="',lang(14),'"> 
<noscript><p><input type="submit" name="add" value="',lang(191),'"></noscript> 
';if($E!=""){echo'<input type="submit" name="drop" value="',lang(121),'">',confirm(lang(168,$E));}echo'<input type="hidden" name="token" value="',$T,'"> 
</form> 
';}elseif(isset($_GET["view"])){$b=$_GET["view"];$L=$_POST;$Fe="VIEW";if($y=="pgsql"&&$b!=""){$ig=table_status($b);$Fe=strtoupper($ig["Engine"]);}if($_POST&&!$m){$E=trim($L["name"]);$ua=" AS\n$L[select]";$B=ME."table=".urlencode($E);$D=lang(192);$U=($_POST["materialized"]?"MATERIALIZED VIEW":"VIEW");if(!$_POST["drop"]&&$b==$E&&$y!="sqlite"&&$U=="VIEW"&&$Fe=="VIEW")query_redirect(($y=="mssql"?"ALTER":"CREATE OR REPLACE")." VIEW ".table($E).$ua,$B,$D);else{$Cg=$E."_adminer_".uniqid();drop_create("DROP $Fe ".table($b),"CREATE $U ".table($E).$ua,"DROP $U ".table($E),"CREATE $U ".table($Cg).$ua,"DROP $U ".table($Cg),($_POST["drop"]?substr(ME,0,-1):$B),lang(193),$D,lang(194),$b,$E);}}if(!$_POST&&$b!=""){$L=view($b);$L["name"]=$b;$L["materialized"]=($Fe!="VIEW");if(!$m)$m=error();}page_header(($b!=""?lang(32):lang(195)),$m,array("table"=>$b),h($b));echo' 
<form action="" method="post"> 
<p>',lang(176),': <input name="name" value="',h($L["name"]),'" data-maxlength="64" autocapitalize="off"> 
',(support("materializedview")?" ".checkbox("materialized",1,$L["materialized"],lang(122)):""),'<p>';textarea("select",$L["select"]);echo'<p> 
<input type="submit" value="',lang(14),'"> 
';if($b!=""){echo'<input type="submit" name="drop" value="',lang(121),'">',confirm(lang(168,$b));}echo'<input type="hidden" name="token" value="',$T,'"> 
</form> 
';}elseif(isset($_GET["event"])){$aa=$_GET["event"];$gd=array("YEAR","QUARTER","MONTH","DAY","HOUR","MINUTE","WEEK","SECOND","YEAR_MONTH","DAY_HOUR","DAY_MINUTE","DAY_SECOND","HOUR_MINUTE","HOUR_SECOND","MINUTE_SECOND");$jg=array("ENABLED"=>"ENABLE","DISABLED"=>"DISABLE","SLAVESIDE_DISABLED"=>"DISABLE ON SLAVE");$L=$_POST;if($_POST&&!$m){if($_POST["drop"])query_redirect("DROP EVENT ".idf_escape($aa),substr(ME,0,-1),lang(196));elseif(in_array($L["INTERVAL_FIELD"],$gd)&&isset($jg[$L["STATUS"]])){$Jf="\nON SCHEDULE ".($L["INTERVAL_VALUE"]?"EVERY ".q($L["INTERVAL_VALUE"])." $L[INTERVAL_FIELD]".($L["STARTS"]?" STARTS ".q($L["STARTS"]):"").($L["ENDS"]?" ENDS ".q($L["ENDS"]):""):"AT ".q($L["STARTS"]))." ON COMPLETION".($L["ON_COMPLETION"]?"":" NOT")." PRESERVE";queries_redirect(substr(ME,0,-1),($aa!=""?lang(197):lang(198)),queries(($aa!=""?"ALTER EVENT ".idf_escape($aa).$Jf.($aa!=$L["EVENT_NAME"]?"\nRENAME TO ".idf_escape($L["EVENT_NAME"]):""):"CREATE EVENT ".idf_escape($L["EVENT_NAME"]).$Jf)."\n".$jg[$L["STATUS"]]." COMMENT ".q($L["EVENT_COMMENT"]).rtrim(" DO\n$L[EVENT_DEFINITION]",";").";"));}}page_header(($aa!=""?lang(199).": ".h($aa):lang(200)),$m);if(!$L&&$aa!=""){$M=get_rows("SELECT * FROM information_schema.EVENTS WHERE EVENT_SCHEMA = ".q(DB)." AND EVENT_NAME = ".q($aa));$L=reset($M);}echo' 
<form action="" method="post"> 
<table cellspacing="0" class="layout"> 
<tr><th>',lang(176),'<td><input name="EVENT_NAME" value="',h($L["EVENT_NAME"]),'" data-maxlength="64" autocapitalize="off"> 
<tr><th title="datetime">',lang(201),'<td><input name="STARTS" value="',h("$L[EXECUTE_AT]$L[STARTS]"),'"> 
<tr><th title="datetime">',lang(202),'<td><input name="ENDS" value="',h($L["ENDS"]),'"> 
<tr><th>',lang(203),'<td><input type="number" name="INTERVAL_VALUE" value="',h($L["INTERVAL_VALUE"]),'" class="size"> ',html_select("INTERVAL_FIELD",$gd,$L["INTERVAL_FIELD"]),'<tr><th>',lang(112),'<td>',html_select("STATUS",$jg,$L["STATUS"]),'<tr><th>',lang(39),'<td><input name="EVENT_COMMENT" value="',h($L["EVENT_COMMENT"]),'" data-maxlength="64"> 
<tr><th><td>',checkbox("ON_COMPLETION","PRESERVE",$L["ON_COMPLETION"]=="PRESERVE",lang(204)),'</table> 
<p>';textarea("EVENT_DEFINITION",$L["EVENT_DEFINITION"]);echo'<p> 
<input type="submit" value="',lang(14),'"> 
';if($aa!=""){echo'<input type="submit" name="drop" value="',lang(121),'">',confirm(lang(168,$aa));}echo'<input type="hidden" name="token" value="',$T,'"> 
</form> 
';}elseif(isset($_GET["procedure"])){$ca=($_GET["name"]?$_GET["name"]:$_GET["procedure"]);$Ff=(isset($_GET["function"])?"FUNCTION":"PROCEDURE");$L=$_POST;$L["fields"]=(array)$L["fields"];if($_POST&&!process_fields($L["fields"])&&!$m){$Ce=routine($_GET["procedure"],$Ff);$Cg="$L[name]_adminer_".uniqid();drop_create("DROP $Ff ".routine_id($ca,$Ce),create_routine($Ff,$L),"DROP $Ff ".routine_id($L["name"],$L),create_routine($Ff,array("name"=>$Cg)+$L),"DROP $Ff ".routine_id($Cg,$L),substr(ME,0,-1),lang(205),lang(206),lang(207),$ca,$L["name"]);}page_header(($ca!=""?(isset($_GET["function"])?lang(208):lang(209)).": ".h($ca):(isset($_GET["function"])?lang(210):lang(211))),$m);if(!$_POST&&$ca!=""){$L=routine($_GET["procedure"],$Ff);$L["name"]=$ca;}$Xa=get_vals("SHOW CHARACTER SET");sort($Xa);$Gf=routine_languages();echo' 
<form action="" method="post" id="form"> 
<p>',lang(176),': <input name="name" value="',h($L["name"]),'" data-maxlength="64" autocapitalize="off"> 
',($Gf?lang(19).": ".html_select("language",$Gf,$L["language"])."\n":""),'<input type="submit" value="',lang(14),'"> 
<div class="scrollable"> 
<table cellspacing="0" class="nowrap"> 
';edit_fields($L["fields"],$Xa,$Ff);if(isset($_GET["function"])){echo"<tr><td>".lang(212);edit_type("returns",$L["returns"],$Xa,array(),($y=="pgsql"?array("void","trigger"):array()));}echo'</table> 
',script("editFields();"),'</div> 
<p>';textarea("definition",$L["definition"]);echo'<p> 
<input type="submit" value="',lang(14),'"> 
';if($ca!=""){echo'<input type="submit" name="drop" value="',lang(121),'">',confirm(lang(168,$ca));}echo'<input type="hidden" name="token" value="',$T,'"> 
</form> 
';}elseif(isset($_GET["trigger"])){$b=$_GET["trigger"];$E=$_GET["name"];$Wg=trigger_options();$L=(array)trigger($E,$b)+array("Trigger"=>$b."_bi");if($_POST){if(!$m&&in_array($_POST["Timing"],$Wg["Timing"])&&in_array($_POST["Event"],$Wg["Event"])&&in_array($_POST["Type"],$Wg["Type"])){$qe=" ON ".table($b);$Lb="DROP TRIGGER ".idf_escape($E).($y=="pgsql"?$qe:"");$B=ME."table=".urlencode($b);if($_POST["drop"])query_redirect($Lb,$B,lang(213));else{if($E!="")queries($Lb);queries_redirect($B,($E!=""?lang(214):lang(215)),queries(create_trigger($qe,$_POST)));if($E!="")queries(create_trigger($qe,$L+array("Type"=>reset($Wg["Type"]))));}}$L=$_POST;}page_header(($E!=""?lang(216).": ".h($E):lang(217)),$m,array("table"=>$b));echo' 
<form action="" method="post" id="form"> 
<table cellspacing="0" class="layout"> 
<tr><th>',lang(218),'<td>',html_select("Timing",$Wg["Timing"],$L["Timing"],"triggerChange(/^".preg_quote($b,"/")."_[ba][iud]$/, '".js_escape($b)."', this.form);"),'<tr><th>',lang(219),'<td>',html_select("Event",$Wg["Event"],$L["Event"],"this.form['Timing'].onchange();"),(in_array("UPDATE OF",$Wg["Event"])?" <input name='Of' value='".h($L["Of"])."' class='hidden'>":""),'<tr><th>',lang(38),'<td>',html_select("Type",$Wg["Type"],$L["Type"]),'</table> 
<p>',lang(176),': <input name="Trigger" value="',h($L["Trigger"]),'" data-maxlength="64" autocapitalize="off"> 
',script("qs('#form')['Timing'].onchange();"),'<p>';textarea("Statement",$L["Statement"]);echo'<p> 
<input type="submit" value="',lang(14),'"> 
';if($E!=""){echo'<input type="submit" name="drop" value="',lang(121),'">',confirm(lang(168,$E));}echo'<input type="hidden" name="token" value="',$T,'"> 
</form> 
';}elseif(isset($_GET["user"])){$ea=$_GET["user"];$jf=array(""=>array("All privileges"=>""));foreach(get_rows("SHOW PRIVILEGES")as$L){foreach(explode(",",($L["Privilege"]=="Grant option"?"":$L["Context"]))as$ib)$jf[$ib][$L["Privilege"]]=$L["Comment"];}$jf["Server Admin"]+=$jf["File access on server"];$jf["Databases"]["Create routine"]=$jf["Procedures"]["Create routine"];unset($jf["Procedures"]["Create routine"]);$jf["Columns"]=array();foreach(array("Select","Insert","Update","References")as$X)$jf["Columns"][$X]=$jf["Tables"][$X];unset($jf["Server Admin"]["Usage"]);foreach($jf["Tables"]as$z=>$X)unset($jf["Databases"][$z]);$be=array();if($_POST){foreach($_POST["objects"]as$z=>$X)$be[$X]=(array)$be[$X]+(array)$_POST["grants"][$z];}$Ic=array();$oe="";if(isset($_GET["host"])&&($J=$g->query("SHOW GRANTS FOR ".q($ea)."@".q($_GET["host"])))){while($L=$J->fetch_row()){if(preg_match('~GRANT (.*) ON (.*) TO ~',$L[0],$C)&&preg_match_all('~ *([^(,]*[^ ,(])( *\([^)]+\))?~',$C[1],$Jd,PREG_SET_ORDER)){foreach($Jd 
as$X){if($X[1]!="USAGE")$Ic["$C[2]$X[2]"][$X[1]]=true;if(preg_match('~ WITH GRANT OPTION~',$L[0]))$Ic["$C[2]$X[2]"]["GRANT OPTION"]=true;}}if(preg_match("~ IDENTIFIED BY PASSWORD '([^']+)~",$L[0],$C))$oe=$C[1];}}if($_POST&&!$m){$pe=(isset($_GET["host"])?q($ea)."@".q($_GET["host"]):"''");if($_POST["drop"])query_redirect("DROP USER $pe",ME."privileges=",lang(220));else{$de=q($_POST["user"])."@".q($_POST["host"]);$Se=$_POST["pass"];if($Se!=''&&!$_POST["hashed"]&&!min_version(8)){$Se=$g->result("SELECT PASSWORD(".q($Se).")");$m=!$Se;}$mb=false;if(!$m){if($pe!=$de){$mb=queries((min_version(5)?"CREATE USER":"GRANT USAGE ON *.* TO")." $de IDENTIFIED BY ".(min_version(8)?"":"PASSWORD ").q($Se));$m=!$mb;}elseif($Se!=$oe)queries("SET PASSWORD FOR $de = ".q($Se));}if(!$m){$Cf=array();foreach($be 
as$je=>$Hc){if(isset($_GET["grant"]))$Hc=array_filter($Hc);$Hc=array_keys($Hc);if(isset($_GET["grant"]))$Cf=array_diff(array_keys(array_filter($be[$je],'strlen')),$Hc);elseif($pe==$de){$me=array_keys((array)$Ic[$je]);$Cf=array_diff($me,$Hc);$Hc=array_diff($Hc,$me);unset($Ic[$je]);}if(preg_match('~^(.+)\s*(\(.*\))?$~U',$je,$C)&&(!grant("REVOKE",$Cf,$C[2]," ON $C[1] FROM $de")||!grant("GRANT",$Hc,$C[2]," ON $C[1] TO $de"))){$m=true;break;}}}if(!$m&&isset($_GET["host"])){if($pe!=$de)queries("DROP USER $pe");elseif(!isset($_GET["grant"])){foreach($Ic 
as$je=>$Cf){if(preg_match('~^(.+)(\(.*\))?$~U',$je,$C))grant("REVOKE",array_keys($Cf),$C[2]," ON $C[1] FROM $de");}}}queries_redirect(ME."privileges=",(isset($_GET["host"])?lang(221):lang(222)),!$m);if($mb)$g->query("DROP USER $de");}}page_header((isset($_GET["host"])?lang(24).": ".h("$ea@$_GET[host]"):lang(139)),$m,array("privileges"=>array('',lang(60))));if($_POST){$L=$_POST;$Ic=$be;}else{$L=$_GET+array("host"=>$g->result("SELECT SUBSTRING_INDEX(CURRENT_USER, '@', -1)"));$L["pass"]=$oe;if($oe!="")$L["hashed"]=true;$Ic[(DB==""||$Ic?"":idf_escape(addcslashes(DB,"%_\\"))).".*"]=array();}echo'<form action="" method="post"> 
<table cellspacing="0" class="layout"> 
<tr><th>',lang(23),'<td><input name="host" data-maxlength="60" value="',h($L["host"]),'" autocapitalize="off"> 
<tr><th>',lang(24),'<td><input name="user" data-maxlength="80" value="',h($L["user"]),'" autocapitalize="off"> 
<tr><th>',lang(25),'<td><input name="pass" id="pass" value="',h($L["pass"]),'" autocomplete="new-password"> 
';if(!$L["hashed"])echo 
script("typePassword(qs('#pass'));");echo(min_version(8)?"":checkbox("hashed",1,$L["hashed"],lang(223),"typePassword(this.form['pass'], this.checked);")),'</table> 
 
';echo"<table cellspacing='0'>\n","<thead><tr><th colspan='2'>".lang(60).doc_link(array('sql'=>"grant.html#priv_level"));$t=0;foreach($Ic 
as$je=>$Hc){echo'<th>'.($je!="*.*"?"<input name='objects[$t]' value='".h($je)."' size='10' autocapitalize='off'>":"<input type='hidden' name='objects[$t]' value='*.*' size='10'>*.*");$t++;}echo"</thead>\n";foreach(array(""=>"","Server Admin"=>lang(23),"Databases"=>lang(26),"Tables"=>lang(124),"Columns"=>lang(37),"Procedures"=>lang(224),)as$ib=>$Db){foreach((array)$jf[$ib]as$if=>$bb){echo"<tr".odd()."><td".($Db?">$Db<td":" colspan='2'").' lang="en" title="'.h($bb).'">'.h($if);$t=0;foreach($Ic 
as$je=>$Hc){$E="'grants[$t][".h(strtoupper($if))."]'";$Y=$Hc[strtoupper($if)];if($ib=="Server Admin"&&$je!=(isset($Ic["*.*"])?"*.*":".*"))echo"<td>";elseif(isset($_GET["grant"]))echo"<td><select name=$E><option><option value='1'".($Y?" selected":"").">".lang(225)."<option value='0'".($Y=="0"?" selected":"").">".lang(226)."</select>";else{echo"<td align='center'><label class='block'>","<input type='checkbox' name=$E value='1'".($Y?" checked":"").($if=="All privileges"?" id='grants-$t-all'>":">".($if=="Grant option"?"":script("qsl('input').onclick = function () { if (this.checked) formUncheck('grants-$t-all'); };"))),"</label>";}$t++;}}}echo"</table>\n",'<p> 
<input type="submit" value="',lang(14),'"> 
';if(isset($_GET["host"])){echo'<input type="submit" name="drop" value="',lang(121),'">',confirm(lang(168,"$ea@$_GET[host]"));}echo'<input type="hidden" name="token" value="',$T,'"> 
</form> 
';}elseif(isset($_GET["processlist"])){if(support("kill")){if($_POST&&!$m){$rd=0;foreach((array)$_POST["kill"]as$X){if(kill_process($X))$rd++;}queries_redirect(ME."processlist=",lang(227,$rd),$rd||!$_POST["kill"]);}}page_header(lang(110),$m);echo' 
<form action="" method="post"> 
<div class="scrollable"> 
<table cellspacing="0" class="nowrap checkable"> 
',script("mixin(qsl('table'), {onclick: tableClick, ondblclick: partialArg(tableClick, true)});");$t=-1;foreach(process_list()as$t=>$L){if(!$t){echo"<thead><tr lang='en'>".(support("kill")?"<th>":"");foreach($L 
as$z=>$X)echo"<th>$z".doc_link(array('sql'=>"show-processlist.html#processlist_".strtolower($z),));echo"</thead>\n";}echo"<tr".odd().">".(support("kill")?"<td>".checkbox("kill[]",$L[$y=="sql"?"Id":"pid"],0):"");foreach($L 
as$z=>$X)echo"<td>".(($y=="sql"&&$z=="Info"&&preg_match("~Query|Killed~",$L["Command"])&&$X!="")||($y=="pgsql"&&$z=="current_query"&&$X!="<IDLE>")||($y=="oracle"&&$z=="sql_text"&&$X!="")?"<code class='jush-$y'>".shorten_utf8($X,100,"</code>").' <a href="'.h(ME.($L["db"]!=""?"db=".urlencode($L["db"])."&":"")."sql=".urlencode($X)).'">'.lang(228).'</a>':h($X));echo"\n";}echo'</table> 
</div> 
<p> 
';if(support("kill")){echo($t+1)."/".lang(229,max_connections()),"<p><input type='submit' value='".lang(230)."'>\n";}echo'<input type="hidden" name="token" value="',$T,'"> 
</form> 
',script("tableCheck();");}elseif(isset($_GET["select"])){$b=$_GET["select"];$R=table_status1($b);$x=indexes($b);$o=fields($b);$Bc=column_foreign_keys($b);$le=$R["Oid"];parse_str($_COOKIE["adminer_import"],$ma);$Df=array();$e=array();$Fg=null;foreach($o 
as$z=>$n){$E=$c->fieldName($n);if(isset($n["privileges"]["select"])&&$E!=""){$e[$z]=html_entity_decode(strip_tags($E),ENT_QUOTES);if(is_shortable($n))$Fg=$c->selectLengthProcess();}$Df+=$n["privileges"];}list($N,$s)=$c->selectColumnsProcess($e,$x);$kd=count($s)<count($N);$Z=$c->selectSearchProcess($o,$x);$ze=$c->selectOrderProcess($o,$x);$_=$c->selectLimitProcess();if($_GET["val"]&&is_ajax()){header("Content-Type: text/plain; charset=utf-8");foreach($_GET["val"]as$eh=>$L){$ua=convert_field($o[key($L)]);$N=array($ua?$ua:idf_escape(key($L)));$Z[]=where_check($eh,$o);$K=$l->select($b,$N,$Z,$N);if($K)echo 
reset($K->fetch_row());}exit;}$ff=$gh=null;foreach($x 
as$w){if($w["type"]=="PRIMARY"){$ff=array_flip($w["columns"]);$gh=($N?$ff:array());foreach($gh 
as$z=>$X){if(in_array(idf_escape($z),$N))unset($gh[$z]);}break;}}if($le&&!$ff){$ff=$gh=array($le=>0);$x[]=array("type"=>"PRIMARY","columns"=>array($le));}if($_POST&&!$m){$Bh=$Z;if(!$_POST["all"]&&is_array($_POST["check"])){$Oa=array();foreach($_POST["check"]as$Ma)$Oa[]=where_check($Ma,$o);$Bh[]="((".implode(") OR (",$Oa)."))";}$Bh=($Bh?"\nWHERE ".implode(" AND ",$Bh):"");if($_POST["export"]){cookie("adminer_import","output=".urlencode($_POST["output"])."&format=".urlencode($_POST["format"]));dump_headers($b);$c->dumpTable($b,"");$Fc=($N?implode(", ",$N):"*").convert_fields($e,$o,$N)."\nFROM ".table($b);$Kc=($s&&$kd?"\nGROUP BY ".implode(", ",$s):"").($ze?"\nORDER BY ".implode(", ",$ze):"");if(!is_array($_POST["check"])||$ff)$I="SELECT $Fc$Bh$Kc";else{$ch=array();foreach($_POST["check"]as$X)$ch[]="(SELECT".limit($Fc,"\nWHERE ".($Z?implode(" AND ",$Z)." AND ":"").where_check($X,$o).$Kc,1).")";$I=implode(" UNION ALL ",$ch);}$c->dumpData($b,"table",$I);exit;}if(!$c->selectEmailProcess($Z,$Bc)){if($_POST["save"]||$_POST["delete"]){$J=true;$na=0;$P=array();if(!$_POST["delete"]){foreach($e 
as$E=>$X){$X=process_input($o[$E]);if($X!==null&&($_POST["clone"]||$X!==false))$P[idf_escape($E)]=($X!==false?$X:idf_escape($E));}}if($_POST["delete"]||$P){if($_POST["clone"])$I="INTO ".table($b)." (".implode(", ",array_keys($P)).")\nSELECT ".implode(", ",$P)."\nFROM ".table($b);if($_POST["all"]||($ff&&is_array($_POST["check"]))||$kd){$J=($_POST["delete"]?$l->delete($b,$Bh):($_POST["clone"]?queries("INSERT $I$Bh"):$l->update($b,$P,$Bh)));$na=$g->affected_rows;}else{foreach((array)$_POST["check"]as$X){$Ah="\nWHERE ".($Z?implode(" AND ",$Z)." AND ":"").where_check($X,$o);$J=($_POST["delete"]?$l->delete($b,$Ah,1):($_POST["clone"]?queries("INSERT".limit1($b,$I,$Ah)):$l->update($b,$P,$Ah,1)));if(!$J)break;$na+=$g->affected_rows;}}}$D=lang(231,$na);if($_POST["clone"]&&$J&&$na==1){$xd=last_id();if($xd)$D=lang(161," $xd");}queries_redirect(remove_from_uri($_POST["all"]&&$_POST["delete"]?"page":""),$D,$J);if(!$_POST["delete"]){edit_form($b,$o,(array)$_POST["fields"],!$_POST["clone"]);page_footer();exit;}}elseif(!$_POST["import"]){if(!$_POST["val"])$m=lang(232);else{$J=true;$na=0;foreach($_POST["val"]as$eh=>$L){$P=array();foreach($L 
as$z=>$X){$z=bracket_escape($z,1);$P[idf_escape($z)]=(preg_match('~char|text~',$o[$z]["type"])||$X!=""?$c->processInput($o[$z],$X):"NULL");}$J=$l->update($b,$P," WHERE ".($Z?implode(" AND ",$Z)." AND ":"").where_check($eh,$o),!$kd&&!$ff," ");if(!$J)break;$na+=$g->affected_rows;}queries_redirect(remove_from_uri(),lang(231,$na),$J);}}elseif(!is_string($uc=get_file("csv_file",true)))$m=upload_error($uc);elseif(!preg_match('~~u',$uc))$m=lang(233);else{cookie("adminer_import","output=".urlencode($ma["output"])."&format=".urlencode($_POST["separator"]));$J=true;$Ya=array_keys($o);preg_match_all('~(?>"[^"]*"|[^"\r\n]+)+~',$uc,$Jd);$na=count($Jd[0]);$l->begin();$Rf=($_POST["separator"]=="csv"?",":($_POST["separator"]=="tsv"?"\t":";"));$M=array();foreach($Jd[0]as$z=>$X){preg_match_all("~((?>\"[^\"]*\")+|[^$Rf]*)$Rf~",$X.$Rf,$Kd);if(!$z&&!array_diff($Kd[1],$Ya)){$Ya=$Kd[1];$na--;}else{$P=array();foreach($Kd[1]as$t=>$Ua)$P[idf_escape($Ya[$t])]=($Ua==""&&$o[$Ya[$t]]["null"]?"NULL":q(str_replace('""','"',preg_replace('~^"|"$~','',$Ua))));$M[]=$P;}}$J=(!$M||$l->insertUpdate($b,$M,$ff));if($J)$J=$l->commit();queries_redirect(remove_from_uri("page"),lang(234,$na),$J);$l->rollback();}}}$ug=$c->tableName($R);if(is_ajax()){page_headers();ob_start();}else 
page_header(lang(42).": $ug",$m);$P=null;if(isset($Df["insert"])||!support("table")){$P="";foreach((array)$_GET["where"]as$X){if($Bc[$X["col"]]&&count($Bc[$X["col"]])==1&&($X["op"]=="="||(!$X["op"]&&!preg_match('~[_%]~',$X["val"]))))$P.="&set".urlencode("[".bracket_escape($X["col"])."]")."=".urlencode($X["val"]);}}$c->selectLinks($R,$P);if(!$e&&support("table"))echo"<p class='error'>".lang(235).($o?".":": ".error())."\n";else{echo"<form action='' id='form'>\n","<div style='display: none;'>";hidden_fields_get();echo(DB!=""?'<input type="hidden" name="db" value="'.h(DB).'">'.(isset($_GET["ns"])?'<input type="hidden" name="ns" value="'.h($_GET["ns"]).'">':""):"");echo'<input type="hidden" name="select" value="'.h($b).'">',"</div>\n";$c->selectColumnsPrint($N,$e);$c->selectSearchPrint($Z,$e,$x);$c->selectOrderPrint($ze,$e,$x);$c->selectLimitPrint($_);$c->selectLengthPrint($Fg);$c->selectActionPrint($x);echo"</form>\n";$F=$_GET["page"];if($F=="last"){$Ec=$g->result(count_rows($b,$Z,$kd,$s));$F=floor(max(0,$Ec-1)/$_);}$Mf=$N;$Jc=$s;if(!$Mf){$Mf[]="*";$jb=convert_fields($e,$o,$N);if($jb)$Mf[]=substr($jb,2);}foreach($N 
as$z=>$X){$n=$o[idf_unescape($X)];if($n&&($ua=convert_field($n)))$Mf[$z]="$ua AS $X";}if(!$kd&&$gh){foreach($gh 
as$z=>$X){$Mf[]=idf_escape($z);if($Jc)$Jc[]=idf_escape($z);}}$J=$l->select($b,$Mf,$Z,$Jc,$ze,$_,$F,true);if(!$J)echo"<p class='error'>".error()."\n";else{if($y=="mssql"&&$F)$J->seek($_*$F);$Xb=array();echo"<form action='' method='post' enctype='multipart/form-data'>\n";$M=array();while($L=$J->fetch_assoc()){if($F&&$y=="oracle")unset($L["RNUM"]);$M[]=$L;}if($_GET["page"]!="last"&&$_!=""&&$s&&$kd&&$y=="sql")$Ec=$g->result(" SELECT FOUND_ROWS()");if(!$M)echo"<p class='message'>".lang(12)."\n";else{$Ba=$c->backwardKeys($b,$ug);echo"<div class='scrollable'>","<table id='table' cellspacing='0' class='nowrap checkable'>",script("mixin(qs('#table'), {onclick: tableClick, ondblclick: partialArg(tableClick, true), onkeydown: editingKeydown});"),"<thead><tr>".(!$s&&$N?"":"<td><input type='checkbox' id='all-page' class='jsonly'>".script("qs('#all-page').onclick = partial(formCheck, /check/);","")." <a href='".h($_GET["modify"]?remove_from_uri("modify"):$_SERVER["REQUEST_URI"]."&modify=1")."'>".lang(236)."</a>");$ae=array();$Gc=array();reset($N);$rf=1;foreach($M[0]as$z=>$X){if(!isset($gh[$z])){$X=$_GET["columns"][key($N)];$n=$o[$N?($X?$X["col"]:current($N)):$z];$E=($n?$c->fieldName($n,$rf):($X["fun"]?"*":$z));if($E!=""){$rf++;$ae[$z]=$E;$d=idf_escape($z);$Wc=remove_from_uri('(order|desc)[^=]*|page').'&order%5B0%5D='.urlencode($z);$Db="&desc%5B0%5D=1";echo"<th id='th[".h(bracket_escape($z))."]'>".script("mixin(qsl('th'), {onmouseover: partial(columnMouse), onmouseout: partial(columnMouse, ' hidden')});",""),'<a href="'.h($Wc.($ze[0]==$d||$ze[0]==$z||(!$ze&&$kd&&$s[0]==$d)?$Db:'')).'">';echo 
apply_sql_function($X["fun"],$E)."</a>";echo"<span class='column hidden'>","<a href='".h($Wc.$Db)."' title='".lang(48)."' class='text'> </a>";if(!$X["fun"]){echo'<a href="#fieldset-search" title="'.lang(45).'" class="text jsonly"> =</a>',script("qsl('a').onclick = partial(selectSearch, '".js_escape($z)."');");}echo"</span>";}$Gc[$z]=$X["fun"];next($N);}}$Cd=array();if($_GET["modify"]){foreach($M 
as$L){foreach($L 
as$z=>$X)$Cd[$z]=max($Cd[$z],min(40,strlen(utf8_decode($X))));}}echo($Ba?"<th>".lang(237):"")."</thead>\n";if(is_ajax()){if($_%2==1&&$F%2==1)odd();ob_end_clean();}foreach($c->rowDescriptions($M,$Bc)as$Zd=>$L){$dh=unique_array($M[$Zd],$x);if(!$dh){$dh=array();foreach($M[$Zd]as$z=>$X){if(!preg_match('~^(COUNT\((\*|(DISTINCT )?`(?:[^`]|``)+`)\)|(AVG|GROUP_CONCAT|MAX|MIN|SUM)\(`(?:[^`]|``)+`\))$~',$z))$dh[$z]=$X;}}$eh="";foreach($dh 
as$z=>$X){if(($y=="sql"||$y=="pgsql")&&preg_match('~char|text|enum|set~',$o[$z]["type"])&&strlen($X)>64){$z=(strpos($z,'(')?$z:idf_escape($z));$z="MD5(".($y!='sql'||preg_match("~^utf8~",$o[$z]["collation"])?$z:"CONVERT($z USING ".charset($g).")").")";$X=md5($X);}$eh.="&".($X!==null?urlencode("where[".bracket_escape($z)."]")."=".urlencode($X):"null%5B%5D=".urlencode($z));}echo"<tr".odd().">".(!$s&&$N?"":"<td>".checkbox("check[]",substr($eh,1),in_array(substr($eh,1),(array)$_POST["check"])).($kd||information_schema(DB)?"":" <a href='".h(ME."edit=".urlencode($b).$eh)."' class='edit'>".lang(238)."</a>"));foreach($L 
as$z=>$X){if(isset($ae[$z])){$n=$o[$z];$X=$l->value($X,$n);if($X!=""&&(!isset($Xb[$z])||$Xb[$z]!=""))$Xb[$z]=(is_mail($X)?$ae[$z]:"");$A="";if(preg_match('~blob|bytea|raw|file~',$n["type"])&&$X!="")$A=ME.'download='.urlencode($b).'&field='.urlencode($z).$eh;if(!$A&&$X!==null){foreach((array)$Bc[$z]as$p){if(count($Bc[$z])==1||end($p["source"])==$z){$A="";foreach($p["source"]as$t=>$bg)$A.=where_link($t,$p["target"][$t],$M[$Zd][$bg]);$A=($p["db"]!=""?preg_replace('~([?&]db=)[^&]+~','\1'.urlencode($p["db"]),ME):ME).'select='.urlencode($p["table"]).$A;if($p["ns"])$A=preg_replace('~([?&]ns=)[^&]+~','\1'.urlencode($p["ns"]),$A);if(count($p["source"])==1)break;}}}if($z=="COUNT(*)"){$A=ME."select=".urlencode($b);$t=0;foreach((array)$_GET["where"]as$W){if(!array_key_exists($W["col"],$dh))$A.=where_link($t++,$W["col"],$W["val"],$W["op"]);}foreach($dh 
as$od=>$W)$A.=where_link($t++,$od,$W);}$X=select_value($X,$A,$n,$Fg);$u=h("val[$eh][".bracket_escape($z)."]");$Y=$_POST["val"][$eh][bracket_escape($z)];$Sb=!is_array($L[$z])&&is_utf8($X)&&$M[$Zd][$z]==$L[$z]&&!$Gc[$z];$Eg=preg_match('~text|lob~',$n["type"]);echo"<td id='$u'";if(($_GET["modify"]&&$Sb)||$Y!==null){$Nc=h($Y!==null?$Y:$L[$z]);echo">".($Eg?"<textarea name='$u' cols='30' rows='".(substr_count($L[$z],"\n")+1)."'>$Nc</textarea>":"<input name='$u' value='$Nc' size='$Cd[$z]'>");}else{$Gd=strpos($X,"<i></i>");echo" data-text='".($Gd?2:($Eg?1:0))."'".($Sb?"":" data-warning='".h(lang(239))."'").">$X</td>";}}}if($Ba)echo"<td>";$c->backwardKeysPrint($Ba,$M[$Zd]);echo"</tr>\n";}if(is_ajax())exit;echo"</table>\n","</div>\n";}if(!is_ajax()){if($M||$F){$ic=true;if($_GET["page"]!="last"){if($_==""||(count($M)<$_&&($M||!$F)))$Ec=($F?$F*$_:0)+count($M);elseif($y!="sql"||!$kd){$Ec=($kd?false:found_rows($R,$Z));if($Ec<max(1e4,2*($F+1)*$_))$Ec=reset(slow_query(count_rows($b,$Z,$kd,$s)));else$ic=false;}}$Ke=($_!=""&&($Ec===false||$Ec>$_||$F));if($Ke){echo(($Ec===false?count($M)+1:$Ec-$F*$_)>$_?'<p><a href="'.h(remove_from_uri("page")."&page=".($F+1)).'" class="loadmore">'.lang(240).'</a>'.script("qsl('a').onclick = partial(selectLoadMore, ".(+$_).", '".lang(241)."');",""):''),"\n";}}echo"<div class='footer'><div>\n";if($M||$F){if($Ke){$Md=($Ec===false?$F+(count($M)>=$_?2:1):floor(($Ec-1)/$_));echo"<fieldset>";if($y!="simpledb"){echo"<legend><a href='".h(remove_from_uri("page"))."'>".lang(242)."</a></legend>",script("qsl('a').onclick = function () { pageClick(this.href, +prompt('".lang(242)."', '".($F+1)."')); return false; };"),pagination(0,$F).($F>5?" ":"");for($t=max(1,$F-4);$t<min($Md,$F+5);$t++)echo 
pagination($t,$F);if($Md>0){echo($F+5<$Md?" ":""),($ic&&$Ec!==false?pagination($Md,$F):" <a href='".h(remove_from_uri("page")."&page=last")."' title='~$Md'>".lang(243)."</a>");}}else{echo"<legend>".lang(242)."</legend>",pagination(0,$F).($F>1?" ":""),($F?pagination($F,$F):""),($Md>$F?pagination($F+1,$F).($Md>$F+1?" ":""):"");}echo"</fieldset>\n";}echo"<fieldset>","<legend>".lang(244)."</legend>";$Ib=($ic?"":"~ ").$Ec;echo 
checkbox("all",1,0,($Ec!==false?($ic?"":"~ ").lang(143,$Ec):""),"var checked = formChecked(this, /check/); selectCount('selected', this.checked ? '$Ib' : checked); selectCount('selected2', this.checked || !checked ? '$Ib' : checked);")."\n","</fieldset>\n";if($c->selectCommandPrint()){echo'<fieldset',($_GET["modify"]?'':' class="jsonly"'),'><legend>',lang(236),'</legend><div> 
<input type="submit" value="',lang(14),'"',($_GET["modify"]?'':' title="'.lang(232).'"'),'> 
</div></fieldset> 
<fieldset><legend>',lang(120),' <span id="selected"></span></legend><div> 
<input type="submit" name="edit" value="',lang(10),'"> 
<input type="submit" name="clone" value="',lang(228),'"> 
<input type="submit" name="delete" value="',lang(18),'">',confirm(),'</div></fieldset> 
';}$Cc=$c->dumpFormat();foreach((array)$_GET["columns"]as$d){if($d["fun"]){unset($Cc['sql']);break;}}if($Cc){print_fieldset("export",lang(62)." <span id='selected2'></span>");$Ie=$c->dumpOutput();echo($Ie?html_select("output",$Ie,$ma["output"])." ":""),html_select("format",$Cc,$ma["format"])," <input type='submit' name='export' value='".lang(62)."'>\n","</div></fieldset>\n";}$c->selectEmailPrint(array_filter($Xb,'strlen'),$e);}echo"</div></div>\n";if($c->selectImportPrint()){echo"<div>","<a href='#import'>".lang(61)."</a>",script("qsl('a').onclick = partial(toggle, 'import');",""),"<span id='import' class='hidden'>: ","<input type='file' name='csv_file'> ",html_select("separator",array("csv"=>"CSV,","csv;"=>"CSV;","tsv"=>"TSV"),$ma["format"],1);echo" <input type='submit' name='import' value='".lang(61)."'>","</span>","</div>";}echo"<input type='hidden' name='token' value='$T'>\n","</form>\n",(!$s&&$N?"":script("tableCheck();"));}}}if(is_ajax()){ob_end_clean();exit;}}elseif(isset($_GET["variables"])){$ig=isset($_GET["status"]);page_header($ig?lang(112):lang(111));$sh=($ig?show_status():show_variables());if(!$sh)echo"<p class='message'>".lang(12)."\n";else{echo"<table cellspacing='0'>\n";foreach($sh 
as$z=>$X){echo"<tr>","<th><code class='jush-".$y.($ig?"status":"set")."'>".h($z)."</code>","<td>".h($X);}echo"</table>\n";}}elseif(isset($_GET["script"])){header("Content-Type: text/javascript; charset=utf-8");if($_GET["script"]=="db"){$rg=array("Data_length"=>0,"Index_length"=>0,"Data_free"=>0);foreach(table_status()as$E=>$R){json_row("Comment-$E",h($R["Comment"]));if(!is_view($R)){foreach(array("Engine","Collation")as$z)json_row("$z-$E",h($R[$z]));foreach($rg+array("Auto_increment"=>0,"Rows"=>0)as$z=>$X){if($R[$z]!=""){$X=format_number($R[$z]);json_row("$z-$E",($z=="Rows"&&$X&&$R["Engine"]==($dg=="pgsql"?"table":"InnoDB")?"~ $X":$X));if(isset($rg[$z]))$rg[$z]+=($R["Engine"]!="InnoDB"||$z!="Data_free"?$R[$z]:0);}elseif(array_key_exists($z,$R))json_row("$z-$E");}}}foreach($rg 
as$z=>$X)json_row("sum-$z",format_number($X));json_row("");}elseif($_GET["script"]=="kill")$g->query("KILL ".number($_POST["kill"]));else{foreach(count_tables($c->databases())as$k=>$X){json_row("tables-$k",$X);json_row("size-$k",db_size($k));}json_row("");}exit;}else{$zg=array_merge((array)$_POST["tables"],(array)$_POST["views"]);if($zg&&!$m&&!$_POST["search"]){$J=true;$D="";if($y=="sql"&&$_POST["tables"]&&count($_POST["tables"])>1&&($_POST["drop"]||$_POST["truncate"]||$_POST["copy"]))queries("SET foreign_key_checks = 0");if($_POST["truncate"]){if($_POST["tables"])$J=truncate_tables($_POST["tables"]);$D=lang(245);}elseif($_POST["move"]){$J=move_tables((array)$_POST["tables"],(array)$_POST["views"],$_POST["target"]);$D=lang(246);}elseif($_POST["copy"]){$J=copy_tables((array)$_POST["tables"],(array)$_POST["views"],$_POST["target"]);$D=lang(247);}elseif($_POST["drop"]){if($_POST["views"])$J=drop_views($_POST["views"]);if($J&&$_POST["tables"])$J=drop_tables($_POST["tables"]);$D=lang(248);}elseif($y!="sql"){$J=($y=="sqlite"?queries("VACUUM"):apply_queries("VACUUM".($_POST["optimize"]?"":" ANALYZE"),$_POST["tables"]));$D=lang(249);}elseif(!$_POST["tables"])$D=lang(9);elseif($J=queries(($_POST["optimize"]?"OPTIMIZE":($_POST["check"]?"CHECK":($_POST["repair"]?"REPAIR":"ANALYZE")))." TABLE ".implode(", ",array_map('idf_escape',$_POST["tables"])))){while($L=$J->fetch_assoc())$D.="<b>".h($L["Table"])."</b>: ".h($L["Msg_text"])."<br>";}queries_redirect(substr(ME,0,-1),$D,$J);}page_header(($_GET["ns"]==""?lang(26).": ".h(DB):lang(189).": ".h($_GET["ns"])),$m,true);if($c->homepage()){if($_GET["ns"]!==""){echo"<h3 id='tables-views'>".lang(250)."</h3>\n";$yg=tables_list();if(!$yg)echo"<p class='message'>".lang(9)."\n";else{echo"<form action='' method='post'>\n";if(support("table")){echo"<fieldset><legend>".lang(251)." <span id='selected2'></span></legend><div>","<input type='search' name='query' value='".h($_POST["query"])."'>",script("qsl('input').onkeydown = partialArg(bodyKeydown, 'search');","")," <input type='submit' name='search' value='".lang(45)."'>\n","</div></fieldset>\n";if($_POST["search"]&&$_POST["query"]!=""){$_GET["where"][0]["op"]="LIKE %%";search_tables();}}echo"<div class='scrollable'>\n","<table cellspacing='0' class='nowrap checkable'>\n",script("mixin(qsl('table'), {onclick: tableClick, ondblclick: partialArg(tableClick, true)});"),'<thead><tr class="wrap">','<td><input id="check-all" type="checkbox" class="jsonly">'.script("qs('#check-all').onclick = partial(formCheck, /^(tables|views)\[/);",""),'<th>'.lang(124),'<td>'.lang(252).doc_link(array('sql'=>'storage-engines.html')),'<td>'.lang(116).doc_link(array('sql'=>'charset-charsets.html','mariadb'=>'supported-character-sets-and-collations/')),'<td>'.lang(253).doc_link(array('sql'=>'show-table-status.html',)),'<td>'.lang(254).doc_link(array('sql'=>'show-table-status.html',)),'<td>'.lang(255).doc_link(array('sql'=>'show-table-status.html')),'<td>'.lang(40).doc_link(array('sql'=>'example-auto-increment.html','mariadb'=>'auto_increment/')),'<td>'.lang(256).doc_link(array('sql'=>'show-table-status.html',)),(support("comment")?'<td>'.lang(39).doc_link(array('sql'=>'show-table-status.html',)):''),"</thead>\n";$S=0;foreach($yg 
as$E=>$U){$vh=($U!==null&&!preg_match('~table|sequence~i',$U));$u=h("Table-".$E);echo'<tr'.odd().'><td>'.checkbox(($vh?"views[]":"tables[]"),$E,in_array($E,$zg,true),"","","",$u),'<th>'.(support("table")||support("indexes")?"<a href='".h(ME)."table=".urlencode($E)."' title='".lang(31)."' id='$u'>".h($E).'</a>':h($E));if($vh){echo'<td colspan="6"><a href="'.h(ME)."view=".urlencode($E).'" title="'.lang(32).'">'.(preg_match('~materialized~i',$U)?lang(122):lang(123)).'</a>','<td align="right"><a href="'.h(ME)."select=".urlencode($E).'" title="'.lang(30).'">?</a>';}else{foreach(array("Engine"=>array(),"Collation"=>array(),"Data_length"=>array("create",lang(33)),"Index_length"=>array("indexes",lang(126)),"Data_free"=>array("edit",lang(34)),"Auto_increment"=>array("auto_increment=1&create",lang(33)),"Rows"=>array("select",lang(30)),)as$z=>$A){$u=" id='$z-".h($E)."'";echo($A?"<td align='right'>".(support("table")||$z=="Rows"||(support("indexes")&&$z!="Data_length")?"<a href='".h(ME."$A[0]=").urlencode($E)."'$u title='$A[1]'>?</a>":"<span$u>?</span>"):"<td id='$z-".h($E)."'>");}$S++;}echo(support("comment")?"<td id='Comment-".h($E)."'>":"");}echo"<tr><td><th>".lang(229,count($yg)),"<td>".h($y=="sql"?$g->result("SELECT @@default_storage_engine"):""),"<td>".h(db_collation(DB,collations()));foreach(array("Data_length","Index_length","Data_free")as$z)echo"<td align='right' id='sum-$z'>";echo"</table>\n","</div>\n";if(!information_schema(DB)){echo"<div class='footer'><div>\n";$qh="<input type='submit' value='".lang(257)."'> ".on_help("'VACUUM'");$we="<input type='submit' name='optimize' value='".lang(258)."'> ".on_help($y=="sql"?"'OPTIMIZE TABLE'":"'VACUUM OPTIMIZE'");echo"<fieldset><legend>".lang(120)." <span id='selected'></span></legend><div>".($y=="sqlite"?$qh:($y=="pgsql"?$qh.$we:($y=="sql"?"<input type='submit' value='".lang(259)."'> ".on_help("'ANALYZE TABLE'").$we."<input type='submit' name='check' value='".lang(260)."'> ".on_help("'CHECK TABLE'")."<input type='submit' name='repair' value='".lang(261)."'> ".on_help("'REPAIR TABLE'"):"")))."<input type='submit' name='truncate' value='".lang(262)."'> ".on_help($y=="sqlite"?"'DELETE'":"'TRUNCATE".($y=="pgsql"?"'":" TABLE'")).confirm()."<input type='submit' name='drop' value='".lang(121)."'>".on_help("'DROP TABLE'").confirm()."\n";$j=(support("scheme")?$c->schemas():$c->databases());if(count($j)!=1&&$y!="sqlite"){$k=(isset($_POST["target"])?$_POST["target"]:(support("scheme")?$_GET["ns"]:DB));echo"<p>".lang(263).": ",($j?html_select("target",$j,$k):'<input name="target" value="'.h($k).'" autocapitalize="off">')," <input type='submit' name='move' value='".lang(264)."'>",(support("copy")?" <input type='submit' name='copy' value='".lang(265)."'> ".checkbox("overwrite",1,$_POST["overwrite"],lang(266)):""),"\n";}echo"<input type='hidden' name='all' value=''>";echo 
script("qsl('input').onclick = function () { selectCount('selected', formChecked(this, /^(tables|views)\[/));".(support("table")?" selectCount('selected2', formChecked(this, /^tables\[/) || $S);":"")." }"),"<input type='hidden' name='token' value='$T'>\n","</div></fieldset>\n","</div></div>\n";}echo"</form>\n",script("tableCheck();");}echo'<p class="links"><a href="'.h(ME).'create=">'.lang(63)."</a>\n",(support("view")?'<a href="'.h(ME).'view=">'.lang(195)."</a>\n":"");if(support("routine")){echo"<h3 id='routines'>".lang(136)."</h3>\n";$Hf=routines();if($Hf){echo"<table cellspacing='0'>\n",'<thead><tr><th>'.lang(176).'<td>'.lang(38).'<td>'.lang(212)."<td></thead>\n";odd('');foreach($Hf 
as$L){$E=($L["SPECIFIC_NAME"]==$L["ROUTINE_NAME"]?"":"&name=".urlencode($L["ROUTINE_NAME"]));echo'<tr'.odd().'>','<th><a href="'.h(ME.($L["ROUTINE_TYPE"]!="PROCEDURE"?'callf=':'call=').urlencode($L["SPECIFIC_NAME"]).$E).'">'.h($L["ROUTINE_NAME"]).'</a>','<td>'.h($L["ROUTINE_TYPE"]),'<td>'.h($L["DTD_IDENTIFIER"]),'<td><a href="'.h(ME.($L["ROUTINE_TYPE"]!="PROCEDURE"?'function=':'procedure=').urlencode($L["SPECIFIC_NAME"]).$E).'">'.lang(129)."</a>";}echo"</table>\n";}echo'<p class="links">'.(support("procedure")?'<a href="'.h(ME).'procedure=">'.lang(211).'</a>':'').'<a href="'.h(ME).'function=">'.lang(210)."</a>\n";}if(support("event")){echo"<h3 id='events'>".lang(137)."</h3>\n";$M=get_rows("SHOW EVENTS");if($M){echo"<table cellspacing='0'>\n","<thead><tr><th>".lang(176)."<td>".lang(267)."<td>".lang(201)."<td>".lang(202)."<td></thead>\n";foreach($M 
as$L){echo"<tr>","<th>".h($L["Name"]),"<td>".($L["Execute at"]?lang(268)."<td>".$L["Execute at"]:lang(203)." ".$L["Interval value"]." ".$L["Interval field"]."<td>$L[Starts]"),"<td>$L[Ends]",'<td><a href="'.h(ME).'event='.urlencode($L["Name"]).'">'.lang(129).'</a>';}echo"</table>\n";$gc=$g->result("SELECT @@event_scheduler");if($gc&&$gc!="ON")echo"<p class='error'><code class='jush-sqlset'>event_scheduler</code>: ".h($gc)."\n";}echo'<p clsass="links"><a href="'.h(ME).'event=">'.lang(200)."</a>\n";}if($yg)echo 
script("ajaxSetHtml('".js_escape(ME)."script=db');");}}}page_footer();

Did this file decode correctly?

Original Code

<?php
/** Adminer - Compact database management
* @link https://www.adminer.org/
* @author Jakub Vrana, https://www.vrana.cz/
* @copyright 2007 Jakub Vrana
* @license https://www.apache.org/licenses/LICENSE-2.0 Apache License, Version 2.0
* @license https://www.gnu.org/licenses/gpl-2.0.html GNU General Public License, version 2 (one or other)
* @version 4.8.1
*/function
adminer_errors($cc,$ec){return!!preg_match('~^(Trying to access array offset on value of type null|Undefined array key)~',$ec);}error_reporting(6135);set_error_handler('adminer_errors',E_WARNING);$wc=!preg_match('~^(unsafe_raw)?$~',ini_get("filter.default"));if($wc||ini_get("filter.default_flags")){foreach(array('_GET','_POST','_COOKIE','_SERVER')as$X){$fh=filter_input_array(constant("INPUT$X"),FILTER_UNSAFE_RAW);if($fh)$$X=$fh;}}if(function_exists("mb_internal_encoding"))mb_internal_encoding("8bit");function
connection(){global$g;return$g;}function
adminer(){global$c;return$c;}function
version(){global$fa;return$fa;}function
idf_unescape($v){if(!preg_match('~^[`\'"]~',$v))return$v;$wd=substr($v,-1);return
str_replace($wd.$wd,$wd,substr($v,1,-1));}function
escape_string($X){return
substr(q($X),1,-1);}function
number($X){return
preg_replace('~[^0-9]+~','',$X);}function
number_type(){return'((?<!o)int(?!er)|numeric|real|float|double|decimal|money)';}function
remove_slashes($kf,$wc=false){if(function_exists("get_magic_quotes_gpc")&&get_magic_quotes_gpc()){while(list($z,$X)=each($kf)){foreach($X
as$od=>$W){unset($kf[$z][$od]);if(is_array($W)){$kf[$z][stripslashes($od)]=$W;$kf[]=&$kf[$z][stripslashes($od)];}else$kf[$z][stripslashes($od)]=($wc?$W:stripslashes($W));}}}}function
bracket_escape($v,$_a=false){static$Sg=array(':'=>':1',']'=>':2','['=>':3','"'=>':4');return
strtr($v,($_a?array_flip($Sg):$Sg));}function
min_version($uh,$Id="",$h=null){global$g;if(!$h)$h=$g;$Sf=$h->server_info;if($Id&&preg_match('~([\d.]+)-MariaDB~',$Sf,$C)){$Sf=$C[1];$uh=$Id;}return(version_compare($Sf,$uh)>=0);}function
charset($g){return(min_version("5.5.3",0,$g)?"utf8mb4":"utf8");}function
script($bg,$Rg="\n"){return"<script".nonce().">$bg</script>$Rg";}function
script_src($kh){return"<script src='".h($kh)."'".nonce()."></script>\n";}function
nonce(){return' nonce="'.get_nonce().'"';}function
target_blank(){return' target="_blank" rel="noreferrer noopener"';}function
h($lg){return
str_replace("\0","&#0;",htmlspecialchars($lg,ENT_QUOTES,'utf-8'));}function
nl_br($lg){return
str_replace("\n","<br>",$lg);}function
checkbox($E,$Y,$Na,$sd="",$te="",$Ra="",$td=""){$K="<input type='checkbox' name='$E' value='".h($Y)."'".($Na?" checked":"").($td?" aria-labelledby='$td'":"").">".($te?script("qsl('input').onclick = function () { $te };",""):"");return($sd!=""||$Ra?"<label".($Ra?" class='$Ra'":"").">$K".h($sd)."</label>":$K);}function
optionlist($xe,$Nf=null,$oh=false){$K="";foreach($xe
as$od=>$W){$ye=array($od=>$W);if(is_array($W)){$K.='<optgroup label="'.h($od).'">';$ye=$W;}foreach($ye
as$z=>$X)$K.='<option'.($oh||is_string($z)?' value="'.h($z).'"':'').(($oh||is_string($z)?(string)$z:$X)===$Nf?' selected':'').'>'.h($X);if(is_array($W))$K.='</optgroup>';}return$K;}function
html_select($E,$xe,$Y="",$se=true,$td=""){if($se)return"<select name='".h($E)."'".($td?" aria-labelledby='$td'":"").">".optionlist($xe,$Y)."</select>".(is_string($se)?script("qsl('select').onchange = function () { $se };",""):"");$K="";foreach($xe
as$z=>$X)$K.="<label><input type='radio' name='".h($E)."' value='".h($z)."'".($z==$Y?" checked":"").">".h($X)."</label>";return$K;}function
select_input($wa,$xe,$Y="",$se="",$Xe=""){$_g=($xe?"select":"input");return"<$_g$wa".($xe?"><option value=''>$Xe".optionlist($xe,$Y,true)."</select>":" size='10' value='".h($Y)."' placeholder='$Xe'>").($se?script("qsl('$_g').onchange = $se;",""):"");}function
confirm($D="",$Of="qsl('input')"){return
script("$Of.onclick = function () { return confirm('".($D?js_escape($D):lang(0))."'); };","");}function
print_fieldset($u,$Ad,$xh=false){echo"<fieldset><legend>","<a href='#fieldset-$u'>$Ad</a>",script("qsl('a').onclick = partial(toggle, 'fieldset-$u');",""),"</legend>","<div id='fieldset-$u'".($xh?"":" class='hidden'").">\n";}function
bold($Ga,$Ra=""){return($Ga?" class='active $Ra'":($Ra?" class='$Ra'":""));}function
odd($K=' class="odd"'){static$t=0;if(!$K)$t=-1;return($t++%2?$K:'');}function
js_escape($lg){return
addcslashes($lg,"\r\n'\\/");}function
json_row($z,$X=null){static$xc=true;if($xc)echo"{";if($z!=""){echo($xc?"":",")."\n\t\"".addcslashes($z,"\r\n\t\"\\/").'": '.($X!==null?'"'.addcslashes($X,"\r\n\"\\/").'"':'null');$xc=false;}else{echo"\n}\n";$xc=true;}}function
ini_bool($cd){$X=ini_get($cd);return(preg_match('~^(on|true|yes)$~i',$X)||(int)$X);}function
sid(){static$K;if($K===null)$K=(SID&&!($_COOKIE&&ini_bool("session.use_cookies")));return$K;}function
set_password($th,$O,$V,$G){$_SESSION["pwds"][$th][$O][$V]=($_COOKIE["adminer_key"]&&is_string($G)?array(encrypt_string($G,$_COOKIE["adminer_key"])):$G);}function
get_password(){$K=get_session("pwds");if(is_array($K))$K=($_COOKIE["adminer_key"]?decrypt_string($K[0],$_COOKIE["adminer_key"]):false);return$K;}function
q($lg){global$g;return$g->quote($lg);}function
get_vals($I,$d=0){global$g;$K=array();$J=$g->query($I);if(is_object($J)){while($L=$J->fetch_row())$K[]=$L[$d];}return$K;}function
get_key_vals($I,$h=null,$Vf=true){global$g;if(!is_object($h))$h=$g;$K=array();$J=$h->query($I);if(is_object($J)){while($L=$J->fetch_row()){if($Vf)$K[$L[0]]=$L[1];else$K[]=$L[0];}}return$K;}function
get_rows($I,$h=null,$m="<p class='error'>"){global$g;$fb=(is_object($h)?$h:$g);$K=array();$J=$fb->query($I);if(is_object($J)){while($L=$J->fetch_assoc())$K[]=$L;}elseif(!$J&&!is_object($h)&&$m&&defined("PAGE_HEADER"))echo$m.error()."\n";return$K;}function
unique_array($L,$x){foreach($x
as$w){if(preg_match("~PRIMARY|UNIQUE~",$w["type"])){$K=array();foreach($w["columns"]as$z){if(!isset($L[$z]))continue
2;$K[$z]=$L[$z];}return$K;}}}function
escape_key($z){if(preg_match('(^([\w(]+)('.str_replace("_",".*",preg_quote(idf_escape("_"))).')([ \w)]+)$)',$z,$C))return$C[1].idf_escape(idf_unescape($C[2])).$C[3];return
idf_escape($z);}function
where($Z,$o=array()){global$g,$y;$K=array();foreach((array)$Z["where"]as$z=>$X){$z=bracket_escape($z,1);$d=escape_key($z);$K[]=$d.($y=="sql"&&is_numeric($X)&&preg_match('~\.~',$X)?" LIKE ".q($X):($y=="mssql"?" LIKE ".q(preg_replace('~[_%[]~','[\0]',$X)):" = ".unconvert_field($o[$z],q($X))));if($y=="sql"&&preg_match('~char|text~',$o[$z]["type"])&&preg_match("~[^ -@]~",$X))$K[]="$d = ".q($X)." COLLATE ".charset($g)."_bin";}foreach((array)$Z["null"]as$z)$K[]=escape_key($z)." IS NULL";return
implode(" AND ",$K);}function
where_check($X,$o=array()){parse_str($X,$Ma);remove_slashes(array(&$Ma));return
where($Ma,$o);}function
where_link($t,$d,$Y,$ue="="){return"&where%5B$t%5D%5Bcol%5D=".urlencode($d)."&where%5B$t%5D%5Bop%5D=".urlencode(($Y!==null?$ue:"IS NULL"))."&where%5B$t%5D%5Bval%5D=".urlencode($Y);}function
convert_fields($e,$o,$N=array()){$K="";foreach($e
as$z=>$X){if($N&&!in_array(idf_escape($z),$N))continue;$ua=convert_field($o[$z]);if($ua)$K.=", $ua AS ".idf_escape($z);}return$K;}function
cookie($E,$Y,$Dd=2592000){global$ba;return
header("Set-Cookie: $E=".urlencode($Y).($Dd?"; expires=".gmdate("D, d M Y H:i:s",time()+$Dd)." GMT":"")."; path=".preg_replace('~\?.*~','',$_SERVER["REQUEST_URI"]).($ba?"; secure":"")."; HttpOnly; SameSite=lax",false);}function
restart_session(){if(!ini_bool("session.use_cookies"))session_start();}function
stop_session($zc=false){$nh=ini_bool("session.use_cookies");if(!$nh||$zc){session_write_close();if($nh&&@ini_set("session.use_cookies",false)===false)session_start();}}function&get_session($z){return$_SESSION[$z][DRIVER][SERVER][$_GET["username"]];}function
set_session($z,$X){$_SESSION[$z][DRIVER][SERVER][$_GET["username"]]=$X;}function
auth_url($th,$O,$V,$k=null){global$Kb;preg_match('~([^?]*)\??(.*)~',remove_from_uri(implode("|",array_keys($Kb))."|username|".($k!==null?"db|":"").session_name()),$C);return"$C[1]?".(sid()?SID."&":"").($th!="server"||$O!=""?urlencode($th)."=".urlencode($O)."&":"")."username=".urlencode($V).($k!=""?"&db=".urlencode($k):"").($C[2]?"&$C[2]":"");}function
is_ajax(){return($_SERVER["HTTP_X_REQUESTED_WITH"]=="XMLHttpRequest");}function
redirect($B,$D=null){if($D!==null){restart_session();$_SESSION["messages"][preg_replace('~^[^?]*~','',($B!==null?$B:$_SERVER["REQUEST_URI"]))][]=$D;}if($B!==null){if($B=="")$B=".";header("Location: $B");exit;}}function
query_redirect($I,$B,$D,$sf=true,$jc=true,$qc=false,$Gg=""){global$g,$m,$c;if($jc){$hg=microtime(true);$qc=!$g->query($I);$Gg=format_time($hg);}$dg="";if($I)$dg=$c->messageQuery($I,$Gg,$qc);if($qc){$m=error().$dg.script("messagesPrint();");return
false;}if($sf)redirect($B,$D.$dg);return
true;}function
queries($I){global$g;static$nf=array();static$hg;if(!$hg)$hg=microtime(true);if($I===null)return
array(implode("\n",$nf),format_time($hg));$nf[]=(preg_match('~;$~',$I)?"DELIMITER ;;\n$I;\nDELIMITER ":$I).";";return$g->query($I);}function
apply_queries($I,$S,$fc='table'){foreach($S
as$Q){if(!queries("$I ".$fc($Q)))return
false;}return
true;}function
queries_redirect($B,$D,$sf){list($nf,$Gg)=queries(null);return
query_redirect($nf,$B,$D,$sf,false,!$sf,$Gg);}function
format_time($hg){return
lang(1,max(0,microtime(true)-$hg));}function
relative_uri(){return
str_replace(":","%3a",preg_replace('~^[^?]*/([^?]*)~','\1',$_SERVER["REQUEST_URI"]));}function
remove_from_uri($Le=""){return
substr(preg_replace("~(?<=[?&])($Le".(SID?"":"|".session_name()).")=[^&]*&~",'',relative_uri()."&"),0,-1);}function
pagination($F,$qb){return" ".($F==$qb?$F+1:'<a href="'.h(remove_from_uri("page").($F?"&page=$F".($_GET["next"]?"&next=".urlencode($_GET["next"]):""):"")).'">'.($F+1)."</a>");}function
get_file($z,$yb=false){$uc=$_FILES[$z];if(!$uc)return
null;foreach($uc
as$z=>$X)$uc[$z]=(array)$X;$K='';foreach($uc["error"]as$z=>$m){if($m)return$m;$E=$uc["name"][$z];$Og=$uc["tmp_name"][$z];$gb=file_get_contents($yb&&preg_match('~\.gz$~',$E)?"compress.zlib://$Og":$Og);if($yb){$hg=substr($gb,0,3);if(function_exists("iconv")&&preg_match("~^\xFE\xFF|^\xFF\xFE~",$hg,$yf))$gb=iconv("utf-16","utf-8",$gb);elseif($hg=="\xEF\xBB\xBF")$gb=substr($gb,3);$K.=$gb."\n\n";}else$K.=$gb;}return$K;}function
upload_error($m){$Od=($m==UPLOAD_ERR_INI_SIZE?ini_get("upload_max_filesize"):0);return($m?lang(2).($Od?" ".lang(3,$Od):""):lang(4));}function
repeat_pattern($Ue,$Bd){return
str_repeat("$Ue{0,65535}",$Bd/65535)."$Ue{0,".($Bd%65535)."}";}function
is_utf8($X){return(preg_match('~~u',$X)&&!preg_match('~[\0-\x8\xB\xC\xE-\x1F]~',$X));}function
shorten_utf8($lg,$Bd=80,$pg=""){if(!preg_match("(^(".repeat_pattern("[\t\r\n -\x{10FFFF}]",$Bd).")($)?)u",$lg,$C))preg_match("(^(".repeat_pattern("[\t\r\n -~]",$Bd).")($)?)",$lg,$C);return
h($C[1]).$pg.(isset($C[2])?"":"<i></i>");}function
format_number($X){return
strtr(number_format($X,0,".",lang(5)),preg_split('~~u',lang(6),-1,PREG_SPLIT_NO_EMPTY));}function
friendly_url($X){return
preg_replace('~[^a-z0-9_]~i','-',$X);}function
hidden_fields($kf,$Yc=array(),$df=''){$K=false;foreach($kf
as$z=>$X){if(!in_array($z,$Yc)){if(is_array($X))hidden_fields($X,array(),$z);else{$K=true;echo'<input type="hidden" name="'.h($df?$df."[$z]":$z).'" value="'.h($X).'">';}}}return$K;}function
hidden_fields_get(){echo(sid()?'<input type="hidden" name="'.session_name().'" value="'.h(session_id()).'">':''),(SERVER!==null?'<input type="hidden" name="'.DRIVER.'" value="'.h(SERVER).'">':""),'<input type="hidden" name="username" value="'.h($_GET["username"]).'">';}function
table_status1($Q,$rc=false){$K=table_status($Q,$rc);return($K?$K:array("Name"=>$Q));}function
column_foreign_keys($Q){global$c;$K=array();foreach($c->foreignKeys($Q)as$p){foreach($p["source"]as$X)$K[$X][]=$p;}return$K;}function
enum_input($U,$wa,$n,$Y,$Yb=null){global$c;preg_match_all("~'((?:[^']|'')*)'~",$n["length"],$Jd);$K=($Yb!==null?"<label><input type='$U'$wa value='$Yb'".((is_array($Y)?in_array($Yb,$Y):$Y===0)?" checked":"")."><i>".lang(7)."</i></label>":"");foreach($Jd[1]as$t=>$X){$X=stripcslashes(str_replace("''","'",$X));$Na=(is_int($Y)?$Y==$t+1:(is_array($Y)?in_array($t+1,$Y):$Y===$X));$K.=" <label><input type='$U'$wa value='".($t+1)."'".($Na?' checked':'').'>'.h($c->editVal($X,$n)).'</label>';}return$K;}function
input($n,$Y,$r){global$ah,$c,$y;$E=h(bracket_escape($n["field"]));echo"<td class='function'>";if(is_array($Y)&&!$r){$ta=array($Y);if(version_compare(PHP_VERSION,5.4)>=0)$ta[]=JSON_PRETTY_PRINT;$Y=call_user_func_array('json_encode',$ta);$r="json";}$_f=($y=="mssql"&&$n["auto_increment"]);if($_f&&!$_POST["save"])$r=null;$Gc=(isset($_GET["select"])||$_f?array("orig"=>lang(8)):array())+$c->editFunctions($n);$wa=" name='fields[$E]'";if($n["type"]=="enum")echo
h($Gc[""])."<td>".$c->editInput($_GET["edit"],$n,$wa,$Y);else{$Pc=(in_array($r,$Gc)||isset($Gc[$r]));echo(count($Gc)>1?"<select name='function[$E]'>".optionlist($Gc,$r===null||$Pc?$r:"")."</select>".on_help("getTarget(event).value.replace(/^SQL\$/, '')",1).script("qsl('select').onchange = functionChange;",""):h(reset($Gc))).'<td>';$ed=$c->editInput($_GET["edit"],$n,$wa,$Y);if($ed!="")echo$ed;elseif(preg_match('~bool~',$n["type"]))echo"<input type='hidden'$wa value='0'>"."<input type='checkbox'".(preg_match('~^(1|t|true|y|yes|on)$~i',$Y)?" checked='checked'":"")."$wa value='1'>";elseif($n["type"]=="set"){preg_match_all("~'((?:[^']|'')*)'~",$n["length"],$Jd);foreach($Jd[1]as$t=>$X){$X=stripcslashes(str_replace("''","'",$X));$Na=(is_int($Y)?($Y>>$t)&1:in_array($X,explode(",",$Y),true));echo" <label><input type='checkbox' name='fields[$E][$t]' value='".(1<<$t)."'".($Na?' checked':'').">".h($c->editVal($X,$n)).'</label>';}}elseif(preg_match('~blob|bytea|raw|file~',$n["type"])&&ini_bool("file_uploads"))echo"<input type='file' name='fields-$E'>";elseif(($Eg=preg_match('~text|lob|memo~i',$n["type"]))||preg_match("~\n~",$Y)){if($Eg&&$y!="sqlite")$wa.=" cols='50' rows='12'";else{$M=min(12,substr_count($Y,"\n")+1);$wa.=" cols='30' rows='$M'".($M==1?" style='height: 1.2em;'":"");}echo"<textarea$wa>".h($Y).'</textarea>';}elseif($r=="json"||preg_match('~^jsonb?$~',$n["type"]))echo"<textarea$wa cols='50' rows='12' class='jush-js'>".h($Y).'</textarea>';else{$Qd=(!preg_match('~int~',$n["type"])&&preg_match('~^(\d+)(,(\d+))?$~',$n["length"],$C)?((preg_match("~binary~",$n["type"])?2:1)*$C[1]+($C[3]?1:0)+($C[2]&&!$n["unsigned"]?1:0)):($ah[$n["type"]]?$ah[$n["type"]]+($n["unsigned"]?0:1):0));if($y=='sql'&&min_version(5.6)&&preg_match('~time~',$n["type"]))$Qd+=7;echo"<input".((!$Pc||$r==="")&&preg_match('~(?<!o)int(?!er)~',$n["type"])&&!preg_match('~\[\]~',$n["full_type"])?" type='number'":"")." value='".h($Y)."'".($Qd?" data-maxlength='$Qd'":"").(preg_match('~char|binary~',$n["type"])&&$Qd>20?" size='40'":"")."$wa>";}echo$c->editHint($_GET["edit"],$n,$Y);$xc=0;foreach($Gc
as$z=>$X){if($z===""||!$X)break;$xc++;}if($xc)echo
script("mixin(qsl('td'), {onchange: partial(skipOriginal, $xc), oninput: function () { this.onchange(); }});");}}function
process_input($n){global$c,$l;$v=bracket_escape($n["field"]);$r=$_POST["function"][$v];$Y=$_POST["fields"][$v];if($n["type"]=="enum"){if($Y==-1)return
false;if($Y=="")return"NULL";return+$Y;}if($n["auto_increment"]&&$Y=="")return
null;if($r=="orig")return(preg_match('~^CURRENT_TIMESTAMP~i',$n["on_update"])?idf_escape($n["field"]):false);if($r=="NULL")return"NULL";if($n["type"]=="set")return
array_sum((array)$Y);if($r=="json"){$r="";$Y=json_decode($Y,true);if(!is_array($Y))return
false;return$Y;}if(preg_match('~blob|bytea|raw|file~',$n["type"])&&ini_bool("file_uploads")){$uc=get_file("fields-$v");if(!is_string($uc))return
false;return$l->quoteBinary($uc);}return$c->processInput($n,$Y,$r);}function
fields_from_edit(){global$l;$K=array();foreach((array)$_POST["field_keys"]as$z=>$X){if($X!=""){$X=bracket_escape($X);$_POST["function"][$X]=$_POST["field_funs"][$z];$_POST["fields"][$X]=$_POST["field_vals"][$z];}}foreach((array)$_POST["fields"]as$z=>$X){$E=bracket_escape($z,1);$K[$E]=array("field"=>$E,"privileges"=>array("insert"=>1,"update"=>1),"null"=>1,"auto_increment"=>($z==$l->primary),);}return$K;}function
search_tables(){global$c,$g;$_GET["where"][0]["val"]=$_POST["query"];$Qf="<ul>\n";foreach(table_status('',true)as$Q=>$R){$E=$c->tableName($R);if(isset($R["Engine"])&&$E!=""&&(!$_POST["tables"]||in_array($Q,$_POST["tables"]))){$J=$g->query("SELECT".limit("1 FROM ".table($Q)," WHERE ".implode(" AND ",$c->selectSearchProcess(fields($Q),array())),1));if(!$J||$J->fetch_row()){$gf="<a href='".h(ME."select=".urlencode($Q)."&where[0][op]=".urlencode($_GET["where"][0]["op"])."&where[0][val]=".urlencode($_GET["where"][0]["val"]))."'>$E</a>";echo"$Qf<li>".($J?$gf:"<p class='error'>$gf: ".error())."\n";$Qf="";}}}echo($Qf?"<p class='message'>".lang(9):"</ul>")."\n";}function
dump_headers($Xc,$Xd=false){global$c;$K=$c->dumpHeaders($Xc,$Xd);$Ie=$_POST["output"];if($Ie!="text")header("Content-Disposition: attachment; filename=".$c->dumpFilename($Xc).".$K".($Ie!="file"&&preg_match('~^[0-9a-z]+$~',$Ie)?".$Ie":""));session_write_close();ob_flush();flush();return$K;}function
dump_csv($L){foreach($L
as$z=>$X){if(preg_match('~["\n,;\t]|^0|\.\d*0$~',$X)||$X==="")$L[$z]='"'.str_replace('"','""',$X).'"';}echo
implode(($_POST["format"]=="csv"?",":($_POST["format"]=="tsv"?"\t":";")),$L)."\r\n";}function
apply_sql_function($r,$d){return($r?($r=="unixepoch"?"DATETIME($d, '$r')":($r=="count distinct"?"COUNT(DISTINCT ":strtoupper("$r("))."$d)"):$d);}function
get_temp_dir(){$K=ini_get("upload_tmp_dir");if(!$K){if(function_exists('sys_get_temp_dir'))$K=sys_get_temp_dir();else{$vc=@tempnam("","");if(!$vc)return
false;$K=dirname($vc);unlink($vc);}}return$K;}function
file_open_lock($vc){$q=@fopen($vc,"r+");if(!$q){$q=@fopen($vc,"w");if(!$q)return;chmod($vc,0660);}flock($q,LOCK_EX);return$q;}function
file_write_unlock($q,$sb){rewind($q);fwrite($q,$sb);ftruncate($q,strlen($sb));flock($q,LOCK_UN);fclose($q);}function
password_file($i){$vc=get_temp_dir()."/adminer.key";$K=@file_get_contents($vc);if($K||!$i)return$K;$q=@fopen($vc,"w");if($q){chmod($vc,0660);$K=rand_string();fwrite($q,$K);fclose($q);}return$K;}function
rand_string(){return
md5(uniqid(mt_rand(),true));}function
select_value($X,$A,$n,$Fg){global$c;if(is_array($X)){$K="";foreach($X
as$od=>$W)$K.="<tr>".($X!=array_values($X)?"<th>".h($od):"")."<td>".select_value($W,$A,$n,$Fg);return"<table cellspacing='0'>$K</table>";}if(!$A)$A=$c->selectLink($X,$n);if($A===null){if(is_mail($X))$A="mailto:$X";if(is_url($X))$A=$X;}$K=$c->editVal($X,$n);if($K!==null){if(!is_utf8($K))$K="\0";elseif($Fg!=""&&is_shortable($n))$K=shorten_utf8($K,max(0,+$Fg));else$K=h($K);}return$c->selectVal($K,$A,$n,$X);}function
is_mail($Vb){$va='[-a-z0-9!#$%&\'*+/=?^_`{|}~]';$Jb='[a-z0-9]([-a-z0-9]{0,61}[a-z0-9])';$Ue="$va+(\\.$va+)*@($Jb?\\.)+$Jb";return
is_string($Vb)&&preg_match("(^$Ue(,\\s*$Ue)*\$)i",$Vb);}function
is_url($lg){$Jb='[a-z0-9]([-a-z0-9]{0,61}[a-z0-9])';return
preg_match("~^(https?)://($Jb?\\.)+$Jb(:\\d+)?(/.*)?(\\?.*)?(#.*)?\$~i",$lg);}function
is_shortable($n){return
preg_match('~char|text|json|lob|geometry|point|linestring|polygon|string|bytea~',$n["type"]);}function
count_rows($Q,$Z,$kd,$s){global$y;$I=" FROM ".table($Q).($Z?" WHERE ".implode(" AND ",$Z):"");return($kd&&($y=="sql"||count($s)==1)?"SELECT COUNT(DISTINCT ".implode(", ",$s).")$I":"SELECT COUNT(*)".($kd?" FROM (SELECT 1$I GROUP BY ".implode(", ",$s).") x":$I));}function
slow_query($I){global$c,$T,$l;$k=$c->database();$Hg=$c->queryTimeout();$Zf=$l->slowQuery($I,$Hg);if(!$Zf&&support("kill")&&is_object($h=connect())&&($k==""||$h->select_db($k))){$qd=$h->result(connection_id());echo'<script',nonce(),'>
var timeout = setTimeout(function () {
	ajax(\'',js_escape(ME),'script=kill\', function () {
	}, \'kill=',$qd,'&token=',$T,'\');
}, ',1000*$Hg,');
</script>
';}else$h=null;ob_flush();flush();$K=@get_key_vals(($Zf?$Zf:$I),$h,false);if($h){echo
script("clearTimeout(timeout);");ob_flush();flush();}return$K;}function
get_token(){$qf=rand(1,1e6);return($qf^$_SESSION["token"]).":$qf";}function
verify_token(){list($T,$qf)=explode(":",$_POST["token"]);return($qf^$_SESSION["token"])==$T;}function
lzw_decompress($Da){$Gb=256;$Ea=8;$Ta=array();$Af=0;$Bf=0;for($t=0;$t<strlen($Da);$t++){$Af=($Af<<8)+ord($Da[$t]);$Bf+=8;if($Bf>=$Ea){$Bf-=$Ea;$Ta[]=$Af>>$Bf;$Af&=(1<<$Bf)-1;$Gb++;if($Gb>>$Ea)$Ea++;}}$Fb=range("\0","\xFF");$K="";foreach($Ta
as$t=>$Sa){$Ub=$Fb[$Sa];if(!isset($Ub))$Ub=$Ch.$Ch[0];$K.=$Ub;if($t)$Fb[]=$Ch.$Ub[0];$Ch=$Ub;}return$K;}function
on_help($Za,$Xf=0){return
script("mixin(qsl('select, input'), {onmouseover: function (event) { helpMouseover.call(this, event, $Za, $Xf) }, onmouseout: helpMouseout});","");}function
edit_form($Q,$o,$L,$ih){global$c,$y,$T,$m;$ug=$c->tableName(table_status1($Q,true));page_header(($ih?lang(10):lang(11)),$m,array("select"=>array($Q,$ug)),$ug);$c->editRowPrint($Q,$o,$L,$ih);if($L===false)echo"<p class='error'>".lang(12)."\n";echo'<form action="" method="post" enctype="multipart/form-data" id="form">
';if(!$o)echo"<p class='error'>".lang(13)."\n";else{echo"<table cellspacing='0' class='layout'>".script("qsl('table').onkeydown = editingKeydown;");foreach($o
as$E=>$n){echo"<tr><th>".$c->fieldName($n);$zb=$_GET["set"][bracket_escape($E)];if($zb===null){$zb=$n["default"];if($n["type"]=="bit"&&preg_match("~^b'([01]*)'\$~",$zb,$yf))$zb=$yf[1];}$Y=($L!==null?($L[$E]!=""&&$y=="sql"&&preg_match("~enum|set~",$n["type"])?(is_array($L[$E])?array_sum($L[$E]):+$L[$E]):(is_bool($L[$E])?+$L[$E]:$L[$E])):(!$ih&&$n["auto_increment"]?"":(isset($_GET["select"])?false:$zb)));if(!$_POST["save"]&&is_string($Y))$Y=$c->editVal($Y,$n);$r=($_POST["save"]?(string)$_POST["function"][$E]:($ih&&preg_match('~^CURRENT_TIMESTAMP~i',$n["on_update"])?"now":($Y===false?null:($Y!==null?'':'NULL'))));if(!$_POST&&!$ih&&$Y==$n["default"]&&preg_match('~^[\w.]+\(~',$Y))$r="SQL";if(preg_match("~time~",$n["type"])&&preg_match('~^CURRENT_TIMESTAMP~i',$Y)){$Y="";$r="now";}input($n,$Y,$r);echo"\n";}if(!support("table"))echo"<tr>"."<th><input name='field_keys[]'>".script("qsl('input').oninput = fieldChange;")."<td class='function'>".html_select("field_funs[]",$c->editFunctions(array("null"=>isset($_GET["select"]))))."<td><input name='field_vals[]'>"."\n";echo"</table>\n";}echo"<p>\n";if($o){echo"<input type='submit' value='".lang(14)."'>\n";if(!isset($_GET["select"])){echo"<input type='submit' name='insert' value='".($ih?lang(15):lang(16))."' title='Ctrl+Shift+Enter'>\n",($ih?script("qsl('input').onclick = function () { return !ajaxForm(this.form, '".lang(17)."', this); };"):"");}}echo($ih?"<input type='submit' name='delete' value='".lang(18)."'>".confirm()."\n":($_POST||!$o?"":script("focus(qsa('td', qs('#form'))[1].firstChild);")));if(isset($_GET["select"]))hidden_fields(array("check"=>(array)$_POST["check"],"clone"=>$_POST["clone"],"all"=>$_POST["all"]));echo'<input type="hidden" name="referer" value="',h(isset($_POST["referer"])?$_POST["referer"]:$_SERVER["HTTP_REFERER"]),'">
<input type="hidden" name="save" value="1">
<input type="hidden" name="token" value="',$T,'">
</form>
';}if(isset($_GET["file"])){if($_SERVER["HTTP_IF_MODIFIED_SINCE"]){header("HTTP/1.1 304 Not Modified");exit;}header("Expires: ".gmdate("D, d M Y H:i:s",time()+365*24*60*60)." GMT");header("Last-Modified: ".gmdate("D, d M Y H:i:s")." GMT");header("Cache-Control: immutable");if($_GET["file"]=="favicon.ico"){header("Content-Type: image/x-icon");echo
lzw_decompress("\0\0\0` \0\0\n @\0C"\0`E?tvM'Jdd\\b0\0"fXPaJ08#RTz`#.?-\0Im?.M\0(/(%\0");}elseif($_GET["file"]=="default.css"){header("Content-Type: text/css; charset=utf-8");echo
lzw_decompress("\n17B14vb0sB:#(b.\rDc)a7Esfi744iATVV,:1Q`>:7GLXD*bv<#e@4fo:<o\nia_:iBv|N4.5NfivplOFQk\$2T-:a2#8#6nhtO42*r@p@!6r[Bj!Hb=!1V\"0\nSD7DC!! =tCC:+=cR/E428([W=ySb=BS+@pL4Ydq3Ack[&>Zpkm]u-c:Ntp8#.~mPP9v[Q\n+2Vz8(	Ey*#j2]R)[NR\$<>:$;>rTnwN w\\Yt^>\r}\rz\nL%J\",Z8i0u?s3#:E]xs^8K^*0w~v2w^77cu+U%{P4./!1Cqx!HL65f=Hl V1\0a2_\0&d)KE'n[X\0Z[P@`\"Ee9yF>9b:\0}(\$7HMA6R{MqGCC(Ct>[/&C]G4@r>Sq/QmL6fKPr%t=\"SH\$} )w,W\0Fu@9\rr2DXOI>n%'t\rz\1hl]Q5Mp6kqh$H~|*4SS t\\g\n-:plBc(wO0\\:p4jO6Hrq\n%y']\$aZfc*-kzjlg\$\"\r#c\"j\rPh1/DA)knp76YR{P-a6zJH,dlBho#Dr^^E aPzXV_%K=EbkU(.!8I.@Kn:2m	C*\nR0u]P/JQd{L:Y2bT V=L4rMeLio< GMhm^U5HiM/nT[-<__Xr(<uGNX20\$^:'9fN'ab!%6@$G1(mUN+f0[U-:I^\$b\reug~9bhXr!\$e,w+k\nkcuWdY\\{.gp8t\rRZvJ:>Y|+Ct\rjt6/`~KRwLY*qx~Dxi72_{_zd)C$?KP%T&&\0PA^~p \r\$+D6J\$(lh&S>;zxz>o[2OxV0fBlkZkhXcdT=p0lVrnm(CCrG\r0i:`Z1Q\n:\0q:`-#}1;q#|hlD\0fiDp``0y1MQ\\%oq\0211 bi:r/ `)@1NZ1 \rdIv1 t0:0A2V%fi3!&QRc%&w%\r#Qw`% *r&ir{*(rg(#(2(@i- 1\"\0Re.r,ry(2Cb3%,R1a\rL-3Bp1O'R3*=\$^iI;/3i5&}17# 8\"823!\\\0rk9;S23*q]5S<#383#e>~9SrT*a@es:-*;,3!iL +n *3i71_FS;3\rA>x: \r0@-7J3 OB%4+tgrJtJ\rT@)dP>Fi\nr\0b(D2t,\$KCt#Pi.2C\";}elseif($_GET["file"]=="functions.js"){header("Content-Type: text/javascript; charset=utf-8");echo
lzw_decompress("f:gCIn83)781x:\nOg#)r7\n\"|2SiH)NSr\"0`(\$s6O!V/=' T4iS6IOG#XVCZ1.p8,[H~Cz2lc3sbnTIU*fzE.:I!_l^(N{S)rYl33n+GyixV3wuhac\rCh\r)`3'm5\nP2Pq }BhR(0b\\0Hr44B!p$rZZ.(\\5|\nC("PTHN8HP7Jp~2%C1C8H*jS(/KU<2pOIdOH-25-z7\"(P\\32:]U!]<Ail\r0vJ8m<m;p#DiZN0wJD2t*iIh\\9yl*W3\"6[\r*\$nzx\r3p:(p\\;mz98Nj2rH&(7i cet2:SH/)xri9yV^WkZl40pDi-T0l%=9(5\nn,4\0}.Rs\02B\\1S\0003,PHJspK CA!2*W\$^\n1 Iv\\.*AE(dbDh&?HsQ2x~nJT2&RGTwP\)6\\3\0R	'\r+*;R!~%t< K#&	`CX0MG&3D<!3hJe hrml7v-ey\rEJ\ni*\$@U0,\$UEu)@(tSJk~`\n#\rp9j&Nc(rTQUS\08n`ybL5xf+\"{kM\r%[	e1! F@b)R72\nWLtd0wgl0n@\nAM5nENl1 AFBol,muNx-C( f\r1p[9x(iBQl8CXU Tbp+V\0;CbXsHxG*awn!mSIK/7eeNS/;d>}l~ %^fpDEt\nx=*dTj2\n,e=M84aj@snfn\rd0%~	<AHG8\$zu2*>(wK.bP{oz#8=8>A,e+x*b=m,azkW,mJi+[.RKZL2`(vZ,HNxX\$*\n\$<qh!SxsA!:K}RA2kXp\n<VV}g&Y!+YYE3rktU)[lD+ _oh140blG#dK@O\0H6\r\cg\0Ben	zr!nWz& {HX w@Gr*H#nd,,;g~\0E\r`]`%&m\r%4SvfH\$%-qB-& h\rsn#Fr&dF6\"|s@)0rp\0X\0|DL<!D{.B<E0nB(|\r\nh!r\$(^~/pq\#RR%dj` V bSdiEr<i/k\$-\$o+lO&eviMPA'u'( M(h/+So.n.(\"h&p/1DE,'l\$/.,WbbO3H:J`!.,F(1lqX\r~R`rJ%Ln\"\rH!qb2%Wj#9ObE.I:67\0+%.a7E8VS(DGB/<\r >M@HDsZ[tHEnx(xGkjW>T/8c8_IGII!Ed^tdDV!C\rb3!3@3N}0M(fI\r X"td\nbtNO`P\$\nZ5U5WU^hotM/5K4EjKQ&53GXXx)5D\rVr5b\\J\">\r[-u\r00k{\nr^|U~YtrIR ePMSwWXKOU;U\nOYQ,M[\0_DWJ*g(]r\"ZC6uYY60q(8}X3Th9jjMtbqMP5>Yk%&\\1d4 Yn<U]1mb^\"NVeMW\n nf7\n2r8=Ek7tV7PLa6v@'6i&>a	\0p(J)\\nm\02qJPfj"[\0X,<\\md%omn,\r4\rEH]WM0DK\r>z]2sxDd[stS\0Qf-K`twT9\nB9 NbBI5oJJNdrh2\"HC:9Yn16zr+z\\T Y2lQ<2O+%h0A2R1/hH\rXNB& @x8&Lv*jGH\	&s\0Q\\\"	rBs	BN`7Co(n19E U0U t'|mh[\$.#	 |{\0xw%EsBdCU~OZ31{eLY\\(*R`	nCFX|`N\$[@`Zd\"\\\")I:0[-g*`hu%,7H6N\$MUYf&1e]pzG/ w \\#54IdEqkqDbz?>:[ZX:5	Y0 \$\0CdSg{@\n`	C M# t}x{)KZj0PFYBk0<<JEg\r.28*fkJD4TDU76K+J=IOD85MN\$R5\rNy\\qU\n@P7N\rR{*qm$\0Rq+U@f*CMC NC We&_X_h3FW|G'V^\rGRPgYi \n+/\\6dmh@qh,Jmem]eZb0YeB;OwapDW\0-2/bNsRah&qt\n\"iRmhzS7PPBmY d7}3?*tT~;TL*	Asx-7f5`\"NG@[-M6qq he5\0*ISF9}p`{kP0T<Z9<\r;!g\r\nK\n\0*\nb7(_@,\r]K+\0p C\\,0^@;X\r$\rj+/BJ{\"a|n\05156 .\0d8Y:!=X.uC!SopRh\\hE=y:< :u0siTsB\$ u	.0M\\/+\n=dA)\r@@3.eZa|.Yk#Yq=MB AMdU\"Hw4>8?e_`X:9Gy6Xrl1B9RzhB{\0%D5F\"\"iAf \"tDZ\"_$!/DF,25Ty\0Nx\r#q\nB2\n6!/\nQ*;)bRZ0\0Do48\n%\\PIk(0u/G\\4FpG_G?)gt[v0?b;(NS)\n@j0,z>0GcVX%Q+FQ-lw5G(hcH?Nb@3U`rwUl#8E\"O6\ne`\\hKfV/PaYK x	Oj7F;>V\r'Jz#PBY5\0NC^\n~LrRRZ\0x^i<Q@fBHf{%P\"@)DE(iM2S*y"e1\n4`>Q*ynT%+WXKQ[PYy#DD<FL6']\rF!%\n0c%c8WrpG.TDoUL2$:t5Yp#^\n:#D@\r*K7\0CCxBhnK1\"*y[l_/x054\0005J\"2%Yaa1SO4niPq6~\\ddD3g^^6HD.ksLIrb@Nt\0s:ub@^1\02?Ne+lz6q=x,%@s0\n)L<PbA>I	^K4gIXi@PjE&/1@	0coa'#6F@H0{z3t|cXMJ.*BZDQ\0vXa**bxPKG8yK	\\#=gh&8])CnzW\\gM 7!,9\$T\",%.F! A--0002R>KE'I9j(Q@7'J.T\0]KSDAp5\r0!e	d@RS;7HBbxvi`@AMXGiU*'VDN'\$h\$d_yZ]8P*he;pe\$k7NDTx_GitbE\$iE\"cr?>(W@322aI{B`iGo^6E\rGMp1iX\00032Kl&'IL\"7>j(>FG_& 10IA31=h q\0JVq(/dOC_sm<gx\0\"EkH\0J8(km[S4Y40+L\nbRR:<\$!r;%|(|H\0]=0\"\"=)f6V}F=[hu\0t~QiJLq#kbnT!ncS+E<-a]n\nJ~J8 p NJ.S2c9y-`a\0*@\0+g61e\0 _}!IGLf)Shx\0000\"hM	j\0/\$>u*Z9e+JtzRKDyq-fmBIHBsQlX.|c['mlKrQ26]nd[d\"GJ9uoZn@nlW|*gX\nn2|x`DkuPP!Q\rr`W/	1-o,71bUs7q.\\Q\"CCT\"*?utsPz[[YFFD3\"u)wz:#Iiwo0n\\0qm&79[HLO2v|Bt\Hd\" \n\0GF}\"QEK{}\ryrtNu[Agh;S.|y_b!+R@0NPjDz	[U\"{e8EL4J0 d Q^`0`]c@hy8ef\nhaXmSjBQ\"\rK3=>AX[,,\"'<%a.\$%\0VM\$@j>}Ve$@#3:`Uu@#EG/XD\$havxS\"]k18a9dJROs`EJUom{lB8(\n}eib, ;NQ\I5yR\$!>\\guj*?nMh\r%dNd#}pA:-\\*2I 0h@\\8q]\":cy	da6>U:@2\$2FN\r(d*\0[#cj>!(SLeTM	9\0W:BD3J@srue +'B\"B\"z2lxF[Ea9db^,C=/2$C8}D`^;6B0U7	,1V[.	H9(1LzC	$.AhrY	H~or19\\P)\",w0\0w~9\0fq&9-J#3^4m/\0\0006n8>.cph_A@[7|9\$pMh>5K=hAt^	\"	cB;t\n;4Iy-0yeUB3HPs|\r$0l3oF~PK.,'J/td:n\nYzwZIo@1\$=VWz	nBaAq@Ip	@lH{UXf\\z,-\\^y n^BqzX\$*J724.!M0FGm*mI^tjl7SQ.ihLB6h&l\\c%kj p=i@.(klHUW\"ojp!S5pL'`\0O *Q3XJ\08\n\r*ar`<&XBh!x&Bht\$]cL[d\0w%;BCQ\rpQZZAu=N&ia\nK6I}n	\nd)bp\"07@Nx\$BB/MgBi\\mI;5=#&4P\,qc\ncw\0BgjD@;=0mkr`'5k-{\0_Mu2q9\n+G\r4:51:?(yGgWK\rm5.eHJAk#..\\=7W+^yDbGOZ4(|xPr,yqaO2kn#p2.cUcj~7ZR:9w(aL%-,#8%XWn}6H#&J,'zMM /y6YQddEp2gg/'8;UWN{CiKXNdGRCJYi#>zSMUcR0)]:=t\$sF7	=\$B!qs	1\"v%Il<b!6(Cd-<H`~2KKy,qA\0}pb\\(|MW5;\$5T|@9).F=`H\0	 N @%wd|kCI!:l,<utNeW^wDu ihIZ:r3+uoCs2aX	H27>yrpTLf:At|i[wW 7au5Q' \03\$\rk)a;~I\"1'Gcm\0P\n#>B\"|2\$}<3PYXgod<qE\"`g8r]\n:qVbTm9K&m)@Qz=\n}O\r.vpJW&50	I\nl\0O5*=	P-\0*S:[email protected](Z\$nzA!t85<W8n5\$IZ'}ET\n_Do&J6i\$ELu+I~SSZTXPYz"\$V]M(t_S/t05_Z'#1P,}(~\0!`-P\ney (`9O!;5\n\$7[ Y8&!CLH(\0'2r%;4_O5D\0V6' AYSr4+h@bO\0r@\rJ0\08O;k(6|	`8 0&E\0VkNKxdpsLXu\0t >(N'fldA+~kPR\0K]bU\\d\0S@b\0\0b0_\\@\nNOPfAj 4<9`S 3T7T!\0eI 1!\04 @!8\0!:K,ASe.::._d81v`B\"!.^.^\n&\r(.O0@Pnj#rH !i @Aa{ #6F@O(./B)L02BqpJ<.\0\n\0@8C4Pr	P)$q.]\"B##\\4\$:.(*Oi>|#T'`Bua/a`p\0`0");}elseif($_GET["file"]=="jush.js"){header("Content-Type: text/javascript; charset=utf-8");echo
lzw_decompress("v0F==S	_6M:ECI:CXc\rJ(:=Ea28xiSANNNBl0l(D|>EyHch3EbbEp9.\n?Kbiw|d.x8EN23y6GFmY8o7\n\r0\0DbcQ7d8~N)E`)<xon2!r:;9Cn<b?`4\r#`<BeN \r.D`jpar>$1c7ARLi\r1!(j+62X+.\r!xh'6Sn1(W07q:68n+5_(s\r/m6PQ\nV-.:we|X] Xe71fujZ{p\\AU<k@}&L7UwuYhu PAhXEZ]lplvHW>Y-YhC[*F#~!0Pf\^B<\\fO\jFjZ1\\:>NXaFfh{\"s\n4?p\"\(PNgr&}PhW*r_shnm.\0@dW \$QTl0 dH)PgUBrt:0)\"[(DO\nR8!V4hSq<=K]]0'wA<~|A22=p)\0P	sn3f\0FvGI@+_I`r.NI[SJaUfSzM\"Q|9Bcaq\08#a:z1Uf>le5#U@iUGn%sgxLpP?BQ\\bQ=7:Q\r:t:y(\n)\nX;aA\rPGH!@\n\nAl~HV\nsBr3\rP%\r}b/\$5P\"w_UAtUjvh4))<j^<L*Bg	9O\$zyM3\\9.o(i7	t&\nj!\ryygR\"~)TZ0E9MtXe!@yl	8;R{eULF1E5-	!J;HR8p@0,psK0\r4\$sJZ'\$cLRMpY&3GzJ%P[x{pzCV'\\KJa&\"o^Q+h^iTR,5[\$)U`SZ^r=nTU	1Hyk+\0v\r	<Gt3%kYT*|\"ClhE(\rr.6rBjO'\$^6#Xmh8:0;'('+^]N,Oi>S\\\!*tl`u\0p'Pbs{v{7\"{r(^Eg/Ug`nL\n)(Aa &PO\n0(M&FJ'! 0<*n/b.o\0dni:RP2\0/v"00gj0}	=M0n/pg\0o\n0\rFbi}\n	NQ'FaLrr0	oep4Dq(~ EprQVFHlKjj!`_bh\r1n!z\\\r`V_k\"\\'V\0`ACV\r%\rk@NB !n\0Z6\$d,%a\n#S\$!\$@2I\$r{!J2HM\\hb,'||cj~g`\$+<$-FDdL\n@bVf2_(<%@,\"Ner`Z4'ld9-f@&B\$(278I P\rk\\2`\rdLb@E2`P( B'0&:dB^*\r\0c<K|sZ`O3@C>@*	=\0N<g6s67Sm7u?	{<&L3~D\rx,rnO\0o{0k3>m1\0I@T34+@eGFMCrE3tm!1D @H( <g,V`R]@Cr7s~I0v5\rVPr<b%(DdPWbfO 0b&vj4LS5&dsF M".H0L\"/J`Yu*\"U.I53Q3Qg5s&jGQMTmGBtl-c*\rZ7/RUVNLk.rYi-S3\T^G>ZQj\"isS$Ib	fB|iYv4`._uU`ZJ	e@Ce\"m6JRT?XMZpQvjjV{\rT P]\rQAV)JiN99fl Jm;u@<FejI<+CW@Zl2F7`KG~L&+NWHw	s'gq+Liz.WzdW(y)v4,\0\"d\$B!)1U5bp#m=@wP\0`O|	YEOu_\n`F`}M#1f  zc xfkZRs2-Z2+(cDX!&-vP\0'L Lo	r@\rxFE=5N?7Nw`X98 qz%6taN~,'M\rf9w!xx[8;xA-I5\$D\$%]&o-39zy6;uzZ _x\0D?X7yOY.#38eQ=*Gwm YYOYF)z#\$e)/z?z;^Fg`^#?eMu0>"?@Xv\"*\r6v~V~&^g'f6:-Z~O6;zx;&!{9Md \r,9:+][g[s[iiy+|77w}EWWk|Jmq xwyj#e(yM@Y(g-(@ySY@o9;+;ZN kVu[|qON?	`u6||X|OY]c\rhn'rS.1USXz]?Cr\\\$U|x'eM(O]{FD}yuXL\\x;UWtv\OxWJ95WiMi[Kf(\0\r7;KI\rv\rV3.^2^0\$Q['^X~t1\"6L+ApM><KT76Mfg=PPr2Sb\$C[Q#G`uwp\rkezhjzi(=74\"ef~ZU-VJZ7T8.<RM\$y5_iJbgS?`+ M7`0__?F\0X[J8&~D#{P4\"\0@\0F ?*^w:uxKy[(#/zr_g\0?1wMR&M?StT]G:I)B v16:W{=!!\0xq&}z\"]oz6P[\\ }`S\0HMBP]FT8S5/Ir\n 0aQ\n>j;=A=pVL)X\n`e\$TQJk7*O .\r\$#pT>!v|}.%,;f*?\0D! #:MRc/06	7@\0VvghZ\nR\"@	+EIn8&2XP=h[\r:F\0:*r}#!\"c;h/0\0iW_h;VRb%!]SBUl	r-\0\"Q=Ih	 FLxR@\0*5k\00'	@ElOHCx@\"G41`P(G91\0f:Q@`'>741rIHGt\nRH	71h)D8B`(V<Q8c? 2E4j\09\r@\0'FD,!H=E&xd_HE6uG\0RXZ~P'U=@l+A\nhIiPGZ`\$E\0} QjAW\$!3r1 {%i=IfK!e\$8!h#\\HF|i8tl\$i*( $x"Wzs{8d`&&E15jWVR-#{\0Xi*7F3`p@#7	0[h\\{]8l`f@reh\nW2@\0`K(L\0vT0L: 0@L1T0bW\\DNns3"`2\rU+^ReSni0b	J2ss^n<Fla\0\0mA2`|6	nr\0D7m-)\\\n=y7c|o/P<Y:K&C/Q*8/&p.\0u3(eOP\r(ac>N|	tn6v_;ygQ;y[S	uddHHZ\rqC*) \"!k'`\nkhTsREa\n#10;S@(Iv\rnj~63\n.2plBt$bp+*tJsJQ8;4P(!.Ppk@)65!(\n+`=H,\\4\"[C1-uo[\" Te)AE={ \n`;?G5I.%EsgFs	KGn4i/,i0u)73SzgV[h'<TMP*o\nHn4M-WN/@8mHRptpV=h*0	1;\0uG6@s\0)T\\(\",5ilE*\"@jRQ/L@ZP)(jjJ*0r-Qg9@H\n-e\0w%^ ET< 2H@\0#;ITlA+C*Yh/D\\83AE/}0tJ|Qm%(p\nU\rsEX5u%B- w]*E)<+qyV@mFH BN#]Q1\$Xxt@]Gj)-@qL\ncIY?qC\r(@X\0Ov<RQJ9lxCud vTZkl\r\\o&?o6E\r'3J6@6FZ50VTyC`\0S!&6rDf`JvqzFZ.\$kXkJ\\""iroX\0>PP\0aV=6K3ZQmE0:32V4N6lhhU:	>j0g\\|Shy\$,5a7&[WX4q8!HD+:9,DUa!X\$GBt9-+oL}qKx6&%xR\"IWA`cl6*0vkp8z+qXEIN*qPKFO\0(|k *YF5;<6@QU\"AXv)HSTpbj1+e Qx8@\Q,Nb#YHp1kB8NoX3,#U\"eH#zq^rG[:\rmng5V]Wkh\\Zk ojW.hF[twM3!nK_SFj-S[rw0^hf-?X5/IY 7ad 8bqbn\n1YRT,+!NT2IK`K\"O)\nY!}K^D@na\$@ $Aj\\D[=bHpSOAGho!F@lUXn\$\\_`B]2\"z0i1\\w.fyK) p0X>1	*,]\"<cQq.	<+t,]Lg\$6v%GE*0)qnCI`KF@5p{\\pN'S(+5+\"U0inMbrKr|a@|kaWR4\"?5p7Hp5YpWG#AWD+`\"}H\pC3sO:)/\r4<A\nn/T7P16OYXtS<9nwsx@1xs@4o0R\0&S^:Q4OInZn3L(x\$CCnAkL6rwhnrZj6}MGu~3g4:3g~v3+a}=8'n)cC4L=h{iJwgDL=6N\\?hS>hhWE1jxtT[,tA#T9K-YQe?4z@JkWYuz4	0>9yu=}gs_s{@rH'{e[h-Ul?JO\0^Hl\0.Zxu\"<	/7n3_0`\0H`\0Hh[P<gm@~0kv\nz\n@(nk5n5@_`_l1P0coEl{o0z 8w=|/ya#xq@a\08dwvRGp8vmtuo`2;#xm;V3O\r,~ow[} clyO;?^j\":xW.u(<gvhWq\\;8)M\\5vx=hib-|byDHh\rcey7p@D=1!4Ra\r9!\0'@>iS>ofsO 9.l0!QD9dW4\0y`RoF>Fa02I'\\\0\$\n RaUs"1eYZ#G!PP\0|Hnp>W:`YP%n8>`]4`<\0z44:HDp>*808A:]wz>9\n+iiPoG01)RgMgsLCr!3R)00VPpK\n|9e[D0o,N8n#{z3BS\";e5VD0[\$7z0	T 3Q'RLy\0o\0:[}(|X>xvqWtB1wG;5|JI@#I\\p8!']l-lB,HN%%	/;FGSc|W$t+#B1y2\\Z&)db',XxmHd	>=-lKJ\0@\"(AZ7>\\#>\0Xr:ogbD_C.R]ZIG(|@\0SO {@k}S8l\0gHGs_J\$hkFq4>v!_7Vq1zSejKdyuS.2\"{?shyG\nQow'L}G9W@_uZ=,}0\"'\?pG_'T#o\r\"O7=8M? \0bUd7I O\"-2_0\r?hOt\0\0002~ 4,hPcz`@\"; ,='S.bSR,~@ '8Z0&np<p(.@R3@^\r+@,	EB,h\r><6]#;.8P;@L,+>p(#f1,8PR)e\0R!\nr{eA@*nD6N\rR8QK0>PNIQ=r<&fNGJ;P&`);!\0pp\rn(@%&	SdYC8O#v,#7\"CpBjX3~R9B#@\n>T-5/=End\"!;p*nZ\08/jX\r>F	Pe>OLO0\0)k[	'L 1\0CT`zp< .>0> Bn<\"he>!H{!\rr\">R1d\"U@63>o\rvL:K20>0Br*Hy;`8\02A+\0\0AwSl\r[6=0z/J+W[~C0e30HQPDPY}4#YDp)	|@&/F		aH5#.A>0;.Y	D2=3	pBnuDw\n!CQ \0Q4D*J%puD(!>u,71M+31:\"PRQ?P+11= M\$ZlT7,Nq%E!2U*>GDS&ozh8881\\:0h C+#A%D!\0DA3\0!\\hT!dYj2nA+HwD`AB*+%X.B&XeEo\"r82@8DaNh8[WzZ\"L\0\08xX@ E;af1;nhZ3E0| AtB,~8^<2/	8+O+%P#\n??eO\\]7(#D(!c)NFE#DX0A\0:B``  H>!\rB\0V%ceHFHm2B2I`#>n\n:LC00x((\nL\"G\n@`[\ni'\0y)&(p\0N	\"N:8\r!'4|~\"clt0ckQQ+ZGkFcx@&>z=\$(?(\n>Cqt-},t xqfb\0\0zT9zwDmn'bH\0zHzIy\",-\0"<2'#H`d-#clj`i(_g*j\r\0 62<q\r\$CAI\$x\rH ZpZrRU\0\rIRXi\0<~xS%j@^T33GHz(\0f&8+r%hCxlb(h&`fn.L+/\"=I0d\$47rA(42gJ(D-'G9Z=r`);x\"8;>&@2l0I\rrJDhA22p`O2h8HwtBFg`7{,Kl%C%om+X41\n2pZB!H6*\0%< K',3;8\0Z+E+l+Y-tfQ-+ 95LjJ.G,\\.\$2-1-c.lfxBqK,dAKo-3Kr/|\r,H!0@.&|+03JZQ	\r&\nj|#\"A/8)1#$\"\n>\nL1h9\0BZd#b:\0+A22\nt.LHC\0\\rKk+.(D1ss9P4@.AhJ30J\$\03Q3\0\0,Iu/VAUMLe4D% Ap\n235-T53+fL~-> M4XLd*\\YDM5 XfDss%	p+K/=K6pH37lK0DuP\rO&(;L@N>S2(JErF	2MM\$q\$/I\$\\D\"\nw.t	PnW-\0C:jRS8;daE+(XrM;*1&2X)<L9;gIs+K<Y-Z:A<OO*2v7+|<Th\$<;v\$O ,Hk-\r;O>>3@O{.4pO?Tb~O4>1SS4P3P?4NAxp%=P@R?x0N?TJC@	.dM&=\\:L:\rI'Ar;\r/Bi>L7:9|C\$)z@tl>C\nBi0G,\0FD%p)o\0\n>`)QZIM\0#\0DQ.H$\n \$%4ID3o:L\$m 0	\\(8hDDX4TK{xn,\nEp\n'>\0tI` -\0D/KP`/H$\n=>UFP0G}4B\$?E%TWD} *H0T\0t\"!o\0EtfRFu!DF-4VQH4uN\0DQRuE\n&Qm)m #\\D(\$x4WFM&R5HF+F \nTR3DLoy4TQ/E[<t^F)QQIIF'TiX!FR5Km+IRE+\0(R?+HJTD\$wQTz\0G8|R6R	4XR6\n4yNNM&Q/7#',|\n	.\0>o#1D;UJjFNJ #%-?C3EP{`>QOI@%,\"ITP>n\0QP5DOFTY<oQ=T\0x	5D,0?ix  mE}>[\0&RLHS9GI1M4VHoT-S)QF [TQRjN]N(8\nuU\n?5,Tm?@\nu-R \nU3IEStQYJu.QFo\$&i	PCG\0uRu)U'R0DuIUJ@	:*Rf%&\\RMU9RfUAU[TUQSe[\0KeZUaUhmS<,R`&Tj@!\\x>\0&pQQ)TU@%\0W	`\$(1?$C\nOV7Xu;YBVHRU-+Y}\\KMoVT!<{RZA5R!=3U({@*Ratz\0)QP5HN5+[9"\nSL\rVouUIYR_TYp5O\\q`Uu'Uw\\mRU\\Es5\\\\{Z%O\$F>5EVm`Wd]& \$!RZ}]}v5ZUgy` ^=F^vKex@+r5#?=usYNsS!^c5u`0XE~1J@#1_[4JVI4n\0?R~)&B>tR_EkTUS|Uk_&E(?JJUBQT}HVjQx\neVsU=VN4\\x34D\":	KQ>[r_#][j<6X	cKL}>`'\05XU[\0(Wt|t]p/]H2IQO1QjZHm)d^SXCY\rtu@J%M?Q\n=R:E-G\0\$d]eh*QWtc`AY=S\r	m-=Mw]Jf\"{#9TeM6geaLQ&&uT51Y>Q#\0P?ub5FU)V5R@$!%oPEU-Bp\nF\$S4tUF|{q0mjs\$jcaZI5Xj26&>vn\r)2kTJeQ-cVMz>]ac`tHj6+kM\0>##3l=^60vZ9Se\">)/T=9\0`P\0]k-6{k[F\r|SJMQD=/XVa'tolj}C@\"KPm3\0#HVv{gx	n|[Ur`3#Gk%LI`CD	 \"\0#cN6fzeF7N\r:G	\$ITWGsWMBc!#cnu&(wSfTZ:0CN`Yj=>Z!=rV]g	rl.UuJuJ\0sJ'W%\\>?Vj4}I/-rRLS\0,Rgq>\0_\V8Zc<^\\llj\0T]CwzIwNpVWjvY>2o\$|UW%{toX3_5~6\"Zl}`cR=^U17ed=f,mGp)9L>| \"5`:,xJb6\0AR\$qoA@<@"as.V^^\0[H@bKz\r=^zB\0o<t<x00*RI{^:{K1E0"\047'\n`UT?MPl(	Z|&t\"ILw+}Wi\r>__u63[8T-x~7{jMECaXG9\000750._%\n\r#<M|2;o^a+FLk;_M\\pr@ORzANEYO	(1NR8Cn?O)1Ao\0?J\"OFa-bPS)5xCjL\"l#@N:B9:N CB:j6JkuKWI=@Tvn0^o\\?/&uc~Jb6\00wx8j%SVH@N'\\N`n\ruKf>G\r=@G\nOhfCX|I]auy^no^rt\r8#N	V;*V#9r\rxc(\raja`g0Qx(gl{h`sW<Kj';)Gnq\$p_^& Db!EjPV'(=br\"b\0tn>J1;4^sQp`fr`7xE<l8s'PTz_[>:`1.;7[6!*\$`\0@m>>\0/+`;C\0*<F+q M;1K\n:b3j1:c>h#;8:\0XHaM1YCvN\0+\0t#\$!@*l	FdhdFf=04x\0004ED6K\0N];q4sj--8\0Df5p4J'[H^NR FKwzE|!dbx0,E_u/(xRaHYce5\0@2@feyYMhez\rv\\0e\\cueNY`9h~^Yqe]qe_|6!ufJM{YjeCS6\0DuasFL}\$Mb,0Bu2gxF{an:i\rPjerrGBYM+qYd0,>6fo0of\0V!fl6 1e\0>kbf!(ra&	mBg=@r \rphI9bm\$BYx@QEOm9\"t \0>%\$rN&s9f4gMfwyy`X1y5x^z,& k1x6\n&xgg{r?-|t}gHgK9J<CC17g!0HcdyfDA;9T00! 6^S?E(P .5EPJv.+\$>P+?~g6\rhpz(`\"yFad6:f\0{f >y`-\rhr\r8i\"_9CIfX2\"hL~\"%V:!%xyzygvxqgZi` _g6PA\$=9|p.!i8zVCZ\"(9!DgU\0`4To@BNa{rnE8&=*Z:\n?gh.N5(Shi2cf@7z\"rP.8T'k(q2&D2~v8@=X`qZ`9j5^nqv3I6dT\\ 3,3(PuV\0UQ.:J\r1\r\0h@?N\nsh;r~7O\$(RjFYF~xf\"o#P-3/Gxn@\"G?ZpxX`v4X[I7Xc	b_9ti6f5FpX'2r0D,#Gl( =a-8dbS4~;0R3zN`+4<^ay	}rk&4@?~E@LS@qqN</Hj^sCbgGy\nGN}c\n +pNTB[dnj;jwhc9p[y405N+Xda/zn*P#t~V=#n);j:JC!>x5==2.';:SA	&men<6ma=Y.gIxIJ\0~aYT\\`nP)[{rDBv-EK;^n{h;p699Q~iA@D jzLV~	8B?F}FTdcFg7 6#.EJ35K;n5:ySCo.{d\\0\0!)g+\0YNtbp+c\0B=\"cTcPIDV0!ROlON~aF|%	WQ:l@:8&[n,JTw9(<O\r\$m/HnP\$o^U"<.nq8\r0;n+3n{\$7,Ez7\0l!{.s8PAFx1p+@OP5lK\\msqQ!7oEq5?GHO\$l+,;~`7|Ji\rc+|#+<&<W,^nh%dCizXA'DEk@B.\n99ANkNd`p`%2\0");}else{header("Content-Type: image/gif");switch($_GET["file"]){case"plus.gif":echo"GIF89a\0\0\0001\0\0\0\0\0!\0\0\0,\0\0\0\0\0\0!Mo) qe\0;";break;case"cross.gif":echo"GIF89a\0\0\0001\0\0\0\0\0!\0\0\0,\0\0\0\0\0\0##\nao~y_waJ]\0\0;";break;case"up.gif":echo"GIF89a\0\0\0001\0\0\0\0\0!\0\0\0,\0\0\0\0\0\0 MQN\n8ya\0\0;";break;case"down.gif":echo"GIF89a\0\0\0001\0\0\0\0\0!\0\0\0,\0\0\0\0\0\0 M[W\\&\0\0;";break;case"arrow.gif":echo"GIF89a\0\n\0\0\0!\0\0\0,\0\0\0\0\0\n\0\0i\0\0;";break;}}exit;}if($_GET["script"]=="version"){$q=file_open_lock(get_temp_dir()."/adminer.version");if($q)file_write_unlock($q,serialize(array("signature"=>$_POST["signature"],"version"=>$_POST["version"])));exit;}global$c,$g,$l,$Kb,$Rb,$bc,$m,$Gc,$Lc,$ba,$dd,$y,$a,$vd,$re,$We,$mg,$Qc,$T,$Ug,$ah,$hh,$fa;if(!$_SERVER["REQUEST_URI"])$_SERVER["REQUEST_URI"]=$_SERVER["ORIG_PATH_INFO"];if(!strpos($_SERVER["REQUEST_URI"],'?')&&$_SERVER["QUERY_STRING"]!="")$_SERVER["REQUEST_URI"].="?$_SERVER[QUERY_STRING]";if($_SERVER["HTTP_X_FORWARDED_PREFIX"])$_SERVER["REQUEST_URI"]=$_SERVER["HTTP_X_FORWARDED_PREFIX"].$_SERVER["REQUEST_URI"];$ba=($_SERVER["HTTPS"]&&strcasecmp($_SERVER["HTTPS"],"off"))||ini_bool("session.cookie_secure");@ini_set("session.use_trans_sid",false);if(!defined("SID")){session_cache_limiter("");session_name("adminer_sid");$Me=array(0,preg_replace('~\?.*~','',$_SERVER["REQUEST_URI"]),"",$ba);if(version_compare(PHP_VERSION,'5.2.0')>=0)$Me[]=true;call_user_func_array('session_set_cookie_params',$Me);session_start();}remove_slashes(array(&$_GET,&$_POST,&$_COOKIE),$wc);if(function_exists("get_magic_quotes_runtime")&&get_magic_quotes_runtime())set_magic_quotes_runtime(false);@set_time_limit(0);@ini_set("zend.ze1_compatibility_mode",false);@ini_set("precision",15);$vd=array('en'=>'English','ar'=>'','bg'=>'','bn'=>'','bs'=>'Bosanski','ca'=>'Catal','cs'=>'etina','da'=>'Dansk','de'=>'Deutsch','el'=>'','es'=>'Espaol','et'=>'Eesti','fa'=>'','fi'=>'Suomi','fr'=>'Franais','gl'=>'Galego','he'=>'','hu'=>'Magyar','id'=>'Bahasa Indonesia','it'=>'Italiano','ja'=>'','ka'=>'','ko'=>'','lt'=>'Lietuvi','ms'=>'Bahasa Melayu','nl'=>'Nederlands','no'=>'Norsk','pl'=>'Polski','pt'=>'Portugus','pt-br'=>'Portugus (Brazil)','ro'=>'Limba Romn','ru'=>'','sk'=>'Slovenina','sl'=>'Slovenski','sr'=>'','sv'=>'Svenska','ta'=>'','th'=>'','tr'=>'Trke','uk'=>'','vi'=>'Ting Vit','zh'=>'','zh-tw'=>'',);function
get_lang(){global$a;return$a;}function
lang($v,$ie=null){if(is_string($v)){$Ze=array_search($v,get_translations("en"));if($Ze!==false)$v=$Ze;}global$a,$Ug;$Tg=($Ug[$v]?$Ug[$v]:$v);if(is_array($Tg)){$Ze=($ie==1?0:($a=='cs'||$a=='sk'?($ie&&$ie<5?1:2):($a=='fr'?(!$ie?0:1):($a=='pl'?($ie%10>1&&$ie%10<5&&$ie/10%10!=1?1:2):($a=='sl'?($ie%100==1?0:($ie%100==2?1:($ie%100==3||$ie%100==4?2:3))):($a=='lt'?($ie%10==1&&$ie%100!=11?0:($ie%10>1&&$ie/10%10!=1?1:2)):($a=='bs'||$a=='ru'||$a=='sr'||$a=='uk'?($ie%10==1&&$ie%100!=11?0:($ie%10>1&&$ie%10<5&&$ie/10%10!=1?1:2)):1)))))));$Tg=$Tg[$Ze];}$ta=func_get_args();array_shift($ta);$Cc=str_replace("%d","%s",$Tg);if($Cc!=$Tg)$ta[0]=format_number($ie);return
vsprintf($Cc,$ta);}function
switch_lang(){global$a,$vd;echo"<form action='' method='post'>\n<div id='lang'>",lang(19).": ".html_select("lang",$vd,$a,"this.form.submit();")," <input type='submit' value='".lang(20)."' class='hidden'>\n","<input type='hidden' name='token' value='".get_token()."'>\n";echo"</div>\n</form>\n";}if(isset($_POST["lang"])&&verify_token()){cookie("adminer_lang",$_POST["lang"]);$_SESSION["lang"]=$_POST["lang"];$_SESSION["translations"]=array();redirect(remove_from_uri());}$a="en";if(isset($vd[$_COOKIE["adminer_lang"]])){cookie("adminer_lang",$_COOKIE["adminer_lang"]);$a=$_COOKIE["adminer_lang"];}elseif(isset($vd[$_SESSION["lang"]]))$a=$_SESSION["lang"];else{$ka=array();preg_match_all('~([-a-z]+)(;q=([0-9.]+))?~',str_replace("_","-",strtolower($_SERVER["HTTP_ACCEPT_LANGUAGE"])),$Jd,PREG_SET_ORDER);foreach($Jd
as$C)$ka[$C[1]]=(isset($C[3])?$C[3]:1);arsort($ka);foreach($ka
as$z=>$H){if(isset($vd[$z])){$a=$z;break;}$z=preg_replace('~-.*~','',$z);if(!isset($ka[$z])&&isset($vd[$z])){$a=$z;break;}}}$Ug=$_SESSION["translations"];if($_SESSION["translations_version"]!=1579331192){$Ug=array();$_SESSION["translations_version"]=1579331192;}function
get_translations($ud){switch($ud){case"en":$f="A9Dys:Gff:S2\"1..L'I#,KOP#I%9i429%Pb2an2NC4C`(:Eb:&FY\r\n 8Z=\$A`0ndF:Z)mwpQq#qw7SX3/J6g2qs_foE<Bk#nEc>`@\$cB38xJ\0|63,x48c:CA&2.(N'NcCEB%<\r=\$6-\n:3#4N)\0#t4Ac@U)0Xkl*8\00030[T6431@&\ru8}2m4{C4W>WsY\\ /d\"'~,s([3\\E\n%Cz:P,83BB\rA Cx\rJP\r7(5BU@OjI~GF!1[K06 gU%.hAGM8T_o{2:)+}l-mb2EH	S8l\[QmGQk_&I^X>emL\rdR<O8\") VY\"\\e A s=\$0esq\rDe=+L1,q@Pzu@\n\n\0)\$Dg \r(RAwLfi2d\\O&\$~'9t.\n>#<@C4q:R\7U\$*g!)+%&4pz&.zD!.M&CLC'd1	uBxS\nMST9uKV5e\$l1Nd#HlMO3Mq2BD!P\"j E	)&M\nA[kv5\$79W\rQG;\0*{'lLG5L\0 cd0b8\n\nntt0Hab6y+f4$YI~'Z}9P/ST4Q k@)PmJ-*x-YqSkV*r`cM@>liIAa M/d\\1	vxC\0^0Mz	}{qA~m%?DKsg6J;'c&\rC&To#9D[XAl=AgIA\\2,IZ^FC2;%	f;YCdr#I(IjnNsZK^ZuY6*%kJr&VB/=D61{d-}fv<)u3Qm; \nKuNa5l]\rn7VTsoRli#|S-JD~C5G	NoF#J 4R?Q5ZC2m1RM*>f]LVd\n]-bQzS*^EeJjycM\\tW#W^#Lg*W@>\0S} A_,&k=,>r[}xnJ)(\"wp4.mOnc\" +VEN/d%N&t0f/\nyO#%an%\0=>/4+\$#p_	;\"2.\"pz\nR\$rV`D60l\r \"\0\npe\.JBr6/"fT3JV\rv).AFJ)@Z(*,Dbp \"MM1.qiQq6\$'mckoX\0e4BKl@\"vR%HdfHN*rP/t_)fZ?I*L(R";break;case"ar":$f="Pl*\r,&\n(J.0Se\\\rb0,\nQ,l)A_1CeS\ng@OgXM0cA8*y#au4 Ir*;rSUdJ	}*zU@X;ai1l(nd'c(F3NbNS:LZzP\b[Q`u	!Jy&2(gTSM5KK(7\rm8(rB+\\Y*+\"	)\"XeJT*IPF\"et~M# @\0M0#mCCLC(C@t2tA#8^2xJ`|6-+A#kt4!&m?2XjP<+!11Hn@P0Ct\$^#%|\"e\$Y\\RR<B,BjlkR<#XZj<iKk#`ch0@d(@)\"bdFf\r!o1lkmEyddy=sdyZ>l; BE,VMpWP*A0(mC7LUH^qP1hC36J+%`*\r7!\0`\0<C8a=@@u7`9\nR\n9|%cK\$\0lr}2xn4D\n}OUTZ\n@9)%(J }U9R!'UoVDAGjK8\$TLj7pK4(x>@\\SP\n	B(eQun\"C\rP:D|eMpX^\"'	p4T M#K(!k0h_n~Ml0@\r,aH PR_\n1}urjC@peC\\L!:ja6q%lVKS!GR38I)D:fj]0@DoUn)9FaFT\r@!0UAJpYA7d~O(V8Q0&kh2VGZqBPG>G,AFr9J:UJL&})B$F7>fAH4L c~Q.lkY\r?d{T!dELc|G&~CQ^;Z`1|rja@\$;c6ZO;IZ0T\n	7. $6n#HiTVpBW \n@\"p~&\\.s!v'dEQhb v]#1Hl/qA-nHd2~}K*6S+][fLn#A0J9ldg\n\$rQVu<JNtd2%M@L4@d\n`	Cq\"%\0*45;\";l\nG\rvZWkT@r;\\\n\\5CzBhn E#mqkvp8d`T\n!Ae0iJ^4( (F-x \"'D%'X+Nx~!Oyb0RS&^W\zyfJ#M:?Hs\$\0Oqwi lv/n ;ag9>\\O2\\ &<KSNv?9x2?I\"vG yb19B\nCCc<<uX=}V.f,D	'M\npqoLh.OD&]j:Z2l*BlLWC0g+zvp1E\"Vx"\\\0P&/lHbBFH\np\no8baBOV1)hP8=\0%&V)12 \nb>/POb/e0obf^Otd?d4pXDqVqF,L1la\"m\r&0qoq\",*7!-r&q4!\r!s0{:rHI2R9E\"o\"/fi 2/\nEh\0rc(A2+2\$Psvf\"2C\"c(,%r&C/o(t&R'-,/pWJGY\nDC@K112D>&W(R.E16k&qmC*bE`\"rt.O.DNB6`g\rV@`L`x}@M\rK\n`\nptHW;NoFj#3;_%u*9\0EdtL{B`\rLRv`-!F/s0+0{0-hI:6cD4(t\0$Y8DL+2*XblsqIDK &Ze\0BN{Ls\"'K.^8*:Oq~|F\"6\rs@q]Kc~x\"a\$\0@	t\n`";break;case"bg":$f="\rE4!AwhZ(&\nfaD4\"4\r;Ae2a.arp@|.W.X4P$hR}@p4sE7f&E,X\nFC17co)_G_<G},kqPX}F+97iZi_aZn^SYV~]\\Rjlv=	\0@D|[^]#3d\0*2C.(+z>PK>B\"v>H%(Yp\$*Z@Bb#tPx1c(@;#@8P`@OAx^;p@]7RxDWCL4V6Hx.18K+\"%xr<Y-b+#(KJ&F4!KV #\\Ij3	yBHh(JrA%Vr76Za%E0FVf>QF\"4\$f?)A/R>7K\\"\$,+ye> \nb9+2z\$il]<J\\]:/r/(hNvsv}N;-zdswi<~?gB #6PAwcA<Ef8s9n:	+3=\"~&W\$%Kp0pdK4!Er%TE]L<J#ADCNI:+r~8Fb./5D%)^%6Ut@|FId`x%I\"aV3*Sb@:dL8C\"gS\0M)T;Y*rV*2@c,YNVZ-/I i\"eN/#vq!Wp\\6d2T*RuRV\n@HD5~6d8=W &mw7g\n gSTw^Q\\/FKTPd,uC`lCQ(he`@iFwO!:e(jnXCd\n8G8I4m{^rb=GBH\n(-1*(\rc`%=m\r(gJ=:&Czu(@{X@klO'AZurF\"0 gTMC]e(eJ\r`'thqEI}PdvV()G<E_SZbnk*8Eo,`\$QxD|SjjY/ *VRQ\r|F^+( %27X,Q+*ez`Fg`\"?;XwGBU!*Y;/)tg44FnpY[Cj\nv4R&oRA^f\\Bz{jKknr[email protected]'-SB	I[i=,\"srMH3V9T@uG4XFam#1!X]!6F&vZ\r\\b+9i(qpcvkx!tn>Ml*+n\$B0).w:|2Qq^'\\g&_VbDXX<s#8.w\\9U-(4!*@ !TM9'K{r(RnZ&a^0`\0s>,`R\0p+PdIB[r+01Cdn<9\n @N\"oQ) 60H&"D&&pPi5,|.!</dnd\"?r\r.^ HJ#b?JBr@Bj&%Bc+fXB|0ecB%h|l\"N:0|'!G,txEffjGjb~T\n8\"%?#v!\$F\"fB!#7!gm|H-1:#P0P\0R)M.2})*1mp+Vwl}n+,+rQU2"#=\"rq/,?/&PV,fp@IS93u-1*b[SZa+Pd+#jY5*T-o5\0Se&Gw-d{.1Pqi\$x+r8j~:@l/pH<*d,z9x)8\"8o_/K#Cx|7*	6+DS'E'.",~r8|pp48ttY9,@E](R:arJ;7i6JBd%A6tJN3COJ2&+|U\rT^\nO4&oKFu;P4,zd*D2/yEUIt5Eh=T]C4pB %6fwGK\$4Q^3u4Yv#GaQU@ iCpZ/$?	U,/(ErM.hQkkG92TMcVh_vm7n.ur+&:j@\0b:bcj +h_Ur,.\"~@\nZ4pY1	\rVlL0CV+2sUg1A/&^RjP6N2W6?u04D1GPZ(FkKrvw/b*TATRke5jTvN  M-c*r7znF@w;I}Tc>yC[Gl|WA)FA3_;OBJ0Bn@Z3\$BH"dhFD4	%8v/^Y	Ex6\\Fe/u[0>x\r\0^Q0%N5TG,N8break;case"bn":$f="\nt]\0_ 	XD)L@l5BQp 9\n\0,SE0a%. \0.b2nD*DMOJv\$:IK5U4L	Nd!u>a\\@'Jx4D.SE<OSbOf\0Br)W{KP~\\_W	N8'cI2O9d0<CA#%35!nnJmk,q(n+LxIL\0IVB,X(_)7*\np2C@0F+322KW5bIm*yBQ8|NK2CS\n^SS l6 x#r`5#/=H(0z\raH\\0|7jC ^.A`7P}+r\"j}RPF|0_BNs%P,> J4]INU@B\rBv/N7tSFTPSRSEqP:y5\"\"[6.~OzF0,A0j\04LQ8aLw)q.k%DtU1R1n\$I\"R.FD)JTcg!P)#0g!#fOV)HsAzaSA'vLlR,best`L'nJ{5iI|\S1P&>Qz.PaG8F(zz#Y\r43Gw\$Y{pJ	(srGtf\r8\0K2pyU|37ttR0pkj7S)TDX\"RNrk&Y1bq4E`Oq.ER9/`z }@X2MaL26w0^3!=BC#r^IbIJ\$@~kMjl-\ntuCrly/H#U_\$6Wt`1\n5nd45\"d%Ed7A\r9Nf\n9beMK0;H\rXU:qR{!%\0RQ6]\n/QeH1\rT='+Uybxw%s47j=P);\0	{+r-fw?4U Vx[h\rp@RK-F_`Yxd(l4WR,(b0)32XY@4ID5xB;f,BL!VHy;v@>Kp8n\r+YVz]BQ(\r!7T!RHO	Rl+ i|Qgb=V!-fU\\J9WUzK\0\0f,P-j4wG8glb+LD6d2G5[!PJ;)#xRd`zm[,)+	DI0x\r^Ih]t<)rh%FFhTx]8dcK3B\"<),@Nb)gP9;2>]&a2)e*kuOr!J1pS:rSO&U=;x\"b	/`<oDHiB@SZ4df8s!`Ni(Tnu.8C0@-nN)O`e:3(~RNzO\$"H \n`M,vkj}n\\#f\nkF@\"c	FIO\nhO1	h8Pppt'\nnfZd*S\0#)|=,\n,|nS	zgGoe	Y@M'*0KRR1Sf(olQljTG(iOJmO\"FzQ-(EL\$2lr-5Ntt@j&0.\"JfQn-(wLk)Rv~d9R(pf((+%)nvH/nl(p\\#Qj140U6SmguH/02'5gPyL(-?-0Phs-8g	k3<&?cae#(=/!:stwi@pCJAs2uH=sD+Da@,j^B	,s@,M,hcZ	4.TcK%>7(?(lf+X&.'UAT!/!GIGNBxYMBKbdr\!Ok*!S5HdoA@<=8/NXHRUe30[R}?3Q<ABLU]c]TY2o[^B:GY{A-a1a#i8O%a~\$'Z-c\"!j; uZc!EpGZR{fJYRY9/Q0m_U.naO6)DD*&(\$hGe\\v'kO&0R\0J4O^QxhU@W#mvJ7ilkqhqpel`s(2Vq`u=kvsVg.Pe4`cW`@Gh4pgSQaGDE7oYz5nWCG{#{~*.tgQWzthzGG@@m\r rhMEqG?iN\rr E.i\nZx>I74;{7NLBK|8F|-N	JSN,dO(Q\07DduQ3FWhjvb2(L7ga	j[@\0XHR~Wn2-o@m>r!QY02r8V;S\rjFWq	VRmrxuf[f)C@h\nUN2&C\\07y>urp-=2T%2mn T)Mf @W4urSY6('{+5\$s:#`)N/R\$%=5	=h_{Ogg'[Gup&[email protected]@	\0t	@\n`";break;case"bs":$f="D0\reL	E4S6MA7tp@u9N0\"d7dpAHa).RL	p7X\nFC17AGbe4yFY\n,Af -3Nw\r]3Xw!D6e>9\$iMVbq\$n%LIT)/9>c[Z4P0*-R 29($((#j((0h@L`@ #C&33Zr8J2\r#xKCHFCX]0\r1+D7QLu7;B\"2b:!-a\rKcE\rHr#@kk73##HM3Z3bND\"nDV5.5hv0AeHQ5=3thunB#PU.PP@h"')*c')x9+lb46N)( Cipr;C@K\"8]pC2h@	LC7)?\$:\0 UB9*+]o@R2*6t`HAY?\r.3ncL;rN	K\$\$@	2\rde+\"A`.AtiI*,dL5?@XnN.@>	,46Xd9<3!is#jaG5\n`#~l\rc\0a<f\"(a113Iwr@r#/!\r\0(e9_#r4K*8h5+CVmOA;^L;8'D~\ro\$Crt!'L])\$) ;C\n!OPa 0F-;	fMVa\$4Q!`)du5H9'%54TO\naQS*UA B)Tp 7bCsG*C\nlWgiHF\nV\\\\L\$nX\r lLv#f~\0\0U\n @A l2f	 Z(L[)WIBVKh\ncyjdbDb.t|bg!B-\\36=P[UhD7D'*ENI)\"Sd@JmL{Sjl70YseP\nP0*)<SqwiAlPFN	%(FRRm#-AaAD8BHG7kNr8YABU	9I@Y{Dm9<T8GdC8Py:m`7%g'}`\0I'|Pz;MsyQgo./E	$p=of&|nM\p^8(Im%HaZTO*)sugP;#Sd8\\EC(b0QI?\\T!j}u ]-*UFyI4%!zw'[},aq+~+z^#\"aa|V~jkpXOCZ0(uL\n%YF@C/n&r\08M\rap,(\"F0D1VLp'KA(pAicHd^eOJ3f\n>$>(Zb0 \" /q\rh FnkB|r\nkoopral#	%0U	"`hP`f8#lX|*\rS0%ifa"	MTa>J\"cHH2Qj#a^T1~D?e8T@# C+!jT#t\$#Q7Z6_qm#`A\=	\rjnH1+cJFm,\r)*eE:F`~{#W1+Elc=#6\rVrx+\$v\bPGc\0\0\npqNj\r2T73N24U6F^\$nL'\b10&b 816V3+H@\r8D@:B@	\"umi`TE\&\rv*;K>-@\0T	>+21*,`1iP3pk\n>(0\r#BID B'^F\r<n_;D;Ib98t13@G,nMNP:";break;case"ca":$f="E9jNC\33ADi9LF5M	e6`gIhpL9Q*KL ,W-\r<&\"Pb2an1eyg4&Q:h4\rCMXa\\>RK&v3t0Y\$l\"P`o9>Uy=n)+OoM|*uNr9]f%3M2:H!0P:\n0#1h2e1KV#s:BFI4c|0cX70;CI!p XAx^;r?%38J\r:|B!P2L\"&\r:M 5(\"hlKGNp>\0\0MaX 6jH#)\\o`0G:Z9HPDP> ^Ir8#`|ah&B+`p<F\r#VD0\n7Xp&.(CaTRL4%<9Di:7BZ \"\<S<:!#J6 &\r,!/62\r*:7K8\n *\r	\"3N\r-3+XS}'w~R	\"b*0oBFI	2&d`wMp/@eDL;Ff48&ungE^\"JQDCpIOKS(r\\Kr1TSZmMRPY?@St5!A:3r4{IU:.Uh: O5\n!Fs	z/i(0a(Fn4FcYM~sfL!o\$p\0P	AAQ(ezo}*mo+r\$g%nZq<`h&,#s&*\n7RnxqFrR\r?`fK(t\nxy\"&!\$I/\n=DK(	*?(oc6A@'0AI'/cI\0R+-y[M:Sei]M.*&IAVnR5*KDbI3SLA0A?Db/I}\0U\n @\0D0\"*Y=R(N#P):)jS	He4D=A#jxXHh5y,!#\\d\0\$8:h1).)L3ga,=Vk2BuR=.:\0]O,5Uk(wh7S 0r-WcC+X#!hqLlj0P:%bj#"FE]-\$h|\"6J[*#jLn8]Ac4ck9 }	n%	5\$:^G\ns t>UYO{\"w*nuonMOh\"IAXDP[)R6Q+Nry41I+.5^Ibbne\nSzMO/?<mLhVM.N`aH@yo?G\\pU=E/x[:YfFV0QaVR[o0TK\"TH`F6V2\nra\$VO!tNyh%EjMCI:@R|kX7t7~_3h#-/?in}*V#\n8bE0#0m\r2ke&o0nPR`6G~@C>u,^4)7\n=dDfk" 3DS/O%~0lr'\0xlo\$=\n,^mfip0\0@UKf$A`X;M\nhM-@*2$	\0Q\n1D`yi*25+91jqH[	0kN2.R%QQM1\nL',AD.1J\$	(@-)HGqDr%m&&/T e4\rV\$BIF]O<@ZarljAD|nZwM(\\8HRf&Z BLf C?c1m$q62e'i0VhN4781S| 5	}\"+S6&F:@kof8f>`Nc, !E)XSdj/GK2 p2\0003Z\\*v%6l8:q\"[Rdh	\0@	t\n`";break;case"cs":$f="O8'c!\nfaN2\r2i690HiiA;Y@v2\r&ysJGQ8%9e:L:e2t@\nFC17APTj\nbdWeHMNe/J{pPle2bFrP7n[?j1F761T7rFE3i^0c4{3T(	(B#Z-((\"#z90.6#tC\"\$.Vc@5f!\0A\0\rX@2Ax^;p\\99cR2F#2Rx!2! P74>:)c[^xszCmE3M\rc(p5UL0HK\\U<h8*Q P7 PBHC-71b^%\"cp#p=PP\";@HBb`C7,(K\*U(wvNsQ+{FR&yRsFz4\0\$-[#ln]6VPP!C9X1*\r94bFx\$>QD9Vjqp003FIX2E0em#HR9aC[M'^^V<\rl	xok_`a_\";|^`y\r=Bk\?b4lce%lTVGou:K\\\"OJ))pTRKTRl@>D9H*PtrCCOp4\n)5spXqFII4We (&	i.%dFQ9&<a:v	5L*	<o?tpg<X\$"RJ{HG]ESHvohQ4!PVR-|l8a|^FN#H\n\0y[=*\0:\$4b0C=\\^#Ijt.u(c>	9))&.q\0C\naH#HgvNoI9\$!*8`L+ENM7gS\\h_1ThQRiB{ &R@55q \n<!@'0P\\h(l\$nyw0ijW\n \nlrO}@oDx*C|*P~L$"		XC\r!\)5d<b*4ryo=\nI	7D,\\BBd&\$^\$\"|ql5W;JZ=$6CJ:-*Lui. + 7T\"h6S[o*6	uD(Bj_Ot5Y-AN_E_;e,VMKzu*AZ/s	g(C8J\\;\nj.d7	E	LoaA%.T!\${I6@K/?^W(`bf_\nV'5O4pBm\r%JO51]mUlee1z1uN[s	s~arE=uhRz;f2t	]xW=s'S0\$iYH'yrEd0*W1ij#x!h>?(\"&pJ1)u}nE\$^oxCY7F0P'_0O<(:m^NcK\0\nLTI7\nj\nE4H(JwUf`@]Mb+)\\\%eG+/\\YE`@\r`,)&ELIT#P"Vn0=@\n P<dOp\0V=n;y Fp@1Myr\"3.YibAI\$UX`<dI2H*28LBi}#N+CbA1x\\xEjdi\0Xuf0;\"!8\rZ\n\0PA\"O$Z\$gg\$'L:=FE	b*-%0P+0&+?l\rLl{-.UP&BZ\$Dg#-1\0.42-'2:r?&R7D5\"%R&@\nw56-/r	q<Q\"nmnw9I]90#S4s%`#*d\C9#9G:;mn5fQ?7?N?(\rV;ai?oNj1B	9hnZ\n]F tt#TqGEl@T\$j\".FURhB? YbE#{]8\rN}KCo,F,\n<@RA+O!{OnnC@-	\rQ@4e1({\"jVS#Ss!Q5H<CT5BF\0eED?\0a5BG(rN`,2On\"Y`2\"UoE#Urk&QRr:?]S?[\"4Bp<!C\\Q ";break;case"da":$f="E9Qk5NC\33AADA0#cI\\\n&Mpci :IMJs:0#BS\nNFM,PFY80cA8r4I7	|lIS%o7l51r6n7/)@a:0]teg:`B\rg)\n!pQT7WXjR(&oYBcbO2\rZ2\r<-\r1p1?4@#@8?\0y\r	CC.8al\r:0"!cj2?P5d3H|	B"0CrhhTp"X*#US\r|J/702#aM7B2+<\r3+0U:R;@k#4m`U	L\"njp64c:D	RmMPZ9l)\"`Z5D)>MhK\"	\rc(\nE-K6k=^j,SEET\"S:ZZ&r\r2oDTb\\#A\\8vdk@bObx_O6*\r<DC5AX+[l`2S\n\"c:\$m:&Q\r)HC#IT	I)dK!DV <5.Zp_#,BN} #H; JOaDL&|rtiIUCy4 EfNfNzuL9)hWfmL9spT\\A\"0\"pN@\$\0[>(@R.d4fIrSlD2g*p@fMF*\$e E|7`7Jl;\$-)\n&3F)Jn(a.3b|	#&:o_?p8I\"!'E?L@)BO\naQ\"=T3nHm^9RRjZc\r3i H!9s'\r90Hg\n2P(CjF[B2'(\\s(6!K@BD!P\"\n(L<OPRCrncjgP46(,534%EEHQ\r\"jmMre5s=5T\\4H\"0Q	.O.o)8p*(qsCHzURA:42KmT`	+/ EY%^R\$mZ*	Ae5Y1DhC*hY(Pp)@7,6b1Oa,\r		cP!\0L\0h=BE#\n[V+AyT3HX.Vg'	p\0)x-Nl\\l:!GU9OU\$C%`OrsBm\nyc-\0(\"rvph%F`@nIwyn5q/\"`&C,S6EU(L^OeQ:* R,E|NhAm#\$f@q\$C96yBxFOJvM]ts$oMBG|eov&*J}?C+0ruc,qjKr9xDp98\0Cx\n=BbJUaTXSdh17;OpNeQ\0LnN	g\$J\r2|40M`(RX0BP)qo'pDH\$ezD\"R6|LgOET/dUljcZ,aiNO`x0\"]l0OC\r	TPb`\$Pl,KFHDBuQOUe- qvpdV\re\rmFLE\r)o	OO(Bf|'I7@Zp1mOU1+.\ni9'ET2.aZ>k`;l'0E)'N\"b2+&Pe2[jrB:r\0d2\"\nJFzOqo&BT/@7\n:Q>?p&";break;case"de":$f="S4@s4S%pQ n6LSp'C)@f2\rs)aiMdd\$RCI0cI :y7aC4(t\n%6[dfa&7n9Cg/* )aRA`+G;=DY:Q\nc\n|j']\\<,U;Izg#7%_,a#\\\np\rCx$hH ;.,(3(#C\rJj6#zZ@xfij7n;C@IcC#Z-3:t#QC8^xD\rJ@1mISCz::b;%Np@P`b-abtU#\r8 xZ\$NBC)&b\$\0P3weVJ*}\rTzZp(hh(b)-1<7E#][WNBsuL(cD 5r5-X	#ls8OX<jG\$Fl18]AIZi0C\r-m{BS(v#6#l`PY\rh`X\\r8A8. bj " )==r3}^#7Hz\"Cr2e5GF<&(p\"L`LA2&gSZmM@~PXG\nQ^T\n/ia:bD'PF\0000XLi3pG0'XdS#7'o[D }1o1d&FG2M`\$0BdXM='T(BJ^68oK+d0BcQ\$>_P20`	%`0 g\rt;9#C8:8KGOC\"gIAAQ 0dCo%0Q,Y)\0007f,ID6(XU\rW;WC !,'dNh+ru4Q0 \n\nF/))E~(@<gGM!5T:2rM\n'0RA\"_M.*?AH!f+\"MuPEOMNdHh\$S3\0-],8JS0 =5l]G(JDO\";cW1PDv2\nQT(FQlG*BE4K\rW\"5dKoF[x4BD!P\"B`E*(u'[ja<8K	=&L'^5{sR?) wS#X>GB50;SYM+gQ<WkD1@}tK]&XlMYB~\n#8TlpEAo%TRqf1fgTgH[\r9X,@U/0\0\ndpA;LF3&.;@)a\rf6PU`%u#2rL*\0q:8#]+uYFybj\,Rj|S) Ljung*BtB`Ag(2<q].0@kO6/';\\\0[<wsyb,730_\$y`3CH_Ynt+> LTr&RLj<B+SW(Xux\\xHiCs}h>(6Y;7G%?og/ro[Pf|hr1A]]}.'[B1EIH0+f[lGN*Y( P	T,BgO~PF5B0Fl%\\n`nzo/d0~?r	N#\r6w/\r%Pl0rpr,0V\r~0\0:>6Bf #ZGC,Jpbr yR >+'-M|vlFhf-9Q4 DIppU\nTp"0q-(j7C*7\ne\\#`	Ijlt*1g!pn	e\\`AR:@R?\$RH:T1.6 2 reWCil+{(4(y\$G^Py(+nE',R#q\"B!`"\r&S(X\r=/rFIOq/wfi>D`kL'pe0\rW1j`0I\$m1& \np4K6&p|n@ O%TmRO`;/*?nD\$\"73J03U'bf'bEkEsI:XbPSH/H@Ap)Co@0P]D\0Q\$u)\ng4=M@x2\"jl\$x0!N`pnR'D&22.	4S \07e_5,!FT&N=fWC\rg\"M2vO@BY@b84\nB  ";break;case"el":$f="= &rgY=;	E0g\$Y9zUJ2'gakxc7C(@j9sz8UYzI>P'DS\nTH}k-(KJ4j0b2a]`sOjC;3TA]OvOxB-wJ`k4L[_"h-2_Uk]u*\"M?O3)\(R\nB\\\nhg6p7kZ~A@&.WB@I1H@&tg:0Z'vgB(rQ\"O9sLJM8l(]43\$%Oaz,YnR# @2\rK<:#u`5x#\0@\0c\0ybwrUVLAtm\r-V#xpvg)PX/;D;:d4e\\VB@N8RBg%B\r>\0(jeKN/!N]<MgB+Z6-DFC\n,!Q5b=A0$Qq7o6'l)IBgElm9%H<P%CxBf[(=<@K QE} 8H"SP}~PU/(sCQs &\0t-3XJPa J12>9K L7DhIwE'B+>\"	r_'i $BJJT3BA:\"@\$	DMQSM_|T8FW0;H\"E)n&$[c#\$zV&O([/xRJ*hY5R,)MvMr5LL|n1eJ	((x@Ra!UUj9-HdU.W:wuKaC\r_`RD.!	H})EOlIc.D{(iJ5F|K!* u.^b3`pvg)e>*@2qp**SvDEqV1VEBMnJ5%a)!Cl?\$j\nj,9g	fk409U|0u7uYqV Z+6\"@\r0H\"%qb#\$5ydBF-_~P	@Ir>Qp\"n[`hc4BHv3DV^\\tsID/\$oVk9u~.8-Ejyr(\$CFE|044M\$Q4vN)9`urTL.crDJv{SP+B.a?n4cLQ%y&fy7	~Y\Va:20 \n<)HhPoU[R`ZP:C_u<PJ3D&w{L\00lEVKbSxgX6Sp\r\"Q{uH$N9\$p%\"gS&\\.mAP	=1A)g)Y4?7gTm]h-IW|dk<hJ!P))~.	q?i`bY7NA \\c~<|R_C1)'`\"h]>`o9oLN\rh>v,BHm2!axQ/\08x&DIJqKV;+\\poDf{J>k`'yd\"w~nhE;tDh|30<Bdg(Tz}p\"Ihc|hOf@\n 	\0@ E\\LvVW%vINF/D4JyF#&9b9BJ-G5h|EozbO	5q+.q9@n5gb*1'"	&~&Zk aQ)qn\$)-aE~BnX0\"b%24nRh\$?B'=%U!'NCVF\r0h:OV\$kO.00-3K2,\"IPI.\r,nw5pC5(fk6:i0DIi9v=,J\$>~6S|s7:;e:1hX?;I)\n,&p0'@h291V-p\$BCT<;~}MD^36isiF0Q\$d7=g7Cwxe*&uK\$.#14Pq/MBcr>gtIw1h-U0U;DSi9i	EBfqKNoH*2@MC\$&q<5eEz&WUBeHRTN3T\nITpROuL5Qs1Fh8\$Mew\nuVgRDTCJ_Hf)QHU!KUc&yhE]IPby,)\"M&tp5R6qb!g1gfYe5eh@\$ehZgbm\r\rB(#3&/-+C*y+hyd{GTNWSg6pU=R'1(!@k<ctM@WeW?l7N<p6<*1Ygrd@:p3SyO)Yw-q~v+56OO2	ywdv71.qc69]w<m<#%wRz$^ynJ@/oN!jO$I	JF5&*N\n5/\$\"8SqC5IO\n	i\n\rV`B\"\\$h<2BRAx&np(IlfqMwzE|1"J.\r|o6.zBJ|0riRwcCGYnE'\n56v+*oBe-NyRF@Nj"!t0On.Y_0&V>t8m'US?u6z#YCCwrw_= .ESD>=gof:R6v5v](3aPq\$w	6PYD 5hG3ob1\$3\nHj	s@q%\r*DGoR[Z*',IN0ltJ.:15@03ZS+bH/Rb J1cq}";break;case"es":$f="NgF@s2#x%pQ82yb6Dlp4Y(6Xk\nxE)t	Nd)\nr2\03\rF4U@Q&Vt21L\"-MU#vgWu<fprq3t\"OB7(%IU7`\rK@n IP&\rSD,j?R;XF(0\0C7kX:Ax^;p38I\rrDr4m=79S:c,\nM*N0L#:8++B\$\0<\0Ms]<\"6hJ8B#k7le [Cdj;.ue\$@:x,[#1&gDB\n2+-R@11Wx\nvh&ST\"8X2h5P<\$rP\$j 2/p*Dn*<\"ugnb0\nb5!<2C,&aL\rBR_7[xQ13`#	#.A_u2R\nh0=38@a*\nP4^cU*;grkM^>(%8IL>I%l3=%ZL~/84Lp\r&02BXS;)78v`B,P '!=P8#\$F\$>5\n^DeWF47r!g}\rbnPy818*xWV?(FH\n73\\FAJ% cho\0&-dpFD-?d\rZ\\<Qj(2.ZNqdFGI$]r`KK\0Oh6\nv01`l]	\0S~#lH6xGUi5n]#Q9\"!I\"a9@\rhxS\n!rG91l^z0tOXpR$( &Xo*K:$hU`B&'%* U\$-blH)\\bj6{ta`P%\$/q('q2 TJa2\0M*l)uaR<q\rj7f4t:	 *\n rJV>uR1az?B1G7T07LB\na=1>n>EBv\nP60\rA.b1kg+O!8!DzWRFFObyNl pf%Sh	\06S`e\rN=mW@zW[]Y/1{4=6-v3F[RFdzl`=U+VcqnGweG:8N&l!M'5<Uk%jIE<,<uQn1%@&i^VoLf_qvu\n?b?$+[#yVD=T\nweY}\r1x5OZ0B-t.Jrr<`p;-3V%> ?v54x\neEeJIj9uR(xlVc0#<@y\$*7yVpaLgyB2N,&m#\\jXp,cmJVl|&.>-/CaH(/Cd\ri\n*k,/O0;X8\n\nK	P.KTD7mXZ8l;o8umS./g A\$!0ZB%|%\$Bke>\r.E0&*hG^/opta.Rj 4%--NUeimhAq/LZvWCer#!#%t2C%QW%BViP&h-&\rV+Bxbh\r\ny\np0b0,o5\"8#/K\rG/-2j-NBDr~D2O/BHKLnDD.qE/Q-J9G.\"J>f&/J=62d7C5$ETBPrKvb\$PGjK\0X{J!7e^vJ1XB(t1\01B>XO2v: 	\0@	t\n`";break;case"et":$f="K0 5M)~\nfaF0M\ry9&!n2IIcfp(a5tS%9NS\$\nFC17AGHn7&xTn*LP jn)NfS9\\U}:RNqUj;F| /IRaatA'#<{U79ZfY=(L3|7\$0( `\"	NxA *c\\0c;A~H\nR;CC-H# X0z\ra:\\7\$C ^)P!$mP\nj\$,\\\n++(j9GB~CP\n\"**@MtW+<N7A{P(J\$P(#2C`.:#tA%ZL Pw,M%Ic\0z)BK234cZ4v\\CcL 0cx1a6ncxrJ4,%VBQU(~	H\rQJyJO	?6W6IJ>A KHA7]\"kn`w6!/Km#c+-%.;7:/9/0onvyS\n:Z\np*rNLRXHdQ&XKIq/&NfM'?h} guZj\\6<H;C&\$2RnaOzE1)0.I9%4[K4 RfpIYn\rQpp=.b`%ABxu?ij@\rx!"cGi'4C{\rRSx#)2_iz*((L;\0PCOsC4FH-GQxrk-)AH|_i(:I0KZUXH6dmxb&%L04!&K~	xq=\\x*1PRz\r(L)q@i2\$%RP0cFE8J`MF\0-mjh[\n GF"P\\LzmR3a,n7\0a\\`-uk0>EP\nbXd^rp(}<3U	d2\0U\n @@D0\"L\$I7NZ	a,QeL:'L$t\r2\$WP\0Ca~.	I.~YG*PB[ t-H]Etb0H0hU1	\n,{FKyq|g0bcw3;OLlAeB'.}	1CfTW6-lgXLR<8(u%CMp89=zI"%BxP'9W`ST(B@PQA@ lhQxp6!(-W^^MIarqTDk5\n_HFou:.>!HI\$8St'\nA4j\r52}`fl#Y4Z4xP.<kK&sALB_9|[=%h>y8wbnR\t7lu|h8|_vn?grHx?C"Aha4o<^4H:5v[QG,5M=*QNZf@D5q|;EU-{U'M}tD41.i+mWjjbNbN0p\0K0/)\0*J	J.'D3ch``Dr\$ BG#BqL4i%bu/.,Zh\\;eS)zS>0\r*<S<T.01\0$\"2*&Q%qq9sH4 @P>\nF\\jC	'B_Z8E\$iJQKpd]0&+\$QDg],,1&)-L\n1b0AH\\OJ1 eR%PrAqY,@7.\$q=X2Q P	_`\r#RzWG+h2)W `o~+bl2VdqM{FFe#&  @h`eNs\")k\\\nZr\$M#~\\|F\"` \"d}l0Z9-%\$y6>;pf\nT47f>ZQ5l,`rl.!\0Fs<r@34%\"\$ X^EL\"ROi.b9BPqnOf	,EO 6;LCx5eAfs@XAeC&c<`	\0t	@\n`";break;case"fa":$f="6PaT6(J.0SeaQ\n\$6a+X(A2[\"S-\\J)Cfh!(i2o	D6\nsRX\0Sm`k6mkv6C!ZdJX+<NCiWMb\"*5o#d\ZA#g+>mc[Pvr\rZUs/Hr%)NqGXU+)6\r*<7\rcp\0Cx*F(I&:_+k	k,`Xk2B\"8@2\r@C6:##o`1#\0@\0c2\0y*?wpPp_3sLJ|6RACl4!	,Z;djB^M$k	D\"\r8%~U6dBO\02k"V_k\r?X+Imt:LZUqq{\$D#Yc\r::55S\r<,(0(/o%e@^ma\n&0)RBYcvVz_C=*bWVWvj"B[z*Z0w^HK?x!_TB dT7r(:9KIir:hR@<\0'es 5\";gh^\$>C(f6I)D&&OBYVq\\n(*2DF(VA&J[{Ww>P'3r?-_DQXI][*@:\r67NC\">Mx4O;rP8@+)[B;*HWUFM!7ZX[66'dh@E1,k#\n[cz!B\\q\"DOAC2QNHX!eW%hn\rXTc![h84HT	3r!6\0CA2P\$3a%\0frM\n]r4tX!WQ|H5K:UUo(\"3>\0((`ku6(\\aIrdD\r 95\r%j ARRsLYdL5%ia#S\nA|	'3uFdd\$\rS&eep`[Bc&t	\$h<4*RFKjuHI3 \"z>(1$>+CL\r.J#nXKMhEVJ]HW0(I\\(%fMzKg(C#J?TynHx/QNn?U38~ ('BD!P\"(L)Zn Ld2\nIhuH-bAg~I$n|DiJ+qiEGTmGDUVF+1ttzp\J:o!k*#+k\"/@ a.[mJQT,|.3,6jv-Q`l47N-1Z-/lL5>G{KAa \\RT#S8LjZbF_wNBp7Y)/3bMu5[]SCr'U2vIY;JMQ4<n Ic%o?<{zL`zn'_lW|;f|Gu22~`K\n+\$8sZ><a}DgV\$j PPYm\0rhC&!\0P"n, ,Em8~~q-48X\$ng\n4.C\n(0\"WO\\0lJKopFkP^A\nlA?'\0lG(d?lL[%	]h~EmqQm;]PPMe)Nn0^D@\"CpBLp-)Rui~o<)-\$:,C)zm`P%Q	CE#1'bwvNY#)kqv7B):7q\$<kM,DcBV<wn,\nrDx1&+:3"Jd-~5poCN2 rVie\rPf\np\\)*TO\nEjf%BS% M:7\0l@ELF1b~O0#&ZDBm'??	r#q7\nwr4	@j;@7zSwcVz=T",d0GFni~h*@\nD%\07GeTA	JBF's)et\\@";break;case"fi":$f="O6NxL#\33`7iH\$:GNal4eu:&`t:DHb4oAB?K3\rF<\rL5 *Xk:+ddZA\r';ejINw}G\r,2h@(vap1I*mMzaC^vcKut2se#Q4p%S%BBXp0\r29(c\rLP\n%0@4Ry	n0:h*R94lj0z\r\n\0Ax^;rOapcc ^)rXx!;%@c(H\rc,@:kT`#[:!#^;HK]%5@#8A-. V{.V!4#=78D#\r4	\n:5W$J&Cu2SVr/\roKb6 ELiK	);\r!\\=bX}+6.P%H:~Z[#MryemiJ@0K4Jeg\\\n\r->vNz1(3l&#L6zR)j44U=ZtW.DP-II((:c_tKwQca~?hp/P^Z-h]#a\r` Fi:\\K1&DRl`v\ru2uVG5	/RQ;2\0w0HH Z*sRHIu(tL\rN\0JbP,L)sB@uI&-*vT\n)EB6L3C[\n'dlGwR47x;*/)EwevV'zeXri~0@@Pq()3O=K\0S(e-,Dh\r(!4>\0|~Q\nGM=d8}tSQWaY*|fQ((D[DQt}Q(Rp 	XBvdMR\nK' ]C?f<jKBDS9\$O .6UJTr|<6liD9`iWpN8O\naPs@u: n3D	FnXIIVOnJL*\0tO3B%kD^JjsZpAb<'\0 A\nB`EhAKyYz:\0A[:gr d9PlG\$&/%f3cEEU\"gfuSllCk%#9nz%\"d),I^frsX&.nbT`)IMcA\$71Gt23Uiis8>rVbTmuZw)GlDaJNm	Zep\0KZ@(s3HZRDPNmc\n \r9r+0i	{}%{'Wsp^x5ili	p<vk?htE((j\"VKn*p|;roQmstw#\nHrV+4+te+~(\nLocwrQ0xH9<P0KN\r/[7V\\rhPu*>r>ulLp2NuKRq	k\$Bk WlB_R=dHjYV	9}]fiF/No	cDR|\$-x|p#.\oO6 6E4F \$vYL|U\$`o\$| N%(J#E\n<BP`@f8D\n_xXWoTNFAOZ\" -!OV\0XQ0Ft, bhb&	 	D&|#P&&1op:\0%BG~\"C\$\"Ew\0\rZqTK)YpJ a1q$:<0/rD@Av##.Q%\$_`4q;&rnp6ft?U*`cnL8FtHx)2R\n	&2r];&M[! fQBq\")f5,/cX5\\"R61+,Ww\"d[,mnBClm/cDn^f \"7/7pQ4TepDDv	(a"o\"&QV(l\\F\$L67,C6J-<<*=LLf8\0%h%(w@qq,NG0";break;case"fr":$f="1iu9fSi7\n\0%(m83IIcIDi6L2@2:JeS\ntLM& PsLeC4(<B\n LgStgM7?7Y3:NINa;OB',f&BuLKg!uzc7\\kn30P*P<HcRP#P-c\\9P(Ljk\r/G;-b j EB<4X)20z\r\rAx^;p\\3sh\rrP^0`;QQ6':7KroTBr&62on7KxMl!m6t\"2222o	Yc-#;8[U">W&LJa P9+VT{/6H:yM	E`9N5~eVD)\"bC>O_z1LquRTmf Pz&\"94n>E<_P.aP3Bt8En\$\"C[*hJ]pbi4&\\02%4oZoKB;'|kp3YZ3MzB#&,c0.'ee8`MR-P#1!+}'\0K'\rGx\0j \"\r3A ,U$?f@a\$)%u9xOI0#D<	(g9l0`BDFz2#}OBg"\0m{)&FT7(A4L5v)H.;id`1Jrf37Q>FeJJ9(i*K	ck\r5:S$8R.E\r1_1C;aP+[8DAA2B\"tr!*n&	6%\r6-7pS\nAnRNV\0\r\0%SFyxT2E%P )5d#isRj^\r\vP|EJzSG%#k}.|\0>~ \0R;O66ql]d94wYa;K}0&0P4FsW>2ne\"VT	`=36ZKet	{7gXH`cV2 \n@\"o&\\W'as>Y<5Q\nzN<8)p}Y=iO[e9DhHp$\k?((8lr21d*gVe\$Fts\n&Fcl3;/H>XHH:v&(QU_A@=gK-[G0a\nJ2e)\nLh*NRC\nmJ\rnDblqD\n}=E/pMi.^+9\$Hbit!Um>vT\n!AJZD)GNr2{b_\"VL_8e[wdLTdMHc4R`O;+EawZc|p9\$?5+tP]>J\"r9cNe!2|0Fr[M\$6ckp@b3-tQqu!'O\nPA:/\nu\*gW}O~XtlN+jL2&OA\0ExL%\0dRO_efYb\"ZC`\rhaTMPTS|3N]DZ%iZg0*g#p\0L)\0\0\"xbp]llU	p\n\0$Ys\nip bfbPP(/rronB8kd.eL2&[email protected]!1d}hrEq'1*JuB$Rof2bQ\0E{P\rmy(rr1]\0.RfP/\n!Rc'\",\$F32K\"NY_#DDP\\\"_L!E\0Q\nI%9)p2%%002Xie2e+V^2g%b0e,n,2^%f2Cek+1\n\$rs0D[03%C00.\nO`&/y -113ZC_\$`?f-+RdF|%3s)C1!3^I7%\$N0$S,@k5q-\niA\0b|jJ@Z6N>0CbUBtq\$TD^dcE`@@nE\\iM0EG\0DG81!pvZGqT!;C<4;o)PvQ}9&!4lu\0;\rM:5tM)LTh&;dIF:\\O". p\"c#y#h\rBt=/c@qNld\nrpC\\ 	\\BZ`A`;break;case"gl":$f="E9jg:\\33AAD@l2\r&a9\r2aBA'6XkYxlc\nNFd1\0M	h,\nFC17AF#\n74ue7B\rb7fS%6P\n\$EFS'M\"cr5z;d0[(p% n#	)A`'7T8N6hGcK&;Tu\n9M\nf\$MJh.Jd\nRsjP@1"*L($cph09#4\r#\0xC@t1SxrSJ|6./)x?C*@1p:03X-7+p@U/Lx"cxC(BP\r\0Mi[WBXO#\"1vT+H|P+.o(c4L\n7Pf;63:c03\0w0(&ejnU\r4p_P\$X(T~WPC	s#6r2KE)\"C-Dz!H57\n\r+%Ci01UTXDOENB^$2cT:2;B;zX0I\nS(wOz\"ChAk5\"_	|F#\n#)_\"VRk#*SJ],?)4BzqITxr[NJQeeQ\rd\$VK	i.%,L0`	@)XMgJ<Ja1rR`\r	6D9RCUjcJr8a\0ia8^,x'\0\r\0PUL eLvG\"oG<;,'|.vH-v\r<?f~i#I#pH6&	ph3elHC_OS\nAPC@ +xd4gl=')e\raNF\np}i6\$_aPdH.P#QS'0b6S\V|% UPS#(a\r a'\$S\n-tI	+2hs4_EEP\"I+	)Q0BL	!h ) \n@\"n&' yo=&[eYa,LM( jF\"u(dY9GuAz.z Eh$<1Vv\n;(()U,mt3m&|f*#,W.:pPSce-c~f1^lUbX]C@2\rallH\nmMzqb0RR8&z@NE]-^F49RL!!J*0*KN/F<Ls\"_a3!jt\"C4aI.<LR*0yL,4kvw0+\V>\"Sr~3Q'FC}!\$?lP~\\kzh!)u^\r;4\"(QwC]m3JccbZU]S#;D]g&ow<xt{MC<hU.0dV3GXfJ| )\$\0uhmQBhUolm00\"n@D0r2BP`^B)T>9#\n"BBE0gB]F"p\n@v%\\ij\"	\""05G#	F1,bj?\rL1P8\$kO~SmI+	7OU\nf1{ V%Nde7>4b{hI?QF\\gjq#fC!=#/2\$h#R,#UE%[P\r2;	qi%Rf3`@B\"`F\"2Tr\0j|\rb4.)#Z\")q1*\$+oR{^xpw@A```@j\\t1+.\";	%4b@Zn\$i1N.#\"6#9FzeE-0\/fm/l-/-;4 7<gl~3>(3PL<,(n]PocC;:=;@_r>FbPPbo BB.1l1!B:bd1^HVLH)E~\n>@-j:#~\".lJE\r";break;case"he":$f="5rt@ ak(ffP<=R\rtSFd~k-tq `z\02nI&A-yZV\r%`(`1Q9'K&cu4Q K*u\ruI4 MH|Bjs5-uF}D 3~G=`1:Fk)\\N5n59q-|_|mzSIn,cNfLJ @2\r;C2:#rp0#\0@\0c\0y+%\n;3!\rk\n#xzHJ[H2	l#njTB\r4[AkEt(\nfL947\ri\"k?S/-p}'U2A;)\$'Hm\"	--zIB&Y\\p?TS']!rin3qPuYMZ)6ki6y.LlB dj7i:\\7i(L4yU^Ql6)5C[[ O)O'vs:}sH52koa'm@2^\r*9W]ug4%It)J0:ND&rLNp( <3,N:\nIOJ)M*pK&\$)SI|c^JLl`3QrN\nWi\r\$jqA2a\"b`l\rnDriP4!!5B(\0P	@\na{d*nEaCJ*\rArh:K+'!hsGFXCppG \$ h\r!4&MF1naC?rDthRHr!%o	\")ftBT<~C\0Z^#+\\&O1HN(\$82DA\\<RRBb%I/E<u6 \$@=\nH9sI*L('\res)uB&b`M=X&dj\xH@g\r-g`nZ5!6Ov	VW!Xni %GkrF%n!n OI{#ds9M\$V*AAbHTb1l,cXs\rzU,!ciN 5vU1nF\$\\T"!P*sg\\<>19\"Rmzs	=%dyI8el!P\\R^5Ych,/7#q@-DViEmv19aCi5\rhUD	7\0[{k=EJGp@GH4z`w^,6oxgTDQ-rk\rjB!(93ZpD{*fEZp%@p~\nr9UrPQz)g[Qm\\7D*BU<U9asL	8\\m;+?}vnfk	k+.3{'WMbnO{@_53toS=\0B!`XM0R,['^-?3I>0?8}{f?Z0H_Z:t\\|#{FQv|_UR?K.P74%p0 \$<69>Dn.F#g'z%80x|\09m :h/&k^k-n<='eZ@nL(d~clVl4bq,R*YK\0E1r0*]\r]-q&2Eh!^nE&3l:n0'l^\\#h0p -<XqWP~gF41[!O:xY2E-QIg#b aD!(<#kC\0BY>@Ef?g\rb+$^*> @";break;case"hu":$f="B4e7\33\r5	d8NF0Q8C|6kiL 0T\\\n 'LMBl4fjMRr2X)\no9:OF\\\nFC17AL5\nLLt1eJ)F)\n!aOL5LsT\r*DAq2Qd'c-L8'cI'!!4Pd&MJ6ApW>do6Nn\"a}1]\n*Jn\\t1(6B7J{z:H(T	IC\r'|\"PBP\"=A\0r(AHPb0c\n9|,# XAx^;pl38KR\rcZ\r#x()Lk'*i nQUUCRB0\0K\r2h:6%YTN5P#^V8cm*i[X-3#RP0cL<58.5[CCMb\r)X\r5Ch7S&3b7Zc&K#LK&C3[SjU(%j1{BN%EBd8@6h+lFNzY=h\"(.#lc>7sMjs+#tGl[5~ZP"\"(\$d(-QK5x(Ro}kr\$5rU/3+AYQq@\nYEEJP:wh0BjM8tN2P 8\$BQ\rO:%r3F9+!4L\r% 2gM)6!iW	Ts8hn!>sHe@~e('rJy\$8 I-Fr*0JX'`JDHc%\"s%C4p\ri@1W10%R4eL1dt3| \n (LX2E2G2>M!R&blX\$L%\".DW  d43J7-bw8!4 ?\0FY010J95qgYl\rbVL4>a\"I>(D5JTG`J+J3@tI\"!J@(jfs\$1xS\n@dg\$9P\\j*CV2W\"<\rNi81Q2+\0&e] (\$9\"Z\\njIj)n*Z+BPHf!\n.\r\0%\$P;['jX\n\nqfSN\0)2ZMpUpF;v1b1)*\$=W_aC\$fM`/IEFn--(\n\$0\nXr:Y\\/yxkYVd\0Cg-sMD`\r\n#GU GCD[[CK*@ \ngm]c"]Ym!np_zrAp	d6(8.y t/s7	bqrQ*m\r|'U b:2%0\"/OTY`=E&jGFO61m\\ UxO.a1GN'\nwx	Xl5kgQ^Fcq/jp/+Y^'3KbfaC\\G7`-GK-+^v-;kR'0D/cv9+2jCbV8j&2`A!ZLUnJ<l-P]zj6Pn S	 hHpM\n\"+\ni&tUaul[n\rd&0&t /\r#\r8%^A+I6+\nM	V&&~BrEMl)0hrW|TSqhF{'l)O|Gl;q`;@N|#\"EBN2>&S)KX`F`TU\rv\$o\ro,^k'\"/1E\\\nC(-:G\nS>'\${!E)&h#&|=+w\"o&7D:8 + mz*(EQ\0>5oa#rPq03/R	rXYO:gNOS3	AE:\rVoI^\nJn\r)H~@\npsH^&Hsps/'\$BH\$J_h^&/dv"0EaB0kH:\rM#j	%\"(mn	e\n)x NcC7\0\\cUd>N\\n\rJ-1v+v"For%*8(5cZ Gl\rFbstxcF	fnMfmf{%F5Ah\n^?hRVUuE2-atp<t~+-Q*\r\"\rwc:lt\r;break;case"id":$f="A7\"7BQp 9A8Ni:91p(e9NRiD70#d@%9L@tAP)l`1Q93||+6bUt0f)Nf+o:\r@n7#Il2:cMp*4Sq7hA]7c''D\$47jNznQ9)dBjV:p	@P2\rBPlcVV9C(C@t(pz29^)AjP5HJ5l<tn!(ENh7{#K+1xT#B2B3ppvOnZ*\\%or5'#:2h&lQP.	((P9gK6(Z\\:>a^(r\$oE	p#wPU	"@PB\"@@h2\rc]C0\"V JTIrd2Ufrhu70[t\$0NcI#Cn2RZvad[|FBq,\$L(\rx,w32XF|r2o0B9Ih6\0Yl!\" E~lX1J(@15#.	9%6hIzD	Q):[4`_-H\n)\0BeIa\$MBniPB\rd;ZW	*\0BJ"e8hn:9dt|M!j9\nC\naH#EI(K\r&P6hbe\"JfzlTZI9|H93CHk(LA;RqviQWc]3%1573PQl\0T[rhLOH 	iJPr,A3A3`0M<JBRy{A a*E3r#hr {\$!D**	PT*\0B`E@('CfH|X2M\$MiY.NsM\n`v\"B0AXd(\\:\rER3x{M5^,W1\$k:'N(aMRfX2vMMPjHE"%@z>hD1J2	-,\n*dFPR6cP#N(\$Aa N%9\rr!:N%(Dh/x2X_ndN(s)Ge\0oB\$l"xF9~H3&0cr{GR|qi~\0:G0	C\r-L^~.\"X\\IjPqK(jS`NVr4Kjd(*Pajgx\"pPP&EB\r-Ez-[Efje\0Sh\0(5pl1p-z|K0NW_o}X~5{ZqOXaV?w';n|l0C7u	{x\n	N\0j*z&=b\r;PtZ:st+6d6\"sX-`^m9&;yI|y\nGue\$U6*0W_-\\pA/NX-cQ]yvG<O	0e}-^W\\K QoX\\>;\"hDT(i/,Ubd|\rRBN~dVEjVBZ'\nZr#&Bi	U\0C-8,>kb,7\"@`%rdr(c:Bn4ore1P&&1UnP\$A`Qr8O@XeM\", b^E&C0V\"/\"b^@\$$\r,(fdI jjO;break;case"it":$f="S4#x%(a9@L&2\rp\"u9qp(abI!6NsY7j\0cH 2gC,Z0cA8|\\oN&(ZM7\r1Ib2Ms:$9ZY7D	#\"'j	 !4NzSf 10x-TE% n\"&VNw;PCS2,TAE	kvI	zs P2\r[:!4V4212C(C@t0,^\rC7rr35h\n/K*sbr6\r\0M9OT\n7\"\nL?S0004+X{#6C`nt\n/cmlcpB|lP\ns3,YTe#_C\"0)\"`0L+r@QP6HK9.2R!NAf/T*0@*`2jo3x"/UtN#z)2HB7+	V\r<ATcpeG\naJZ{).'czZ*2Mj7Q]lt!<%9JRLtysa3M4J0IbR6*l\r1G1 HR\$\$IC;/94RY=@|QM[gF\ntPH=JHN;@)0a!.d|bj'o5uQNPn8Gh5nW)-EbI		GPa(.xVA\0P	A[\0((	-j2LhX)\$yNjr!Q;N:4i%)|8 f5,P!U!7\nC\naH#I@A%AL[\r+*!}d.^DHXy2\$\rDGmx]\0B5RpJ\r\$( rn\"HF#Mz7tnm5RQ:1Sf0 R6/Cw9@+BD!P\"(LPhR9DbaB\nr+C@PR&J@T\"NXyd`0Ltb!@5cnFhj	9(_M	\"\\{K8tRA)sTZ/)*||xsv@`y\84`6+2bce[Aa N"g1H!fx,x  EcUn:5R!o<%Ge@Co.\\b'pvbh_`@/Ty?h@St,nI]_tA7FDf#1jZ}BEAptd{y\03-y/nXr])\n}wovp!,U;,Y\r\>zIO(fVTCg}Jww[JyoaNkITnildSyt@HH#tsp/MEAo PPRy0-y\nr1b9Lf7zoPo==xh?F\\\"r4Ti}\"TtsFD<s\"[)$wCx/y\nZ0G5g>3bq>\"|<.o-C/%\" f:Yp>hO4\0Yn&Bpx.fcnt]c\ne\"ZFDJ\"Tg\"0})#W\kn=	BW,C1<&kHc\rV8BI[ U.	a \nphr/G`%1R-(b&H(]L\"N0Te;#qZ1nZib0X\$f%>/&B##$1_H#\n4b] \$3.g3\"\"\"r;@5c(\"vB~oQ&r&N6\n\$H\r\"JD@\$-\"L8!T\0G-Or>[] e2PD\$^\nq\$T\0@	t\n`";break;case"ja":$f="nc/2-O@N4UP\}%QGq\r[^G0e<	&S8r&#AKY}t \$I+8B05\rSR9P:aKI \n\n>Ygn4\n:ShizRxL&`N8'cI2Myd05CAtt0S~9s=\\\mtTBOsW:QP\np2C9E8i\\\t/BlrjHWAEYp\$r?( hA\0-h|8Arm)8.H4a7c2\0y5G)t39xDc46#HxAkE\$hJ	se*WXt)\\rDb\rDK\$E8wvI @>gI\\\0S\$CEi9hQ9s}7K6JdNB0rB&#'&X,Et!	p-V)Ic$=h?&;_'AR8NAFDoF6!}H8Ctna{fJs,r8UnH*6HTT3)ZbRADP7`l:0`sOuR  t N(`PGTg\r(@C\r!*\"Q\n)F(2RwZr@*U\rBz YF^1q(@57(@CyOh<\0 .O(UTZQ4SJeo I\r\"@>u'E\$rj.J(I1>'JA]86k@Uy4@dP~K.r]	8NGX<IpCc',PQx-G0 B\r:af'@\$9dOB\"\n&sV%,{>MCUFn6fUt7G-&&&9FaZ(5|~bkju2q@nA;>CaN0T0|9D3,qK+r'0 I+a5RI(!	#H,_\0dt.>qM!h RTpNxS\n!)&bHd[sWU.\0cT\nh,m%i=V\rH&\0Ma*Hii[CAax.SZ9E	PT+\0B`E\"xhzB%>2-Fm@{p&t,53<7fT%0Qq-0^eEugqZr	(*%Q+\"lXXdzygg9\0;k\r\n0Ay_VkZLFMyMeOV#{R<7-ix2o[h0&7HB4\"1&@ h#o\rr\\K(`g*I0u#7wF6DHT.{0Yuas w(;{QJ4?Eg<\$ qBN-nt,A\\2+}m(Uf\"1dQk  ER^YC[Z qb]\"+Qk-bY'vG$oib2\0/r\0n%gL`^\"#*p@%?)^I\rmP5B\"G^frB0b\\\nLE-&bO-[1\r0\"o.OPZPnp\$08K1Sb>e'>>E]n\"E*0,Fm\nb3p107XXHo,\"mGX]@\r11\nfabt26?\"\00|0VkceK&M'\$v8(s/+D,#{N qC15\"r\n!P+..//x '3BM*G[Aa0=ap'')!E&IHne$RH/qn\$c+3i&`\0000g\rV\0`DM`x	8\rNc\rK\npuRHF9gn3a#\$ +F9\\G*c16q%B\"2n4&B^W#EB9Dm<'9/O <h<m'~8RH6Ip?I#)/R	J+\"0'\"`t#V%4u@HtY 8>^o'0U\r%qp.C4 @L`\0aKeH2(iZ.]F#h\"g@m'!f0xU!";break;case"ka":$f=" 	n\0%`	j@s@#		(0\00VAC%PX\n9=A`hJs!OAG	,I#	itAgPb2aU\\)'V@.%:B M@TzduS*wyO(Noh2>\\r;7HP<6Imswi\\\rP3ZH>AP\"9 jtMs<Jl-:(idbM\njsZ=1AM\$:NpDDj*SS.# \rI0)('rJ,\0x0@Ax^;pP0\\7C8^2xcxDn?)n=tjT\r1R?-9D*e]5OQ#v8\"Jz>_L@A320	;[,U;]s,F#dW<B)m]A\0/Nr+(oBJyj6nH3}D\"rwh,{+)\"e'z(kwzo*cNszwSk-'v'E)3%)m\$dI=|fzb;w}T9"UK2+P1f.tDaG3v~7P-@wi9K+I-fM%2Ieo3N0:fzsXH**DrZq@&02K!`>BN^bD\0r;]OreN ctJPjCHc\n8E4Qd(1GTjSVUzVjt7LYK6'gM##rm5NOlF&a9J	4bgeKnJ|Ap'AuS*TrVJeq#WX+,9Yvs`S{9w5?c(9F|u^(h 4qf9W1D&TWMq9[oHw2%:\$	F>RElM>@i%A_&2/yZnIxVi&Nu'kt%/uthtSd^6XMy@{WkK6eLR##J4=Rr899\"K(;-3BIi,h7E|vH(0i0W_t6#\zcZ"c:4(kCRudV85g8svQT2lgU,ZfC8/m0n96@_\rwi#f*b0T\n3JMgR	^*><0esx,i  (\rg<n9P2N)^nl7/X^mBloE#l;GXK#u9d3OEq>Y%=r0tKmRAF0NO\0u7']A'2#W+6-!3li.ae*(wv9AG{H2{vd$5'3Cq5tDE#l{}gKj-t_bJ\nTQ<];[=RP?n.+zYtBT!\$:8^YyG=8.#y|jMlnEJA(#rn{J)\\fY%d^}CN0Fo&>'sML@N|,&G\\\"`/@GN+72L(\\v/1	kHK1L\0|nJ2u4-,m\rfr'zpJ\\9\0Zf)/8un\n]\",=h;(ENkc\"\n10|`x0_Oq/\0,rhMJ<HRFEQOp\$Mbj4JJV+t\0007m'N&)'\"hipy)qBARdpl'\r>}\$i*|r*OTdl0}rJ).|E%N\"Hhg~56O7k7\\Q '='M:Cv: V{u'D	r0m]!2%8!92@\$\$72d(R@A2#B'?C	.CQB/+Qn]9qR/554F^nGJBqFb2dS)kVHC+aBQ&2wL1IQJ!f{@A@DYy78#X:4)b5=29E#&GCF|\\Bh^\rV?ASS0gRQ-aXJu\n`p\${/K(q!1r,OFo,\$r{K>tP^PH[cS4oSYK2y;ff,VL%BY-kS ^akpLv0\$@)+&5=J~PMref,`&	,HU55)M\\D?XgRi)LMSU6Fdfk,gcK_()G'NPiZ'mn:{gl5b'=^sq6pDu}2Q=h-({heDLu\0r* \0dTZQQU.\$f";break;case"ko":$f="dHL@ZR	E0D:!#+Bud<LJN\$HiBvr2X,S\n%VAc*D0cA8k#-^O\"\$S6u\$-ah%+SLAvG\n^(&MVv\$-F+Nu-t}K'Rl##`cIV	[6M P7\rcp\0CxmBZ!L:dB@0R\rM/d!A1pt56Nga0@EP'a8^%\"X2\rxPcS8s##4\r X0z\ra\\07xD%?4\$6HxByiNHIBj/Eh*LI\0c](9ZuEKIr[P###6y\$0PBDqa(J#%gDPv'+:cA+T&8X?N)+tec6OEJL> H #cA=Cd9c\"c%sjncX}\r$T=s].E!m=okG{3+Al~dqt7]lwB|PeHA?uiQcO\\XtazS\"V>90FJnT#,6AB\rPSrsQ@@h\$0eDde-H5FYk@ZdWA3A \nMJu2T!PrUJ0``\"^e3b\$K"zrJ$(DZ\\&rL	0 .R\nIJ)e0\nRD%NJUO9dHm\rx6A \rj\0tiCMH	r%R&_W004P :h%W\rP*\reh rBWDD'HH\nIv0:+e|B<Yj+8A5XlA;tJldN6T\rC(\$Z\r1C:zS=H0F ft'l4Gj.ZD)%-vv4GLJ2RaFDGw\n	H)v\\u.)X:T*`R4mY/xS\n0-b{5kC4F`/u2 w4PP\"im=V`@(o`/=s KIy1DKf'x&EExqa*aNtuGp`Ls,(!/tF82aD|NY/nu1svhuWn$v#34,dZ3zZ8\ry(QAJ/EBhXIT%h9Zv2Pl\"),\0dl<Lpm&ybD \\.U4]-Hvp7bN?IE)UqP^bvE7%"#{_*@ <44Q~-EL0@=Q6t]qx\nd/^&W%;i4;Xhji~\$aDDU\nDtKZR	rt9oUnx	Le+^KH7<45ksgr`hJ4s4|=\$v"#F8a7HNa-}~5R5:FghA|3h`wkHZp0Cn3n6/NF0NV \r\npn0\npc4<%p)&\"8'D8//xM, =\"<fpq+,!*]Mp\r1-PIKgY5epJ0.Plq<3BZ,n$0\"clmNHk0 l\n8\""GG\\	#r@t`\rT'.>DBD7%&Ihl%\n%S&G\\Ef&0dTbRs!p*CO2	Prl-,nem JnK.=?b=H1!jb>g50+0%O0Jh(\rV\n\rgAFOr ( \r@\npx5<#%1O,4geD;2ps#_<A\")+kXn\$2F<3(;@Nf&8dpk<0@v#b:6IA\\!QE:s+E/0k2LnVy@#FQIS&Ff\0p`&fC`0d?2&taj[0rgJETFftly\n!\nMf6F))Fin\\Ak)a00Fe!a`F\n&";break;case"lt":$f="T4H%(e8NY@@f\r49Ma!^-	Nd)!BaS9: 0cA8Ui0P!@l2Kg\$)L=&:\nb+ulF0jo:\r#(8Y:E@t4MIS9Phb&Nq|JPV<k49`\$,#H(,1XI&9X9VB4-\nc`	_\r\")#jHC\nB;%2\r1+-B4c\"\"0\0c XAx^;p\\#.\r*V!\nPR.bck=T6P\$:B#b*	eK;@.j>4@H*@:bX:U)K/5q#;3$cB4W	RTh\"bT\\9hm[Zc;%4c.BC8hr4?Qa\rv<>K;\r,!HAPoKAjK'_(5ro>4hr^5J916G4*\r7:P:H-,fGuR	U\"^bRpuLotHGIDRlM;\$xOA!`\"Oo\0=B	z 	FIQR:O9,`/Q&5kM88+\nCyOq]bp.B4t!D8D],!eR40	M!  zX33~*~|>6\r;`!\r`\ri\r!^\"DB*PA8.GV\nJc=\n!zE.oBWe?CC~KVM8K*pe\$<P\0C\naH#G4ZX Lp]E]#jH d o\"\$ZKHBeh6CahI5>'d^BGm!\$D15G8CGmpPQ&6'0OdFll\\_zmdmB\r,\$P(YU!_cYf:3sI\0`5)r\$@Hb>7A)'x@*Dt-)j0W8sxlCr,\"&'n}Eqj`G"K9Y[y\$mKC.P)}e^,q\\\" nlh'\\K@AtGsV`20Bw~Ljo0	z(Jiu&gt\0(	d\0  H;g<,yS\njp2$P]fJ)%_W3qYq8UrJ;a*@ \r- s)KVM(A^p8Ng3dt~>zQ\nu`\$*)@\$\qIcq]4| tOO7_\\39UFC1:a=KOKd0Wp&%Mg#N*ZN/gTazOz,=o\"t;r-0YD{_k\$zS>^{_b\"Y/5Il;|p%pwFg /6P\"58\r%[ @T&R+2q#\\Tm@/P8.W\0	,0tK^}\00?-Qp%B\"e<jQ=\r\rlxprdRxi7\"i,:\"<\\\"#z#}^g`D@(b'.r-d\rMQU^z0-p)PRUn#\rNjX <RdZi=\n	1nw oHkbc\"\0Tm";#PR`@pm,8'MiX@NBdj *\"HR\n g0,>TBY3\$(%r<X8~6q]!a	0_P\"0\r31261ne*\rV\0`Cj;\"z@*:~ \nps@$,^)!3#.~`[rpp\0@B&\"\"v8b,bdp8@Uc\0B3C6\n`E\nJd48B%\"O|Xs:!BB)\0R?.*\$JUF/ LBs\$z2dtD dm\0`E[l\naUqF1fed	'\\^4Rn	6=-Nbl&\nME\rd>\"KeJlv\$CQ<\r>" \n2)O8";break;case"ms":$f="A7\"BQp 9S	n0Mb4d3d&p(=G#i4N30r5	Nd))WFSQ%5\rQ7PcaT4f\$RH\n*7[9JXe6@k2B/k4%4s.g@	oF6BNyCJ|y#h(GuH>T7r\063Pj0;I::`+AP2\rK\r8z,0cL'\nu/C4\r `@ c@Ax^;r\\\$\r|vZ-!4D* K\"P\rb.zhP0MRp#\n<S710\"Z|7Bu\022PK#8	$RzC0\"@'ibn0j0:L\\\$(-pOv)\"` R`+wj@z~[MJV!\"Y@\r=iQ>7&K:V]5w~P\n7I3*n#oYU	R6')\nG%&\n0AV*D}P0$S(RW\$Y@74HI*J.\$+L'2@|2-LB?`)GKI=(4[K};Uj&0:5@4jT`\rtL#qGh<z=!#8f9Tbu#xB?Ga!r<@@P&(\nIeU\n~:0AtFJ'\$/('\r\$N*25K7GJ;!ew0\0F:UAf7Bq<ra(PQ6&!8:IBQ dJ\r&vI0!l}0\"7C>uQ-B\"H'te\r8@I,l'DILF\nz2xdF5`Qh\n	PT@-rX0,+V49Sb\nRI@ %\nh@%8	VCSAD&zq~>T+AXZ6Gn)H]R6\r7bHbE:H\n	Lpi`%~Epk:9lkY 0_rKle\"#crn9>AI!ai3\\t@<S'erJ 8HZ\KIJNPe.BA2#yFWm>Hv	Um)\"dVY#w6PnfJ?66r9#@^`jW%^LTL'~	\ruK^R0G	IO_m-GB4\"<FHx~'W+g!LKji\rLZv#\rz.'5\\>N&ONckxt]_{me(K\"yz`'>&(":1BF<3*yqA7dB9y s#W@]Mk\$}&{_wnTt\O'Wr(:^w%O([>FT(viO\$22RN\08l%F-\"ZQ\0P<\\p5DN\nC\\ZlY.\"Y0b/h@		hMBUp80%VG@D:*|!NB\$k`(2$\"%c8$nl\np\$6\\DBv#m8	mL8H+\"Q0XX\$(RB\\\n2_["b\0oNl.5Q6&n*6REJfu\"h\r'*BbO!`@F\0?##V;\"\$;Q&8Np@\r\0l`Pm@";break;case"nl":$f="W2N)\nfaO7M5FSn2X!0a<MSl2tI&#yNb)5!Qq;1Q9 &pQM`(fY;`n,	n7s4'S,:*R	t)<_u52vt+CNG#U7r({S	<\nhkoj9n4P7%(P2\r@m`pn@<m5O8x(:7At2#R7+x!	.CW+9je:++FS'+44pJClBXbrLT\rV0b;#`juq1uI!3%\"P#i(@]s#&{Z9BP8OT	KeSP P2\$<6G22.E5\"J	* Cj*`#\$04k	47\".3(+\r&YpA=	OCHpaO+n8<|#Je3SL,S:;<**|Gt2c20uJFpR{1&GBj\r(ds%%>kNlV{L*\$\r9	~*~xZ0T s!!Yt.9PEI!E0`cJeGPC#.@\$#\"!#aSAUw@)cax(hh@^E(A\"d2*Q6\$T4m+`V\$g) OX.E(qdv-Q5&,8D+6#mh(Lz@Rg\rSJ 	s(2^Mp\0-i=.Nc_=nFx)4kazITI@Leb/\01@a:HbTZ<`z!52C\0\nzF\0U\n @E0\"z@a@`3`txF7\"snP0K4f4Rb(i0(I*:bM7!2f6,I:*E9g1'1cVcq;IE/2Q\$\\yNa7QqRiC(wR4<XCVHB)0\"&9zz]i'f0+8`*fBawBH0\$\"9\r\nV\$\$@WgCTHc \0\\sJ)#b7b_cf#p9DIgZ|9NX:cs\")KUKz!<Z	V\$}\03E }5~;-?WX\n'l`K/BRT2FrWxIUS*e4#wZ\rKU	_vd6#l0SZ!*ht<:niB'SaW ,5`	sZlA?\rvRsJ\nd_&vqv^}_VxVWXkuFt5Hpm#8!L`:DzRY4z>k?~eo%Y C8X[5`dTl6\"HW|n4#fJ9GDnPb:[B\r# Ys/L[l2Sip)o]L8Tnn\nR9P\n0]D;,ADg\niR=LAp\rWP`Z\nD!bf/cC!e#G5\r\r\$~!CTYb\nmQ>UR*p_ R jT=$krz&B1C.sg hv@\npn\$R&\r& -J\0 #4(\">\$/`gb%l<> @QDbzC6X;bj	#x(\$Yf0.B2PRVB%#6HQ(f*c838Q0'KCS\",]v\"R`k`&\r, 2t#E(@k'E*QE\r.%.bV/2l(dl,r*1:\"(r.C|%F0@	t\n`";break;case"no":$f="E9Qk5NC\33AADAa\\6x%kl9B))#IZiq,@\nFC17AGCyo9Ln\$6B%#)nh&K6nWmj4`e>\rKM7'\\^^Mamv	jL;i`N-1B9{q;G+DyG#NQB<C#0<2.[z?69k` jx<:kC0c>.A\0@24\r`@E3t1p9a|z9qJ(|63-f7\$b\n\n:<#XRT3T@.#\n7-8\0\0HKP>%\nUh/\rVB2*S\0)5bn0~ P#BC\$2\rz\$\"`Z5:4.#C\n5C+\"	d0D+[\0\$LH\0V=A >*r/*#Dz0\r&2	\0N)n8'&\"@~p\$e3p#+O	1\6PA^G5B@R0%C+GC(P9)H:B:H4^c{J1bI2X.\r|:HD}p%;9NILP\\pZ0n`*y	nTj_@\n bCHwJe`lM&fxo/@7019Y\$  :lFi3p4Q4TDb\"nCfo\$:Dv(g\\9s)E'H!	@Oi'4&MpKYD?\"\\lOA}wA<PcwM3&?\"SFt40rb.7) )0dfPVS12HR~C	kEb>d|HI\"!FE1A3f2iik} /v`nHEO	hV	0gPs5\"8G\"\$i&`%`gJS3U)e!`FpL\n@\rP*VQcE	5[)?j<HYhZ|L8 :\$hfJPU#bUYL5&a$1>'!\12lS9JJIi	wk;%<gjyzATkPD=KQJ1>1(1ad~[Ma		-,1 )k\"5AI>UfeAa Rb#4) R-\r&xPKz\02\0%4A9<%-b%Q!h.JimbTvC"yr4ev	HK4s`wSn2:G[\\U-@P#`L\0W\$0001f>+j_3,@RXI818PlS\"Z/&lZ\n5*h2P`0"jn@]4uOlu+%{tVJ-qW=]*SDH)@P-V\\kY44t-vOlc\\O{'WrNV_+4\0~bP/3\nd|J\$0&he,p\$!7Kds\"SpPTBOhd#V&V)n4]@\rt]@T(<0.B.S2nno6ph#L<?rG +0Z;k/#PV8b\0004Plm@z;%#m\n\n^gC0V(jPf	e\\T	V O`@P\0`\"ycJ4Nf\nr1>cx\"b)p8J/\"H8q.K:j(m\$ni.Kf#\\oD\n#'&'5Nr)2rf2&!l7F#2 \rlT_\$e2B\nfJ!uRx]@(#%\n0\0i }'%!Q;break;case"pl":$f="C=D)eb)e7BQp 9\r&bb\$Gs(M0i0!a`b!)%9Y 4I0cA8X1b2i<\n!Gj\r\"'CD78k@r2FF6.4 i'\nv;=SF7&A<pk'z\n*\0Q+5&(yI()h9<	3\$#R7\n#xcK5\n5DbD7`#P\r#c\0xC@t1xOx^*)D-[CBCM;@C\"40H\$\0005M{_V}\$cx\0*#7B#p[.\rn9)A6+UHP:-:( L`PHz6(oH0Rz6a\n1`:R:L 8oIcorH>nr{(Tn;=]E\0N]'uZ9tf#CL6*.Ao>5P6@\"[j{S!-Y@\\(\r9\">[email protected]:jA;S_CqO	W6kv\$1/P5KG%h~CDa',E\ni-#\nxoGuI[	t2*gM)6p\r4e	apD&H\\(m2RB%%3\\v,%bL4&/Sz;F7LnOiH dFT E	aA AVZW@ oE(+5!\0hhIh3a&IjA%f &\$Ikax/Q\$=6s6Ux(7\"^LIvb#S.]h'.\\k@)A'bgQJ(4rt,	b@b	N	ik9DLL54l,R07pUJC:bU0*X3y) %B;G*6\rgvNI/-La2NP&(MVdVF E":OySf2N 1%pvJs+C<K#WZLd^JH#\$wR Rr<D<6`HK@oX3R\$|lSn:-7	+9hnw#,	st:f(2Sfd*(Q*3@5Bgyej\rJ|\03PyiJFBoAC\n@oZ&1\n`2Q^t5i]ZC"S#h7!C#7MX0@Q6P\\xb(D24\r3!HL#[:|PL_,lT|g` @BH#uL{T?pu\"j6}@Gc\$5]_ewz\\2pg{=^?;2vxvO;%z>779y#duF\"F$#K8-\nT\$zdl*CKbl'S8\rH)#QI_ w&0C\"j%&8C~|n%jsaFf(0NDp[PaJ\$&6\0i4h\\\"KV]b\"@W4+A`0no@ZYZ\"\nV,D,,q;pk17 HD.JM1gE#&{1[0Yq.BlvFdCal(+4	t\$jf-dGb%m4qYE\$-R!K\\@Pm(m#	p9PaOJ_).U#Q%q.\\('a+T,R%,p-rz&HZcc,Ie <K).^n\$v@`q]0-)M3sT\rh&*6HETD)8_9ml' \"=RA@6q(\$*4.9)dgB<\n!Z3c;AOf\0#j!BqB= #/#6*\"Xi<EC2!8-qOF#(&R`>i\$)),L1,FtQ#B\$mIi\nZl%nGtE@MN~\r\$Bb0B;\$u`4b3>jCM0E9d5*\nOFd%3p;Ur&0zsQ` L0%SXWXEO_W)-Y-bpEZa){R(In 5v|G\npP6_\"'OYT K\\(1 -&0b+\"3Q\n-{XayI4\\Gd#X\0>e6\"\rW^>l!`q|;";break;case"pt":$f="T2D:OF(J.0Q97j9c)@e7&2f4SI.&6I2dsX@%9jT 7E!85\rQz4Fi7MZ	&))X\n\$py\"&aV#'2HfK\$\\[\rOZ&M[7ES<n5L@% L4\r\nh:T8p4X.p\nn' P2\r:\"m< c<pP@;#\rIC930z\rar.8^C ^*'{B-x0,NLJr]2+U<9T,;#\"<P\r(\0 MaX!#J=erLCh09\"0%J17\n	6`>|\rm(3xbi6j{\r3157Z&LRUlGIqEWRBctS#k0\$[PD!L\"#2N9g{e%(q:iocK4m*Y09N.S&;'gcc5ak%.<^+n42SHy=x8-;hrGCs2CLKR2twM p/)D<>xep&0Rphb3]>,BMN.K~DRlM@5?\rz8@R6o\0005tGH;2[ 'vHW%\$	O4[T&i\nC42}/R7hngP1ac.\n~!&H@Ia|@PH- PTI'+2<I l'07' [#;?I\009CzA%a EpKI<(],y9WlaL)g6"B]\n\n'I JE 0R?!.%uNI&7u7N(\n\"R7X3xS\n,\"Rx @ u!t 3&?M)jjEM{7'e\n5@Fa iSd(L9('BD!P\"L(LtsrX0X<d LX0D(4VAhGiZ(7FG43d=nQnsJ@\n\nrEs`T)i}`\"1F Fb3U@\"0^+1W7nLzPF81\n.^[T~\\@dj3MDS6FH=O\$o<3r\\1tALRHsD+-\$7\n!@>u)#%%[email protected]6=U++jBR{|N<OlfpM|\$9rR60{\rG)\0r)gd-<B10On'*1rbqG<q7A<NBbf!|MzGtu`/3o*cxwtG1( L\$^>5SiIpqD6c>m0:E2_GVvsBH^ZAEecyQ%w;%3/}Xvqclp.\rMq/rv\$n5,+[nnJCHcdb6e\r/bkTnY\"<#-[j-\00:TNcUN Z\0WU/j\n,[\0.#0*	m8 +!Zd>(J( :\$pFTp\r-)cyQL;FZ\nBk\$oON}br:Q7'%b\0\r:q0\"p\nR]q}0d=\rXB|@rg fRr5H0BoJcrVc+\n!D|}`3qTN*k\r\np\$:#<I	rFk	th\rq '\0PdLat]#bW26E?rV!'F1*Ebk'\0006O0\\nn~(|v4*\rI2U`b`R/3*0c\n\"oE'@J#&2I6i+<401+ 6*frM5\$K  ";break;case"pt-br":$f="V7m(1	E0'0R 86G%iXj2LSIpNLv>%9\$\\ 7FZ)r95\rQz4Fi7M&)A"*RNXHF[MS!\r4gfo7TY|%7RA\\iAfDIA\$TfM8jBVB92`#\"\nKnv\0I\rBj0p X`Ax^;t7ar38I(7z,c\r@P<nA\r4@%\"7LSTMJpM\$\nxClB\nt45A7m#j=0CkD:`e9Zht(0I\r	C6kn:7*W\nw(%2ji*&L[> [3F\"B6!}fWl4#lpB(\\Hlh\"fYCA3/DX0&;/*Y+2LmSX\r\0,7)#n_)x/|2S$HS\$\"\\7q[4R/LwMh,\rAPR)MM\$IrVpPV})m.*g~i9&[	P@\nbTP'o`M@Ch>wIp\$Kc#&t43#L:n!^&\0TYqdbPNUrH\rP6[?TC0id,d\0+Q=(R{	$@F8!4D|/qS\nA=C4I C(v!f(E\$\"DA@rp!\$VJ4\"%phf=c_$\$hP	3s3 #FT6|s&		MM'd'#d2KK\0F\n|+25\"N\$H\00P*[, E	zXJA`KE.(G*u"G"jDtrSm&~z]j5vQXYr'h+<G\n:\c&N*\\C8fa:1f40\njqYi	euMH_	ef'CFY#'#0_j\0m=jL1|CuRT\0\nN0IqM1TT\n!@1#b\3JyCzVzU*%=Z12F>^(5%F8bbLZRNX8 Q|PC!Z!ar/expQlnbG\n\n/ay0DV6 +0)xecIsX08-/_W0a>600}bO`\r'n)3`fAHB]4b8}v,f4f@YZ;o8j<D+n2fUFoh#\0j!fkTA\0g]0{/,^x|)T3K2!g.8?BmKa6~/\0\0,n%cC\"\$\$.NYXhd%D>0>PR?#hoQ\n+\n?hk2Id#6]&%/OA\rC\n\r3o8>Zo	:@(DX#8e-IPPQa&n,.\"vZ*:zJ0\"hfoF@Fd&LnX&bBB'd1QbXIbzL3er\$iEQK*z_b7#0o<2ra#\$u&rV@B,\rB9qL2`Z_s>\rF`\nq2L-~n	-'ok-%	#<\$D\$\\%#0,\0\nB)@\"g@[/rDJ\$4=,CnDatS\"n6>qIP<$ojR"7h!g71LZk7Dz^;?*,`1\r`{B~"8a`lG`;ct3/820EBbIS&@V*;\$\$@;break;case"ro":$f="S:VBl9LBQp	@p:\$\"fLL#>eL1p(/iL-	Nde9%	nh|FC17AFsyo9B&7F2`uZ:LFSazE2`xHx(n9gIf;, :nN,;A2-K!{:<nd& g-0`PP7\rcp)j6IrBpK\nP0L#P+>:L8&j(Li@2\r1ChKlS\$0!\0r\r`@%C;ArL3\r:\r.!6<D <o-UV\r5s\rbANJ+r3h\r!-hh(k4Q \"`h(2njt[bF%1,;&bL;V@)	{lL&9 V415!iSV4-:p7MHC:\"i@\")ZpZ\n*rz)]EiaB\$?qB8h6F\0Sb\r\nz\$*\r<'a(aJm}^5S^H3~f;npRM84yH	zD/P}R@M		 !	L3SEI< 3rN'SP,J>nAUCZ+Hhf2 A,S-dr(eg{qhCwK),\$od"Kn'r;iL"E88\\SC\nqG#jjW}F#Lh'BOBS\nA;Gy	F\\\$QJ9m\$`fgr4m"VH%Ry<\$V|!gsyt,\r50Thy)dHpd!}BRK#\\BA']\nlcvK0T\nr>USF&2Ld3-]vje]R\0Sn*E't[>IN)8.0H}\rjNVxAYuKmx ta\0h~h>|1V8t0@?D/9pGeVk\"S[mQ\\raj:D2VlWt:\\+`R? 1JpWm\$R\"A2f`KX3SRvs_IJ!!P*StpL0/eQh8cXkUgkPQg)"3[W.;wGj-:W'6}quwwFT WD"`q*eoG4&|G:M'9qx\"3OaEueY/nA[6*0N)b\n3W+G22&:yy|nS'.\\8y`D&uS2kH({CuB<\r*}\\*p5Y\0Ly\0G*: V,.DU\rND@50D5L(lh:&cHopt,H\nCP|*>v/,cc\\\rc;'D[i	px.eFkL[3VEhLej%~,j\rxLlGL OPLoT)F F[#BB:@aDCob~S\$:c:YFaQo:-Yq:-^TQ\r`\$1WP9%D\"{Jw<E/%\"zR@oDQ!#FBBm%B\\fnh@$n?id\nA)[): 2d'K\nr3D\\ NW\$/T?db2hFqgcX!%dE.R1m\\5\0m*W p-Fz'~fbnZ2\$Yx|b:#$gcj<#4bOo4\">[Vp !bzFbm8xG`_bDEd_cWW12, 4lS(QA40T6l2jdgm@/%_NqFRtEd.XF`@ZVp,/:% DJB:nn\$-0\"Pt\rhxQ8\\(`	\0t	@\n`";break;case"ru":$f="4Qb\rh-Z(KA{@s4\$h4mFyAg\nQBKW2)RA@pz\0]NKWRiAy-]CE#l\n@N'R)\0	Nd*;AEJK$&'AA@\nFC17c+&\"II>K,q.u9L,&NsDMe!_Z*r;i9Xd'6ky}V\nN3\0\$,:)f>e\nmz!0<=lP*i;P1WjtkS<9DzT\nkX]\$(!y&h2X4\$n)56d+RCN# $5B>rb_ESMV*\$xX@4C(C@t41MK|h5ihj)*D2\\x.#N\$,!EdnG&!6] LIcH9?7:%VN{dkK5 jt\$;voL67~*|@\"]bR&)zD|.3GNdvJRcBaOT}6#\nM{!\\W%t9YA\nb"#)+\\F,/=cwi2	W%AcC%P^4XxVZpa\"	#`#9	DV@D\r! KsX-k\rSei\r^RH0004O\nkEM1,hq5&C\\i@I3M_QTDochsy|yQ) xH#uC*#`RlP0YBt,*9%SN\"h%VOE!;\",IK#%f9K=3hs6Q3uwC\"JNQ~Y#x>LZ UUK9'(-]Sznd%ZYl-^\"Xa)m%h>x,TzN(b.m%\$\\=4E*4\nI-e+N\")f,&Z]lEL\\hH]ZsR\r\$9y:W!GID|*\ldQ0z'XYJ;/('gMlYHm("weQND\$!S,\\#zd(.@?rFTBCPHLb\$5j}5Q[11+vJY\rub}AwJK.\\cw^@7 FR9B~\rQBF\"GtR%td9K(*S\rr@\"	IZN>e\$\$gXW\0f)\"&*k3DU@LRn]{?Iy^4`*LOq5xuAo%]-b\0O%4lh8d+_AVjHg9v!:zoLER#iROd}GJ8~)L!>.[`p1=	J3;d'Bv\raYxX	d}__Z LBLJ!A@\$	>\rC:.5z)',ACp|oJFCMFc@b'wBapN0gc(LLb|\0H=k)&Dj/IzPbKn/BPf0\$e\n]nH&2mGA0ATC+elN\n 	L,QK& z\$g^1\$#&H&+\$|J\nOt0aqnO	rzq~Freh}MX\$q8K(#c(*f0/Cr.\$rdFbv@`Ql%&\"Xxv%\"C%b%n/-J\"0(2hH`vLic3F'2PKdmdJ>2A1n8N,2lJ\$%/C)`EK3H0,.BFNO[3=sB/4y@*X@yfLBP33FZo,o\$u.B\"ZMOa8ILB>%&Lw\"PCN\0R<&6i/`lJC2JFU4Sl5BEC=q5p3i3Wr0QBsY>TJ	/!4g\$FaAGR&eTR~t1HtcH7L\$oIaI}J\"%DA2l}4m3MMGN"CN>U\$*,.jS,I8-B%%bbam!P]?04?LhU0ibmN>H007!f:4L:f3A\r5Auo;6]Q\0^c]]+Oh;2]P0S9bV<|j\"!A\reBBg0nEMZKHVfP\\{3UK5c&%+u\$DQIV&I6CkBpoldNw		RPNt.!tMpaEpqbc~[oq0VHGO*A/O4!]WRti5vN!vrWtK\"ShKt+2l}Hbt241{vd\$wxNuE*sr{qLt7/tw2G{#8hVS{]a9,%N{\\Wk,#2'XUp>UVmZ\nqrl^UBl	ladXlUjt=}{c	.V-wb?ck|Cxr\\9XF8P`hvAv.'e`+f3&PL(o>l!\$qfOtH;UH4GbR8qI+-9|y>Y50'Y3;8\ru>r3S6C~MxNP"::\0>@\n`o\0\$u\nDPm\"\0003Z?OG.2\0AjGff\$}dPs.a]YHt~j:Bt-SbSZ%n046\n*TN%";break;case"sk":$f="N0P%(@n2\rl7&P\r25xdB\$r:\rFQ\0189H0cA8)DsLnbM&}0gk02pQZ@b0 _0h\rY83Nb/NbaaWwM\ro;ICv0<bXj&0zn5"jH?n-~	\rR@n0b<4\rp91	R4D#( j \"5#Dcp0000j`C=\"Ec XH2Ax^;r#\\9xD&.2&Hx%\"*2&c\"\nCn\"44'VmP5:7<2:6=e6me\rMh!t8*R7uPPbHC-C R:0V:co`_/P5*#CJ\rbkFc^\r0	1#r(b:&|:&Vl6PU=\\#.J =z\0 P1bCH^(Z\;^;R\"6\nsZGiH2e26q4OIK`9.8.|lx\rR'qCcp5/0t@CnbCeD;\"f)\nEIIh0ibQ0S:iMi7xOAfTz\ru\"HQn_ERJOJ0&%BjM8tBwIn/8nUTCZG=r!m	yt#\"<A\$X`6Y/@Xf6DQM*EU` ^zCL{/`V\"2	VM|\\\"B)0\0PCQ#=Hv<JBquD4X1L\"p-8_\"w\ruw6ytgD2n'*\$\"o# o8^XK2{dj.N&./U#@9RHXy3\rONVBU+2\0vRRQ>R\$\nO\naQn<4pIU~ (!30he\rUxt l@_`b.`)\n{*A.o%!:@3Y?\",3]L8PT@-j>XIYPet+T}%S\"+/0n9htLeP\",%(eDkg794|50-PXoHa1$\\g\$Ld\0o9#Fbb\r@\r	mL4e:v0X0}X0mvNubD\0J1Bz<S#V6#gh4a\0PFQjue&<[hU#F,I#AcPn!A]OB$\0|{tFh2\0foRT%\njmQZ!\n2+s6Y\rr	IyF]slH3+9?<qYn\0NJ\n=jM9VL\"D%Gu+(x9f]p8re{AU3\$Ptd:l~/rdPP>#x.FDl\"~o\n:B6G\02  F*Ov#eb>\n#p^(lnRE.[ohp\0Lt-G\\0Cq\$0P	n\rSt\$ pHT0H/O0_mu0PtCHPU{U*% rExEb,\"@\"C&`W.KF"(SdT*CVS<\"\"H\$~WBg\0Xm:&n9b>Zp\"#nqXo#!#6k:BR@&\r4]&/\$r<|1Tl#)1ne\$|Sj'Qt p4B-SR'p\r-f@U|F/-n\"JZDU&o#s,(M3|P0%k4m)f5XAgRvrm)|42\r:rw\$d8D!7s4n4.:A<do01T,Ne$H\$\nWF B9eJ\rV\rg?+8\n(\$T#\$% 	\"Gnp?cB&Zny3to)(#4#<\$Th\nFm^f@	\\6E\$0<\n79L%\0	O4c{!B4bp-0a\nQ=*nG&(~,\rn!2Q[T\$5c@'F''*FuVpGK"?:#\\\r\n(2~'*F5\nN'K^m%\"g5eJ1R-@F\$\$nlj_T?dAgaB	\0@	t\n`";break;case"sl":$f="S:Dib#L&%(67W@d0\r]0I\r&y'%9nn^ #!6 !F9<lI*LQZvMN\03Nb	[email protected]67Qfn_n3'Qp]/SqG(K(ay2B;4BB(0\0*5R<0d j\$'1C&hr\\J`@&3'4Ar439xD\n#xk([\$+;.28M.\r2(n\r*\0MQUU\r]TRKY2``P4\0P7# 2OfB\$0bk\r:K+\0C 5x8b7P47&*k83.h[?7&-C\"mc]HrUT=%\"E;Mu\0AN|P{N\"@P\\(K[\0@M^if)Ay\r#f#CP*!SJ'J^'bM{%5=<R3[@_)P9)|\n9<s=T1)Q6w 1,#IT'J7*2M<j*x	cz 	/	\$<l\0B|i\$QC/+\$KM-0Hm]d|Q	!=N-GO7D`@b\$dkey2J3ba:QcuF@a?1Hr@u9	`B@\0()\0d&o%72N'.f E\\7u8vA@b\\g1Q.pwRc(h3xgaL)h	7FIh5L	4X@eAF!dJ1\$IjU@CS4	V6\$#M! az)t\"\nNIO\$IxS\n-:@4IvIVH14>H\r,UE2 K0I@BD3J`GR1B0sf8!H2|QH'cA4Y(7uuG0R'Enb9~f	1fyfgb2a;tX\0#\$Rc'3P\0(-Eb2	Y\ne xripN\ntI(0TA&nY6y\rLE2LYk[/{\0l>&%:qH\\FMD>Y^O9>'<'pC	\0.T>#_%N&j*y0\\iJCu@doH+\0U9 2%u)6u7CcuR\06K{gblcga-Is4\$)nnzGx*t\r*8ydT8[cx,\"8Jb#sf/B>PGgCAH\">/k`KbND._\rS>1NFxttWnJtfLIV\0OZq:O	HL,\0^|z6chvP_F\$\nyaQk</ONF@'J(c\"%E~\rm-x9\$-0=GJm<0e`LV0L!7p!/L\0&vNhr6K>WS=`d\$ *bJ6	01\rC\$|CG\rnlL7LRlzW\\U(\0\nC\nQ\\\rov\0QZ(c%MO2fKw\0GH/\$]\$*fKrrrejPgq0$+'p8 =\"q!%p,L* Mn/#'RA\$x/cb-1P/8pg\0Bn&3P[,R\nqvU+So*T3,s,Sgf\rV'~(%(i6\nplbT08T'\r8+#m&@X/` \nOY! Vr?)&&k I:"N0	\$D\\`7>F<0\$bf6B(bBRKvC':64Fs\n1#PC\$4EIQE*2Oho@\\<	7IBt'\\n/\"\0+5\084/#\$7D\"X6@;;4%pE&i";break;case"sr":$f="44P-Ak	@6\rh/`\\33`hC\\fJe_hhQjQa1CV9%9P	u6ccU/APb2a$_TI0.\"u-AcYXZ\$Q4Yiqc9m:M2\rMS9q!\r<bx>DqM|];RTR=q0!/kV\nS)3<2E2	p2C<12?sT\$R&`\n|%8	!?/,LS L l% 8Cxcg;#p3;.>8Hc X(0z\raH\\0|i7JC ^-0jh,!\\(\0T-w\rF#>(aa,\">S\$_HH'ixZDd@N#ZMyR<C&k+u\\9s',wlC;*	sm(H&fHYrRsJ]hX)\"b	*I^n+1rqQWry|J	J%J~|z{'gaMB 2R@Awrd2y!\\SVQb6\r4c&N(\$r7&0lM/4o87@`uO00033`@xgBA@g(HEFpu:>5lrB\nB`6E`\r!8)zS*T#JHmxk_/eDujMJJL)\0nTTuVCr0Y+H\0\$W\$6Ut I5<%N6`]!!N\"XJi(y(j\r>`l\r1|3KEq\"%\"N\$Ap\0igP(!,6#yq\nH\n#^&!HAyYD,fmLcCOZR20ha3(v)Pcf**d) 04.l[*D\$B;ZJ;\$ZT*>QTzFJ	Jyh(A\$X#\$J<i# &p1JkR9PHP	T[?f-1#e;R[))%L<HUY@@f@*Xa\r$4oe#CL]dn \n@\"A\0(dK\$CUO\0R@ &\\sZ\"Nb	tDZe>+[ZW73X%\"68'2\$25$h:#5#RZX	 P)sHjiwtEuE?p<>(U#\$2\\(]SR`&Iw#zJSJo<&cVPxiLe9urnC.vHe5c AxI\$Lmp,5\$&mwawF%*O7h{+A@Nv)hZs9zXMaP*:03psO)@.a8y'P@ny%\"2(	UR}%Bf7kk4/n@ FOA]4~&-\".IOP >O/Yp^+aB	Q@F@bJ.,)Nkj.dFOi)\rHo~ 0\nv!.%rk~,C,$?/[0O*0BmK0*d?.0\"oPAqx?Mpbdw:*#7k:M*K<ON@F@8ll.@%	\$QS/z4pfd-)lN2g\rt&G%*vC2pm&''.5}({l">P\$e0B2q1+0R~6&,R\$R)o04<,C%,n(R!02^Q\"D:.,B\"qJR:*!61 FZpFrDl`Z-[7B0/3cNgfxm-pHq1CIF64i3(8)1q2"sB&.5DGL:{LVcXyG5\$:J>T1-3cCIRJg(fJi/o[5PwXMl\\K&@I.iPC2"NAMKC\$@Hwtu!%3BfH\\&u-u[VU^U)\$UR2>1-JBDnAO`\"<_[0i3uB./0pu3.CL/`5r`\rV~T*n@@ZBbZa-=g_/fN]]m)5N\0\r.)M=_!/>&:]61$dv0_N6rF2\"p{41vnH\rq	d+qew;pwO)njS2\$B\0nEm]CI)8D?ytOumhoj=)A:/B&v.&E\r464m~^cPSj'";break;case"sv":$f="C!(J.!#ILADd06MQ!3:3ykB BS\nhFLq3\rF7ATSI:a6&2&')H7#qD).hD16o0\"?M\ngguh<#mr7B'[m0*JL[4kMAn's5mE8Ye*	8\0000\nX.h6(4((9v*]\n\$9p@%#C3t\$Q*(8^9),&!`\0P4jXAC\\\"p\0lAM#\0UF6&C<)\r rt:)o3&2<\$x2\r3K	CVB2((\"d(O=59p\"`Z50X;BPiLh1A@RMABp0,$94Qk X3:<:B;\nddN8#ZF3Gx['c8<-V(0\rx\r\nh&AL]d322\$2ac<[H9l0#ssS\\\"7#A-]t=Kl*\\%\r]E`J]e|)M1!8l(t/YS)6 2D`0 }%U& :`\r&` BBJI8;rJwaf``>kH*I3~\$ehZB Np)4^9Q8H,<T\$R\n-0ZB\$08H\n\0L\nFD`PSIIyH8ID5\r&\nOv@b'FRfzs-5IdyRfa*E\nO\$04\r\0%&9N*x^'e9p^PptOme0\n}A[R))AUX`s\r\$\0-F/v@X%bF(	0b^ %!*Y7Fl1rtITB  \n@(@(R	!8#BxR\nP pjT|0`o]Tpt9s{h:DE^HF\>w' UH&M~oXFB\n@3BP[RDE7@G!eHmT&rRZUR\$Gk.vp	p<xM\r.	1&EUIcr4\\TATIe\$nwEd!*\09QB\n#tL&cBs(;?}_fOmHDwi\$iH1M1]d#nOj9~Fnj{OnQ5n)^35v\n{ga,n)04	^{2\$qW\SySV~hPE\nF^{5iH^~a6JEB9V'Qtq4\SOm\rhUI\\d\$O]b\\LW1\r\0x0Rmq:EEDaUlc<"@\r'OMB\nYOE=)&s|S$i^{'r,)j6)U!u5}HvGNai,mah.eL(M\$HP/0B",mFPH,\ndZ[\rEr\"_4\$v#20\$b}eZc.:Y PAV,p;-lX02e\n<Gq @#4\"C"|P"2Cn[{mBr3_n2bj@S	#SnnxQZR11AjuO``*)"g~0\$5)*cP\0\n\r\n&x0NUm"i\"}x#N(:R\\rZ Dh@=0j'Bj/-pE@x1t2r*-	\$*(/\"r=,\n>>b|ib%2~0c+t:_*|0k+F\"h4+\*er1'U\0";break;case"ta":$f=" iF\\Hd_BQp 9\\UW<\@1	|@(:\r.WAR&`DJ$:TX`*rj1k,z@%9|UdjC4~L:E5e&.uW["+@\0,-[&a;D&<!\r?8\nRlzR.n8N\"AN*q`&B%0dBB(BnKB4r\$)20\n*\0CxO~)#nzZ*S-\\B@92/\n)IJ6l\",mEM%YVAE"U/N l3 cx##r@6K4@;/j<C X0z\ra\\tMC8^2xL\0|63MCk!"4\"u6)M[5KqGU\\\rQjSM68b,27[IJ2FZNeKV)m1\".rg\0Tz#R	Nf#pdrBg1)3gOF*|k(DEoEGR'Q,Pwn6{	\0c!\"RK7du^s-Aoi%7\n5_NWk.GPV-@#U6MCo3]ph[nax|K	T(	&ig?]I\"ShpDgDU4hU@9<F\0&Q>VPh[I\nt=	%C=q\\:OM^UXE!&;G-Er]\"F #PC,@) vv<A3`qM6@\rV0qAG0S@e44-^\"EQnR`1%x*e\$S:lENXd,PV>Y%M\0[3w\0%\"\"sAsS =HdH \n_\n'0jf4@j|w`kc*J +C[Y{ZmD(\n*V5\r/+OA2@CC5ZF8E\0\0c4|mhLKiptd2c\0\n\n (Kps>LfwSOYZ7|/'3J4zoU=L-Lb-.i_xPuRx!0A0]:f62!3`^j#P-2r-l4WmyMOD_x5~ABcf*Zi[]uS'RiI'qdyz\rv4k5B15rK=vT\0\$F<v	8<6z&PC.;<8m76&RP8Kt#LKi;`@uqYg:o	v P*^ E	y~f|r5(*U,Np/^2y[viBy;H4('6D__tyTHDv o/.Xm/\\nhDNx\n=JXD%\\%0\\,5n\\snh t#@Jhx)d8x#\0lDA\0^n`GbNgb\n`~*8$BpnkhG.LR l(g\":f*.b`B1n*BY\r\nQ	IMNjVEhx`q\nJr+hRB\$>R,\$`./PD)-	\"h 	\0@r%LZ\0 {\"&qCz#f/apF1.^M^GFpD%rlrm.)`\\,FBS i3q()j)lHW(Q\" \$r0\rgRl>;2_+g,\r,#,*\$\$p,FP5M`r4](28Mr'5]8NB(S()MY*\r%R6O)m%l&4`ONv.\rq97f4*qb6QTseFo<&Q~-D06bZ\0=Pp-Je\0ORI9m~,CFI NQ}IBq543TFi/\rMtrSGMVOJM*h =p7!NunsM 5@A#RsUV,gQ[-4YN	Xc*\r4u\0+R	F\\vDrWUmZ2uoO+*1OJ2^X\\lmOPN_u_YYrPz+TBs`1R\",-Ra-JYMGv7drmL]^0)\"q=\nuCHk=%2&2nUm6=VAKUVbtzLTIqq/ZIfdniZ,adI	g|@H#~h6rP/GqgssQq1cLV5g4VSO5 dWj*'Faw1nuH/.6x1zt@qiv{V-lu	`dx1c~!V)K+LXEOtb< b~r-nsgxv8|ON(umCr7}Xine:w\nY88e4hHQ;tr'/mhtJ-|\"iVe;vaNL=hAfXe*-tXDw|2&ykWY|Ci'r)%,m;oTY6Qa;+\r42e0C~/ZxWqaR\"'Fj>mxU;qO>yWZ\\ zIekz\+MvE}0IX'uO1,B!So5ZE/E&B&-Eg8k<Zogi\rV`Zu <\nZ	^n~I\",fW1n91:ktNwC{ {3ch-~P<S*)F5VkM,J\"&}G#8y\\3q\"?m;F2[[ZCT>6K=^h CGzR:PLfkZZUmkVu@CZ5uu	Q1y/Q63O,A	Q?AzI%zQZS.\0^cjX\0cd'm8x @rG8*0[LUyqOj'\\>wI@Ik/P>}JP\\P`\r-cn=wu}LD\0t	@\n`";break;case"th":$f="! M@0tD\0\nX:&\0*80	E0/\0ZB(^\0A2\0&bKGn	I?J\\)b)\\\"s\0CJ_6\\+eV6rJ5k]%99fv2 #!65\(zyW e\0MLrS{q\0\\Iq	nR7;Z=jY7D	 7Lxr/O\0@-pBP,QpXD1jCb2;\$3\$\r6J+6Q1P#pP.07\ro(rZb8+q10/\nzL)5'' Si'qyJ{J7(\\1m<W;CN* l7 >xp13\rAC(C@t6-9N#8^2xL@|6|3N#l4!,,Xy\"mJ!ri\n4`\\;./iL2<R[O=#\$Vr=p+#i9P@ 	Y,FP+R+4v%\".	Y-sm<Y6\n\"^6..B1Gq\\i*\\.3:D>%9V%QZ\0Q+5z:{qcZB7F6?a\r\\9*QH \naD&5PR+WYjQ%0hb\0T.cz{HQC0?%l33byQZ8F0\"j@sm\rx@m2\niHHAH\$x;e 5*Z8D4 rG6f\rhh@:t`6aR  `P((`Z<WJK<,pm rbh?p9LEx8C\"Gzu`,\rSF@>}+26JVX\\6\"Kb.%),pST@/xvQ`&\$?Xxs]6dy`;Fp.a,-i	!8&Wu}!,\rxfLj8@T.[2@CcG)]ahLuTS=6.T5:^K#L-;.s'o\0\0(1\0!HOu%%QU*>GAmo^>Z,cGo6&@	mCC:W'nB\  aL)fIX[C`cB.t=0)Rn-,Wf\nSsNS;:ICY4#`A^5m5db4c2C'hEB6yU*\0!Qh.d`u|cZ}\0Sbn` u
46'(	;;&j8.!E2 \n@\"@W\"y=Z^sN\n~]YSFBkA+.BkXCJCuaKw09G[aB<+2Kj*YrsWk2Zw$^KTI\r\n#\$'>2.gVVymCgwL!^K3:R~l,Ko>M-\"L'cWsPp	'~me*|B~oO>iTDF<'~vo0;M1h\$^(nEq\nn\nfK 	\0@r%Z \nHj\"1I\0^3Wbvi	\$&pwx;m~)rL-PZe&+O(U	E\0	@N\0Ch+e&#2npK 	0D5|pplF\nE&*3x 9vp~G#-\\6b\09^!hhf,9BBk\nZ|)\rH\$B~-d;$2b<hycez&rQ\"\$P/(2'r/1F vd(oh+fj{R0PQ/r\$|E1\0.(8zSBF)H|oJI*+\\j,K\$e*\r+/6M`7S\0hT99	C2s\\93Gy'i0/h?\"_f Id.DUHIN;@:T05B\$on&Bf\$;Hs,sLDG8{'fB<{H\"3IFPTEso^ooly=	@L4jt\"4iG&o4xi*h\$DhSPWA;?NEu\0;LlTR.4x \$3<\"4\$M::SwUQ[RRhSVERk5U<\$e#h+Xr9C[5rR`]'uI7Um]]5PVW<9tSC7)XU@@C2UVv>\0<\$vE5cU%9	4`ssAumg,agu}a-2gEhp*URVah3a8j1DGYW5T9	R3<B	%Sm3	V6m	ro=3nnzEk>oW2HB _ 6fmG8r[1G^39I\n`m@\r rm1S8#R\nZq=?5\\;bD5&)5f@	(R 9gyEn4UNS9XrVn2b+\0\rxI{'g-,C\"ta\nh	dDl}sLg!*;x?6w^6}_=`n<Xh(P3!]Dvv?Ks75QI({135|qIhKn|f\n\rONRB'=Rg#N,lOC1r3p5F/=1\"J\ry&+kUvgB\0	\0t	@\n`";break;case"tr":$f="E6M	i=BQp 9 3`'y\\nb,P! 2H<NXbn)':GX@\nFC17ASv*|%4F`(a1\r2Q%O3KfSdkXjya5lFix\Fa63]7F	AE= 4\\KK:78)NgI,]gn|c7+%1>#(.8 *#x\n9h0.4\r8FC`@\"2Ax^;pnHL~9xDJC2J6K 2`P0	@jJA+s'I\rlba(0CUU%*/h'|.uN)8#8#Z6Oc P#(=^.-H0Rlc8o(P;w<<\nP$OO\$VuOTdRTBR\"\"Iz6YOY\"@Tg>Sr\$[t<=rB3NeTRObB::fI?,\r|0ObUr. \0\rUX5I=P&S=p052fv5uH&IVK\\%y3m*P|@,keQjrfB\rbbS%GK:*#bGw02P\\l>Z	c)%%RUJ\$p&-&p)L&qA+ \r:4&`d!&rhCk36r`GzE!7,\\S`4C!2mprI\rBP	@(\0z)82 qXGP*\H	9cG\"\$Q6\$:`p\\9fH7M8\0 a65M08GZzwL0Fr\r,2agvc^Ag3Yd2BTr\r<p<<\$mFDWn<YwRy/`(ri nsZDSK#p9MPR^F%qs\"L>B >=5#\n.Bv-m)07e8+P*YrHyG@@*dnnu0\"vC58q5\ncWB9(N	(,[PA`pb OMmg6G"-CihK(k/j \"GR\"6ra39\\,U;p\$+U48A5p rnQY09KCumLW*\r8\"r\niJ'+k\n(+\r	g\"vI;6Aa %M9!t/^U0A}^]A:.]$+0}dw>rQO3wpcY\\{RRNJr(:g3I&oK>E{;Py#&Ca+5YE?C4 .Y(\r@n2p^lf~Uv0~SRYK1g=R md+`iF^S/5wTHJtx@JjpfuX:0f^IZGd;(P[\0D%tHp\r*ntPnB-E!b&Jm\\aOP/@^+b/hFp	$VED(i:jD	\$	g?=	\$>b0dt.F\\eRR\rbQ- x\"Qk\rp0Q1/H&U[FN#p\"(@aYAQW\0[\"O\"D[C\"WQ=sO@b\nmlX6MoE(1gQn;:>mo02	jl}{D@O22k2crR,F2\$O,?*UMU%Vn>o@\$#.}c8 c`%\0re/\0Z\$\na')+\$(-j.ln&\n\"Rh&ql)e0cfUG<}\"|+\\"/\n+V91on0GVkW,@%2	217j^^e6_` k\"A!m(.P7Q	2\$\n6O:So f8|lW55',#@.3&10(s7V?\0qsbreak;case"uk":$f="4h-`BQp 9	--}[ZH`RdbbhdG\rMs6@Se+E6JJsh\$g\$f>C4jSdR\rh\rVG!TIZLi%QvUXhZkM)455CBhT6\\hvclVYjpNUf@;If\r:bibj i%ln{y$CCI#D\r5X?jp`Dbd*5\"=L\r2\\Jhq\\V^..P2\rHK9^yJ:D%rcd-6X@4C(C@t4%\rD0K8}h['B/i\r6\nT#eXtWr4k\0bK@JRD`J2Tk^F%_#hH(;K#D>hwf8l70j0j^,LE\n4R5hjsL#lD_h`Z2G2h~-4\$I\0J.8!z&&kA#Nls9mS!8'~Oo.BB )FN^+(i%^#qo\0h=*6'W!<D\r! K0s,;Q%i\rSrP&L@8N~diA~vrm'\\aV6IP9BhIyTzSs)XW. ;CB3(|]`\\^de7qF(p\nAP=@XZt+9+-d\$JLfiUFAzRyGiE\${)-E .YE\0Q|&r\n\n\rBpEXV\+xXSbu$3!,Dq.].:T"5BG\nA)HGLK,V/JY]<\r:\$cAVjvUc,at0Qk\rLB)`|A\$g7pxO)>JL|q|7RI@RTYM&K<KNx2&cX|9E*lT][zbH9:\nTs9b^h| (^1pSafqT!UJ(k[\n1-#cRmTT\r_]RP(Cos!\\LH\$^w\"K:T4}6fI>.P01^R]'	]E-Tm<4C'rA\r:WM<!-bp(T!7qAN9(6U-#L_O:v.;,S(<5}PtL~P;h\"qb^:l/e;t&d:%\n7ZxX{wP.oWp>d5r%`R2r'<4PJ/9Fee7r@IZ)}r|I5!\$&\nM]%BZzb=}.6^rd4QfEb\nw,cAH7\r~vD.g-*s\ry7\027}sQ|;@\ranm\n(Outl2&|RscKIhvg:8\$L^&-\\>d*4Z$z	5\$\n 	|E,GH\$*w8^FZEaEqs\r,A6w)\"N0\nH_\"pjcJkOOgeAq,w~4`'Z1l#p\$_koQ>Vf0sl:6067\r|mw\r"b0]QqX>mvFJ(QD,1VcGX^\0'4j\\KNF*^@D.8^&(X#B,b#\n/bo(DRfg4DD*Q*nT\"%*\rNf2lF<:D,e#CL&['+3,Po2*)e2{Bd(@Qt)r.m,`IE:``tl3|sOms7/8,4N+'2r1\r.hUq|cd843A3i,*S4?Sa=k=I;E82.23't;C4'QyE*CC3Ed08Gp,)+S/T)8~bHIH~Cp`q0thn72rKlH+>n#EQF$^(F{P5FL>S4ORF})RSGkh\n|\nKS=DErSA1VJ;~5kD*d>~+ha'{2c?=E\\!T\0V=UuXST&{&y5rUV_	`f|V\\$_0gETE\n]OVQd-WU3T6YUOFM,U{`eU/	bdvF=WK6vPi*tCRT6.?_yT!J>1_1\$\0G>\0[Gt\")ooS{	opvo8pm.pgK]Nr11op\$<vS>qF1!BKv^uUB@ pl;lQJua6-bjZQ\nqIs`Tu9,(_4P97MCK}5Qqj|.\nv\r;:AdO#t%(rD ED\"!9,e`-.yOxi3.nR"<%e*88,DXSZW|5{i]I(c>p\0hoTbyaP_xR-r\r~hAL\$ \\&*-/1&n\n`X%.P+sLixP{D4\$j\$qT.sMRH#X8<1+N,&/N#:-#\n^ReLH";break;case"vi":$f="Bp& *.0Q,Z)v@Tf\njp*`Y<#\$b\$L2@%943\rF9N1QE3h[J;o(UbdaRiD0\0A)X@q:g!C_#y6:K;}FS06\\vN5n5l	;# \\	Z:\nzT\"Pi>2AQtV\0PP6 #p k=cxc|(9c #\0xC(C@t2,?#8^2|^)2oc,6F;r\$V( aHkxed_3+#(#aH!t7%&L4h'dH`=#nUVnv'Jv7]JG+5%n]7Q7,tWZi\$TH;FR!	\n(7(Sd46)8@)\"`<UPYdH!b&iXr\\WCx5EMJ<1TY\n:PLH*?!!s7KU cG8]=~H/A:\nf9\0a\00"j23PAhxVp@x\$:RHS|44vtnN\\Q4xrJpn2\"QSIwLST]\"F~7C\"HN<'P;rQ*ED>QL	pP\rA@tM'e 'mbEw,J5	!D,."|(_FnKSwO)Q0xJA0P(b>}>\$_@hH\"ieQRt4S(p>6UC2A+HoG]94Aj8 --TAn\0	3DxKpI)!R?`toQ&;\$f19k`>&0 ;s~oN!x0gO"5mc]2R4++34HLGSbAp .z+%\"D8uW*e_ 5O&%@9Qs}[(\nLMDB/d^xS\n,s\"-WeGk:'nNuJ,V\n#]K\UxOmJ\0s%=D8r]EV5MqH\\e(NbjrA%MNaYa#t\$|\\]@EsTyd[s\\\$=D1,g-&|&tW^Zxrw:qg\n)(K0%itHktZK+\0F2.kCY\$9]OH\\~\\7N7{t-N7\n ()& d![dcn[o`A\nP 0\"K})Y!\rqiZqk\0^rL2IfWC.;;5&4A8YT3^|jIw 5\"b*Vi#!C}<ch]n\$PL7RaI\\e|bS;\nxNxS[0(e]2#n0bXtMOjK|,Pkng%*\"[2~#Vb[?H T.)vat68\\:F\r%l;/BlN(nB\\\MH%C:>cO/9_G	\0f&<\"'kb&mcZ-,Rd&@!*\$b	pp&Zm#"	HX	{0\n@)ls>hGLkq-kW]^BlcGe\rm:%zNEvu	0pMd|?_n\$rsogl9y\r,|\\NM	NL*T C5N<%h%GHANfAL%Ry&$(g{nhp%PqX0rHN:Ci|#;\$Z)rEJb\\	b\$~r=,p/OBnZN\n&C3\nl.U@*R<{xIq6U5Ok5e_5JH#f\\Z2j&*iw7RW<\"|\$prb8F_5r-$l=\r+*MBh`!.s@ttY(Arb\"C\n'gqP\$,9U#FwH('3@\r{0003O'6 xI\0";break;case"zh":$f="\\r|%:\$\nr.2r/d[8 S8r!T\\sI4brJs!JrST\n5\rSR9Q*-Y(eB+I9PYj^FX9P2s&E~yc~#}Krsk|i-r)c(C#*!AR\nkP/WZU9WJQ3.\".TD-Js\nZH)tIrs	Ap2\rHGIvL&"s| '+\0BI1g,\r'1\rCp79c2:e1ANGI\0DS,ZZLH]6\$\\ZJ3qreR+ZK)v]P+V\"E!A.0Y<Q9UAUQPrD0BrJHv]"^9zW%s]Yx:DaJ5	CL!Xr\rm)\"eLnI54!P>D\\7OTV;dd5SGAM2l.r4piP,uOS91K!%~%IXs22YiUc\nR]^D`!A}\\#`	=)0\\'Ai:eUV\$1-9#e~kXO^XC9uynt*&d} HR\$\$IRd(J^t+2\r:\r?1LX_!A"<\"Z:(`x&7W-x(TTN	\nCH\$QJo=+%(xl9ThzL=6\$ef\n9D`mBB4\$0@Ws	1eU>b! @mf)1EDFqD?\0d\$GPJ<	h\"pgX"YAQ(F@S@Kq%P\nxj+WD&&!kR\\qS\nAqI+ueNKa\"v5h_dRlN	ZRjP5vX1HN#jTS:,D0B0*0\0R\nz (\"E \"tUNs P(P&kX'&`va@|A<'\0 A\nB`EeVz-OYE:D:7p\"QN.&Nxm&h9o&[	YDQ	J`\"}}%8Kk2W2M&r:2E\$RjT(\\"KE,mhAb*W*('\\1tN+>M&HZ+Ae0H\\\r5Abm0@LQ+eT\0^3,%|QHyA`#7H^DQ1\"/DF!}H\n&_\n`\n\njMxHZ-s4+W	'B|HRb=aqm/emz=Lr+FpwX(Gpp?Q\01go[tb1D+ZXhZVii{ay?K*+sBd]\nhZxYpnFT:9xx~:gms#7B\\\\jWn$YXVB.rszFD+;,kJqrZbFfR{`G{%7aOJ>vszWQvg'\\w*9?W^G\nZL`h\\u3a<|48z#K\0p=@oB0LpL/b	\r\02A>-4+-J6+pt!\\'^\\0:xag\rzg.pI\nZl*b6#~OJ!(4!^p;' Cn/rV!^mLHzZ4uFj`\0\\\"\\&l%2X10unF4i[.\nnffNRO\\Vn\r6 n\$1$Ql4GQ?M\$2FR:`r(\"a._.";break;case"zh-tw":$f="\\r%:\$\ns.eUE9PK72(h)@:i	%e {	Nd T\\8C4aS@/%NNdCBQ+B,\$uwT9WKW2mizX:P	*_/*eSLK^9\r7Zz>)Nn!U=R\n^JT](I[f]*\gA2yO#i`\\nsh	ZBGTr{40&Q8),ha!\00z\ra0\\Z\rp^8# ^)A\ntTex!\$	psd<-D%yP	 s-WFQO:\|FMZS\0(P9*iXB m OgANQD<vEMdTMFzr}M D)8!v]bss'UEs*\$nq\n\rG~g1s\nbV&tj-;#T1tV,Z']%WDQTa)#@sxOTah1PP\$#hVKJAfK#V*\\\\*\rI6Q0DC2$7B(\$rMIGF)C\$_IF3-'Oa:=OdQE)\nW(H'JKy0>S:iL\rN`s+EH@\na7A#\"9CCX\$,1xP?RUJ4&\"Cps:(72T>D+YEn0F!tOa\$T`vrAvj0W3dj5(Q	T&d,MP_"TQ1,D0a\\p!B>+eXEr\0IIQ/G02Q#JlS\nA@F2/\rQ1/K\n%9pwY*''YA[i\"q6Aa<'19fl<rD@9K\"G4N#,xS\n#DvPLem6Vq1(@ Q=W	"e\0,R	qgE\0KA|)P5 \n@\"@U\"mHHLd5u\\kc+yW*s.'h,yl\" sxMrH!1P\"HB\n3t0MW]Jy{,won7IH3	.E+2xfxJ	b*\0TXqh(#g'ey8@+&T7ZKKi<B\\U;>J<B\"\0].g<tlK0_VtKo\n!SfZ|RzJ)5 	jd	bA,]I\r6P.ySn <DrrT7a#I9D_AX0P8o#n*XAo+E.OT	I)MT}&'vSE`YHlB*~SNbUt(9Bz<\r1|Eva@yEFl\no&+!evq]rUB6\r]1	wa\r>6}nM=y\\OcNMj4ZGfHPk>s9\$\$Bd\"z_VG\"]N\\zFD6T/F<JT%FlflG3.!s\rFlf\0S&^\\ {:v*vla!	\r\nPX,^'nn\\e#qYFYnv0r0(s#M=&0q.2M_"4fKX*0<AHQF0bk3C\\F gT\r9[@2LH\nZBjiDB2#b:EN,Q\nF0\\TC|x)H)q$&bbfDb.z+&0l-n'\nGvE(&oABi%6/B0\"+@  .\0 ')NS):.Q%&RhQlQo_%,sLA";break;}$Ug=array();foreach(explode("\n",lzw_decompress($f))as$X)$Ug[]=(strpos($X,"\t")?explode("\t",$X):$X);return$Ug;}if(!$Ug){$Ug=get_translations($a);$_SESSION["translations"]=$Ug;}if(extension_loaded('pdo')){class
Min_PDO{var$_result,$server_info,$affected_rows,$errno,$error,$pdo;function
__construct(){global$c;$Ze=array_search("SQL",$c->operators);if($Ze!==false)unset($c->operators[$Ze]);}function
dsn($Ob,$V,$G,$xe=array()){$xe[PDO::ATTR_ERRMODE]=PDO::ERRMODE_SILENT;$xe[PDO::ATTR_STATEMENT_CLASS]=array('Min_PDOStatement');try{$this->pdo=new
PDO($Ob,$V,$G,$xe);}catch(Exception$hc){auth_error(h($hc->getMessage()));}$this->server_info=@$this->pdo->getAttribute(PDO::ATTR_SERVER_VERSION);}function
quote($lg){return$this->pdo->quote($lg);}function
query($I,$bh=false){$J=$this->pdo->query($I);$this->error="";if(!$J){list(,$this->errno,$this->error)=$this->pdo->errorInfo();if(!$this->error)$this->error=lang(21);return
false;}$this->store_result($J);return$J;}function
multi_query($I){return$this->_result=$this->query($I);}function
store_result($J=null){if(!$J){$J=$this->_result;if(!$J)return
false;}if($J->columnCount()){$J->num_rows=$J->rowCount();return$J;}$this->affected_rows=$J->rowCount();return
true;}function
next_result(){if(!$this->_result)return
false;$this->_result->_offset=0;return@$this->_result->nextRowset();}function
result($I,$n=0){$J=$this->query($I);if(!$J)return
false;$L=$J->fetch();return$L[$n];}}class
Min_PDOStatement
extends
PDOStatement{var$_offset=0,$num_rows;function
fetch_assoc(){return$this->fetch(PDO::FETCH_ASSOC);}function
fetch_row(){return$this->fetch(PDO::FETCH_NUM);}function
fetch_field(){$L=(object)$this->getColumnMeta($this->_offset++);$L->orgtable=$L->table;$L->orgname=$L->name;$L->charsetnr=(in_array("blob",(array)$L->flags)?63:0);return$L;}}}$Kb=array();function
add_driver($u,$E){global$Kb;$Kb[$u]=$E;}class
Min_SQL{var$_conn;function
__construct($g){$this->_conn=$g;}function
select($Q,$N,$Z,$s,$ze=array(),$_=1,$F=0,$gf=false){global$c,$y;$kd=(count($s)<count($N));$I=$c->selectQueryBuild($N,$Z,$s,$ze,$_,$F);if(!$I)$I="SELECT".limit(($_GET["page"]!="last"&&$_!=""&&$s&&$kd&&$y=="sql"?"SQL_CALC_FOUND_ROWS ":"").implode(", ",$N)."\nFROM ".table($Q),($Z?"\nWHERE ".implode(" AND ",$Z):"").($s&&$kd?"\nGROUP BY ".implode(", ",$s):"").($ze?"\nORDER BY ".implode(", ",$ze):""),($_!=""?+$_:null),($F?$_*$F:0),"\n");$hg=microtime(true);$K=$this->_conn->query($I);if($gf)echo$c->selectQuery($I,$hg,!$K);return$K;}function
delete($Q,$of,$_=0){$I="FROM ".table($Q);return
queries("DELETE".($_?limit1($Q,$I,$of):" $I$of"));}function
update($Q,$P,$of,$_=0,$Rf="\n"){$rh=array();foreach($P
as$z=>$X)$rh[]="$z = $X";$I=table($Q)." SET$Rf".implode(",$Rf",$rh);return
queries("UPDATE".($_?limit1($Q,$I,$of,$Rf):" $I$of"));}function
insert($Q,$P){return
queries("INSERT INTO ".table($Q).($P?" (".implode(", ",array_keys($P)).")\nVALUES (".implode(", ",$P).")":" DEFAULT VALUES"));}function
insertUpdate($Q,$M,$ff){return
false;}function
begin(){return
queries("BEGIN");}function
commit(){return
queries("COMMIT");}function
rollback(){return
queries("ROLLBACK");}function
slowQuery($I,$Hg){}function
convertSearch($v,$X,$n){return$v;}function
value($X,$n){return(method_exists($this->_conn,'value')?$this->_conn->value($X,$n):(is_resource($X)?stream_get_contents($X):$X));}function
quoteBinary($If){return
q($If);}function
warnings(){return'';}function
tableHelp($E){}}class
Adminer{var$operators;function
name(){return"<a href='https://www.adminer.org/'".target_blank()." id='h1'>Adminer</a>";}function
credentials(){return
array(SERVER,$_GET["username"],get_password());}function
connectSsl(){}function
permanentLogin($i=false){return
password_file($i);}function
bruteForceKey(){return$_SERVER["REMOTE_ADDR"];}function
serverName($O){return
h($O);}function
database(){return
DB;}function
databases($yc=true){return
get_databases($yc);}function
schemas(){return
schemas();}function
queryTimeout(){return
2;}function
headers(){}function
csp(){return
csp();}function
head(){return
true;}function
css(){$K=array();$vc="adminer.css";if(file_exists($vc))$K[]="$vc?v=".crc32(file_get_contents($vc));return$K;}function
loginForm(){global$Kb;echo"<table cellspacing='0' class='layout'>\n",$this->loginFormField('driver','<tr><th>'.lang(22).'<td>',html_select("auth[driver]",$Kb,DRIVER,"loginDriver(this);")."\n"),$this->loginFormField('server','<tr><th>'.lang(23).'<td>','<input name="auth[server]" value="'.h(SERVER).'" title="hostname[:port]" placeholder="localhost" autocapitalize="off">'."\n"),$this->loginFormField('username','<tr><th>'.lang(24).'<td>','<input name="auth[username]" id="username" value="'.h($_GET["username"]).'" autocomplete="username" autocapitalize="off">'.script("focus(qs('#username')); qs('#username').form['auth[driver]'].onchange();")),$this->loginFormField('password','<tr><th>'.lang(25).'<td>','<input type="password" name="auth[password]" autocomplete="current-password">'."\n"),$this->loginFormField('db','<tr><th>'.lang(26).'<td>','<input name="auth[db]" value="'.h($_GET["db"]).'" autocapitalize="off">'."\n"),"</table>\n","<p><input type='submit' value='".lang(27)."'>\n",checkbox("auth[permanent]",1,$_COOKIE["adminer_permanent"],lang(28))."\n";}function
loginFormField($E,$Sc,$Y){return$Sc.$Y;}function
login($Fd,$G){if($G=="")return
lang(29,target_blank());return
true;}function
tableName($tg){return
h($tg["Name"]);}function
fieldName($n,$ze=0){return'<span title="'.h($n["full_type"]).'">'.h($n["field"]).'</span>';}function
selectLinks($tg,$P=""){global$y,$l;echo'<p class="links">';$Ed=array("select"=>lang(30));if(support("table")||support("indexes"))$Ed["table"]=lang(31);if(support("table")){if(is_view($tg))$Ed["view"]=lang(32);else$Ed["create"]=lang(33);}if($P!==null)$Ed["edit"]=lang(34);$E=$tg["Name"];foreach($Ed
as$z=>$X)echo" <a href='".h(ME)."$z=".urlencode($E).($z=="edit"?$P:"")."'".bold(isset($_GET[$z])).">$X</a>";echo
doc_link(array($y=>$l->tableHelp($E)),"?"),"\n";}function
foreignKeys($Q){return
foreign_keys($Q);}function
backwardKeys($Q,$sg){return
array();}function
backwardKeysPrint($Aa,$L){}function
selectQuery($I,$hg,$qc=false){global$y,$l;$K="</p>\n";if(!$qc&&($zh=$l->warnings())){$u="warnings";$K=", <a href='#$u'>".lang(35)."</a>".script("qsl('a').onclick = partial(toggle, '$u');","")."$K<div id='$u' class='hidden'>\n$zh</div>\n";}return"<p><code class='jush-$y'>".h(str_replace("\n"," ",$I))."</code> <span class='time'>(".format_time($hg).")</span>".(support("sql")?" <a href='".h(ME)."sql=".urlencode($I)."'>".lang(10)."</a>":"").$K;}function
sqlCommandQuery($I){return
shorten_utf8(trim($I),1000);}function
rowDescription($Q){return"";}function
rowDescriptions($M,$Ac){return$M;}function
selectLink($X,$n){}function
selectVal($X,$A,$n,$Ge){$K=($X===null?"<i>NULL</i>":(preg_match("~char|binary|boolean~",$n["type"])&&!preg_match("~var~",$n["type"])?"<code>$X</code>":$X));if(preg_match('~blob|bytea|raw|file~',$n["type"])&&!is_utf8($X))$K="<i>".lang(36,strlen($Ge))."</i>";if(preg_match('~json~',$n["type"]))$K="<code class='jush-js'>$K</code>";return($A?"<a href='".h($A)."'".(is_url($A)?target_blank():"").">$K</a>":$K);}function
editVal($X,$n){return$X;}function
tableStructurePrint($o){echo"<div class='scrollable'>\n","<table cellspacing='0' class='nowrap'>\n","<thead><tr><th>".lang(37)."<td>".lang(38).(support("comment")?"<td>".lang(39):"")."</thead>\n";foreach($o
as$n){echo"<tr".odd()."><th>".h($n["field"]),"<td><span title='".h($n["collation"])."'>".h($n["full_type"])."</span>",($n["null"]?" <i>NULL</i>":""),($n["auto_increment"]?" <i>".lang(40)."</i>":""),(isset($n["default"])?" <span title='".lang(41)."'>[<b>".h($n["default"])."</b>]</span>":""),(support("comment")?"<td>".h($n["comment"]):""),"\n";}echo"</table>\n","</div>\n";}function
tableIndexesPrint($x){echo"<table cellspacing='0'>\n";foreach($x
as$E=>$w){ksort($w["columns"]);$gf=array();foreach($w["columns"]as$z=>$X)$gf[]="<i>".h($X)."</i>".($w["lengths"][$z]?"(".$w["lengths"][$z].")":"").($w["descs"][$z]?" DESC":"");echo"<tr title='".h($E)."'><th>$w[type]<td>".implode(", ",$gf)."\n";}echo"</table>\n";}function
selectColumnsPrint($N,$e){global$Gc,$Lc;print_fieldset("select",lang(42),$N);$t=0;$N[""]=array();foreach($N
as$z=>$X){$X=$_GET["columns"][$z];$d=select_input(" name='columns[$t][col]'",$e,$X["col"],($z!==""?"selectFieldChange":"selectAddRow"));echo"<div>".($Gc||$Lc?"<select name='columns[$t][fun]'>".optionlist(array(-1=>"")+array_filter(array(lang(43)=>$Gc,lang(44)=>$Lc)),$X["fun"])."</select>".on_help("getTarget(event).value && getTarget(event).value.replace(/ |\$/, '(') + ')'",1).script("qsl('select').onchange = function () { helpClose();".($z!==""?"":" qsl('select, input', this.parentNode).onchange();")." };","")."($d)":$d)."</div>\n";$t++;}echo"</div></fieldset>\n";}function
selectSearchPrint($Z,$e,$x){print_fieldset("search",lang(45),$Z);foreach($x
as$t=>$w){if($w["type"]=="FULLTEXT"){echo"<div>(<i>".implode("</i>, <i>",array_map('h',$w["columns"]))."</i>) AGAINST"," <input type='search' name='fulltext[$t]' value='".h($_GET["fulltext"][$t])."'>",script("qsl('input').oninput = selectFieldChange;",""),checkbox("boolean[$t]",1,isset($_GET["boolean"][$t]),"BOOL"),"</div>\n";}}$Ka="this.parentNode.firstChild.onchange();";foreach(array_merge((array)$_GET["where"],array(array()))as$t=>$X){if(!$X||("$X[col]$X[val]"!=""&&in_array($X["op"],$this->operators))){echo"<div>".select_input(" name='where[$t][col]'",$e,$X["col"],($X?"selectFieldChange":"selectAddRow"),"(".lang(46).")"),html_select("where[$t][op]",$this->operators,$X["op"],$Ka),"<input type='search' name='where[$t][val]' value='".h($X["val"])."'>",script("mixin(qsl('input'), {oninput: function () { $Ka }, onkeydown: selectSearchKeydown, onsearch: selectSearchSearch});",""),"</div>\n";}}echo"</div></fieldset>\n";}function
selectOrderPrint($ze,$e,$x){print_fieldset("sort",lang(47),$ze);$t=0;foreach((array)$_GET["order"]as$z=>$X){if($X!=""){echo"<div>".select_input(" name='order[$t]'",$e,$X,"selectFieldChange"),checkbox("desc[$t]",1,isset($_GET["desc"][$z]),lang(48))."</div>\n";$t++;}}echo"<div>".select_input(" name='order[$t]'",$e,"","selectAddRow"),checkbox("desc[$t]",1,false,lang(48))."</div>\n","</div></fieldset>\n";}function
selectLimitPrint($_){echo"<fieldset><legend>".lang(49)."</legend><div>";echo"<input type='number' name='limit' class='size' value='".h($_)."'>",script("qsl('input').oninput = selectFieldChange;",""),"</div></fieldset>\n";}function
selectLengthPrint($Fg){if($Fg!==null){echo"<fieldset><legend>".lang(50)."</legend><div>","<input type='number' name='text_length' class='size' value='".h($Fg)."'>","</div></fieldset>\n";}}function
selectActionPrint($x){echo"<fieldset><legend>".lang(51)."</legend><div>","<input type='submit' value='".lang(42)."'>"," <span id='noindex' title='".lang(52)."'></span>","<script".nonce().">\n","var indexColumns = ";$e=array();foreach($x
as$w){$rb=reset($w["columns"]);if($w["type"]!="FULLTEXT"&&$rb)$e[$rb]=1;}$e[""]=1;foreach($e
as$z=>$X)json_row($z);echo";\n","selectFieldChange.call(qs('#form')['select']);\n","</script>\n","</div></fieldset>\n";}function
selectCommandPrint(){return!information_schema(DB);}function
selectImportPrint(){return!information_schema(DB);}function
selectEmailPrint($Wb,$e){}function
selectColumnsProcess($e,$x){global$Gc,$Lc;$N=array();$s=array();foreach((array)$_GET["columns"]as$z=>$X){if($X["fun"]=="count"||($X["col"]!=""&&(!$X["fun"]||in_array($X["fun"],$Gc)||in_array($X["fun"],$Lc)))){$N[$z]=apply_sql_function($X["fun"],($X["col"]!=""?idf_escape($X["col"]):"*"));if(!in_array($X["fun"],$Lc))$s[]=$N[$z];}}return
array($N,$s);}function
selectSearchProcess($o,$x){global$g,$l;$K=array();foreach($x
as$t=>$w){if($w["type"]=="FULLTEXT"&&$_GET["fulltext"][$t]!="")$K[]="MATCH (".implode(", ",array_map('idf_escape',$w["columns"])).") AGAINST (".q($_GET["fulltext"][$t]).(isset($_GET["boolean"][$t])?" IN BOOLEAN MODE":"").")";}foreach((array)$_GET["where"]as$z=>$X){if("$X[col]$X[val]"!=""&&in_array($X["op"],$this->operators)){$df="";$db=" $X[op]";if(preg_match('~IN$~',$X["op"])){$ad=process_length($X["val"]);$db.=" ".($ad!=""?$ad:"(NULL)");}elseif($X["op"]=="SQL")$db=" $X[val]";elseif($X["op"]=="LIKE %%")$db=" LIKE ".$this->processInput($o[$X["col"]],"%$X[val]%");elseif($X["op"]=="ILIKE %%")$db=" ILIKE ".$this->processInput($o[$X["col"]],"%$X[val]%");elseif($X["op"]=="FIND_IN_SET"){$df="$X[op](".q($X["val"]).", ";$db=")";}elseif(!preg_match('~NULL$~',$X["op"]))$db.=" ".$this->processInput($o[$X["col"]],$X["val"]);if($X["col"]!="")$K[]=$df.$l->convertSearch(idf_escape($X["col"]),$X,$o[$X["col"]]).$db;else{$Ya=array();foreach($o
as$E=>$n){if((preg_match('~^[-\d.'.(preg_match('~IN$~',$X["op"])?',':'').']+$~',$X["val"])||!preg_match('~'.number_type().'|bit~',$n["type"]))&&(!preg_match("~[\x80-\xFF]~",$X["val"])||preg_match('~char|text|enum|set~',$n["type"]))&&(!preg_match('~date|timestamp~',$n["type"])||preg_match('~^\d+-\d+-\d+~',$X["val"])))$Ya[]=$df.$l->convertSearch(idf_escape($E),$X,$n).$db;}$K[]=($Ya?"(".implode(" OR ",$Ya).")":"1 = 0");}}}return$K;}function
selectOrderProcess($o,$x){$K=array();foreach((array)$_GET["order"]as$z=>$X){if($X!="")$K[]=(preg_match('~^((COUNT\(DISTINCT |[A-Z0-9_]+\()(`(?:[^`]|``)+`|"(?:[^"]|"")+")\)|COUNT\(\*\))$~',$X)?$X:idf_escape($X)).(isset($_GET["desc"][$z])?" DESC":"");}return$K;}function
selectLimitProcess(){return(isset($_GET["limit"])?$_GET["limit"]:"50");}function
selectLengthProcess(){return(isset($_GET["text_length"])?$_GET["text_length"]:"100");}function
selectEmailProcess($Z,$Ac){return
false;}function
selectQueryBuild($N,$Z,$s,$ze,$_,$F){return"";}function
messageQuery($I,$Gg,$qc=false){global$y,$l;restart_session();$Tc=&get_session("queries");if(!$Tc[$_GET["db"]])$Tc[$_GET["db"]]=array();if(strlen($I)>1e6)$I=preg_replace('~[\x80-\xFF]+$~','',substr($I,0,1e6))."\n";$Tc[$_GET["db"]][]=array($I,time(),$Gg);$fg="sql-".count($Tc[$_GET["db"]]);$K="<a href='#$fg' class='toggle'>".lang(53)."</a>\n";if(!$qc&&($zh=$l->warnings())){$u="warnings-".count($Tc[$_GET["db"]]);$K="<a href='#$u' class='toggle'>".lang(35)."</a>, $K<div id='$u' class='hidden'>\n$zh</div>\n";}return" <span class='time'>".@date("H:i:s")."</span>"." $K<div id='$fg' class='hidden'><pre><code class='jush-$y'>".shorten_utf8($I,1000)."</code></pre>".($Gg?" <span class='time'>($Gg)</span>":'').(support("sql")?'<p><a href="'.h(str_replace("db=".urlencode(DB),"db=".urlencode($_GET["db"]),ME).'sql=&history='.(count($Tc[$_GET["db"]])-1)).'">'.lang(10).'</a>':'').'</div>';}function
editRowPrint($Q,$o,$L,$ih){}function
editFunctions($n){global$Rb;$K=($n["null"]?"NULL/":"");$ih=isset($_GET["select"])||where($_GET);foreach($Rb
as$z=>$Gc){if(!$z||(!isset($_GET["call"])&&$ih)){foreach($Gc
as$Ue=>$X){if(!$Ue||preg_match("~$Ue~",$n["type"]))$K.="/$X";}}if($z&&!preg_match('~set|blob|bytea|raw|file|bool~',$n["type"]))$K.="/SQL";}if($n["auto_increment"]&&!$ih)$K=lang(40);return
explode("/",$K);}function
editInput($Q,$n,$wa,$Y){if($n["type"]=="enum")return(isset($_GET["select"])?"<label><input type='radio'$wa value='-1' checked><i>".lang(8)."</i></label> ":"").($n["null"]?"<label><input type='radio'$wa value=''".($Y!==null||isset($_GET["select"])?"":" checked")."><i>NULL</i></label> ":"").enum_input("radio",$wa,$n,$Y,0);return"";}function
editHint($Q,$n,$Y){return"";}function
processInput($n,$Y,$r=""){if($r=="SQL")return$Y;$E=$n["field"];$K=q($Y);if(preg_match('~^(now|getdate|uuid)$~',$r))$K="$r()";elseif(preg_match('~^current_(date|timestamp)$~',$r))$K=$r;elseif(preg_match('~^([+-]|\|\|)$~',$r))$K=idf_escape($E)." $r $K";elseif(preg_match('~^[+-] interval$~',$r))$K=idf_escape($E)." $r ".(preg_match("~^(\\d+|'[0-9.: -]') [A-Z_]+\$~i",$Y)?$Y:$K);elseif(preg_match('~^(addtime|subtime|concat)$~',$r))$K="$r(".idf_escape($E).", $K)";elseif(preg_match('~^(md5|sha1|password|encrypt)$~',$r))$K="$r($K)";return
unconvert_field($n,$K);}function
dumpOutput(){$K=array('text'=>lang(54),'file'=>lang(55));if(function_exists('gzencode'))$K['gz']='gzip';return$K;}function
dumpFormat(){return
array('sql'=>'SQL','csv'=>'CSV,','csv;'=>'CSV;','tsv'=>'TSV');}function
dumpDatabase($k){}function
dumpTable($Q,$ng,$md=0){if($_POST["format"]!="sql"){echo"\xef\xbb\xbf";if($ng)dump_csv(array_keys(fields($Q)));}else{if($md==2){$o=array();foreach(fields($Q)as$E=>$n)$o[]=idf_escape($E)." $n[full_type]";$i="CREATE TABLE ".table($Q)." (".implode(", ",$o).")";}else$i=create_sql($Q,$_POST["auto_increment"],$ng);set_utf8mb4($i);if($ng&&$i){if($ng=="DROP+CREATE"||$md==1)echo"DROP ".($md==2?"VIEW":"TABLE")." IF EXISTS ".table($Q).";\n";if($md==1)$i=remove_definer($i);echo"$i;\n\n";}}}function
dumpData($Q,$ng,$I){global$g,$y;$Ld=($y=="sqlite"?0:1048576);if($ng){if($_POST["format"]=="sql"){if($ng=="TRUNCATE+INSERT")echo
truncate_sql($Q).";\n";$o=fields($Q);}$J=$g->query($I,1);if($J){$fd="";$Ia="";$pd=array();$pg="";$tc=($Q!=''?'fetch_assoc':'fetch_row');while($L=$J->$tc()){if(!$pd){$rh=array();foreach($L
as$X){$n=$J->fetch_field();$pd[]=$n->name;$z=idf_escape($n->name);$rh[]="$z = VALUES($z)";}$pg=($ng=="INSERT+UPDATE"?"\nON DUPLICATE KEY UPDATE ".implode(", ",$rh):"").";\n";}if($_POST["format"]!="sql"){if($ng=="table"){dump_csv($pd);$ng="INSERT";}dump_csv($L);}else{if(!$fd)$fd="INSERT INTO ".table($Q)." (".implode(", ",array_map('idf_escape',$pd)).") VALUES";foreach($L
as$z=>$X){$n=$o[$z];$L[$z]=($X!==null?unconvert_field($n,preg_match(number_type(),$n["type"])&&!preg_match('~\[~',$n["full_type"])&&is_numeric($X)?$X:q(($X===false?0:$X))):"NULL");}$If=($Ld?"\n":" ")."(".implode(",\t",$L).")";if(!$Ia)$Ia=$fd.$If;elseif(strlen($Ia)+4+strlen($If)+strlen($pg)<$Ld)$Ia.=",$If";else{echo$Ia.$pg;$Ia=$fd.$If;}}}if($Ia)echo$Ia.$pg;}elseif($_POST["format"]=="sql")echo"-- ".str_replace("\n"," ",$g->error)."\n";}}function
dumpFilename($Xc){return
friendly_url($Xc!=""?$Xc:(SERVER!=""?SERVER:"localhost"));}function
dumpHeaders($Xc,$Xd=false){$Ie=$_POST["output"];$nc=(preg_match('~sql~',$_POST["format"])?"sql":($Xd?"tar":"csv"));header("Content-Type: ".($Ie=="gz"?"application/x-gzip":($nc=="tar"?"application/x-tar":($nc=="sql"||$Ie!="file"?"text/plain":"text/csv")."; charset=utf-8")));if($Ie=="gz")ob_start('ob_gzencode',1e6);return$nc;}function
importServerPath(){return"adminer.sql";}function
homepage(){echo'<p class="links">'.($_GET["ns"]==""&&support("database")?'<a href="'.h(ME).'database=">'.lang(56)."</a>\n":""),(support("scheme")?"<a href='".h(ME)."scheme='>".($_GET["ns"]!=""?lang(57):lang(58))."</a>\n":""),($_GET["ns"]!==""?'<a href="'.h(ME).'schema=">'.lang(59)."</a>\n":""),(support("privileges")?"<a href='".h(ME)."privileges='>".lang(60)."</a>\n":"");return
true;}function
navigation($Wd){global$fa,$y,$Kb,$g;echo'<h1>
',$this->name(),' <span class="version">',$fa,'</span>
<a href="https://www.adminer.org/#download"',target_blank(),' id="version">',(version_compare($fa,$_COOKIE["adminer_version"])<0?h($_COOKIE["adminer_version"]):""),'</a>
</h1>
';if($Wd=="auth"){$Ie="";foreach((array)$_SESSION["pwds"]as$th=>$Tf){foreach($Tf
as$O=>$ph){foreach($ph
as$V=>$G){if($G!==null){$xb=$_SESSION["db"][$th][$O][$V];foreach(($xb?array_keys($xb):array(""))as$k)$Ie.="<li><a href='".h(auth_url($th,$O,$V,$k))."'>($Kb[$th]) ".h($V.($O!=""?"@".$this->serverName($O):"").($k!=""?" - $k":""))."</a>\n";}}}}if($Ie)echo"<ul id='logins'>\n$Ie</ul>\n".script("mixin(qs('#logins'), {onmouseover: menuOver, onmouseout: menuOut});");}else{$S=array();if($_GET["ns"]!==""&&!$Wd&&DB!=""){$g->select_db(DB);$S=table_status('',true);}echo
script_src(preg_replace("~\\?.*~","",ME)."?file=jush.js&version=4.8.1");if(support("sql")){echo'<script',nonce(),'>
';if($S){$Ed=array();foreach($S
as$Q=>$U)$Ed[]=preg_quote($Q,'/');echo"var jushLinks = { $y: [ '".js_escape(ME).(support("table")?"table=":"select=")."\$&', /\\b(".implode("|",$Ed).")\\b/g ] };\n";foreach(array("bac","bra","sqlite_quo","mssql_bra")as$X)echo"jushLinks.$X = jushLinks.$y;\n";}$Sf=$g->server_info;echo'bodyLoad(\'',(is_object($g)?preg_replace('~^(\d\.?\d).*~s','\1',$Sf):""),'\'',(preg_match('~MariaDB~',$Sf)?", true":""),');
</script>
';}$this->databasesPrint($Wd);if(DB==""||!$Wd){echo"<p class='links'>".(support("sql")?"<a href='".h(ME)."sql='".bold(isset($_GET["sql"])&&!isset($_GET["import"])).">".lang(53)."</a>\n<a href='".h(ME)."import='".bold(isset($_GET["import"])).">".lang(61)."</a>\n":"")."";if(support("dump"))echo"<a href='".h(ME)."dump=".urlencode(isset($_GET["table"])?$_GET["table"]:$_GET["select"])."' id='dump'".bold(isset($_GET["dump"])).">".lang(62)."</a>\n";}if($_GET["ns"]!==""&&!$Wd&&DB!=""){echo'<a href="'.h(ME).'create="'.bold($_GET["create"]==="").">".lang(63)."</a>\n";if(!$S)echo"<p class='message'>".lang(9)."\n";else$this->tablesPrint($S);}}}function
databasesPrint($Wd){global$c,$g;$j=$this->databases();if(DB&&$j&&!in_array(DB,$j))array_unshift($j,DB);echo'<form action="">
<p id="dbs">
';hidden_fields_get();$vb=script("mixin(qsl('select'), {onmousedown: dbMouseDown, onchange: dbChange});");echo"<span title='".lang(64)."'>".lang(65)."</span>: ".($j?"<select name='db'>".optionlist(array(""=>"")+$j,DB)."</select>$vb":"<input name='db' value='".h(DB)."' autocapitalize='off'>\n"),"<input type='submit' value='".lang(20)."'".($j?" class='hidden'":"").">\n";foreach(array("import","sql","schema","dump","privileges")as$X){if(isset($_GET[$X])){echo"<input type='hidden' name='$X' value=''>";break;}}echo"</p></form>\n";}function
tablesPrint($S){echo"<ul id='tables'>".script("mixin(qs('#tables'), {onmouseover: menuOver, onmouseout: menuOut});");foreach($S
as$Q=>$ig){$E=$this->tableName($ig);if($E!=""){echo'<li><a href="'.h(ME).'select='.urlencode($Q).'"'.bold($_GET["select"]==$Q||$_GET["edit"]==$Q,"select")." title='".lang(30)."'>".lang(66)."</a> ",(support("table")||support("indexes")?'<a href="'.h(ME).'table='.urlencode($Q).'"'.bold(in_array($Q,array($_GET["table"],$_GET["create"],$_GET["indexes"],$_GET["foreign"],$_GET["trigger"])),(is_view($ig)?"view":"structure"))." title='".lang(31)."'>$E</a>":"<span>$E</span>")."\n";}}echo"</ul>\n";}}$c=(function_exists('adminer_object')?adminer_object():new
Adminer);$Kb=array("server"=>"MySQL")+$Kb;if(!defined("DRIVER")){define("DRIVER","server");if(extension_loaded("mysqli")){class
Min_DB
extends
MySQLi{var$extension="MySQLi";function
__construct(){parent::init();}function
connect($O="",$V="",$G="",$ub=null,$Ye=null,$ag=null){global$c;mysqli_report(MYSQLI_REPORT_OFF);list($Vc,$Ye)=explode(":",$O,2);$gg=$c->connectSsl();if($gg)$this->ssl_set($gg['key'],$gg['cert'],$gg['ca'],'','');$K=@$this->real_connect(($O!=""?$Vc:ini_get("mysqli.default_host")),($O.$V!=""?$V:ini_get("mysqli.default_user")),($O.$V.$G!=""?$G:ini_get("mysqli.default_pw")),$ub,(is_numeric($Ye)?$Ye:ini_get("mysqli.default_port")),(!is_numeric($Ye)?$Ye:$ag),($gg?64:0));$this->options(MYSQLI_OPT_LOCAL_INFILE,false);return$K;}function
set_charset($La){if(parent::set_charset($La))return
true;parent::set_charset('utf8');return$this->query("SET NAMES $La");}function
result($I,$n=0){$J=$this->query($I);if(!$J)return
false;$L=$J->fetch_array();return$L[$n];}function
quote($lg){return"'".$this->escape_string($lg)."'";}}}elseif(extension_loaded("mysql")&&!((ini_bool("sql.safe_mode")||ini_bool("mysql.allow_local_infile"))&&extension_loaded("pdo_mysql"))){class
Min_DB{var$extension="MySQL",$server_info,$affected_rows,$errno,$error,$_link,$_result;function
connect($O,$V,$G){if(ini_bool("mysql.allow_local_infile")){$this->error=lang(67,"'mysql.allow_local_infile'","MySQLi","PDO_MySQL");return
false;}$this->_link=@mysql_connect(($O!=""?$O:ini_get("mysql.default_host")),("$O$V"!=""?$V:ini_get("mysql.default_user")),("$O$V$G"!=""?$G:ini_get("mysql.default_password")),true,131072);if($this->_link)$this->server_info=mysql_get_server_info($this->_link);else$this->error=mysql_error();return(bool)$this->_link;}function
set_charset($La){if(function_exists('mysql_set_charset')){if(mysql_set_charset($La,$this->_link))return
true;mysql_set_charset('utf8',$this->_link);}return$this->query("SET NAMES $La");}function
quote($lg){return"'".mysql_real_escape_string($lg,$this->_link)."'";}function
select_db($ub){return
mysql_select_db($ub,$this->_link);}function
query($I,$bh=false){$J=@($bh?mysql_unbuffered_query($I,$this->_link):mysql_query($I,$this->_link));$this->error="";if(!$J){$this->errno=mysql_errno($this->_link);$this->error=mysql_error($this->_link);return
false;}if($J===true){$this->affected_rows=mysql_affected_rows($this->_link);$this->info=mysql_info($this->_link);return
true;}return
new
Min_Result($J);}function
multi_query($I){return$this->_result=$this->query($I);}function
store_result(){return$this->_result;}function
next_result(){return
false;}function
result($I,$n=0){$J=$this->query($I);if(!$J||!$J->num_rows)return
false;return
mysql_result($J->_result,0,$n);}}class
Min_Result{var$num_rows,$_result,$_offset=0;function
__construct($J){$this->_result=$J;$this->num_rows=mysql_num_rows($J);}function
fetch_assoc(){return
mysql_fetch_assoc($this->_result);}function
fetch_row(){return
mysql_fetch_row($this->_result);}function
fetch_field(){$K=mysql_fetch_field($this->_result,$this->_offset++);$K->orgtable=$K->table;$K->orgname=$K->name;$K->charsetnr=($K->blob?63:0);return$K;}function
__destruct(){mysql_free_result($this->_result);}}}elseif(extension_loaded("pdo_mysql")){class
Min_DB
extends
Min_PDO{var$extension="PDO_MySQL";function
connect($O,$V,$G){global$c;$xe=array(PDO::MYSQL_ATTR_LOCAL_INFILE=>false);$gg=$c->connectSsl();if($gg){if(!empty($gg['key']))$xe[PDO::MYSQL_ATTR_SSL_KEY]=$gg['key'];if(!empty($gg['cert']))$xe[PDO::MYSQL_ATTR_SSL_CERT]=$gg['cert'];if(!empty($gg['ca']))$xe[PDO::MYSQL_ATTR_SSL_CA]=$gg['ca'];}$this->dsn("mysql:charset=utf8;host=".str_replace(":",";unix_socket=",preg_replace('~:(\d)~',';port=\1',$O)),$V,$G,$xe);return
true;}function
set_charset($La){$this->query("SET NAMES $La");}function
select_db($ub){return$this->query("USE ".idf_escape($ub));}function
query($I,$bh=false){$this->pdo->setAttribute(PDO::MYSQL_ATTR_USE_BUFFERED_QUERY,!$bh);return
parent::query($I,$bh);}}}class
Min_Driver
extends
Min_SQL{function
insert($Q,$P){return($P?parent::insert($Q,$P):queries("INSERT INTO ".table($Q)." ()\nVALUES ()"));}function
insertUpdate($Q,$M,$ff){$e=array_keys(reset($M));$df="INSERT INTO ".table($Q)." (".implode(", ",$e).") VALUES\n";$rh=array();foreach($e
as$z)$rh[$z]="$z = VALUES($z)";$pg="\nON DUPLICATE KEY UPDATE ".implode(", ",$rh);$rh=array();$Bd=0;foreach($M
as$P){$Y="(".implode(", ",$P).")";if($rh&&(strlen($df)+$Bd+strlen($Y)+strlen($pg)>1e6)){if(!queries($df.implode(",\n",$rh).$pg))return
false;$rh=array();$Bd=0;}$rh[]=$Y;$Bd+=strlen($Y)+2;}return
queries($df.implode(",\n",$rh).$pg);}function
slowQuery($I,$Hg){if(min_version('5.7.8','10.1.2')){if(preg_match('~MariaDB~',$this->_conn->server_info))return"SET STATEMENT max_statement_time=$Hg FOR $I";elseif(preg_match('~^(SELECT\b)(.+)~is',$I,$C))return"$C[1] /*+ MAX_EXECUTION_TIME(".($Hg*1000).") */ $C[2]";}}function
convertSearch($v,$X,$n){return(preg_match('~char|text|enum|set~',$n["type"])&&!preg_match("~^utf8~",$n["collation"])&&preg_match('~[\x80-\xFF]~',$X['val'])?"CONVERT($v USING ".charset($this->_conn).")":$v);}function
warnings(){$J=$this->_conn->query("SHOW WARNINGS");if($J&&$J->num_rows){ob_start();select($J);return
ob_get_clean();}}function
tableHelp($E){$Hd=preg_match('~MariaDB~',$this->_conn->server_info);if(information_schema(DB))return
strtolower(($Hd?"information-schema-$E-table/":str_replace("_","-",$E)."-table.html"));if(DB=="mysql")return($Hd?"mysql$E-table/":"system-database.html");}}function
idf_escape($v){return"`".str_replace("`","``",$v)."`";}function
table($v){return
idf_escape($v);}function
connect(){global$c,$ah,$mg;$g=new
Min_DB;$nb=$c->credentials();if($g->connect($nb[0],$nb[1],$nb[2])){$g->set_charset(charset($g));$g->query("SET sql_quote_show_create = 1, autocommit = 1");if(min_version('5.7.8',10.2,$g)){$mg[lang(68)][]="json";$ah["json"]=4294967295;}return$g;}$K=$g->error;if(function_exists('iconv')&&!is_utf8($K)&&strlen($If=iconv("windows-1250","utf-8",$K))>strlen($K))$K=$If;return$K;}function
get_databases($yc){$K=get_session("dbs");if($K===null){$I=(min_version(5)?"SELECT SCHEMA_NAME FROM information_schema.SCHEMATA ORDER BY SCHEMA_NAME":"SHOW DATABASES");$K=($yc?slow_query($I):get_vals($I));restart_session();set_session("dbs",$K);stop_session();}return$K;}function
limit($I,$Z,$_,$ke=0,$Rf=" "){return" $I$Z".($_!==null?$Rf."LIMIT $_".($ke?" OFFSET $ke":""):"");}function
limit1($Q,$I,$Z,$Rf="\n"){return
limit($I,$Z,1,0,$Rf);}function
db_collation($k,$Xa){global$g;$K=null;$i=$g->result("SHOW CREATE DATABASE ".idf_escape($k),1);if(preg_match('~ COLLATE ([^ ]+)~',$i,$C))$K=$C[1];elseif(preg_match('~ CHARACTER SET ([^ ]+)~',$i,$C))$K=$Xa[$C[1]][-1];return$K;}function
engines(){$K=array();foreach(get_rows("SHOW ENGINES")as$L){if(preg_match("~YES|DEFAULT~",$L["Support"]))$K[]=$L["Engine"];}return$K;}function
logged_user(){global$g;return$g->result("SELECT USER()");}function
tables_list(){return
get_key_vals(min_version(5)?"SELECT TABLE_NAME, TABLE_TYPE FROM information_schema.TABLES WHERE TABLE_SCHEMA = DATABASE() ORDER BY TABLE_NAME":"SHOW TABLES");}function
count_tables($j){$K=array();foreach($j
as$k)$K[$k]=count(get_vals("SHOW TABLES IN ".idf_escape($k)));return$K;}function
table_status($E="",$rc=false){$K=array();foreach(get_rows($rc&&min_version(5)?"SELECT TABLE_NAME AS Name, ENGINE AS Engine, TABLE_COMMENT AS Comment FROM information_schema.TABLES WHERE TABLE_SCHEMA = DATABASE() ".($E!=""?"AND TABLE_NAME = ".q($E):"ORDER BY Name"):"SHOW TABLE STATUS".($E!=""?" LIKE ".q(addcslashes($E,"%_\\")):""))as$L){if($L["Engine"]=="InnoDB")$L["Comment"]=preg_replace('~(?:(.+); )?InnoDB free: .*~','\1',$L["Comment"]);if(!isset($L["Engine"]))$L["Comment"]="";if($E!="")return$L;$K[$L["Name"]]=$L;}return$K;}function
is_view($R){return$R["Engine"]===null;}function
fk_support($R){return
preg_match('~InnoDB|IBMDB2I~i',$R["Engine"])||(preg_match('~NDB~i',$R["Engine"])&&min_version(5.6));}function
fields($Q){$K=array();foreach(get_rows("SHOW FULL COLUMNS FROM ".table($Q))as$L){preg_match('~^([^( ]+)(?:\((.+)\))?( unsigned)?( zerofill)?$~',$L["Type"],$C);$K[$L["Field"]]=array("field"=>$L["Field"],"full_type"=>$L["Type"],"type"=>$C[1],"length"=>$C[2],"unsigned"=>ltrim($C[3].$C[4]),"default"=>($L["Default"]!=""||preg_match("~char|set~",$C[1])?(preg_match('~text~',$C[1])?stripslashes(preg_replace("~^'(.*)'\$~",'\1',$L["Default"])):$L["Default"]):null),"null"=>($L["Null"]=="YES"),"auto_increment"=>($L["Extra"]=="auto_increment"),"on_update"=>(preg_match('~^on update (.+)~i',$L["Extra"],$C)?$C[1]:""),"collation"=>$L["Collation"],"privileges"=>array_flip(preg_split('~, *~',$L["Privileges"])),"comment"=>$L["Comment"],"primary"=>($L["Key"]=="PRI"),"generated"=>preg_match('~^(VIRTUAL|PERSISTENT|STORED)~',$L["Extra"]),);}return$K;}function
indexes($Q,$h=null){$K=array();foreach(get_rows("SHOW INDEX FROM ".table($Q),$h)as$L){$E=$L["Key_name"];$K[$E]["type"]=($E=="PRIMARY"?"PRIMARY":($L["Index_type"]=="FULLTEXT"?"FULLTEXT":($L["Non_unique"]?($L["Index_type"]=="SPATIAL"?"SPATIAL":"INDEX"):"UNIQUE")));$K[$E]["columns"][]=$L["Column_name"];$K[$E]["lengths"][]=($L["Index_type"]=="SPATIAL"?null:$L["Sub_part"]);$K[$E]["descs"][]=null;}return$K;}function
foreign_keys($Q){global$g,$re;static$Ue='(?:`(?:[^`]|``)+`|"(?:[^"]|"")+")';$K=array();$lb=$g->result("SHOW CREATE TABLE ".table($Q),1);if($lb){preg_match_all("~CONSTRAINT ($Ue) FOREIGN KEY ?\\(((?:$Ue,? ?)+)\\) REFERENCES ($Ue)(?:\\.($Ue))? \\(((?:$Ue,? ?)+)\\)(?: ON DELETE ($re))?(?: ON UPDATE ($re))?~",$lb,$Jd,PREG_SET_ORDER);foreach($Jd
as$C){preg_match_all("~$Ue~",$C[2],$bg);preg_match_all("~$Ue~",$C[5],$Ag);$K[idf_unescape($C[1])]=array("db"=>idf_unescape($C[4]!=""?$C[3]:$C[4]),"table"=>idf_unescape($C[4]!=""?$C[4]:$C[3]),"source"=>array_map('idf_unescape',$bg[0]),"target"=>array_map('idf_unescape',$Ag[0]),"on_delete"=>($C[6]?$C[6]:"RESTRICT"),"on_update"=>($C[7]?$C[7]:"RESTRICT"),);}}return$K;}function
view($E){global$g;return
array("select"=>preg_replace('~^(?:[^`]|`[^`]*`)*\s+AS\s+~isU','',$g->result("SHOW CREATE VIEW ".table($E),1)));}function
collations(){$K=array();foreach(get_rows("SHOW COLLATION")as$L){if($L["Default"])$K[$L["Charset"]][-1]=$L["Collation"];else$K[$L["Charset"]][]=$L["Collation"];}ksort($K);foreach($K
as$z=>$X)asort($K[$z]);return$K;}function
information_schema($k){return(min_version(5)&&$k=="information_schema")||(min_version(5.5)&&$k=="performance_schema");}function
error(){global$g;return
h(preg_replace('~^You have an error.*syntax to use~U',"Syntax error",$g->error));}function
create_database($k,$Wa){return
queries("CREATE DATABASE ".idf_escape($k).($Wa?" COLLATE ".q($Wa):""));}function
drop_databases($j){$K=apply_queries("DROP DATABASE",$j,'idf_escape');restart_session();set_session("dbs",null);return$K;}function
rename_database($E,$Wa){$K=false;if(create_database($E,$Wa)){$S=array();$wh=array();foreach(tables_list()as$Q=>$U){if($U=='VIEW')$wh[]=$Q;else$S[]=$Q;}$K=(!$S&&!$wh)||move_tables($S,$wh,$E);drop_databases($K?array(DB):array());}return$K;}function
auto_increment(){$za=" PRIMARY KEY";if($_GET["create"]!=""&&$_POST["auto_increment_col"]){foreach(indexes($_GET["create"])as$w){if(in_array($_POST["fields"][$_POST["auto_increment_col"]]["orig"],$w["columns"],true)){$za="";break;}if($w["type"]=="PRIMARY")$za=" UNIQUE";}}return" AUTO_INCREMENT$za";}function
alter_table($Q,$E,$o,$_c,$bb,$Zb,$Wa,$ya,$Qe){$sa=array();foreach($o
as$n)$sa[]=($n[1]?($Q!=""?($n[0]!=""?"CHANGE ".idf_escape($n[0]):"ADD"):" ")." ".implode($n[1]).($Q!=""?$n[2]:""):"DROP ".idf_escape($n[0]));$sa=array_merge($sa,$_c);$ig=($bb!==null?" COMMENT=".q($bb):"").($Zb?" ENGINE=".q($Zb):"").($Wa?" COLLATE ".q($Wa):"").($ya!=""?" AUTO_INCREMENT=$ya":"");if($Q=="")return
queries("CREATE TABLE ".table($E)." (\n".implode(",\n",$sa)."\n)$ig$Qe");if($Q!=$E)$sa[]="RENAME TO ".table($E);if($ig)$sa[]=ltrim($ig);return($sa||$Qe?queries("ALTER TABLE ".table($Q)."\n".implode(",\n",$sa).$Qe):true);}function
alter_indexes($Q,$sa){foreach($sa
as$z=>$X)$sa[$z]=($X[2]=="DROP"?"\nDROP INDEX ".idf_escape($X[1]):"\nADD $X[0] ".($X[0]=="PRIMARY"?"KEY ":"").($X[1]!=""?idf_escape($X[1])." ":"")."(".implode(", ",$X[2]).")");return
queries("ALTER TABLE ".table($Q).implode(",",$sa));}function
truncate_tables($S){return
apply_queries("TRUNCATE TABLE",$S);}function
drop_views($wh){return
queries("DROP VIEW ".implode(", ",array_map('table',$wh)));}function
drop_tables($S){return
queries("DROP TABLE ".implode(", ",array_map('table',$S)));}function
move_tables($S,$wh,$Ag){global$g;$zf=array();foreach($S
as$Q)$zf[]=table($Q)." TO ".idf_escape($Ag).".".table($Q);if(!$zf||queries("RENAME TABLE ".implode(", ",$zf))){$Bb=array();foreach($wh
as$Q)$Bb[table($Q)]=view($Q);$g->select_db($Ag);$k=idf_escape(DB);foreach($Bb
as$E=>$vh){if(!queries("CREATE VIEW $E AS ".str_replace(" $k."," ",$vh["select"]))||!queries("DROP VIEW $k.$E"))return
false;}return
true;}return
false;}function
copy_tables($S,$wh,$Ag){queries("SET sql_mode = 'NO_AUTO_VALUE_ON_ZERO'");foreach($S
as$Q){$E=($Ag==DB?table("copy_$Q"):idf_escape($Ag).".".table($Q));if(($_POST["overwrite"]&&!queries("\nDROP TABLE IF EXISTS $E"))||!queries("CREATE TABLE $E LIKE ".table($Q))||!queries("INSERT INTO $E SELECT * FROM ".table($Q)))return
false;foreach(get_rows("SHOW TRIGGERS LIKE ".q(addcslashes($Q,"%_\\")))as$L){$Vg=$L["Trigger"];if(!queries("CREATE TRIGGER ".($Ag==DB?idf_escape("copy_$Vg"):idf_escape($Ag).".".idf_escape($Vg))." $L[Timing] $L[Event] ON $E FOR EACH ROW\n$L[Statement];"))return
false;}}foreach($wh
as$Q){$E=($Ag==DB?table("copy_$Q"):idf_escape($Ag).".".table($Q));$vh=view($Q);if(($_POST["overwrite"]&&!queries("DROP VIEW IF EXISTS $E"))||!queries("CREATE VIEW $E AS $vh[select]"))return
false;}return
true;}function
trigger($E){if($E=="")return
array();$M=get_rows("SHOW TRIGGERS WHERE `Trigger` = ".q($E));return
reset($M);}function
triggers($Q){$K=array();foreach(get_rows("SHOW TRIGGERS LIKE ".q(addcslashes($Q,"%_\\")))as$L)$K[$L["Trigger"]]=array($L["Timing"],$L["Event"]);return$K;}function
trigger_options(){return
array("Timing"=>array("BEFORE","AFTER"),"Event"=>array("INSERT","UPDATE","DELETE"),"Type"=>array("FOR EACH ROW"),);}function
routine($E,$U){global$g,$bc,$dd,$ah;$qa=array("bool","boolean","integer","double precision","real","dec","numeric","fixed","national char","national varchar");$cg="(?:\\s|/\\*[\s\S]*?\\*/|(?:#|-- )[^\n]*\n?|--\r?\n)";$Zg="((".implode("|",array_merge(array_keys($ah),$qa)).")\\b(?:\\s*\\(((?:[^'\")]|$bc)++)\\))?\\s*(zerofill\\s*)?(unsigned(?:\\s+zerofill)?)?)(?:\\s*(?:CHARSET|CHARACTER\\s+SET)\\s*['\"]?([^'\"\\s,]+)['\"]?)?";$Ue="$cg*(".($U=="FUNCTION"?"":$dd).")?\\s*(?:`((?:[^`]|``)*)`\\s*|\\b(\\S+)\\s+)$Zg";$i=$g->result("SHOW CREATE $U ".idf_escape($E),2);preg_match("~\\(((?:$Ue\\s*,?)*)\\)\\s*".($U=="FUNCTION"?"RETURNS\\s+$Zg\\s+":"")."(.*)~is",$i,$C);$o=array();preg_match_all("~$Ue\\s*,?~is",$C[1],$Jd,PREG_SET_ORDER);foreach($Jd
as$Le)$o[]=array("field"=>str_replace("``","`",$Le[2]).$Le[3],"type"=>strtolower($Le[5]),"length"=>preg_replace_callback("~$bc~s",'normalize_enum',$Le[6]),"unsigned"=>strtolower(preg_replace('~\s+~',' ',trim("$Le[8] $Le[7]"))),"null"=>1,"full_type"=>$Le[4],"inout"=>strtoupper($Le[1]),"collation"=>strtolower($Le[9]),);if($U!="FUNCTION")return
array("fields"=>$o,"definition"=>$C[11]);return
array("fields"=>$o,"returns"=>array("type"=>$C[12],"length"=>$C[13],"unsigned"=>$C[15],"collation"=>$C[16]),"definition"=>$C[17],"language"=>"SQL",);}function
routines(){return
get_rows("SELECT ROUTINE_NAME AS SPECIFIC_NAME, ROUTINE_NAME, ROUTINE_TYPE, DTD_IDENTIFIER FROM information_schema.ROUTINES WHERE ROUTINE_SCHEMA = ".q(DB));}function
routine_languages(){return
array();}function
routine_id($E,$L){return
idf_escape($E);}function
last_id(){global$g;return$g->result("SELECT LAST_INSERT_ID()");}function
explain($g,$I){return$g->query("EXPLAIN ".(min_version(5.1)&&!min_version(5.7)?"PARTITIONS ":"").$I);}function
found_rows($R,$Z){return($Z||$R["Engine"]!="InnoDB"?null:$R["Rows"]);}function
types(){return
array();}function
schemas(){return
array();}function
get_schema(){return"";}function
set_schema($Kf,$h=null){return
true;}function
create_sql($Q,$ya,$ng){global$g;$K=$g->result("SHOW CREATE TABLE ".table($Q),1);if(!$ya)$K=preg_replace('~ AUTO_INCREMENT=\d+~','',$K);return$K;}function
truncate_sql($Q){return"TRUNCATE ".table($Q);}function
use_sql($ub){return"USE ".idf_escape($ub);}function
trigger_sql($Q){$K="";foreach(get_rows("SHOW TRIGGERS LIKE ".q(addcslashes($Q,"%_\\")),null,"-- ")as$L)$K.="\nCREATE TRIGGER ".idf_escape($L["Trigger"])." $L[Timing] $L[Event] ON ".table($L["Table"])." FOR EACH ROW\n$L[Statement];;\n";return$K;}function
show_variables(){return
get_key_vals("SHOW VARIABLES");}function
process_list(){return
get_rows("SHOW FULL PROCESSLIST");}function
show_status(){return
get_key_vals("SHOW STATUS");}function
convert_field($n){if(preg_match("~binary~",$n["type"]))return"HEX(".idf_escape($n["field"]).")";if($n["type"]=="bit")return"BIN(".idf_escape($n["field"])." + 0)";if(preg_match("~geometry|point|linestring|polygon~",$n["type"]))return(min_version(8)?"ST_":"")."AsWKT(".idf_escape($n["field"]).")";}function
unconvert_field($n,$K){if(preg_match("~binary~",$n["type"]))$K="UNHEX($K)";if($n["type"]=="bit")$K="CONV($K, 2, 10) + 0";if(preg_match("~geometry|point|linestring|polygon~",$n["type"]))$K=(min_version(8)?"ST_":"")."GeomFromText($K, SRID($n[field]))";return$K;}function
support($sc){return!preg_match("~scheme|sequence|type|view_trigger|materializedview".(min_version(8)?"":"|descidx".(min_version(5.1)?"":"|event|partitioning".(min_version(5)?"":"|routine|trigger|view")))."~",$sc);}function
kill_process($X){return
queries("KILL ".number($X));}function
connection_id(){return"SELECT CONNECTION_ID()";}function
max_connections(){global$g;return$g->result("SELECT @@max_connections");}function
driver_config(){$ah=array();$mg=array();foreach(array(lang(69)=>array("tinyint"=>3,"smallint"=>5,"mediumint"=>8,"int"=>10,"bigint"=>20,"decimal"=>66,"float"=>12,"double"=>21),lang(70)=>array("date"=>10,"datetime"=>19,"timestamp"=>19,"time"=>10,"year"=>4),lang(68)=>array("char"=>255,"varchar"=>65535,"tinytext"=>255,"text"=>65535,"mediumtext"=>16777215,"longtext"=>4294967295),lang(71)=>array("enum"=>65535,"set"=>64),lang(72)=>array("bit"=>20,"binary"=>255,"varbinary"=>65535,"tinyblob"=>255,"blob"=>65535,"mediumblob"=>16777215,"longblob"=>4294967295),lang(73)=>array("geometry"=>0,"point"=>0,"linestring"=>0,"polygon"=>0,"multipoint"=>0,"multilinestring"=>0,"multipolygon"=>0,"geometrycollection"=>0),)as$z=>$X){$ah+=$X;$mg[$z]=array_keys($X);}return
array('possible_drivers'=>array("MySQLi","MySQL","PDO_MySQL"),'jush'=>"sql",'types'=>$ah,'structured_types'=>$mg,'unsigned'=>array("unsigned","zerofill","unsigned zerofill"),'operators'=>array("=","<",">","<=",">=","!=","LIKE","LIKE %%","REGEXP","IN","FIND_IN_SET","IS NULL","NOT LIKE","NOT REGEXP","NOT IN","IS NOT NULL","SQL"),'functions'=>array("char_length","date","from_unixtime","lower","round","floor","ceil","sec_to_time","time_to_sec","upper"),'grouping'=>array("avg","count","count distinct","group_concat","max","min","sum"),'edit_functions'=>array(array("char"=>"md5/sha1/password/encrypt/uuid","binary"=>"md5/sha1","date|time"=>"now",),array(number_type()=>"+/-","date"=>"+ interval/- interval","time"=>"addtime/subtime","char|text"=>"concat",)),);}}$eb=driver_config();$cf=$eb['possible_drivers'];$y=$eb['jush'];$ah=$eb['types'];$mg=$eb['structured_types'];$hh=$eb['unsigned'];$ve=$eb['operators'];$Gc=$eb['functions'];$Lc=$eb['grouping'];$Rb=$eb['edit_functions'];if($c->operators===null)$c->operators=$ve;define("SERVER",$_GET[DRIVER]);define("DB",$_GET["db"]);define("ME",preg_replace('~\?.*~','',relative_uri()).'?'.(sid()?SID.'&':'').(SERVER!==null?DRIVER."=".urlencode(SERVER).'&':'').(isset($_GET["username"])?"username=".urlencode($_GET["username"]).'&':'').(DB!=""?'db='.urlencode(DB).'&'.(isset($_GET["ns"])?"ns=".urlencode($_GET["ns"])."&":""):''));$fa="4.8.1";function
page_header($Jg,$m="",$Ha=array(),$Kg=""){global$a,$fa,$c,$Kb,$y;page_headers();if(is_ajax()&&$m){page_messages($m);exit;}$Lg=$Jg.($Kg!=""?": $Kg":"");$Mg=strip_tags($Lg.(SERVER!=""&&SERVER!="localhost"?h(" - ".SERVER):"")." - ".$c->name());echo'<!DOCTYPE html>
<html lang="',$a,'" dir="',lang(74),'">
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<meta name="robots" content="noindex">
<title>',$Mg,'</title>
<link rel="stylesheet" type="text/css" href="',h(preg_replace("~\\?.*~","",ME)."?file=default.css&version=4.8.1"),'">
',script_src(preg_replace("~\\?.*~","",ME)."?file=functions.js&version=4.8.1");if($c->head()){echo'<link rel="shortcut icon" type="image/x-icon" href="',h(preg_replace("~\\?.*~","",ME)."?file=favicon.ico&version=4.8.1"),'">
<link rel="apple-touch-icon" href="',h(preg_replace("~\\?.*~","",ME)."?file=favicon.ico&version=4.8.1"),'">
';foreach($c->css()as$pb){echo'<link rel="stylesheet" type="text/css" href="',h($pb),'">
';}}echo'
<body class="',lang(74),' nojs">
';$vc=get_temp_dir()."/adminer.version";if(!$_COOKIE["adminer_version"]&&function_exists('openssl_verify')&&file_exists($vc)&&filemtime($vc)+86400>time()){$uh=unserialize(file_get_contents($vc));$mf="-----BEGIN PUBLIC KEY-----
MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAwqWOVuF5uw7/+Z70djoK
RlHIZFZPO0uYRezq90+7Amk+FDNd7KkL5eDve+vHRJBLAszF/7XKXe11xwliIsFs
DFWQlsABVZB3oisKCBEuI71J4kPH8dKGEWR9jDHFw3cWmoH3PmqImX6FISWbG3B8
h7FIx3jEaw5ckVPVTeo5JRm/1DZzJxjyDenXvBQ/6o9DgZKeNDgxwKzH+sw9/YCO
jHnq1cFpOIISzARlrHMa/43YfeNRAm/tsBXjSxembBPo7aQZLAWHmaj5+K19H10B
nCpz9Y++cipkVEiKRGih4ZEvjoFysEOdRLj6WiD/uUNky4xGeA6LaJqh5XpkFkcQ
fQIDAQAB
-----END PUBLIC KEY-----
";if(openssl_verify($uh["version"],base64_decode($uh["signature"]),$mf)==1)$_COOKIE["adminer_version"]=$uh["version"];}echo'<script',nonce(),'>
mixin(document.body, {onkeydown: bodyKeydown, onclick: bodyClick',(isset($_COOKIE["adminer_version"])?"":", onload: partial(verifyVersion, '$fa', '".js_escape(ME)."', '".get_token()."')");?>});
document.body.className = document.body.className.replace(/ nojs/, ' js');
var offlineMessage = '<?php echo
js_escape(lang(75)),'\';
var thousandsSeparator = \'',js_escape(lang(5)),'\';
</script>

<div id="help" class="jush-',$y,' jsonly hidden"></div>
',script("mixin(qs('#help'), {onmouseover: function () { helpOpen = 1; }, onmouseout: helpMouseout});"),'
<div id="content">
';if($Ha!==null){$A=substr(preg_replace('~\b(username|db|ns)=[^&]*&~','',ME),0,-1);echo'<p id="breadcrumb"><a href="'.h($A?$A:".").'">'.$Kb[DRIVER].'</a> &raquo; ';$A=substr(preg_replace('~\b(db|ns)=[^&]*&~','',ME),0,-1);$O=$c->serverName(SERVER);$O=($O!=""?$O:lang(23));if($Ha===false)echo"$O\n";else{echo"<a href='".h($A)."' accesskey='1' title='Alt+Shift+1'>$O</a> &raquo; ";if($_GET["ns"]!=""||(DB!=""&&is_array($Ha)))echo'<a href="'.h($A."&db=".urlencode(DB).(support("scheme")?"&ns=":"")).'">'.h(DB).'</a> &raquo; ';if(is_array($Ha)){if($_GET["ns"]!="")echo'<a href="'.h(substr(ME,0,-1)).'">'.h($_GET["ns"]).'</a> &raquo; ';foreach($Ha
as$z=>$X){$Db=(is_array($X)?$X[1]:h($X));if($Db!="")echo"<a href='".h(ME."$z=").urlencode(is_array($X)?$X[0]:$X)."'>$Db</a> &raquo; ";}}echo"$Jg\n";}}echo"<h2>$Lg</h2>\n","<div id='ajaxstatus' class='jsonly hidden'></div>\n";restart_session();page_messages($m);$j=&get_session("dbs");if(DB!=""&&$j&&!in_array(DB,$j,true))$j=null;stop_session();define("PAGE_HEADER",1);}function
page_headers(){global$c;header("Content-Type: text/html; charset=utf-8");header("Cache-Control: no-cache");header("X-Frame-Options: deny");header("X-XSS-Protection: 0");header("X-Content-Type-Options: nosniff");header("Referrer-Policy: origin-when-cross-origin");foreach($c->csp()as$ob){$Rc=array();foreach($ob
as$z=>$X)$Rc[]="$z $X";header("Content-Security-Policy: ".implode("; ",$Rc));}$c->headers();}function
csp(){return
array(array("script-src"=>"'self' 'unsafe-inline' 'nonce-".get_nonce()."' 'strict-dynamic'","connect-src"=>"'self'","frame-src"=>"https://www.adminer.org","object-src"=>"'none'","base-uri"=>"'none'","form-action"=>"'self'",),);}function
get_nonce(){static$fe;if(!$fe)$fe=base64_encode(rand_string());return$fe;}function
page_messages($m){$jh=preg_replace('~^[^?]*~','',$_SERVER["REQUEST_URI"]);$Ud=$_SESSION["messages"][$jh];if($Ud){echo"<div class='message'>".implode("</div>\n<div class='message'>",$Ud)."</div>".script("messagesPrint();");unset($_SESSION["messages"][$jh]);}if($m)echo"<div class='error'>$m</div>\n";}function
page_footer($Wd=""){global$c,$T;echo'</div>

';switch_lang();if($Wd!="auth"){echo'<form action="" method="post">
<p class="logout">
<input type="submit" name="logout" value="',lang(76),'" id="logout">
<input type="hidden" name="token" value="',$T,'">
</p>
</form>
';}echo'<div id="menu">
';$c->navigation($Wd);echo'</div>
',script("setupSubmitHighlight(document);");}function
int32($Zd){while($Zd>=2147483648)$Zd-=4294967296;while($Zd<=-2147483649)$Zd+=4294967296;return(int)$Zd;}function
long2str($W,$yh){$If='';foreach($W
as$X)$If.=pack('V',$X);if($yh)return
substr($If,0,end($W));return$If;}function
str2long($If,$yh){$W=array_values(unpack('V*',str_pad($If,4*ceil(strlen($If)/4),"\0")));if($yh)$W[]=strlen($If);return$W;}function
xxtea_mx($Eh,$Dh,$qg,$od){return
int32((($Eh>>5&0x7FFFFFF)^$Dh<<2)+(($Dh>>3&0x1FFFFFFF)^$Eh<<4))^int32(($qg^$Dh)+($od^$Eh));}function
encrypt_string($kg,$z){if($kg=="")return"";$z=array_values(unpack("V*",pack("H*",md5($z))));$W=str2long($kg,true);$Zd=count($W)-1;$Eh=$W[$Zd];$Dh=$W[0];$H=floor(6+52/($Zd+1));$qg=0;while($H-->0){$qg=int32($qg+0x9E3779B9);$Qb=$qg>>2&3;for($Je=0;$Je<$Zd;$Je++){$Dh=$W[$Je+1];$Yd=xxtea_mx($Eh,$Dh,$qg,$z[$Je&3^$Qb]);$Eh=int32($W[$Je]+$Yd);$W[$Je]=$Eh;}$Dh=$W[0];$Yd=xxtea_mx($Eh,$Dh,$qg,$z[$Je&3^$Qb]);$Eh=int32($W[$Zd]+$Yd);$W[$Zd]=$Eh;}return
long2str($W,false);}function
decrypt_string($kg,$z){if($kg=="")return"";if(!$z)return
false;$z=array_values(unpack("V*",pack("H*",md5($z))));$W=str2long($kg,false);$Zd=count($W)-1;$Eh=$W[$Zd];$Dh=$W[0];$H=floor(6+52/($Zd+1));$qg=int32($H*0x9E3779B9);while($qg){$Qb=$qg>>2&3;for($Je=$Zd;$Je>0;$Je--){$Eh=$W[$Je-1];$Yd=xxtea_mx($Eh,$Dh,$qg,$z[$Je&3^$Qb]);$Dh=int32($W[$Je]-$Yd);$W[$Je]=$Dh;}$Eh=$W[$Zd];$Yd=xxtea_mx($Eh,$Dh,$qg,$z[$Je&3^$Qb]);$Dh=int32($W[0]-$Yd);$W[0]=$Dh;$qg=int32($qg-0x9E3779B9);}return
long2str($W,true);}$g='';$Qc=$_SESSION["token"];if(!$Qc)$_SESSION["token"]=rand(1,1e6);$T=get_token();$We=array();if($_COOKIE["adminer_permanent"]){foreach(explode(" ",$_COOKIE["adminer_permanent"])as$X){list($z)=explode(":",$X);$We[$z]=$X;}}function
add_invalid_login(){global$c;$q=file_open_lock(get_temp_dir()."/adminer.invalid");if(!$q)return;$id=unserialize(stream_get_contents($q));$Gg=time();if($id){foreach($id
as$jd=>$X){if($X[0]<$Gg)unset($id[$jd]);}}$hd=&$id[$c->bruteForceKey()];if(!$hd)$hd=array($Gg+30*60,0);$hd[1]++;file_write_unlock($q,serialize($id));}function
check_invalid_login(){global$c;$id=unserialize(@file_get_contents(get_temp_dir()."/adminer.invalid"));$hd=($id?$id[$c->bruteForceKey()]:array());$ee=($hd[1]>29?$hd[0]-time():0);if($ee>0)auth_error(lang(77,ceil($ee/60)));}$xa=$_POST["auth"];if($xa){session_regenerate_id();$th=$xa["driver"];$O=$xa["server"];$V=$xa["username"];$G=(string)$xa["password"];$k=$xa["db"];set_password($th,$O,$V,$G);$_SESSION["db"][$th][$O][$V][$k]=true;if($xa["permanent"]){$z=base64_encode($th)."-".base64_encode($O)."-".base64_encode($V)."-".base64_encode($k);$hf=$c->permanentLogin(true);$We[$z]="$z:".base64_encode($hf?encrypt_string($G,$hf):"");cookie("adminer_permanent",implode(" ",$We));}if(count($_POST)==1||DRIVER!=$th||SERVER!=$O||$_GET["username"]!==$V||DB!=$k)redirect(auth_url($th,$O,$V,$k));}elseif($_POST["logout"]&&(!$Qc||verify_token())){foreach(array("pwds","db","dbs","queries")as$z)set_session($z,null);unset_permanent();redirect(substr(preg_replace('~\b(username|db|ns)=[^&]*&~','',ME),0,-1),lang(78).' '.lang(79));}elseif($We&&!$_SESSION["pwds"]){session_regenerate_id();$hf=$c->permanentLogin();foreach($We
as$z=>$X){list(,$Qa)=explode(":",$X);list($th,$O,$V,$k)=array_map('base64_decode',explode("-",$z));set_password($th,$O,$V,decrypt_string(base64_decode($Qa),$hf));$_SESSION["db"][$th][$O][$V][$k]=true;}}function
unset_permanent(){global$We;foreach($We
as$z=>$X){list($th,$O,$V,$k)=array_map('base64_decode',explode("-",$z));if($th==DRIVER&&$O==SERVER&&$V==$_GET["username"]&&$k==DB)unset($We[$z]);}cookie("adminer_permanent",implode(" ",$We));}function
auth_error($m){global$c,$Qc;$Uf=session_name();if(isset($_GET["username"])){header("HTTP/1.1 403 Forbidden");if(($_COOKIE[$Uf]||$_GET[$Uf])&&!$Qc)$m=lang(80);else{restart_session();add_invalid_login();$G=get_password();if($G!==null){if($G===false)$m.=($m?'<br>':'').lang(81,target_blank(),'<code>permanentLogin()</code>');set_password(DRIVER,SERVER,$_GET["username"],null);}unset_permanent();}}if(!$_COOKIE[$Uf]&&$_GET[$Uf]&&ini_bool("session.use_only_cookies"))$m=lang(82);$Me=session_get_cookie_params();cookie("adminer_key",($_COOKIE["adminer_key"]?$_COOKIE["adminer_key"]:rand_string()),$Me["lifetime"]);page_header(lang(27),$m,null);echo"<form action='' method='post'>\n","<div>";if(hidden_fields($_POST,array("auth")))echo"<p class='message'>".lang(83)."\n";echo"</div>\n";$c->loginForm();echo"</form>\n";page_footer("auth");exit;}if(isset($_GET["username"])&&!class_exists("Min_DB")){unset($_SESSION["pwds"][DRIVER]);unset_permanent();page_header(lang(84),lang(85,implode(", ",$cf)),false);page_footer("auth");exit;}stop_session(true);if(isset($_GET["username"])&&is_string(get_password())){list($Vc,$Ye)=explode(":",SERVER,2);if(preg_match('~^\s*([-+]?\d+)~',$Ye,$C)&&($C[1]<1024||$C[1]>65535))auth_error(lang(86));check_invalid_login();$g=connect();$l=new
Min_Driver($g);}$Fd=null;if(!is_object($g)||($Fd=$c->login($_GET["username"],get_password()))!==true){$m=(is_string($g)?h($g):(is_string($Fd)?$Fd:lang(87)));auth_error($m.(preg_match('~^ | $~',get_password())?'<br>'.lang(88):''));}if($_POST["logout"]&&$Qc&&!verify_token()){page_header(lang(76),lang(89));page_footer("db");exit;}if($xa&&$_POST["token"])$_POST["token"]=$T;$m='';if($_POST){if(!verify_token()){$cd="max_input_vars";$Pd=ini_get($cd);if(extension_loaded("suhosin")){foreach(array("suhosin.request.max_vars","suhosin.post.max_vars")as$z){$X=ini_get($z);if($X&&(!$Pd||$X<$Pd)){$cd=$z;$Pd=$X;}}}$m=(!$_POST["token"]&&$Pd?lang(90,"'$cd'"):lang(89).' '.lang(91));}}elseif($_SERVER["REQUEST_METHOD"]=="POST"){$m=lang(92,"'post_max_size'");if(isset($_GET["sql"]))$m.=' '.lang(93);}function
select($J,$h=null,$Be=array(),$_=0){global$y;$Ed=array();$x=array();$e=array();$Fa=array();$ah=array();$K=array();odd('');for($t=0;(!$_||$t<$_)&&($L=$J->fetch_row());$t++){if(!$t){echo"<div class='scrollable'>\n","<table cellspacing='0' class='nowrap'>\n","<thead><tr>";for($nd=0;$nd<count($L);$nd++){$n=$J->fetch_field();$E=$n->name;$Ae=$n->orgtable;$_e=$n->orgname;$K[$n->table]=$Ae;if($Be&&$y=="sql")$Ed[$nd]=($E=="table"?"table=":($E=="possible_keys"?"indexes=":null));elseif($Ae!=""){if(!isset($x[$Ae])){$x[$Ae]=array();foreach(indexes($Ae,$h)as$w){if($w["type"]=="PRIMARY"){$x[$Ae]=array_flip($w["columns"]);break;}}$e[$Ae]=$x[$Ae];}if(isset($e[$Ae][$_e])){unset($e[$Ae][$_e]);$x[$Ae][$_e]=$nd;$Ed[$nd]=$Ae;}}if($n->charsetnr==63)$Fa[$nd]=true;$ah[$nd]=$n->type;echo"<th".($Ae!=""||$n->name!=$_e?" title='".h(($Ae!=""?"$Ae.":"").$_e)."'":"").">".h($E).($Be?doc_link(array('sql'=>"explain-output.html#explain_".strtolower($E),'mariadb'=>"explain/#the-columns-in-explain-select",)):"");}echo"</thead>\n";}echo"<tr".odd().">";foreach($L
as$z=>$X){$A="";if(isset($Ed[$z])&&!$e[$Ed[$z]]){if($Be&&$y=="sql"){$Q=$L[array_search("table=",$Ed)];$A=ME.$Ed[$z].urlencode($Be[$Q]!=""?$Be[$Q]:$Q);}else{$A=ME."edit=".urlencode($Ed[$z]);foreach($x[$Ed[$z]]as$Ua=>$nd)$A.="&where".urlencode("[".bracket_escape($Ua)."]")."=".urlencode($L[$nd]);}}elseif(is_url($X))$A=$X;if($X===null)$X="<i>NULL</i>";elseif($Fa[$z]&&!is_utf8($X))$X="<i>".lang(36,strlen($X))."</i>";else{$X=h($X);if($ah[$z]==254)$X="<code>$X</code>";}if($A)$X="<a href='".h($A)."'".(is_url($A)?target_blank():'').">$X</a>";echo"<td>$X";}}echo($t?"</table>\n</div>":"<p class='message'>".lang(12))."\n";return$K;}function
referencable_primary($Pf){$K=array();foreach(table_status('',true)as$ug=>$Q){if($ug!=$Pf&&fk_support($Q)){foreach(fields($ug)as$n){if($n["primary"]){if($K[$ug]){unset($K[$ug]);break;}$K[$ug]=$n;}}}}return$K;}function
adminer_settings(){parse_str($_COOKIE["adminer_settings"],$Wf);return$Wf;}function
adminer_setting($z){$Wf=adminer_settings();return$Wf[$z];}function
set_adminer_settings($Wf){return
cookie("adminer_settings",http_build_query($Wf+adminer_settings()));}function
textarea($E,$Y,$M=10,$Ya=80){global$y;echo"<textarea name='$E' rows='$M' cols='$Ya' class='sqlarea jush-$y' spellcheck='false' wrap='off'>";if(is_array($Y)){foreach($Y
as$X)echo
h($X[0])."\n\n\n";}else
echo
h($Y);echo"</textarea>";}function
edit_type($z,$n,$Xa,$Bc=array(),$pc=array()){global$mg,$ah,$hh,$re;$U=$n["type"];echo'<td><select name="',h($z),'[type]" class="type" aria-labelledby="label-type">';if($U&&!isset($ah[$U])&&!isset($Bc[$U])&&!in_array($U,$pc))$pc[]=$U;if($Bc)$mg[lang(94)]=$Bc;echo
optionlist(array_merge($pc,$mg),$U),'</select><td><input name="',h($z),'[length]" value="',h($n["length"]),'" size="3"',(!$n["length"]&&preg_match('~var(char|binary)$~',$U)?" class='required'":"");echo' aria-labelledby="label-length"><td class="options">',"<select name='".h($z)."[collation]'".(preg_match('~(char|text|enum|set)$~',$U)?"":" class='hidden'").'><option value="">('.lang(95).')'.optionlist($Xa,$n["collation"]).'</select>',($hh?"<select name='".h($z)."[unsigned]'".(!$U||preg_match(number_type(),$U)?"":" class='hidden'").'><option>'.optionlist($hh,$n["unsigned"]).'</select>':''),(isset($n['on_update'])?"<select name='".h($z)."[on_update]'".(preg_match('~timestamp|datetime~',$U)?"":" class='hidden'").'>'.optionlist(array(""=>"(".lang(96).")","CURRENT_TIMESTAMP"),(preg_match('~^CURRENT_TIMESTAMP~i',$n["on_update"])?"CURRENT_TIMESTAMP":$n["on_update"])).'</select>':''),($Bc?"<select name='".h($z)."[on_delete]'".(preg_match("~`~",$U)?"":" class='hidden'")."><option value=''>(".lang(97).")".optionlist(explode("|",$re),$n["on_delete"])."</select> ":" ");}function
process_length($Bd){global$bc;return(preg_match("~^\\s*\\(?\\s*$bc(?:\\s*,\\s*$bc)*+\\s*\\)?\\s*\$~",$Bd)&&preg_match_all("~$bc~",$Bd,$Jd)?"(".implode(",",$Jd[0]).")":preg_replace('~^[0-9].*~','(\0)',preg_replace('~[^-0-9,+()[\]]~','',$Bd)));}function
process_type($n,$Va="COLLATE"){global$hh;return" $n[type]".process_length($n["length"]).(preg_match(number_type(),$n["type"])&&in_array($n["unsigned"],$hh)?" $n[unsigned]":"").(preg_match('~char|text|enum|set~',$n["type"])&&$n["collation"]?" $Va ".q($n["collation"]):"");}function
process_field($n,$Yg){return
array(idf_escape(trim($n["field"])),process_type($Yg),($n["null"]?" NULL":" NOT NULL"),default_value($n),(preg_match('~timestamp|datetime~',$n["type"])&&$n["on_update"]?" ON UPDATE $n[on_update]":""),(support("comment")&&$n["comment"]!=""?" COMMENT ".q($n["comment"]):""),($n["auto_increment"]?auto_increment():null),);}function
default_value($n){$zb=$n["default"];return($zb===null?"":" DEFAULT ".(preg_match('~char|binary|text|enum|set~',$n["type"])||preg_match('~^(?![a-z])~i',$zb)?q($zb):$zb));}function
type_class($U){foreach(array('char'=>'text','date'=>'time|year','binary'=>'blob','enum'=>'set',)as$z=>$X){if(preg_match("~$z|$X~",$U))return" class='$z'";}}function
edit_fields($o,$Xa,$U="TABLE",$Bc=array()){global$dd;$o=array_values($o);$_b=(($_POST?$_POST["defaults"]:adminer_setting("defaults"))?"":" class='hidden'");$cb=(($_POST?$_POST["comments"]:adminer_setting("comments"))?"":" class='hidden'");echo'<thead><tr>
';if($U=="PROCEDURE"){echo'<td>';}echo'<th id="label-name">',($U=="TABLE"?lang(98):lang(99)),'<td id="label-type">',lang(38),'<textarea id="enum-edit" rows="4" cols="12" wrap="off" style="display: none;"></textarea>',script("qs('#enum-edit').onblur = editingLengthBlur;"),'<td id="label-length">',lang(100),'<td>',lang(101);if($U=="TABLE"){echo'<td id="label-null">NULL
<td><input type="radio" name="auto_increment_col" value=""><acronym id="label-ai" title="',lang(40),'">AI</acronym>',doc_link(array('sql'=>"example-auto-increment.html",'mariadb'=>"auto_increment/",)),'<td id="label-default"',$_b,'>',lang(41),(support("comment")?"<td id='label-comment'$cb>".lang(39):"");}echo'<td>',"<input type='image' class='icon' name='add[".(support("move_col")?0:count($o))."]' src='".h(preg_replace("~\\?.*~","",ME)."?file=plus.gif&version=4.8.1")."' alt='+' title='".lang(102)."'>".script("row_count = ".count($o).";"),'</thead>
<tbody>
',script("mixin(qsl('tbody'), {onclick: editingClick, onkeydown: editingKeydown, oninput: editingInput});");foreach($o
as$t=>$n){$t++;$Ce=$n[($_POST?"orig":"field")];$Hb=(isset($_POST["add"][$t-1])||(isset($n["field"])&&!$_POST["drop_col"][$t]))&&(support("drop_col")||$Ce=="");echo'<tr',($Hb?"":" style='display: none;'"),'>
',($U=="PROCEDURE"?"<td>".html_select("fields[$t][inout]",explode("|",$dd),$n["inout"]):""),'<th>';if($Hb){echo'<input name="fields[',$t,'][field]" value="',h($n["field"]),'" data-maxlength="64" autocapitalize="off" aria-labelledby="label-name">';}echo'<input type="hidden" name="fields[',$t,'][orig]" value="',h($Ce),'">';edit_type("fields[$t]",$n,$Xa,$Bc);if($U=="TABLE"){echo'<td>',checkbox("fields[$t][null]",1,$n["null"],"","","block","label-null"),'<td><label class="block"><input type="radio" name="auto_increment_col" value="',$t,'"';if($n["auto_increment"]){echo' checked';}echo' aria-labelledby="label-ai"></label><td',$_b,'>',checkbox("fields[$t][has_default]",1,$n["has_default"],"","","","label-default"),'<input name="fields[',$t,'][default]" value="',h($n["default"]),'" aria-labelledby="label-default">',(support("comment")?"<td$cb><input name='fields[$t][comment]' value='".h($n["comment"])."' data-maxlength='".(min_version(5.5)?1024:255)."' aria-labelledby='label-comment'>":"");}echo"<td>",(support("move_col")?"<input type='image' class='icon' name='add[$t]' src='".h(preg_replace("~\\?.*~","",ME)."?file=plus.gif&version=4.8.1")."' alt='+' title='".lang(102)."'> "."<input type='image' class='icon' name='up[$t]' src='".h(preg_replace("~\\?.*~","",ME)."?file=up.gif&version=4.8.1")."' alt='' title='".lang(103)."'> "."<input type='image' class='icon' name='down[$t]' src='".h(preg_replace("~\\?.*~","",ME)."?file=down.gif&version=4.8.1")."' alt='' title='".lang(104)."'> ":""),($Ce==""||support("drop_col")?"<input type='image' class='icon' name='drop_col[$t]' src='".h(preg_replace("~\\?.*~","",ME)."?file=cross.gif&version=4.8.1")."' alt='x' title='".lang(105)."'>":"");}}function
process_fields(&$o){$ke=0;if($_POST["up"]){$wd=0;foreach($o
as$z=>$n){if(key($_POST["up"])==$z){unset($o[$z]);array_splice($o,$wd,0,array($n));break;}if(isset($n["field"]))$wd=$ke;$ke++;}}elseif($_POST["down"]){$Dc=false;foreach($o
as$z=>$n){if(isset($n["field"])&&$Dc){unset($o[key($_POST["down"])]);array_splice($o,$ke,0,array($Dc));break;}if(key($_POST["down"])==$z)$Dc=$n;$ke++;}}elseif($_POST["add"]){$o=array_values($o);array_splice($o,key($_POST["add"]),0,array(array()));}elseif(!$_POST["drop_col"])return
false;return
true;}function
normalize_enum($C){return"'".str_replace("'","''",addcslashes(stripcslashes(str_replace($C[0][0].$C[0][0],$C[0][0],substr($C[0],1,-1))),'\\'))."'";}function
grant($Hc,$jf,$e,$qe){if(!$jf)return
true;if($jf==array("ALL PRIVILEGES","GRANT OPTION"))return($Hc=="GRANT"?queries("$Hc ALL PRIVILEGES$qe WITH GRANT OPTION"):queries("$Hc ALL PRIVILEGES$qe")&&queries("$Hc GRANT OPTION$qe"));return
queries("$Hc ".preg_replace('~(GRANT OPTION)\([^)]*\)~','\1',implode("$e, ",$jf).$e).$qe);}function
drop_create($Lb,$i,$Mb,$Dg,$Nb,$B,$Td,$Rd,$Sd,$ne,$ce){if($_POST["drop"])query_redirect($Lb,$B,$Td);elseif($ne=="")query_redirect($i,$B,$Sd);elseif($ne!=$ce){$mb=queries($i);queries_redirect($B,$Rd,$mb&&queries($Lb));if($mb)queries($Mb);}else
queries_redirect($B,$Rd,queries($Dg)&&queries($Nb)&&queries($Lb)&&queries($i));}function
create_trigger($qe,$L){global$y;$Ig=" $L[Timing] $L[Event]".(preg_match('~ OF~',$L["Event"])?" $L[Of]":"");return"CREATE TRIGGER ".idf_escape($L["Trigger"]).($y=="mssql"?$qe.$Ig:$Ig.$qe).rtrim(" $L[Type]\n$L[Statement]",";").";";}function
create_routine($Ff,$L){global$dd,$y;$P=array();$o=(array)$L["fields"];ksort($o);foreach($o
as$n){if($n["field"]!="")$P[]=(preg_match("~^($dd)\$~",$n["inout"])?"$n[inout] ":"").idf_escape($n["field"]).process_type($n,"CHARACTER SET");}$Ab=rtrim("\n$L[definition]",";");return"CREATE $Ff ".idf_escape(trim($L["name"]))." (".implode(", ",$P).")".(isset($_GET["function"])?" RETURNS".process_type($L["returns"],"CHARACTER SET"):"").($L["language"]?" LANGUAGE $L[language]":"").($y=="pgsql"?" AS ".q($Ab):"$Ab;");}function
remove_definer($I){return
preg_replace('~^([A-Z =]+) DEFINER=`'.preg_replace('~@(.*)~','`@`(%|\1)',logged_user()).'`~','\1',$I);}function
format_foreign_key($p){global$re;$k=$p["db"];$ge=$p["ns"];return" FOREIGN KEY (".implode(", ",array_map('idf_escape',$p["source"])).") REFERENCES ".($k!=""&&$k!=$_GET["db"]?idf_escape($k).".":"").($ge!=""&&$ge!=$_GET["ns"]?idf_escape($ge).".":"").table($p["table"])." (".implode(", ",array_map('idf_escape',$p["target"])).")".(preg_match("~^($re)\$~",$p["on_delete"])?" ON DELETE $p[on_delete]":"").(preg_match("~^($re)\$~",$p["on_update"])?" ON UPDATE $p[on_update]":"");}function
tar_file($vc,$Ng){$K=pack("a100a8a8a8a12a12",$vc,644,0,0,decoct($Ng->size),decoct(time()));$Pa=8*32;for($t=0;$t<strlen($K);$t++)$Pa+=ord($K[$t]);$K.=sprintf("%06o",$Pa)."\0 ";echo$K,str_repeat("\0",512-strlen($K));$Ng->send();echo
str_repeat("\0",511-($Ng->size+511)%512);}function
ini_bytes($cd){$X=ini_get($cd);switch(strtolower(substr($X,-1))){case'g':$X*=1024;case'm':$X*=1024;case'k':$X*=1024;}return$X;}function
doc_link($Te,$Eg="<sup>?</sup>"){global$y,$g;$Sf=$g->server_info;$uh=preg_replace('~^(\d\.?\d).*~s','\1',$Sf);$lh=array('sql'=>"https://dev.mysql.com/doc/refman/$uh/en/",'sqlite'=>"https://www.sqlite.org/",'pgsql'=>"https://www.postgresql.org/docs/$uh/",'mssql'=>"https://msdn.microsoft.com/library/",'oracle'=>"https://www.oracle.com/pls/topic/lookup?ctx=db".preg_replace('~^.* (\d+)\.(\d+)\.\d+\.\d+\.\d+.*~s','\1\2',$Sf)."&id=",);if(preg_match('~MariaDB~',$Sf)){$lh['sql']="https://mariadb.com/kb/en/library/";$Te['sql']=(isset($Te['mariadb'])?$Te['mariadb']:str_replace(".html","/",$Te['sql']));}return($Te[$y]?"<a href='".h($lh[$y].$Te[$y])."'".target_blank().">$Eg</a>":"");}function
ob_gzencode($lg){return
gzencode($lg);}function
db_size($k){global$g;if(!$g->select_db($k))return"?";$K=0;foreach(table_status()as$R)$K+=$R["Data_length"]+$R["Index_length"];return
format_number($K);}function
set_utf8mb4($i){global$g;static$P=false;if(!$P&&preg_match('~\butf8mb4~i',$i)){$P=true;echo"SET NAMES ".charset($g).";\n\n";}}function
connect_error(){global$c,$g,$T,$m,$Kb;if(DB!=""){header("HTTP/1.1 404 Not Found");page_header(lang(26).": ".h(DB),lang(106),true);}else{if($_POST["db"]&&!$m)queries_redirect(substr(ME,0,-1),lang(107),drop_databases($_POST["db"]));page_header(lang(108),$m,false);echo"<p class='links'>\n";foreach(array('database'=>lang(109),'privileges'=>lang(60),'processlist'=>lang(110),'variables'=>lang(111),'status'=>lang(112),)as$z=>$X){if(support($z))echo"<a href='".h(ME)."$z='>$X</a>\n";}echo"<p>".lang(113,$Kb[DRIVER],"<b>".h($g->server_info)."</b>","<b>$g->extension</b>")."\n","<p>".lang(114,"<b>".h(logged_user())."</b>")."\n";$j=$c->databases();if($j){$Lf=support("scheme");$Xa=collations();echo"<form action='' method='post'>\n","<table cellspacing='0' class='checkable'>\n",script("mixin(qsl('table'), {onclick: tableClick, ondblclick: partialArg(tableClick, true)});"),"<thead><tr>".(support("database")?"<td>":"")."<th>".lang(26)." - <a href='".h(ME)."refresh=1'>".lang(115)."</a>"."<td>".lang(116)."<td>".lang(117)."<td>".lang(118)." - <a href='".h(ME)."dbsize=1'>".lang(119)."</a>".script("qsl('a').onclick = partial(ajaxSetHtml, '".js_escape(ME)."script=connect');","")."</thead>\n";$j=($_GET["dbsize"]?count_tables($j):array_flip($j));foreach($j
as$k=>$S){$Ef=h(ME)."db=".urlencode($k);$u=h("Db-".$k);echo"<tr".odd().">".(support("database")?"<td>".checkbox("db[]",$k,in_array($k,(array)$_POST["db"]),"","","",$u):""),"<th><a href='$Ef' id='$u'>".h($k)."</a>";$Wa=h(db_collation($k,$Xa));echo"<td>".(support("database")?"<a href='$Ef".($Lf?"&amp;ns=":"")."&amp;database=' title='".lang(56)."'>$Wa</a>":$Wa),"<td align='right'><a href='$Ef&amp;schema=' id='tables-".h($k)."' title='".lang(59)."'>".($_GET["dbsize"]?$S:"?")."</a>","<td align='right' id='size-".h($k)."'>".($_GET["dbsize"]?db_size($k):"?"),"\n";}echo"</table>\n",(support("database")?"<div class='footer'><div>\n"."<fieldset><legend>".lang(120)." <span id='selected'></span></legend><div>\n"."<input type='hidden' name='all' value=''>".script("qsl('input').onclick = function () { selectCount('selected', formChecked(this, /^db/)); };")."<input type='submit' name='drop' value='".lang(121)."'>".confirm()."\n"."</div></fieldset>\n"."</div></div>\n":""),"<input type='hidden' name='token' value='$T'>\n","</form>\n",script("tableCheck();");}}page_footer("db");}if(isset($_GET["status"]))$_GET["variables"]=$_GET["status"];if(isset($_GET["import"]))$_GET["sql"]=$_GET["import"];if(!(DB!=""?$g->select_db(DB):isset($_GET["sql"])||isset($_GET["dump"])||isset($_GET["database"])||isset($_GET["processlist"])||isset($_GET["privileges"])||isset($_GET["user"])||isset($_GET["variables"])||$_GET["script"]=="connect"||$_GET["script"]=="kill")){if(DB!=""||$_GET["refresh"]){restart_session();set_session("dbs",null);}connect_error();exit;}$re="RESTRICT|NO ACTION|CASCADE|SET NULL|SET DEFAULT";class
TmpFile{var$handler;var$size;function
__construct(){$this->handler=tmpfile();}function
write($hb){$this->size+=strlen($hb);fwrite($this->handler,$hb);}function
send(){fseek($this->handler,0);fpassthru($this->handler);fclose($this->handler);}}$bc="'(?:''|[^'\\\\]|\\\\.)*'";$dd="IN|OUT|INOUT";if(isset($_GET["select"])&&($_POST["edit"]||$_POST["clone"])&&!$_POST["save"])$_GET["edit"]=$_GET["select"];if(isset($_GET["callf"]))$_GET["call"]=$_GET["callf"];if(isset($_GET["function"]))$_GET["procedure"]=$_GET["function"];if(isset($_GET["download"])){$b=$_GET["download"];$o=fields($b);header("Content-Type: application/octet-stream");header("Content-Disposition: attachment; filename=".friendly_url("$b-".implode("_",$_GET["where"])).".".friendly_url($_GET["field"]));$N=array(idf_escape($_GET["field"]));$J=$l->select($b,$N,array(where($_GET,$o)),$N);$L=($J?$J->fetch_row():array());echo$l->value($L[0],$o[$_GET["field"]]);exit;}elseif(isset($_GET["table"])){$b=$_GET["table"];$o=fields($b);if(!$o)$m=error();$R=table_status1($b,true);$E=$c->tableName($R);page_header(($o&&is_view($R)?$R['Engine']=='materialized view'?lang(122):lang(123):lang(124)).": ".($E!=""?$E:h($b)),$m);$c->selectLinks($R);$bb=$R["Comment"];if($bb!="")echo"<p class='nowrap'>".lang(39).": ".h($bb)."\n";if($o)$c->tableStructurePrint($o);if(!is_view($R)){if(support("indexes")){echo"<h3 id='indexes'>".lang(125)."</h3>\n";$x=indexes($b);if($x)$c->tableIndexesPrint($x);echo'<p class="links"><a href="'.h(ME).'indexes='.urlencode($b).'">'.lang(126)."</a>\n";}if(fk_support($R)){echo"<h3 id='foreign-keys'>".lang(94)."</h3>\n";$Bc=foreign_keys($b);if($Bc){echo"<table cellspacing='0'>\n","<thead><tr><th>".lang(127)."<td>".lang(128)."<td>".lang(97)."<td>".lang(96)."<td></thead>\n";foreach($Bc
as$E=>$p){echo"<tr title='".h($E)."'>","<th><i>".implode("</i>, <i>",array_map('h',$p["source"]))."</i>","<td><a href='".h($p["db"]!=""?preg_replace('~db=[^&]*~',"db=".urlencode($p["db"]),ME):($p["ns"]!=""?preg_replace('~ns=[^&]*~',"ns=".urlencode($p["ns"]),ME):ME))."table=".urlencode($p["table"])."'>".($p["db"]!=""?"<b>".h($p["db"])."</b>.":"").($p["ns"]!=""?"<b>".h($p["ns"])."</b>.":"").h($p["table"])."</a>","(<i>".implode("</i>, <i>",array_map('h',$p["target"]))."</i>)","<td>".h($p["on_delete"])."\n","<td>".h($p["on_update"])."\n",'<td><a href="'.h(ME.'foreign='.urlencode($b).'&name='.urlencode($E)).'">'.lang(129).'</a>';}echo"</table>\n";}echo'<p class="links"><a href="'.h(ME).'foreign='.urlencode($b).'">'.lang(130)."</a>\n";}}if(support(is_view($R)?"view_trigger":"trigger")){echo"<h3 id='triggers'>".lang(131)."</h3>\n";$Xg=triggers($b);if($Xg){echo"<table cellspacing='0'>\n";foreach($Xg
as$z=>$X)echo"<tr valign='top'><td>".h($X[0])."<td>".h($X[1])."<th>".h($z)."<td><a href='".h(ME.'trigger='.urlencode($b).'&name='.urlencode($z))."'>".lang(129)."</a>\n";echo"</table>\n";}echo'<p class="links"><a href="'.h(ME).'trigger='.urlencode($b).'">'.lang(132)."</a>\n";}}elseif(isset($_GET["schema"])){page_header(lang(59),"",array(),h(DB.($_GET["ns"]?".$_GET[ns]":"")));$vg=array();$wg=array();$da=($_GET["schema"]?$_GET["schema"]:$_COOKIE["adminer_schema-".str_replace(".","_",DB)]);preg_match_all('~([^:]+):([-0-9.]+)x([-0-9.]+)(_|$)~',$da,$Jd,PREG_SET_ORDER);foreach($Jd
as$t=>$C){$vg[$C[1]]=array($C[2],$C[3]);$wg[]="\n\t'".js_escape($C[1])."': [ $C[2], $C[3] ]";}$Pg=0;$Ca=-1;$Kf=array();$wf=array();$_d=array();foreach(table_status('',true)as$Q=>$R){if(is_view($R))continue;$Ze=0;$Kf[$Q]["fields"]=array();foreach(fields($Q)as$E=>$n){$Ze+=1.25;$n["pos"]=$Ze;$Kf[$Q]["fields"][$E]=$n;}$Kf[$Q]["pos"]=($vg[$Q]?$vg[$Q]:array($Pg,0));foreach($c->foreignKeys($Q)as$X){if(!$X["db"]){$yd=$Ca;if($vg[$Q][1]||$vg[$X["table"]][1])$yd=min(floatval($vg[$Q][1]),floatval($vg[$X["table"]][1]))-1;else$Ca-=.1;while($_d[(string)$yd])$yd-=.0001;$Kf[$Q]["references"][$X["table"]][(string)$yd]=array($X["source"],$X["target"]);$wf[$X["table"]][$Q][(string)$yd]=$X["target"];$_d[(string)$yd]=true;}}$Pg=max($Pg,$Kf[$Q]["pos"][0]+2.5+$Ze);}echo'<div id="schema" style="height: ',$Pg,'em;">
<script',nonce(),'>
qs(\'#schema\').onselectstart = function () { return false; };
var tablePos = {',implode(",",$wg)."\n",'};
var em = qs(\'#schema\').offsetHeight / ',$Pg,';
document.onmousemove = schemaMousemove;
document.onmouseup = partialArg(schemaMouseup, \'',js_escape(DB),'\');
</script>
';foreach($Kf
as$E=>$Q){echo"<div class='table' style='top: ".$Q["pos"][0]."em; left: ".$Q["pos"][1]."em;'>",'<a href="'.h(ME).'table='.urlencode($E).'"><b>'.h($E)."</b></a>",script("qsl('div').onmousedown = schemaMousedown;");foreach($Q["fields"]as$n){$X='<span'.type_class($n["type"]).' title="'.h($n["full_type"].($n["null"]?" NULL":'')).'">'.h($n["field"]).'</span>';echo"<br>".($n["primary"]?"<i>$X</i>":$X);}foreach((array)$Q["references"]as$Bg=>$xf){foreach($xf
as$yd=>$tf){$zd=$yd-$vg[$E][1];$t=0;foreach($tf[0]as$bg)echo"\n<div class='references' title='".h($Bg)."' id='refs$yd-".($t++)."' style='left: $zd"."em; top: ".$Q["fields"][$bg]["pos"]."em; padding-top: .5em;'><div style='border-top: 1px solid Gray; width: ".(-$zd)."em;'></div></div>";}}foreach((array)$wf[$E]as$Bg=>$xf){foreach($xf
as$yd=>$e){$zd=$yd-$vg[$E][1];$t=0;foreach($e
as$Ag)echo"\n<div class='references' title='".h($Bg)."' id='refd$yd-".($t++)."' style='left: $zd"."em; top: ".$Q["fields"][$Ag]["pos"]."em; height: 1.25em; background: url(".h(preg_replace("~\\?.*~","",ME)."?file=arrow.gif) no-repeat right center;&version=4.8.1")."'><div style='height: .5em; border-bottom: 1px solid Gray; width: ".(-$zd)."em;'></div></div>";}}echo"\n</div>\n";}foreach($Kf
as$E=>$Q){foreach((array)$Q["references"]as$Bg=>$xf){foreach($xf
as$yd=>$tf){$Vd=$Pg;$Nd=-10;foreach($tf[0]as$z=>$bg){$af=$Q["pos"][0]+$Q["fields"][$bg]["pos"];$bf=$Kf[$Bg]["pos"][0]+$Kf[$Bg]["fields"][$tf[1][$z]]["pos"];$Vd=min($Vd,$af,$bf);$Nd=max($Nd,$af,$bf);}echo"<div class='references' id='refl$yd' style='left: $yd"."em; top: $Vd"."em; padding: .5em 0;'><div style='border-right: 1px solid Gray; margin-top: 1px; height: ".($Nd-$Vd)."em;'></div></div>\n";}}}echo'</div>
<p class="links"><a href="',h(ME."schema=".urlencode($da)),'" id="schema-link">',lang(133),'</a>
';}elseif(isset($_GET["dump"])){$b=$_GET["dump"];if($_POST&&!$m){$kb="";foreach(array("output","format","db_style","routines","events","table_style","auto_increment","triggers","data_style")as$z)$kb.="&$z=".urlencode($_POST[$z]);cookie("adminer_export",substr($kb,1));$S=array_flip((array)$_POST["tables"])+array_flip((array)$_POST["data"]);$nc=dump_headers((count($S)==1?key($S):DB),(DB==""||count($S)>1));$ld=preg_match('~sql~',$_POST["format"]);if($ld){echo"-- Adminer $fa ".$Kb[DRIVER]." ".str_replace("\n"," ",$g->server_info)." dump\n\n";if($y=="sql"){echo"SET NAMES utf8;
SET time_zone = '+00:00';
SET foreign_key_checks = 0;
".($_POST["data_style"]?"SET sql_mode = 'NO_AUTO_VALUE_ON_ZERO';
":"")."
";$g->query("SET time_zone = '+00:00'");$g->query("SET sql_mode = ''");}}$ng=$_POST["db_style"];$j=array(DB);if(DB==""){$j=$_POST["databases"];if(is_string($j))$j=explode("\n",rtrim(str_replace("\r","",$j),"\n"));}foreach((array)$j
as$k){$c->dumpDatabase($k);if($g->select_db($k)){if($ld&&preg_match('~CREATE~',$ng)&&($i=$g->result("SHOW CREATE DATABASE ".idf_escape($k),1))){set_utf8mb4($i);if($ng=="DROP+CREATE")echo"DROP DATABASE IF EXISTS ".idf_escape($k).";\n";echo"$i;\n";}if($ld){if($ng)echo
use_sql($k).";\n\n";$He="";if($_POST["routines"]){foreach(array("FUNCTION","PROCEDURE")as$Ff){foreach(get_rows("SHOW $Ff STATUS WHERE Db = ".q($k),null,"-- ")as$L){$i=remove_definer($g->result("SHOW CREATE $Ff ".idf_escape($L["Name"]),2));set_utf8mb4($i);$He.=($ng!='DROP+CREATE'?"DROP $Ff IF EXISTS ".idf_escape($L["Name"]).";;\n":"")."$i;;\n\n";}}}if($_POST["events"]){foreach(get_rows("SHOW EVENTS",null,"-- ")as$L){$i=remove_definer($g->result("SHOW CREATE EVENT ".idf_escape($L["Name"]),3));set_utf8mb4($i);$He.=($ng!='DROP+CREATE'?"DROP EVENT IF EXISTS ".idf_escape($L["Name"]).";;\n":"")."$i;;\n\n";}}if($He)echo"DELIMITER ;;\n\n$He"."DELIMITER ;\n\n";}if($_POST["table_style"]||$_POST["data_style"]){$wh=array();foreach(table_status('',true)as$E=>$R){$Q=(DB==""||in_array($E,(array)$_POST["tables"]));$sb=(DB==""||in_array($E,(array)$_POST["data"]));if($Q||$sb){if($nc=="tar"){$Ng=new
TmpFile;ob_start(array($Ng,'write'),1e5);}$c->dumpTable($E,($Q?$_POST["table_style"]:""),(is_view($R)?2:0));if(is_view($R))$wh[]=$E;elseif($sb){$o=fields($E);$c->dumpData($E,$_POST["data_style"],"SELECT *".convert_fields($o,$o)." FROM ".table($E));}if($ld&&$_POST["triggers"]&&$Q&&($Xg=trigger_sql($E)))echo"\nDELIMITER ;;\n$Xg\nDELIMITER ;\n";if($nc=="tar"){ob_end_flush();tar_file((DB!=""?"":"$k/")."$E.csv",$Ng);}elseif($ld)echo"\n";}}if(function_exists('foreign_keys_sql')){foreach(table_status('',true)as$E=>$R){$Q=(DB==""||in_array($E,(array)$_POST["tables"]));if($Q&&!is_view($R))echo
foreign_keys_sql($E);}}foreach($wh
as$vh)$c->dumpTable($vh,$_POST["table_style"],1);if($nc=="tar")echo
pack("x512");}}}if($ld)echo"-- ".$g->result("SELECT NOW()")."\n";exit;}page_header(lang(62),$m,($_GET["export"]!=""?array("table"=>$_GET["export"]):array()),h(DB));echo'
<form action="" method="post">
<table cellspacing="0" class="layout">
';$wb=array('','USE','DROP+CREATE','CREATE');$xg=array('','DROP+CREATE','CREATE');$tb=array('','TRUNCATE+INSERT','INSERT');if($y=="sql")$tb[]='INSERT+UPDATE';parse_str($_COOKIE["adminer_export"],$L);if(!$L)$L=array("output"=>"text","format"=>"sql","db_style"=>(DB!=""?"":"CREATE"),"table_style"=>"DROP+CREATE","data_style"=>"INSERT");if(!isset($L["events"])){$L["routines"]=$L["events"]=($_GET["dump"]=="");$L["triggers"]=$L["table_style"];}echo"<tr><th>".lang(134)."<td>".html_select("output",$c->dumpOutput(),$L["output"],0)."\n";echo"<tr><th>".lang(135)."<td>".html_select("format",$c->dumpFormat(),$L["format"],0)."\n";echo($y=="sqlite"?"":"<tr><th>".lang(26)."<td>".html_select('db_style',$wb,$L["db_style"]).(support("routine")?checkbox("routines",1,$L["routines"],lang(136)):"").(support("event")?checkbox("events",1,$L["events"],lang(137)):"")),"<tr><th>".lang(117)."<td>".html_select('table_style',$xg,$L["table_style"]).checkbox("auto_increment",1,$L["auto_increment"],lang(40)).(support("trigger")?checkbox("triggers",1,$L["triggers"],lang(131)):""),"<tr><th>".lang(138)."<td>".html_select('data_style',$tb,$L["data_style"]),'</table>
<p><input type="submit" value="',lang(62),'">
<input type="hidden" name="token" value="',$T,'">

<table cellspacing="0">
',script("qsl('table').onclick = dumpClick;");$ef=array();if(DB!=""){$Na=($b!=""?"":" checked");echo"<thead><tr>","<th style='text-align: left;'><label class='block'><input type='checkbox' id='check-tables'$Na>".lang(117)."</label>".script("qs('#check-tables').onclick = partial(formCheck, /^tables\\[/);",""),"<th style='text-align: right;'><label class='block'>".lang(138)."<input type='checkbox' id='check-data'$Na></label>".script("qs('#check-data').onclick = partial(formCheck, /^data\\[/);",""),"</thead>\n";$wh="";$yg=tables_list();foreach($yg
as$E=>$U){$df=preg_replace('~_.*~','',$E);$Na=($b==""||$b==(substr($b,-1)=="%"?"$df%":$E));$gf="<tr><td>".checkbox("tables[]",$E,$Na,$E,"","block");if($U!==null&&!preg_match('~table~i',$U))$wh.="$gf\n";else
echo"$gf<td align='right'><label class='block'><span id='Rows-".h($E)."'></span>".checkbox("data[]",$E,$Na)."</label>\n";$ef[$df]++;}echo$wh;if($yg)echo
script("ajaxSetHtml('".js_escape(ME)."script=db');");}else{echo"<thead><tr><th style='text-align: left;'>","<label class='block'><input type='checkbox' id='check-databases'".($b==""?" checked":"").">".lang(26)."</label>",script("qs('#check-databases').onclick = partial(formCheck, /^databases\\[/);",""),"</thead>\n";$j=$c->databases();if($j){foreach($j
as$k){if(!information_schema($k)){$df=preg_replace('~_.*~','',$k);echo"<tr><td>".checkbox("databases[]",$k,$b==""||$b=="$df%",$k,"","block")."\n";$ef[$df]++;}}}else
echo"<tr><td><textarea name='databases' rows='10' cols='20'></textarea>";}echo'</table>
</form>
';$xc=true;foreach($ef
as$z=>$X){if($z!=""&&$X>1){echo($xc?"<p>":" ")."<a href='".h(ME)."dump=".urlencode("$z%")."'>".h($z)."</a>";$xc=false;}}}elseif(isset($_GET["privileges"])){page_header(lang(60));echo'<p class="links"><a href="'.h(ME).'user=">'.lang(139)."</a>";$J=$g->query("SELECT User, Host FROM mysql.".(DB==""?"user":"db WHERE ".q(DB)." LIKE Db")." ORDER BY Host, User");$Hc=$J;if(!$J)$J=$g->query("SELECT SUBSTRING_INDEX(CURRENT_USER, '@', 1) AS User, SUBSTRING_INDEX(CURRENT_USER, '@', -1) AS Host");echo"<form action=''><p>\n";hidden_fields_get();echo"<input type='hidden' name='db' value='".h(DB)."'>\n",($Hc?"":"<input type='hidden' name='grant' value=''>\n"),"<table cellspacing='0'>\n","<thead><tr><th>".lang(24)."<th>".lang(23)."<th></thead>\n";while($L=$J->fetch_assoc())echo'<tr'.odd().'><td>'.h($L["User"])."<td>".h($L["Host"]).'<td><a href="'.h(ME.'user='.urlencode($L["User"]).'&host='.urlencode($L["Host"])).'">'.lang(10)."</a>\n";if(!$Hc||DB!="")echo"<tr".odd()."><td><input name='user' autocapitalize='off'><td><input name='host' value='localhost' autocapitalize='off'><td><input type='submit' value='".lang(10)."'>\n";echo"</table>\n","</form>\n";}elseif(isset($_GET["sql"])){if(!$m&&$_POST["export"]){dump_headers("sql");$c->dumpTable("","");$c->dumpData("","table",$_POST["query"]);exit;}restart_session();$Uc=&get_session("queries");$Tc=&$Uc[DB];if(!$m&&$_POST["clear"]){$Tc=array();redirect(remove_from_uri("history"));}page_header((isset($_GET["import"])?lang(61):lang(53)),$m);if(!$m&&$_POST){$q=false;if(!isset($_GET["import"]))$I=$_POST["query"];elseif($_POST["webfile"]){$eg=$c->importServerPath();$q=@fopen((file_exists($eg)?$eg:"compress.zlib://$eg.gz"),"rb");$I=($q?fread($q,1e6):false);}else$I=get_file("sql_file",true);if(is_string($I)){if(function_exists('memory_get_usage'))@ini_set("memory_limit",max(ini_bytes("memory_limit"),2*strlen($I)+memory_get_usage()+8e6));if($I!=""&&strlen($I)<1e6){$H=$I.(preg_match("~;[ \t\r\n]*\$~",$I)?"":";");if(!$Tc||reset(end($Tc))!=$H){restart_session();$Tc[]=array($H,time());set_session("queries",$Uc);stop_session();}}$cg="(?:\\s|/\\*[\s\S]*?\\*/|(?:#|-- )[^\n]*\n?|--\r?\n)";$Cb=";";$ke=0;$Yb=true;$h=connect();if(is_object($h)&&DB!=""){$h->select_db(DB);if($_GET["ns"]!="")set_schema($_GET["ns"],$h);}$ab=0;$dc=array();$Ne='[\'"'.($y=="sql"?'`#':($y=="sqlite"?'`[':($y=="mssql"?'[':''))).']|/\*|-- |$'.($y=="pgsql"?'|\$[^$]*\$':'');$Qg=microtime(true);parse_str($_COOKIE["adminer_export"],$la);$Pb=$c->dumpFormat();unset($Pb["sql"]);while($I!=""){if(!$ke&&preg_match("~^$cg*+DELIMITER\\s+(\\S+)~i",$I,$C)){$Cb=$C[1];$I=substr($I,strlen($C[0]));}else{preg_match('('.preg_quote($Cb)."\\s*|$Ne)",$I,$C,PREG_OFFSET_CAPTURE,$ke);list($Dc,$Ze)=$C[0];if(!$Dc&&$q&&!feof($q))$I.=fread($q,1e5);else{if(!$Dc&&rtrim($I)=="")break;$ke=$Ze+strlen($Dc);if($Dc&&rtrim($Dc)!=$Cb){while(preg_match('('.($Dc=='/*'?'\*/':($Dc=='['?']':(preg_match('~^-- |^#~',$Dc)?"\n":preg_quote($Dc)."|\\\\."))).'|$)s',$I,$C,PREG_OFFSET_CAPTURE,$ke)){$If=$C[0][0];if(!$If&&$q&&!feof($q))$I.=fread($q,1e5);else{$ke=$C[0][1]+strlen($If);if($If[0]!="\\")break;}}}else{$Yb=false;$H=substr($I,0,$Ze);$ab++;$gf="<pre id='sql-$ab'><code class='jush-$y'>".$c->sqlCommandQuery($H)."</code></pre>\n";if($y=="sqlite"&&preg_match("~^$cg*+ATTACH\\b~i",$H,$C)){echo$gf,"<p class='error'>".lang(140)."\n";$dc[]=" <a href='#sql-$ab'>$ab</a>";if($_POST["error_stops"])break;}else{if(!$_POST["only_errors"]){echo$gf;ob_flush();flush();}$hg=microtime(true);if($g->multi_query($H)&&is_object($h)&&preg_match("~^$cg*+USE\\b~i",$H))$h->query($H);do{$J=$g->store_result();if($g->error){echo($_POST["only_errors"]?$gf:""),"<p class='error'>".lang(141).($g->errno?" ($g->errno)":"").": ".error()."\n";$dc[]=" <a href='#sql-$ab'>$ab</a>";if($_POST["error_stops"])break
2;}else{$Gg=" <span class='time'>(".format_time($hg).")</span>".(strlen($H)<1000?" <a href='".h(ME)."sql=".urlencode(trim($H))."'>".lang(10)."</a>":"");$na=$g->affected_rows;$zh=($_POST["only_errors"]?"":$l->warnings());$_h="warnings-$ab";if($zh)$Gg.=", <a href='#$_h'>".lang(35)."</a>".script("qsl('a').onclick = partial(toggle, '$_h');","");$lc=null;$mc="explain-$ab";if(is_object($J)){$_=$_POST["limit"];$Be=select($J,$h,array(),$_);if(!$_POST["only_errors"]){echo"<form action='' method='post'>\n";$he=$J->num_rows;echo"<p>".($he?($_&&$he>$_?lang(142,$_):"").lang(143,$he):""),$Gg;if($h&&preg_match("~^($cg|\\()*+SELECT\\b~i",$H)&&($lc=explain($h,$H)))echo", <a href='#$mc'>Explain</a>".script("qsl('a').onclick = partial(toggle, '$mc');","");$u="export-$ab";echo", <a href='#$u'>".lang(62)."</a>".script("qsl('a').onclick = partial(toggle, '$u');","")."<span id='$u' class='hidden'>: ".html_select("output",$c->dumpOutput(),$la["output"])." ".html_select("format",$Pb,$la["format"])."<input type='hidden' name='query' value='".h($H)."'>"." <input type='submit' name='export' value='".lang(62)."'><input type='hidden' name='token' value='$T'></span>\n"."</form>\n";}}else{if(preg_match("~^$cg*+(CREATE|DROP|ALTER)$cg++(DATABASE|SCHEMA)\\b~i",$H)){restart_session();set_session("dbs",null);stop_session();}if(!$_POST["only_errors"])echo"<p class='message' title='".h($g->info)."'>".lang(144,$na)."$Gg\n";}echo($zh?"<div id='$_h' class='hidden'>\n$zh</div>\n":"");if($lc){echo"<div id='$mc' class='hidden'>\n";select($lc,$h,$Be);echo"</div>\n";}}$hg=microtime(true);}while($g->next_result());}$I=substr($I,$ke);$ke=0;}}}}if($Yb)echo"<p class='message'>".lang(145)."\n";elseif($_POST["only_errors"]){echo"<p class='message'>".lang(146,$ab-count($dc))," <span class='time'>(".format_time($Qg).")</span>\n";}elseif($dc&&$ab>1)echo"<p class='error'>".lang(141).": ".implode("",$dc)."\n";}else
echo"<p class='error'>".upload_error($I)."\n";}echo'
<form action="" method="post" enctype="multipart/form-data" id="form">
';$jc="<input type='submit' value='".lang(147)."' title='Ctrl+Enter'>";if(!isset($_GET["import"])){$H=$_GET["sql"];if($_POST)$H=$_POST["query"];elseif($_GET["history"]=="all")$H=$Tc;elseif($_GET["history"]!="")$H=$Tc[$_GET["history"]][0];echo"<p>";textarea("query",$H,20);echo
script(($_POST?"":"qs('textarea').focus();\n")."qs('#form').onsubmit = partial(sqlSubmit, qs('#form'), '".js_escape(remove_from_uri("sql|limit|error_stops|only_errors|history"))."');"),"<p>$jc\n",lang(148).": <input type='number' name='limit' class='size' value='".h($_POST?$_POST["limit"]:$_GET["limit"])."'>\n";}else{echo"<fieldset><legend>".lang(149)."</legend><div>";$Mc=(extension_loaded("zlib")?"[.gz]":"");echo(ini_bool("file_uploads")?"SQL$Mc (&lt; ".ini_get("upload_max_filesize")."B): <input type='file' name='sql_file[]' multiple>\n$jc":lang(150)),"</div></fieldset>\n";$Zc=$c->importServerPath();if($Zc){echo"<fieldset><legend>".lang(151)."</legend><div>",lang(152,"<code>".h($Zc)."$Mc</code>"),' <input type="submit" name="webfile" value="'.lang(153).'">',"</div></fieldset>\n";}echo"<p>";}echo
checkbox("error_stops",1,($_POST?$_POST["error_stops"]:isset($_GET["import"])||$_GET["error_stops"]),lang(154))."\n",checkbox("only_errors",1,($_POST?$_POST["only_errors"]:isset($_GET["import"])||$_GET["only_errors"]),lang(155))."\n","<input type='hidden' name='token' value='$T'>\n";if(!isset($_GET["import"])&&$Tc){print_fieldset("history",lang(156),$_GET["history"]!="");for($X=end($Tc);$X;$X=prev($Tc)){$z=key($Tc);list($H,$Gg,$Tb)=$X;echo'<a href="'.h(ME."sql=&history=$z").'">'.lang(10)."</a>"." <span class='time' title='".@date('Y-m-d',$Gg)."'>".@date("H:i:s",$Gg)."</span>"." <code class='jush-$y'>".shorten_utf8(ltrim(str_replace("\n"," ",str_replace("\r","",preg_replace('~^(#|-- ).*~m','',$H)))),80,"</code>").($Tb?" <span class='time'>($Tb)</span>":"")."<br>\n";}echo"<input type='submit' name='clear' value='".lang(157)."'>\n","<a href='".h(ME."sql=&history=all")."'>".lang(158)."</a>\n","</div></fieldset>\n";}echo'</form>
';}elseif(isset($_GET["edit"])){$b=$_GET["edit"];$o=fields($b);$Z=(isset($_GET["select"])?($_POST["check"]&&count($_POST["check"])==1?where_check($_POST["check"][0],$o):""):where($_GET,$o));$ih=(isset($_GET["select"])?$_POST["edit"]:$Z);foreach($o
as$E=>$n){if(!isset($n["privileges"][$ih?"update":"insert"])||$c->fieldName($n)==""||$n["generated"])unset($o[$E]);}if($_POST&&!$m&&!isset($_GET["select"])){$B=$_POST["referer"];if($_POST["insert"])$B=($ih?null:$_SERVER["REQUEST_URI"]);elseif(!preg_match('~^.+&select=.+$~',$B))$B=ME."select=".urlencode($b);$x=indexes($b);$dh=unique_array($_GET["where"],$x);$pf="\nWHERE $Z";if(isset($_POST["delete"]))queries_redirect($B,lang(159),$l->delete($b,$pf,!$dh));else{$P=array();foreach($o
as$E=>$n){$X=process_input($n);if($X!==false&&$X!==null)$P[idf_escape($E)]=$X;}if($ih){if(!$P)redirect($B);queries_redirect($B,lang(160),$l->update($b,$P,$pf,!$dh));if(is_ajax()){page_headers();page_messages($m);exit;}}else{$J=$l->insert($b,$P);$xd=($J?last_id():0);queries_redirect($B,lang(161,($xd?" $xd":"")),$J);}}}$L=null;if($_POST["save"])$L=(array)$_POST["fields"];elseif($Z){$N=array();foreach($o
as$E=>$n){if(isset($n["privileges"]["select"])){$ua=convert_field($n);if($_POST["clone"]&&$n["auto_increment"])$ua="''";if($y=="sql"&&preg_match("~enum|set~",$n["type"]))$ua="1*".idf_escape($E);$N[]=($ua?"$ua AS ":"").idf_escape($E);}}$L=array();if(!support("table"))$N=array("*");if($N){$J=$l->select($b,$N,array($Z),$N,array(),(isset($_GET["select"])?2:1));if(!$J)$m=error();else{$L=$J->fetch_assoc();if(!$L)$L=false;}if(isset($_GET["select"])&&(!$L||$J->fetch_assoc()))$L=null;}}if(!support("table")&&!$o){if(!$Z){$J=$l->select($b,array("*"),$Z,array("*"));$L=($J?$J->fetch_assoc():false);if(!$L)$L=array($l->primary=>"");}if($L){foreach($L
as$z=>$X){if(!$Z)$L[$z]=null;$o[$z]=array("field"=>$z,"null"=>($z!=$l->primary),"auto_increment"=>($z==$l->primary));}}}edit_form($b,$o,$L,$ih);}elseif(isset($_GET["create"])){$b=$_GET["create"];$Oe=array();foreach(array('HASH','LINEAR HASH','KEY','LINEAR KEY','RANGE','LIST')as$z)$Oe[$z]=$z;$vf=referencable_primary($b);$Bc=array();foreach($vf
as$ug=>$n)$Bc[str_replace("`","``",$ug)."`".str_replace("`","``",$n["field"])]=$ug;$Ee=array();$R=array();if($b!=""){$Ee=fields($b);$R=table_status($b);if(!$R)$m=lang(9);}$L=$_POST;$L["fields"]=(array)$L["fields"];if($L["auto_increment_col"])$L["fields"][$L["auto_increment_col"]]["auto_increment"]=true;if($_POST)set_adminer_settings(array("comments"=>$_POST["comments"],"defaults"=>$_POST["defaults"]));if($_POST&&!process_fields($L["fields"])&&!$m){if($_POST["drop"])queries_redirect(substr(ME,0,-1),lang(162),drop_tables(array($b)));else{$o=array();$ra=array();$mh=false;$_c=array();$De=reset($Ee);$pa=" FIRST";foreach($L["fields"]as$z=>$n){$p=$Bc[$n["type"]];$Yg=($p!==null?$vf[$p]:$n);if($n["field"]!=""){if(!$n["has_default"])$n["default"]=null;if($z==$L["auto_increment_col"])$n["auto_increment"]=true;$lf=process_field($n,$Yg);$ra[]=array($n["orig"],$lf,$pa);if(!$De||$lf!=process_field($De,$De)){$o[]=array($n["orig"],$lf,$pa);if($n["orig"]!=""||$pa)$mh=true;}if($p!==null)$_c[idf_escape($n["field"])]=($b!=""&&$y!="sqlite"?"ADD":" ").format_foreign_key(array('table'=>$Bc[$n["type"]],'source'=>array($n["field"]),'target'=>array($Yg["field"]),'on_delete'=>$n["on_delete"],));$pa=" AFTER ".idf_escape($n["field"]);}elseif($n["orig"]!=""){$mh=true;$o[]=array($n["orig"]);}if($n["orig"]!=""){$De=next($Ee);if(!$De)$pa="";}}$Qe="";if($Oe[$L["partition_by"]]){$Re=array();if($L["partition_by"]=='RANGE'||$L["partition_by"]=='LIST'){foreach(array_filter($L["partition_names"])as$z=>$X){$Y=$L["partition_values"][$z];$Re[]="\n  PARTITION ".idf_escape($X)." VALUES ".($L["partition_by"]=='RANGE'?"LESS THAN":"IN").($Y!=""?" ($Y)":" MAXVALUE");}}$Qe.="\nPARTITION BY $L[partition_by]($L[partition])".($Re?" (".implode(",",$Re)."\n)":($L["partitions"]?" PARTITIONS ".(+$L["partitions"]):""));}elseif(support("partitioning")&&preg_match("~partitioned~",$R["Create_options"]))$Qe.="\nREMOVE PARTITIONING";$D=lang(163);if($b==""){cookie("adminer_engine",$L["Engine"]);$D=lang(164);}$E=trim($L["name"]);queries_redirect(ME.(support("table")?"table=":"select=").urlencode($E),$D,alter_table($b,$E,($y=="sqlite"&&($mh||$_c)?$ra:$o),$_c,($L["Comment"]!=$R["Comment"]?$L["Comment"]:null),($L["Engine"]&&$L["Engine"]!=$R["Engine"]?$L["Engine"]:""),($L["Collation"]&&$L["Collation"]!=$R["Collation"]?$L["Collation"]:""),($L["Auto_increment"]!=""?number($L["Auto_increment"]):""),$Qe));}}page_header(($b!=""?lang(33):lang(63)),$m,array("table"=>$b),h($b));if(!$_POST){$L=array("Engine"=>$_COOKIE["adminer_engine"],"fields"=>array(array("field"=>"","type"=>(isset($ah["int"])?"int":(isset($ah["integer"])?"integer":"")),"on_update"=>"")),"partition_names"=>array(""),);if($b!=""){$L=$R;$L["name"]=$b;$L["fields"]=array();if(!$_GET["auto_increment"])$L["Auto_increment"]="";foreach($Ee
as$n){$n["has_default"]=isset($n["default"]);$L["fields"][]=$n;}if(support("partitioning")){$Fc="FROM information_schema.PARTITIONS WHERE TABLE_SCHEMA = ".q(DB)." AND TABLE_NAME = ".q($b);$J=$g->query("SELECT PARTITION_METHOD, PARTITION_ORDINAL_POSITION, PARTITION_EXPRESSION $Fc ORDER BY PARTITION_ORDINAL_POSITION DESC LIMIT 1");list($L["partition_by"],$L["partitions"],$L["partition"])=$J->fetch_row();$Re=get_key_vals("SELECT PARTITION_NAME, PARTITION_DESCRIPTION $Fc AND PARTITION_NAME != '' ORDER BY PARTITION_ORDINAL_POSITION");$Re[""]="";$L["partition_names"]=array_keys($Re);$L["partition_values"]=array_values($Re);}}}$Xa=collations();$ac=engines();foreach($ac
as$Zb){if(!strcasecmp($Zb,$L["Engine"])){$L["Engine"]=$Zb;break;}}echo'
<form action="" method="post" id="form">
<p>
';if(support("columns")||$b==""){echo
lang(165),': <input name="name" data-maxlength="64" value="',h($L["name"]),'" autocapitalize="off">
';if($b==""&&!$_POST)echo
script("focus(qs('#form')['name']);");echo($ac?"<select name='Engine'>".optionlist(array(""=>"(".lang(166).")")+$ac,$L["Engine"])."</select>".on_help("getTarget(event).value",1).script("qsl('select').onchange = helpClose;"):""),' ',($Xa&&!preg_match("~sqlite|mssql~",$y)?html_select("Collation",array(""=>"(".lang(95).")")+$Xa,$L["Collation"]):""),' <input type="submit" value="',lang(14),'">
';}echo'
';if(support("columns")){echo'<div class="scrollable">
<table cellspacing="0" id="edit-fields" class="nowrap">
';edit_fields($L["fields"],$Xa,"TABLE",$Bc);echo'</table>
',script("editFields();"),'</div>
<p>
',lang(40),': <input type="number" name="Auto_increment" size="6" value="',h($L["Auto_increment"]),'">
',checkbox("defaults",1,($_POST?$_POST["defaults"]:adminer_setting("defaults")),lang(167),"columnShow(this.checked, 5)","jsonly"),(support("comment")?checkbox("comments",1,($_POST?$_POST["comments"]:adminer_setting("comments")),lang(39),"editingCommentsClick(this, true);","jsonly").' <input name="Comment" value="'.h($L["Comment"]).'" data-maxlength="'.(min_version(5.5)?2048:60).'">':''),'<p>
<input type="submit" value="',lang(14),'">
';}echo'
';if($b!=""){echo'<input type="submit" name="drop" value="',lang(121),'">',confirm(lang(168,$b));}if(support("partitioning")){$Pe=preg_match('~RANGE|LIST~',$L["partition_by"]);print_fieldset("partition",lang(169),$L["partition_by"]);echo'<p>
',"<select name='partition_by'>".optionlist(array(""=>"")+$Oe,$L["partition_by"])."</select>".on_help("getTarget(event).value.replace(/./, 'PARTITION BY \$&')",1).script("qsl('select').onchange = partitionByChange;"),'(<input name="partition" value="',h($L["partition"]),'">)
',lang(170),': <input type="number" name="partitions" class="size',($Pe||!$L["partition_by"]?" hidden":""),'" value="',h($L["partitions"]),'">
<table cellspacing="0" id="partition-table"',($Pe?"":" class='hidden'"),'>
<thead><tr><th>',lang(171),'<th>',lang(172),'</thead>
';foreach($L["partition_names"]as$z=>$X){echo'<tr>','<td><input name="partition_names[]" value="'.h($X).'" autocapitalize="off">',($z==count($L["partition_names"])-1?script("qsl('input').oninput = partitionNameChange;"):''),'<td><input name="partition_values[]" value="'.h($L["partition_values"][$z]).'">';}echo'</table>
</div></fieldset>
';}echo'<input type="hidden" name="token" value="',$T,'">
</form>
';}elseif(isset($_GET["indexes"])){$b=$_GET["indexes"];$bd=array("PRIMARY","UNIQUE","INDEX");$R=table_status($b,true);if(preg_match('~MyISAM|M?aria'.(min_version(5.6,'10.0.5')?'|InnoDB':'').'~i',$R["Engine"]))$bd[]="FULLTEXT";if(preg_match('~MyISAM|M?aria'.(min_version(5.7,'10.2.2')?'|InnoDB':'').'~i',$R["Engine"]))$bd[]="SPATIAL";$x=indexes($b);$ff=array();if($y=="mongo"){$ff=$x["_id_"];unset($bd[0]);unset($x["_id_"]);}$L=$_POST;if($_POST&&!$m&&!$_POST["add"]&&!$_POST["drop_col"]){$sa=array();foreach($L["indexes"]as$w){$E=$w["name"];if(in_array($w["type"],$bd)){$e=array();$Cd=array();$Eb=array();$P=array();ksort($w["columns"]);foreach($w["columns"]as$z=>$d){if($d!=""){$Bd=$w["lengths"][$z];$Db=$w["descs"][$z];$P[]=idf_escape($d).($Bd?"(".(+$Bd).")":"").($Db?" DESC":"");$e[]=$d;$Cd[]=($Bd?$Bd:null);$Eb[]=$Db;}}if($e){$kc=$x[$E];if($kc){ksort($kc["columns"]);ksort($kc["lengths"]);ksort($kc["descs"]);if($w["type"]==$kc["type"]&&array_values($kc["columns"])===$e&&(!$kc["lengths"]||array_values($kc["lengths"])===$Cd)&&array_values($kc["descs"])===$Eb){unset($x[$E]);continue;}}$sa[]=array($w["type"],$E,$P);}}}foreach($x
as$E=>$kc)$sa[]=array($kc["type"],$E,"DROP");if(!$sa)redirect(ME."table=".urlencode($b));queries_redirect(ME."table=".urlencode($b),lang(173),alter_indexes($b,$sa));}page_header(lang(125),$m,array("table"=>$b),h($b));$o=array_keys(fields($b));if($_POST["add"]){foreach($L["indexes"]as$z=>$w){if($w["columns"][count($w["columns"])]!="")$L["indexes"][$z]["columns"][]="";}$w=end($L["indexes"]);if($w["type"]||array_filter($w["columns"],'strlen'))$L["indexes"][]=array("columns"=>array(1=>""));}if(!$L){foreach($x
as$z=>$w){$x[$z]["name"]=$z;$x[$z]["columns"][]="";}$x[]=array("columns"=>array(1=>""));$L["indexes"]=$x;}echo'
<form action="" method="post">
<div class="scrollable">
<table cellspacing="0" class="nowrap">
<thead><tr>
<th id="label-type">',lang(174),'<th><input type="submit" class="wayoff">',lang(175),'<th id="label-name">',lang(176),'<th><noscript>',"<input type='image' class='icon' name='add[0]' src='".h(preg_replace("~\\?.*~","",ME)."?file=plus.gif&version=4.8.1")."' alt='+' title='".lang(102)."'>",'</noscript>
</thead>
';if($ff){echo"<tr><td>PRIMARY<td>";foreach($ff["columns"]as$z=>$d){echo
select_input(" disabled",$o,$d),"<label><input disabled type='checkbox'>".lang(48)."</label> ";}echo"<td><td>\n";}$nd=1;foreach($L["indexes"]as$w){if(!$_POST["drop_col"]||$nd!=key($_POST["drop_col"])){echo"<tr><td>".html_select("indexes[$nd][type]",array(-1=>"")+$bd,$w["type"],($nd==count($L["indexes"])?"indexesAddRow.call(this);":1),"label-type"),"<td>";ksort($w["columns"]);$t=1;foreach($w["columns"]as$z=>$d){echo"<span>".select_input(" name='indexes[$nd][columns][$t]' title='".lang(37)."'",($o?array_combine($o,$o):$o),$d,"partial(".($t==count($w["columns"])?"indexesAddColumn":"indexesChangeColumn").", '".js_escape($y=="sql"?"":$_GET["indexes"]."_")."')"),($y=="sql"||$y=="mssql"?"<input type='number' name='indexes[$nd][lengths][$t]' class='size' value='".h($w["lengths"][$z])."' title='".lang(100)."'>":""),(support("descidx")?checkbox("indexes[$nd][descs][$t]",1,$w["descs"][$z],lang(48)):"")," </span>";$t++;}echo"<td><input name='indexes[$nd][name]' value='".h($w["name"])."' autocapitalize='off' aria-labelledby='label-name'>\n","<td><input type='image' class='icon' name='drop_col[$nd]' src='".h(preg_replace("~\\?.*~","",ME)."?file=cross.gif&version=4.8.1")."' alt='x' title='".lang(105)."'>".script("qsl('input').onclick = partial(editingRemoveRow, 'indexes\$1[type]');");}$nd++;}echo'</table>
</div>
<p>
<input type="submit" value="',lang(14),'">
<input type="hidden" name="token" value="',$T,'">
</form>
';}elseif(isset($_GET["database"])){$L=$_POST;if($_POST&&!$m&&!isset($_POST["add_x"])){$E=trim($L["name"]);if($_POST["drop"]){$_GET["db"]="";queries_redirect(remove_from_uri("db|database"),lang(177),drop_databases(array(DB)));}elseif(DB!==$E){if(DB!=""){$_GET["db"]=$E;queries_redirect(preg_replace('~\bdb=[^&]*&~','',ME)."db=".urlencode($E),lang(178),rename_database($E,$L["collation"]));}else{$j=explode("\n",str_replace("\r","",$E));$og=true;$wd="";foreach($j
as$k){if(count($j)==1||$k!=""){if(!create_database($k,$L["collation"]))$og=false;$wd=$k;}}restart_session();set_session("dbs",null);queries_redirect(ME."db=".urlencode($wd),lang(179),$og);}}else{if(!$L["collation"])redirect(substr(ME,0,-1));query_redirect("ALTER DATABASE ".idf_escape($E).(preg_match('~^[a-z0-9_]+$~i',$L["collation"])?" COLLATE $L[collation]":""),substr(ME,0,-1),lang(180));}}page_header(DB!=""?lang(56):lang(109),$m,array(),h(DB));$Xa=collations();$E=DB;if($_POST)$E=$L["name"];elseif(DB!="")$L["collation"]=db_collation(DB,$Xa);elseif($y=="sql"){foreach(get_vals("SHOW GRANTS")as$Hc){if(preg_match('~ ON (`(([^\\\\`]|``|\\\\.)*)%`\.\*)?~',$Hc,$C)&&$C[1]){$E=stripcslashes(idf_unescape("`$C[2]`"));break;}}}echo'
<form action="" method="post">
<p>
',($_POST["add_x"]||strpos($E,"\n")?'<textarea id="name" name="name" rows="10" cols="40">'.h($E).'</textarea><br>':'<input name="name" id="name" value="'.h($E).'" data-maxlength="64" autocapitalize="off">')."\n".($Xa?html_select("collation",array(""=>"(".lang(95).")")+$Xa,$L["collation"]).doc_link(array('sql'=>"charset-charsets.html",'mariadb'=>"supported-character-sets-and-collations/",)):""),script("focus(qs('#name'));"),'<input type="submit" value="',lang(14),'">
';if(DB!="")echo"<input type='submit' name='drop' value='".lang(121)."'>".confirm(lang(168,DB))."\n";elseif(!$_POST["add_x"]&&$_GET["db"]=="")echo"<input type='image' class='icon' name='add' src='".h(preg_replace("~\\?.*~","",ME)."?file=plus.gif&version=4.8.1")."' alt='+' title='".lang(102)."'>\n";echo'<input type="hidden" name="token" value="',$T,'">
</form>
';}elseif(isset($_GET["call"])){$ca=($_GET["name"]?$_GET["name"]:$_GET["call"]);page_header(lang(181).": ".h($ca),$m);$Ff=routine($_GET["call"],(isset($_GET["callf"])?"FUNCTION":"PROCEDURE"));$ad=array();$He=array();foreach($Ff["fields"]as$t=>$n){if(substr($n["inout"],-3)=="OUT")$He[$t]="@".idf_escape($n["field"])." AS ".idf_escape($n["field"]);if(!$n["inout"]||substr($n["inout"],0,2)=="IN")$ad[]=$t;}if(!$m&&$_POST){$Ja=array();foreach($Ff["fields"]as$z=>$n){if(in_array($z,$ad)){$X=process_input($n);if($X===false)$X="''";if(isset($He[$z]))$g->query("SET @".idf_escape($n["field"])." = $X");}$Ja[]=(isset($He[$z])?"@".idf_escape($n["field"]):$X);}$I=(isset($_GET["callf"])?"SELECT":"CALL")." ".table($ca)."(".implode(", ",$Ja).")";$hg=microtime(true);$J=$g->multi_query($I);$na=$g->affected_rows;echo$c->selectQuery($I,$hg,!$J);if(!$J)echo"<p class='error'>".error()."\n";else{$h=connect();if(is_object($h))$h->select_db(DB);do{$J=$g->store_result();if(is_object($J))select($J,$h);else
echo"<p class='message'>".lang(182,$na)." <span class='time'>".@date("H:i:s")."</span>\n";}while($g->next_result());if($He)select($g->query("SELECT ".implode(", ",$He)));}}echo'
<form action="" method="post">
';if($ad){echo"<table cellspacing='0' class='layout'>\n";foreach($ad
as$z){$n=$Ff["fields"][$z];$E=$n["field"];echo"<tr><th>".$c->fieldName($n);$Y=$_POST["fields"][$E];if($Y!=""){if($n["type"]=="enum")$Y=+$Y;if($n["type"]=="set")$Y=array_sum($Y);}input($n,$Y,(string)$_POST["function"][$E]);echo"\n";}echo"</table>\n";}echo'<p>
<input type="submit" value="',lang(181),'">
<input type="hidden" name="token" value="',$T,'">
</form>
';}elseif(isset($_GET["foreign"])){$b=$_GET["foreign"];$E=$_GET["name"];$L=$_POST;if($_POST&&!$m&&!$_POST["add"]&&!$_POST["change"]&&!$_POST["change-js"]){$D=($_POST["drop"]?lang(183):($E!=""?lang(184):lang(185)));$B=ME."table=".urlencode($b);if(!$_POST["drop"]){$L["source"]=array_filter($L["source"],'strlen');ksort($L["source"]);$Ag=array();foreach($L["source"]as$z=>$X)$Ag[$z]=$L["target"][$z];$L["target"]=$Ag;}if($y=="sqlite")queries_redirect($B,$D,recreate_table($b,$b,array(),array(),array(" $E"=>($_POST["drop"]?"":" ".format_foreign_key($L)))));else{$sa="ALTER TABLE ".table($b);$Lb="\nDROP ".($y=="sql"?"FOREIGN KEY ":"CONSTRAINT ").idf_escape($E);if($_POST["drop"])query_redirect($sa.$Lb,$B,$D);else{query_redirect($sa.($E!=""?"$Lb,":"")."\nADD".format_foreign_key($L),$B,$D);$m=lang(186)."<br>$m";}}}page_header(lang(187),$m,array("table"=>$b),h($b));if($_POST){ksort($L["source"]);if($_POST["add"])$L["source"][]="";elseif($_POST["change"]||$_POST["change-js"])$L["target"]=array();}elseif($E!=""){$Bc=foreign_keys($b);$L=$Bc[$E];$L["source"][]="";}else{$L["table"]=$b;$L["source"]=array("");}echo'
<form action="" method="post">
';$bg=array_keys(fields($b));if($L["db"]!="")$g->select_db($L["db"]);if($L["ns"]!="")set_schema($L["ns"]);$uf=array_keys(array_filter(table_status('',true),'fk_support'));$Ag=array_keys(fields(in_array($L["table"],$uf)?$L["table"]:reset($uf)));$se="this.form['change-js'].value = '1'; this.form.submit();";echo"<p>".lang(188).": ".html_select("table",$uf,$L["table"],$se)."\n";if($y=="pgsql")echo
lang(189).": ".html_select("ns",$c->schemas(),$L["ns"]!=""?$L["ns"]:$_GET["ns"],$se);elseif($y!="sqlite"){$xb=array();foreach($c->databases()as$k){if(!information_schema($k))$xb[]=$k;}echo
lang(65).": ".html_select("db",$xb,$L["db"]!=""?$L["db"]:$_GET["db"],$se);}echo'<input type="hidden" name="change-js" value="">
<noscript><p><input type="submit" name="change" value="',lang(190),'"></noscript>
<table cellspacing="0">
<thead><tr><th id="label-source">',lang(127),'<th id="label-target">',lang(128),'</thead>
';$nd=0;foreach($L["source"]as$z=>$X){echo"<tr>","<td>".html_select("source[".(+$z)."]",array(-1=>"")+$bg,$X,($nd==count($L["source"])-1?"foreignAddRow.call(this);":1),"label-source"),"<td>".html_select("target[".(+$z)."]",$Ag,$L["target"][$z],1,"label-target");$nd++;}echo'</table>
<p>
',lang(97),': ',html_select("on_delete",array(-1=>"")+explode("|",$re),$L["on_delete"]),' ',lang(96),': ',html_select("on_update",array(-1=>"")+explode("|",$re),$L["on_update"]),doc_link(array('sql'=>"innodb-foreign-key-constraints.html",'mariadb'=>"foreign-keys/",)),'<p>
<input type="submit" value="',lang(14),'">
<noscript><p><input type="submit" name="add" value="',lang(191),'"></noscript>
';if($E!=""){echo'<input type="submit" name="drop" value="',lang(121),'">',confirm(lang(168,$E));}echo'<input type="hidden" name="token" value="',$T,'">
</form>
';}elseif(isset($_GET["view"])){$b=$_GET["view"];$L=$_POST;$Fe="VIEW";if($y=="pgsql"&&$b!=""){$ig=table_status($b);$Fe=strtoupper($ig["Engine"]);}if($_POST&&!$m){$E=trim($L["name"]);$ua=" AS\n$L[select]";$B=ME."table=".urlencode($E);$D=lang(192);$U=($_POST["materialized"]?"MATERIALIZED VIEW":"VIEW");if(!$_POST["drop"]&&$b==$E&&$y!="sqlite"&&$U=="VIEW"&&$Fe=="VIEW")query_redirect(($y=="mssql"?"ALTER":"CREATE OR REPLACE")." VIEW ".table($E).$ua,$B,$D);else{$Cg=$E."_adminer_".uniqid();drop_create("DROP $Fe ".table($b),"CREATE $U ".table($E).$ua,"DROP $U ".table($E),"CREATE $U ".table($Cg).$ua,"DROP $U ".table($Cg),($_POST["drop"]?substr(ME,0,-1):$B),lang(193),$D,lang(194),$b,$E);}}if(!$_POST&&$b!=""){$L=view($b);$L["name"]=$b;$L["materialized"]=($Fe!="VIEW");if(!$m)$m=error();}page_header(($b!=""?lang(32):lang(195)),$m,array("table"=>$b),h($b));echo'
<form action="" method="post">
<p>',lang(176),': <input name="name" value="',h($L["name"]),'" data-maxlength="64" autocapitalize="off">
',(support("materializedview")?" ".checkbox("materialized",1,$L["materialized"],lang(122)):""),'<p>';textarea("select",$L["select"]);echo'<p>
<input type="submit" value="',lang(14),'">
';if($b!=""){echo'<input type="submit" name="drop" value="',lang(121),'">',confirm(lang(168,$b));}echo'<input type="hidden" name="token" value="',$T,'">
</form>
';}elseif(isset($_GET["event"])){$aa=$_GET["event"];$gd=array("YEAR","QUARTER","MONTH","DAY","HOUR","MINUTE","WEEK","SECOND","YEAR_MONTH","DAY_HOUR","DAY_MINUTE","DAY_SECOND","HOUR_MINUTE","HOUR_SECOND","MINUTE_SECOND");$jg=array("ENABLED"=>"ENABLE","DISABLED"=>"DISABLE","SLAVESIDE_DISABLED"=>"DISABLE ON SLAVE");$L=$_POST;if($_POST&&!$m){if($_POST["drop"])query_redirect("DROP EVENT ".idf_escape($aa),substr(ME,0,-1),lang(196));elseif(in_array($L["INTERVAL_FIELD"],$gd)&&isset($jg[$L["STATUS"]])){$Jf="\nON SCHEDULE ".($L["INTERVAL_VALUE"]?"EVERY ".q($L["INTERVAL_VALUE"])." $L[INTERVAL_FIELD]".($L["STARTS"]?" STARTS ".q($L["STARTS"]):"").($L["ENDS"]?" ENDS ".q($L["ENDS"]):""):"AT ".q($L["STARTS"]))." ON COMPLETION".($L["ON_COMPLETION"]?"":" NOT")." PRESERVE";queries_redirect(substr(ME,0,-1),($aa!=""?lang(197):lang(198)),queries(($aa!=""?"ALTER EVENT ".idf_escape($aa).$Jf.($aa!=$L["EVENT_NAME"]?"\nRENAME TO ".idf_escape($L["EVENT_NAME"]):""):"CREATE EVENT ".idf_escape($L["EVENT_NAME"]).$Jf)."\n".$jg[$L["STATUS"]]." COMMENT ".q($L["EVENT_COMMENT"]).rtrim(" DO\n$L[EVENT_DEFINITION]",";").";"));}}page_header(($aa!=""?lang(199).": ".h($aa):lang(200)),$m);if(!$L&&$aa!=""){$M=get_rows("SELECT * FROM information_schema.EVENTS WHERE EVENT_SCHEMA = ".q(DB)." AND EVENT_NAME = ".q($aa));$L=reset($M);}echo'
<form action="" method="post">
<table cellspacing="0" class="layout">
<tr><th>',lang(176),'<td><input name="EVENT_NAME" value="',h($L["EVENT_NAME"]),'" data-maxlength="64" autocapitalize="off">
<tr><th title="datetime">',lang(201),'<td><input name="STARTS" value="',h("$L[EXECUTE_AT]$L[STARTS]"),'">
<tr><th title="datetime">',lang(202),'<td><input name="ENDS" value="',h($L["ENDS"]),'">
<tr><th>',lang(203),'<td><input type="number" name="INTERVAL_VALUE" value="',h($L["INTERVAL_VALUE"]),'" class="size"> ',html_select("INTERVAL_FIELD",$gd,$L["INTERVAL_FIELD"]),'<tr><th>',lang(112),'<td>',html_select("STATUS",$jg,$L["STATUS"]),'<tr><th>',lang(39),'<td><input name="EVENT_COMMENT" value="',h($L["EVENT_COMMENT"]),'" data-maxlength="64">
<tr><th><td>',checkbox("ON_COMPLETION","PRESERVE",$L["ON_COMPLETION"]=="PRESERVE",lang(204)),'</table>
<p>';textarea("EVENT_DEFINITION",$L["EVENT_DEFINITION"]);echo'<p>
<input type="submit" value="',lang(14),'">
';if($aa!=""){echo'<input type="submit" name="drop" value="',lang(121),'">',confirm(lang(168,$aa));}echo'<input type="hidden" name="token" value="',$T,'">
</form>
';}elseif(isset($_GET["procedure"])){$ca=($_GET["name"]?$_GET["name"]:$_GET["procedure"]);$Ff=(isset($_GET["function"])?"FUNCTION":"PROCEDURE");$L=$_POST;$L["fields"]=(array)$L["fields"];if($_POST&&!process_fields($L["fields"])&&!$m){$Ce=routine($_GET["procedure"],$Ff);$Cg="$L[name]_adminer_".uniqid();drop_create("DROP $Ff ".routine_id($ca,$Ce),create_routine($Ff,$L),"DROP $Ff ".routine_id($L["name"],$L),create_routine($Ff,array("name"=>$Cg)+$L),"DROP $Ff ".routine_id($Cg,$L),substr(ME,0,-1),lang(205),lang(206),lang(207),$ca,$L["name"]);}page_header(($ca!=""?(isset($_GET["function"])?lang(208):lang(209)).": ".h($ca):(isset($_GET["function"])?lang(210):lang(211))),$m);if(!$_POST&&$ca!=""){$L=routine($_GET["procedure"],$Ff);$L["name"]=$ca;}$Xa=get_vals("SHOW CHARACTER SET");sort($Xa);$Gf=routine_languages();echo'
<form action="" method="post" id="form">
<p>',lang(176),': <input name="name" value="',h($L["name"]),'" data-maxlength="64" autocapitalize="off">
',($Gf?lang(19).": ".html_select("language",$Gf,$L["language"])."\n":""),'<input type="submit" value="',lang(14),'">
<div class="scrollable">
<table cellspacing="0" class="nowrap">
';edit_fields($L["fields"],$Xa,$Ff);if(isset($_GET["function"])){echo"<tr><td>".lang(212);edit_type("returns",$L["returns"],$Xa,array(),($y=="pgsql"?array("void","trigger"):array()));}echo'</table>
',script("editFields();"),'</div>
<p>';textarea("definition",$L["definition"]);echo'<p>
<input type="submit" value="',lang(14),'">
';if($ca!=""){echo'<input type="submit" name="drop" value="',lang(121),'">',confirm(lang(168,$ca));}echo'<input type="hidden" name="token" value="',$T,'">
</form>
';}elseif(isset($_GET["trigger"])){$b=$_GET["trigger"];$E=$_GET["name"];$Wg=trigger_options();$L=(array)trigger($E,$b)+array("Trigger"=>$b."_bi");if($_POST){if(!$m&&in_array($_POST["Timing"],$Wg["Timing"])&&in_array($_POST["Event"],$Wg["Event"])&&in_array($_POST["Type"],$Wg["Type"])){$qe=" ON ".table($b);$Lb="DROP TRIGGER ".idf_escape($E).($y=="pgsql"?$qe:"");$B=ME."table=".urlencode($b);if($_POST["drop"])query_redirect($Lb,$B,lang(213));else{if($E!="")queries($Lb);queries_redirect($B,($E!=""?lang(214):lang(215)),queries(create_trigger($qe,$_POST)));if($E!="")queries(create_trigger($qe,$L+array("Type"=>reset($Wg["Type"]))));}}$L=$_POST;}page_header(($E!=""?lang(216).": ".h($E):lang(217)),$m,array("table"=>$b));echo'
<form action="" method="post" id="form">
<table cellspacing="0" class="layout">
<tr><th>',lang(218),'<td>',html_select("Timing",$Wg["Timing"],$L["Timing"],"triggerChange(/^".preg_quote($b,"/")."_[ba][iud]$/, '".js_escape($b)."', this.form);"),'<tr><th>',lang(219),'<td>',html_select("Event",$Wg["Event"],$L["Event"],"this.form['Timing'].onchange();"),(in_array("UPDATE OF",$Wg["Event"])?" <input name='Of' value='".h($L["Of"])."' class='hidden'>":""),'<tr><th>',lang(38),'<td>',html_select("Type",$Wg["Type"],$L["Type"]),'</table>
<p>',lang(176),': <input name="Trigger" value="',h($L["Trigger"]),'" data-maxlength="64" autocapitalize="off">
',script("qs('#form')['Timing'].onchange();"),'<p>';textarea("Statement",$L["Statement"]);echo'<p>
<input type="submit" value="',lang(14),'">
';if($E!=""){echo'<input type="submit" name="drop" value="',lang(121),'">',confirm(lang(168,$E));}echo'<input type="hidden" name="token" value="',$T,'">
</form>
';}elseif(isset($_GET["user"])){$ea=$_GET["user"];$jf=array(""=>array("All privileges"=>""));foreach(get_rows("SHOW PRIVILEGES")as$L){foreach(explode(",",($L["Privilege"]=="Grant option"?"":$L["Context"]))as$ib)$jf[$ib][$L["Privilege"]]=$L["Comment"];}$jf["Server Admin"]+=$jf["File access on server"];$jf["Databases"]["Create routine"]=$jf["Procedures"]["Create routine"];unset($jf["Procedures"]["Create routine"]);$jf["Columns"]=array();foreach(array("Select","Insert","Update","References")as$X)$jf["Columns"][$X]=$jf["Tables"][$X];unset($jf["Server Admin"]["Usage"]);foreach($jf["Tables"]as$z=>$X)unset($jf["Databases"][$z]);$be=array();if($_POST){foreach($_POST["objects"]as$z=>$X)$be[$X]=(array)$be[$X]+(array)$_POST["grants"][$z];}$Ic=array();$oe="";if(isset($_GET["host"])&&($J=$g->query("SHOW GRANTS FOR ".q($ea)."@".q($_GET["host"])))){while($L=$J->fetch_row()){if(preg_match('~GRANT (.*) ON (.*) TO ~',$L[0],$C)&&preg_match_all('~ *([^(,]*[^ ,(])( *\([^)]+\))?~',$C[1],$Jd,PREG_SET_ORDER)){foreach($Jd
as$X){if($X[1]!="USAGE")$Ic["$C[2]$X[2]"][$X[1]]=true;if(preg_match('~ WITH GRANT OPTION~',$L[0]))$Ic["$C[2]$X[2]"]["GRANT OPTION"]=true;}}if(preg_match("~ IDENTIFIED BY PASSWORD '([^']+)~",$L[0],$C))$oe=$C[1];}}if($_POST&&!$m){$pe=(isset($_GET["host"])?q($ea)."@".q($_GET["host"]):"''");if($_POST["drop"])query_redirect("DROP USER $pe",ME."privileges=",lang(220));else{$de=q($_POST["user"])."@".q($_POST["host"]);$Se=$_POST["pass"];if($Se!=''&&!$_POST["hashed"]&&!min_version(8)){$Se=$g->result("SELECT PASSWORD(".q($Se).")");$m=!$Se;}$mb=false;if(!$m){if($pe!=$de){$mb=queries((min_version(5)?"CREATE USER":"GRANT USAGE ON *.* TO")." $de IDENTIFIED BY ".(min_version(8)?"":"PASSWORD ").q($Se));$m=!$mb;}elseif($Se!=$oe)queries("SET PASSWORD FOR $de = ".q($Se));}if(!$m){$Cf=array();foreach($be
as$je=>$Hc){if(isset($_GET["grant"]))$Hc=array_filter($Hc);$Hc=array_keys($Hc);if(isset($_GET["grant"]))$Cf=array_diff(array_keys(array_filter($be[$je],'strlen')),$Hc);elseif($pe==$de){$me=array_keys((array)$Ic[$je]);$Cf=array_diff($me,$Hc);$Hc=array_diff($Hc,$me);unset($Ic[$je]);}if(preg_match('~^(.+)\s*(\(.*\))?$~U',$je,$C)&&(!grant("REVOKE",$Cf,$C[2]," ON $C[1] FROM $de")||!grant("GRANT",$Hc,$C[2]," ON $C[1] TO $de"))){$m=true;break;}}}if(!$m&&isset($_GET["host"])){if($pe!=$de)queries("DROP USER $pe");elseif(!isset($_GET["grant"])){foreach($Ic
as$je=>$Cf){if(preg_match('~^(.+)(\(.*\))?$~U',$je,$C))grant("REVOKE",array_keys($Cf),$C[2]," ON $C[1] FROM $de");}}}queries_redirect(ME."privileges=",(isset($_GET["host"])?lang(221):lang(222)),!$m);if($mb)$g->query("DROP USER $de");}}page_header((isset($_GET["host"])?lang(24).": ".h("$ea@$_GET[host]"):lang(139)),$m,array("privileges"=>array('',lang(60))));if($_POST){$L=$_POST;$Ic=$be;}else{$L=$_GET+array("host"=>$g->result("SELECT SUBSTRING_INDEX(CURRENT_USER, '@', -1)"));$L["pass"]=$oe;if($oe!="")$L["hashed"]=true;$Ic[(DB==""||$Ic?"":idf_escape(addcslashes(DB,"%_\\"))).".*"]=array();}echo'<form action="" method="post">
<table cellspacing="0" class="layout">
<tr><th>',lang(23),'<td><input name="host" data-maxlength="60" value="',h($L["host"]),'" autocapitalize="off">
<tr><th>',lang(24),'<td><input name="user" data-maxlength="80" value="',h($L["user"]),'" autocapitalize="off">
<tr><th>',lang(25),'<td><input name="pass" id="pass" value="',h($L["pass"]),'" autocomplete="new-password">
';if(!$L["hashed"])echo
script("typePassword(qs('#pass'));");echo(min_version(8)?"":checkbox("hashed",1,$L["hashed"],lang(223),"typePassword(this.form['pass'], this.checked);")),'</table>

';echo"<table cellspacing='0'>\n","<thead><tr><th colspan='2'>".lang(60).doc_link(array('sql'=>"grant.html#priv_level"));$t=0;foreach($Ic
as$je=>$Hc){echo'<th>'.($je!="*.*"?"<input name='objects[$t]' value='".h($je)."' size='10' autocapitalize='off'>":"<input type='hidden' name='objects[$t]' value='*.*' size='10'>*.*");$t++;}echo"</thead>\n";foreach(array(""=>"","Server Admin"=>lang(23),"Databases"=>lang(26),"Tables"=>lang(124),"Columns"=>lang(37),"Procedures"=>lang(224),)as$ib=>$Db){foreach((array)$jf[$ib]as$if=>$bb){echo"<tr".odd()."><td".($Db?">$Db<td":" colspan='2'").' lang="en" title="'.h($bb).'">'.h($if);$t=0;foreach($Ic
as$je=>$Hc){$E="'grants[$t][".h(strtoupper($if))."]'";$Y=$Hc[strtoupper($if)];if($ib=="Server Admin"&&$je!=(isset($Ic["*.*"])?"*.*":".*"))echo"<td>";elseif(isset($_GET["grant"]))echo"<td><select name=$E><option><option value='1'".($Y?" selected":"").">".lang(225)."<option value='0'".($Y=="0"?" selected":"").">".lang(226)."</select>";else{echo"<td align='center'><label class='block'>","<input type='checkbox' name=$E value='1'".($Y?" checked":"").($if=="All privileges"?" id='grants-$t-all'>":">".($if=="Grant option"?"":script("qsl('input').onclick = function () { if (this.checked) formUncheck('grants-$t-all'); };"))),"</label>";}$t++;}}}echo"</table>\n",'<p>
<input type="submit" value="',lang(14),'">
';if(isset($_GET["host"])){echo'<input type="submit" name="drop" value="',lang(121),'">',confirm(lang(168,"$ea@$_GET[host]"));}echo'<input type="hidden" name="token" value="',$T,'">
</form>
';}elseif(isset($_GET["processlist"])){if(support("kill")){if($_POST&&!$m){$rd=0;foreach((array)$_POST["kill"]as$X){if(kill_process($X))$rd++;}queries_redirect(ME."processlist=",lang(227,$rd),$rd||!$_POST["kill"]);}}page_header(lang(110),$m);echo'
<form action="" method="post">
<div class="scrollable">
<table cellspacing="0" class="nowrap checkable">
',script("mixin(qsl('table'), {onclick: tableClick, ondblclick: partialArg(tableClick, true)});");$t=-1;foreach(process_list()as$t=>$L){if(!$t){echo"<thead><tr lang='en'>".(support("kill")?"<th>":"");foreach($L
as$z=>$X)echo"<th>$z".doc_link(array('sql'=>"show-processlist.html#processlist_".strtolower($z),));echo"</thead>\n";}echo"<tr".odd().">".(support("kill")?"<td>".checkbox("kill[]",$L[$y=="sql"?"Id":"pid"],0):"");foreach($L
as$z=>$X)echo"<td>".(($y=="sql"&&$z=="Info"&&preg_match("~Query|Killed~",$L["Command"])&&$X!="")||($y=="pgsql"&&$z=="current_query"&&$X!="<IDLE>")||($y=="oracle"&&$z=="sql_text"&&$X!="")?"<code class='jush-$y'>".shorten_utf8($X,100,"</code>").' <a href="'.h(ME.($L["db"]!=""?"db=".urlencode($L["db"])."&":"")."sql=".urlencode($X)).'">'.lang(228).'</a>':h($X));echo"\n";}echo'</table>
</div>
<p>
';if(support("kill")){echo($t+1)."/".lang(229,max_connections()),"<p><input type='submit' value='".lang(230)."'>\n";}echo'<input type="hidden" name="token" value="',$T,'">
</form>
',script("tableCheck();");}elseif(isset($_GET["select"])){$b=$_GET["select"];$R=table_status1($b);$x=indexes($b);$o=fields($b);$Bc=column_foreign_keys($b);$le=$R["Oid"];parse_str($_COOKIE["adminer_import"],$ma);$Df=array();$e=array();$Fg=null;foreach($o
as$z=>$n){$E=$c->fieldName($n);if(isset($n["privileges"]["select"])&&$E!=""){$e[$z]=html_entity_decode(strip_tags($E),ENT_QUOTES);if(is_shortable($n))$Fg=$c->selectLengthProcess();}$Df+=$n["privileges"];}list($N,$s)=$c->selectColumnsProcess($e,$x);$kd=count($s)<count($N);$Z=$c->selectSearchProcess($o,$x);$ze=$c->selectOrderProcess($o,$x);$_=$c->selectLimitProcess();if($_GET["val"]&&is_ajax()){header("Content-Type: text/plain; charset=utf-8");foreach($_GET["val"]as$eh=>$L){$ua=convert_field($o[key($L)]);$N=array($ua?$ua:idf_escape(key($L)));$Z[]=where_check($eh,$o);$K=$l->select($b,$N,$Z,$N);if($K)echo
reset($K->fetch_row());}exit;}$ff=$gh=null;foreach($x
as$w){if($w["type"]=="PRIMARY"){$ff=array_flip($w["columns"]);$gh=($N?$ff:array());foreach($gh
as$z=>$X){if(in_array(idf_escape($z),$N))unset($gh[$z]);}break;}}if($le&&!$ff){$ff=$gh=array($le=>0);$x[]=array("type"=>"PRIMARY","columns"=>array($le));}if($_POST&&!$m){$Bh=$Z;if(!$_POST["all"]&&is_array($_POST["check"])){$Oa=array();foreach($_POST["check"]as$Ma)$Oa[]=where_check($Ma,$o);$Bh[]="((".implode(") OR (",$Oa)."))";}$Bh=($Bh?"\nWHERE ".implode(" AND ",$Bh):"");if($_POST["export"]){cookie("adminer_import","output=".urlencode($_POST["output"])."&format=".urlencode($_POST["format"]));dump_headers($b);$c->dumpTable($b,"");$Fc=($N?implode(", ",$N):"*").convert_fields($e,$o,$N)."\nFROM ".table($b);$Kc=($s&&$kd?"\nGROUP BY ".implode(", ",$s):"").($ze?"\nORDER BY ".implode(", ",$ze):"");if(!is_array($_POST["check"])||$ff)$I="SELECT $Fc$Bh$Kc";else{$ch=array();foreach($_POST["check"]as$X)$ch[]="(SELECT".limit($Fc,"\nWHERE ".($Z?implode(" AND ",$Z)." AND ":"").where_check($X,$o).$Kc,1).")";$I=implode(" UNION ALL ",$ch);}$c->dumpData($b,"table",$I);exit;}if(!$c->selectEmailProcess($Z,$Bc)){if($_POST["save"]||$_POST["delete"]){$J=true;$na=0;$P=array();if(!$_POST["delete"]){foreach($e
as$E=>$X){$X=process_input($o[$E]);if($X!==null&&($_POST["clone"]||$X!==false))$P[idf_escape($E)]=($X!==false?$X:idf_escape($E));}}if($_POST["delete"]||$P){if($_POST["clone"])$I="INTO ".table($b)." (".implode(", ",array_keys($P)).")\nSELECT ".implode(", ",$P)."\nFROM ".table($b);if($_POST["all"]||($ff&&is_array($_POST["check"]))||$kd){$J=($_POST["delete"]?$l->delete($b,$Bh):($_POST["clone"]?queries("INSERT $I$Bh"):$l->update($b,$P,$Bh)));$na=$g->affected_rows;}else{foreach((array)$_POST["check"]as$X){$Ah="\nWHERE ".($Z?implode(" AND ",$Z)." AND ":"").where_check($X,$o);$J=($_POST["delete"]?$l->delete($b,$Ah,1):($_POST["clone"]?queries("INSERT".limit1($b,$I,$Ah)):$l->update($b,$P,$Ah,1)));if(!$J)break;$na+=$g->affected_rows;}}}$D=lang(231,$na);if($_POST["clone"]&&$J&&$na==1){$xd=last_id();if($xd)$D=lang(161," $xd");}queries_redirect(remove_from_uri($_POST["all"]&&$_POST["delete"]?"page":""),$D,$J);if(!$_POST["delete"]){edit_form($b,$o,(array)$_POST["fields"],!$_POST["clone"]);page_footer();exit;}}elseif(!$_POST["import"]){if(!$_POST["val"])$m=lang(232);else{$J=true;$na=0;foreach($_POST["val"]as$eh=>$L){$P=array();foreach($L
as$z=>$X){$z=bracket_escape($z,1);$P[idf_escape($z)]=(preg_match('~char|text~',$o[$z]["type"])||$X!=""?$c->processInput($o[$z],$X):"NULL");}$J=$l->update($b,$P," WHERE ".($Z?implode(" AND ",$Z)." AND ":"").where_check($eh,$o),!$kd&&!$ff," ");if(!$J)break;$na+=$g->affected_rows;}queries_redirect(remove_from_uri(),lang(231,$na),$J);}}elseif(!is_string($uc=get_file("csv_file",true)))$m=upload_error($uc);elseif(!preg_match('~~u',$uc))$m=lang(233);else{cookie("adminer_import","output=".urlencode($ma["output"])."&format=".urlencode($_POST["separator"]));$J=true;$Ya=array_keys($o);preg_match_all('~(?>"[^"]*"|[^"\r\n]+)+~',$uc,$Jd);$na=count($Jd[0]);$l->begin();$Rf=($_POST["separator"]=="csv"?",":($_POST["separator"]=="tsv"?"\t":";"));$M=array();foreach($Jd[0]as$z=>$X){preg_match_all("~((?>\"[^\"]*\")+|[^$Rf]*)$Rf~",$X.$Rf,$Kd);if(!$z&&!array_diff($Kd[1],$Ya)){$Ya=$Kd[1];$na--;}else{$P=array();foreach($Kd[1]as$t=>$Ua)$P[idf_escape($Ya[$t])]=($Ua==""&&$o[$Ya[$t]]["null"]?"NULL":q(str_replace('""','"',preg_replace('~^"|"$~','',$Ua))));$M[]=$P;}}$J=(!$M||$l->insertUpdate($b,$M,$ff));if($J)$J=$l->commit();queries_redirect(remove_from_uri("page"),lang(234,$na),$J);$l->rollback();}}}$ug=$c->tableName($R);if(is_ajax()){page_headers();ob_start();}else
page_header(lang(42).": $ug",$m);$P=null;if(isset($Df["insert"])||!support("table")){$P="";foreach((array)$_GET["where"]as$X){if($Bc[$X["col"]]&&count($Bc[$X["col"]])==1&&($X["op"]=="="||(!$X["op"]&&!preg_match('~[_%]~',$X["val"]))))$P.="&set".urlencode("[".bracket_escape($X["col"])."]")."=".urlencode($X["val"]);}}$c->selectLinks($R,$P);if(!$e&&support("table"))echo"<p class='error'>".lang(235).($o?".":": ".error())."\n";else{echo"<form action='' id='form'>\n","<div style='display: none;'>";hidden_fields_get();echo(DB!=""?'<input type="hidden" name="db" value="'.h(DB).'">'.(isset($_GET["ns"])?'<input type="hidden" name="ns" value="'.h($_GET["ns"]).'">':""):"");echo'<input type="hidden" name="select" value="'.h($b).'">',"</div>\n";$c->selectColumnsPrint($N,$e);$c->selectSearchPrint($Z,$e,$x);$c->selectOrderPrint($ze,$e,$x);$c->selectLimitPrint($_);$c->selectLengthPrint($Fg);$c->selectActionPrint($x);echo"</form>\n";$F=$_GET["page"];if($F=="last"){$Ec=$g->result(count_rows($b,$Z,$kd,$s));$F=floor(max(0,$Ec-1)/$_);}$Mf=$N;$Jc=$s;if(!$Mf){$Mf[]="*";$jb=convert_fields($e,$o,$N);if($jb)$Mf[]=substr($jb,2);}foreach($N
as$z=>$X){$n=$o[idf_unescape($X)];if($n&&($ua=convert_field($n)))$Mf[$z]="$ua AS $X";}if(!$kd&&$gh){foreach($gh
as$z=>$X){$Mf[]=idf_escape($z);if($Jc)$Jc[]=idf_escape($z);}}$J=$l->select($b,$Mf,$Z,$Jc,$ze,$_,$F,true);if(!$J)echo"<p class='error'>".error()."\n";else{if($y=="mssql"&&$F)$J->seek($_*$F);$Xb=array();echo"<form action='' method='post' enctype='multipart/form-data'>\n";$M=array();while($L=$J->fetch_assoc()){if($F&&$y=="oracle")unset($L["RNUM"]);$M[]=$L;}if($_GET["page"]!="last"&&$_!=""&&$s&&$kd&&$y=="sql")$Ec=$g->result(" SELECT FOUND_ROWS()");if(!$M)echo"<p class='message'>".lang(12)."\n";else{$Ba=$c->backwardKeys($b,$ug);echo"<div class='scrollable'>","<table id='table' cellspacing='0' class='nowrap checkable'>",script("mixin(qs('#table'), {onclick: tableClick, ondblclick: partialArg(tableClick, true), onkeydown: editingKeydown});"),"<thead><tr>".(!$s&&$N?"":"<td><input type='checkbox' id='all-page' class='jsonly'>".script("qs('#all-page').onclick = partial(formCheck, /check/);","")." <a href='".h($_GET["modify"]?remove_from_uri("modify"):$_SERVER["REQUEST_URI"]."&modify=1")."'>".lang(236)."</a>");$ae=array();$Gc=array();reset($N);$rf=1;foreach($M[0]as$z=>$X){if(!isset($gh[$z])){$X=$_GET["columns"][key($N)];$n=$o[$N?($X?$X["col"]:current($N)):$z];$E=($n?$c->fieldName($n,$rf):($X["fun"]?"*":$z));if($E!=""){$rf++;$ae[$z]=$E;$d=idf_escape($z);$Wc=remove_from_uri('(order|desc)[^=]*|page').'&order%5B0%5D='.urlencode($z);$Db="&desc%5B0%5D=1";echo"<th id='th[".h(bracket_escape($z))."]'>".script("mixin(qsl('th'), {onmouseover: partial(columnMouse), onmouseout: partial(columnMouse, ' hidden')});",""),'<a href="'.h($Wc.($ze[0]==$d||$ze[0]==$z||(!$ze&&$kd&&$s[0]==$d)?$Db:'')).'">';echo
apply_sql_function($X["fun"],$E)."</a>";echo"<span class='column hidden'>","<a href='".h($Wc.$Db)."' title='".lang(48)."' class='text'> </a>";if(!$X["fun"]){echo'<a href="#fieldset-search" title="'.lang(45).'" class="text jsonly"> =</a>',script("qsl('a').onclick = partial(selectSearch, '".js_escape($z)."');");}echo"</span>";}$Gc[$z]=$X["fun"];next($N);}}$Cd=array();if($_GET["modify"]){foreach($M
as$L){foreach($L
as$z=>$X)$Cd[$z]=max($Cd[$z],min(40,strlen(utf8_decode($X))));}}echo($Ba?"<th>".lang(237):"")."</thead>\n";if(is_ajax()){if($_%2==1&&$F%2==1)odd();ob_end_clean();}foreach($c->rowDescriptions($M,$Bc)as$Zd=>$L){$dh=unique_array($M[$Zd],$x);if(!$dh){$dh=array();foreach($M[$Zd]as$z=>$X){if(!preg_match('~^(COUNT\((\*|(DISTINCT )?`(?:[^`]|``)+`)\)|(AVG|GROUP_CONCAT|MAX|MIN|SUM)\(`(?:[^`]|``)+`\))$~',$z))$dh[$z]=$X;}}$eh="";foreach($dh
as$z=>$X){if(($y=="sql"||$y=="pgsql")&&preg_match('~char|text|enum|set~',$o[$z]["type"])&&strlen($X)>64){$z=(strpos($z,'(')?$z:idf_escape($z));$z="MD5(".($y!='sql'||preg_match("~^utf8~",$o[$z]["collation"])?$z:"CONVERT($z USING ".charset($g).")").")";$X=md5($X);}$eh.="&".($X!==null?urlencode("where[".bracket_escape($z)."]")."=".urlencode($X):"null%5B%5D=".urlencode($z));}echo"<tr".odd().">".(!$s&&$N?"":"<td>".checkbox("check[]",substr($eh,1),in_array(substr($eh,1),(array)$_POST["check"])).($kd||information_schema(DB)?"":" <a href='".h(ME."edit=".urlencode($b).$eh)."' class='edit'>".lang(238)."</a>"));foreach($L
as$z=>$X){if(isset($ae[$z])){$n=$o[$z];$X=$l->value($X,$n);if($X!=""&&(!isset($Xb[$z])||$Xb[$z]!=""))$Xb[$z]=(is_mail($X)?$ae[$z]:"");$A="";if(preg_match('~blob|bytea|raw|file~',$n["type"])&&$X!="")$A=ME.'download='.urlencode($b).'&field='.urlencode($z).$eh;if(!$A&&$X!==null){foreach((array)$Bc[$z]as$p){if(count($Bc[$z])==1||end($p["source"])==$z){$A="";foreach($p["source"]as$t=>$bg)$A.=where_link($t,$p["target"][$t],$M[$Zd][$bg]);$A=($p["db"]!=""?preg_replace('~([?&]db=)[^&]+~','\1'.urlencode($p["db"]),ME):ME).'select='.urlencode($p["table"]).$A;if($p["ns"])$A=preg_replace('~([?&]ns=)[^&]+~','\1'.urlencode($p["ns"]),$A);if(count($p["source"])==1)break;}}}if($z=="COUNT(*)"){$A=ME."select=".urlencode($b);$t=0;foreach((array)$_GET["where"]as$W){if(!array_key_exists($W["col"],$dh))$A.=where_link($t++,$W["col"],$W["val"],$W["op"]);}foreach($dh
as$od=>$W)$A.=where_link($t++,$od,$W);}$X=select_value($X,$A,$n,$Fg);$u=h("val[$eh][".bracket_escape($z)."]");$Y=$_POST["val"][$eh][bracket_escape($z)];$Sb=!is_array($L[$z])&&is_utf8($X)&&$M[$Zd][$z]==$L[$z]&&!$Gc[$z];$Eg=preg_match('~text|lob~',$n["type"]);echo"<td id='$u'";if(($_GET["modify"]&&$Sb)||$Y!==null){$Nc=h($Y!==null?$Y:$L[$z]);echo">".($Eg?"<textarea name='$u' cols='30' rows='".(substr_count($L[$z],"\n")+1)."'>$Nc</textarea>":"<input name='$u' value='$Nc' size='$Cd[$z]'>");}else{$Gd=strpos($X,"<i></i>");echo" data-text='".($Gd?2:($Eg?1:0))."'".($Sb?"":" data-warning='".h(lang(239))."'").">$X</td>";}}}if($Ba)echo"<td>";$c->backwardKeysPrint($Ba,$M[$Zd]);echo"</tr>\n";}if(is_ajax())exit;echo"</table>\n","</div>\n";}if(!is_ajax()){if($M||$F){$ic=true;if($_GET["page"]!="last"){if($_==""||(count($M)<$_&&($M||!$F)))$Ec=($F?$F*$_:0)+count($M);elseif($y!="sql"||!$kd){$Ec=($kd?false:found_rows($R,$Z));if($Ec<max(1e4,2*($F+1)*$_))$Ec=reset(slow_query(count_rows($b,$Z,$kd,$s)));else$ic=false;}}$Ke=($_!=""&&($Ec===false||$Ec>$_||$F));if($Ke){echo(($Ec===false?count($M)+1:$Ec-$F*$_)>$_?'<p><a href="'.h(remove_from_uri("page")."&page=".($F+1)).'" class="loadmore">'.lang(240).'</a>'.script("qsl('a').onclick = partial(selectLoadMore, ".(+$_).", '".lang(241)."');",""):''),"\n";}}echo"<div class='footer'><div>\n";if($M||$F){if($Ke){$Md=($Ec===false?$F+(count($M)>=$_?2:1):floor(($Ec-1)/$_));echo"<fieldset>";if($y!="simpledb"){echo"<legend><a href='".h(remove_from_uri("page"))."'>".lang(242)."</a></legend>",script("qsl('a').onclick = function () { pageClick(this.href, +prompt('".lang(242)."', '".($F+1)."')); return false; };"),pagination(0,$F).($F>5?" ":"");for($t=max(1,$F-4);$t<min($Md,$F+5);$t++)echo
pagination($t,$F);if($Md>0){echo($F+5<$Md?" ":""),($ic&&$Ec!==false?pagination($Md,$F):" <a href='".h(remove_from_uri("page")."&page=last")."' title='~$Md'>".lang(243)."</a>");}}else{echo"<legend>".lang(242)."</legend>",pagination(0,$F).($F>1?" ":""),($F?pagination($F,$F):""),($Md>$F?pagination($F+1,$F).($Md>$F+1?" ":""):"");}echo"</fieldset>\n";}echo"<fieldset>","<legend>".lang(244)."</legend>";$Ib=($ic?"":"~ ").$Ec;echo
checkbox("all",1,0,($Ec!==false?($ic?"":"~ ").lang(143,$Ec):""),"var checked = formChecked(this, /check/); selectCount('selected', this.checked ? '$Ib' : checked); selectCount('selected2', this.checked || !checked ? '$Ib' : checked);")."\n","</fieldset>\n";if($c->selectCommandPrint()){echo'<fieldset',($_GET["modify"]?'':' class="jsonly"'),'><legend>',lang(236),'</legend><div>
<input type="submit" value="',lang(14),'"',($_GET["modify"]?'':' title="'.lang(232).'"'),'>
</div></fieldset>
<fieldset><legend>',lang(120),' <span id="selected"></span></legend><div>
<input type="submit" name="edit" value="',lang(10),'">
<input type="submit" name="clone" value="',lang(228),'">
<input type="submit" name="delete" value="',lang(18),'">',confirm(),'</div></fieldset>
';}$Cc=$c->dumpFormat();foreach((array)$_GET["columns"]as$d){if($d["fun"]){unset($Cc['sql']);break;}}if($Cc){print_fieldset("export",lang(62)." <span id='selected2'></span>");$Ie=$c->dumpOutput();echo($Ie?html_select("output",$Ie,$ma["output"])." ":""),html_select("format",$Cc,$ma["format"])," <input type='submit' name='export' value='".lang(62)."'>\n","</div></fieldset>\n";}$c->selectEmailPrint(array_filter($Xb,'strlen'),$e);}echo"</div></div>\n";if($c->selectImportPrint()){echo"<div>","<a href='#import'>".lang(61)."</a>",script("qsl('a').onclick = partial(toggle, 'import');",""),"<span id='import' class='hidden'>: ","<input type='file' name='csv_file'> ",html_select("separator",array("csv"=>"CSV,","csv;"=>"CSV;","tsv"=>"TSV"),$ma["format"],1);echo" <input type='submit' name='import' value='".lang(61)."'>","</span>","</div>";}echo"<input type='hidden' name='token' value='$T'>\n","</form>\n",(!$s&&$N?"":script("tableCheck();"));}}}if(is_ajax()){ob_end_clean();exit;}}elseif(isset($_GET["variables"])){$ig=isset($_GET["status"]);page_header($ig?lang(112):lang(111));$sh=($ig?show_status():show_variables());if(!$sh)echo"<p class='message'>".lang(12)."\n";else{echo"<table cellspacing='0'>\n";foreach($sh
as$z=>$X){echo"<tr>","<th><code class='jush-".$y.($ig?"status":"set")."'>".h($z)."</code>","<td>".h($X);}echo"</table>\n";}}elseif(isset($_GET["script"])){header("Content-Type: text/javascript; charset=utf-8");if($_GET["script"]=="db"){$rg=array("Data_length"=>0,"Index_length"=>0,"Data_free"=>0);foreach(table_status()as$E=>$R){json_row("Comment-$E",h($R["Comment"]));if(!is_view($R)){foreach(array("Engine","Collation")as$z)json_row("$z-$E",h($R[$z]));foreach($rg+array("Auto_increment"=>0,"Rows"=>0)as$z=>$X){if($R[$z]!=""){$X=format_number($R[$z]);json_row("$z-$E",($z=="Rows"&&$X&&$R["Engine"]==($dg=="pgsql"?"table":"InnoDB")?"~ $X":$X));if(isset($rg[$z]))$rg[$z]+=($R["Engine"]!="InnoDB"||$z!="Data_free"?$R[$z]:0);}elseif(array_key_exists($z,$R))json_row("$z-$E");}}}foreach($rg
as$z=>$X)json_row("sum-$z",format_number($X));json_row("");}elseif($_GET["script"]=="kill")$g->query("KILL ".number($_POST["kill"]));else{foreach(count_tables($c->databases())as$k=>$X){json_row("tables-$k",$X);json_row("size-$k",db_size($k));}json_row("");}exit;}else{$zg=array_merge((array)$_POST["tables"],(array)$_POST["views"]);if($zg&&!$m&&!$_POST["search"]){$J=true;$D="";if($y=="sql"&&$_POST["tables"]&&count($_POST["tables"])>1&&($_POST["drop"]||$_POST["truncate"]||$_POST["copy"]))queries("SET foreign_key_checks = 0");if($_POST["truncate"]){if($_POST["tables"])$J=truncate_tables($_POST["tables"]);$D=lang(245);}elseif($_POST["move"]){$J=move_tables((array)$_POST["tables"],(array)$_POST["views"],$_POST["target"]);$D=lang(246);}elseif($_POST["copy"]){$J=copy_tables((array)$_POST["tables"],(array)$_POST["views"],$_POST["target"]);$D=lang(247);}elseif($_POST["drop"]){if($_POST["views"])$J=drop_views($_POST["views"]);if($J&&$_POST["tables"])$J=drop_tables($_POST["tables"]);$D=lang(248);}elseif($y!="sql"){$J=($y=="sqlite"?queries("VACUUM"):apply_queries("VACUUM".($_POST["optimize"]?"":" ANALYZE"),$_POST["tables"]));$D=lang(249);}elseif(!$_POST["tables"])$D=lang(9);elseif($J=queries(($_POST["optimize"]?"OPTIMIZE":($_POST["check"]?"CHECK":($_POST["repair"]?"REPAIR":"ANALYZE")))." TABLE ".implode(", ",array_map('idf_escape',$_POST["tables"])))){while($L=$J->fetch_assoc())$D.="<b>".h($L["Table"])."</b>: ".h($L["Msg_text"])."<br>";}queries_redirect(substr(ME,0,-1),$D,$J);}page_header(($_GET["ns"]==""?lang(26).": ".h(DB):lang(189).": ".h($_GET["ns"])),$m,true);if($c->homepage()){if($_GET["ns"]!==""){echo"<h3 id='tables-views'>".lang(250)."</h3>\n";$yg=tables_list();if(!$yg)echo"<p class='message'>".lang(9)."\n";else{echo"<form action='' method='post'>\n";if(support("table")){echo"<fieldset><legend>".lang(251)." <span id='selected2'></span></legend><div>","<input type='search' name='query' value='".h($_POST["query"])."'>",script("qsl('input').onkeydown = partialArg(bodyKeydown, 'search');","")," <input type='submit' name='search' value='".lang(45)."'>\n","</div></fieldset>\n";if($_POST["search"]&&$_POST["query"]!=""){$_GET["where"][0]["op"]="LIKE %%";search_tables();}}echo"<div class='scrollable'>\n","<table cellspacing='0' class='nowrap checkable'>\n",script("mixin(qsl('table'), {onclick: tableClick, ondblclick: partialArg(tableClick, true)});"),'<thead><tr class="wrap">','<td><input id="check-all" type="checkbox" class="jsonly">'.script("qs('#check-all').onclick = partial(formCheck, /^(tables|views)\[/);",""),'<th>'.lang(124),'<td>'.lang(252).doc_link(array('sql'=>'storage-engines.html')),'<td>'.lang(116).doc_link(array('sql'=>'charset-charsets.html','mariadb'=>'supported-character-sets-and-collations/')),'<td>'.lang(253).doc_link(array('sql'=>'show-table-status.html',)),'<td>'.lang(254).doc_link(array('sql'=>'show-table-status.html',)),'<td>'.lang(255).doc_link(array('sql'=>'show-table-status.html')),'<td>'.lang(40).doc_link(array('sql'=>'example-auto-increment.html','mariadb'=>'auto_increment/')),'<td>'.lang(256).doc_link(array('sql'=>'show-table-status.html',)),(support("comment")?'<td>'.lang(39).doc_link(array('sql'=>'show-table-status.html',)):''),"</thead>\n";$S=0;foreach($yg
as$E=>$U){$vh=($U!==null&&!preg_match('~table|sequence~i',$U));$u=h("Table-".$E);echo'<tr'.odd().'><td>'.checkbox(($vh?"views[]":"tables[]"),$E,in_array($E,$zg,true),"","","",$u),'<th>'.(support("table")||support("indexes")?"<a href='".h(ME)."table=".urlencode($E)."' title='".lang(31)."' id='$u'>".h($E).'</a>':h($E));if($vh){echo'<td colspan="6"><a href="'.h(ME)."view=".urlencode($E).'" title="'.lang(32).'">'.(preg_match('~materialized~i',$U)?lang(122):lang(123)).'</a>','<td align="right"><a href="'.h(ME)."select=".urlencode($E).'" title="'.lang(30).'">?</a>';}else{foreach(array("Engine"=>array(),"Collation"=>array(),"Data_length"=>array("create",lang(33)),"Index_length"=>array("indexes",lang(126)),"Data_free"=>array("edit",lang(34)),"Auto_increment"=>array("auto_increment=1&create",lang(33)),"Rows"=>array("select",lang(30)),)as$z=>$A){$u=" id='$z-".h($E)."'";echo($A?"<td align='right'>".(support("table")||$z=="Rows"||(support("indexes")&&$z!="Data_length")?"<a href='".h(ME."$A[0]=").urlencode($E)."'$u title='$A[1]'>?</a>":"<span$u>?</span>"):"<td id='$z-".h($E)."'>");}$S++;}echo(support("comment")?"<td id='Comment-".h($E)."'>":"");}echo"<tr><td><th>".lang(229,count($yg)),"<td>".h($y=="sql"?$g->result("SELECT @@default_storage_engine"):""),"<td>".h(db_collation(DB,collations()));foreach(array("Data_length","Index_length","Data_free")as$z)echo"<td align='right' id='sum-$z'>";echo"</table>\n","</div>\n";if(!information_schema(DB)){echo"<div class='footer'><div>\n";$qh="<input type='submit' value='".lang(257)."'> ".on_help("'VACUUM'");$we="<input type='submit' name='optimize' value='".lang(258)."'> ".on_help($y=="sql"?"'OPTIMIZE TABLE'":"'VACUUM OPTIMIZE'");echo"<fieldset><legend>".lang(120)." <span id='selected'></span></legend><div>".($y=="sqlite"?$qh:($y=="pgsql"?$qh.$we:($y=="sql"?"<input type='submit' value='".lang(259)."'> ".on_help("'ANALYZE TABLE'").$we."<input type='submit' name='check' value='".lang(260)."'> ".on_help("'CHECK TABLE'")."<input type='submit' name='repair' value='".lang(261)."'> ".on_help("'REPAIR TABLE'"):"")))."<input type='submit' name='truncate' value='".lang(262)."'> ".on_help($y=="sqlite"?"'DELETE'":"'TRUNCATE".($y=="pgsql"?"'":" TABLE'")).confirm()."<input type='submit' name='drop' value='".lang(121)."'>".on_help("'DROP TABLE'").confirm()."\n";$j=(support("scheme")?$c->schemas():$c->databases());if(count($j)!=1&&$y!="sqlite"){$k=(isset($_POST["target"])?$_POST["target"]:(support("scheme")?$_GET["ns"]:DB));echo"<p>".lang(263).": ",($j?html_select("target",$j,$k):'<input name="target" value="'.h($k).'" autocapitalize="off">')," <input type='submit' name='move' value='".lang(264)."'>",(support("copy")?" <input type='submit' name='copy' value='".lang(265)."'> ".checkbox("overwrite",1,$_POST["overwrite"],lang(266)):""),"\n";}echo"<input type='hidden' name='all' value=''>";echo
script("qsl('input').onclick = function () { selectCount('selected', formChecked(this, /^(tables|views)\[/));".(support("table")?" selectCount('selected2', formChecked(this, /^tables\[/) || $S);":"")." }"),"<input type='hidden' name='token' value='$T'>\n","</div></fieldset>\n","</div></div>\n";}echo"</form>\n",script("tableCheck();");}echo'<p class="links"><a href="'.h(ME).'create=">'.lang(63)."</a>\n",(support("view")?'<a href="'.h(ME).'view=">'.lang(195)."</a>\n":"");if(support("routine")){echo"<h3 id='routines'>".lang(136)."</h3>\n";$Hf=routines();if($Hf){echo"<table cellspacing='0'>\n",'<thead><tr><th>'.lang(176).'<td>'.lang(38).'<td>'.lang(212)."<td></thead>\n";odd('');foreach($Hf
as$L){$E=($L["SPECIFIC_NAME"]==$L["ROUTINE_NAME"]?"":"&name=".urlencode($L["ROUTINE_NAME"]));echo'<tr'.odd().'>','<th><a href="'.h(ME.($L["ROUTINE_TYPE"]!="PROCEDURE"?'callf=':'call=').urlencode($L["SPECIFIC_NAME"]).$E).'">'.h($L["ROUTINE_NAME"]).'</a>','<td>'.h($L["ROUTINE_TYPE"]),'<td>'.h($L["DTD_IDENTIFIER"]),'<td><a href="'.h(ME.($L["ROUTINE_TYPE"]!="PROCEDURE"?'function=':'procedure=').urlencode($L["SPECIFIC_NAME"]).$E).'">'.lang(129)."</a>";}echo"</table>\n";}echo'<p class="links">'.(support("procedure")?'<a href="'.h(ME).'procedure=">'.lang(211).'</a>':'').'<a href="'.h(ME).'function=">'.lang(210)."</a>\n";}if(support("event")){echo"<h3 id='events'>".lang(137)."</h3>\n";$M=get_rows("SHOW EVENTS");if($M){echo"<table cellspacing='0'>\n","<thead><tr><th>".lang(176)."<td>".lang(267)."<td>".lang(201)."<td>".lang(202)."<td></thead>\n";foreach($M
as$L){echo"<tr>","<th>".h($L["Name"]),"<td>".($L["Execute at"]?lang(268)."<td>".$L["Execute at"]:lang(203)." ".$L["Interval value"]." ".$L["Interval field"]."<td>$L[Starts]"),"<td>$L[Ends]",'<td><a href="'.h(ME).'event='.urlencode($L["Name"]).'">'.lang(129).'</a>';}echo"</table>\n";$gc=$g->result("SELECT @@event_scheduler");if($gc&&$gc!="ON")echo"<p class='error'><code class='jush-sqlset'>event_scheduler</code>: ".h($gc)."\n";}echo'<p clsass="links"><a href="'.h(ME).'event=">'.lang(200)."</a>\n";}if($yg)echo
script("ajaxSetHtml('".js_escape(ME)."script=db');");}}}page_footer();

Function Calls

None

Variables

None

Stats

MD5 385c576a380b6cc2eba1d99fe0a707e4
Eval Count 0
Decode Time 339 ms