<?php
/** Adminer Editor - Compact database editor
* @link https://www.adminer.org/
* @author Jakub Vrana, https://www.vrana.cz/
* @copyright 2009 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 5.5.1
*/namespace
Adminer;const
VERSION="5.5.1";error_reporting(24575);set_error_handler(function($Lb,$Mb){return!!preg_match('~^Undefined (array key|offset|index)~',$Mb);},E_WARNING|E_NOTICE);$cc=!preg_match('~^(unsafe_raw)?$~',ini_get("filter.default"));if($cc||ini_get("filter.default_flags")){foreach(array('_GET','_POST','_COOKIE','_SERVER')as$W){$bg=filter_input_array(constant("INPUT$W"),FILTER_UNSAFE_RAW);if($bg)$$W=$bg;}}if(function_exists("mb_internal_encoding"))mb_internal_encoding("8bit");function
connection($h=null){return($h?:Db::$instance);}function
adminer(){return
Adminer::$instance;}function
driver(){return
Driver::$instance;}function
connect(){$db=adminer()->credentials();$K=Driver::connect($db[0],$db[1],$db[2]);return(is_object($K)?$K:null);}function
idf_unescape($s){if(!preg_match('~^[`\'"[]~',$s))return$s;$od=substr($s,-1);return
str_replace($od.$od,$od,substr($s,1,-1));}function
q($Q){return
connection()->quote($Q);}function
idx($ma,$u,$j=null){return($ma&&array_key_exists($u,$ma)?$ma[$u]:$j);}function
number($W){return
preg_replace('~[^0-9]+~','',$W);}function
number_type(){return'((?<!o)int(?!er)|numeric|real|float|double|decimal|money)';}function
remove_slashes(array$og,$cc=false){$K=array();foreach($og
as$u=>$W)$K[stripslashes($u)]=(is_array($W)?remove_slashes($W,$cc):($cc?$W:stripslashes($W)));return$K;}function
bracket_escape($s,$ua=false){static$Rf=array(':'=>':1',']'=>':2','['=>':3','"'=>':4');return
strtr($s,($ua?array_flip($Rf):$Rf));}function
min_version($pg,$Ad="",$h=null){$h=connection($h);$hf=$h->server_info;if($Ad&&preg_match('~([\d.]+)-MariaDB~',$hf,$z)){$hf=$z[1];$pg=$Ad;}return$pg&&version_compare($hf,$pg)>=0;}function
charset(Db$g){return(min_version("5.5.3",0,$g)?"utf8mb4":"utf8");}function
ini_set($le,$X){return(function_exists('ini_set')?\ini_set($le,$X):false);}function
ini_bool($Tc){$W=ini_get($Tc);return(preg_match('~^(on|true|yes)$~i',$W)||(int)$W);}function
ini_bytes($Tc){$W=ini_get($Tc);switch(strtolower(substr($W,-1))){case'g':$W=(int)$W*1024;case'm':$W=(int)$W*1024;case'k':$W=(int)$W*1024;}return$W;}function
sid(){static$K;if($K===null)$K=(SID&&!($_COOKIE&&ini_bool("session.use_cookies")));return$K;}function
set_password($Y,$O,$U,$F){$_SESSION["pwds"][$Y][$O][$U]=($_COOKIE["adminer_key"]&&is_string($F)?array(encrypt_string($F,$_COOKIE["adminer_key"])):$F);}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
get_val($I,$l=0,$Ua=null){$Ua=connection($Ua);$J=$Ua->query($I);if(!is_object($J))return
false;$L=$J->fetch_row();return($L?$L[$l]:false);}function
get_vals($I,$d=0){$K=array();$J=connection()->query($I);if(is_object($J)){while($L=$J->fetch_row())$K[]=$L[$d];}return$K;}function
get_key_vals($I,$h=null,$kf=true){$h=connection($h);$K=array();$J=$h->query($I);if(is_object($J)){while($L=$J->fetch_row()){if($kf)$K[$L[0]]=$L[1];else$K[]=$L[0];}}return$K;}function
get_rows($I,$h=null,$k="<p class='error'>"){$Ua=connection($h);$K=array();$J=$Ua->query($I);if(is_object($J)){while($L=$J->fetch_assoc())$K[]=$L;}elseif(!$J&&!$h&&$k&&(defined('Adminer\PAGE_HEADER')||$k=="-- "))echo$k.error()."\n";return$K;}function
unique_array($L,array$t){foreach($t
as$Qc){if(preg_match("~PRIMARY|UNIQUE~",$Qc["type"])&&!$Qc["partial"]){$K=array();foreach($Qc["columns"]as$u){if(!isset($L[$u]))continue
2;$K[$u]=$L[$u];}return$K;}}}function
escape_key($u){if(preg_match('(^([\w(]+)('.str_replace("_",".*",preg_quote(idf_escape("_"))).')([ \w)]+)$)',$u,$z))return$z[1].idf_escape(idf_unescape($z[2])).$z[3];return
idf_escape($u);}function
where(array$Z,array$m=array()){$K=array();foreach((array)$Z["where"]as$u=>$W){$u=bracket_escape($u,true);$d=escape_key($u);$l=idx($m,$u,array());$Yb=$l["type"];$K[]=$d.(JUSH=="sql"&&$Yb=="json"?" = CAST(".q($W)." AS JSON)":(JUSH=="pgsql"&&preg_match('~^jsonb?$~',$l["full_type"])?"::jsonb = ".q($W)."::jsonb":(JUSH=="sql"&&is_numeric($W)&&preg_match('~\.~',$W)?" LIKE ".q($W):(JUSH=="mssql"&&strpos($Yb,"datetime")===false?" LIKE ".q(preg_replace('~[_%[]~','[\0]',$W)):" = ".unconvert_field($l,q($W))))));if(JUSH=="sql"&&preg_match('~char|text~',$Yb)&&preg_match("~[^ -@]~",$W))$K[]="$d = ".q($W)." COLLATE ".charset(connection())."_bin";}foreach((array)$Z["null"]as$u)$K[]=escape_key($u)." IS NULL";return
implode(" AND ",$K);}function
where_check($W,array$m=array()){parse_str($W,$Ha);remove_slashes(array(&$Ha));return
where($Ha,$m);}function
where_link($q,$d,$X,$je="="){return"&where%5B$q%5D%5Bcol%5D=".urlencode($d)."&where%5B$q%5D%5Bop%5D=".urlencode(($X!==null?$je:"IS NULL"))."&where%5B$q%5D%5Bval%5D=".urlencode($X);}function
convert_fields(array$e,array$m,array$N=array()){$K="";foreach($e
as$u=>$W){if($N&&!in_array(idf_escape($u),$N))continue;$na=convert_field($m[$u]);if($na)$K
.=", $na AS ".idf_escape($u);}return$K;}function
cookie_path(){return
strtr(preg_replace('~\?.*~','',$_SERVER["REQUEST_URI"]),array(";"=>"%3B",","=>"%2C"));}function
cookie($A,$X,$ud=2592000){header("Set-Cookie: $A=".rawurlencode($X).($ud?"; expires=".gmdate("D, d M Y H:i:s",time()+$ud)." GMT":"")."; path=".cookie_path().(HTTPS?"; secure":"")."; HttpOnly; SameSite=lax",false);}function
get_url($ig,$Xa){$K=@file_get_contents($ig,false,$Xa);if(function_exists('http_get_last_response_headers'))$http_response_header=http_get_last_response_headers();return
array($K,(preg_match('~^HTTP/[\d.]+ (\d+)~',$http_response_header[0],$z)?$z[1]:''),);}function
get_settings($Za){parse_str($_COOKIE[$Za],$lf);return$lf;}function
get_setting($u,$Za="adminer_settings",$j=null){return
idx(get_settings($Za),$u,$j);}function
save_settings(array$lf,$Za="adminer_settings"){$X=http_build_query($lf+get_settings($Za));cookie($Za,$X);$_COOKIE[$Za]=$X;}function
restart_session(){if(!ini_bool("session.use_cookies")&&(!function_exists('session_status')||session_status()==1))session_start();}function
stop_session($hc=false){$jg=ini_bool("session.use_cookies");if(!$jg||$hc){session_write_close();if($jg&&ini_set("session.use_cookies",'0')===false)session_start();}}function&get_session($u){return$_SESSION[$u][DRIVER][SERVER][$_GET["username"]];}function
set_session($u,$W){$_SESSION[$u][DRIVER][SERVER][$_GET["username"]]=$W;}function
auth_url($Y,$O,$U,$i=null){$hg=remove_from_uri(implode("|",array_keys(SqlDriver::$drivers))."|username|ext|".($i!==null?"db|":"").($Y=='mssql'||$Y=='pgsql'?"":"ns|").session_name());preg_match('~([^?]*)\??(.*)~',$hg,$z);return"$z[1]?".(sid()?SID."&":"").($Y!="server"||$O!=""?urlencode($Y)."=".urlencode($O)."&":"").($_GET["ext"]?"ext=".urlencode($_GET["ext"])."&":"")."username=".urlencode($U).($i!=""?"&db=".urlencode($i):"").($z[2]?"&$z[2]":"");}function
is_ajax(){return($_SERVER["HTTP_X_REQUESTED_WITH"]=="XMLHttpRequest");}function
redirect($y,$Md=null){if($Md!==null){restart_session();$_SESSION["messages"][preg_replace('~^[^?]*~','',($y!==null?$y:$_SERVER["REQUEST_URI"]))][]=$Md;}if($y!==null){if($y=="")$y=".";header("Location: $y");exit;}}function
query_redirect($I,$y,$Md,$Qe=true,$Qb=true,$Vb=false,$If=""){if($Qb){$tf=microtime(true);$Vb=!connection()->query($I);$If=format_time($tf);}$qf=($I?adminer()->messageQuery($I,$If,$Vb):"");if($Vb){adminer()->error
.=error().$qf.script("messagesPrint();")."<br>";return
false;}if($Qe)redirect($y,$Md.$qf);return
true;}class
Queries{static$queries=array();static$start=0;}function
queries($I){if(!Queries::$start)Queries::$start=microtime(true);Queries::$queries[]=(driver()->delimiter!=';'?$I:(preg_match('~;$~',$I)?"DELIMITER ;;\n$I;\nDELIMITER ":$I).";");return
connection()->query($I);}function
apply_queries($I,array$Df,$Nb='Adminer\table'){foreach($Df
as$R){if(!queries("$I ".$Nb($R)))return
false;}return
true;}function
queries_redirect($y,$Md,$Qe){$Le=implode("\n",Queries::$queries);$If=format_time(Queries::$start);return
query_redirect($Le,$y,$Md,$Qe,false,!$Qe,$If);}function
format_time($tf){return
lang(0,max(0,microtime(true)-$tf));}function
relative_uri(){return
str_replace(":","%3a",preg_replace('~^[^?]*/([^?]*)~','\1',$_SERVER["REQUEST_URI"]));}function
remove_from_uri($te=""){return
substr(preg_replace("~(?<=[?&])($te".(SID?"":"|".session_name()).")=[^&]*&~",'',relative_uri()."&"),0,-1);}function
get_file($u,$lb=false,$ob=""){$Zb=$_FILES[$u];if(!$Zb)return
null;foreach($Zb
as$u=>$W)$Zb[$u]=(array)$W;$K='';foreach($Zb["error"]as$u=>$k){if($k)return$k;$A=$Zb["name"][$u];$Of=$Zb["tmp_name"][$u];$Wa=file_get_contents($lb&&preg_match('~\.gz$~',$A)?"compress.zlib://$Of":$Of);if($lb){$tf=substr($Wa,0,3);if(function_exists("iconv")&&preg_match("~^\xFE\xFF|^\xFF\xFE~",$tf))$Wa=iconv("utf-16","utf-8",$Wa);elseif($tf=="\xEF\xBB\xBF")$Wa=substr($Wa,3);}$K
.=$Wa;if($ob)$K
.=(preg_match("($ob\\s*\$)",$Wa)?"":$ob)."\n\n";}return$K;}function
upload_error($k){$Hd=($k==UPLOAD_ERR_INI_SIZE?ini_get("upload_max_filesize"):0);return($k?lang(1).($Hd?" ".lang(2,$Hd):""):lang(3));}function
repeat_pattern($ze,$v){return
str_repeat("$ze{0,65535}",$v/65535)."$ze{0,".($v%65535)."}";}function
is_utf8($W){return(preg_match('~~u',$W)&&!preg_match('~[\0-\x8\xB\xC\xE-\x1F]~',$W));}function
format_number($W){return
strtr(number_format($W,0,".",lang(4)),preg_split('~~u',lang(5),-1,PREG_SPLIT_NO_EMPTY));}function
friendly_url($W){return
preg_replace('~\W~i','-',$W);}function
table_status1($R,$Wb=false){$K=table_status($R,$Wb);return($K?reset($K):array("Name"=>$R));}function
column_foreign_keys($R){$K=array();foreach(adminer()->foreignKeys($R)as$lc){foreach($lc["source"]as$W)$K[$W][]=$lc;}return$K;}function
fields_from_edit(){$K=array();foreach((array)$_POST["field_keys"]as$u=>$W){if($W!=""){$W=bracket_escape($W);$_POST["function"][$W]=$_POST["field_funs"][$u];$_POST["fields"][$W]=$_POST["field_vals"][$u];}}foreach((array)$_POST["fields"]as$u=>$W){$A=bracket_escape($u,true);$K[$A]=array("field"=>$A,"privileges"=>array("insert"=>1,"update"=>1,"where"=>1,"order"=>1),"null"=>1,"auto_increment"=>($u==driver()->primary),);}return$K;}function
dump_headers($Lc,$Vd=false){$K=adminer()->dumpHeaders($Lc,$Vd);$qe=$_POST["output"];if($qe!="text")header("Content-Disposition: attachment; filename=".adminer()->dumpFilename($Lc).".$K".($qe!="file"&&preg_match('~^[0-9a-z]+$~',$qe)?".$qe":""));session_write_close();if(!ob_get_level())ob_start(null,4096);ob_flush();flush();return$K;}function
dump_csv(array$L){$Vf=$_POST["format"]=="tsv";foreach($L
as$u=>$W){if(preg_match('~["\n]|^0[^.]|\.\d*0$|'.($Vf?'\t':'[,;]|^$').'~',$W))$L[$u]='"'.str_replace('"','""',$W).'"';}echo
implode(($_POST["format"]=="csv"?",":($Vf?"\t":";")),$L)."\r\n";}function
apply_sql_function($o,$d){return($o?($o=="unixepoch"?"DATETIME($d, '$o')":($o=="count distinct"?"COUNT(DISTINCT ":strtoupper("$o("))."$d)"):$d);}function
get_temp_dir(){return
ini_get("upload_tmp_dir")?:sys_get_temp_dir();}function
file_open_lock($ac){if(is_link($ac))return;$n=@fopen($ac,"c+");if(!$n)return;@chmod($ac,0660);if(!flock($n,LOCK_EX)){fclose($n);return;}return$n;}function
file_write_unlock($n,$ib){rewind($n);fwrite($n,$ib);ftruncate($n,strlen($ib));file_unlock($n);}function
file_unlock($n){flock($n,LOCK_UN);fclose($n);}function
first(array$ma){return
reset($ma);}function
password_file($bb){$ac=get_temp_dir()."/adminer.key";if(!$bb&&!file_exists($ac))return'';$n=file_open_lock($ac);if(!$n)return'';$K=stream_get_contents($n);if(!$K){$K=rand_string();file_write_unlock($n,$K);}else
file_unlock($n);return$K;}function
rand_string(){return(function_exists('random_bytes')?bin2hex(random_bytes(16)):md5(uniqid(strval(mt_rand()),true)));}function
select_value($W,$x,array$l,$Gf){if(is_array($W)){$K="";if(array_filter($W,'is_array')==array_values($W)){$id=array();foreach($W
as$V)$id+=array_fill_keys(array_keys($V),null);foreach(array_keys($id)as$hd)$K
.="<th>".h($hd);foreach($W
as$V){$K
.="<tr>";foreach(array_merge($id,$V)as$lg)$K
.="<td>".select_value($lg,$x,$l,$Gf);}}else{foreach($W
as$hd=>$V)$K
.="<tr>".($W!=array_values($W)?"<th>".h($hd):"")."<td>".select_value($V,$x,$l,$Gf);}return"<table>$K</table>";}if(!$x)$x=adminer()->selectLink($W,$l);if($x===null){if(is_mail($W))$x="mailto:$W";if(is_url($W))$x=$W;}$W=driver()->value($W,$l);$K=adminer()->editVal($W,$l);if($K!==null){if(!is_utf8($K))$K="\0";elseif($Gf!=""&&is_shortable($l))$K=shorten_utf8($K,max(0,+$Gf));else$K=h($K);}return
adminer()->selectVal($K,$x,$l,$W);}function
is_blob(array$l){return
preg_match('~blob|bytea|raw|file~',$l["type"])&&!in_array($l["type"],idx(driver()->structuredTypes(),lang(6),array()));}function
is_mail($Db){$oa='[-a-z0-9!#$%&\'*+/=?^_`{|}~]';$yb='[a-z0-9]([-a-z0-9]{0,61}[a-z0-9])';$ze="$oa+(\\.$oa+)*@($yb?\\.)+$yb";return
is_string($Db)&&preg_match("(^$ze(,\\s*$ze)*\$)i",$Db);}function
is_url($Q){$yb='[a-z0-9]([-a-z0-9]{0,61}[a-z0-9])';return
preg_match("~^((https?):)?//($yb?\\.)+$yb(:\\d+)?(/.*)?(\\?.*)?(#.*)?\$~i",$Q);}function
is_shortable(array$l){return!preg_match('~'.number_type().'|date|time|year~',$l["type"]);}function
host_port($O){return(preg_match('~^(:([^:].*)|(\[(.+)\]|(([^:]+://)?[^:]+))(:(\d+))?)$~',$O,$z)?array($z[4].$z[5],$z[2].$z[8]):array($O,''));}function
count_rows($R,array$Z,$bd,array$p){$I=" FROM ".table($R).($Z?" WHERE ".implode(" AND ",$Z):"");return($bd&&(JUSH=="sql"||count($p)==1)?"SELECT COUNT(DISTINCT ".implode(", ",$p).")$I":"SELECT COUNT(*)".($bd?" FROM (SELECT 1$I GROUP BY ".implode(", ",$p).") x":$I));}function
slow_query($I){$i=adminer()->database();$Jf=adminer()->queryTimeout();$nf=driver()->slowQuery($I,$Jf);$h=null;if(!$nf&&support("kill")){$h=connect();if($h&&($i==""||$h->select_db($i))){$jd=get_val(connection_id(),0,$h);echo
script("const timeout = setTimeout(() => { ajax('".js_escape(ME)."script=kill', function () {}, 'kill=$jd&token=".get_token()."'); }, 1000 * $Jf);");}}ob_flush();flush();$K=@get_key_vals(($nf?:$I),$h,false);if($h){echo
script("clearTimeout(timeout);");ob_flush();flush();}return$K;}function
get_token(){$Oe=rand(1,1e6);return($Oe^$_SESSION["token"]).":$Oe";}function
verify_token(){list($Pf,$Oe)=explode(":",$_POST["token"]);return($Oe^$_SESSION["token"])==$Pf&&in_array($_SERVER["HTTP_SEC_FETCH_SITE"],array("","same-origin"));}function
compress_alphabet(){return
strtr(implode(range('"','~')),"'\\","!\n");}function
decompress_string($Q){$ia=array_flip(str_split(compress_alphabet()));$v=strlen($Q);$ng=($v?13*($v-1)/2-$ia[$Q[0]]:0);$c="";$Ve=0;$We=0;for($q=1;$q<$v;$q+=2){$Ve=($Ve<<13)+$ia[$Q[$q]]*93+$ia[$Q[$q+1]];$We+=13;while($We>=8&&$ng>=8){$We-=8;$ng-=8;$c
.=chr($Ve>>$We);$Ve&=(1<<$We)-1;}}if($c=="")return"";return(function_exists('gzinflate')?gzinflate($c):inflate($c));}function
inflate($c){$rd=array(3,4,5,6,7,8,9,10,11,13,15,17,19,23,27,31,35,43,51,59,67,83,99,115,131,163,195,227,258);$sd=array(0,0,0,0,0,0,0,0,1,1,1,1,2,2,2,2,3,3,3,3,4,4,4,4,5,5,5,5,0);$sb=array(1,2,3,4,5,7,9,13,17,25,33,49,65,97,129,193,257,385,513,769,1025,1537,2049,3073,4097,6145,8193,12289,16385,24577);$ub=array(0,0,0,0,1,1,2,2,3,3,4,4,5,5,6,6,7,7,8,8,9,9,10,10,11,11,12,12,13,13);$K="";$H=0;do{$dc=inflate_bits($c,$H,1);$T=inflate_bits($c,$H,2);if(!$T){$H=($H+7)&~7;$v=inflate_bits($c,$H,16);$H+=16;$K
.=substr($c,$H>>3,$v);$H+=$v<<3;}else{if($T==1){$wd=array_merge(array_fill(0,144,8),array_fill(0,112,9),array_fill(0,24,7),array_fill(0,8,8));$vb=array_fill(0,30,5);}else{$vd=inflate_bits($c,$H,5)+257;$tb=inflate_bits($c,$H,5)+1;$D=array(16,17,18,0,8,7,9,6,10,5,11,4,12,3,13,2,14,1,15);$Pd=array_fill(0,19,0);$Od=inflate_bits($c,$H,4)+4;for($q=0;$q<$Od;$q++)$Pd[$D[$q]]=inflate_bits($c,$H,3);$Qd=inflate_table($Pd);$td=array();while(count($td)<$vd+$tb){$_f=inflate_symbol($c,$H,$Qd);if($_f==16)$td=array_merge($td,array_fill(0,inflate_bits($c,$H,2)+3,end($td)));elseif($_f==17)$td=array_merge($td,array_fill(0,inflate_bits($c,$H,3)+3,0));elseif($_f==18)$td=array_merge($td,array_fill(0,inflate_bits($c,$H,7)+11,0));else$td[]=$_f;}$wd=array_slice($td,0,$vd);$vb=array_slice($td,$vd);}$xd=inflate_table($wd);$xb=inflate_table($vb);while(($_f=inflate_symbol($c,$H,$xd))!=256){if($_f<256)$K
.=chr($_f);else{$v=$rd[$_f-257]+inflate_bits($c,$H,$sd[$_f-257]);$wb=inflate_symbol($c,$H,$xb);$de=strlen($K)-$sb[$wb]-inflate_bits($c,$H,$ub[$wb]);for($q=0;$q<$v;$q++)$K
.=$K[$de+$q];}}}}while(!$dc);return$K;}function
inflate_bits($c,&$H,$ab){$K=0;for($q=0;$q<$ab;$q++){$K+=((ord($c[$H>>3])>>($H&7))&1)<<$q;$H++;}return$K;}function
inflate_table(array$td){$R=array();$Ma=0;for($Aa=1;$Aa<=max($td);$Aa++){foreach($td
as$_f=>$v){if($v==$Aa){$R[$Aa][$Ma]=$_f;$Ma++;}}$Ma<<=1;}return$R;}function
inflate_symbol($c,&$H,array$R){$Ma=0;$Aa=0;do{$Ma=($Ma<<1)+inflate_bits($c,$H,1);$Aa++;}while(!isset($R[$Aa][$Ma]));return$R[$Aa][$Ma];}function
script($pf,$Qf="\n"){return"<script".nonce().">$pf</script>$Qf";}function
script_src($ig,$mb=false){return"<script src='".h($ig)."'".nonce().($mb?" defer":"")."></script>\n";}function
nonce(){return' nonce="'.get_nonce().'"';}function
input_hidden($A,$X=""){return"<input type='hidden' name='".h($A)."' value='".h($X)."'>\n";}function
input_token(){return
input_hidden("token",get_token());}function
target_blank(){return' target="_blank" rel="noreferrer noopener"';}function
h($Q){return
str_replace(array('&','<','"',"'","\0"),array('&amp;','&lt;','&quot;','&#039;','&#0;'),$Q);}function
nl_br($Q){return
str_replace("\n","<br>",$Q);}function
checkbox($A,$X,$Ia,$kd="",$he="",$La="",$md=""){$K="<input type='checkbox' name='$A' value='".h($X)."'".($Ia?" checked":"").($md?" aria-labelledby='$md'":"").">".($he?script("qsl('input').onclick = function () { $he };",""):"");return($kd!=""||$La?"<label".($La?" class='$La'":"").">$K".h($kd)."</label>":$K);}function
optionlist($C,$df=null,$kg=false){$K="";foreach($C
as$hd=>$V){$me=array($hd=>$V);if(is_array($V)){$K
.='<optgroup label="'.h($hd).'">';$me=$V;}foreach($me
as$u=>$W)$K
.='<option'.($kg||is_string($u)?' value="'.h($u).'"':'').($df!==null&&($kg||is_string($u)?(string)$u:$W)===$df?' selected':'').'>'.h($W);if(is_array($V))$K
.='</optgroup>';}return$K;}function
html_select($A,array$C,$X="",$ge="",$md=""){static$kd=0;$ld="";if(!$md&&substr($C[""],0,1)=="("){$kd++;$md="label-$kd";$ld="<option value='' id='$md'>".h($C[""]);unset($C[""]);}return"<select name='".h($A)."'".($md?" aria-labelledby='$md'":"").">".$ld.optionlist($C,$X)."</select>".($ge?script("qsl('select').onchange = function () { $ge };",""):"");}function
html_radios($A,array$C,$X="",$gf=""){$K="";foreach($C
as$u=>$W)$K
.="<label><input type='radio' name='".h($A)."' value='".h($u)."'".($u==$X?" checked":"").">".h($W)."</label>$gf";return$K;}function
confirm($Md="",$ef="qsl('input')"){return
script("$ef.onclick = () => confirm('".($Md?js_escape($Md):lang(7))."');","");}function
print_fieldset($r,$qd,$sg=false){echo"<fieldset><legend>","<a href='#fieldset-$r'>$qd</a>",script("qsl('a').onclick = partial(toggle, 'fieldset-$r');",""),"</legend>","<div id='fieldset-$r'".($sg?"":" class='hidden'").">\n";}function
bold($Ba,$La=""){return($Ba?" class='active $La'":($La?" class='$La'":""));}function
js_escape($Q){return
addcslashes($Q,"\r\n'\\/");}function
pagination($E,$gb){return" ".($E==$gb?$E+1:'<a href="'.h(remove_from_uri("page|next").($E?"&page=$E".($_GET["next"]?"&next=".urlencode($_GET["next"]):""):"")).'">'.($E+1)."</a>");}function
hidden_fields(array$Je,array$Nc=array(),$Fe=''){$K=false;foreach($Je
as$u=>$W){if(!in_array($u,$Nc)){if(is_array($W))hidden_fields($W,array(),$u);else{$K=true;echo
input_hidden(($Fe?$Fe."[$u]":$u),$W);}}}return$K;}function
hidden_fields_get(){echo(sid()?input_hidden(session_name(),session_id()):''),(SERVER!==null?input_hidden(DRIVER,SERVER):""),input_hidden("username",$_GET["username"]);}function
file_input($Vc){$Ed="max_file_uploads";$Fd=ini_get($Ed);$fg="upload_max_filesize";$gg=ini_get($fg);return(ini_bool("file_uploads")?$Vc.script("qsl('input[type=\"file\"]').onchange = partialArg(fileChange, "."$Fd, '".lang(8,"$Ed = $Fd")."', ".ini_bytes("upload_max_filesize").", '".lang(8,"$fg = $gg")."')"):lang(9));}function
enum_input($T,$b,array$l,$X,$Gb=""){preg_match_all("~'((?:[^']|'')*)'~",$l["length"],$Cd);$Fe=($l["type"]=="enum"?"val-":"");$Ia=(is_array($X)?in_array("null",$X):$X===null);$K=($l["null"]&&$Fe?"<label><input type='$T'$b value='null'".($Ia?" checked":"")."><i>$Gb</i></label>":"");foreach($Cd[1]as$W){$W=stripcslashes(str_replace("''","'",$W));$Ia=(is_array($X)?in_array($Fe.$W,$X):$X===$W);$K
.=" <label><input type='$T'$b value='".h($Fe.$W)."'".($Ia?' checked':'').'>'.h(adminer()->editVal($W,$l)).'</label>';}return$K;}function
input(array$l,$X,$o,$ta=false){$A=h(bracket_escape($l["field"]));echo"<td class='function'>";if(is_array($X)&&!$o)$o="json";$fd=($o=="json"||preg_match('~^jsonb?$~',$l["full_type"]));if($fd&&$X!=''&&(JUSH!="pgsql"||$l["type"]!="json"))$X=json_encode(is_array($X)?$X:json_decode($X),128|64|256);$Ue=(JUSH=="mssql"&&$l["auto_increment"]);if($Ue&&!$_POST["save"])$o=null;$rc=(isset($_GET["select"])||$Ue?array("orig"=>lang(10)):array())+adminer()->editFunctions($l);$Jb=driver()->enumLength($l);if($Jb){$l["type"]="enum";$l["length"]=$Jb;}$b=" name='fields[$A]".($l["type"]=="enum"||$l["type"]=="set"?"[]":"")."'".($ta?" autofocus":"");echo
driver()->unconvertFunction($l)." ";$R=$_GET["edit"]?:$_GET["select"];if($l["type"]=="enum")echo
h($rc[""])."<td>".adminer()->editInput($R,$l,$b,$X);else{$_c=(in_array($o,$rc)||isset($rc[$o]));echo(count($rc)>1?"<select name='function[$A]'>".optionlist($rc,$o===null||$_c?$o:"")."</select>".on_help("event.target.value.replace(/^SQL\$/, '')",1).script("qsl('select').onchange = functionChange;",""):h(reset($rc))).'<td>';$Vc=adminer()->editInput($R,$l,$b,$X);if($Vc!="")echo$Vc;elseif(preg_match('~bool~',$l["type"]))echo"<input type='hidden'$b value='0'>"."<input type='checkbox'".(preg_match('~^(1|t|true|y|yes|on)$~i',$X)?" checked='checked'":"")."$b value='1'>";elseif($l["type"]=="set")echo
enum_input("checkbox",$b,$l,(is_string($X)?explode(",",$X):$X));elseif(is_blob($l)&&ini_bool("file_uploads"))echo"<input type='file' name='fields-$A'>";elseif($fd)echo"<textarea$b cols='50' rows='12' class='jush-js'>".h($X).'</textarea>';elseif(($Ff=preg_match('~text|lob|memo~i',$l["type"]))||preg_match("~\n~",$X)){if($Ff&&JUSH!="sqlite")$b
.=" cols='50' rows='12'";else{$M=min(12,substr_count($X,"\n")+1);$b
.=" cols='30' rows='$M'";}echo"<textarea$b>".h($X).'</textarea>';}else{$Wf=driver()->types();$Jd=(!preg_match('~int~',$l["type"])&&preg_match('~^(\d+)(,(\d+))?$~',$l["length"],$z)?((preg_match("~binary~",$l["type"])?2:1)*$z[1]+($z[3]?1:0)+($z[2]&&!$l["unsigned"]?1:0)):($Wf[$l["type"]]?$Wf[$l["type"]]+($l["unsigned"]?0:1):0));if(JUSH=='sql'&&min_version(5.6)&&preg_match('~time~',$l["type"]))$Jd+=7;echo"<input".((!$_c||$o==="")&&preg_match('~(?<!o)int(?!er)~',$l["type"])&&!preg_match('~\[\]~',$l["full_type"])?" type='number'":"")." value='".h($X)."'".($Jd?" data-maxlength='$Jd'":"").(preg_match('~char|binary~',$l["type"])&&$Jd>20?" size='".($Jd>99?60:40)."'":"")."$b>";}echo
adminer()->editHint($R,$l,$X);$ec=0;foreach($rc
as$u=>$W){if($u===""||!$W)break;$ec++;}if($ec&&count($rc)>1)echo
script("qsl('td').oninput = partial(skipOriginal, $ec);");}}function
process_input(array$l){$s=bracket_escape($l["field"]);$o=idx($_POST["function"],$s);if($o=="orig")return(preg_match('~^CURRENT_TIMESTAMP~i',$l["on_update"])?idf_escape($l["field"]):false);if($o=="NULL")return"NULL";if(is_blob($l)&&ini_bool("file_uploads")){$Zb=get_file("fields-$s");if(!is_string($Zb))return
false;return
driver()->quoteBinary($Zb);}$X=idx($_POST["fields"],$s);if($X===null)return
false;if($l["type"]=="enum"||driver()->enumLength($l)){$X=idx($X,0);if($X=="orig"||!$X)return
false;if($X=="null")return"NULL";$X=substr($X,4);}if($l["auto_increment"]&&$X=="")return
null;if($l["type"]=="set")$X=implode(",",(array)$X);if($o=="json"){$o="";$X=json_decode($X,true);if(!is_array($X))return
false;return$X;}return
adminer()->processInput($l,$X,$o);}function
search_tables(){$_GET["where"][0]["val"]=$_POST["query"];$ff="<ul>\n";foreach(table_status('',true)as$R=>$S){$A=adminer()->tableName($S);if(isset($S["Engine"])&&$A!=""&&(!$_POST["tables"]||in_array($R,$_POST["tables"]))){$J=connection()->query("SELECT".limit("1 FROM ".table($R)," WHERE ".implode(" AND ",adminer()->selectSearchProcess(fields($R),array())),1));if(!$J||$J->fetch_row()){$He="<a href='".h(ME."select=".urlencode($R)."&where[0][op]=".urlencode($_GET["where"][0]["op"])."&where[0][val]=".urlencode($_GET["where"][0]["val"]))."'>$A</a>";echo"$ff<li>".($J?$He:"<p class='error'>$He: ".error())."\n";$ff="";}}}echo($ff?"<p class='message'>".lang(11):"</ul>")."\n";}function
on_help($Ra,$mf=0){return
script("mixin(qsl('select, input'), {onmouseover: function (event) { helpMouseover.call(this, event, $Ra, $mf) }, onmouseout: helpMouseout});","");}function
edit_form($R,array$m,$L,$eg,$k=''){$Cf=adminer()->tableName(table_status1($R,true));page_header(($eg?lang(12):lang(13)),$k,array("select"=>array($R,$Cf)),$Cf);adminer()->editRowPrint($R,$m,$L,$eg);if($L===false){echo"<p class='error'>".lang(14)."\n";return;}echo"<form action='' method='post' enctype='multipart/form-data' id='form'>\n";$Cb=false;if(!$m)echo"<p class='error'>".lang(15)."\n";else{echo"<table class='layout nowrap'>".script("qsl('table').onkeydown = editingKeydown;");$ta=!$_POST;foreach($m
as$A=>$l){echo"<tr><th>".adminer()->fieldName($l);$j=idx($_GET["set"],bracket_escape($A));if($j===null){$j=$l["default"];if($l["type"]=="bit"&&preg_match("~^b'([01]*)'\$~",$j,$Se))$j=$Se[1];if(JUSH=="sql"&&preg_match('~binary~',$l["type"]))$j=bin2hex($j);}$X=($L!==null?($L[$A]!=""&&JUSH=="sql"&&preg_match("~enum|set~",$l["type"])&&is_array($L[$A])?implode(",",$L[$A]):(is_bool($L[$A])?+$L[$A]:$L[$A])):(!$eg&&$l["auto_increment"]?"":(isset($_GET["select"])?false:$j)));if(!$_POST["save"]&&is_string($X))$X=adminer()->editVal($X,$l);if(($eg&&!isset($l["privileges"]["update"]))||$l["generated"])echo"<td class='function'><td>".select_value($X,'',$l,null);else{$Cb=true;$o=($_POST["save"]?idx($_POST["function"],$A,""):($eg&&preg_match('~^CURRENT_TIMESTAMP~i',$l["on_update"])?"now":($X===false?null:($X!==null?'':'NULL'))));if(!$_POST&&!$eg&&$X==$l["default"]&&preg_match('~^[\w.]+\(~',$X))$o="SQL";if(preg_match("~time~",$l["type"])&&preg_match('~^CURRENT_TIMESTAMP~i',$X)){$X="";$o="now";}if($l["type"]=="uuid"&&$X=="uuid()"){$X="";$o="uuid";}if($ta!==false)$ta=($l["auto_increment"]||$o=="now"||$o=="uuid"?null:true);input($l,$X,$o,$ta);if($ta)$ta=false;}}if(!support("table")&&!fields($R))echo"<tr>"."<th><input name='field_keys[]'>".script("qsl('input').oninput = fieldChange;","")."<td class='function'>".html_select("field_funs[]",adminer()->editFunctions(array("null"=>isset($_GET["select"]))))."<td><input name='field_vals[]'>";echo"</table>\n";}echo"<p>\n";if($Cb){echo"<input type='submit' value='".lang(16)."'>\n";if(!isset($_GET["select"]))echo"<input type='submit' name='insert' value='".($eg?lang(17):lang(18))."' title='Ctrl+Shift+Enter'>\n",($eg?script("qsl('input').onclick = function () { return !ajaxForm(this.form, '".lang(19)."…', this); };"):"");}echo($eg?"<input type='submit' name='delete' value='".lang(20)."'>".confirm()."\n":"");if(isset($_GET["select"]))hidden_fields(array("check"=>(array)$_POST["check"],"clone"=>$_POST["clone"],"all"=>$_POST["all"]));echo
input_hidden("referer",(isset($_POST["referer"])?$_POST["referer"]:$_SERVER["HTTP_REFERER"])),input_hidden("save",1),input_token(),"</form>\n";}function
shorten_utf8($Q,$v=80,$yf=""){if(!preg_match("(^(".repeat_pattern("[\t\r\n -\x{10FFFF}]",$v).")($)?)u",$Q,$z))preg_match("(^(".repeat_pattern("[\t\r\n -~]",$v).")($)?)",$Q,$z);return
h($z[1]).$yf.(isset($z[2])?"":"<i>…</i>");}function
icon($Kc,$A,$Jc,$Kf){return"<button type='submit' ".($A?"name='$A'":"draggable='true'")." title='".h($Kf)."' class='icon icon-$Kc".($A?"":" jsonly")."'><span>$Jc</span></button>";}if(isset($_GET["file"])){if(substr(VERSION,-4)!='-dev'){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");}ini_set("zlib.output_compression",'1');if($_GET["file"]=="default.css"){header("Content-Type: text/css; charset=utf-8");echo
decompress_string('*R]!6crZ+HR?P"r%m?-Om[F4Y/$@`RgH!"/-lj5g+/g*l:siHtv(6jLQ>^3w8PQomZ}Ek@^nucvL-jaAka5e?Tg!yq6crV[e=B$vVQZ6n`0>M+o_tQt!|vG[q<>G<,A&j/M<(R0gbwbo19Q1B:i<H"=u-0kL.yE2Gg
1m`[
A*]5F7=!bcdSlg$]^5[@Fp^bX9g_(vd9O<{7;lyE"Xo0^X3E1Z@$v<UN#(n2:!@/tx1!GZ=8|$r?eR-wc0ZN^SBR<kCW+Sqbu]wbUbr5j1bk>C`(B
~<5&Oij%HgQ$6)$Lc!7a[(^q
F
UV.mTk.y6n[)#CL-?^Sp(Ks:y1_Tw)cBdLj"R}(mw!UgIDhmlZKu3z"@S.:Tb;*+?UlJ[rE])mqLn?6AFugS?k+WT"4P^LO~m@t/Tl8HkX$(x68*@qkrn&dSmYBElSA3n,J*`]RYRK+}PF!r45YZgql4vv1idNA;yiY4@)Yu`E/I_|Yh/Zg,0:$I@{Dv;O>~y^Ay)kl)BCEcka>Skw?f6)q
GAo1E]Lva2Ew+hY-q~]D>_wY$D;!u5T]mz0sSpfDVyNW(/t
Ui=pGcPZ_>QC
JWJ
r&p@n=AIZ+2.j.s@d&SRX
u#~XUiRJ$.neCE{4X#rOLk(R#1`H,E@*~XjbD*hD0i<>^n.kM
,Wu0gUxY6)^nbgy<<F(c89m`ut

lUwr{UC<VkRo1
4Cnbw`4^L>mgLxwxF@v;H>)UcZ:FvUI9X13CCJom3c}MBTj
e
SJ6FnqY[xk6f:R{X-M!q1Y{:ybOY<Zd*N!.]{7y+G04vr_gN_2aH+(9[1DjEm/SSz8w>)-xq0W5jC3V
C
%Ye4
U1V~N@v"!IGl(-,K+UlzV0rb+{#kr{!m6`Y<DnX4cW"/*3ZAjSj=w<%ER/z$I@Di.pYOx0s=fBWgkF<y0
u8T[Xe:V>nVHx/)Y"[TW
#IP<VLDI`h~R)4UE:pW*Kf3v|<cd6.x$?=7SVrH4?&q,R.G/*Uz`h4%[}(P;-NMvgT03c(mI?$^0^*z7ym{ydVDtq@-/9YJ:(J88-yEku
H7feA@g%T9jQ7c#f7?{<N.oI_L}t35:Kw%HdG$9$=FAnWfFP.K#t`/Sj0;+j2ZEYT*=MO&x#Fus)+lUbWU`.H^U@NnpQM[S!eUw0<tl-q&XxLQBj:WdOv!i=0HYyLh9.LdiLN0yDN=$5b.0aS;"(NEo[,0,b(`0x.pJd&jw`"5h6?Z)d_+HpdX*eR"GH@K!lVGyk3X2M^ml`F:mM6-7a/C}=+Rv8vgF3}Z#:8q)N&G=Q&l53kVDDBvLupDO2CJkHS5/TS=KN,6$B,$PlW,KZ:RYE>7Gc6@=Q#O*xDOIWx*_&D5-Qa<2lDAr3!2D&vT[&$=Vxj1{j_[cNeTO.u1?
K2IAMiP^)8&:df+)`,7+{4H+MShdhdX9_s"2:5?fPF`5jNP5aqLcO,__U(z&6kR&eBU@}
v+l=
?Kn/d"gD2m!?3~mlBUYp1!6_eLb?;ft$Y=a3.ZUU,nk8amMs-gUj9x:8[j!Y7{(ac
ELr>/rj>n?Tn5JTc8F4Tda)GM(Q`8Z)XS+m^PiU,_{@<cu&_AxAWR,A}GND%.n,jXNlRMvq*aS"_/)JXEH9%C%xz+de!/nUc#V"dKC/9bZ<h/@$Y-h3_9O?!I2.kBp/TxPrY^|SHS1a97dch4]g7?#Gv4[V,1U((15@B,L9M!rS=#/lCARq+pz^CM75<T<?JgmN3J[&9:#TB
~n9Z24r8R,JwI8q.BbDH`r)#wq$P5Jm4>oK%`C}
!Iu%}4z:UT^eTQkbZ1IB)^-_D+{$`=cwwhhkr@Ah??%csyoEna
o#o}:H9YK$m^nsn$Psa@Al!S
8<">0slr&"j%3=XoD_p+(eocZ-
uxJ1EcE}<`]&I,mu_n1m>fw!=[
$I}3*VSn8#E]w?$yj,!_?uC$On^7=gN6wwD`MBEJ-N<?:Nr3;?Dovr+Ys=
ooTv>r.+4iBW-&-*=8PF7PG3T%:N1tE3oiuDM0RsnqS^Ize>;y<M<0.t(D6vR,E;gA%~E9ugxgE=GZ^wI0!jfa&@2aneoRoNujU#,WTMz#2Z46"]h&FpeZO7J!-FsKdHxlk^Bz@|UjMJVyC[32qNbm=Lh0q`w>gK>t=QuzmX7~y_JUE=y>o&b_Q>lHnsz#DgH@7|tg59C$Xrv]cuvYsQnUs1L?tKdsh0BAb5TeTCuZsrujeCyrx"N%7Lx,TMwwHAv,Y%p;i3ka)O,kkKLL>mc(Z)ujRq`iN%n/LMKSFKxAnqpI6d8nKHy&B9l>n?0#7xx#1v=Dy],qZ/=JxGvFL7y?UoTLJN!j"g&[cWJHs6=IrP*DwX&%1FL>DHckr4QnWZRstbA.Ap-,,WI`F819)1b<*yXd4^l]/qh7W
5AK-!K;,0VaNM-4xY.R~t3hu0eB;[5[2wo1
"U[Rsi*;)G[}4R`7T&VF@Y8s_i=}w)_8BJ:AvhF&^w)3ACT6_DycY%1L@)
w4mC:BeR**$h+_OH#GL2yLnG_[EMIIa[zEmc0.[QnL>M8qHfz@5KA!_y36nd)H"*wI$T=rumaUt)0j.v|.8,HLv)G`>/H7:k6HoBE<
hOh)6**K"9aLh(CldX>~%bJ.twJ3w_Sr2^v5R$F,3x13^<Yv:ejS7x_;BwZoGDF?_5b/VKnnt!$#.:*oA$L=y0OU6jQkIMI^>c.]Nv/$=qFIm.>o3AKnWPJ|??FmM]JL
<>mpt@{d.U`)@cdVgPf7]7QwA');}elseif($_GET["file"]=="dark.css"){header("Content-Type: text/css; charset=utf-8");echo
decompress_string('$OsX9b7V>fh0U7tC7-+;-OA*~UsU(SFi_c8JDxaPG<Q0iMBu;e)lfe|iRQ{m?e=+R0+PM6!*|s<CAT,t`Zvd53"xl;W(9un?%JB$r"{K_-)_`3X8Pds7^47QRoxIL`@19f<XA*(iN%|:Uc9=h;er501[Irf7A-bN<C*%T4}<e?C"LWvO-$ZF^$P%
G?p6F1u:&Mb3$X
LmI5mZ&]]d`$qO>S
Y^LR5H77mQ5QC.,j7XqLe](
i3X5*>t<0qwv4tKdl=K^IYq<?K3P*</$gy$I1hZD@3N_h~Y6BueAae]
2,Kkvo9,hJcmoYL#F)XFhrs&_;1/Un_ct(E2+5=PXt97yexC7gKTqw+[<<fn-z3W_w56#8Xnq[pBjX-ms.ZG5)k!OnwJP`G!+|C`y2$m(@S:a!YJSB*zIu6j@3Qx7>vMf^(}H&m(1`k)uk<RvJIZvGHU7M5w[osQgml.L*OS?"+cHdJnGD$qWD_[51`H<<FBeB<|[Uq-vf>/rRF+b/]i=)["FJ#
Zy!OoL<r>U5>Qrhc>mltPKMq"iH+idlxeUl*2=rk<D^B@7l.h3"YO&FEjPjXd:m
Yze!Z3]PK8ZXjQj=B9u8UW61nJky!,TS&UQP"vZU&)w,EI2B,.32p/oOyz$"33(QX#w.#.dz]ziPH0c7m(o"3U;/Y}Ed:Xwv@yF"0}cKY<4K;,O3HEV*D:yK02I!]q%C.96,AXt;x6Dqs[>=>a<sDJZnL;hSwb*T+HTV7|aEM{Cdi)ZsKApAOyI>4}vxsk57');}elseif($_GET["file"]=="functions.js"){header("Content-Type: text/javascript; charset=utf-8");echo
decompress_string('.X!<]iDmr+SyhDs2VuCQ
m:=1apS3+pJlArG"bSL#)]?`?]-GXI0U+~;rmzyvM["jtt6paN`]+]ew?`C@!lF6JEB&i%`--~FLl-39N$1VViUP)wbG2Wt"a6A.v>?H;xXS`:yuTD58IL^5cLA5UYp)V_,]5Y6eCKfn:I):j:pv^G^(c;5^B`-c"9Hfx|
?`AB%Tc-QflMwV90eCCZ8D]0ZE!f+hX>(lh]r0UH8MhE=G(tTWM^[i`GQ]Rkh/RB1.bj`R+Ji!_)~.,
{v.?@?o&?yo]1BftC4rlNPKNDI1bug(duy[G
^PK)juV~dx633"`81.s9$;pc<i>4oBYf^VCVmgna5lw;!,jf!j;?^O,I4Cg{;qfQfWt"_z;ic[*N0,Bjw$rbAHG<bKZoi:^|DZ=t<XkD?|@-3Z@cxad2r>)z7L;_;!5[:=nh&z-(x-E!J
0*+,)
0UYuA#e2IX?~H`<(=nk</)`J_]*~nPt2#g49BPk:xdc}twNIGajM92>b<PG09%DP]nSg5U3o=u.Mr_jHA49s=[<~_Wy13@bUy0gb>3i6)s^~`}tp
@E>]M]1EelFP}r&"CAT$]M#
{<m
9k<=A`}I,NR%Ob5#,P`iK2W@RI,%c0^>qc$hUi]HZ4mLjB5oTpuCEw!;a,{)[9D^tv=Y/Q?u=O}w8Mp8|2/wcD>4$$s#2jsRw8L>RgK.T]y?c!P0BJNgv.r.-f)pOx8uGIqZ!]`Wzd3Ik=qKcp$g,8`=`o~q)+eE3fVubbJJ?$MH:ue??6Iw@He,hy/wx;/?R0p4<>0K(/<?fX#`;9YBV%@Z!A8.oC|,zcPl.p-5yL,C3R;tku("tCP*CfJFV#*Zj/u-;.(kU?YbEY~lU
X8ahwUoABH$aB(GnK<xN07UgX.+j6Bw7e4LUP65V,1[E;.x+}Z()w3XS!;]Pm0P2Qs=U2ighM>d?",rqxW-h;B8e/Iu&RnX!eD<LU
}"HBlugIXY?$fC&EU&C6{FlEf+j9rR~I|5=G2GqCBjb-+Cj/CDJKpm]vNH0@y]/WhH7y~/"7lY@r<`^aq=HCQ(1;{Nwd>CIHoi]fY,T+4I^W.kpoy1h0D.{PpC
<~[fta4x!dst={&dk{^@JON&7*3^Okf8/_cq;oN7RwCeB`2YU/&Np!NNh`Tz,P%kF?$cSwaDteFr
>
2h|yF$CWlrFhZ!w]}PW-g3;Cw%#K{hUC.QALgA0/]j$jPx1"]g^&q0c""2*D=_zeAn~:ahQ:=nZ&HKSnT5U.640[/<(YWua?-7wMQ6ngZLT,OpeIhSt@^_]`X*;t~(o(+9cE(9#/;J@
=Y(j*q{%_f&0}6lPdH(-o8(T9dB,R
2J`D)p:er-R#1/&-8E}>#H$,XeB6~D(#@f3%+8;60=%i=E|v<%o#D[}?](3t1t@l,i~elnzO,]A8)ada{6GJEhFEY0RNI-71Q,N)[?rCkm52IOw`!YHL^h}74lDI|"iJ.#fF.XxEM`dA<)ev*O5bUO=&O!q%44EVX(vXS
"nGy,ne6f>9Ji>#Tm6`4zgA0tU*Wn_F3%E/eA71tZgRhelxAt3o)])NC<AI#EZ;]#
ppVFLLXUX]r<j`WghV(vkXmmKQ4<][09.P~o1=iTL*a$2h,Go`5/u1Gkf:C>hLENhlih:6RZTc0J.8"bY-79U,5csud*Cf?Y}%pNBt[bfgLiw(g
I?NR_=TladF`ZnGU
t2NZR%gtoIG"l5VG!"[PS`VtGh[#sb%a`w71*bcsvT+h:X-zYE[L*N5X_i[iNfNV
0y#Km`c`5`Js(#|pCq,<BMcD5F*D8c
l)sPN/CzB-q[C*bZ&>QYrpLd+5ol"n=
0hLk;[CI967x^R,w+S1C"J6,1H1PuF!!=K_M;oo8:[qug%):<8lFi41I[$03,"2L,&6d$x*|bo@l
h]N1P
!J$`E)W/*GQ0xo}u8G"l_JhQf5L.VdTHDnVN+,xpUNf38B1PbrJ[e?juDWa0g!C%<F`VAUT`n`K4dP4<h]ydq!BKBVKQgd25.<uXW!lyp8rv[),llIwj36]"ht~%6v5cf>Z&R]>]N*QQ*?n05[tWKns7!5PSxneSK
tXeD>X_YT(R<A(F/YHk.??uNP[f`)Q)lHbR%&a1:Qdo;(s8W}x;:jN(]djC8:b-g:Ni"k,pE]0{.ewynWmJ2#Mos8f7D[8EXugLNz9)/g.1I,Lx"-x+9Buz5RUaKj_Q1TEknm5jkF`14=H
JJg-Z(SY:_mOvepQG
xx."T(tkn-L$1Ap{N<VI&uH32lO{W*qho*4&=JmZcb^2J&td$r-G_5q~6ZG9xtu>MzKvi!,YNn+`9>,-,9_gNyhkB~c:$_gv"Voi(b`B9R0Vd(^.Wzt=rJnuO}5n-sX/98d@N~hg$cJyL9mSne]MdB0&QI.p%cSH%q%

5C[W?:wqS8w2RbH%HUb:j<Z8>>r$wr0dQOm^{(e8""pVUE!<<uAl/.RBiu1;9Ne#+I+Ym?*r1bC$8^WTaZZGXYKoz,!?D8)w.Qo%C
}8VpA7>QT$QUB[-!WG.AN%C@l!Ty/gjQ5Xho.^_fzN>Qy.t)Im%(MX"-@SeEvH4b7jCt#9OK]OCr&5J#j_(JP/-0DDLm2IPrQdSy3
z`;<DRW]cKY"RJvX<aOnEOck*:gTC^l/]M-&{yd4CCo`XiMv5V[(9/dSkqUYxG}rv+)3:-[!d;~b5iAvX9]PjYJx=.
S5oXHB2zTP?>,$8An8*[-jB`YQEC`#0A]B[oPFGG3dO:a.1RsiSY[08LF*x%K,6EU.Jf%g@;Akq9xltZXm=00t>fVJWo*jC6-2R}N#KOPwXMV-mJFYdKu4r;w_l|SWqOG0Po@[N^xu7pZ1Ygrvf^Q*Q95{3CY0VI6@N}mv=CiLN=f[?6V;X|?YH;l0<a#m"4P1:e$
QeV3ZLc`niy~ACd.V":/Rt77e
`,F_XqV>os)=<"HoHe@{<qckt0-GHEB.$L_bdBG-ts0F*28!lGoBn/qODdRdN3pHB?MM4703TUH42)5T,M/m]Y6xi[<Y+LE&a-gDuhNsrlyR5w;IH
1db9#nHxs=9{;1e#y{%)HfZMG<^~FN0hjXP4y^4Mn@s-N)f>a#?6xKJ8>GF:+rrdl
q_
%Kq5T/XjC^u"*_hQq$S
hK"u`gK8Wm/+(&w[XZLQ5x!``INaEpJ&O3FkzZt/gJP)j!%2>p_rv%PcIEt_jokM(]RYj9I60sAH=W$IlMu=.IRE++64oIFdwNNN|`F
u&Dgcvss#-y?"tSo&xbuecD5
K3?%f_6#"0S`1m`wQ?#b_$F
GnDy5+&frVr/"eQcbkVAxAU1CqEcXtxfN!La$Qi-rrQ
PT<v4c
292rr"YXOh_-|wX5J*-wBpKL?>EditX&P&>x%C=+aQh_rUt/|;,^hq[We0^265NFDoE#gXRH5n`scg.Y7:Z%BUTWh%d`+=GHAnnv7&@ZIv3rTR7`U0oW*hx%d/_g9hKg!,,lOvf"+"5i`<qK;x|@O!kQ+8jq~wvqZ_fMVL84n=:y7?8>V6kHwNCTPgGWwj7<z_>,DN6q?Ay[hi67Zb/Z*oPewx+&TnT)^?LG}iA;+o?[1^_*pG}%
20Qmg@W<EoEjJx6bX>1U$A&Kah?Eag<FfFozMS:uF%A2Ze8wC=8J!8-G-
`sG>x3U08Wy7w$4W4@Y<Z@tXhS.gCP)ma01{9M;$_tj~sdoLG[Ni%lX~ku5^/:E@=:jpV$)89{uEVbvU^RtE,kEDRPs2/{?pC^0!DTbAe;fs9uT
?xI$S3#bOLHtk{rs^Uw`+jqGO0q68>TTg$(%Kd"^%D-S@7qj]%YaH<<B-?9%`X[&)d7!/DeT9K40Kat{h^%tqL)ivrE;-OZd]DNEeKpJ+zJ2iO<o$f_)i0*Eo,0Q<$)Wnl7&2,4XRu%;]^-IVY&/Dc8jKq3;<xW&3U5Ua_M7WBRS6_,W.?SnM:/1Y<X~ah^Y
w$hAuADv+>?a}e@jv^
od4re@4~v&S=e@j:Ctm@p#S|x2y?3*VW-]Tp1lBW3y/3&F@Bv+@xDN8N<b^]Aum$%$tXYavA<Eslp,8a]gQLtFG["F0B
{?bV)%!QBAr<}YDQ@BQlL9]Vv=-x-fyf_B5Zrt@lI_p[8AhB{-@Pi"s4)r32j]`n?l]d6>YJZ;$FuBZx}iAr)q/OrL(R9/vYv$::HnJ

,3j+,iD(S<w(#63RhlI_FaMD91:iKng&3Zwy>M5I1#nKt,]$P-f$ZJN)=(k/:|c~2|.t3_f.aCoOHnFt7{Be,z.ctXEeS`pHL.BeXnP[hWb9s10]2.3m
q>4Q<,.5[pVLw"A&RIZ"]FW53Lhx--;iC8r(kq*5U5Pt.S}"@jhPxoa6:C"kV-aFz
)JfD&j&g[((g:Ri9+Tc=jeOh@8fU}pm.*POct>{,qer
2UW5[-wxu0XGExY[k/s5Ji*V.?:9H.Z6Vr<#,o7_r9BaJ1=dcd|hp2;AtU/lBo)8v$N@`AOer?)<-1QyB
MlD;@T&I_sC#J79f.edSXqmvw5/pE"by1*JR{B"A0vOudhaTtf~8XHV*y&~Y4_xVjW0/xXRYZU%?Y"&Q1k*_H*[(:I>pjw
73ktZVS$Xu3yO-uJ
9Azw]Y8xw(kr)!B+u^b[O+)[f,QRh&}=OaDY91aG^9:m#7(!
t=CMs6KKN~LK+*Rn6R<j0+sFuUz%&q@8,%6=A0!y&oX_[:Ld/+0HFxEq&sC35,GZoO?+(>1o1Uyg4v4`&ojN=X#6tJ0m3nqy,,.D-8D9B|PwaX[C=:uCZJ<!"l*}*0#:2q[~Bhs=A0qNr23a00#SM9;#],50<&ZWgi^7Z?+{2IxnPPqbq#O>m6eiMymaYOq}_.8sY/8tae"TN!.x$$8`Z~s{:[T"T!JV2[0!S0qXFO04q]yc![FlYgMG7=vK0(?uw.y!PWqZt3LU?<V&:QdG"O5|Iy[sAk#)vt,0l-%A"1#B:OiNRJg9NNGTt-&a2Chx]-^rN&@{>t
(9}dg]O
%ZI$FeQg4>9
]uQQ:b?)20I!)^JJ}bT/D)G+}Y>N[ugxqdn5/9iuR4_7rNBl6_9wU?u@MJJ!UNkBzQG>22ucWek-K>g(2T*hiL8hEB|@X+k4lJ<>"P.nmEF-ZsseEqvx8ghi(*{J0rYt[*n;#!ob]KA](%t$6iAnV)>n"nY_Y2XiY&gL}x/F|+E4)QN3=&2ai&dC#[5RuOfD]Zk!j")nGn=@Hnbq>n,CZ9NS-Y_bX!o$C>.#tV]JFT:lObIt]2YHBf7q^]vAtHWvqvX.d.l$qe@57J+5,O|(N]?.#x@FU!Ht|Y*Z-GnKqdgePs7T3evaPAlF(5uC+H%IeR(%8AXZQB}s5pl2rAiT"-&RZ,;J/Gd?aT^Q|jCTDoB`zMEF-[kK;8LdFD"gp6z988hqin=f-N&');}elseif($_GET["file"]=="jush.js"){header("Content-Type: text/javascript; charset=utf-8");echo
decompress_string('');}elseif($_GET["file"]=="logo.png"){header("Content-Type: image/png");echo
base64_decode('iVBORw0KGgoAAAANSUhEUgAAADkAAAA5BAMAAAB+Np62AAAAMFBMVEUAAACDl60rTnZZdJNziaOerr60vszI0tr8jZH8c3X8SUr309T8Ly78Bgf8r7H6/PpDBKXXAAAAAXRSTlMAQObYZgAAAAlwSFlzAAALEwAACxMBAJqcGAAAAbRJREFUOI3VlM1OwkAQx/sGG0Xh7GwTz7b1AaRwNhqIRy4kPRKjpcc+geEJDHc1chYPfYJ6N7I+gJFQE+UjJIyzS6FqqzeN/A/dtr/Mzsx/PzRtlYSI0fd0Ju5+wDMhHjCTMIqaXoS9QWYw3iLlvRHtLMrwKqDnNLyM4m+lReizCOjXWCgqWdPzvLgJNgnvUGNPV6IVyc7cim2SrHKDMMN+L6DhTKgBDVhqCyPWFW3KwfpqwEOAXUembeYAtn0W3ssErN+RdbxBOcBYowrU2Di8VrEdWcQrx0QjqGlx3m5LUThK4DFRNhGy5lkwp2CVHZ9Qs2ICUY1cGmiUfj7zOnBTyYAdo6a8otjzR0X1UT3uSc97kiqfFzPrMqM39woVZcoUTOhCin7QL1IoJLAOKcrniyCXwUhRboBplTYPSrYJPJ3XLS6Wd8fJqmrqVm2r6vxtvz9T3kigm3bDzPvxxqmn3QDg1l7VcasbtgEpqg+X2133ixlVuTky0Sw7/8eNF+4ncPi1oyFYy4Pk2tz/TPFELrt0w6aX/S93FMPT5OwXUvcbnQl3rWTT1nIy78akqjRbPb0DRTX3Uyvxl2MAAAAASUVORK5CYII=');}exit;}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(preg_match('~^/[-\w.]~',$_SERVER["HTTP_X_FORWARDED_PREFIX"]))$_SERVER["REQUEST_URI"]=$_SERVER["HTTP_X_FORWARDED_PREFIX"].$_SERVER["REQUEST_URI"];define('Adminer\HTTPS',($_SERVER["HTTPS"]&&strcasecmp($_SERVER["HTTPS"],"off"))||ini_bool("session.cookie_secure"));ini_set("session.use_trans_sid",'0');if(!defined("SID")){session_cache_limiter("");session_name("adminer_sid");session_set_cookie_params(0,cookie_path(),"",HTTPS,true);session_start();}if(function_exists("get_magic_quotes_gpc")&&get_magic_quotes_gpc()){$_GET=remove_slashes($_GET,$cc);$_POST=remove_slashes($_POST,$cc);$_COOKIE=remove_slashes($_COOKIE,$cc);}if(function_exists("get_magic_quotes_runtime")&&get_magic_quotes_runtime())set_magic_quotes_runtime(false);if(function_exists('set_time_limit'))set_time_limit(0);ini_set("precision",'16');function
lang($s,$B=null){if(is_string($s)){$H=array_search($s,get_translations("en"));if($H!==false)$s=$H;}$la=func_get_args();$la[0]=Lang::$translations[$s]?:$s;return
call_user_func_array('Adminer\lang_format',$la);}function
lang_format($Sf,$B=null){if(is_array($Sf)){$H=($B==1?0:(LANG=='cs'||LANG=='sk'?($B&&$B<5?1:2):(LANG=='fr'?(!$B?0:1):(LANG=='pl'?($B%10>1&&$B%10<5&&$B/10%10!=1?1:2):(LANG=='sl'?($B%100==1?0:($B%100==2?1:($B%100==3||$B%100==4?2:3))):(LANG=='lt'?($B%10==1&&$B%100!=11?0:($B%10>1&&$B/10%10!=1?1:2)):(LANG=='lv'?($B%10==1&&$B%100!=11?0:($B?1:2)):(in_array(LANG,array('bs','hr','ru','sr','uk'))?($B%10==1&&$B%100!=11?0:($B%10>1&&$B%10<5&&$B/10%10!=1?1:2)):1))))))));$Sf=$Sf[$H];}$Sf=str_replace("'",'’',$Sf);$la=func_get_args();array_shift($la);$nc=str_replace("%d","%s",$Sf);if($nc!=$Sf)$la[0]=format_number($B);return
vsprintf($nc,$la);}function
langs(){return
array('en'=>'English','ar'=>'العربية','bg'=>'Български','bn'=>'বাংলা','bs'=>'Bosanski','ca'=>'Català','cs'=>'Čeština','da'=>'Dansk','de'=>'Deutsch','el'=>'Ελληνικά','es'=>'Español','et'=>'Eesti','fa'=>'فارسی','fi'=>'Suomi','fr'=>'Français','gl'=>'Galego','he'=>'עברית','hi'=>'हिन्दी','hr'=>'Hrvatski','hu'=>'Magyar','id'=>'Bahasa Indonesia','it'=>'Italiano','ja'=>'日本語','ka'=>'ქართული','ko'=>'한국어','lt'=>'Lietuvių','lv'=>'Latviešu','ms'=>'Bahasa Melayu','nl'=>'Nederlands','no'=>'Norsk','pl'=>'Polski','pt'=>'Português','pt-br'=>'Português (Brazil)','ro'=>'Limba Română','ru'=>'Русский','sk'=>'Slovenčina','sl'=>'Slovenski','sr'=>'Српски','sv'=>'Svenska','ta'=>'த‌மிழ்','th'=>'ภาษาไทย','tr'=>'Türkçe','uk'=>'Українська','uz'=>'Oʻzbekcha','vi'=>'Tiếng Việt','zh'=>'简体中文','zh-tw'=>'繁體中文',);}function
switch_lang(){echo"<form action='' method='post'>\n<div id='lang'>","<label>".lang(21).": ".html_select("lang",langs(),LANG,"this.form.submit();")."</label>"," <input type='submit' value='".lang(22)."' class='hidden'>\n",input_token(),"</div>\n</form>\n";}if(isset($_POST["lang"])&&verify_token()){cookie("adminer_lang",$_POST["lang"]);$_SESSION["lang"]=$_POST["lang"];redirect(remove_from_uri());}$aa="en";if(idx(langs(),$_COOKIE["adminer_lang"])){cookie("adminer_lang",$_COOKIE["adminer_lang"]);$aa=$_COOKIE["adminer_lang"];}elseif(idx(langs(),$_SESSION["lang"]))$aa=$_SESSION["lang"];else{$ca=array();preg_match_all('~([-a-z]+)(;q=([0-9.]+))?~',str_replace("_","-",strtolower($_SERVER["HTTP_ACCEPT_LANGUAGE"])),$Cd,PREG_SET_ORDER);foreach($Cd
as$z)$ca[$z[1]]=(isset($z[3])?$z[3]:1);arsort($ca);foreach($ca
as$u=>$Ke){if(idx(langs(),$u)){$aa=$u;break;}$u=preg_replace('~-.*~','',$u);if(!isset($ca[$u])&&idx(langs(),$u)){$aa=$u;break;}}}define('Adminer\LANG',$aa);class
Lang{static$translations;}Lang::$translations=(array)$_SESSION["translations"];if($_SESSION["translations_version"]!=LANG.
410076550){Lang::$translations=array();$_SESSION["translations_version"]=LANG.
410076550;}if(!Lang::$translations){Lang::$translations=get_translations(LANG);$_SESSION["translations"]=Lang::$translations;}function
get_translations($nd){switch($nd){case"en":$f='&X.]8boWQiQa~8y(
N!
?5pn<q*YDA%WG&`k.LV2SPxx8(ep!tk^(<j6If-MTx3C]y-Oz"+<j17S$byRZL;0M>Q[ZxNVpJ8P#BEL+>b;oa*<+mLbVZeL9cq37`!vaphG%)2rq
>)cEQ;FejRoRg0W,uGoIUc$cD@7,ko!Y^($J/a&
+inVTiQNB"qp~bP!&OWRBwZn+L$NZy8T(%p0h^cJF>ka*m-CmHB,q
Eo)/[IY!@o8P{6ub3]6%Y[sbZuC1/q%T)5_5;X5u]>LH4V]u<m&4FwerReiBELVKq:NKTjf`Ijzy?q!X-;jp&"P@vEvu&qUu3o+!AZ:7]aQIn]GfY+#P`E%v!/~2n6;bBUPK|Jqc)(bpu..H3H6/eHRZ%LoB>L>nyTdq(4gBw.)][V/@(wwghGhWENBV.0$?0_yMHl{@YxgB;=**#:9XmkYbIIj5%i<^Qw^J5YMf?N`(E`#=~=YV[(*x)533C95*ZJ("ml:E_AXAt=Ll1^L"N:|+B/r`5a@tlX
xh!),/a@KGfSd0<N@4M`+mk=xh%`1ig%EMd3/v:~&FYv8bQp]"mhM;oIMZWk)}?N0HS=U4yL3^]UCMqE+qOtxH4>pG8o`xjV+j92SK#(F7H{Oat{7+!S`8$G?YJvB-/hm{?QU.,Udz
O0Vs_j:E},D;[QJ#3od,i1|((Vn:DG|dA
M7LU:Bdq{`gC[U@hn>}e{WX(p>fAhTlst1RmUO"VB"e`0`2t_40x:l}7$1
#YNWYM$e@Z5(X9Bz?V/VMK>82I85YO>abfO;4,m|/RkYNf9^]n="fnBEnjIv1T^-,1-TTH,RIvFW+8?rhwJDUI!(I{DhyY8$qB(<CT/IR3,)OQ.|]`4*HSY=cL,$1`GY$(ZDFM<qyq6=,8`Yh3v)AMm!C-?Pl5P@?RT]=gVyR2f0BIA#8EKc=~Ykptkrtt7iRda`U1o^9rm?_OT4"{l4G@mI4aFzc-[u`gAcyMZDPlu|6QAUHUD@`VPxq*h4Rtc7#;>"uW,%Ox%L[d$<hrW1-Vi~[!y7P^H?9y*=Hf;c2rSXdHM{tpv$aDncV!Gr,:`R6/:9HuMMeIsQAy7TgGiE;X9Mhn(P(V=_.&,jj-Yy7.;2ay""Omq<E#0;-ZiCko5/w>Je-~7n4;
NXfhGc>hqSvg4tX@$/wfs);N3JcA,V:kg4{*p$A,bV$Ahq:[gr#hlFNp)*_o3E%[_wk3gT`cz0yH+ORUm#iiqvJX*vyE
IbS)sqo84PX7uyu^=`:Jp.fNo$s5%`Al,(KiW>eNh3Jp*GR:b
V)c"L1?`?ih@4_3MX>oOm;x9nTxE>2wR*"roC&^iX.Ch(uSniv&#Me
nW:8]_IX2^E;^ym#6F(IZ&5KHPK_#1G`?
Wm[1d67+`,Vr{ZUh=<+f#==,?SpH8(zOKXPw,d`iDi.m|RvFU/ch3Oy';break;case"ar":$f='#R
hibkZ;!NM2lPZ+%5S=b4m$9j;2Q_(}[z.:wk0_vwn;c9SHX3H@BKf`;yCzd",U:<+@o+Th85M
6
y{Ve_xS1?n8,hOm^K#VjuuEYg86DU1VarE44x~4dg*UfXw&y1L]F[d&mugNHhO(&h;h67
gO^?]9lwqR0;/xIrkq>AwHe/_#5sX:3qK
K&W3:UZ(LNLonT1
^MqZvxpW]dKdncZq%"vc<F>4"{W]*#]v&ulQgqE7j9ecL"4brR
2--(/g"i:VCwIrMh?DoKVR9"=5vqpDz3YP]V[4
7p+Shg="e4kvmN%i.$;zpIa{@x"zM_
)5wA{Yyn3eu/z`@EhB)rRkoU3THmARDRFk,[`1%Y**,Ncd4K0#u.toG2w#8+/tb6cek_,%~DVDi.4nxd;Uq1t5vsle3$3%w7hAe!2q}K%9i?b#s6/AyN;Ui<ITbb7+yiP#<E/Z9E+$ORi/I(Kcm$Tk&Tfn+y&.>bB$}iYRgqTOc:=_cCjg5G}2UPu]c[CYKRjILHGUNL|YB"gl_W;lD@w2uUf.B!KsPie^s&xicZw(cR}3(;klRyGx=jV1NQ>SJV7od]2p@C=3k4^n?=hu7Q5qWU*u@pEkX$+:gyPT?Lq3v%i!s;`.@YNJdTOjX]E:>5_t~u6V-H/1(hv7`3s(~n{Ex)Tqu1a9DF0d&qFBOb
0<
>7%#$vDQUPg>/%uw3"L7MK`9y]?d,fGe1M[trFs%MUv?n?OgOkNU1m=p!bwcH&nhnHj
9&*#{g-o+.b#Ojzg<QdA6")rmdJ<7.`saU)R;1MQ4`>Po:9IH+:A0kgs">_8,0chUcNg7t{lbF0AxxFRu!KE|K!s0Pj^iz)HiDhwY9h:[mE
uwMJ@0U%/k_/6w5oQwXBfNiA
<Hv(K2@fa<E@TlUBcOE%kJV"G}g$f$`d0q^7<D%$.|csq(J
@gpWGKCCupWa3&XD7s<=vPTOC;)uNad701Y6x&m4mE9d"+F[
~eq-Bgky
SGX#tmagv]-XrN]9Px>~Hi/9h,D]kAI5,"-Qo|pPW6=l`4KPPOY@Z1P4#>fy&S!A##ER.Z-nGF8lb+Y9jx!k)pQ:S`L"KaUIIW`Mf/3j&2wVF)%Q(8v@+;BBmD]uuUp{i&u4bRanGgX;@Ix/>?BgL{(~6ecw"8Mqd4+vXAJ&xeqA1*o:DI:+>M2,_+oUfc0!2f/V#s5/h]";#o"Q4]ILs/
;$xnm&Ku3o4h<,ud8Z]L+?o1Cq#,fm2TI?cmXn{P{-}7-7LD);gUHsT6*d;b-yl[+rmxK2uqOlf4:k;uEj5/P2{h9^]DaYA^qa!I%+`Ox[#?Tix6mat/2P4lMjl^4<pM<w55bPt#LQTH*EMUxbQZC@pP_k{#<wsF9=lI5OuMTFcVKA3o^%Xmp(Ua_4)XWrc4DYcs5v9YaMJINXi&`e~#h+xKC!Md(T1viHw*_aXr~j-b0Pbp>"
Xl16qUfg6j
klP`]C:`$:i`/Lnf,01hduhqKvT/u=&EoSe`9^Bkr7PP}?=-zG+TRk{m;T;nj5&$?Hz+J(xfl@<k853_NUZ)|lY@zJ!nx`pXSmzN?Iz+2^PvHkt64SsvlC.N?EHX8l$;0nE%+K|HtL_HdA)Yrr"0cC%Q6V<qrFVvOhWLOhgGKXqq$yd1cHeV"h8`<<hb9nr>afvD751y#R$t9UdlOqW"$9DExmE#;fA%J_CdH^c:IBZ8RBje#nK8Er.v951X^P&Z2`K^_#*=r[]Vo^L.RKuvoYI3yX=+F-"-[&rY%4tA*W-W=Ec;HdG!Qxt7@PU4knIodhj-w=]2Y3H,S>
G88WxMZ,/Nf:k|1D)x8~*,qie{I@pHt!:~:((SY]';break;case"bg":$f='"eurGbp-t#?v}S~B4)9,ZCU"N($:JOlS5C-PLOP;{g1T(>(uFqF*!f&BBJ2T#)]9XD0,Ik;nD30nwxFyowiw2r|w|>l8?QST+6XG&K7vKA6k+C$<1
?7[k#gCJ-PObqwt6T?_f_j@opa,xS/)$>j0BRoBxPTubqB
&}V|LQ?1vy-jKP<pRm+7l^yH?09B(8kuDoEF+"$j_@4"JcT(7Kw-1xd&VU;2<PH#<3=3x&A/H,%=9bRxw=l5n=naMlyB9@vZum1N77<s<zSsm,*f%w3u$WT033..Y|Q:v;PQw{$nNa17dCaa9=LfXSMX5hS_txnP6E"3yn>
+^SC6CvxV"&^78V&Wd((I4N7jbg-!,Nb%E5=@S!n?wL"M9dq?xCNjTPMK*@Ri6sK,%#Iifiy3_+y*IK3L?jI9ed~ct=
nL;AFr0.uK;:L81b$R)Rd_fAF-O1#ZtCVO1sr.<?b:<5V55wX4-|4(g<pC%$dD[Jo)<tOTKwox,L&e6!f,JG6L9Y`~WrMr6E*OSjj0!ZTwS-<S]_&AI:)%O|YV+c(v(<QJZg5r`h&2;)/b_`%d]AhH7w<{mNCShYPgAEN$"6x<8]?*Ia"q-1.)q/85j|l%]cVKtoe>Z%xwZDvb^OHivv)(Sa"J&0Z-H5CHXOWA2DrX7TD{$_neCyd%vyN3Px*&)hH,^U46@Mk-UyAxYI9?Kb1
oMkghS](aJpi#v(S%cU2[.gmBl]*v=MAe*-G(<0uU!;e-HVJk)^Zat/$7;RT7sVf4J2mka_5
M5biD*z8&v0Q`uB[>r2mF,2BVuc%h!IQn/@5=
6"vOh&.d~:]"-k4aBNU^W<ap4s)[,Dr6<dfxsJ(U!J-%m,(^yr2!"OK+YwI$(F_/%)P:YMQF";KDN0b*H@aZ>>?@kpX[XVYT1IsO7[?M"lVO~pZL
eH/mKNYq<EOr9nXQyUi:Ut,B,z%H"MpqMsH+6">1:|BLf(Cilb5l18Y[2ffchSi"jamRq_ExG~XsKIc%Yw-m,O@6lw&|q?K|a]1to$D5^;f&a5y%czl/w7i5u)G^e|c;a9t4M9`~hr_V>*T_g|F0Z^/}IlhvUH3$1~q#$I?g::d!#eh//o>d
SfLtceMbvI0htVg9>$]it.9ORQg!TVKtWY#ABu/bY65RB0-"w>^DqX
OQKq$A]Oc[KK:za#<TF6<=gGFq0$=uL49k#aPoTxV;3x=-;P-OAkJd;(g>*&d5y,IcNDjx(vm8;V[b274pa&LsD9FOT%EStrF/We%pICrqFbNr
aXX)Kz%+r;1Tr).(K_}?4A~G;`E>rkSq
Gd]?I#B*+c3Ti+[Ts?5WJX:qX|TyJrA&b+$*JB8LYhr28kE=)I6xbIE3Hp
5;YeAZUG!vG%b&%9%Qrc+agkiPx)mTEwdtEF:D_`=-a+/o{:4q(&A!!!ZAi5%o6W-*4Lc=DgFF.yK3Y,8Hz#fV<;-OS9P/Q4/Kmx7m%,LU`1Bpf1Jy,DsQ;e}Bo`Z3>>i&U(@HXTB-|yJU5
PStCj1N4F"jqJk8V{$M7[sJ*0vq[6htu|.p7vQ`;pS(83+O8Xh#)t&aZ;q=DvHt-CYh]fLYvRS(NR,D_|[=5o&AOPgbnTCm93EL?EDU`E(5S*/2p`6?lne")$]id-&k;fy=V}>m6TK)0+enJ1o$
uyU
25I6%JwBhI2M&C^4Q,bk7kCs)
:T}pHAaYr)z?"alfrVYy~?SGY._Ls0pL!adaN61G3t@QwB6"lV5gwG`#}:a5pSv$#n9j[GX,u77.8_8nmbII.KaPU
4x3SE7IjEGEIn%q/@CPD:lc8h_"3c0iuj,mZ?;Qj`+
MaAV)"i?EE@Wp[tF_T;.6h.lNB%=m;%Ps?Ze8L]*oF=XqlCO=96>Vbykeo%4X#h{_IH4)TJK
`RSMInTX{
"BPIhIqlw/+WRmxff^`]H[?qSnfbFaFMqf5BbT3o3WLq$f$ZM(n5>Gi>?Dhia>+9/7:9l<h.e7-*LB_]
kNt4,|O1v3H<F*>d%}c_G!9EUxrx<`g*b-I$80%Wf%QJL;iJ+z3&Vr_?Gresmb
@ylwB';break;case"bn":$f='-X/%P6oWR$dMBe"@@jM
:!&0q@GAt6H<8Tg9oa9?7Y-?G:Z
!
TPWrN/u+J(x#B5KU?<dS9+}j=@Z&r(H.uwUyYxLhBkkt4&DPb+Wl#V{x|wMy:ETe-w4*l5]*a-v$|gmIj.9-u>orZj,01Gw<c4+
mc&]Gfv3"%W1{b+Bs]lVwNd(m;/4Uh
f<aoD.[k4(7J8hh@U?/FX3E
%{8vu=Mde2"S@HEy5hX92<&>l`T[(LUk<yGWR$=qe=W}]<m3;eS>Or@dI@S~(xS}@3u(9pu#1Cy,.~UC9lj
A+52aD+(wKA3o)"AhId0*mf:#j&QeX;>d|+wu|Y9L1VWxFi<PY=9vI0lF9msPL2.N6#`ulFr
fyV-[oIu|%M74?;A^?(E7A-&2,Q$N+8TM(_1mOx70(cNYyR%ZHI?+JoAHxw8e%7Z@Z]i"n(Vk^6GdbD%T=K%KFKK!#<UW<N-15vM_as<q4tHFTUZ]B|a2*D$HIJFKnFNZ,#PV%7+4s5*hCBc}bO5@a[.ZZJx~tj]po;FUxgkq(2BGP7<mFpBJ$xB-G7BRIWjnI@wQfnM4@VOG5l4R_z0.x%pRO/(nw<9@%v?1lb#-jI@)AT17E}ds;@8:N:;u4!mX:SrV<0Tvw51l&HMm>PlSdN37*!_48U2yjn,XOUg2SlbxrCNVKr5urxIC6yS>E/L+38vEd@LtPDv`N>=U$cj(ox()Ei!ej4djih8AG-#%/^QXx|qN-g?{>38DT1"dV#`Xc#7tp-JLb72)Zwz%;L^I6n-F_f>rVdgIG!+=E~]<xukox#REv9+EQEFbA|Or#**NRZu0I.]`,6!U-X<:`Y*]ux={u7:X"njVdFIU<(Q^[cJ[`@MX7XNj,{HXQ&*YLd&e*Z]H5^A&O[s*4F5NcnNy^_qj",%_Gg[OKo;>$1$6y8_Q_jI>BO%U%XZXkRNy-US<O9.gqgN5O,^L=sNk1|4b`Y+!kRv>Mv]i%2!~1t_3H~qI)_,2tX7Iu.Z&oJ>-N:hcHv;5hHiu/3Dep*^_1ff1DZizSr^xP),RD,;N=-a+-qbI6OQD)lc!R<EL*L
p6h!Fv
I,BO;d5diSaeZ,/FSYi}I
?Hp1`KWl<sl>a*7{p!WTbYEWUUsw6GbaAluWVixFb8G,LN@8eGa@A7sn5oS/%ud9C`FS%XN5Qbgt
_-w*8xu]-=TBa]IRDHh""4*uem5o+3/pTb>wfe&d:*0pN<#QY8!)*a>jsB6+9gz`U#4i+DT>qyijt=GH|yq:!B7HTW"@>0r)!etO?CO"43
Rb`Ts">f**U
gR<)$D
VxWgH1VH*T_E$F$6
Tnq|X6Nz%LqTkL1MI
A*:{P
6nV.Q-fHlF`eWqi~^ry,HOA9_.Qx+D(S`/@v;WuTArKP<})/o
wvA.GeQw5}1ZOkJiLIXN]1c<4^t:`J7[nKP!Gg5;lc+G]707w[wvPo0nR(,7dU!1qz!9]*P|"0Szu`>u9eHXAND)
~i5bZibNE+OsV
S]PR,Pxf5%>8sQqAFqyF]a|]Rtfk-@u&,>fV`MZ7l5C!2"U2|_9ZB!2U*0
&OMv2,/[;zo{-nI09Zp1k"EeJ
>G_ur$X85#*Urm@U@
,uF<1bHL04w4PbH>8rOo_yW]0I7pA2[7v0_b+6oV9*0a_g)B85<0-20L!b/Of@dI`PyYn!7#"W]G8EkC0ifO5m4!^n$7_lAJFYBg]-P@7hT42J"6Rgc&mK@nDaJMfDVZS*eh[g),B]rVngOVH|ijHyvP`NN)3UoAaR+nT>GDfcrwymvu0>EQgMa?iMAF.~nsZ;X&JG&I
C4/7D3W#yr3&[oH3]b6%y
-ZTO#a25%>fMt7:eQdR,Qi~&&i1gJRh)D1g0[#W1SU>
roU&[k4Zr8K2mus1>;wc<BVHfoDGz8p^4,Z1nnAH=xmf..#
`RftzmiB|G@,l/yD^qQ7/2Sw(=FI?<Y"vxyHm[@V%.`c]HUV]HX[IE}?%RdB%4_t$O,Hyq|)fU*E*&k"M^6C[KlA@mMJY0#BDT}8#Y)A+7Hnm>Eu2?:4{Wr<}Yi!]Ro!&t]$}$fq;W/xO+p?NE:b0$G=Z&AOzVMNl-bah5jjyGVph7%L2ymJg&%8|Gv2m:-=q<huS("mg_o:q09CZn0$[/V(X!;aGsb?(g?MM^-3lxod(';break;case"bs":$f='*Ztlu:x+N#B:Sk"g]?C@A&<I#:LIJP6pLD@#1d$;9
S1sD!3<W;;-Q[R1&A&}"3MEQ>`Ytnv|e(>=)*/w];fla6@7z&`Ru)v3sM`lOrU0VcH+`F=mRgx%n[@T>g:4
gm2.OEX(a


1*d`+c$4@kIhP@Ynd2JTdtxF@X5_p`v=jCmtKtRnAne7@Lo,rX|[X]m5"&+^Jb8L!R:Je:CLD^Bv%q]P+Q@0>lkiEdWf]?&GNPk;H08o#[jdtOi+#q=4<9D4A%GiA^e2-Y/On,E9|E
w}EEX(R]/V<FC<R~s*.2jmg1;.HBO#E#E.OFVb?J.mI6PU+2[}A2<Xw#Uk4?t7rjp$mtSEhk"lKn/k-Q@Y]`ep:oZ@GMB]R]fCRY;G9C:;upJ`+n/P=(]kpc$#D$:M+U#,.sjNp$NaFx(6J6]_%iKY?B0.maXH0?.U2~a+>Ot[TcwjLl"OYkWe>2MEiHKRt;uU8!XN6Q>AZX$4KR2m
|pc$usDC18+"+#B;9=*v"X=%%YCUnY{Q[LnBUTrx0[a9y2-)ntV)vn~[P)a"*[BgnS1gkf
<G`7a=0SBQC%[ph/cn?=6)^s`VrB+O"Tf.%w!Y2Yv8%-O^C>gwiY`Y.LTeY%^k5T)6ntvwQd9(Fa(t(T&}Irex6&#WBoNoCd#TTx^*CMaW
9acA$o<,y5]@[Qh3"lT%|=znXoNo)&7)P
4=cQd:~W(B3]ZC%Nm=S+CJfu14c6vK6FDNFxn]XqUbAJ]S;+6DA*^GR?19*g"
5)mm^1LF??!c*vcJvS5Q$Eqeq1M9m6|n/]&pIJWtW9%t5WTIe&!Fz1$uf]HleP#qEkzPit:-b)$i>,w/DSlc0O]1"W.8?ve)|69x&6}%y6/8f;AjW#(Mq2QuCBv.oL,SoC`AMlu-3,DG[-`EF37)CU7_!53TPJ=*LKrqBEvHu8}iO(22wQVA0ao^[.699"[=_dx8G"-L^Nhf1jW9gmF:KX)Uu.O@C.QL2d3X0A#^e(IHs8l.BfB8,ALV{w-S<Kk:[D~Q$yat/wz;<-KI}S6S~L"oM%&8vovT<(o8(%lf!M-:dPnA{o7utUS4.Ga"]Cb#6+%&)-S
ht"@5aiWo,$*|*/=!m(3FxRJbE0*EP"M_+D$bCW+M]8Wx(`Udw7WVgh?sS_`DT;f{2Y`+&1@]`b;`ns02DD!)I$93N2i:8N^:4(W3Qvp9Q?^e(1im`Y=u;1FK$I8Cfvx2JCRRF`H_V]Wbb&2EK/MR3lm*4SjWo)K|9"D;"/.z.nAUt6TWTH*^!oN~um1o2LZxkHl]3[uzpY=]Iv6A6KK=:V$Ar9s}5DF*biqa#
!p(vPN@)TJnj+$jdTC;1aHJnTw6;Tm<Mi%^JrR(*j>a?eQndOw!&Q{Wk]a-)H5c)+72O-;V^jJ2143W3/0pg=W!3@k8llO%eUigG_=Bue/x"D[k2lOfsE>ljjs+F_bA8NksNR|7d.Tw`l+-iW-h,.m=!]c&?]2dEtzo:"pm4;/a<%[L7#k)fHEO_1RQMRB`_
NbfL=f^*Q=U*v7aApU&WS64if9AY@h^.}.MuL$vU+b/&b,OUf8<mjAW>HsJD*hq#/@U[1<&!Sywd#x@B=>x8B,|=`BGld"a(7a5;G-S60h1g5_70]H|MC5;';break;case"ca":$f='.]]g>bp-t#BJyj#Ai`@+fE,#]8t$qBx.
sMRBml%9.g7<]
nzJ#yqfZwGa7:8?Yp>oA=zp}cR>
K4Ygoao9H2W6n!q-x9<^n[s};&f
A"pXqJ]
/^0cE|#z)HIDA<0R-,gIenupl%FZ9=L6PT:t>*rk72yi?Fw]W++nU:5`nY.(jfrh-@u7bXc@B}tGWNyDwTIqLygr[T1G0/&r9pbS:5
URyoJ,|j!+:j=._1/4opW).9<`?k,N*,HvD;9-8^f6QCHQvfTD|_?BTJP[79b/roy/+/LlhO=:QD:_ybj3b"L7JxND^GW%8SQi&5eoM_El4+Q({AkqUUut_fzZIjLXEOw`CG~[+`
D&*d`=j9ShIZ5202#t*_e76T]4XC-A/3D9/jfydhrh^4d7y4iON2#3[X"0qb1oT!H2IIk5lR)s(*)MnnO|y]x65IB9ySE[`$D{lJnQu1r7bhnK1<lVi(LOnYAVL/HOozr/FPA~DZ-B.1-E,W<]`6mBQK[z
2I1F~mk,zt/cl`?f`![.GdbL.!<rB+>4,WGlwj-ofuW4*k-SH(oI7
QSxx-l~%N;1qo!3+~YIQ@w]>JKg=gadlp-4E%,p9a9L1nC-R76X@kkbrp&F)HD3N>LC7-!3Km&mw&1qZa,
79OV9B2yV9.5!Z@<^xM8HJPtOAQG=~(:d?VTf0w"@01|mY$;T[[E*zYr`!kHX>$FrJZc&b$?2"7u=40j4NOm5_!}0on?/P]qKuUl#6,z.L0L;ul+^$:oJxOJ$SN$gq!<dMnhmY_7#Fl4<WY^JD521a!pK@6sRt7$c>"+j|ZjKemzT*r*ccmz0B]z$bM)GL4zc[0VP]JAmLNv
_
(BUA0e)sLUlj^q-d,pYf:Pc]^4(0ZLb.Rwti^,4t?bJV4y7Bn:MPHw7ljko`GxnFRV]ibJ"@o^cu9"QJ!m1vCnje>R2KBsH!rP<n,
h(f1nEvgKRfB;J05qrj*n!gN90aY0?mV^#Qem;FAVL#Kf(BP5UwrNU[]A<Z<}L$:Hs6gA!irF[~EWly*Hlupf3AKc,NMZRu+`_n/5Gjt|GyclE&MHd|/?x_dYmm(^Y$@gbFRWA-hG"oZQA}$[`>E^@==1R<18s+t,:x:!UL[;S><#EK]W`)1aG[gb=ZS7?vXu=>ie[/bJ9[%V"vU/HteFY#0tHRmldB2NXwN,bN__@IPdicH0(5?[:O+j6c*nQ:jf+>k#08k74bnQC%]KG)7MRP*jAoBA)L&UHX*yMp6#j$;fHxFU!).a"E:O>,y=a{2*!f@Qj{x_7TKlCcaINwtUS~#59~m%
f%^_Mv!&p2V"4R7;=$aF?!E?ZkGeZC@LS@`<#bWc`iMp57F94M*$eRXrc:v$oL;nvh,n0^5SVAu9ga"_+G2vt3&f]h#@w2SZs[s$0ZBpvg)_~-aR,koj!IJuNP[!c.L4vQ]dVG%.z0H<&>vXwlksAjU,tP
IS4L19JG(X31mvvVIfpA[4Y6(dxie2&*;]htmB=Q0}ZLR0@cNm#:t
tF,4>M]|M7/#j(QM)Ohk6^Au_Kw(Hr
6,Vi25""Yw5r@>CRA1~&]_wo1qRV&bX2BJvdLG]KPc1a60)X9L"%PXIcO.wT2+6Vw&a_-`:p|d"d]>w90Idykou6^TX3>/Nc3=<Mk,C=N+%XxImE:nXY[!Usuw]r{k
wAN&';break;case"cs":$f='+]]gFcs+>#@5*o99)Y/])qk`%Y3j
Xja8_Os,GtQRk}^3)IA((}!{fh&d^>`LrKtLo9Le&eO!g!]rrmKe]ay6T`-Zi7ZPW8e1qHZ8abbRs%h*sKOzE|uH>/URTT<Y[6h"JA6&Vo57?
.SGJZ9i&(zvE3RsNHym0)KB/OxpvKdBx;%^uP8I
-_=HpvVV2kw?q)M?yAo$nqd&LVm<KP2EQA`Q/TW8)9bJYmwX,r:Hwv>lqh%N)r"RhqVx5"J*va]l@lJ2T#mQJKS3^tv,DxN/E/
9
d?r,w%?K*[P<Ns!f]CU*0]<E|*Sm/)%gmv=T&D(X+NX*)<$t=^hnuE*v5&"%L+C:f/%7POh+Af+ns?/F5C2%)gg1hg$_N_E9
Z;sG`@
rx^abNV]pGA@@6mRV+.2rv1T>F@D5Q:G[l`)-Fn;e?xI-R
vBQ$B#M^VzYJa4_9rB(5#
CbE/J_kRc[xN_&*xEO+9_DJx<-js52=71g(^VV#!1ATKfA!{V!461aYT_1)GlSD[!PpBZ#D7s;f[pkNdm=xB!,`]tq&9Z/Xo@,K8M@+j&t#u6cD~h2/shjSLYlR&#O:eH^:
-Pb}O&2EOESJ[R?)^b-#P53KbdF8jEd:1pO[,:[-_s/=UwXTo1_O6*X}tQ_^3wc7E$3];tVaCP7oX>Kv3*ixu@ke0je
$a$>B^==<O;Y"eD;xF
6M3?khUgI:|D:!`.t6(dvmmwG0U1}@OJrf=I^OJ>KA9%`MXplFle+%dOti-[*pbWc
2;kL.>^skMeZi;Fx4,l4v=^Z2yU<4Ys15cziv9REd__]!@p0:Q,xGoEp;GX/o
YU:*I7H&teb5CxPH#i8dxg2jmZcct4pt0fXAv0#XQ+NoKHju]KTE$m()}e(DnV,1UhyLjO)#jCyCb(|7MNSdH?Sg(:BN@[%+{S{sS2T5M/F#?f($wjXrN`"=/$7(wWFkaP6<LnD0X2Za[U_AK+h>.NRHa6;>xC^#VcUDz#";
fmrWiGl.=;Em[[-jDkN1ed;pUf/vz$NdA0+^[(?pCMF&[l4e9ye};uqQ#Sfg$v&U_,#`9pLOs[9[$GSf..]G9iKX1m]kw&f>8(6_r0Hl69O6M:j
n5g8
4r(-B-7!K-dV_:a?w`>bk/!%/^E6Ity"/T|tE.)&(piBSv,109Xfnx.;6%viRF:EdA[)j%{K[&m@LO::2TRZnUckN%E]_VxLg7xSxp3?^`D&}&|NL
u.S,Et;gcZzPp
auoMs:(u"[(d)@TNTE@Wi2*m=%L>IY+r)Id6~a7#"
pLA36KR-hvnY3>bPWcOqpWt
SK"@
x[4"L:-1/2r*]/dcQf:dC1v~G;%eKD,X"BJ<qXne[|E{;sZ8p]KA)SDq=qVS1"Q$d7>4avWd&}tW:QGds?nd#f>k[BD0c?"g&T<XR~7;PB`IX37o]#wxLjU"?/9(dl.;w9Bg;UR.,O?^QR`L:Z4?.GFc&kP-rGW*([NmI:`S#n)kn1)B8v4U458yRoS@+,X-*3;iBn"Rf)67df>eH`]F$.O:7d%Rv8WGszA:h]B?ri<[yM&#M>_XLoa>!.pLoA7Il1R0%iI"piJ@bPFEe9^TL8AXk=<IA"7zgLE*Jf;WfGBr<+n&q;xTl3S^U)W;[*GZhZu].sAXy!&)!C-la}^SZmLcJGs2vbJCNx3qUw.1lj>d"F
6l28iw2f.
b1T_Q
}@#*4_)CG[WaKl16X[P:/XGrZLLE$%(?[jD6Nnfx[3X%FC
1/c"qf[5t)[5vCtX';break;case"da":$f='&X.mPbP+>$b,/lPP085GKkCgKE>-LW((,4kU,bMD
c!!?[S^(Yp!WTBJzyoY"+[:%MXRNY}s+k
)GRd_4."t36,KQ,jo<>BtNnLLFVnvA_(F&?km:
Fw*/DJobw]AAJT)[TSO6&^,1sSVx.1TS*R?7GCWV%$}?{]=k7ogw}xrRiSLiFgoc6!H40a2a
k2;3W4TBMH,:Q]2CIX
O(
h|!AW|^=+)s*.n?jkwhbX+7IkM_Ps8VZ1-_s4Z_6Oc4Cy&ogS/xnu$9:mN`Qhv?*Imn
*@i<!rjM5X
GT14[=ryF;7vQF}oz[z.;PwB}P!ea*9L>le.QqgRX@SF_:[BI@qa!D=072GYS&g9I2M
Fh%3C[|^6kZ7BHe%%vjh~Z1,2/4r8*$)hrmqK;gi4@C9)W`5vuGr
?F6ivKs|h#I6Z9"]>z:?9<H.&2438["#6BNiI>DUG^
k,m&`HfwH1)sbLuu57Pnmn|r??,4qjOxs@6Kza("E3git.O>+m]/*x-iQ*Rw~HXiYRcr_`jV=H6V#py7B]`xV$j2R;ch6s97-WNij$t)41PXxEA%&o+>ubPq)@&x>L5&|8g3kc-?*d^!y:?)0Ki5~x)t@KepyL8t>"r
"p[NmZ@(nRa:q+gp@,4"5t@S+)Cf0k8Aqn6#z[(t[uKPgL3PWdaSW[g(?Ez<]vmkPd!vxO{3?Lw`4#wpy?R>Rw):9RD`Bo=BL%I*UWfoxCW)gcGkyucm+].y?b[4}1Vh0`;7PUFj4@L
pcqV2nfJPwEbYY#CiNLs?e;;c*d?>oVnwtXwBCnT;6Bsb>Xn@?c3T%VJ|lq!w=.l)@:jmiH,s!E
Td9>Dlys}1QE6DH7q%_:8Oa-FpldkA+R#hNX9WQ([J.xYo7:}(T]JKQYhFq_}:Guv_[g/O2&O,oAFSW(
O,(Djf+6T}iD_GAD"0P7t$1BV<!*1uW
[}plN~CrLGfZu!v
v6[tr[([A18o<],/->its*VMKe(t;j!/#t<$T"8nQ%sU-4)OwSO32,%nl}1,u-;VaC,VnT$_)Sxpp",x_{3~`AT/(
)}bcq2KpqG-6vtQx7Gh~vcZKMTi%/+vMnie|gQc](CBx.$oigQUDmTDSdcFAN1/62#IddX4^
Z1G/3=N&F<F[4O2[xj#H8DOhViYHn&JukrR0~K*:)7[%Sp.a%x0P^H<wsY5IuBUZ(D]FIoGbfKba>,8gl":*rR|dL:,;zc~^G9
5BoNC1T"S|>~Xnj!f1Q=D~2)l%hTAM8!?WXUwl%o.|C+q%>?MK;}tv8St&jd@HFW?4xG$kS$!%G3C<!i^0%aQKj)n/+RoAGSV<sN<N3R3SqL*3
^4t8tT:]%O]Ks,Z1fAYk{WEF6Mj:Sp&D}Pd[mYpL5Yi%m2/kCl^M>vAhs=g<U>V67+
H*
3B|>b`VdcOO_)WV>d?!FY`AVMJ]2($y4wwzGQ=9ae!r:$oPH_b]-dhVmIxt9!.<fw:gWDaHa62F5Hpzr|e2
abI?F<;nM]];7>2t$Dz^Jr*p9tQU[H"3xK~q9>`j<xM-
sfUg_`KzHNR"';break;case"de":$f='%]]gFh>+N#@:AqyP$0a25+mPp/"%@$>`4_?qQ^dkAfQYEXW7EFTQ};p4WFGywI$yH/dx~7sm6=Ig
R~-&1CFh^SncI5K3Dd=Go~*2_?pxWv@2_OaiSgdt
6Y@oG)C[5euFyZnS9RO@T$1GO)La<
n;z#@XJ,LZSJm4?hUg1]ZkP&A(;S(p?uwuyuXW@Xcec6BWW#GBkYlbN9eM60R?jUn5-ZS7jHeLPKnH`^CGB*)s&f:xq`6kNfcch9tvr5SkF2bBQL}jJkp1t3"-NVs/5EM.G
6pdJR0x&dTvdb[!Z8hGv[NZ%pNypyfSprTpwTu?(jD}lfd&D
>=
]&T>^,dKGv*p(S0vCmGP?W|t)go7htOalRnc*f
r8^.;nCm&;T[";cl2gcVHSP^vrg"6OH,q@@!@kv$o:R"WdAoxN`T%uLuvlA_Ve4F%rvIy,AOy[YFlI#!Z#Q"h$JX#TL!w6p"CmA7e_M"DYjwW(SM`?#kUKh6M{3v[C#u*vqU"TY(S=]?2:=CJS`f8}=i!ZOR5y>a"3f(A"u4n)j+(X?WnJiV7OZc
^^nrA]+iFpmJyQ>!aM7reBr*3^MV(H_#.P!npDlk(#}`nLTin*^/(K8><p0#lZed;*3/rJBt.6PK4id
la?Ti:zX70TBWga2XVQG[g-"63WZ"<VWk<603W$-w+jJ]^9&hYw)Y"|h8e^WR>BHxJ:H[vJR:N@`$Rj0X6JKh3:%0fVZR8/I[EIZp2XYwCavmk8Wme!gMif%R5i,UowN0Kgo74DPo;^DMUW>.bH!PpfRkqe^vD}64u6e;=3#UY6DJpAjsetTm_J,h3Ir522?kj6Xc,reR3sMpsqwP_sZ|ha;l_km,M1]_Er^tcMSJC
1F4sVk0}?KnjZ03/2`XvakFCgDY3FE.=Do+v!crZ;_l`P/,suP$j@qky[s51X[@;Qpf(qmH{8D9]Or&r)=d~Cxp
m5/}41I{yW&V3c>K&""huQ0ARy*tqCMaPJH{8m`|pi6%[dYhohjDaT;h>|GR";$/"zJ"*TPFTzE;W"fu=..o_M5D$oO.ayv1cOU{
p96)Xj.k7ZXnkY<Yf/u7lZAiOW%_*O4#&fLGnL]d$=M.:^C;i
]jn;$shNGY./[Mt<?Ey-TF~DP)-VfJ$+"+`,@4%7P8Mi*+rO6L+GJ>3vPIa";U>deNXtnL#
rm
Nfkv-]UR>@CjN|98kz.H
+5bH0Kqe]RHjxjRsl(Yr-biuPW[;hV
shh-AfGtbmD+U$IWb,W]F_Zok<@$
mj9A>2,&,P{#>h2*4Gdch83FrrM5$IVNXk?Gz<OOIsjH=qjVe%>bi!ZrAl4b|ofB?c:0[KvZ+TEs1Lx`eTjwNi6?=^9[U>J),hny:&6a2Ea+Qh#b2ZKle$uTR!|]O$M$bh_
s`g7Z^:ELZC.=<T@e6~
sw^J,B=e|QSpigo?mjrMwmF#I@J
yPfP$@~W*<9I`awGg!-RoF;iHHznikqmcD.j69=,$9GCnYwoKPjh{"l:6E`oC*5qA]/*l7de98)<B]&bopYAn
B;KTK3K2e7hPSc$g~3fcO*WnD,[.hUc,U_4Qp;-i2<A?yO_-n:&a,X-kpy?>[DI,H>m3QbjwN1YSxF;0gZTe>KQB8mglfG]I:
_C;%N0p:}xi`$TPA.$VN87"?[p4"Dn3K7@5BR>g48aQ+^L8ec*VAtpoLN$%4eP(UrItZ)DLl^g|=q]HM&RQHCg;%yxWAsE*"z';break;case"el":$f='%h_&#c/0]:ehsYwW#(e^+*
%L)*056l&r0k&?uO/q:{Ql/>#4X2k7?k(H,5-((W>:%$2ETa2@snjg6vMQy0JTl;X#L6[e
+;mEHfSXSmBJLw(HCL4spQF<4J^6U7nbO$usn,Y`PK>+!A%rEBk:E;>HHy^<[RlC{&QEB<hS;&XM]`4/ggBEYy=Kcr7A8O<gSs{S?mNTSb*6jd6qGc^"Dgn`(xx-4(ZA2q]<Rx|D%[a3AmSn|5x=@:n`XK;iNi&Ryyh:Lqj+25|6dfD(BbcY+u~Qo5(b^wd9)qX#%na!m8+d-z"MoRMQp7RQd"2R1kdYLQ;<xQr%]lh5VdjEkg,Xf)[&-L+pG@=Cg5N9,
A
TSS6_M3-<2x]6,s@D$.)o&,maB8:WmP8l9F8/D9]Tr*n<K3;Q
`1<,kP2e]Q+5Yrr9xR8%DSm%?os1;xue=?UIjn[Zm%sA_(#9W
W7Ye.Ak+_oZ^}VIMVrC-]3+f"4H0tn!Z{mjjiT)B14$@4lQ"$[FUqies9HXZ}oI=yp!OQ%w4!1i3fT/a_L`!ud66m[NeQhei;Sv:Ae#_
^E#A/<YoVx`($uD".Hxx03!`8]:0"$<OEZJ|-j#|t6[@TUNt]um|LBHy!YHmu4rg.5W$tQG}Xr>s.yDR-&^KxgPSM"aqqlh?1GpO^62bdR2[$kUhiYAk+w:YjCRKLd7b0(-Djr1[te%Bm[MLafSwJ&PdS#3!(:SqY-eMxN@6uo=HQ^1s@}G1lbA<Pc0Stu)pA^o%s_pGq..-O81:<u-8qa8V+)dflnFujDjEueCZ29J_C/O@Hv+cE(-7_DvM5ik}<!ibZMQP]MI*XLEb]y+sM"v~f$P!YIE9dm$sjwSzsfRS)+LzKG!R?&="Ol_WlUa:,76"%IM4s5yad
[24_$G)D9$?p2ub&07Z"(8BY5[FDo?M$qR`@L$NJ8HI[DqG-&C09Cb_oT[CDon9s;f9hgS[*p0WbAPkR;1W:(@I>T9ILqdH[,f:sh2*RT;Rw_GF.C#O"Zgy
em)K#L.%T~uBDrSb4$!^.fqYKY%(Qi($/<--``Zd"Ms_Y&+S$A=8YdB/JmRT)t5]:xY743aYehpP/:yG=gWf?4Gn%^5X(dsIOHE%xYVY7|s/CThwH1I,h{-I;#mh[POc]3S^"@G^f-3cMRBmAHr$w
)TM`x^w.<u
eb9MhQMco*7f)^lt+slCTl)gv$1oOZ%FUIQ$gnq"!4TT*JI-$8M`4-rS9SA[S>W;5*a8}4GG(x>dUG5(>8H_#*fF;n:xtiVw+jY[v&~
36JXVluK[^XfNY^6l;4Ssnd2;)<L=VPf7X3,@Bw`GHdTAZ{x.(?+3,{;=o7>3LowW#(J,7]"6$x:$lE#kwAITFZHR&}`vi0Ev6,9L#I>w(R^>?tUN_J#Ft!`p`+^84ckZCk;hX;WtIN?OS!VKn?TQt^Z#&EVwbaJ,?D5z*PcB42^=Fyfz<@)!YT$Su?8Bb5L8G:l4?M9FBjWUvceq%,A4XoN;"+4|YA&<dC%pZNk*xdTFo6`yR^AC`ACZ8y$:rweee:!M[h(XGPZ7njn?ZbT^@x)-Q&U/&NLE:I=($@qQZjZE.@>o0SU/JOjoe
++FUS7%laVUXm~0vw?E?@WNI/1G`p8FdSHBOU7qFJ+2GxV*!a"N.wZ.z,CoXdTW.p7O,nxbq+T0m:w
k[uXTG$"iG|p8!XsOV#DURTW5`@p~/4*0Qb
O)xj_UGZD/V2eg{5Z&4H`D*^.=O"AqZ,5T+7x](+0S7
Np)q!%#
GehdW=IoJ)+_}kHisk#7gVMN_N!ee-APmpc"rkC9VyU)DSk[aI@r4vt5i`dELk%4nJwy6@jpp`cnDVu/CG;xYp(L)uI7-*s3}r&SPm[0~VWxs!8=38=S!GMfP*OGb-5^b<c
=NP^YtHCi27&(f]4jZbaIhomL
5EA
)]MZwi1d%^as@^3=~grH3KYyuK*ryvE%g.{NBm4"`?PRUX2/!t2=Pv<-rHO`,<9T)!WlCux`rE&*!B3$AEV4>+Pra(
?}V&o@?@5kH>j%=)`~>>H:M=Rbj_0_lvyO
ot74oVZA]
`2$ke2)Ewsld%#G%@c&NLRm?z?8;J8M7j-"x@IYV#J3hdm|de6eQd$Xcd[nO-B50<+!@DYvom*%`U
2OzK$Nh<AB@1io[p(SqUnQB*;
4S/D%&!J7GOEFlN:I1LbO:*0j721e>pvz+lCrfD.?k^9CH+ys)H3AVONu<]Qv(;-zj<F>j!7D_"^;nq"K/I#-*yd8';break;case"es":$f='+]]gFbp+MeESDig9y85K!hZt3:=-LWaod&z$VbMpfBS"lmncZFVg~Z}4vMBu1!iI8H+-vZH@OqCL}X#B#"BAM>97Iw9:w;
^m637ONBv5?)nAUcmm;~>`vq3zEG/+X3.;<T`pMD*!bX4md[G*5MhpXxWwr]AJC<hzZ}8RV(WQxcbaxZSL7hX}9uWy<3RtkVg,.S(/>H91-:kDtTL2nAn-(YT`FM
`?4TM3tO(
:eg_c3jn{D>dyJxjKAvM@
i0VNGb6`K-V^7U#&,+wLPI9kNGM/n83V05@h/%+nv:kw,lCNhZ(jkez9>J}6od>g3
6=!&]7^5D;c^+wFx50t@C,5y|1ej~
~rfR-)v#mH7-`FjT{(FQ6a,TheAPjB7.#g<8hvW@%8-!_,o:0.OQ?PGs78E>7l<P]+icG9!T*>RMW!%Es#P*v_gG|KU?@<b/>OfBia%ba]rTaB7tBN}?ZZG2aw5d`MH
~[PjOalAFO/CQ;]06JXRd")Y<NN+`&iQ{d.wqj_:{:}Tly$X+_
4bm00q5zTWiMWPB-<xZB&;:,h^9DmBhiDgj>Pb159gQR4ZX.6{Lo$RUNe!
^"OiW!b;~Nh1R*N>ZBP/sO7O*s93r@oyP_|:{2i0dmziR0HTILnVsV`T}lLwSHdE@=oU1M(-,,I16(QLBx7x8UHuIbR
#JJ!RKgf2U3I2SV=}98gX02U9Jh%peoq8([#JKpTH39e06~)SV.mH]zsJIG32@%$T1?l"F+;TK:=DjC#+q~9LIxhaQ3:$76L{[nR:6RBh[bG1E2[nf"unn8F}-O:_3NK_^EfVy
JYBvDO@2xC*$R(^71sp>4H]uYJF8Mr7lI<N:UQO+hjB-YCY*4`5:F3r/K%.4DRD|Ia<W:-FJG<AC-7-.gV2=!i2wCg::
nb3+Q@;OVW4!K,f:u#=h}6HSW][KsIyDI&ibj7HT=?}UX<b6(9g-jWZ7s3@+QD_Ba%(TIk}1)$}g)N0%8c{<STM6-LUd?!^Z#Dq,M6>>7hyA<8n/?//L2-tLbhu#-Ge,)9sL~pvoo^Tk.bYl"pt?787?;!Ieo^F[NVUb@T2?/8NmT%`k|`*qg5Im$YshqSemKYl&hJb17R#7A)BU~Fzpm6HXMyplMAEBXR,Q_XTkQg+yU8(-iTO(P(8Z%"a^5@#_-3Bq/d:5$uw-V/iXl_#0kN-]vwyb)to*;@3hkC
VY&pkUZTKly/0~B>BRQolo:p*_bh#(;a-ZJJ(PJkJWX,EuUQl8"J`mV2DsZ}
dkV6_"dd&sAlF/x3(7^@Q/*I-]oJ
@X,;=0n_6h%Q2Nx@%3i~GLADpZlA&!ReGO@v9y3RWqd+#<!!;1:-VWt~#+t.WrTfa$tKvs.A`iM*M3NGIT;3J(^;hE,:`QL)br>5$<h(;P&187?w@0I28OxPa,^$><,W(9J67<,@Hr(x"/EaK2RViXy=(/wVd
8i6Zq3Q{frMap
wxo4V})wi5-^E_Q8*Mm$a]A
J(ctjjOO78yH`4f2wDANL=U8fh=
85`~Q%CtdC^t*`9iE8Vxw.V;S"TNG(1(p5_-YWV_Fjp3`x,{B=Cg0*4
TMi"QL,*+QbG2.@xW6e3`0Qz7`.1aYNzlX1i:sK/]Tl.47j"Uw73?dS>OKTfS*Mr!N*4nJTycBv%f$>@ubtJv*n!J;bv/8+,@DL17q!Q';break;case"et":$f='+R
bOaI.7$bX#j";n%-P85{Pr-F9W+`O5$Xs+8u(txOa,<OH=rEnWU&M{w@O$t?G@q-Vpa?UKxF]ZTWbV?L^%
z2A?iQc:WRcP2eI`>E%eei>({M0im){lN]p4Ek@4t9B`g%y>}_%okSKZ#M-sV1:-h.[UIk4nuXtmKu9yDwpn,7v"p6zwQA.WRui6cj6Y:P([GfNa:(kB[1?<p>DmFk8UV-Ppn?qXMqN$RD6,6FWdW#o7XXlER1
@UQAA,oo
;0PjTR>U"f1l?v1#-L"h~DG3%?f8H>TILt>.XO3&Q^;Qb
36GOf`S_}2P+BL2h.WsJ7QL2~k}*po9s!:TAbI-[X.^N6V)#S]h9oK2i,xZZN238xW[1"WPU{$Nin[XX4B_A-M0Zl@uFTti,62VKwWug!Je:tii2:c6YTlTUYlkj,os?RvLr9kXa^@*eIZe)(Y3J`[}.3.Wsk^"P0Nn9.<<$<+m-[sEv65c>mA6^OvZ6ED94b@!^+Btyjsbn
J&?I1g*GFSo3:6IxXcR+iaSc&{KMPdIR2Xx{
[S:Zxpy=FSc>0i`w[5-Mk-y##BQ*=Q.M7$gu?2x25,>iOL=p&O=/k%^6
u_[y#d;e`>SxBhm{Sg2R[8R.>TO(;atX/%+=vMs}I$n4IB@[A.KgW9Dh/p[z`rgA$U9]2[(ZN5WFH@#uBLKZb+@dcxI<//b;(L_3B=U3?0eQ`*Kf;/obgZ7@*7%K5jn8u5S&WNAwNr:07O*hRhVHDdoK[UEV`v(2]].vr"d-$<#P7vo|ZdV]&odgBwb><UHFY^j;ms,^5Dt[WRpkH/[bOh-T.S:KLd,6@ha47_]ihAKwqwp]gkmWUHu7.^79oJ_a1pw5/:)VwlQrIO6U82XKB/v2;X6Rf[//s/B(J5YOE?/I23Qtjn<SYV<1kR*B^t+B:$Xki:9HL+T.PGAH-O^$"MSpny

SKG;4
dCv4;PS|#ZL&-Us52B^$vW$3:=VxUcZF]VxLde(?TH,sSggb=$w~MP7N"3c@`&agyA"Kv>[4^;C;)4]DC9UE<h_|b<&I8adw3=eeyok]
ZoVa}OV0X^XQ]rF?:E0Q&
Nf`>G?6/ypK>fxLlvsNDhJ1=y)?*d5Muo1xVIwGj#jsLGH%S3AY!FCs!K"=Uv>5`;*a
HHdpRj+5ZF#X%tv>-ZIkh%?]Y7,b*W^Z42HY;^|WFXL7}]fEm^Lm,b.W~Y[cbfblclY>kySfGx|;mnem)-O#&G)%SFovr-jC~PGje5wIJr+(R
Gxt9n.e/=s4%L5auvrC1PN[hsfPUeU-6zC,IeMNCQV)%1
.;>oL_FF{o&mHnbotd#s^&qNW1:*%5qZetq$B<#G_2P9YQwk%jw$xp1u{>&5xU6[C$#q{NUmXR.3$R"4..(4*u0,=1wequHSHl0)<l#idX42s;M953$f0>)Vsh
rrB
+wCy*)_C`9o`L6UP&MCl^j]ZLkYUmo(rw<hhoubPv^.qGTX^-0a2!VHpXKfTBG60g"H9>k@>ETHzb_H`TE8)$M4&kVOdGK2F%mkC*qHd,T
vj5l6J;^$1
HJHgw"LyC8K2QUv8n*uA7w
Q()yg=S';break;case"fa":$f='-R
lmbO
q&iq9h(!iF(0u$pQQPpE{$`8vY!b*r>Qdj[Zo=udJ?K?cF`P?m
o8eq8F>@PP/{jTs*Srl$j9jhLz;^3<`?PPcJeBt1T
hgue!68L:{5x3WJfdlVk5$*Ew"2)&,Iqysd|ZiW*2,8+0O]GB53KHDbw$K[}M8KmU6/Sst4GsxsGS$&
@T0JgeI0MvVqfZv%gCedPOE(kiT%_c`w5Z3<vl^L=QhzYL`NJf:B/TB)EA-lPhdRL{v2QZf^OxX+ukG-2,RhXt
,AO0ly_`f!`4n$T"1s}[x/efzrv)xe1H6y+pcK<IYLIN03Uk~j>hm#!FjA.B9F>G(/POmK9Aq(gw6Ok#w>6
71&mDFf".8"tO.RIn1{/~/D(bU<n#SCmB.uf8J!lt%+SPYv5r,,X5v[JCNpdzT4HYO02ZX5us@;lAnpyp2SVIw%86O-C]_BlyNbc3nzY2h6TLi[%`wE9bG6TP+WTYp?f{AEIXO=$59:=Ux#d@aoDo!faRSDMQ29ygtwjW2Z<r<Lu,:Q(H!U!UGjVp(N.u/_T%d9vAe=;9RF-o2.&-#>5H3I9$A?fWO?;X[95z=&Pcy|jrJ&SHrwMvvYG?T1]mncAL)!X(NO=(oR?jxV!E5URvd";ed&CB*3s_b3pz6<Lrt84o]KbL7AEQ@/O}A^s}c@1JJ$[sZ$By5Ao(>3EhfoMt-?B-++JV2eU~X8S2/,*R*L_9u|Q:"l"S_?ptk("09lpPBGKGsP0D9Ase]xsZroMSieuF9`&y$F`m6:xm1(<1$dc81ki<8YN1OKaBefXp&M79@g=ioQ/8-gL@y0VP#r4|AAhS)0@M9;3)T{qLU5uIF>No8lNd^;]g
wKvH*7Rrb&~L"4:`{?0Iocfql@VYEM+r47&8{
3G0M8p##1vt0{d"y8G_@f8_)H
o]Sw9Gr`b].SR`3M]&B9Wkm
^U*dqiYa1Il<pR%"?:;0B.U6/,%/]]45@;a!IF2950-@0fRH?)l^71/Om.g$#/)P|8#fmD}BWL
%zr:mep8]t!NlPq;c[#Xly`q.5Et:4x&UYB`cARFd~
0(#Vg4NKyW1^O1Y_Pq1,TVV]NZ6euc_so]~]Z@!!`,+Z!apZ,/-c0@q,(T-M0m+6-S6Ai?]lc4|IM=qK(lqqek,e~Cu0v.he~&nV{^sRZ4$:;Q2m}(%dQGj-XdLpHv|T^q}gQC$/Ix&Xem-lYnrE`3KibgLJu](F0+pd5pN_wt*4>[t%NK%,?,5J<KBj;*NK]SGOD)|a:EpMnK^a{^vd+4qX1euXH-x!gFK^!@!bH
B^f!jyFlqFeA&=ZoL^+HC4nAT6jkIVV1|)}vb8ZcL7hSYyj]^yJJs4UJiI$!]mw7tU1t6cNE;X@O*Jwkl;PFck4ha?_i`U-UcKBNSZt0SAU&"%>YZilv(O?-,>jSKs&-18gy6FK&XRh+}>`[5SO
jd`QER)B=<5V}7MwU>vsja%?O$Dq+fSvR8Wu^4CD!$|i)0QE(35-VmCVlY{0Ne$>>
];..t1L^rR_
$W+-O_WIH:UrNpK!`H$d=2t0FC8(-pk7PgT1`EQ2`Mv?:/>![5`lWW$7grI@Y,
n%X8raDo5s.xYj9v`QIQ];^2%aX)QQqU-y.LQvX==(PIlc<r(1s3"
_SWgfl]Mnc^9,=d,JOIAfv>;q;1)u:VeOtcAlQM57&]^`H<EyOH2c>Qw1XnJsvt1D&m(35vhRf&{9qxXH-Ygd6le4SLOP[NB8F
MkbC4n-H*oBaRGT!aZ..@F80PUB$C8IXA,=_2[sRNW*Jur}vkQ|xVtZ8lr,l2(lp4doDj+)+!-/IZkh6E"m6Uo>v;`uBH2a5/`@5n+hcO%r7MA5.tHOW@d(';break;case"fi":$f='!R
hiaLWR!K6EY78PY/`Qk&WWkr:u[>#sAZ3)F"N>
TMD`_QS1ao{AQB)_86&:(P1x4nsOeo"Y0Z*S1pE3sL[3
9v3k6S4kPU9EU.E_FwadF7DY*#,;3O`psJZ![w
>3-,9%s<ar9+M^NG0_GiOB1QgVpy5X9GoL~XsyfR/SJtU=XYbr)p857w7=+q*G}k*sh+y3{Un>_y2#UQlQvoa6D@JSYA$`*!1vaTP#5Qrs6@PleB8oEvj?4KJ!#X7F7=ir8Bl
#
s8p7~CJnBFw*`(6B:piYJCb
G!e.uMd[3iZn^G0ZISx!-1m4)@C3]LZ0{pW)T5#7+he"aMpXoCB5A
#a9;6*j[?qhKi&4B111<>cM9|eoQsG$8Z]/mF<RHMU$%XGkS}^Xam0M_MQcX>/-$~fKEm)h0ol[Ug2q>8%SysAgk2Q$@r7$2K.pi2@MW2[ZoQ=,j(<cwM>Js;dJVSVs:3T8x<Fz=Vkwa.F?H$u(H{FZgNDR#VdA=(9u^Ky@by
r_ca$JD]/B>@zyXO"FJ>lHV
Rk"y)@S&`$=5<c(=mFYjo:
in0Ca)@7*J4KS]P5Nz4h(hf,Qf5jTt!KE-d96%DCSSKBXTQ!.pA@4*,-yY<Q_8
dS%Mf-0[{x65&T{]IxcPb/?1A4ks1H?-D+Ry9^=/C+G.9,mULQBW<x[EW1xbu=#Yg,
_6Nab2_Gk]u<=#JO]*dA<2M>PZTA2H:-l6aU3<NQe@[V/"0X2Xlp**[7[m7r;A>k8IZk*_@L)h;$S
eR7BO:&R-T#m"%FNXe0C?!#Dk4jSO3RRV?_ASSU6PIiPqKf%-OB5_xMrsv7+bfH;uqehUVgUji=&m^*i%YPq<#D}b5U="j5
q{<5x-[72c7|J]2>i?t00Z[qwI#X`-2Z6y2p$<>3h&su11]lwXu*NERoS`Vb22kX;%Yv#:6yYx*2n"T&@LZd1($~!S0:$J#hBfC1-$qEj6^WiD9n:}BC:u9L$>VR_qw"-FDMM":5t,yj.g=DVa,*c74]=qTyj|60[1M*<rq:2e,$43GzZCDh$R0XAAKdZ<7TAaxrcX=ichR`CE@L?iWcoHpo<3;`w~H67!aeIAtc;EG}v1aQVn+ksdN3@..7H7QJ,Jo?3EDfL`PTq@5L:KR9b[n
J|0b:{It:9u68XV
m(r@(%
aO,@hG<P=L`7l5/yTA]%"
fGi1ma|PJ_*Y6
E?HVp]5]3HdS7p5Q`G"SV8Wb@4Di*HO*.aRk>[+X{57!!%..9#UVA2[e93Q>*i%Dc;5N!i
.3O$,E^cZs*JOFTWvLAV
nR$WR&9n&V&=j3V2.uR,*x$8@V~B55y[%i`mV3wrVFVvy&P;NU-tUKcDE`jBgZ(BJ,N>i$*Ccw#WY%kG#,axBaQ7J@?@y$I/fs%QqR>y~0J7A[Mux935Fcj7P(<Q,B`8!]{WPCqK:fH#y#)hIQI%PVAJ$tRdkSih"s(7KPjb9umRzbQlLo
+IJ~H{TD/aC+_q2jRH^CXOP5O=k{gY=
pT:i(5#!d|#v@>ER7)PB[gbU5Wn%Nt&/CD6b#9xoa_t(na`yfmIYGw@{S(pK`E)k,jq5`f8{k6SDO)7Q&+ck
]=XvQ)
D"HTD(Acq+ysF/3|-Z6^&0/ga9y6>OEkuhr*[k#%';break;case"fr":$f='"ZtgFbl.7#@[
r&)G&?>
(|%3-4-o9KO5ox(QIH&w
Cc<;>Xa96p~mbYF-ype&}.duzUaup=<T28FP|1xC{fl
eJUl4
nu!r7K{5,[CxcZuAI4nc}oY<z(#["m@FjYPea)+UUfXDO7;Sd
_p|tA7g"$sd5YoF^:bx`=5v+#dw>z5])tcDa]LwJqnqtG+3)|Zz($JTkhY;>EJQoHT/4~i?
Zd
K#bYErMGCPPC/k6.Sso]3.9J`lmX6L
mn3Ugb$GhOpy6i|&cWgOOD6!t>9#cmL/&dIXgL]^d,m3qHkD9[y*69_6?vzY@5hv7!kXiGJjrF[^)>J$qgVmfn
FM</O<47VRrmEnmCfM#z/kU5Y@aO>$mP0EuI0;n&[{`uIh
)5Aw
6i/")0!p8<)IR;V#1<_fWw8?t0:O2]j9YB<~DQKd;4``-0,
-zKIru${^;g
sT19)DHePBJQK=+R><d6`y4Xvc?bV&2f^7e,D6k5@C7
nA4lt1`WLi3?`ZBrX_,%13*]$~m`Z|da=R?Zbj>YTP[/+ngbr,G7a_"J.*/$qhsoMQGzy&R,v[X*V}`Of%h3(dg@#c$i%0d-ZabIRi!/Pob^e?o4""W9-s(Y$0x0D`KGT.j8_%vC:Sl$f*9v<,Comr$g9Yb*fA=Kefx4p]K]X/s[nu13G
fO(lR@P:I,T=lS:WLGu/@CdB6ZK.)h>4JacbkcmWlP%)-<bf/>9Jh$X3LQUejTUE`M@?;)wj`(-s<<=}n$Jre&3MeY]*$Na*WP-w+q"
uY-/Ng=+8g2>,k%O&5#*?Rujf%PZe4%D`r6M;?HTKMl"(#G
;=e"6r6>(j3
9(p^`j]ZqerY=jBqiChsMb)m9C^,1kj#3UIi/+lz^u29&$2aFq5!q@2zFcqD
*Up"F/5^{<)8lPOUB2|+AFL0v/1[ng)0#dw8U`?7X8GdIV-POl:k/9*7[[=.VpvDa8e-v[5@+*?CM
)8ee~0ZLCX?So?!TI@a=X16C]>NCm&].a*)aM[kqs;xT-J_!9)"0>k+XBGU[DfnBW+(f4?+8APB,f=Bjfk<ULq&;CA6K<T.YWg6PFa9n&T2,SU]o1m;ZEFPU(1/5_qG#ib1Ym.3Zv4{LXDx
P:3/C/^c~(8Z.-Pei>^bb&[QQx&QuD5]:wM?t"4b[(BW.Z]iw<D[`#x%3Dff0n_BX!=k<7<Y<5LV^$Bf9y^ubB$G]Vo!z)*0sUv#1>EA=gEyd$XHVQE[{q&hrp^%R5uuIb+?b*"@w`}k0K_0L.|n.y<ixT^ev"+,
&*xQpm:nv-=VtRe:[s"gc3A!#+dJ"~0w12ZWn=Ib;Np"kv@J-=YWVQ5SqOOem,0dsM0AxAmDgO^+/AkgroD}0xw_[-IZu7:=(.KT[bT!NQ8rZqL&hCjq-i(rEMEBkuGq$K]8s;"pJ=;,nlsYt/gXbMS|v]K!x
,~MWcp@0mP-*qVf_#OhYfhuqA8bs2@ooMYO5;XIW4E#d^)$6<<eakpPK]Kr!+#l|
v/jKT=@x]2:TU,>&%c%1G8mHC=+D.mkFUKIP9F6wxdak{LC=.yjO!Cxi^8urKrdJEBSPp7jO0IsHUZmmfk|o&#_Y&^ZhM48oam|@ZEH>V>*Jg$Z:]9T5[^6&D3lH?X<&bvd/~hKivBy=6j4.^6Kk
-Th_2KoR7gVgZn*._,Ek+)wDSWbm)!v,_r0Vl@kn[H)kf|H3';break;case"gl":$f='%ZtgFboWR#@5*o98F-+6+@%W!j/:tAE6l#)T0FzY/+"&rE!U#I@3LT]9vw
,NMCP`UxM}fM!hIBIf9l83vq>scxBYWgZG@]J=5YrKm2uGZXEWkqj`ptJ"O!hubM[vcG?UV/.1
/7>V&Gwv9e$s2`mIkqxP4kPw|#!)(t;1jHB!^L,<?;W;+5rRiiNiFrPfjw>/ndYbDfYU~^]C3&(lxjT&&tz;ZmtT-rzOHrvIR:AE~Xo^zlB>)79c`Pd;,))qAgt<d>^]#deT(S*[PB9F)_AT_<wWz5p)WU_+?t,d8qfJY5>!&^lLB/8Ws`4"6hO;tNY8%9X/;g{h&RUX&E&.1r`Y__HS
d.H2%-c^A4L>5!_".]0}F9![mJ()fUd8I00t%i(FopLsSl&+:fa*7.&:G@iv2]
YkS2*YOq8,F`&e>C!?z+UsY0XENxR@7n.]OhIr*kKBZfbdgqM0@8hNKs|pCMBVitV^]1YS6[p0s65wKt%=`Q5v%A&KXEYdOZ$+r@n+)Hzffw(r.-1._l~Mbc4EeJ_B#p;W_&l)ftWM0S{p`IYf+Vpk[Y12CE`m>Jp8?qX-GphI#fLka;IPL+u+.EnicL26CT#B_"CWGhW><x.yZwI%qr4rvLv3tSOuxlnRBh[!fNNP"BHLIP@WS!DeXoj"IV8Mm[h:>x!I@Lz)k@W8~jnI$:CvX8mR64S+l4m3:DOKA^VmS8)i"U(eYJ@t&:i[0Up5dT;$}3S4P4w7,NeS=#u3YAX%T+!,Eb,JJD=#aN@r%U~oq6@ph3)JwBH.QY|2!NSI:2#uNyC_"]oBQfjJH
e9s]*TY3/hmI8qO9dSRl6I@E)gRfHjp`T^
!tuVf*NVo8ILcTF?W[TBl&VQ"-=zG6hBX*?EtlagPVcu1Z/
rS"@@Domy9x?%Ix6PbI,rcIe$U^|TH72q"
($^$~Q&<!l`oOa29WoQF(LiRi9)&~^(Rg0yq8H,+c@)?)*{%{=ug~<?Lvw)%??)17&B3?/*P!Tr+?n$W
@{Yd`CqQD-vY./qdC!OEg;AePG"JyeC+d"GXmUb9JaW9,:"~bmNd@<
9Nf]j4H67Px&x,),nOCa9R?fK.CZQ&%57%7E7V$P4%6^#B^-UuC5J,G0BuGoUN5B&6p"g-=N*Drmn&-d>8
XSqVIE^2NJwxx9HLaFZn@@7:SsW;P,roIWHDC9PEF=femV4"+:r-FAR$_l_KA|K:<^X%[$4hVV<UR!S!g2Z@-YrBpw%lCq3KsVBsH3rT*t]95z/ev>@!sFgy[mXlA`q<[D`5Hp^)D@,d+OdgETa/?K/gfd9o[V#C!~q[iCZ%GIuyuMned:sgG.hc/cvjDNn}H3PF5!p|BsE,eV0+lfT920w|AbohfLM@`SK-rxEy)2OxZi7&3_YDt)aB]MP>^avC]=*}lVwVPCNh
:s(H*Y&7:ddaG/~0fY;J-Qqndq!c,BiVf<#Cr-GB9dp/e>1_4X}slj-RaFo^Kxh!Al^vk%GF)x$sj$+9{0;!BVg_XFpmG3AN:dQGMPrF~%cL8U=AKbCN*):>p(&ONwU[5[}QLu$3=*@y`6iouTT^TS175&[]UtN!}IcHNDbG*sv_7
xL_f*p^*b;@Q`CpasXrOjX&^U^AaC+>onaoeUba9/';break;case"he":$f='-R
mXbS.!<-7jhvi

:Y4jGa*aZG[MX*dLV1YTJ1$>UKI"GA?.AHgalt^"pN(,~@b2wqAcnwzmE+GBXP|NM^%xW,=umh~]`*PP%9XVt__E<Gb.BKc4N7f(!46peRlorUrbhf6hM5xq,37M}(r9"*t?b_3[uMmBj@hdRg
QYO`yd
xMZV#@$s3z!Idc4cO<O4M&gKHND`fM[ip/
#<i,k|olC7+IIF.^NA,VLS`#vHn4!~#`@2A.H.!tgxTHVoQpqUX9_DCN]8Hy^vXE*PZlWN^E.rj#<kRy>K0>^|ACI9__E,?);<EUeAc>PS"s_+2fCRS0%^[0dcu^>NOs8`U<wRMGRyPAG-RyuvmKfK$&#KdDPHm~@Zu2ftgZ%6]rLOi:ygSvd0y[HlO:(Z2EwG2x?
Q2r/rwF|&qSN%foe^oHdB5_9(EVdnIkc4=%FX6UAWl=XDbaF2GC:,kdM@Q:w6f2o&t]E;[[/YTf~DH2QA_$&CHmV7U>Oy(1JC#6E[bw|a.SNa~Ak!Py
X^s_uf3##?eUx6on!d>leD+Wp6VH<P.Emc:Kz&,@x")2b0FW=,w|,YHK_<sW^ni3S@$}2Oelurd6%SSN!>sLcGo(,-/&j8Pk;CEJ#uNd&;!T+q
9J}V`>^Q/c;-?%CaiCepq3CNxun<.+&G<($Tc6`^[=syH"L9J"{d:o3nL>E5%""-Vfpoq"5Cl
%4/SatXOKq6Y3b!
DtvZ#TNe*m&Z[NH.Tp_6@D;5X"`OFC`o][}/f(*P8JbRCX.=)M0r/)%kkef_.hUJn%zMb_}J<BQ1%aFO1.zBYL|)ab@y45*5].SJYaW.j1^yA8:m~`*_l(w2[GU=GPXi-0)O3.vf:bFoPgy7K;4v|8lM|Oy4WuRAcY>
!h8EC=clW3-_C)<Y{wr-Nh7=lr<6"w,MM4X^Xh@m-u$/sEz/9:
Evi}PZCm!d`
:^dz_v[}V+Y
5
ZK!Rm`5~t>XUjbwi0hnj`0=kw7+VZ>*PnnK2LiIS%3hf1[*A<%5).oc:)n0D*pq
]k^4x~4rFKwjn#X7m(XNwH2hKoc:G(pzWQW#X/P0t])SZq5_,>:{=J[ow:B9YL$bMQ&rJL_BXguB<$xt1j@r*+S
0+h=Arg=GM+lVk#er
6?f{RW;$uRG/`+
,tkPL$QZ4jhZ3bWm|=+!_Sb$KvFG*<zHh$F=gao^tvY5OOm$Ug1WGD2e`S=;ZF{=LoSI9t24Sk<io[CC,WyI*DLu@Ze@ngb%=Z;Q8mrTR.c]5PVhi:f@v05D?.i>Q!1UW,B)f9ss%N!egY}wTKNO~Rh`Oqm/0,klmy#AyXB&<Y,+qaLh9O_^uUq7>/UD^hRa0A+_+%Mi0T^vjsrizFkxBWu-!6Df>>S`et6DgDbvy0@lbg^_p[>YH6HS/]G>J9<jzN,i}OKihW+P)U;.`HmTHU4!CQ2%R=#){]k;xH06pb.5zSe<NE22r^F70LR_[CWU=y)Eox&7WR]L;AgY^PF:N8;L262O]oCfgI"$W]}azxnPvL$V4-}
fhG*1H9@(U/2x@f8F-o`+-UDhQ"D`N-._B=EZ$4!BGO)7SuOE*,sBZp$!R?d.Y5O?[r_IK0eiOFf{re5SN+q9PBkudRG76v#DQ"p,y@.`"
53w{c9+bkrd#+@w&wDd(';break;case"hi":$f=',]^&+1`Z;:icCg]4]8-L58o-L+8%VYgA<FcHH
Nfw^0(zTPTnmIt/9[0rgT^6(6X?IsGh=_"OW
#)Xh^O/|[RXkMNU7
J7R#^L
ukq.csK,X;2iZmqXXE2d6:)^O6dQxo#
ojtlAfh]/4n>.5g|pTq7*+Utk_[_=da|!TSp5!c-`KTXHY=;VFRn7#tH!z1rpY+QcEAUIIf]^abF[X1tF`yO$XCj_IkKu9Kzk[%Zeo9|aWTM,Zap429-37;21A3g0.!PQ+T.g&g"g%Q1aaSv?SV!7X!-4?+8:IU:6)@L
Ny09ap0?m2Pc%F}[$773$g~Ng6=9"L/o/v;Rn6LM&[iZF
buQZ
J!XnbnK:(emo*ti_$
81L[E|CxCnRk
1!#vA3xNF9+TS$8LM*RL%BLX_Rz*Qc;EEF{i`eq[~N1rM^kKV($*SS[cQ^=<z2@7_3d+,3&/!shVvg4y7P=NZ@vo16LMBTGN%8t,)*R06H@O%blgzfl$[>l"!qe!qXkZzXc<WSUU<hv^/,(.p/J.8PN%Mf9H5XFS<3kN1+A3Td8:4Zdpo?9`F[f&Z[cwNvpX]m4%?=%$c?"YGX/NE#IS^<j%=`Wlo34=7`p]m[WC0eg
f*:"+ezyP#|$=Z.*^Xq
%ap(,V]=<[_F[Lb:nKDGs;L[3Rb%L!+f!Ysl.Hq5Po@2KcM9--]lAIYdhdSlpk0/Z9aw7<{DnPhz#vkWzecc+rAuXyu[gx>Vi0~$hr5oRD"
:%swo*/?c"f12y}*M!hOU8G)L.UR+Jg6D`%mxA_LAo{w{wjQs.6[r.bMw/v3<](8%3f5E2<TNJ4#;#=:6/HkB8J3fC-lKr.>hf0[k`xE|^w_r>2Y)+P<!o8<cD3;]^c>zVf-}kCG,Abg5mx]51PY3ZPA`733b;a[sxI0U#!+-E"J,$7V=eSfJJC9Q6I`E<BFnw2=&75E>7qR:XsCN[:BZOl<fRV"^!ai2f!ZVv~?(Xnha
qYcWMW"I+-;[6)n]jP#J_b@$PaKp(N1p>m=!jR?/O5*[1>B$t]6-wHTAwpv>WSsTj@d#Cl@nGaI8M92(B`@]G!)QxM*q"PQs_klk@6ieukZM)V(x=BgjV^>RkI2)@AjWEY>s*D7ULCbV~R*Ic)9`pe~
qeeMw:l=}-PBNBB:,Y_Yq7R3Oyr=7*|c%2gHrb"9.3Dq|)@*f"X:j6>rJ7C^=JdKK=Yx{jzVGf)xf.i!HQN#jXqJ/fxSur*[ne76BE4uI`O9qFE)mwWo/Wu,M4V;Nwq,1Zc,DD@(f*R*ZX9RsaDo}/
qT>978aLY:&t5PZ{k!`9Xb*r.q<ZY7d-f[nLTM/G,<S|qh+Yw3*6d}aix80Ouc
ev<3G=4N_GXZ|wo^K`Vd]?8.khB+p9*9ab,RvZZ7(Up=F>!3"<ah0z"DK5mXIdtHUCmvg2I4pLVFjHBfq5@@CmQZcS]Oif{%jT,`z:8pFP_txs_?"]:_]t{K#H^:dNjtdk.dj%r>{a[KkJ@:8y@m5YT8kt39Eu_dcFtxZhc$PL/`f*EM1d5rZ)&u2`CxZf4]3n1#*dTrnAol[Y>-q*t$vYJazh5^/imTAYH+rb;D(cnn=P$#Fr~$1KT^2;S/pp,%vq#aWbZOPiFEtJ`ti__7d:P(QAWMkS(n>9$SFk3Ho+01A
6JX7-bni+,oV,F61z8u*+hY5GH`GN4#b"&=MSD9[Bq
08H&pbw2,hA1p/55X
5okar-kE:VVIvvZ(As!Lp{`0Oxb,(+E2lq@+8<H]oqvYc4yR:LgM2>D2`7[AZn*.>]Vq)!HQOXrKV}[wW9wRQMlr_E.AQ.)rq.4>7G`+o9m<.,E8X]Cm1Q
BxL
2(="}dUlt=A;9s;`aIl3xo>(Z6utt6WEZc)NSrwnE>~`x+KA|yr(
"Udo8)6p=Ly>klZ36~u-,_TC:;r`XL,vAIwT2_@&8BWMa:m+xCH7I2qFFv$upNdgtm94>^BI&/23W2D@5"NlMr"BR"PSh4
g%wNdKiUG#=&]Wj?99lh
uO&;rd"zdW4W(,5f*u]mV!Xq;5h*U6:`il5g4R43tN8sRu`@yg""';break;case"hr":$f='"]]lufx+N#A`oq|(d?C=XeO!c!y8eF4$,l[k^lW?*fbL8
xhA4,_uP8R0&7"sxhAO_TpyM(Vy`2p>:susK;b1]2M1b@w0t/x:$>7Cr:rr?K[J)$
ZA$V^>3Jl[OVYIwr+<&=.SE$4r65`4&a^3zw{B:3Hut@-1*10ZT`emsn*Dw9Ka=w<t7nb7@Lo,BX|_<g.1LkzF1H/_|*1kA8n+"^cKPa>>Tf&8W^SXW@]W6V7dpy:kk]lJQ=Mc;(J$P+>p-dy,90,^!V8NKi.`Fk9AA^)EKa5
sNulFo6P4A0g#.YK|.{q`Dc,ZRC&X_&V5]-L*+GF<2^*PgFM17~HTc;WR3s:jWn=cd^_;6<RWJWc
+jZmGrC[9%vKkm=wl+mXIQZ(X]tv^rJr<};G.qw.94;p-cF2<wUp-DX{jsoijE^df
hbpM8+c+=F@;Nj>zUK;hSR95n{spMDW2>qf#r)asA#rmF*Ayp>C^g+#.eh.19!%!ABKeJk^z<}Fv[DYy"RKL,cZFxq){>0^-?Ts.iVfiFud0aO68i|vnB8J-LiXsPPtZUp8?y6ffN9gaQfS8X{1MHZL&enLb"H<@Q]qbX/3{j~(+sf"sx^tH4n+8"A@nsX8:I7iQZO.Gr2P?7+&h/Z+,%RPxsS-Fvpa`n&"IaOd1wiVG!h[
N?#K4888.VA_w,dAZ!2S6#(&"75tZJ=34=+1U09j$54oqxA
a!q@IcoWJFvl>,]fIg<8bxZ3WM?Dmb!E7VyS^|phH&H$qZ.gdDg#5-on/dKF[[7V]z$$X=/ak:10p2SsXiZtsnyfb3U_7HPLsrL>kWQHA&57wiLJ$T=TbQE,]Wyzk>+X[MfPHg>hoWE$F/b^"k:8hmi&=CWH]XBE90N8k5>
qZBXMq/pv,gay7+qLzcY*|@S*I/A-pAxUQ9
>iU>5D0ppxQh*Q/A1Q`HwlW5"VI9U>;mfi
FatQ(8M8o@e7"+IrP5<*%1o_H@C456Dxt-E3q&"c
#uV&.3V-_{b<.Q]{*-yPN@>mqRI-!:1nm$s1Btl:,5>cp>H="*2U%cgWvOX&NlJJ<rn*EE0"`HWra95QiP0T6u">I1`qTuu-*>^~!|3RmlO2Q6CgiPZV<t1T"9cZfD#rg:aa5*A0h<)EICP{i])9b-EdJxc75}jn$?/k8V<
h40w4&15.!L9VA<?7.WL9>K}2HnzaJes*WT0otM"5/v=-B-n>xQ4eTj}o:Fn!re43e]sf/m5+g#WqhT:O3l:T&?7H^F#1]<rsS<R%`i;kq4fea=HX>s
_s(zp
dJ"g4?19%20pS-4u>}pH#6`:q-MbB;Omfn/CG4CU".i
ZQ?gXO*&tzqQ?_epcKP74rGpY2m{A(P$]*`D,Zi9[?c@B*T]d^IIka0.ObcLN)IfI4HQVrGm+#ji
-SpxZ#.2BL>x~DRu.3%rRd-qdmG2O
BU8b4J8X{a"s=AlARjcxFYE!G?68a@BIVBSJ~-^Dy`5)f(/Ct3m
=P_9W<ZR<b]Jm*L+$w^i=&PALI8qfU6W5SGOW?j9n1=6^tAp%pZG5KJ"
PTlRd?4!Ys&}$4`CQCXF11>ft7OKP^+aiB1d[uo*RKP{IedClVs|V9:E`85A@wVZtYA3eP5zp;3[hgYsugW8PF),v!53b*/ARoI5
u
#wB';break;case"hu":$f='+R
lEaLWR&)q9v_"((NQsn,h^DU4HTG*`JV@&f+UB
QKEosj(0>(D<!ST=#U^^E=;9(i["0P9tiy
w<O@DoM)OL3?kjTpIZmREB%OtdDkZ%#OrQ.Uerm7gx.kLv9-E-^|TR
[.v]Wec@m.;E@LQY
*}rwQ]E>k(HXwrR/XQm*$/Z`F03LO{+gHQtKq`u2F-K
yk!,//0bN~ah08_*M6Vx%G>_cV#L.K^JTs%I]OhDU-r{t&B0H|gBWkXIrMYhq5Iy3yX#0q>zly?iZO6pYinuEz#6gs2X)WKXu=^jW&3tQNX#M@vDj*NYEe*Ro{c,TNv,`9Q6:@h?Q1)cee+7R4W"YEpv,.8|#~(<EWGY1!e-iVkLg<x&MhY#CB5l-Ns6n1+.61v@.@GlP`H%m2/v7~Tv8pf!I1n>UH85D0Vogg#BJAJi2:<`wSYXto:}-[WWJV@V=5[C554-*QrEdOh40PED0(N19ji[?a$vf+
/*0eGB]vvOH5@nY[(d8@Hg06"CcHcU9RC1dLfnP-^g%>-V1qoNHlZMR!amr`!-09%Q3E&<i6q]rA9xs2
yfevYxQsLrQ(@-Im6W/4.q0k/z`^>
&"7j)C
%*^A~$F/s
z`k4bW0%}+<`8,=A#2~hHWNB{K
V783hk/X#AYTeM/9<:)QV<]m(7yY2tqIPBqwT@JBhPsM(T2,k7Bqa9),9kd;:hhROakP18J[&sNimGBGFQ?#$]Cf9S9&g+Yyu&t~A.A3(xi?9fG7SbPTh";I2o<XQ`3`(c;@uG,c,[?(jq3<"L*hQ#x=?#+/@wU^154tb4XvSY6g:&jN(i1~^(#~oe@#SsotXnmeh<c[S_076G-~>IRu_BA%swUrQHF-EP4b3a9#:BrM:TXJQ".~uu*Yt9]AHWJtm>tSl4]]B=4xy4!|`GJ$g(a5Fxm1)B;FH@Q/H<PGIBrE_K`G/:DiQC".+bXS[u2[`-mvOjSf@jHK]$M{>xnZL6)%"}=<?@PA?R&Eoi<t.ra$Rd_;9+BOT_6ki0&Hp7!n4b>:cA!VJicarYId;b3[?_G*AIqG2`4AeVRy+62cbST`<EFe9q;P0__>,:/sD%,fr6A8dhs"8][NF<ZaWU4vA0n`&f2,lq&>7hcb^aCTn7!n*N:_oeaV0#LLOPJe8ROP;|7}sPEP)r;Rg,0>vm4>+$O2-fV(71DBqrvFAjg->|Or0rIg,c+#NySHf[c=a#T4N/Z!=6W"HbuPA%Yp3wjrhVfS[GUpW5/z".Ro-QBiPiycsC+ubA)e:!Jf@jd<$6h-z#AmIs4w<Y]J[]"QIY%v4*gYJwN{Eh.N,Zd.d9=#59M|AqVqOBFZVSX&oM^7+4l}uh5),-9fdfoDOVrA)pbWhlU"ch_rU=,a1NPbUC]+!=Z"4^*cmvj4V-VpnB"Kkzi
C}<s"v*XwI16c
n?+;sxeBIPVb^jVUf4<3cHJq"Z*yI
]/xEg$B(Jva5;Bf}m33>?^cL1%iQY`5U5#Gl`/STCdr:_m8Q`M
t29j-JV]=j8F2lmJlqy6y:.g@;olV)Z+)93M,xd:cDE,]LQo)e6&3qPXufK]:97MPA+5M)Es]A8q3?Po`V:iEM>Ffu&P2#`MtFR^}+7D%v
W`78Vj7_x-f1@uQl_n!|$FmJvirvJ6dk-Tj%P
"~Md.Q3qMhUdWC$2jk8&,$!D(I]<v6NB<|x1F0GN>VRF>Zg@_IX^fEQqc9DOKwSd%/xUK=>{%iYF`U$@S4$SO^lm&D1CF<Q~GoV<O]Gvcu!Q';break;case"id":$f='"R
bP5HYx$cnqm%1`#I:W1["D!eO%<%m,lV*M5Du%)0t;QhXW3r;;3qc)pw,GCA:.7P$=K+b5V)kR/~hl`U4KDp_jk80GK?+89"L+@s7OdxFgb*XIwzM;[GFq-"QwF)$1>!vL2,;Ta3:ThldBjm)VcDa~,[$ctKz"O875&AX@(r#i,HisdSK
O
wzF~/De%/$5_iY&Jk+5=E#j-*bvEOg2Z+J6kt;?e]C5qRM)[TueBIcEy97]/1X
QSPS$,;9wy#36tQ+h!9]g<7xq3evK[QeIKp&0l?8a.HsZ2BY,G0oZvx(WVXT?t4U^X]Uraj*/I_0e.w9w!x2d@E5Da?ayud]|:M_7!zH?Oefc)WY^)G
-W.F<UpBj#-+b,iNT8uq#)"@c*)Oo3cwg(
t#o(sRlWEYOGCXY35!dn.cWDPzsOS^q>Z{D1143A8%4$XR+=4n)Xi"R&v{Birz`BK<a7xc]cD/<za,0/(8@@6jF5lXUx-J9+:c`p_o9X+J,sr`=6?(Az30R{GB(G*P#0>4;WN<pX9+cG^txIsEL)&0ft1-nL@~W<S.Tc(SBUFRS&oRE+R#:b5v]M0?D
)8I45Z#&2gr8_MAKxGpU,I5otID+8bSHy|!Vc-1~l!na=^t`g}sbT]YN"!3l97_yWdn|=Q2_NJ["G=g-*~:*-PXR%6@zw7rX(:6nA_B(#>X5Uk92X>[!U4bRtv3mid39B:]VQj%*Ts
)z!u4kxWunYZHc`M7Fc*3Z-GjiKod-6=73hb[qp-_ZweADD_G3Ue83p-P`WO~)05-Z|@n@c:kk$kOZ=):p{^um"`$CqA}ch?4L1kdhXrJ!JkL1
OMeNSxMOuuCzY+X>"4)Bsd^#ShFgx2T=jqL6DNitj/S)p#7lcV6!"4mKT:9r&d&rPU
{>p5r@"oGdahliQeo2Krfa(I"qa!{S33ul|)/&D,0j]yKP*,Ti?=yaz>|m_Wn!}&>t@<Ym,2&
$x+-1`>kJ=1#;=Tbg.IoKBR?0ba8gMC9C:+!nvy70MhQ=Bp+}VCa3uZS348vAQ#lNQ-^NRS]sEmBGb)FN[y.i!0r]rt]x+*U|9
h2R~xEyK4.Z31|DVO8ms=dN*T,pZ<ipR>|bn:0ZYUgI&a%V8Z2<H$aS-6G#9qw6&l"NwU{
jK/An[/%fHH;W1?Q0Y@f"jWyF="k#hd:/vzXq+GY`-`Y5:tdZ=NAjWqk]JvI.Z&=Rfm10rx(i!FQ-Jb?&rHL:VR0qCj6~8:IjsLn4P8;]-$h-aR*}*=AL]zuokRh
uO@tdMT~/dvWJh+j-8MAjY0yF?V2;PhAG~D2iN^sb#SW?]5*";Lh<cEFH2>$fvR:E7t&Ru=*-Y/^X:toC0p0kbTNr$l/iW#Z[p`zY6B,mqVB^wa+]_no3#gX,$1,(?W!dwU#+VZtZlmXXNQP/m`Ol;k-r>oNx8]Vcqs|@<vUo6';break;case"it":$f='*]]gFhB+.#?a.r(AD*$(TE,#]9o!vAFE/?Bkfp7]uNCpo,5aj_s:zM4vexj+
N8d!2}g=t5he3.oY:
B/?ptRcbb7gKAi0P=In#)mfV
&_m`8*x8^<#g^YCB&[!k7P4_zX*`o@LwF^5*Ay|/Ltn;UB?e?nF-6F7@1vRGn6=cdhot+nxO<sx5W@r+{.LtO@u=5CyGLHfK4ppBfNK)x^U9YeAA]@|nt5X8I0(t?.q6RG+q47-H=69XcA9nR#!rjCDPx"?>j.V]CjrUrHbf@;SE2kl#@P!e}nLUf.mGok8x!*m"(-uKYV{1j99WRUp5^AEWON^ugYSr7noAz3$CwX2a0++JC2,.os)+3Eff]H]td]uaCRu5h>Sb7l$p=9:L}HF0NDH2UaQxb]W#1t}n
4[K61f5A9</er6IRb93$VnKpL1NXS(^JaFfX`cS?VQp>3aNBGL_9_I?HL
A[Fvf|BtT%Vv),vSj?cPXnhgJ7ctXmm}
FvUATyDD=x#0Gv~T&a^m^fv0)ABNEdE&Ub1,pmgI+H]N`[6RPnuc1kvpz?TTtp(t~H8_.!bf_WN2HkP1@>5o(v-^^hrC<5]:Jk(:0_h=i(5PJLbV{(;^`r48j
[d(KD^G
xG!`3:3C!
$&A9Qbe"!.[$AwY2;lRn?Pcap;Ld-`
3Ch9<v.^AQQVAfQQ8FRD@e=t#vn]Eoii2WY,oybX!Ppm<RcWTX*#Cq&oLx!x^m=m"~)m,jE,(]88-t8:x.19usjx-[HaK-VReaKq]jQru7AwbD,Sb9l6vtx/(O5rvP4n]kNf9{y6%~wzXLYAER$/me/wQ|Qn=fjN0qv~_M@{Hsy/m$;GmQ)SV5yJ@x@{^BSc4W7x&k7QPfaj,]*4pY(E8eO)W)JoakEcD(/@=Pga4i-?"lpf>&(^!_Ew/60"]eTLY)>?Yvyg${_bTCqZL4tA5IF&!;fZaG#M-9nfQ2<mGbw2P`>q0v]%D(a@"[m9k2@IG*rRjxVn>4x_i;/+Xgttcg(7nr-Jf<0&73c4i3&g)e2rE,6+^.^|S-ZFYr0X!ow
GIAQqHQ2!z+I&~>3DX.xj[!)IBfPM)`T9?cBav/*R;2_S%</a~Lb^|_^Jhw-J.^7bH"}&H6_AuE6I.?
94w!QcwCnn8[?*5Hg85*2W:Oh7QqsUt+/^enr(S+h
Kz>D!@QiK)/@].0|GFuN*
Q<!:x?.=P$<[ljauAjiWJD>ZM=p06;Y@mN%O0.A[j)h&JHjXjWM#d.@AX#2Hx*K$jp;.U8Ksh+=/eQ!erZ/mW1j57Pj^FL-[`mevw#t#xJ?dOD!].PVdN|;_w91>]CH^rn*9CEXjLqr;7TJe[ILz&p)1#F;a0%0BBSWQNR,X!5*^,5,c3RW0l>MMb10_0LgU.D%Ly/%m%Up7A8ouXvG`S2P3K|<NRmCJPeJ?24BE1ih4vJee<KWi6;A@xPpK[@p2qvI-gIw]+WMb*!3PB_He<
dj8EJI"AP>Q!l/Jq.6P#aMlL>CgEq|k3I9:?9o1"Vw)z3
LyJ?oi?cxI+}0@*H_!MCK=';break;case"ja":$f='.R
g~6kZ;:g7XlJ0d;gN~nV`15c9tDU(29L9~ZsgQJBJcA3"*AHBqW/W=8S*Q8_C1!)h7"msUEM(56ev6u8UUN"#xkkhcM3k@#I6LsNa}FGne5tnM7(XO%=vh=c[Bf/F>A+R
@$QY4NVSE7j[F_`@B(:=$3,JAl3)Vt@wYDQy9PXEBMS$K{9(yo:^fAI.7ux@osN~n#mESobxwng#>
8^1^g;yfbhyV59a:qfo8/Why]0"CutM<]UA[Z2i7vUQpD>&zj^;jn2NMHKdRw4]TU!PDmOag$|hhhfdzW$l=vV2VaL!a0*7>Mn3h
cQ}8Y`;!mAhO/45<sDE0Bb:A#B|Xgt_%!oD`MZmbZHIqUFwG)ypq~V06AL56Q5N#6vzjud1S@;mhVI):C3`l5JD1qk"i<jclP>|1y#-KL(Wi}m<Y}09#^Vj,41u]Apn1YJ|xACn;":3F>`m`YlYe5sqD63j:P<xf:7hMf/ZRg-[.R-4t)Mc6bXswUAeL;OD?@38L;xU40x!v,+hJB$j%>bM
A4=/C*:k]D8XU")NE/1H0v?T1rUvo&-4$Z/]==rg>HGI>TL#dV6;gD@KEU}/qS:`nb;T>ly?=If!u@|??k[aq6-#"E8jD#>Ll.#Ivu|d$uv[afcLwC;#!Q"G;9/6q^-rust/I6_kR0YG41pqc<Ahya.Gv@tu?Y,gXPJ&1K/niI@tZ#|Hbwywr:pxl`*!%k9UR9>kFSVPu^`0[?P"9f]:OcZ<"sw1F.zcZOyyXII5qQ/gp@hy^3INsql)jeMHX+/0p!A)oNmoK_zpq3}>I&$"-7-4|g,)eNpn/[.^IsJ*>LiWf;1Gy]U/`:]_4n^I<Ue<r[f_1`?6
A9b6N)$$KQ)TTX1?%52Giyg@lw*$vf*!o2H~ng%yUiq^k<icC`^3!r(wSm7K7pJ3I^LnFp(YVnwn8$=$:nOG2:$WVpB<><b@p8ng)n7,Nh4RZftP_7mv8L)Fy;DC7NWWwM=<JI!*afqewMfeK)h@beTnf<G^2|,DOe$|n~5K5cpoZMjhsHI4?yu%XTv%-.Hf-q>|@[t@[3$Dde
^_OOK2m$y@f7%e5#sEQP(7itHhs$|2z"=J<p9w{nSlC_,&0XMANr&1Z>!_Lb]$~"KSx`01h[gDGp]hpQ>f,0vFr>b,Q=fbVm9l"8
8FB<>&?dB=`IN9vLNL_;=81#B.Vmt>Hm
37TkEbE`{n*#uA
t`,;Ga)3-{kx+IZjr!)&UVd3Yr8u(f$O@{>q070<qQ]lK)N1d2,3J2"p5"lNihM9s(_qJ1^"rQf?kG-6;)BCugNz5(h&$Xr_#e.#LEx
c~>If-cV$5!eN^TV&l6q=6`tqwKe!(d"-j)L
%J<;Wh<a/F71Ds~$I_q9_GBXM@y_QUoeK:L>9J3/[)pd?k0yBx_J.6F-w8YBj1mPLOJYUKRlYEI7=*
h),{4K@^2$*O=pS))#c2iFvieUK*mg"{5b.Vt}irs7-Guj/YO/(JxyR:D_K>V#[{-0Q:5i?]^?yqVSpZ7H=Ku2RT_(SWeQR9EsQur"SlgEq!mff&x*umr_(SFMEYtruNO8Iv8<6_G,Gqb^$/5Y#as2th),NH[-Q]t:8,/T>_vOhdiZ[G3^s3v<6=71,w6Nk7v4vu;N;E+Htw.Nn<6c/=j@y{mv.-H@bi^}M7UtG~,DO`kk@#Jd]T,9:2WS:yHZbv-V!s"0D.B[9y><HxJ^]MT^R~/F(?@Y?j*qhB4(nM[qO`RN?/yP@f0vg[s=^fU`PX@M!x[SgyS
i(.=x;/V/]<sP.
32|GWEJY-EOv;ubZ?sTWbEbbo62N%CDN%-.xeN&';break;case"ka":$f='-Zu+R5H]$&+cnhx?Ik2<7Jd>Zm*06T$?-
xd^vs7!!|/1#OX1<])Vu|D.bHkx0&rA!W)Pq/HB?4wJa(WTEDn87GjN]D_2nDI.nuP;X.G{l;
m#|G|9~JgYjf-E^vHK?7%[z`eZEtlbJiXm.,Z!vxLw=H.IUiQ:#cD>=:*J88nC|2WJ0M76N2wrob1-SK20A>*M}8QkQ;}&<@IhA)([c%>q{n>qTM"6t^,l)w@qjGHHq@_=1E4N7)0CF_7Q?P-h*Yp[^jzkku<2oiK5RygboBuPV`Xl4kYpaWx#5^1X<Jl6Fb
#"$K$0*E?66~LHoVW$yK,:;I+ce#>lC6F!WfI_S<#5%@G%##rGPY5^nX@
!M]q:`]I7ogfk0#YsF+|cJA=Di#-/HI{d4Fh6XvWJ+/?[+d+Kq[hF:F0]4[T;7Hk)er+kztg(/r(FfuU4|fHh_=6PQ[Fl`xg4{6f8s+Z&w&7lCqwwV%RWhb{gk3zlaS$taZJi82tf/L!U[Kw-4kcn6
{(=S("BnFnp(=5"iC(1kPPtvHE)Rz
MOjQ!`De7e+7yE<X5U6bEh/^9QW@0qb1yD0?~Vfm.Ga)nC
R.2aVZgG/vW}(iDx<Y*E]@H-5@qq^G$^K,2vb.M3G@d6"%!P&
1~L"iWy@cm4GqkBXsCTLtIuga9i|E=n$y5`Ml*)njaww[lMm4M_V$W=-5HM3Jy,oH!IB)@9;j@/W>>RLryI>y})48nahnf+Vl<>GD8lA)fdu&LlBxpOcDNj*%{n,_2[`j-)_eeL"4
jXR`"`t1/@r#NL`p3jg3""gyIRXVL,B4":aGR3>tk4S}WIrxOP)4^&dY^i5)p<$nK/WSDoB0M79Oxe[$"cS
FaPNm7uw73Q?/AXuik$SYZSh-&!=K].55/v)o-AQ
5"F5N4|6J_]6KfPW.*oY
Q2]qWpN#8XM<a$>S,QB43H*KdH70`MbKp+ZW:RDn&31f*nf8PZc$N%m*tC?MyTqic0/MehbhmZF-LM`Gk@b0m9Z$$Pu2
a`s-)eW0+DdftG7-+Nw"Ja9Dh>yrHdo":9E81A;y:9hHj:e>D&wj)
]FQjA[N#lTv!umKuZ>*^C:k!,K2@$?fxOkRt)#L%W:O;/[vOr>5isN,8iF"(-Yl>hW"8FT=1e7#Wi(vPNa#OVX6MxR[VbN`Ua1?.|w06D6vC6EBD)AT=#0~.TDWhRpm!cjwF_N&j#0N9KD`ih1D4W&W*kPF>|`cJq1HVc,,umZ[4+2}t|$lH|v}h;e|NcM3Rt=&/;a~?L<.Gum:j}sc+`7;`MsD
5q2(8]@wj7oS|Aj(291OUf{`+!l*2_GAeO["MBtIDG]Z8:;E
S9s2J]D%isG</#T4cYV]Cun!b]0/8(x!(92|Eflx,i/XR,V"=7KBg;q[C{
vTu1=m
utKf3b7u*<)]5_U{*XC]$qOrhn;*Z5f7ZY;&4!GER6?Y;g+Xr~0I.aG8Wq1r64wzj/hBi"P"m&N?o@??%y9>+hKY7(*x%UfCB40|SS<zRYE3pF(LI]c,jRQ=TW.,2^h!;EcYuds,@w^%tVgU1RGBJM*b>L@P,fit97,"+#<xbb*&sh_WY)VKCC4q!1e$uc=cQeKjS$M8gJJ=RWykld)&yc.iSyL4<+b@H*M.oRw+g^U`&vSM0V/}o}Y},PZZ1bp!L;_x8,`aR"qN6lMo^)Y3iub_n;C0<2UE&LV[CAh.s|V$lR6;c
2)e5JA_zlmHB(";D*%h{cGndk]sKg[nRq:su`LZJ5i^]yAxRMQEP6J+"sT!DhyQ*bShm/Juw!A8=S+qf=L/f$u0[JEyk.--9Twi#mse;;P8&x[P~Ax
=cGRE8|/
VvHoT<m]ao<#vU[cHkrf,mj%Xc++xw+<98!XUOJuDusd6SBlo9Vew?
@8Uup_K_rvdwLT$oE8R:InHHFC2%DFU9G,L`R31+g@`ZS$mIZ
a3?,I$-Vy5g;9Lh`a%}o&)H9>yG8$';break;case"ko":$f='.R
h)6k]$$cc
mk
qQD"(FvA%VfZwDU(2>{<g;`k=v/-,U-!{RDX_4Z$%YW=/E=sqdCAGY:Cq9X)mL%)Y,{:YsDc3H1<rD7=jmasDbH<s4g<<SHgh=_#.f?YEi}k/idF#vY;cc3%(a{8Xtf=}k>x:Fbr}]zuMFnyA
Z-ret,p[gZ4BtmO$8<(,jJ6LLP:h^&$c1Wg<(v<>M/Pl/tTQ|G-G+>:wwLZRR1(`rn/rj_*bK]VJVwK4n+v*;V9T66+tI_#?;7fy_l:^3>#nrSvG
AFRTN/*Y1}pBl=:PZ?

TIJk@&99!tBZ3*"dh#E[I*5t!>brSCXn1B,AU<j5epDL03J3STyMvP3AAm+377Kvr,`>i%yq(xiw5sKa1VjG._nOHHPMxdW;Ro9L9jQs.
svB,g
cC<"&YCbYEZO/@-Z3D%^J#I><ZGQwHT!A(]HD`b*aWHY&lUkfXBfkwVD3CEo(S:YSp>}$O0;9w=Ndrp_]4AiW|6[=0XN$T55kIa{^/YVUH.HHn;;Wc7cAw&@3#SF
B6$]vA#O,D|yyD6(
r%=v7*mqy5>9F$nQs15gTtWK@@P`p(`t9dQ;8IV@V9)fc:j5T2uj##z"c$BZe;sCi0Z*[vrG<a9h^C:%a/O.-%.ZH-`&eVNvn9)D>Ih2v>>*
?OhKu2u_:v_7h@awx:.edW7pt<Arh8?;7rdbR3ja
OxReR+ZQ;#fss4TIMhJ*TlRXsf"tf?xzu+g>g0H?"U_X@5p==ZEwoOZ0S!og*e4%hRd+1So^HO-{A//2B+l5b{TnOU4H8!aC)YJb5C`6[oK28tKS)w1?m>>D4>*lZnOw+6"Wg>F;K$"QV>r,t/)A?3
So,cxO#`&gVSY9?;s;+EA`NrY;$_=V9E%K&Tj7h:J2}q+BuW
2qnyulD0oO[;"dijCrFfWp*]cv+mJf5M:)aUq<o$kM^D1tn{L<Wt!4w=KLZbdAMyXGH6H#h=lhyShyxUx|Wx/+(ckG3&$Y%p#|UUlqLD;End23dt
:y;i$@Z@k!2bGFR5[JhJr/`9^(=jkqbEXG]qs&><S2c^+&-go(-cwhQW6n29g3p41qx5D"V+Odf`6E2awPN0(K:^gh`]|[)C~o6NPXGTtZDjzt@[S2_g,wC)7^W`?8Mx!H/GVjl?
)lE}OK-O%[qSaP;"S{W">+GJaVj9mC^
`:x1[O[2Fb^C<f>"VZ6QaXdC3|Rfduv00-3iQK2fT[tf"n>xnuI<,bY1X>y=XwZ:5y9)8:WHRmXs.F6hR/H|HGC[@dul8dy@L[Ba6BkEId6"XDnS)]`!W~FPmz;{a[uvTQbQyuQ>(I^Ah|2NK_-_$h$Di32X,4XT=-^-G}cyF7:8r/H1-K0rJ($1>6H`TINUuAmLPQ
uU^WSj/lL=QTJ<T
Us=eme#A]KAquXJM~I_wf<W&cw5*g*x41yc7UML.]D
eCr8Nbl-[OHqmB?TSsIY
D(P*{YP+emb*0SPu(^x?1UQtA`f4TgnU,A>h5gvyIB^U{o+S9Oey^48UYV8T(mt2qksG9md#RAZeb)Nt*J}fA2`h<w9
/5-@u!I$6(#J6AzS6dLyK;ZM(reU=e2pHqimCk}u>bM0A@W[CPgG,w_$
#)WA[mG
+xx$3?ALYES&g0PzIopFEB$x>aVM7Mo.MbQ+9+O]S#.b&!bg-
2GWUbJ;M)>S
4mJr,M.?.~u}2wmt(^ZjeHnU>_2aI1r*pVYAJ?&HtIXYdL-
E?@f<e^qq!L!=:S5PnmG[l;1TuySp8RW#%aO[Lkt>]k/J70nk!i:J)xfN&';break;case"lt":$f='"R
gFcrZ+#?i6u$#MNHT/[H45Z2Siwf+Km~)P
$N>
U!5Gv)].TxKJl
^B^faj.I5$]"`qbYvrqLi;Wi$
@h4_<ohV7qHcAV9IuB+=~nKi&1Ub<o@8Q*s;y-lk~n/Kb*0c5W*k2=BE>XSjXYH9dVcYunW>4k;uo;/vV_VMqz)]5HKiNowc1.#_QIpG".pA8JuS;#?T)/z6p6PeJ?ahGRLc5lsM5y)*CZa#lSC<+JEe7_Q27
^3;-UXyA*V&V_<b%"jIg4>B[PW7m!4GqRaV
{S?)JB1owL7p2FyBC;VlU99_K[vXq07)A]}8^FnNCY46c=-QTtJn"rWQug-<SinXPp(v!%9ZWP(wiu|dl#7Q>$T*EDe<9(TG?ca<;.;g_Z73TW
WC?)vwfXx)XN#c`Wp$7mfNb>#rfgG[^>gKu5+.(^eRxDV+
6lID"3vl~+=K@g@Zo-P
L?Lvh@lg^YFk(=@UqB17Ly.MbmZ,U#TJIIJ+MYTk[H3du9mw|J>fSjDXeD-4,m
Z.cd=AEs1gp;>Ikf<G^Ip@IU<PvIo#yjsfnxiF[J0f./GZGg9+iALEsU:aX"N"=%YuSqGOINSNv~/Z7,K[AUD$_tB&Y(/-U3!6P++?
d@Lr{_wHWz!@6%%2,qpi%@h9QQ>5I&_:JQ97a(gcsD,mnXTTyCR0Jl0.]+XgEFO(2[Q%aT`xT?yb5$-=EIn6c*B&D_g
:2TSqJvh=`FUdDq`seF4rL_6S8TY=#CXT[IW1#=U$asQa0`dct.MUvDMpLIq_CZ*")+[CxtdXB-Aog=lLT[,r1F`
)>
GfHbQJk&E%9[{vRSl=Lw7uYOs7f+`OC]]?Q@5Dy1vA"WqA7C,?5mrm+Mi
qM|@TJqkg5M,mKctd9_qI;:$uv^,0J=Q?g1]WCO(gk#20^K
99E.i(7T7e&2-
@AJ[h
%NN4V8hmRZ*YQH7U-jm&ci[ZA/nQa,4C6S~RUs()LN8+#k[$b>a]IbVdU46#vX*U=N;4RW)3J1=Q;veqvy;<:CU0E8VA|:s4*aIX<"93pFc"Ji{Cur0Rtg{11B.<SrZ`dS!R}j.,/"M6%IUGOT=E<CgXv+lCm)cRelU+?1zM|/}Vhqor*4hlH&&?T93aFDh.f:km&tHs
G,U33?t{_GcA>X7-eXVS>0n$R
keGA-4VCPv^{FgU~l}D8A4v=,c`$aM>(Dou|VtrIC3"EYP!of7-/kjG;@f5t*OV#.0&e*
,XF;p%/y_SjxTyi.$a?#YDT(E4k4K@&r
$b.$~Pk]T5pq0lHb(H5_b=MrMy3`U&?auApVI2s/wi8M+,&@/ZPKEH>BBj@cfU:&B17bJAqpOBbsIGiR&U~,R[Z,Q5U6rJ)mAu8WO=TOk3VRYb")d1E*F19go)IY/b/.zMIbEW5Im"%rP)_%1TR<zl[-FY>L@itv]JGMA:}.;uVoIZ08cSNUgQ$yVFHoV,LxM.tEm:wd]Q{g-ZwJDfUciuw!|74e!fSOw&.&U`Yd@8)`!pYQE49RMS,`8Jr26tus|o=.-=Y0rQJBBxR)*WXFFnqPAm%Ma20EkHC2l3bg=*EPSb)d%Pm(ijR_~Qzh`cl(2]6.]_`;{n1g/GlsBWd>gs^){H_6G<r;+B

Ft<=IUvJX[Z6Tu@cS[/4{,XdbAi0DBX$EDCWsSB3!*AnR=ng.b-cI+BU#24mFME,?I]o@D.c8JUC:o5=*
?;bD1e*`cmkgXPi>-/M3jxdFA`lW$
L+cs8#Cj(uaAuIe1n';break;case"lv":$f='.]]luf{Yx#Aw([~@Q@0&o@~$hQa-UWk8iS"
AT6=fQxKUlm[,4>JH"IIxWi)].9iW2!3f*QoR7bs0+.G8;O^tYUKc
]H=o&w0s00Cang63D`O)0qz%sr-X4g)FY=%hggThgTjlY`oU>XpHfZ:q8Nj@XRkRQ*&1SK;x#YfFH[b_/S>JKO;7FNs*/Kt`[a~xz%bBiyx*HRPjP7FU83IBu8l+iwkD5kD#1rGZ]_}r(4^t@%xP*ux[]my*$va9cT-,qW:Bh^*H!bN:6,6ot7m?Siiyy?vgciR/DQghLI@0[;+J}/6otkB>q+^C?r]3&*H^c_.DyATZsmiNCye_MIi,Juv@g
nv_Ppgr)Grvs^1(:DkdKV7YWO*M,8oj0(DS].s*M;DfYY#b:
]{]%V*i!V57a_E@k$UL2S#4gVsvPsL>K6,ljk~*]1D2GyWkz8OQYGr[WShFVFCr%S4
+TK*pnc^&7T7v$ve3>l(Fn5j=IV=Ph1=6X0`#DkI|c^L9??[<Igir)[X+#D(M]~@1ae88HeW,Gi];kO+VsRP8mN(GWejx]>)hu96m:.IMVb
"9EY#7P15-Wc%IX-r;(ql/,cb(iFUML&5y4pgpD7}.P1vXT)9y";9?o^V!W<F(XV|5,5=le9yZcJNN"Fyw5b0U7]c+ia_v|+.(VifnV0tETjnG~gaPeQ;Aq32UGgsR
xi4G&+`NC~X4
d+9ITrgPi8yHeuf*vJ7v~O*)V&6IP;
rMf@[?CO/YY0wnE;51++"p6.hFiX^F:Bs9pdTUo+ADP(.$)Kh&cc6JW}S1Ou`a:hb6@m#+x@!{ou%U<L%--K0y=!OQBct=6fa^mw3*!uA~<Y]gX|>Ll}W)3=!
NF[O<h$jc[nuiD]Mx_ByEq!4iJ/E0fx8`j;MV.Jj
|j5@B`ok$M7T8Qz"h!Sp!>::2h?7T2"K>N3u5i3OJ)3Nl*,._U
/TVqW<n=RxT!rZ8J0b(=z#B$,M^cGQJe%[qFK}Ui[b&-!go.;W&`4|Xd=ouN)VQH?(?$bE]qr3V+=`2uyTa];}:?,4MsdbHU,H->JaN6"uF5h|)zGf&K8mf7LwM@G]e}saaxt=w+N>%KT`!7[RvVU<?nX!rlL([,*wIb,eV)7

[=T2#wmE^TfkjUCNH#SkGls3d.tK%])BHyeE-"rGxcXc!=tj*]FY4g).Y&"n@P~vw,$TpXMN@D&b3.C)c"Hq38`4zc1).1F<d2CI}!:k+F|yH53SZ5P#7aBuT@f$lNZDiMofr8g66)U@8HzoFS</FH7&WB`
h^QoMAOQZ"1(Jc98z,&8>W/%@F0;9L*4oEr0f(3U"A})JrZCbT*V^xJDw=g%=
h<vjw-aS.QqB7b>-5;f=HLh*~xcjGJzaxU1A"HOd"$.
Nr`PD^mS}Cpn"du)vb(/{aYy6,RM`Y`g2(*eqTM_7Y}#-:<9
i+(ac:d3fOC[knW1GI3
r.:!2p8*-)lJ2:!MlAV;XW]f4Ul8o@:WR;u=M`QVQ-4maz+G.O!(VuZckD@Y?2^$NKxqa!H<W@V:J8n}a`;]][-PY3,B<HDy,eUs2tRab1m8w51@k0Qosrhx@/4F>aUtTv&[dAqZRy@6&(94M6(SV[:w$-2r%+qnK1Jhv1Q
e/FwHLswt,[was/n!sU`vEfM7AOX3Bt4kWU6aMnn)2[YiF-xh+TBt!y2t>.S6:?~61Hqc
]l"jBAB+?SF{y
8TXU+[1krIg(N&';break;case"ms":$f='"R
h)boWR$`A~dPRv85LJXW45Z2Sit{Hp6Tg]kV=;ZG@m4@s26qlB7UJDye@ZGE^JZzk3=JDUn9bHEwJ4[ZD???jd9B_P]1;Gn0;;agP!2Q[sdG^!&}5{tQ?lEXT_SgL>T
0*J99qKWJ?pz;!rp[HM5rLP3s,DgM"ye,3,OiFx=c1GkQ~lVslm529`"v.hBgpkQ]/)jDPRXwcI%d60;WMYlEU[$)|7UIC)gOGBl?*aTI8q6=,TH;#C.B|-Uu1*_wd]"Js-?KFEkL^ps1PHC3xCRa9LP3|k*r/4Y%scrHU?k^o`@wfs-7vOJ=U3C+k:~]mC
vJ$["%A/[gQSTr1#^UjXSPJVq1*U:>+IL,D272^!8s?UYo6L9+:ADCG}u9-E>pIT:5e["xK!gN+qc}]0..?1;[]^f7gMM"XKSOWHElR],
M(F@)e/[J~<e]|3$H%#hBNKn
G=1kEQ/Y,vIR#D$m~V/C<s.e>xcX%VL.^b3+1Xm.;!oI@XlU)o~K?[0a?2P9;+T1;n
ZruWRikRG_G3q2Zd6th+^TgY;qvmB3qq&[P1t?XcQ>`nS8p{MJC60!IH:ey;s<xfULd?"c7J
ZM1V&ARdE*Cx4+gr+4"6u8x
!SfXEpzl9i@bL<qna<AcADf.!-BZi<X`os[(Ne,s>,!ab[x9h;)
u+RZVY<WL1Qm72TS)G2&J%X[t>$_D&|lcCIRjbCszI}GOie#o2
$XQUbhWH3e1/$oJLk3?8adr7nGr]pIk14v5P_TH*o`?!q@Rf3sf:hq.lRqlt;k-X+]kEh`aJ9<D24W0Y<zC
b"2fS#8E";@&WqU/,mhcwLejY|W(C=ALF<Hp!eEOh|xl(,VW<GvsVVLV)kY,`9"&Vo)fArB.8KH?@VF9
y]q_2v(Z(_
*U&OF/fA^#
rVXp3/_
uE7,)mC."VnH732TDT{dM=Z3N&$k|M}BP1ki6M1SQ:D#M$#+zazv1x&cFUa*aTygkP/7Y"_T)ZM?)c&0CsDyR8F%g[TI>r[=y$@YW72&CQtSfv8k,sf=Z(j&VsqroJF%vGCv60d^jD9$_sp)fB5e{yU!)M-(zn80K%n0$;iR.Ig^X5%(:C|.JgyD[Be$/<+Fs^p2Co3[_*^1P;6#pQN3laC3<)
Q~[bO)=o;19mez8Y)tjq
Xf`gTJOa^rUBb)?@Sqff#^W4U3AQQZ?t9U]W=@^F%cMNooqTd.nVV&yi]5fpJj?X~p#-|@lZU#WeHMJE(K>WZHWm~m`>]42^c]rf;lQ_vz!i4tAu
q~cRuz_`fZFFaNbD!NK,Q+"`%k2IsnAC?G.TS(YmncKTv7K~ju$Hf*WX]L;W*zch,mwz7O;lRzl/>ptb(GdaO;]F_3w^kYQTde3:"RaBWs?};0Lt8.(D2|aoE%XuIb"q=|LO=dT}77Yj9>j!]bra(Ik+fLY<OCPPA=YlP7Su,,L<mq;Y61UNK2r{ZDTxb!S+>gkus3s]#z,^kVGU.VBsMl6]#Lg(';break;case"nl":$f='.Zth)bl+N:e+|oU17F(c7TBF3.O>:^J(>-/Z(8QL<+TLlx<sD77:^EO2PZPyH,}ERm)IcOCil29->+?z%mrKuvYPfa6Fq5OH?LhL;_&AyF?0@hHQ+L=IKVieb7lZ!!j6q/LQ]/W7Cp9OGoO*`giH5FRrDX@3G]H%VtV8Z@8LNq^tG^UyJS6tP;$_zid[AYgFw
a[;N%j$#X<CiA2CNH$S-9cjtzXC;#uNlOA^NhyW5;C]w^aFT[=}H*`HXXUY*:l#PqW
%KjGE3AWhy1@8iFfLD:r_Pw1LCfa,6<y[0H>W{GW>(Ba;6
m>-:~Z<Ar].){VDtNj&<_v3a
_Ffrm{
O:5]psyZ=X$L@cE$N5n9;%dAD1BWv8=e4@,=`YF>:_vYp7
OkQ8k>3330L#t(oqV"5eo,m28Q*p/1$-Ljkm^o8pYpe@
lMl=#eIfD0Z$jau/VxULOmnA]wVcT=L@h=wE
fo>@=q>6i<1Mh#)`.I=nykBOonX7Phy#7L[!,k:$e~ystvDf"C#3;R*S+!Xf!EM3uPMGNaRcu_",8S_C$1!I1u:MpB^9;iXxXsFhCW#YK?][8!>Tku)_=9(u$isi6sb#,D*z-Rn^=A62d:8t1OXI=ev7W.$NCm]h3f;jWlQA:76*-,(t"Eg_uK%[wR]X]6uj%a%py51CN>d2
":L[@u%tx*C(Xk^:^i
nC$^@At`vf7@:3m.mzKx.3Wa9OfWR5Enk}z%dmCu/!+C9)5E=()z1oB63J[vIUOPn2
L8lBJJ2Wn@=;+;1SQ+Yg1P]<i&XY$u0hi-a7HPhMf@Q1yjs=fTDtC2<XMKKtK]kxxPwQlg.eZC5EW?d]`t_3T"07b]?nG<cgp0ojZ./$/c;&l(s%~;3$n#7/]_VD~gL`1CHv@?C90s3-gw(66%_K6E-^
"f]w#^x&.v04Pt2!O+o+r+,1f_UT^Z@`^HO~@~IcHP()"eQ9Bek[E7,9<oX}VQA,3VLDBGx.]wXpqEA^^b&bFW&$I%H12E563r
zZZBu
(cuqEpH3AhYAU*O$yX<N/?5GF"aWJ15Y?gSxUtOK[m6_:sT1rI)a,q_nx$`1xEe>O2H&Mt4[`Xhk`ZIQG8W_<#6R{MB&x
2kZK
S^uTcT_3nRN&X,Ch=mQys]EH"=cAk[XMlB.=9+a%gFmkP>[0a7Lo(UJ6Y^22RHINP=]^,MvPpZW#pCe]Vz28N1k$]}FRA*Z*Vz`ce~Lu
`
e.~Dc5_&FBo[#E9HqH"M:Z`QAXtONJA>~Y?H8u&S&K>kqto<6]/VIY"n;VZyPxX*XS$?[y8OwR/7l/7Kus1<o;<DfXiL-)>P#THdJ0;T72^U4p`HdN?Q.,O>VA0:FS$j@&,jED.,w*woJ4b`~YN/fU8N8ES$MXLqHxOybc0q`")1b8f"=]KA@Jw"[
s8_!.R>w&g0W8:]nj
M6P=Yi:EP7`E6shL]
uI}GfAxeQ3Y*v?
_/)L],g
hmq;%h=:*s+;,cAN)5a.s7Ijgsp&S20~C+M
SfDJI)kLQZVRMRK_r{&1Y:R;f_nRDJf`Nb<2q/jc=Bj:I!->F?458dGO%Qu8Wn3Qb}UgyM`zpER^)KSEJ:AE2-xvt@6<l$GbC`-FwAN&';break;case"no":$f='%ZtmP5M+N$cRIk!j+>J:*w-Z}C
Es8z@N!Som+X(P[sZ?hY4uvw!)nRY#St->wDs31CxTviQawc9p/w6KV3Kuq)`@G<`b=~^,66sH
]Df
A34,bI*D)H*Pa`%
}8}0r[v^L#8=L+m;z.(8@H6CY3/4JZBhNH[]4?Z%Sc0tCa<s2w9MoK
MM=qPBW{<;5[yWptG65ebZ9|^Rb*j^IyWEY>S*!mS*hDcP"LpBQeX@J,S!K*Z|+~^-/<C|>_dL3noYFOV<B
YyZ5^jJd@@,)s|/00RS:=]sJF2f}`+ORlr^XZ}N,/~m%XADqeJZer7L*II0D!p>$nuD*![pO$ojo.Rkc_LKx$a?%e2?OMO(QZ-"Q0,M]P]O;b0M,0ov"61X#?H1Y]z(t8@_
l@YLe$;^R[@%GCH5Y#SREo
sZ8m`7<HQ,
kj@%vu0k0!JUXn!%vj-^CuP`Qg,v`ACt`A?JV6d~gZb^j>pis@h+`C>`
HG.34X-z)E4b2
BFhRV$=!B=dxl$8`t-!2C-fY0L^&tPsP%:)7_<iW5%P1?9qg=V87-G-V&_J.l<TkE>br;ew<1R0
<q(GDC>p[v<8/oB(E^#4$BFuP[^j/HS"_EgfEmg><B"=K!gQkmeqo3zV^s4oFKB.HH<pb+`Hg6.e.!i/)ijsU8l_%wAMSNUCuNf#Y=?!n=F_]0r%.8-wGw[kEJFtV+eH)r_e9n/9%Nj+9HB](W=JL8>rwai)UUb5XNmB%IxqT>C$cd^ItMq>i@[w%uJ,cD<7nv`PY@Eah7+Kdp!by=SSQ)QWgH-N!%"=IKPR`/U;(
lgvUm
1g?HUM*.KlX_Z7>kr0XAfgtuNP;O(F&_Z;M/=wxI0"Z!oIw;T$7#,J?p&K*7U#DQ+GKF%n0.eJu)H/W.m9y(V0N^w]lF2px9xfpa,._$8)[*0$d9yGibvU;OdW|nKWo*`S=w]+a4kYaeN@,nDr34{;X$QrnX.tnuyxpp"o1?g/BQm312cD7]#^j:J-W;,d^U_RZDX>m8iJ8%pY5L4nmt,Z&LLpC&YGg^L@4$laj$*JDiAWA6@DN(C:>%yo+A-L<^KcNA6C,5-
HR&1El&y{F==Gu"!9^wU`$
i|(@1q4#,JAhA/E}t*kuBg^_<b5Y`L9Q@F@iV5AG!<X>XROc2;ahTyBU;a6$=vW}N>@hddFKF>LLQuy-lbC=y~;V*X({5=fCB&.@rv@>$^o,wvW>avaPk/fzb}nzS1?yM)Uk3+T|h~jQgs;)94:/-^Uxjux#,L=P;@W2hrbDBvhZ[SFl>;v<Q>6I]`F.O.7J&?l%Hv02!iAW<1YqsoXk^l2T/)D[Ewibp/[XwGWGhc
9$!G&_94jtk"~AR9&<hA4jiL9A"a%wYJ}e}`Fu?^mgY!m
[:ekruZ=_o5Pg:$rhGZ?Lmx*<P&%V.R9zE1)rf^3b,QvLZgmFlVBc]r,>Sdi8,(c1vuxmRJLr=r3S0)8;CECRRb&|4*U`5i7^+IUU_
j^@$vC"pPTBKI]aW)&kNomD",F;Rpp4+ayEJ?eDNJm
x_5<(';break;case"pl":$f='-]]mXaI+N<-RElI%-`A>l=t)+@e>z*|=TZwQQT"Ba!-Hvx"5YlcgH`yZ,%G99VYO"t3!7cDDAsole*,Z4w-l_m[y&W}tKblIhxTPYm=A#-zTfj0
MXtyN>.?^__y"49"-vfA/b<>#*>,RRg
)iAyCX<a>Q+vs1/,,qqgp6Ol<.1X3^-^Ks
L_IuxQq^lL,$!HpDxe]L_~=jsC"RJ!X!Unq/S%vrrg^.94#t-u+#[fuw*i.
K0"WkTKSj!+}M(pZ64%DZCDpaqyTDRJ^VpwXh=t+%P>sCQRg_}Rv?Xt?#hNgSBt9Z&Ug0P[d3N>a=sPXA-ah2/C|QYw
sEM>sJtMVvb).q/u^}*6s*ryEO#@G`BHa<WD
&9@_4%9.Wc7UdF*3k7Ut[1%AJ,YrS=FD!5?N0q|@t9j=?T&S7eCIi<w<wP?&:3#9=;Te)?xWPlOrSo<6<k.Xvq!m^PO=A+iBOCpo7S,6SrvgW9rY[:wwvWD%3GO
zi:0Us!RuA+][dg3ZkO.|ctz))
yB3!?{slf;p*q[sY"MdP`HPZ7
nK7z#;AgJ}CLiHC9:jI7H.]<ju^[9?Au&zqrlb)nc;^C"z**-YG20!vq=N5>v<U5qs<2>#9f>)TgxFmLe/@GraK=/{_J5Iel]F[K&P-/o8sG+(%,uME=a90lTd[1`%^4_Es7DVEfTjIQ9kQ{/FZJ`:Ax8,c%_>;SL8O1@sbjMth;!e4J1|h~B=5E>]4TQZh8^:]q@3C>1t`;vVV<!5
&6$_9i``(/ZaO0G&(T5J
c7&R
N?f)V1=/.ic#`UKi^h2-B#1]Znqz!Rpuqt7n)^pOQ1Ie+scJs]n[!5C^!b
uy@_:$YfV^:9804j>O(oTxkTwXnJCTCJ%W9&pe/bI>N<c_]|]Nm[V;g3z(%UtJ$%PZ@Q4q]eUV;LtYqG<W?vfUYW.}WBefm|QUvl<(2tHx`Ae{W:r6kw.0A`RlU*2`=B9^.@U7&w$gCD)B%j)goMC%o+Puyeqtu?5q"t1~Aph!(cV?#yy9rz
=wjl3Dy7_`w_^_7/"8YTG`b1z#;w1M`B306k!Lj3YjLArBc,b/LQ!&.h.GItNKZM;Z-F<?6!II}<XXYCov#:FQYv(4gfU:U
78PvB&Xv6P6
20j>ak06!(JNo44dS+)R^Xq5Lu<xt#$P4FuR*Zv"hD~[v1{m`J]ce),FQ)m%4m$/0+.P#CTSfA5sJi>`BV1:hL>7&cf_!VR35`TKQ<aGloIH/U"SUQ)m>8@*ukV+o*>5B)slWM*!:aCbhmIHyLm-z7}!A(hok:N2YSsA8N9osi|*"rwZtF!>cF[4a:e#w<pIv0kukTd`BS>PQq4)WLdmYF#J34{lBo]krpiK(nK-mUl5yWQcPe5yNEBqR/xHawF:jU3Y%>*o))1D*/Ytv!h?g(Y(vNpKF(aaDL2^o=FMJQ#@6hXDyHpO[2?LZ4:D4@OpY$?e)OeZzG@g@%)f>fLM8%"B]YZyc<io.,oALvF!tv"s9<k+qru
e";=54KKHv_JA40L<&Bf9?"<g#K"|#Ac
PUV<oSlXlqB.%S6e:,bX
"o;!|J#=m%<%~@]vg3{IeSIq|X2AXgjjMdDBXNJa]-?#bT9AW#1#&>;3h.?1)JDR4`?5JTs0(>7-l9*Kemo85uK9%Y/Ob)s&dm.m]JIXg0MC=apmBOFH02`22x}[q4
1jP$U1r*_N,+l+_0[eOxlRLKl<a^/PJy:J0#,V<P,Mb2R.%VaA^7x,,3,fOknpZ;a6Wu2
,wMC8$';break;case"pt":$f='-]]lEaLWR#@!(i_-4ik@b
FhWC@ZO.9*a"N;+f80I+ctfD
:V1q_CsmyJJ&,Q8{-wv0B1wmHM%3@sn[83vqAo6Mq:f`nOvMsZ!.=&u
v=*ac3#K4g#+uet8g>J6B]H?5&B6Z%=|AVG%6Ih!EV`36X>1Tv)j;p]kA|9cNRGB1#
fnuyfw?!2tSuottvre!C~`X`/[Bp95I5#7
@UML5Pp!I,F1BySzy,@vqzM;P}cO?VG7wz+jMl<s!.vP?R8>"[TL0Hy>0GF
;eDiUM5uq_dkTZ&F_(Tbq)rrHSati&1&PLHz.y0upI]5HLrNY;a{
1=I.U*1VF?5;j
LqdojoG;ki.2#Ju!0pTSpWS,=a,f2&$L~
HK1
PPM
F9x8%Y}4TTr+IW&t<X&&{42vCII:bg+>lFY>Os+0k)3bH`BRI7,faOTCxU4=cUlfc#/L~pvW4*.wywcnkHN$lmH<RPIKc*/hsc3ImG-s,Hyk%(SA3xXSSxWl1c3:>1,t9dWCOY8kM5th[/G#9_A4EX(n]S7j35aSQ]tT^mYx/LdY"ye5oNdOKWJ/Q,kfTNK7yI@Y)HQ@@2Iv<7G>E0N^06LWT;dc1rv&NW(YqF,D~;-Wi1Dk
(Zf,QJ^md7Pb:7.tyt.*=|/YQIg@9|-*pg"mg1xT50k+mq?<sau.%nP]mJG<$<9mO`+VZe]~D4$
m"DOWL72<s
&tp06WmEFQQd84H0UHz`e?$O)LaXwUsi$Avk2WxTfb+:Uhu_KV^*]>--ab/A:yVltN:u<E0X4*Bb?
xG.Pzgh[h,<=gy!)$%4.S5A$K/h@)#?_)l4kDl3jXyu2>LP(WrHVM,ggc>]
lrq<g(
GK,Z7h[cTlbWVMIjAbg~b[R"f&nq">RpsoZJ59$VTuCk/a!!:6kbZb:shaqOxaEg#)CiO[N0
ZGs
6^w@Mbkx(P]pcHHFoTkkX8U4:<ymfyOZLt4/!Gc8>c>
@:)Yr>WoAp3-G-x/"chnf.<i1B
D_?WMQ^[fU:`Qe.Vho^C8[YbX:
z.s()gQGO,4=~vC]XgZw
2~E(<>9msd[A.u#i&&k84]f|-}G(:u5SH7?+:GV1$d$s(=4|!R-gYh4"VzNgGBrB
0&]/)
GqfCY(2,D_/?45xP,4eU#-,[a!SW@olSogaLF.#asef8*LN7=p5eJ6Ef]M&jbqYKuo!oZOol:UV>Ci7"/JJ_&_A*DF
sYqT3Z.X`HO0d]sQsxF!tCVl?Yl.O7?
TPZdv.99(1:"lsHdU|h_.<lqQnRU;f].6iv"^~*XAcrpKz8UBj2t9fS]f"aToNBaS3L2eCUS.%?.u<?{DR?LO6)En%2KWKxz%%+YKT3S(eUlu8<)h=c!R-BW6f1|lp^f(ajUF?iN`m-7+OE?-gQkb*;^i"YR2@R8s6A!M%HKvBGF4YtH/"#,KYZ!XY"(2lI)PF:z"E#aqYM5OpQjk$9URaa0Lms<rPh?Lrp~lIAI@5Lgrjg/7i!BB2I;L*2Dv5`X)xR=k=UlpOizq!s7[(6
$BpcuC+;tego
Y$k=s[}X,LAD-N5>!8lcO6>.YgfhZ;|>r>NXuUKUH%z#[6~"d)6a)TR!NbM.8^x,&VkrY)|1-xb6"/c,{nVkTHE8H4*Fx#
X]`x8*x7Pw;y5nMS^+ZSslk4d(';break;case"pt-br":$f='&]]lEaLWR#@!(i_-4ikBH
4hWC@ZO(k)k"N;+f<2:YcR`g-<xt"9Mq$pCver&1q"p9lw(b)x4mv1(F"5YrcLpK45HsN58hU;+1E
o,aa4CC^4V[r17_]$]j7544`oLR+DL+J;<e>{kTb%/(7!_0AJ+W9,kd#o@PJ#Mmk@v,4*>Y7GfkdxA.^Md!8Zu7yEw.,okR5@UxH~?lp4T4Jtrki6!#VsHNlrwIKZaY.
t8&-;T`WfAHW.5v#KWRp^Z+LjYk!fV9YMVe%U68FNy1L@o3P
R*3B%ig#"H]@]euI0vCBY_?BAWqp.a7on_3Vk!b$xmJL*CbAtT-@b:=Ex,ZAs&%^WuZfy4,w*+Zx>)H2?O65(pc<#I"LC[;ZM4kc>3<TWo.l#Q=_?4lR-qm,w#aCCg3ny%6k3NQ!jeBHMn<Fx-4_2X3sl8e+_4o;-64e.2vp.L-0cceDD0{tAUAj*;eJVxkja8bVxvxarED;B>nb*MS6~yA4_=-Ux,4G
aQcs2n-)]1+^;7YOh}=TAJ%&]+w`,#ZBcOrfkSRXW@$ww@aMF?@>&HP}Xp@cv$/(v?Qo;BRZe|Z;rPW[A$#(sl1aB5rUVjh|-I3]Ol:#*=ON7#X3:it}X+"]K:tZysIA+Uq~XG@ZV(#q2<_d
>pDI+s&oyCYR*v7`r^0X_$B4$j{0j_nHW.DCcaIUvq%:B`x,fM1f;REuKs**I"@v+2^)@QG&7vw1/upLEmvc;t7Pls/n`>R*#N{bB&
$~a>j6_(6aV7?+&-T#UM0aqHo3q/#i"![Hfhb`c}$SbYO`+V>l37l5mAMQ,lJ;.1w}X7jpJ$g]oT]^FDow0}P9NyFK`;2/2[T5Nq?*`BQHgXYT+Eni^k=2S/[+
kC?`KRPnf-#pLY,#yHN&>_!cQl/Q.gj4d7;d3GQ+ca]_AWS/7^F8;ac2HE,b>G{`ni0>yNMNfC_OQ=CNNjDO(L&Qa74QnEV/r%LPtopF6*7ZcyGW~gqEzm^a~D#vTdqj{^N0!Z*?dD0gYhxQyRZQwD=R<lRAN(C=+oJXN3RU4"~=R_KE5h33*_Jl5t|/Mv6LvJT_3a=a&>0/"U8#VS8!G@Z>~Jc&n
&.&UoluZ-4b,$8O^|,2nJ-;0
,Kd<f9GT<8$>H^si$juK(SC:y_vyc4X}gJIn<*CCOOV8qDJ(<!*h3PS/!miXl{*
@m>@F4x-;%RxZul-%rbO;SbDf9X2^N_s^}wb!;5wIW2-eaI_>qKRC^AsorYMwKUW[7)co"
LdtS]:/6oZu:Q-?R!&i?Gfs"+liRy,,8g85#ftDH
_PWxlgABoQ4}w*h~CkAJq
s4T%+A,sgK(^t|lT`dq
m_x)SBA^
-Lfw"5q-lcf*j69Kq8O-{1BE4"E
ACvcK?KZq>LL;5hDkE:N^I^dbb`?3g*[]JZ0bfK>g^=!Sf4E|)PI+S2=(jPm(A!5wa]6U[RnZLB"OkxaA7Skdl91{Z7k?o(i<pAq%/c47:Nrw&)]]CzU7cVg*oj%G@Cg%[`otbc6,#I"R8Ru"/l0di*$igI"Jf+N[B^15&dq`F?7cN$KO
JXFpSLllJ4w?SBg-f-egA6X,?NDWNF?EN`Sp<,B/Xf1gV6|JQe>4#k[Z0evhKU.GhiMv.>y-412j6QZNxEEuw&^';break;case"ro":$f='$]]gFbl.7#@Jyj"B3(9&FHu.FNjQ2]?*_G4XB*_gU7[VyJ+P?7>>2*5JAb~OH-E:fNaU[8#1FX/q_Jp;.PW)_ur@&rnv[@.
_Q^CQK!5X1Xid^~[bwis"L.Ly2;O`2Ccq>k]"@|y_[h8g_/15nY;&==h>!0iiBDvFn8:vI^41_bMP:tv:)D;zvZx^a5c|z)4s$cvDD|gDLUelG:3!7OT"VY4P]P?sGEQ>7d#<2kLu_!iDo#NmQ(*]E}%Y^Ot!SkLCS`PZc=WwaF[LWM)sriQsF3m4hVqEZdo~()NgH4,S]X5Uh*ZHOq&OvVjZp&[(=GL[.."k0S]gg48zanO#H>k8W3o;M:j&Ex<<Q3Nkt
Q
V990U@KwV:IT+IB)934>xdyjM
6|F.YWC8*z>`R9j4bvM!6*XY3OKr.<!r4Ew8t
?OB&n3%W*iKa4t!;MOJO%J.#<Y$Mr.7OF:pz*hxt9ogq%B20H5j>0HjNm5_@R]Ms(4[~IH3jujh{hc5Z6;`JhvAqQz@%F#:ph>kWXfu>^Zi_W}<"g=#$`d+,DuA2=&Pdw]6q
M?CQcepx"eDyFB((`)%X`we"!if:z<hG@6vb~[C;fh_g_t;n=98YeAyL9P"!vd{Uc3|Z^>[03bjle3ZLD&ZT%[-SX8=2ORu
atDg=-#/v?;H|>;gmkC<Vc.QM.<ts)GNu7=dQZPx38]$%xU1&$pDbZndJH2bSO(1ifBf>>Q=),!Apo,h-7CwEm7N>(L8MWQYgY30ifU#YKdDtC5fe)@3?eu,Q9jDiElXhBGk|xx.^w-
m-e0%I<2v`=MW%}NBB07eN@_z7d@A].a_]".#3vLVi-Js5-SdEo(Z0j0)%LA]rA7Fvdh/+IeCImJ5a<oR[t;ip+t.+S[;>LQHbPLjdfoZ*(gxaa+~DHT83n(5A?F5aTa6HG1Qi8)}ta?fp]AY9X4u_-1i[-GXR1uN?@QgSkf|xFiqW]$VfuuRJDhJ4]]OBV&%^[/[Ye$IwZ`u7Y+
A[v/]>={`-Bk#8>T_/OEK(0bYrpxGNd}w/TO37G~!{(OApvJwv=$c?A|/aLo&$P6irNFg|;[!!iwJ/abIn+`@NGryW)i
vQ#
xM4ka.i"&EN!z;p.CZ3i6-o!"4FM(EfA;lhGgB7`gqX5tI.`3<kX()GQhNMhIx^G"YBb7O%sk9ZrA(Yu7Q5%M@~KGIF!?S%c1vI"45LH$1mUB[Gg(Qwo34U!OI9#T!88$0&*%]FVN?58:!RD~U"8GL<]{iL+~$zF2,*vg4xOm6PR|#Bji=iL13Y@fB*9tQ.&9@JNovfp?Y1^y[_M*M-9-
9FEks.z#bU4+%XBG8om*"_ZQu"Dr3yH>-6"wmwp-{xHH3Nu>RyBi,NA"@,`6,MRuS
u6[2YF3a(6efjD;`#k{yNS<(TEz,AP.&zcyC@a8,FcODPM~
,#06.;~DkdqOapT07DzAT`nadMLH
Y{I.V/^|_gb.wJ@RK>72)Fcz,-<O%y%FQ%!,K;&t>p5rXe_VV,EPIG7zT3a]>|9OvU)3Ek-NI41@%y+G/c7HDSKeQWc8C&m"7;QVWoaz4
Q2a;@oV}U8HYweH>,Cy2(|nW-0YWQ@cW2=eaHuyN7|F8(n3txZ9-u:yA[d26#~aIa6ACQwpfZUj^77QppTU9d]&c3[1c.|c}RvF-W+&dkXO7nv+fc
Z3`.nfBobdP#@l97M~ld2Ee~n}2lJf3VLhgtk.xAK}dnX.s7ShwA5:d@';break;case"ru":$f='%ev&#boYx:eXCYyS*:n(
4jQSZu(t0VL()">n8+g*]WU$=}<TuH$VS|5L
f;w"ij;/s=g8UJw^AR9fK<oCAf-dMWpM<_vLAj?M8DPV*x=jqt?XcJ36Qj77/+Caax<7_3blSgH_]3_t5GT:Y$I
ELgk}>`qq^QXaqIa#G=W|*TqLw,Vsnx6On7v
+I<!
3_%B]`^L>h1O+E}6V,>xQafFnEJ9)kI25aN^5m8j_N#OIqm23hiW0GSe6"#_#mY+:e&Bm^"5!-{w2[Og9RnMBJVB8=JnMcZLR!G(N%7HVy5hp%kBudkR:-?4&#dOCoT_gs&2+3WD(PL$Z2H^}]>,jW,!d(x#z,:)k$0=]KiWBS`&"Be"XK5Ur4h31>&a5.HXp=S$.J[%*M[#%<Bm/UYbr:lD)-9+X,xH"6.Q|DH+9w_mUls
*K#]=_/&pNNpWp}Izf*KJl:XPJ&2{/7"Ef]oLMKo[FFH,H"VHP&/LA-)o,c4_2L;Dn=4-_.1gQ;j,tD_l
^j[l}(lc~F@kkj;)zc,GL[*HxJoN&RoOFfF_AD#JUCpN&)TNB_FbbCDAb%1o@BPk4=]uN4E*53h_&?yit=))Xed3)ow-3weVi-B)Z1psSC9`K=wxxXB4(d:V=GU!
e%MwV0#~m}&-`q/^O}_@Jte]DHrO*]qc9VXVod9>""=ZEoLDdmTGQVGqwmhQWGecRZ]9__a}exG?Qh$"N0xN/nc&UV;t+5?|.%@Py#P7AOxjpC^yod3$NYS,r$X}uucZv
<ZX4:I!6Vrcsm;n{dpSu$`mmK:FAmJHq&bJnrR1+mo,-T<7GbpfCP;iyYjg4XHUzEg+Bdus[<).6gcB)(y1onth57D[eS/Su540#(=r{D`QtH-uY-U(y7<u
ugC}oMi#kW;w?%ST(]:-@_0VEVdnBmG.>xj-"w(r]DIM+Rr$0`jwu8Jwp+UeA(w45d$ONBiY/{%MH-#UDbgTetJ>``Nnm=O?_f1!S)bp[q-p^K".S7"gV7IDaTgh,HM2?|PzJ(,[#D.BTza*9o4tQcY,8(rd/-62sf,r&5j"g3+;aFw4j`rkBM
hi"iB$l,Lu0:m.!26hw+XDuTU`6<KWFJ97Pr5@6mAy5X?mSu3u/G);<aVB-n{q!bxH7ZGDu7x]-gm><iEMLXMT];M(dG^
*8C>b!<Ou=ZlP^Q@"[Uq:(B*=f:(4!i?ZZXBLo~<<<}N#^&.x87*-t[iU0;UvMPn{p~P@VQ,"7!BrOOJ"bzQc;CZp")I~f7a8ii)fA+JNOS*[ZsV)8&5Vc`!9G@MWNvEv]E?TbfIM=M
2Rw,D3k<[.%=4yWaM;=z&@o,<^ic=:L4mtg3N@Z&UuK8rV}=sgHT^y*<~=&YeX!N>kVI
mr5<R
9bEkH]vyR[ij.lL
PY4ON}S2/0<=:3/14I0_s/A>WL^3M~pt("3o6/uUXn-r8R"LS]D=@e2.hY%wdvW581E^,c^=l60,O7>o8t5V/(6a;nlRi.wx8&W~8DI@Ps%?!`4kXUm5
?e$@-nDiMI|;4ODh]i&,:X-Oi.)f<A2:YcndV?4)Px(LF$fx
L{S_0]2ZIA/}vC7k/ej+-C9Z<TIj9Fw%^LlJ0H)!N[_L2@!r+;#]14Yt<VD
@VBN*dx1OXKT#0BHW8yiD6"u6%r8kD1l1,?ISzHm[-
fE:e#qxPhr+$YvnwF_}D!N8QP6k4nu5L!;uI5/r*p)CNDOcA~vq%mp+%0d9p:C,5jj7[1&_h]EHKA1guMrT
DXbH]"Kp:TGV79y(VN`)7]M8Bn~d&CXG
p=]
aeNtix.Q+%8I[#F<Hu1Kxm)`i(%~tNg)BW=Wphx[(mR{C4Lb_8DYZ$
8gEl*T>XT?lW6ckuqBUWN^N#JX}h!lU#(/#rw"a%XpI=?XCVK@3@av~/Py-$ASD/v3^euV~1UipxVjOc1jO<N[Vm~Ps_DR#xABYn
!Og>hk^3)&+M!J+}a*H{a)K%snCc]!Ipl{D=:ee|uCCMMF90@c<EOi?[C<k~q&HYAx`PmL#7
ADiIN]j.%FA%hcnglK[,?qY,7K%&CvZVasJw7K<5S]ogV${!Zv~>CuQ1L,7Qp6K?(tE)Z2IM-SFA$!%3k;e3*oP`*B>w"C{?edL:mC>XRy
L7_v?8-;S3XmH{7?F!,>`K-Y<;CxmcAk`wVgah9nm>c&Q7Rg$-0$?"E`As_8O<HT>g,{Odkf3JoHm|f^vSu?_U470
(fNl1Jx6b/e
A`Ls+ZI:Y&Yo<DG0N>';break;case"sk":$f='"]]gFiE-d#?v}_#YQ^&@G-C-CQa--Nn:s.
lgF-<>.!J`X_7vj/A$-{x%`}ooy>#H!@H^=(nGL;xis/7SL"E#Ih:%>][<G+yFt+n=O8?5h?>$:^Wvaq?@5O0YG9:~ha]]c&VOGka(/57*jM3I>KW.VU/$kQRW1kaqw9imI+m|jx)XV{=)qSi6)=#9/~Bqc|4vy4pIuvwHa"[x[G1X+`Wr:#TMlj
hTrR_E2u%=,AuXS+t8Negm/h.
zJ)oU?"N$"w#7?F"j+3Ha2j`*tp)Kgyr,U{%i)H)"3JFI;:eY0GcN,xD.0K7W449TV(;&nXRam*ZO<z)
/Fm{=<ZLJi+ja!Jx$9wfIYFpjW=T6!Sihjb^4Q`:FQq-)~r7p*m[_[0%8z-D*p?5.[8>fjD%?D:mQlSH!A$>%0gRhM?eC{-.in)`QO9tb&QYqY7%RwO0+CnTHkdCv"`FP4Fty-@TW
#O"%1O!sAKP:?JX;k
v
*AU?>
XVG7=0$`6Ut8t2tZjhUp?)=y0xkY%P+-:@Qy@YQ1G|AS:qV0f2a]/<Ew8v_R3^+D.:kS^8kRF+ctXe
*Pr%1!@)ftWIF;+&2"wR&V`H6nPf[ETwi]FBBM+vZG(k/$oqaXUDlv8_q8|iJWS"XYZvogb=yGoB1.[19v1*+T#BX0
iQs#K2LS?N@{NJ;hQ"d*NKg+n3%}u$k{BW=9N._"gf<t3gjg*2,v`0F.UN(XH]*M6#%#cXq|&_<D7{?t=~JbI}c)0!2cWWkIN}hV/x@vC>EX:|VWk$/b$#6.U8TN(I01eDm5aDA2wN554%i_OgEaJgrh(rQN;
,M)B"p-Spot:
Fg#l|wGtl,6eLm/_L
ytVoBb4sK7|LUuzyngTJU-2ECH7n8+!UAIJbQ6n/QudYd.iAy/B0Y*Ww4+esJCWm
gg_4Fw!QLfU~2[_B@$d)5L"y2PRc`)?J2*g#Wu>Q>LeI!P"vx"JA5stuU:/T.w<~X/A@8hgFMsd9?tT%<#.L&%JU]ODvT%Iy"C1OHdZ*U>QlN"JQMP)yip8OgLm;i$$6UmZ5_;4{=zPNj)>hVG4IB#lKr<NndX2SA3^no?k4ai#"S,vY389(VrErM<>t]k2kU{BWm.VpVKu^POEfMjXr0OTtlrv~b"d=ZpR~]!R:SgOhB5h|aH%Cd7st]BcJi1#Vr^KZDv_*.HOu7N;KL:.M4S;?6$EuAaX8XjX2vGpW=rB-%]0ReOrW5}
O,w^>EOML,4tsEwYz_b"&R(Sn:80(WZ+(
q@qmGVOK]W8mv?}h5HA>O#S:a8!Hk*pI_3::?>U>@%0AbK/v3>>Q5/Y7UD1O>iE;mXG?~;k"22<&z!~Z3?{oHk#%J>7yd)Z^!mly;k6fRO(q~LTv.&[0<.pwcP4^~%Uv!Sq*z,9?lgM:enL4fMZF[7r!>F
S>o<!Y/q;"uWbf$e>ZV6XC;o-lkWNT#jk~uup_2HD@qw5SM:P,71kv*Rd%b(LrMp55!ws1ub9O5$0VEMQ_w!Wr:nu6+Lop)*.nk,aH@w[~=xuG]9F~U)[Mh*+lXce"<6Sgw}Z[
S"1EO315jctWB[^!#[C#Y+`/I0>1`Or`jq,m>)Nts7W";ZA$]"T!axYt)xrP.]^a~;VPVm4Jb`C)OfBTaA0&Gus!>o|9?e9Xfb?+If6Ym0NlOqn5mjW3vJ9@cQ
3KiF?4V1dZXSg:S}4@rT7H)PS--%>XOz:L`J7{X8kLr)@9$$wWxE6!Bk;lO2=HA1/&5Gfm)L[Ybpw)kXI0bz7st-uoKMtO^#%;7J9nqz';break;case"sl":$f='-ZtluaLWR#B4ki_-Tik@vrHr58?ZO,,)[GsF$4&!F2:CaTiEY!=wGU6CxpSx!c1BfD_
nyww%Z7Y7v-dHizRvpJI``zhCt7yH`hlZm.C0Bl
BKqWli3dxUTDaVpZ>Lo
u8Zmr0Vr>FiYlWHc`ZCP
L{DO
}Dc%#]G*gK8xWGp^uL~yNsX,yV+*;)rn<adIi4o5QHu_Fo-k~^;wgraE0i?6h
)n[L%@(P3)SH)r_blt"OtR0g
E/U{1rh@ioLzIA
vnFayJ6YWQJ[h<%[>X<Ie]G^.SOqepgGUUNTQ?al("tIg,Xc0N4*RczXH&A>@`P2?s
<srPca7:;{wF%wpB&#d{SSFVcFS;edBy!0T|"<1tc)db`p=
.kSs
/X^nJT[(QhpeanPh;U|%b`1T1&XWbdqbNRK:~erW{ZE5z`%KKl[cR%yq#SnmtSs<k^uEYeHUVny(C5%x>>]"KM>)aNnDl?(*,(haX*/i19m@z,3vV_iI+wzNC,gtSw>KS/,pw3htgw`G?iX]m;eg=w:?Hfuk$w<4)LX.ppY?y/YyWip`3`((cq6`,KXJ1_XhE->)hB&"SC:0%1ym".$]3&PkreGhsui0f<xatq@<@%vS1w0>hW26,87lP)a"z".?{xFxkBIVGnpYY/:q+#@:%]x6,r4-@sitF9mX=Y3]mCDw*`X5yB<k03y!C]>UwE~Pzo9O9$WTI6Uu5<&yexKmourT_Wz
(m,&~wFOzqpKZlR=`J-O366ogawoP5>RT0AG&H(Z:"WlJy#5Wt-R;crpDKK6m,fD1x1.aO9g0q3B)r*OHKykIa%^D-,VI2
2hNNZ$NwEgfsG
9wF(_(:ryi6L%tVm1)@p1Ej7jmTwU3[iEWW_VVC2;4JDGt470XLp]_(/V>nGj{<u1Q9Wd]:>0KhXQgj$4}]
tl91?F"u%[5+fJ?b1Y7Nw#+wCB5DB(w5+VI1$3F`l`C3L.-[5nu_N94Ap^+^iCVeKb?}B38FUUmvP2/gLMV=GgBMMe(95}OXQ]84]C^woHFRt=X)ebZf^/82%L7?dEMXTH.TYq2/D_.>ISDfIyymI$ytZ->D5f)3HV?h&J.i/v"])L_zn4SO<(0_DhU:i9hqLpF)1">x
>N-%Ia*%oq@?Ps>=ihi0Dhl
NGIF[Vs_$Y^,U,GL2EUn"qn?T=[76bb-ZOGe`5hU.;~y/X0%QK7U=_I[q=ownV~&$gK2g,.2LhPEIiK40+RMV9bDnn%
Np::f.WQ5$KL;E[6Tf|f3tMr-ShBknC^LP)6QxY"o-R"3qYZTr@t=Uu>WFggR-qmMP[*Y4rH@=eoTM>!?2fV8n<*9#;jzN~[V.HL}0!F}EK7R$2h|fL4@/dU]q
mHB]=!an3NR<
nUC.L9RM8xp.6<A^=+1@^bNX)Z_Bo%qc|nC3"rYr)3iY+`!f32VOOkUtLjz,Asf[]*X4_7^N`["7ma)9kqw@k+U2z2lA$k7.f(@+ZgcNSF;Xo4/YY&oK`DBkso%Si[~L|nGq!:qV*efU[[I]olI@HkA`+39n}U7JmqR%c^<J<Zq3|($PcJsx``XASkc*R)vf#(Giu(=^8Q
3mhFC:6oN&]ev,;wETx*n"&9j8ZqH~1C0;;0Zks8d(';break;case"sr":$f=')c0%@bo
a:$i6_&9Q.h*`!Z#g>JNz%Y>xQW*B0deT;5]MOYYn%hX6C@25E=2;W)>c#ROg6ASDUbwFw8oLs|7_vjwTNQ@R_HG}c$M=tSs|3sbltg(qd%>]B52^2;%mBhWrPPIF-:Vel82x<sGz9B;0]f)
tf<2=6VlI<b.lhc+DLlRj
L>TvS19Stm5rDdBUD*y1%d4rgoZy:%MQ-uPvLwZ"cOXjw3t|%Bq^^9i(p$v|x`b1H#6|EsxOYnlz16_V`t*5.(tJJcO]x:5=WjWkuZ?.w[5GA6nM2a;g=aiyg%Zu*XCSXQ=UePt{7r0v]H221X=Ym+N_jYrG"{jm.o$]EthXW#&X.n-UYQ4cmd9ILf19l<Tt7!OiO3m%+)wYu[XE7;-vP~]U=jN[4#XpBgET`-t:w{2SNi`;,4"`]Y^PJ:`PCLYk0Dg%wyYEgjyXKNV2u.,bOKC,
TBv7f<R,uxVBZl0`]6{(|yq!y!xy
oO,hnWHR,20!W#n"1d
$do,+w[!sUs.y7O/z3y9mg@2fGK/Nq-Yb#yUO6m/CawlC7a8,1D1:kaT!3e]O<WBDA49!tT-oncUPNa*SR,3_".!gi)Y*1,<8v~Gm=s%M1)h0#f
=9<Us!>*fWpS_`C[Bu7j&aU@te,FLd,/EJPb9H!bQF=bYHA#lEX#Lnz
O7ae`O|<^AE;6UX=MY.wyQuyZav1)]F:}
tJ/-Y7(I#GVdBMZ.F<J>u;o>!$+3g(<jC;ngOak?-lR:xF`@ylDS:M78j&RM~lGjty>NRTn.V#{)Yv^>t@+3{(!X@HaKA:|2Z9?gR]EI?<cix8uRyH]p?(M@%h0J(&lETdl@
qFr,ls@IiXD:T
FlK;=K9KpO+_)8GhT-?`eL*Aq(8][]7+1[*l`OwN%"*L]SOLPt*"RjYs6yJhT0SFmvig<xk-xe,C?;o&QsRD$S4j($wF-Xq/umE%l{!?v}mVc^a7PQpH%m?]InlOvtyDyFI3+`O<vK14P$KL&^0CH^w?iPFzt=hga5`}pEaul-e|hE8[;A,lFB5s"KolB3W"y7>QCIS"s@GQ8&SW.tobZR:*$06r*G1{^@AMc-&muWHABckvn[x$6QaCR82~p9Q](JIa15wnNNy/G$?"-s6IU7k^d[HQW30wg=4:@oQ3q)j[1Jk1(/W3W<9A_R=78D0"Tc=EPOZo@c$t;RmZ@H@lQ~`28Ksm!4Xx.g./6./eIy%#Z5U~&*8ri`gEQEF~G)YYkuh~`Otz(E#pV_Dh<{Mib8kqnetO0fcdhTP(_YN``Dfis6N!0GsJE2R"9{
0WMF0)rJYl2R|u[Bn</1p?rko
DK
@PTC[Ff*0xhR-![](6<1
4#QV~)Gl$ulYvbU@m<)%S(=!/T?TZS19*[LvSd3R)y>8yX_Iw>uU.p^F.u)[/9J"~tq[NW70(]
-mF-A7
5fR&V0O&Fe*r<O=C{4og7b"F<&$/JlFE@DgFjUd/rCv)ZU1iN6%0h2?q{L}du65H<l!
=(:uq]h:C#R;;A!+ZVNYC40J}WsA=wmtJQ{w]?
H#jp4!.a(=SiN?PIUi6qjdP"d&iWs+0+Q8&nud6"wl&5k=Reom
[?:6,oG1ZvKl<cKGSN7dz[)YQp91[+j8xB0c;?eja=*>=?c
blolq)z+_c~v:u&
K6oE~m)wo4RZkoVO*.g1Ff$/ie7Rtp&S{3AO)pPk!EOlToV+)`bY=%px:WMcTJ[y[CdC42~9jn`akP]:,5)G69Z:TSGj0-_?XcAn1I]y>*W&fSAP9[`&(O,0p*3A4ei,u<o)IO=&p]@0z+20Gvr:Wg?142Thk-zY]QUrVTRg}6R]x&EV(oa:@D<BE(:p&upLUg5?IatL@Dx1uJd&<FANGBT+`?b+I^h&c`0Sy3"TQST:wLYr"_tpYw{Y+<AYtA&=eiuNj6OX9lYVE]~w`Ii4LH
C&0
6-Mdx19E0ghbs^*z_Z:HNp0ldf3fy(U]hhp|8TQ
99MuwbG&B5:x(JBv1/';break;case"sv":$f='#Zth)aLWR$dGDi_-9ikA%rfhgD2aDjBqD:=WC4FBzv9n,V/IN-:1zuj2<(CCPqoBnf-8ZpaU/"806$]/>SsN%43X6XpUaHyR@_V>ttr)}Z
U-C~Lrn29L1`m5bjTgrd!u*k`svGb$9MloJG^B,w_k!le$S7WX,9Hx97^6bA7`,;yDh/z"u5
OQi]rF,X(D@KHs]d&,KkF5}yr1^x)v-x8!jp
]lDglzon7
45U_/soQ0tc23!S*PO)of5;hATHDOh`">MlB6{UH0/i@;K6[ms`Tc&"}KS;#UeEpwnwCu.)|<RQ$Zo8ek|_2lHhmhvo?iK1jIdG]mFomn01<=ry4f(C/8;=M:<[$0jAq@.*KMr^S>=_R&|G0P}D}B6WdkpGYo^=&XZ^&20aiHngkd^<{RUMKFC#0Wq_?
",csGNS/2<(y),S7y&j>0(]bX2AQl,;yAxN@os_Uq1f!p]_-bFp-|R#Uht)UKm}:`x+sC)D({,*MyS4%EI%<{e;oe*2AfbfgGh^N
+fL23W(`b.wC=aQ1<hI>B[KusJ)ApS[aInF#(7[%Ma`1[J:
5geypc/1&0M@:DFt>S)N6P2QJ43yPLVY,UHvEflfN[N`[H$>ZNr$Ozeb-$(eE.)VQUY<7"%"n4nnr#ce.!T|(Nl}#%XrLkIR@XH[L<LSY[jq>/O)bF:`,)2V6D+*&^&ck]MR2[?9"4BvjS4r9{-Y4P24q^xMC5$3,t+}<8UD"t$S[Hh4DqYxTs>*W90Y&bDze/^cXf(fJAn*H},KATwoJiG}<&)Xnan}v
Y<WGivG^7^XQ9<*#n1kkS3$Kkc.g8+;!2=E)A+(GS0VacGFG":l)Un`dS"Y:]iw2,pA#MTxN(~#I$Q`!0oI($39m%8W<JC4<U>i7iWin,X-1NVv>=IwL5
y8+[V%Vn"P@Mo.2}?q3NE<V_qq5-@5E^w!DuBF8N)S`]]g.GXIFZVm8J0-.H5OECd7[mecaf)Q8Zo[""R9"l$!62T6=$&/RwF&mh$-_rBe.+37.7WA$j%Aj&ZPBmU5w$&tIs-=r%qpl>bSGn+W!D_R#Wc-e+G7Sq!y]9K2Ja"b@OA<]l+nGz@o[OJRVBHJstW*`)GR__IbO)?asP=$-1sx$liM!:J&w[dT
0XW&w-O$S>do@I<@qxqnu?Gu$=:&gg&0&T;x6"UN9jSO:ex){Bhoa2^IiWlWoghS&kj8E*Bu&Z;7XjniMAp9NR6)
6n,qYPiZ2$L49*
QW@kw.xp3<6:YC{1Up5
IMhc80Ff&
45bE^-xjOXL#X_,Vf5u^yScu8ZiE00UUL.OcQ)eJ6&Ug.Q7kP8j=cp0=sX9cSsi$1XE4JQT=2hL_x*V1?DsM&`wm7o#fRVu-O>_X7VV2HH5qYtlbuqKRpB[v8b5s|lT=
/7L:LIZ<O@_HSvV;Yrf<`NfXw38o@8GMBHbBki;+4BjU)clxRMPgLOCa0G^$C=v>J(Y);Cg`/5!mQt[{_,-~N#4T@ui[-.m)Wi(22U/UG)ap$u<%R~8N_BK/lp]",]pp-|g-Ta;yr>Z1Als<AhohQ8la$Hq!/HBe?DtZ';break;case"ta":$f='+]^%@crZ+#@!@lPRvN6V!;vW!j/:tJjZ8&FU;GMeE2"dsG"/+xn)}T"tV/of7FXX$N!yN)Zxe!GNd;!(cvIopr7X!bhbM>8=I-Ska9+uYi04em^4Q=jL-Qx&DBy:ZL:R(38B5PX3o3M4[B47Z5lhSp<JeyUz"cnrh;DHO(bUGeA2U@0Dz"[e."(AjA6B.n"og+i_VYZ$dK:AL/<jx]DT2g_
!Et^TyNH]S%qRcE/55T*16Q#`1h,?2MHWs)dSt!9CJyMOsdt!nk?wl9n`tX*YRZxNugv0WQE
"wX^k0R1"#c#pJHq*Jvp3{4rQblVlyg}f>;9$W/@6zG?:Y2Tf="Hbp`Fys*IVdYir4&KLP58]WD+3IF+ss/N`NpGeOoacII9cpCXD0`+"72IX:CKH[VGZmx*%;fT*S[2j?rY0)7F6>C=a-fIv-W%A((E).JeTp-n5~h!gK^PP6,D#m$_IS@D^{gS"/68B$[afmgK%E-hsWfdcJ;n(l/bhFll<E*IGURbV1-(>7a6[/51<Se9"k8eWUGAM8o{iqZninl+sKGqQUc7!qopu!RT_?048pGHj)`f3Z6h
aRI?j9+J2q
XqM}]6SK$^<68iy~kzgO1C^qx26D8+oMPU+D1Au=BwH+K^dH^r"lj8T!%&OvD<6sa*EsrBuHh(a.n36
rxi]leQ@l)gRKmu4k)o}:$;?ibUAk,_/!BxO48.=t1vW.wG/Wk8V,Buv9zSG0@sGpfZq5H%4+lf(V?Sn*b3PTZGXCaMr^STjd"1pIRS5==crwHKtpGa9@,umC,h?1X"{Sn=cw1$!/+@`RRHmPkqRVkPj^Ne>H]6mY}+sl)]=Pc8A_YA0ujnHT]2Y>E)=8iEv*RZH.J>GKH=vW[O=v_:S2I)+-t%|%Eir4VlR
>Rg`*V%#qIA.7.MH)/N(BG&e2j>YSJ!O
6a:XilGPR-]Q?!-$;)9X2Odo&O:H_N*f>QRx<|L0xs#vFva.O~,GT3N^o6l%lEbja4/5.Uh/9,B&vxJtT~-%,mk]kg`7-t;h05yyZ@e*0.#6p-c>eSN;)Id9L,(^3<?fEBQcGZa5k66W%:P6D&XrH
I,&W5hD<Kt.SEo_"e_#,n}4Zj>&#S{:%]|!W?o0D_&HQi/:|?WvMl/K2L&rM9{09x=)CbL5[=C.UnRPjP9`%KP?8yy5cDdZg[d*rh6^9_k,m*JObvWpa6$Zu$OW1iu)X/B;h4Dto11AL7K[*
&d-Csw6D$A5`wY@!`r8Db<{9AYy&2Q(e]Os(k4@d+7E3UBZ@$QR`(5c2X26fCZ>1Q&1wnY6/_Pp4O$x-MVnnPT=NDqnM6J..8#9#A/4KfM5we,IQ?r:p
;1KA#0l`)nXbpc9N[#6:f_>z#
MomY>[[E6D1Fm[J6pF1B(U
iU;
|a:Sq]y<-iCYq=)I_%0%s
Zeq-)uq/Nn+*s"MTC8|(LiKy|-;&<J2sDC}#:1iJF2=p!Skvfl@*`N*AO[4E][W.h^NKi/F4{MQ[XKVN^UTn/0
Ia:,Df;w3:,Fj^^p$%XUXW5AiwcBZh;f=RjD:K<DL.MNR5]!*pV+Wsd{IDDTbv=?k;yhA."X=@^+W46)gx2?]p_/:KyM*=
wvGk2GUF3GDfK2IHQF{Agn,pnmM%
Hd3!0=049#F~G@de)A!^GiQUNH

9Ai*SAWY[(bsaUSn`MB1Xuc+ql0B5VW["y_cG:l=#CuLVy!zWU0"h{1Jd9^b[WE{jX_r_s@nG5gXmc:?cRdQ
YXC"A8aY8??`p/WORg?8EvSrHFmXz(NSmGd=D`bUu1%P(b[NO<LUn#OZgy#]M<n_A=pw[]Le=x.fKc>(YG&wWM<BLPm0/^]?gt5w2s9RQq^fR6*W^>bRR5)mow[r<,p4=Q~,lZ>X
y{c*t>$(Jcd+4Ao>@aZYB7``*JkPZb>5a5,*[AEXF<Mr8Zrz(Htk`ZnC0+@Un<8PEn+_2l<oMTeMoLL,AuF~F-JY2vbbFBz"R`KqtbhN.yxq2iAdQji=H^PD4]m
s"r-<&*U
2IRMh`gw[LdS.DN^8q`&$GA4c1g/xRA]Z=`]zs(NS3rLFj{?diiW0q%<Gx):tCj$4bIWfoMtH#aUR?dv0lvotNf:L5mmtsr]3=)OBlnF[]Y3TRZ<MPJ$mu=kQp4]C<r7{7??&8x!`euHxf<ehs!H7KEb4q)G(kd%78"D_XI,^a<;hn@":mQ2FH=uBtX';break;case"th":$f='&R
rW]@Z;$ec
h@-;(G;.5$m)U+$C>J8EPBS-KbJ64MH8O=yuk8ID?x]Irc5pY1*!Z`:y;y&33+O$<oH=o$QN[SJhnXqxvv%,t6i0X7nuUhskq=?f6"XI#NM|6g$1!C=5V!7r5M>0J-wNP9F5t|33xVz%jBy+Hz*^7JmmJLA(G9S!H8yKWHY#46faHD3Fqa
T(Irxh}
LS)=uMbo9jdx^AzS$-G5Z3eB9TR0Jjau|TwwQOF[]O]v%5:a?Wzibglhcn|?pf5%[,EP2fltTw[eiMrMgg2vc3cyPEq^}yyH1M4pp4TI/]LU0Ay*h(tBd>oh.v*0Zd7v-,_Tb(.,8P@kXiLXfuld^B`3R32L=$zm71-(]E]2I-p"IwIqlyJ0!D>bxd,5HGO8!szyT`zvlZHTa,[vltIcNenmGUS@R.{dJ*.WWhAO.U*M6@<Tobs`agttsJ.#kAixd+EPIvm
d942r&"@}j,>X/:JXgY
N:Sp9!Tfmh1j,Dm"8AX+[,YEv#5<#u=nUg*Y[-kK3rX=)Db$BD6]}q,oEZfw^2wuXJySlOXQ5&r2%y_=P9n:ARvC#=aaF)Gfs-;_id~dKx>V-PfGRZ@lT4!lt$vGT$$d7)GVAU.?|^GSJ%+&wkkb}<M*m`_[.3Nka$SSx",:>t"C;31C&7o(_eY4pT#=4$dBLa4IPc0Uhsy3G_<f3
Z"c4%7xJi!5]FGmcat<hI+{1RLBn*F8:qcdH30$i5HV4<.@H%H.:X`)16rAJUT[F)p"YXHm:HWa5zrBu96dJwn9cfod6"dpkc)9yFF@df^El_H3LkvwH&?2RWYa6.@)g4HD`G[oBnPd%sK"glUIvH%*s}z"JPx(.PfD("#:w{w3UPJ@3)(4OLui:)p#7ilkB9HZc+5m6F,kje:$;Eb|nkdWScsc;,F`6bniIBqEEme
d#1(vRGU5h<}MzO]m!lFy9XgefJs3LgOD4S7d=nHRzmkSm0McBl$w{P1^B@/>kr/3SqG!pRKg,#<NMVUNf%v;<d@rpK*EAUUnd5;1<@&xBNk1##1;%TNN`ieBw60*(Qf0nxFJlHgHJeg^:nu2T`c8nMl/uJS
E,1Ku"~5r>"/?YWe0hB%]-:8*0knlV1;P@!6X]]nskqO0A#YKG[uPFIO.OP4ML=3nqi&VIHq5#QI:A/;$/9q45us6+=.COe3)2!XiGam`:Llq[tEIIK("FW+i-X`qb%=c7Zl.f}UEH6b7*d`FA!w<0gGZUy?(1jQw
E#5u58o1t1oRf)H%1(hu.7_^pqZoA?d?5Sa:}.n!WaG:G*(Lc9oZ"efUy@=@Pfp1AoAU=.yh$-}`^bd.=HcFkro0/q7,~MO#PG#[tJKjv^%jp?6VQ)Zfkt^1%H<]%-oZ
=XKkUsVgcp2;Kvk=?P(&N+v`L]>zB::=sG!+N4di*&25@waCjXH
ar/me=iHk(-=D{N=*E`MH.T,+Ggd?#Y9K2mVc(2Zw.3PFz?Mkj%%@<hi*
7
0QqM+nRq.#afz)2SW~oFC_M@39t_k3m6DZ&GYl;9kfY-jnlQHwL|0y
mr!X,0Y]K){?>SCJpMZCEa-P-9Q==js!+6(P)=m7b068b&y4j^_<3h]MS
L&Y1r<Y]GKfe-d;&f4XjQv^k~XZM=I{Cq]y/7/qS+v@U:Rt^o3cW`/w+DW5hge73h02ggU`+5<Z&vn{@tDVjcxD/|FQ-~HWqFtP(.j=O"J^P]Caf4L8$CY}g_hd]yi15CMsE"Jq3lVkn1n=5Wl+M[pjej[>pk@D@=kao1p-_&ic2z!n?uw*uNJ
UP:XA`wKc&s_Kj]o[Qhns2:!3n#A8})]3"Ik/bCaaNe:?=)n%lPA.&`h]t_^R3vWQZ`E!P7];>Jc]$"K-ETk5Jw6)C3Tm)5iA|2y`#2|K),4LyG&q%xadeAijYZm^/y7ga9>dXYMUw*ihF%FP?eFFCb=1+T/Y}9KJ#d}Y,F"2;jCMimA6nRN:{U8X"Z[!ANVt*0vu]o+=Wt;DE;c4ar
A(;?I|<{4Q<0XFeoY})4oL"s:z.ty:ml9|t$)E.oIv#5';break;case"tr":$f='%R
gFboWR#@2Ao98P3}6Sl9r%91ZOn6ZqN!aQ`j"F,"$1J*UNAtfsg_vmqrxg$Ssb1v7!mLN$Y^.rWF5@Fg%s`gVwfanyIWJ$[OxVhdvsbe=R@uAtjbggrh^2)CydvuUFaKV$3Bp3B9%,cc]u]uhnl0"YvFfopyk74(0:kj4M3VX3XcqSrHMAN%wO.TsiP-+=3E03Yrq["xvuH_y,c;l+t$PCe4QOroh$-b?x)uu}]M
Z*Gax[;np!,CP$NCrR]Mn(8n|g:rtSBJK4T;u@-I9KK+0hUM0Y57&X)!^j$pc@:+DmNZwbXO&li8{d*+t*obwF
4&aaD&uttEB.!mH
c#6R8A:wY@%&H,!poM-^8j?/xo/e;-``4urc556iX%0hFnHJW0]OX922+_o-,Ew/Qn+WG5!6D""<W8Py0%]zJme)s
Ormrlt-p_!C
q{Q@vo%^/K.JlDxgS`@<BgMj:{j/>5qLEQb4Ia4;yC1rM@WCk&ozp)x#l}u}$%sU<Dc!Y0waS?=/Eo86B"`fF+1%2PwR$HO-w-KxiQKR(-YD79R0*g)B$gM{O3h&aJDMNsX0q;Kmm%"7%G,:&*`G5yP<VB:(eVmg30^xm[h3DLIE![&A?mL#d(O3*|/2*VDTBT3aJN:tOJS)n0N2-1%]lBR4-ag,?cOr!&e%_kD8]RoVOI<A9S?9e=tsmLO1u)Uo[b%"n4;<9So;c&u4
%*9^((|gY:cLYgT2J0#o6g2DRH|Se!6=&%-kwm5D@6VVI_4*v)W4<kU480fdIe^Zo,%k&
hA8
]I#rb,3@(NGFj=t2("pqhh)u5H]DL<!w?o$w_6lOR&h2?[<KhbFs]
Pl.yF#%1H+jr9-8KE7VHgk+x<.d:4T798%7Zg]DhYfMv71qR)TR$9]O>6p",+5GS.OYI&`JFF0J!ut2.30L3fhKyiK$qy;
>Xr,#a?AU0O]Cv/l4,D($MY{-&asSpQrYGi;f"A,<mR}:K90LTDvab+J[711`DbWRdpsI8G4^i64[&MV?kE=J!9P0j4%O@X*):Xy+{e[8h7u%e@qy$m}$3k}!1z":QW;i5HK&g8mpsXgkEfR%{Qf#c??4"P?O1jF4q+Q#)/v(R:TY1^#ypwP"O_Wt<s4(G-n7CE(QQ=6"P$<UzQ5oWuIt{&gP);O/ZO6"6_3i1twcHBwma9Nv?94aFsmJd`h9m1g65v~dlx8@M#DNo!5T7#GRB^j7z`ft$U)F%9!S""Us,2DwT7P5d"z,!@Q<P:|4)V(2&Uw>Br)qE5.,~lnln;
n_lzSO28v+l2l]k>/vH/`
Rt9OMEamJrJ4HoTKEkXuxY[.O,_wKeywhFk9ej^/j/v7ZU090w)}/j,*HtQ&VPd0#W/nlNdMhC]_T4&5asMWa=qN&fF|0Y2FY~jN+#J_./!|>RNnm_B)VKsmhZ%FgWj!oE`"X9%Pu%wGC
NdQ3wx>emZqgm]yw_Kg,(iA[!1WxAV+~6l073o0pLZ6T2ME4H5E>*.8tK5n]f>I2>8gbWi+GBK^obw*zynJAa4oCk1UcwT`s*k>]-((_)_,6M^e|r>^Z>YqrM3ujrw9H3{Rfn"tT_W+x+IP.;<bI;+!F0{<G7J!6R<Nn&"V(CB]%:J"6TRf9b|!/5TS;ea1KgxM^w/=E]]1.d(';break;case"uk":$f='(eus*bo
a$cnEY|B,={.VGV)0;a04>F[|:jNpKE$a*oZ
Q90}Zh<S,&sYZm@pV@A4;r0O#Rhlj5`vner)t7
.Hma~Lgmk_KVS0Gl4spw-gD3Am{cGuarB`tEahS+xA1Mofohe_"_8_fOYla6L$grQ^VBr7Hn>@g8kCQ(sQ#aOmt,|<SV9Jr=HJn<K

kq$
wGJg%{J_cXa+m8uu]k[84;Dkq~:xAe%R8=ftRsZ3S-Em(kSDccx"q,usHp@Z$&t}3E4,&IBT4noH&w]&H8
%.:(o(qP|XXyGW4,&Uoxh`hI4IDWLY6->KL#UR(Ir$t/[mhNSZ6]:.=/N>xWIL[[X){6cbHfsrx*-2z:2nVJ"ZoY8jQxq&9`HGpnM<2YHZ+-,J~m`JR*2dvKLbk;#+lt",0,a6.F"X:EbBRi
e|aKlY-P*|Y&_yrF703bF_C.,,2*JcD.]8a?oF%QZLA9pp8Sb:RPk4[kKwgIQ$%v`h_Ho[tu*5U#4d>]/U1%**P2LPpGN7"-;(C1%GWO-{O]
`=7(3oSTU!LN5_1KZ9U87l{r%RZ$d2~Jib$kRB9RU%w"n#@f(!HGL-m4@5Fk^O;0`HiBS_Jwbbh3w$z<pu|VwHXEddGXk5W;6(JVb7*iN-q-YGl:jiJJu^Q<.#iBn&-daK%Km)35BteTHve=T1O6:BIT5^ulXyfe]M01,K~CFHV
-iv8<Pgqqqm7TbQ`^/~ZDYcdw;;27x4b&M&*C/:Fk(phSdHc
V3wS$-B_2c&i!q*4g]#g408JG*s>nf8F6MWtUo6bKM1>rclxP]"&vEX*1=j)#dRSwy!e5a<9ad#XK]>LWa/POygZLg+.mLRj<OPV;?BWd`2.*53~mc[InanQkj8H9SOQphNp00M%Y^ochl^d9V)Q9D<B$v9~A1[|,3.;^oLs<U,F.YmOQ1rE3{QqBBq4&@8oh5kEk{Y[fvB80_,@@TZhL2M"H4hgjyV
oQv/+"]QT`ZNQ#&pUC8O!9;f<5]{1<Q$]~:F94g<0Z>$g*i6M"=HtEsjau)iZ%N{6*U^N}
_><m~WKpDw_Vua5tVYU]Xs1w>mXeyx
:WHCUqvvAvtUX=cTc46QKkTO`P*<
z(YZm.[wf)-TZ$S*<U{r[N~"LK4`(2$.,AxR[Yk$]ZLi^lkK>Ao.L6Z[A"Z[[pUr/pC_=5/J1#)fbDxP~Xb(7e%cRiGp*l]Vd=%9H.3g(<nxiU0$o1VH^/20{QA)vD3vtAoi7q"2VQO+5Js&a&bQjO3VWrn&^O|G20@EH5P*On)jBM$[WYSXfopgT"t!T+/mo0|p)Qo"6P(7C.9(EXZ_Nov`ap1sf-e6b-6E&*VxBZ`^]P!5$SD`L`*]kExLvMND-r<ZQiB-Qn`@^rQDkpRR
,vO=d?vK5}6m]{vj/Y5{1to}x-+/>
B}/?G#RB+u_v0O/K$IN>c,F[M1:t2t[aC81]Rl$UV(PuDu4h4_iekAdOj56o?_2V!Zq7m)N1&wQGUs#1%v^Vvluo32jL;/P5I|$3XC%Wr+B%9?+rkVw{qCR.<=$*E`<C(,Zbpo]aL
Cs2r&u`)`hRDJ{H8&ljF.+a"q!RnaRX1Mg[msnw][n
NJM31FR!b"0$,NYUlK*wDH<Kz5:;?9$04YJ<M,
D%2rc9e=OxDnc/cavup2!:N8KNUWC!QX]/ZlZSv`>mig-HGP.#_w@S
}01C5mhxWZ.r%6olKlktV^T5l*YD{_kCY^h9l&+.v+a)v/__)ET=v!yn!7l,!f4gd0C?X44g6m=VX[)x{W[Jpkgu+Kbi^>jMz.q<]7K<4h!6Y7sZT;lI[m>)dQc;K_P>%gk,g%vXh"Q`#`E>VT]aXPF6cK`/;K@]7JAnWkZ`SG(OS+GU![uaAW+uN<VB@NHc?ACKenmS~nn_26t?(4I/QV3qTa8L=bM;of{6[Mm[{2]b{9N2fUkk;1!No^U!?6u#Ds:$[(Wl{52V}L
$I^..QAf&A1`%b`XPvI!o1!_9UMbxcQDA
^iC4jq.LKw.}nInnpvQ/SNQ-euaS^E[0s^BjB>W[b[J9P7:"M!w;E$n@F+l6N`.^3y2.w-wMsBnURs0WTCBP(<kItg#$Jhe&fc`]tBb3p|N$7YnArk/L8k2&`wpv%dFr@/$<WHvw-:SgqfOx^sK;""';break;case"uz":$f='&R
m`=A+>$e,?NxEqqJ9keq`9
8TljE9/%/Y-5Y38[h_)t-X4MO%/m/B}stUXPZ5~[TR4Ma1]nctSGoj!!#f80=vFn-Dcm=*Ea}$5S)rZ>g:8W3A%PJfg;V)=WG9Pq,O`)R
p`Wu:_>nkq$k8`nVg;#8e<oN%5J$/@#y~ux&%,Yw%O.hjbWkn3+V?;uHvDsb:HYMwN[a:ABv+mr)EO=?<NbL)b))<M$VVPOPlO]&]*]U>O,q8n_ud%9/z@$d>mk?
Zh1x$LeCmvvsa6.#WfbiTnAzm?`%r-u#;7hk<K<`l&kI^uQ86P<Uv$<y<Xu]t)-?aL
j^%0D_-]p9iK;t-Ro/r=KK6CC
>Gk:IXr=.W$691,oow)+%)g>xi&
Y/lUCXk).VbDyv
vZa6Ku,qrwJ6Yq
%G#;*TUhT7HZ8M!018lHgsDX.lG.glo9g`V+si_*6^O%u;(cGP0,e+8Qc
KBc6<"U48r7f!C$ND+xi8l{6euR.i0mGo207`cy"iX5b~;5:-=2^yLxEXfDxe2<<vdJ/e4!kj7x
#pMS
($I@[3]{)u6rK%,j!Y@)[>CkIn"wfCKuMU_C]o(^elB>4u4~#t!cW7<"&Jmy.FJTO[(A&pv[v4DG@/r{1$]s!`pmc/OlYv:q8%&^Q6ErK
W.9>.v/nNl#nik=wWVeY,kE|K:sOmKm4uT0AHf&.ZwPNJFHlTp))(?p4
x^3+|-4s+6>eg3mw.4s9PGDE5n-!nr<^$Ox"CY}qAr>:]>wBEMdYw7+1C[c=[
t)qyV@/1#WJqKn}w/sJ`##lu!4jbPd&T2<+5*yz`zx5g~lt"]3r$)"7Q!Y5Yi&|)O"3f4f%1e-d_X8LM]Sp.[_8tIYJ>3VUu!LSKfGDvw(m&mH`o^2aELhz!8+HC2eJ!N;5LTWT2nd+@D)"(;j2Sa]46hL042PZR*j0s(,XCWT^<"f^@_(B.RWj1qf]/&EF0z<=`VSG1c((M@a?2*]:;DBnrJW#^sI5.VC(T0s|wty$6RPCsrmTm^.k]xCb.}E**K$]b$Ua<9Bxn*LNT6A:Xk&>!z$RY.HHKeblI"04s2ZdL^`o<Fy|XL`>camlTzo8"z3@#pfqZ,kO3ORLDXBimNG]`gZI4/fU*pdM%r/%Z=H%q_ZWxiVrF
n8fX8]]lm=1~S6W6Q_/%wt/Km("JS?-)h?j!.($X,!j.w"k+;3<V(}^,hDqc8zpoUCv0?b_g_mv$LtSq=:Y#rp6C8D+J07NdZFmUk4H1>KxO"/"/pNm8EVYnKfhd%*E=LxC$_NWwch]1J?SF]3IjW-.Npl0s5
]oESlf/xB)TGp,WA7)9,i@]^Pxb*saIj"%##OovAl?#&>[*EqbE)2ubNLx.M`lVcw|<-n>r*[9J{CE"uh
M|2<wYc4>)TAGh^c4EV6FR3<w}D{J&-V6ytaw?2]dnRzlKRjhpW3$},D_51}6vYd#zi=H6iU57IpbiqFvfFd5MvrKp&m[e8&W-Nb3aj,js
)umurN}2kth</^NF9S7"nIPPysZJ[p?StqTX&v;+$d_Af6,9>9=L{+Y<XFq`!X}[@^YgP?cTO0UieK/K[>rR"';break;case"vi":$f='%R
m`]=0}:gMbu%$t/mUil+FnC|
2#093m0PpYeh@gmE;n=JH6Ls@lhcQPr/oYwZ[D"eb-X;vQ
;j-b)ZOhOHi&x!cTbt;?RZKh#]iJi8yFunXCJ&K</cV36C=L>FhFRK7eg^5^VUt?W(X0?pm-Jx1SPz,WZ@hGw_aHyjJ_J1&E!E<fGU5"W7=Z`Xq"3trhi02pm5_vID0[1~t7V7*$w>>Q_1<C^n$g7Lxu3.-fr0,0^#lEH}/jem.+J/rR1Qv*$4oUEMHxX_@<*kd3<)HzgUo>Z589&s.lW~eUJHe3%M1V8NZUt#s!!#f
xA9
3Hnl]?Qir9Jm0kfq=([<L1$g1hWHGwF~sMcF"=U:.S4,yAWS6|64JkmLSNY5PuWR5jOgpB"oG(t;HmlJJY2~6i&qw<Aue9[J!i!Q:#;#jm?`$U@vE*g~IIle!j$*Tc0$38d)[V
4fm
X<oK4*hc{!".uP0oV/UI*eMELiiuhs?b^aIcr,$RExJOLnF9*BiE
WN*}
pm%x.14/kQF)%Y"=Ay#a&h_PsTg8q;~>G[>q*N7N3Z-ijiN3kc>QR:$@0I-ZXI2tv>nO+SOsg"/2O#,7o`>Cze
R|M,f&ckUmx}=~rJd3x#hXVcJoC{H?==/-]-Ss+sGP;BpZ2FeXGSC:k6*7b<nHcBZldU-:j,Rc
tHL2=;+V,6];mmt^X4Vb|78Tzx6DRGTGx7use%oiTS65(&GAZWX_yY!AL8Au,rg5*
bL1>/)K#nDc(,=
_iG^+hPfPD4)R/fVu+P!UQ8[*;%Lh1Pd1&%+iA=K0RNW=lENe$y/vJ6?^oN9
u<3hG(|$<I<,Lb5PV_q!U1v<78^p3MShUs,`>C2F.&ctH$g..eRsi"7:,T0<M-E9r1v
rShr
A=`nFtm`){#fKr=p[*"/U)Z9o(y0I)/+w{nS$Yuwr169IlxP4$`ikotEWX)CHGl&7v3,VIS%_b]%5}M0%T%@[5+^RSnEcK9~KraF;gSJSu&I)9DMKxF57"u%cCip[b
_-*9-Xp_4U
Ph@_L:%R"S_PGIVb&#v4&{RyZ@&~i;#y37S->KB6X:G|b
8$,?j)yS4^Lb^}b`81h>o^`Q*3<L-cI2$pPk@nwa.r!PPl=qs/DfuX-.sSml`X:?LSDV$Ze4CT2JD0[m3U][=8o)S5sN8&K5@u.(K`s~/bq=4[Q
->Z-]Us_,;sME
*
_zv~v(`MTW=E`^<%Q_MQ",DecGnxFuXmfo^;:}d?<n]B_Xw];(^//bEX5};tpB#$=7i-4UP>,_w.16V;1Pn&oTTib=_|Ch963IOi".ygC<Y/9J/VkoKtO1NwWErbHd8w0_]Er^BlR)bPWR@of0kc
**%T5uc
OIAEUn2s;`RCI/+_R-2loDys1hj[AI`w,?+QOI2G,fgM@WW_NYBW/t%SQsnA,0R&Uax/24h>8lE0dx^-:&2jR8fI[*_m4nFK@^!].Z6x"9B)n,[R^bGn=<KN~[),#-LL*1,GX%BGq>AWoN)_:h!]B+}3N]B9g`%Z+RC7s)<t]@imn&u>^B(nx5]uz%,_j*:8ZMF(Zz!g$k#pnn?#]^vZb-BmoO?g"jP40MPAMFkJ+?z
YpC
>0GM9bNp%S3nAS"Ey01
-q8M|QUo}voGz<pF@iDt9l[X1)B$#!zd1LCKqJF,YF_
*V{.vQT$K4d?f$+botEVaM;,T5U;avW4/c8?^HNB<c"ert$^H-+`nG*kbk2jfWxJsEf9kB5V$Dm8ua,p#N!!+Nx[6?tZ>u:d0';break;case"zh":$f='#R
](6kZ;:e7XsA@,ALF7Z7%P+%G5_K,#jB>t
/!U*nSU;aCixPd7*Ibpjdcv`_#`m/"ElM-O!=vZDG=/Vy.ewbK9e$YV.nc9pC215YuwgCNB7F]t=9dM`i_&A*m,6J^/H%PWC$dmHd?z[zifj+&Pm_yp^R#/QMP6iem?-eBgLW[yX8$.,BX1h(V}1:Y[wJM"MAc
hkOVxAEi#.[dF2wEbp+jdhliIhA,A_9tnqUL)Zcu3~&$fAo&`0tpQVtW&r(ApMu;bBOfE)]I&7%5F_cbmE`uFoVGSxAcq(<bXfq9H)E?`Vn_d]>Tn2Hl^1GB!KM^EZf5`+S[iU7^1$h!d{^qM|2gBq<k95ieD=d$&dWQR;Ur^J=V3}Pa3IGeK~T.f7MXc"a1eAZB;.Bym~&G#bS*L!$qq^N]DPFg0h=ONI5F[a(x[.RRSwF2I*E]E+6Bo6!1d6&qN2^kF0cL9Rvx/#RyCR92Yst>oN0CYZDLQiOq>L#w=&]>eLDgD+)5,R1ISwv
+l7V
B5d2Kv#y~r(WtCT6DLgca,CP:OXL"]Pit$iYNx?;MqYu)-0nq.&L/S:%11i!t#=-/ZJJv6$NjG*>!/vaW"Ftg04Um)+l,,EJrJfHsr]mk=j6G?_J%:R_N]I1=.8l+d`X8IFSGD#@5)r5uT/8[.u8:-RgANQ>doE0gtZ-En+S/2DG~0PEaG?,:M>G$@cWS)GY)f|4I^Of[=jo~@W5Pbli(SI6AcB)*A%8zDEL[W%U^;<E,;{&s]l"{j=b5n3.Q;*G+K3G~c8_rK!L"1!@8UhoK1bk46ZJ5=5hPMB]i=.q#a=$yYW5R*,tg=0=^O*u9wHEgoBVIuuF;aJukFM+)43,ga-l2p8A{%Bd=!LlG:Xl7)5I2AKB}"?f&9`*
;,Q4*~nC)bA2m=-|tDeEd$&`LLx/_wDJ!sJPssis1SlhkJtqw-Q+eoj%]M`6Jn>=F8,e)dY[W50xmKrZ
aRWAKgye8#ySDm#u0HKV~*Oe)SZCf`rJqet?h(8k!9pD7^^?^y7y12tp8<F(kiCOZ/MG_#M5e=ggV2u0|n;JX.^b</|xl>Ta_nb=w6Q"Yv|Peb`5uRjrN:"n>=U88;_Jkrc$sLcBIrkacg([`Pl1;=jUHOC.4xwTEtE%H@l`]At,oD0bu7rp;>Jwi8]oy=I9+c3"2`#>W.haPpw`;eQ&&,kMKQ,rjP6r>__Fum<QGp{^n9PR}mm<a9Zvyc,niqAvJF)Enj;h*b"M9VkU
e
uH<s$H+.6v;TmjeQA"1$69g}9N,ifDiYpFg(:X9.&C(y7gP*s{#=k-Vyh0bKfJV]X(-"U9US:WNa]C3yQv4P5uVE
zn)elr7y.pK6"S`EB`3,ch

Wi
3<-sBp$%O.0W);(.Vpwm1fwO;U3-O:A85>aGvd%R8[m0via&I(6&WLEZkhk<+|6vpq*9yO%oNn,l,-B,>pQokg
bYjp(
DEOpWE{ltnz0QsTH321O7]:a-T"Bl+*SWe5<|WEo@EKuXo9vkL)$a&ZW0JD`6^^O)*-qPD}N7gT;O;*?_
]):8FC6[s3"u^HY0/k[LhMS*P6@x|A/t9d7j(';break;case"zh-tw":$f='%R

}6kZ;Pg7XsA?IU$)LZkFHDk)L((@.il)iS|
ax4oO
P;alJ>`n`wRA>D*G=F=wCf|36l9%kGKy",:o"X4<oity`@jM(<._7mRE"qVL}3Ah+ca3ea4y,]>#R,L
EtYNJLKFaA=OGk=!W:9WP
h.+%6s"pVA$pSBT89+"E*b
^cBnh4v_jLF_K~Xwf+[Zg@tGn]k{a7O;LxvxG_P@%XNoN``I&JPQA4?
s9/"<nJ!&*#@RZV*4&0Bl7CP(,*`"`Zy7u!M/&RG&[Ug!HH|8Ac9U7F,9T/H5pxE[Z[&>*`mGRyvvQ8:EW,M/TB5!*.~uiis:.b=rUgbp&tA"Zd<3ey0tNI~$K<S6eR!AR0vI1FkDe[1e2b`j&m#`(bvGs+Y],>d^vO#FT06L2xCTNp.:-TENu8k7,eR9M@wZJ_8Os(nOgt)fz<Sy9`r4@NPK.1
Egy_n$qcnZBR,8TGGDVyM=Ddx`f(O]g@:/%2D*#z$w7j/jZi3-d`e@%&tT-sTY.jqqNU*RIBeYB0jHSge=Nh>A,Gw4w3pkmoSQx$iUyc^Ql$BMi2@`8
Wv@,)]9r:-p~qMKb(M9ZUZtu9u8aW,uai=UnH}
Gos_9-Qb)bpK0qBH0>;QTI23kly_hfh;NiYZ52s>m2DeJr>Ht)K@pG.&IAHUU4&HeW
J$T}q/FflflF!%$a!%7+("J+E`"&IACL/0*FCXoDuM.{tM]T6p`Mh}dSVR)b
CRT.vTzKe1lSgMee%!t=IH8q{-Xn_yPc%=z$@l:>^5COVAD.<CYFp9I,}WOCv)4Q`SXc8X4dit6V*HFmavJKOhGntH*J],!PPit##Zw$QKhhNqj4vnU7@iUuVjxJXyf
zvpBy##BAG@A8Vib[JFabn7b(=@S$(Y2:oEWS.?bkvj9UE%^KXgJ^[[9xxB1DQbe#!Wb.RM-lf@4r:]mIxncp]d!&N",EImx"iHA:*{d^4g8w=L)
9[`e%1%(v0PEU}im`YP=Ju1k8gGBGeg{4e/S$c8Itab*Yk]w^jCaYMYkw2*#NzKn(5ZrXk*KK_s&$VL):^k([!n:adSS1TV/KY3_/1X}I%^|X:;RI1^f6pY7VnvCcYIfs}4k,1-Sd9>KG$pPdW$SV@OlEVgV
lTRJ1VDQd&0P^%e4B"R9^p^ss7YlL0j[>p?&A4-?"-K_a?pmXI3BAcg:[]rn+EKy(>8+/y4,Q-^Cl^Rjs%lid0SQ;ipg0PYZO/)@f;"IL9=k}A7@=x%gUVNaHE9CC=,I,Jh2G1oxTGCOvEWR2[z<
n=B$d`>41VQhSbYA5DuSZY8ir?lhOW^w7tYv$&5^hKwQRg-&y"[<>7EN!"jj`9`$wTTtu/pKd--)g"k-Pi/6^|/eD,%O8Z)jvh%vSC[6e<GxpFA6IAFuMQ3X?uF@;?PS@Jq&0XqGim_ar8,_A8KB5n;M;~i,DmtYF$6^8FI`Won)l)mmb-K&n1usxaMDr^I}^dg/_~mkA[a[AWRx;GN5$*uW6&[@*r/-+N;D1^p0[KZ#$enAjqKsq`+=7u0;D*gd^jbRaA5JJb"ve!=>@f;i;B#A:E<6O:0K9IW2L]SZaO%-+@E;:(AX.>A]4
R2!7Z=PxUxj)cX$D_{oxNav)xhV;E.3]3u`1_Xd0';break;}$Tf=array();foreach(explode("\n",decompress_string($f))as$W)$Tf[]=(strpos($W,"\t")?explode("\t",$W):$W);return$Tf;}abstract
class
SqlDb{static$instance;var$extension;var$flavor='';var$server_info;var$affected_rows=0;var$info='';var$errno=0;var$error='';protected$multi;abstract
function
attach($O,$U,$F);abstract
function
quote($Q);abstract
function
select_db($jb);abstract
function
query($I,$Xf=false);function
multi_query($I){return$this->multi=$this->query($I);}function
store_result(){return$this->multi;}function
next_result(){return
false;}}if(extension_loaded('pdo')){abstract
class
PdoDb
extends
SqlDb{protected$pdo;function
dsn($_b,$U,$F,array$C=array()){$C[\PDO::ATTR_ERRMODE]=\PDO::ERRMODE_SILENT;$C[\PDO::ATTR_STATEMENT_CLASS]=array('Adminer\PdoResult');try{$this->pdo=new
\PDO($_b,$U,$F,$C);}catch(\Exception$Ob){return$Ob->getMessage();}$this->server_info=@$this->pdo->getAttribute(\PDO::ATTR_SERVER_VERSION);return'';}function
quote($Q){return$this->pdo->quote($Q);}function
query($I,$Xf=false){$J=$this->pdo->query($I);$this->error="";if(!$J){list(,$this->errno,$this->error)=$this->pdo->errorInfo();if(!$this->error)$this->error=lang(23);return
false;}$this->store_result($J);return$J;}function
store_result($J=null){if(!$J){$J=$this->multi;if(!$J)return
false;}if($J->columnCount()){$J->num_rows=$J->rowCount();return$J;}$this->affected_rows=$J->rowCount();return
true;}function
next_result(){$J=$this->multi;if(!is_object($J))return
false;$J->_offset=0;return@$J->nextRowset();}}class
PdoResult
extends
\PDOStatement{var$_offset=0,$num_rows;function
fetch_assoc(){return$this->fetch_array(\PDO::FETCH_ASSOC);}function
fetch_row(){return$this->fetch_array(\PDO::FETCH_NUM);}private
function
fetch_array($Td){$K=$this->fetch($Td);return($K?array_map(array($this,'unresource'),$K):$K);}private
function
unresource($W){return(is_resource($W)?stream_get_contents($W):$W);}function
fetch_field(){$L=(object)$this->getColumnMeta($this->_offset++);$T=$L->pdo_type;$L->type=($T==\PDO::PARAM_INT?0:15);$L->charsetnr=($T==\PDO::PARAM_LOB||(isset($L->flags)&&in_array("blob",(array)$L->flags))?63:0);return$L;}function
seek($de){for($q=0;$q<$de;$q++)$this->fetch();}}}function
add_driver($r,$A){SqlDriver::$drivers[$r]=$A;}function
get_driver($r){return
SqlDriver::$drivers[$r];}abstract
class
SqlDriver{static$instance;static$drivers=array();static$extensions=array();static$jush;protected$conn;protected$types=array();var$delimiter=";";var$insertFunctions=array();var$editFunctions=array();var$unsigned=array();var$operators=array();var$functions=array();var$grouping=array();var$onActions="RESTRICT|NO ACTION|CASCADE|SET NULL|SET DEFAULT";var$partitionBy=array();var$inout="IN|OUT|INOUT";var$enumLength="'(?:''|[^'\\\\]|\\\\.)*'";var$generated=array();static
function
connect($O,$U,$F){$g=new
Db;return($g->attach($O,$U,$F)?:$g);}function
__construct(Db$g){$this->conn=$g;}function
types(){return
call_user_func_array('array_merge',array_values($this->types));}function
structuredTypes(){return
array_map('array_keys',$this->types);}function
enumLength(array$l){}function
unconvertFunction(array$l){}function
select($R,array$N,array$Z,array$p,array$D=array(),$w=1,$E=0,$He=false){$bd=(count($p)<count($N));$I=adminer()->selectQueryBuild($N,$Z,$p,$D,$w,$E);if(!$I)$I="SELECT".limit(($_GET["page"]!="last"&&$w&&$p&&$bd&&JUSH=="sql"?"SQL_CALC_FOUND_ROWS ":"").implode(", ",$N)."\nFROM ".table($R),($Z?"\nWHERE ".implode(" AND ",$Z):"").($p&&$bd?"\nGROUP BY ".implode(", ",$p):"").($D?"\nORDER BY ".implode(", ",$D):""),$w,($E?$w*$E:0),"\n");$tf=microtime(true);$K=$this->conn->query($I);if($He)echo
adminer()->selectQuery($I,$tf,!$K);return$K;}function
delete($R,$Me,$w=0){$I="FROM ".table($R);return
queries("DELETE".($w?limit1($R,$I,$Me):" $I$Me"));}function
update($R,array$P,$Me,$w=0,$gf="\n"){$og=array();foreach($P
as$u=>$W)$og[]="$u = $W";$I=table($R)." SET$gf".implode(",$gf",$og);return
queries("UPDATE".($w?limit1($R,$I,$Me,$gf):" $I$Me"));}function
insert($R,array$P){return
queries("INSERT INTO ".table($R).($P?" (".implode(", ",array_keys($P)).")\nVALUES (".implode(", ",$P).")":" DEFAULT VALUES").$this->insertReturning($R));}function
insertReturning($R){return"";}function
insertUpdate($R,array$M,array$Ge){return
false;}function
begin(){return
queries("BEGIN");}function
commit(){return
queries("COMMIT");}function
rollback(){return
queries("ROLLBACK");}function
slowQuery($I,$Jf){}function
convertSearch($s,array$W,array$l){return$s;}function
value($W,array$l){return(method_exists($this->conn,'value')?$this->conn->value($W,$l):$W);}function
quoteBinary($Ye){return
q($Ye);}function
warnings(){}function
tableHelp($A,$ed=false){}function
inheritsFrom($R){return
array();}function
inheritedTables($R){return
array();}function
partitionsInfo($R){return
array();}function
hasCStyleEscapes(){return
false;}function
engines(){return
array();}function
supportsIndex(array$S){return!is_view($S);}function
indexAlgorithms(array$Bf){return
array();}function
checkConstraints($R){return
get_key_vals("SELECT c.CONSTRAINT_NAME, CHECK_CLAUSE
FROM INFORMATION_SCHEMA.CHECK_CONSTRAINTS c
JOIN INFORMATION_SCHEMA.TABLE_CONSTRAINTS t ON c.CONSTRAINT_SCHEMA = t.CONSTRAINT_SCHEMA AND c.CONSTRAINT_NAME = t.CONSTRAINT_NAME".($this->conn->flavor=='maria'?" AND c.TABLE_NAME = ".q($R):"")."
WHERE c.CONSTRAINT_SCHEMA = ".q($_GET["ns"]!=""?$_GET["ns"]:DB)."
AND t.TABLE_NAME = ".q($R).(JUSH=="pgsql"?"
AND CHECK_CLAUSE NOT LIKE '% IS NOT NULL'":""),$this->conn);}function
allFields(){$K=array();if(DB!=""){foreach(get_rows("SELECT TABLE_NAME AS tab, COLUMN_NAME AS field, IS_NULLABLE AS nullable, DATA_TYPE AS type, CHARACTER_MAXIMUM_LENGTH AS length".(JUSH=='sql'?", COLUMN_KEY = 'PRI' AS `primary`":"")."
FROM INFORMATION_SCHEMA.COLUMNS
WHERE TABLE_SCHEMA = ".q($_GET["ns"]!=""?$_GET["ns"]:DB)."
ORDER BY TABLE_NAME, ORDINAL_POSITION",$this->conn)as$L){$L["null"]=($L["nullable"]=="YES");$K[$L["tab"]][]=$L;}}return$K;}}class
Adminer{static$instance;var$error='';private$values=array();function
name(){return"<a href='https://www.adminer.org/editor/'".target_blank()." id='h1'><img src='".h(preg_replace("~\\?.*~","",ME)."?file=logo.png&version=5.5.1")."' width='24' height='24' alt='' id='logo'>".lang(24)."</a>";}function
credentials(){return
array(SERVER,$_GET["username"],get_password());}function
connectSsl(){}function
permanentLogin($bb=false){return
password_file($bb);}function
bruteForceKey(){return$_SERVER["REMOTE_ADDR"];}function
serverName($O){}function
database(){if(connection()){$kb=adminer()->databases(false);return(!$kb?get_val("SELECT SUBSTRING_INDEX(CURRENT_USER, '@', 1)"):$kb[(information_schema($kb[0])?1:0)]);}}function
operators(){return
array("<=",">=");}function
schemas(){return
schemas();}function
databases($gc=true){return
get_databases($gc);}function
pluginsLinks(){}function
queryTimeout(){return
5;}function
afterConnect(){}function
headers(){}function
csp($eb){return$eb;}function
head($hb=null){return
true;}function
bodyClass(){echo" editor";}function
css(){$K=array();foreach(array("","-dark")as$Td){$ac="adminer$Td.css";if(file_exists($ac)){$Zb=file_get_contents($ac);$K["$ac?v=".crc32($Zb)]=($Td?"dark":(preg_match('~prefers-color-scheme:\s*dark~',$Zb)?'':'light'));}}return$K;}function
loginForm(){echo"<table class='layout'>\n",adminer()->loginFormField('username','<tr><th>'.lang(25).'<td>',input_hidden("auth[driver]","server").'<input name="auth[username]" autofocus value="'.h($_GET["username"]).'" autocomplete="username" autocapitalize="off">'),adminer()->loginFormField('password','<tr><th>'.lang(26).'<td>','<input type="password" name="auth[password]" autocomplete="current-password">'),"</table>\n","<p><input type='submit' value='".lang(27)."'>\n",checkbox("auth[permanent]",1,$_COOKIE["adminer_permanent"],lang(28))."\n";}function
loginFormField($A,$Dc,$X){return$Dc.$X."\n";}function
login($yd,$F){return
true;}function
tableName($Bf){return
h(isset($Bf["Engine"])?($Bf["Comment"]!=""?$Bf["Comment"]:$Bf["Name"]):"");}function
fieldName($l,$D=0){return
h(preg_replace('~\s+\[.*\]$~','',($l["comment"]!=""?$l["comment"]:$l["field"])));}function
selectLinks($Bf,$P=""){$a=$Bf["Name"];if($P!==null)echo'<p class="tabs"><a href="'.h(ME.'edit='.urlencode($a).$P).'">'.lang(29)."</a>\n";}function
foreignKeys($R){return
foreign_keys($R);}function
backwardKeys($R,$Af){$K=array();foreach(get_rows("SELECT TABLE_NAME, CONSTRAINT_NAME, COLUMN_NAME, REFERENCED_COLUMN_NAME
FROM information_schema.KEY_COLUMN_USAGE
WHERE TABLE_SCHEMA = ".q(adminer()->database())."
AND REFERENCED_TABLE_SCHEMA = ".q(adminer()->database())."
AND REFERENCED_TABLE_NAME = ".q($R)."
ORDER BY ORDINAL_POSITION",null,"")as$L)$K[$L["TABLE_NAME"]]["keys"][$L["CONSTRAINT_NAME"]][$L["COLUMN_NAME"]]=$L["REFERENCED_COLUMN_NAME"];foreach($K
as$u=>$W){$A=adminer()->tableName(table_status1($u,true));if($A!=""){$af=preg_quote($Af);$gf="(:|\\s*-)?\\s+";$K[$u]["name"]=(preg_match("(^$af$gf(.+)|^(.+?)$gf$af\$)iu",$A,$z)?$z[2].$z[3]:$A);}else
unset($K[$u]);}return$K;}function
backwardKeysPrint($wa,$L){foreach($wa
as$R=>$va){foreach($va["keys"]as$Qa){$x=ME.'select='.urlencode($R);$q=0;foreach($Qa
as$d=>$W)$x
.=where_link($q++,$d,$L[$W]);echo"<a href='".h($x)."'>".h($va["name"])."</a>";$x=ME.'edit='.urlencode($R);foreach($Qa
as$d=>$W)$x
.="&set".urlencode("[".bracket_escape($d)."]")."=".urlencode($L[$W]);echo"<a href='".h($x)."' title='".lang(29)."'>+</a> ";}}}function
selectQuery($I,$tf,$Vb=false){return"<!--\n".str_replace("--","--><!-- ",$I)."\n(".format_time($tf).")\n-->\n";}function
rowDescription($R){foreach(fields($R)as$l){if(preg_match("~varchar|character varying~",$l["type"]))return
idf_escape($l["field"]);}return"";}function
rowDescriptions($M,$kc){$K=$M;foreach($M[0]as$u=>$W){if(list($R,$r,$A)=$this->_foreignColumn($kc,$u)){$Mc=array();foreach($M
as$L)$Mc[$L[$u]]=q($L[$u]);$qb=$this->values[$R];if(!$qb)$qb=get_key_vals("SELECT $r, $A FROM ".table($R)." WHERE $r IN (".implode(", ",$Mc).")");foreach($M
as$_=>$L){if(isset($L[$u]))$K[$_][$u]=(string)$qb[$L[$u]];}}}return$K;}function
selectLink($W,$l){}function
selectVal($W,$x,$l,$pe){$K="$W";$x=h($x);if(is_blob($l)&&!is_utf8($W)){$K=lang(30,strlen($pe));if(preg_match("~^(GIF|\xFF\xD8\xFF|\x89PNG\x0D\x0A\x1A\x0A)~",$pe))$K="<img src='$x' alt='$K'>";}if(like_bool($l)&&$K!="")$K=(preg_match('~^(1|t|true|y|yes|on)$~i',$W)?lang(31):lang(32));if($x)$K="<a href='$x'".(is_url($x)?target_blank():"").">$K</a>";if(preg_match('~date~',$l["type"]))$K="<div class='datetime'>$K</div>";return$K;}function
editVal($W,$l){if(preg_match('~date|timestamp~',$l["type"])&&$W!==null)return
preg_replace('~^(\d{2}(\d+))-(0?(\d+))-(0?(\d+))~',lang(33),$W);return$W;}function
config(){return
array();}function
selectColumnsPrint($N,$e){}function
selectSearchPrint($Z,$e,$t){$Z=(array)$_GET["where"];echo'<fieldset id="fieldset-search"><legend>'.lang(34)."</legend><div>\n";$id=array();foreach($Z
as$u=>$W)$id[$W["col"]]=$u;$q=0;$m=fields($_GET["select"]);foreach($e
as$A=>$pb){$l=$m[$A];if($l["type"]=="enum"||like_bool($l)){$u=$id[$A];$q--;echo"<div>".h($pb).":".input_hidden("where[$q][col]",$A);$W=idx($Z[$u],"val");echo(like_bool($l)?"<select name='where[$q][val]'>".optionlist(array(""=>"",lang(32),lang(31)),$W,true)."</select>":enum_input("checkbox"," name='where[$q][val][]'",$l,(array)$W,lang(35))),"</div>\n";unset($e[$A]);}elseif(is_array($C=$this->foreignKeyOptions($_GET["select"],$A))){if($m[$A]["null"])$C[0]='('.lang(35).')';$u=$id[$A];$q--;echo"<div>".h($pb).input_hidden("where[$q][col]",$A).input_hidden("where[$q][op]","=").": <select name='where[$q][val]'>".optionlist($C,idx($Z[$u],"val"),true)."</select></div>\n";unset($e[$A]);}}$q=0;foreach($Z
as$W){if(($W["col"]==""||$e[$W["col"]])&&"$W[col]$W[val]"!=""){echo"<div><select name='where[$q][col]'><option value=''>(".lang(36).")".optionlist($e,$W["col"],true)."</select>",html_select("where[$q][op]",array(-1=>"")+adminer()->operators(),$W["op"]),"<input type='search' name='where[$q][val]' value='".h($W["val"])."'>".script("mixin(qsl('input'), {onkeydown: selectSearchKeydown, onsearch: selectSearchSearch});","")."</div>\n";$q++;}}echo"<div><select name='where[$q][col]'><option value=''>(".lang(36).")".optionlist($e,null,true)."</select>",script("qsl('select').onchange = selectAddRow;",""),html_select("where[$q][op]",array(-1=>"")+adminer()->operators()),"<input type='search' name='where[$q][val]'></div>",script("mixin(qsl('input'), {onchange: function () { this.parentNode.firstChild.onchange(); }, onsearch: selectSearchSearch});"),"</div></fieldset>\n";}function
selectOrderPrint($D,$e,$t){$oe=array();foreach($t
as$u=>$Qc){$D=array();foreach($Qc["columns"]as$W)$D[]=$e[$W];if(count(array_filter($D,'strlen'))>1&&$u!="PRIMARY")$oe[$u]=implode(", ",$D);}if($oe)echo'<fieldset><legend>'.lang(37)."</legend><div>","<select name='index_order'>".optionlist(array(""=>"")+$oe,(idx($_GET["order"],0)!=""?"":$_GET["index_order"]),true)."</select>","</div></fieldset>\n";if($_GET["order"])echo"<div style='display: none;'>".hidden_fields(array("order"=>array(1=>reset($_GET["order"])),"desc"=>($_GET["desc"]?array(1=>1):array()),))."</div>\n";}function
selectLimitPrint($w){echo"<fieldset><legend>".lang(38)."</legend><div>",html_select("limit",array("",50,100),$w),"</div></fieldset>\n";}function
selectLengthPrint($Gf){}function
selectActionPrint($t){echo"<fieldset><legend>".lang(39)."</legend><div>","<input type='submit' value='".lang(40)."'>","</div></fieldset>\n";}function
selectCommandPrint(){return
true;}function
selectImportPrint(){return
true;}function
selectEmailPrint($Eb,$e){}function
selectColumnsProcess($e,$t){return
array(array(),array());}function
selectSearchProcess($m,$t){$K=array();foreach((array)$_GET["where"]as$u=>$Z){$Na=$Z["col"];$ie=$Z["op"];$W=$Z["val"];if(($u>=0&&$Na!="")||$W!=""){$Ta=array();foreach(($Na!=""?array($Na=>$m[$Na]):$m)as$A=>$l){if($Na!=""||is_numeric($W)||!preg_match(number_type(),$l["type"])){$A=idf_escape($A);if($Na!=""&&$l["type"]=="enum"){$Oc=array();foreach($W
as$mg){if(preg_match('~val-~',$mg))$Oc[]=q(substr($mg,4));}$Ta[]=(in_array("null",$W)?"$A IS NULL OR ":"").($Oc?"$A IN (".implode(", ",$Oc).")":"0");}else{$Hf=preg_match('~char|text|enum|set~',$l["type"]);$X=adminer()->processInput($l,(!$ie&&$Hf&&preg_match('~^[^%]+$~',$W)?"%$W%":$W));$Ta[]=driver()->convertSearch($A,$Z,$l).($X=="NULL"?" IS".($ie==">="?" NOT":"")." $X":(in_array($ie,adminer()->operators())||$ie=="="?" $ie $X":($Hf?" LIKE $X":" IN (".($X[0]=="'"?str_replace(",","', '",$X):$X).")")));if($u<0&&$W=="0")$Ta[]="$A IS NULL";}}}$K[]=($Ta?"(".implode(" OR ",$Ta).")":"1 = 0");}}return$K;}function
selectOrderProcess($m,$t){$Rc=$_GET["index_order"];if($Rc!="")unset($_GET["order"][1]);if($_GET["order"])return
array(idf_escape(reset($_GET["order"])).($_GET["desc"]?" DESC":""));foreach(($Rc!=""?array($t[$Rc]):$t)as$Qc){if($Rc!=""||$Qc["type"]=="INDEX"){$zc=array_filter($Qc["descs"]);$pb=false;foreach($Qc["columns"]as$W){if(preg_match('~date|timestamp~',$m[$W]["type"])){$pb=true;break;}}$K=array();foreach($Qc["columns"]as$u=>$W)$K[]=idf_escape($W).(($zc?$Qc["descs"][$u]:$pb)?" DESC":"");return$K;}}return
array();}function
selectLimitProcess(){return(isset($_GET["limit"])?intval($_GET["limit"]):50);}function
selectLengthProcess(){return"100";}function
selectEmailProcess($Z,$kc){return
false;}function
selectQueryBuild($N,$Z,$p,$D,$w,$E){return"";}function
messageQuery($I,$If,$Vb=false){return" <span class='time'>".@date("H:i:s")."</span><!--\n".str_replace("--","--><!-- ",$I)."\n".($If?"($If)\n":"")."-->";}function
editRowPrint($R,$m,$L,$eg){}function
editFunctions($l){$K=array();if($l["null"]&&preg_match('~blob~',$l["type"]))$K["NULL"]=lang(35);$K[""]=($l["null"]||$l["auto_increment"]||like_bool($l)?"":"*");if(preg_match('~date|time~',$l["type"]))$K["now"]=lang(41);if(preg_match('~_(md5|sha1)$~i',$l["field"],$z))$K[]=strtolower($z[1]);return$K;}function
editInput($R,$l,$b,$X){if($l["type"]=="enum")return(isset($_GET["select"])?"<label><input type='radio'$b value='orig' checked><i>".lang(10)."</i></label> ":"").enum_input("radio",$b,$l,$X,lang(35));$C=$this->foreignKeyOptions($R,$l["field"],$X);if($C!==null)return(is_array($C)?"<select$b>".optionlist($C,(string)$X,true)."</select>":"<input value='".h($X)."'$b class='hidden'>"."<input value='".h($C)."' class='jsonly'>"."<div></div>".script("qsl('input').oninput = partial(whisper, '".ME."script=complete&source=".urlencode($R)."&field=".urlencode($l["field"])."&value='); qsl('div').onclick = whisperClick;",""));if(like_bool($l))return'<input type="checkbox" value="1"'.(preg_match('~^(1|t|true|y|yes|on)$~i',$X)?' checked':'')."$b>";$Fc="";if(preg_match('~time~',$l["type"]))$Fc=lang(42);if(preg_match('~date|timestamp~',$l["type"]))$Fc=lang(43).($Fc?" [$Fc]":"");if($Fc)return"<input value='".h($X)."'$b> ($Fc)";if(preg_match('~_(md5|sha1)$~i',$l["field"]))return"<input type='password' value='".h($X)."'$b>";return'';}function
editHint($R,$l,$X){return(preg_match('~\s+(\[.*\])$~',($l["comment"]!=""?$l["comment"]:$l["field"]),$z)?h(" $z[1]"):'');}function
processInput($l,$X,$o=""){if($o=="now")return"$o()";$K=$X;if(preg_match('~date|timestamp~',$l["type"])&&preg_match('(^'.str_replace('\$1','(?P<p1>\d*)',preg_replace('~(\\\\\\$([2-6]))~','(?P<p\2>\d{1,2})',preg_quote(lang(33)))).'(.*))',$X,$z))$K=($z["p1"]!=""?$z["p1"]:($z["p2"]!=""?($z["p2"]<70?20:19).$z["p2"]:gmdate("Y")))."-$z[p3]$z[p4]-$z[p5]$z[p6]".end($z);$K=q($K);if($X==""&&like_bool($l))$K="'0'";elseif($X==""&&($l["null"]||!preg_match('~char|text~',$l["type"])))$K="NULL";elseif(preg_match('~^(md5|sha1)$~',$o))$K="$o($K)";return
unconvert_field($l,$K);}function
dumpOutput(){return
array();}function
dumpFormat(){return
array('csv'=>'CSV,','csv;'=>'CSV;','tsv'=>'TSV');}function
dumpDatabase($i){}function
dumpTable($R,$wf,$ed=0){echo"\xef\xbb\xbf";}function
dumpData($R,$wf,$I){$J=connection()->query($I,1);if($J){while($L=$J->fetch_assoc()){if($wf=="table"){dump_csv(array_keys($L));$wf="INSERT";}dump_csv($L);}}}function
dumpFilename($Lc){return
friendly_url($Lc);}function
dumpHeaders($Lc,$Vd=false){$Rb="csv";header("Content-Type: text/csv; charset=utf-8");return$Rb;}function
dumpFooter(){}function
importServerPath(){}function
homepage(){return
true;}function
navigation($Sd){echo"<h1>".adminer()->name()." <span class='version'>".VERSION;$Zd=$_COOKIE["adminer_version"];echo" <a href='https://www.adminer.org/editor/#download'".target_blank()." id='version'>".(version_compare(VERSION,$Zd)<0?h($Zd):"")."</a>","</span></h1>\n";switch_lang();if($Sd=="auth"){$ec=true;foreach((array)$_SESSION["pwds"]as$Y=>$if){foreach($if[""]as$U=>$F){if($F!==null){if($ec){echo"<ul id='logins'>",script("mixin(qs('#logins'), {onmouseover: menuOver, onmouseout: menuOut});");$ec=false;}echo"<li><a href='".h(auth_url($Y,"",$U))."'>".($U!=""?h($U):"<i>".lang(35)."</i>")."</a>\n";}}}}else{adminer()->databasesPrint($Sd);$da=adminer()->menuActions(array(),$Sd);echo($da?"<p class='links'>\n".implode("\n",$da)."\n":"");if($Sd!="db"&&$Sd!="ns"){$S=table_status('',true);if(!$S)echo"<p class='message'>".lang(11)."\n";else
adminer()->tablesPrint($S);}}}function
syntaxHighlighting($Df){}function
databasesPrint($Sd){}function
menuActions($da,$Sd){return$da;}function
tablesPrint($Df){echo"<ul id='tables'>",script("mixin(qs('#tables'), {onmouseover: menuOver, onmouseout: menuOut});");foreach($Df
as$L){echo'<li>';$A=adminer()->tableName($L);if($A!="")echo"<a href='".h(ME).'select='.urlencode($L["Name"])."'".bold($_GET["select"]==$L["Name"]||$_GET["edit"]==$L["Name"],"select")." title='".lang(44)."'>$A</a>\n";}echo"</ul>\n";}function
_foreignColumn($kc,$d){foreach((array)$kc[$d]as$jc){if(count($jc["source"])==1){$A=adminer()->rowDescription($jc["table"]);if($A!=""){$r=idf_escape($jc["target"][0]);return
array($jc["table"],$r,$A);}}}}private
function
foreignKeyOptions($R,$d,$X=null){if(list($Ef,$r,$A)=$this->_foreignColumn(column_foreign_keys($R),$d)){$K=&$this->values[$Ef];if($K===null){$S=table_status1($Ef);$K=($S["Rows"]>1000?"":array(""=>"")+get_key_vals("SELECT $r, $A FROM ".table($Ef)." ORDER BY 2"));}if(!$K&&$X!==null)return
get_val("SELECT $A FROM ".table($Ef)." WHERE $r = ".q($X));return$K;}}}class
Plugins{private
static$append=array('dumpFormat'=>true,'dumpOutput'=>true,'editRowPrint'=>true,'editFunctions'=>true,'config'=>true);var$plugins;var$error='';private$hooks=array();function
__construct($Be){if($Be===null){$Be=array();$za="adminer-plugins";if(is_dir($za)){foreach(glob("$za/*.php")as$ac)$this->includeOnce($ac);}$Ec=" href='https://www.adminer.org/plugins/#use'".target_blank();if(file_exists("$za.php")){$Pc=$this->includeOnce("$za.php");if(is_array($Pc)){foreach($Pc
as$Ae)$Be[get_class($Ae)]=$Ae;}else$this->error
.=lang(45,"<b>$za.php</b>",$Ec)."<br>";}foreach(get_declared_classes()as$La){if(!$Be[$La]&&(preg_match('~^Adminer\w~i',$La)||is_subclass_of($La,'Adminer\Plugin'))){$Re=new
\ReflectionClass($La);$Va=$Re->getConstructor();if($Va&&$Va->getNumberOfRequiredParameters())$this->error
.=lang(46,$Ec,"<b>$La</b>","<b>$za.php</b>")."<br>";else$Be[$La]=new$La;}}}$this->plugins=$Be;$ea=new
Adminer;$Be[]=$ea;$Re=new
\ReflectionObject($ea);foreach($Re->getMethods()as$Rd){foreach($Be
as$Ae){$A=$Rd->getName();if(method_exists($Ae,$A))$this->hooks[$A][]=$Ae;}}}function
includeOnce($ac){return
include_once"./$ac";}function
__call($A,array$ue){$la=array();foreach($ue
as$u=>$W)$la[]=&$ue[$u];$K=null;foreach($this->hooks[$A]as$Ae){$X=call_user_func_array(array($Ae,$A),$la);if($X!==null){if(!self::$append[$A])return$X;$K=$X+(array)$K;}}return$K;}}abstract
class
Plugin{protected$translations=array();function
description(){return$this->lang('');}function
screenshot(){return"";}protected
function
lang($s,$B=null){$la=func_get_args();$la[0]=idx($this->translations[LANG],$s)?:$s;return
call_user_func_array('Adminer\lang_format',$la);}}Adminer::$instance=(function_exists('adminer_object')?adminer_object():(is_dir("adminer-plugins")||file_exists("adminer-plugins.php")?new
Plugins(null):new
Adminer));SqlDriver::$drivers=array("server"=>"MySQL / MariaDB")+SqlDriver::$drivers;if(!defined('Adminer\DRIVER')){define('Adminer\DRIVER',"server");if(extension_loaded("mysqli")&&$_GET["ext"]!="pdo"){class
Db
extends
\MySQLi{static$instance;var$extension="MySQLi",$flavor='';function
__construct(){parent::init();}function
attach($O,$U,$F){mysqli_report(MYSQLI_REPORT_OFF);list($Hc,$Ce)=host_port($O);$sf=adminer()->connectSsl();if($sf)$this->ssl_set($sf['key'],$sf['cert'],$sf['ca'],'','');$K=@$this->real_connect(($O!=""?$Hc:ini_get("mysqli.default_host")),($O.$U!=""?$U:ini_get("mysqli.default_user")),($O.$U.$F!=""?$F:ini_get("mysqli.default_pw")),null,(is_numeric($Ce)?intval($Ce):ini_get("mysqli.default_port")),(is_numeric($Ce)?null:$Ce),($sf?($sf['verify']!==false?2048:64):0));$this->options(MYSQLI_OPT_LOCAL_INFILE,0);return($K?'':$this->error);}function
set_charset($Ga){if(parent::set_charset($Ga))return
true;parent::set_charset('utf8');return$this->query("SET NAMES $Ga");}function
next_result(){return
self::more_results()&&parent::next_result();}function
quote($Q){return"'".$this->escape_string($Q)."'";}}}elseif(extension_loaded("mysql")&&!((ini_bool("sql.safe_mode")||ini_bool("mysql.allow_local_infile"))&&extension_loaded("pdo_mysql"))){class
Db
extends
SqlDb{private$link;function
attach($O,$U,$F){if(ini_bool("mysql.allow_local_infile"))return
lang(47,"'mysql.allow_local_infile'","MySQLi","PDO_MySQL");$this->link=@mysql_connect(($O!=""?$O:ini_get("mysql.default_host")),($O.$U!=""?$U:ini_get("mysql.default_user")),($O.$U.$F!=""?$F:ini_get("mysql.default_password")),true,131072);if(!$this->link)return
mysql_error();$this->server_info=mysql_get_server_info($this->link);return'';}function
set_charset($Ga){return
mysql_set_charset($Ga,$this->link)||mysql_set_charset('utf8',$this->link);}function
quote($Q){return"'".mysql_real_escape_string($Q,$this->link)."'";}function
select_db($jb){return
mysql_select_db($jb,$this->link);}function
query($I,$Xf=false){$J=@($Xf?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
Result($J);}}class
Result{var$num_rows;private$result;private$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->charsetnr=($K->blob?63:0);return$K;}}}elseif(extension_loaded("pdo_mysql")){class
Db
extends
PdoDb{var$extension="PDO_MySQL";function
attach($O,$U,$F){$C=array(\PDO::MYSQL_ATTR_LOCAL_INFILE=>false);$sf=adminer()->connectSsl();if($sf){if($sf['key'])$C[\PDO::MYSQL_ATTR_SSL_KEY]=$sf['key'];if($sf['cert'])$C[\PDO::MYSQL_ATTR_SSL_CERT]=$sf['cert'];if($sf['ca'])$C[\PDO::MYSQL_ATTR_SSL_CA]=$sf['ca'];if(isset($sf['verify']))$C[\PDO::MYSQL_ATTR_SSL_VERIFY_SERVER_CERT]=$sf['verify'];}list($Hc,$Ce)=host_port($O);return$this->dsn("mysql:charset=utf8".($Hc!=""?";host=$Hc":'').($Ce?(is_numeric($Ce)?";port=":";unix_socket=").$Ce:""),$U,$F,$C);}function
set_charset($Ga){return$this->query("SET NAMES $Ga");}function
select_db($jb){return$this->query("USE ".idf_escape($jb));}function
query($I,$Xf=false){$this->pdo->setAttribute(\PDO::MYSQL_ATTR_USE_BUFFERED_QUERY,!$Xf);return
parent::query($I,$Xf);}}}class
Driver
extends
SqlDriver{static$extensions=array("MySQLi","MySQL","PDO_MySQL");static$jush="sql";var$unsigned=array("unsigned","zerofill","unsigned zerofill");var$operators=array("=","<",">","<=",">=","!=","LIKE","LIKE %%","REGEXP","IN","FIND_IN_SET","IS NULL","NOT LIKE","NOT REGEXP","NOT IN","IS NOT NULL","SQL");var$functions=array("char_length","date","from_unixtime","lower","round","floor","ceil","sec_to_time","time_to_sec","upper");var$grouping=array("avg","count","count distinct","group_concat","max","min","sum");var$partitionBy=array("HASH","LINEAR HASH","KEY","LINEAR KEY","RANGE","LIST");static
function
connect($O,$U,$F){$g=parent::connect($O,$U,$F);if(is_string($g)){if(function_exists('iconv')&&!is_utf8($g)&&strlen($Ye=iconv("windows-1250","utf-8",$g))>strlen($g))$g=$Ye;return$g;}$g->set_charset(charset($g));$g->query("SET sql_quote_show_create = 1, autocommit = 1");$g->flavor=(preg_match('~MariaDB~',$g->server_info)?'maria':'mysql');add_driver(DRIVER,($g->flavor=='maria'?"MariaDB":"MySQL"));return$g;}function
__construct(Db$g){parent::__construct($g);$this->types=array(lang(48)=>array("tinyint"=>3,"smallint"=>5,"mediumint"=>8,"int"=>10,"bigint"=>20,"decimal"=>66,"float"=>12,"double"=>21),lang(49)=>array("date"=>10,"datetime"=>19,"timestamp"=>19,"time"=>10,"year"=>4),lang(50)=>array("char"=>255,"varchar"=>65535,"tinytext"=>255,"text"=>65535,"mediumtext"=>16777215,"longtext"=>4294967295),lang(51)=>array("enum"=>65535,"set"=>64),lang(52)=>array("bit"=>20,"binary"=>255,"varbinary"=>65535,"tinyblob"=>255,"blob"=>65535,"mediumblob"=>16777215,"longblob"=>4294967295),lang(53)=>array("geometry"=>0,"point"=>0,"linestring"=>0,"polygon"=>0,"multipoint"=>0,"multilinestring"=>0,"multipolygon"=>0,"geometrycollection"=>0),);$this->insertFunctions=array("char"=>"md5/sha1/password/encrypt/uuid","binary"=>"md5/sha1","date|time"=>"now",);$this->editFunctions=array(number_type()=>"+/-","date"=>"+ interval/- interval","time"=>"addtime/subtime","char|text"=>"concat",);if(min_version('5.7.8',10.2,$g))$this->types[lang(50)]["json"]=4294967295;if(min_version('',10.7,$g)){$this->types[lang(50)]["uuid"]=128;$this->insertFunctions['uuid']='uuid';}if(min_version('',10.5,$g)){$this->types[lang(54)]["inet6"]=39;if(min_version('','10.10',$g))$this->types[lang(54)]["inet4"]=15;}if(min_version(9,11.7,$g))$this->types[lang(48)]["vector"]=16383;if(min_version(5.7,10.2,$g))$this->generated=array("STORED","VIRTUAL");}function
unconvertFunction(array$l){return(preg_match("~binary~",$l["type"])?"<code class='jush-sql'>UNHEX</code>":($l["type"]=="bit"?doc_link(array('sql'=>'bit-value-literals.html'),"<code>b''</code>"):($l["type"]=="vector"?"<code class='jush-sql'>".($this->conn->flavor=='maria'?"VEC_FromText":"STRING_TO_VECTOR")."</code>":(preg_match("~geometry|point|linestring|polygon~",$l["type"])?"<code class='jush-sql'>GeomFromText</code>":""))));}function
insert($R,array$P){return($P?parent::insert($R,$P):queries("INSERT INTO ".table($R)." ()\nVALUES ()"));}function
insertUpdate($R,array$M,array$Ge){$e=array_keys(reset($M));$Fe="INSERT INTO ".table($R)." (".implode(", ",$e).") VALUES\n";$og=array();foreach($e
as$u)$og[$u]="$u = VALUES($u)";$yf="\nON DUPLICATE KEY UPDATE ".implode(", ",$og);$og=array();$v=0;foreach($M
as$P){$X="(".implode(", ",$P).")";if($og&&(strlen($Fe)+$v+strlen($X)+strlen($yf)>1e6)){if(!queries($Fe.implode(",\n",$og).$yf))return
false;$og=array();$v=0;}$og[]=$X;$v+=strlen($X)+2;}return
queries($Fe.implode(",\n",$og).$yf);}function
slowQuery($I,$Jf){if(min_version('5.7.8','10.1.2')){if($this->conn->flavor=='maria')return"SET STATEMENT max_statement_time=$Jf FOR $I";elseif(preg_match('~^(SELECT\b)(.+)~is',$I,$z))return"$z[1] /*+ MAX_EXECUTION_TIME(".($Jf*1000).") */ $z[2]";}}function
convertSearch($s,array$W,array$l){return(preg_match('~char|text|enum|set~',$l["type"])&&!preg_match("~^utf8~",$l["collation"])&&preg_match('~[\x80-\xFF]~',$W['val'])?"CONVERT($s USING ".charset($this->conn).")":$s);}function
quoteBinary($Ye){return"X".q(bin2hex($Ye));}function
warnings(){$J=$this->conn->query("SHOW WARNINGS");if($J&&$J->num_rows){ob_start();print_select_result($J);return
ob_get_clean();}}function
tableHelp($A,$ed=false){$_d=($this->conn->flavor=='maria');if(information_schema(DB))return
strtolower("information-schema-".($_d?"$A-table/":str_replace("_","-",$A)."-table.html"));if(DB=="mysql")return($_d?"mysql$A-table/":"system-schema.html");}function
partitionsInfo($R){$pc="FROM information_schema.PARTITIONS WHERE TABLE_SCHEMA = ".q(DB)." AND TABLE_NAME = ".q($R);$J=$this->conn->query("SELECT PARTITION_METHOD, PARTITION_EXPRESSION, PARTITION_ORDINAL_POSITION $pc ORDER BY PARTITION_ORDINAL_POSITION DESC LIMIT 1");$K=array();list($K["partition_by"],$K["partition"],$K["partitions"])=$J->fetch_row();$xe=get_key_vals("SELECT PARTITION_NAME, PARTITION_DESCRIPTION $pc AND PARTITION_NAME != '' ORDER BY PARTITION_ORDINAL_POSITION");$K["partition_names"]=array_keys($xe);$K["partition_values"]=array_values($xe);return$K;}function
hasCStyleEscapes(){static$Ea;if($Ea===null){$rf=get_val("SHOW VARIABLES LIKE 'sql_mode'",1,$this->conn);$Ea=(strpos($rf,'NO_BACKSLASH_ESCAPES')===false);}return$Ea;}function
engines(){$K=array();foreach(get_rows("SHOW ENGINES")as$L){if(preg_match("~YES|DEFAULT~",$L["Support"]))$K[]=$L["Engine"];}return$K;}function
indexAlgorithms(array$Bf){return(preg_match('~^(MEMORY|NDB)$~',$Bf["Engine"])?array("HASH","BTREE"):array());}}function
idf_escape($s){return"`".str_replace("`","``",$s)."`";}function
table($s){return
idf_escape($s);}function
get_databases($gc){$K=get_session("dbs");if($K===null){$I="SELECT SCHEMA_NAME FROM information_schema.SCHEMATA ORDER BY SCHEMA_NAME";$K=($gc?slow_query($I):get_vals($I));restart_session();set_session("dbs",$K);stop_session();}return$K;}function
limit($I,$Z,$w,$de=0,$gf=" "){return" $I$Z".($w?$gf."LIMIT $w".($de?" OFFSET $de":""):"");}function
limit1($R,$I,$Z,$gf="\n"){return
limit($I,$Z,1,0,$gf);}function
db_collation($i,array$Pa){$K=null;$bb=get_val("SHOW CREATE DATABASE ".idf_escape($i),1);if(preg_match('~ COLLATE ([^ ]+)~',$bb,$z))$K=$z[1];elseif(preg_match('~ CHARACTER SET ([^ ]+)~',$bb,$z))$K=$Pa[$z[1]][-1];return$K;}function
logged_user(){return
get_val("SELECT USER()");}function
tables_list(){return
get_key_vals("SELECT TABLE_NAME, TABLE_TYPE FROM information_schema.TABLES WHERE TABLE_SCHEMA = DATABASE() ORDER BY TABLE_NAME");}function
count_tables(array$kb){$K=array();foreach($kb
as$i)$K[$i]=count(get_vals("SHOW TABLES IN ".idf_escape($i)));return$K;}function
table_status($A="",$Wb=false){$K=array();foreach(get_rows($Wb?"SELECT TABLE_NAME AS Name, ENGINE AS Engine, TABLE_COMMENT AS Comment FROM information_schema.TABLES WHERE TABLE_SCHEMA = DATABASE() ".($A!=""?"AND TABLE_NAME = ".q($A):"ORDER BY Name"):"SHOW TABLE STATUS".($A!=""?" LIKE ".q(addcslashes($A,"%_\\")):""))as$L){if($L["Engine"]=="InnoDB")$L["Comment"]=preg_replace('~(?:(.+); )?InnoDB free: .*~','\1',$L["Comment"]);if(!isset($L["Engine"]))$L["Comment"]="";if($A!="")$L["Name"]=$A;$K[$L["Name"]]=$L;}return$K;}function
is_view(array$S){return$S["Engine"]===null;}function
fk_support(array$S){return
preg_match('~InnoDB|IBMDB2I'.(min_version(5.6)?'|NDB':'').'~i',$S["Engine"]);}function
fields($R){$_d=(connection()->flavor=='maria');$K=array();foreach(get_rows("SELECT * FROM information_schema.COLUMNS WHERE TABLE_SCHEMA = DATABASE() AND TABLE_NAME = ".q($R)." ORDER BY ORDINAL_POSITION")as$L){$l=$L["COLUMN_NAME"];$T=$L["COLUMN_TYPE"];$tc=$L["GENERATION_EXPRESSION"];$Ub=$L["EXTRA"];preg_match('~^(VIRTUAL|PERSISTENT|STORED)~',$Ub,$sc);preg_match('~^([^( ]+)(?:\((.+)\))?( unsigned)?( zerofill)?$~',$T,$Bd);$j=$L["COLUMN_DEFAULT"];if($j!=""){$dd=preg_match('~text|json~',$Bd[1]);if(!$_d&&$dd)$j=preg_replace("~^(_\w+)?('.*')$~",'\2',stripslashes($j));if($_d||$dd){$j=($j=="NULL"?null:preg_replace_callback("~^'(.*)'$~",function($z){return
stripslashes(str_replace("''","'",$z[1]));},$j));}if(!$_d&&preg_match('~binary~',$Bd[1])&&preg_match('~^0x(\w*)$~',$j,$z))$j=pack("H*",$z[1]);}$K[$l]=array("field"=>$l,"full_type"=>$T,"type"=>$Bd[1],"length"=>$Bd[2],"unsigned"=>ltrim($Bd[3].$Bd[4]),"default"=>($sc?($_d?$tc:stripslashes($tc)):$j),"null"=>($L["IS_NULLABLE"]=="YES"),"auto_increment"=>($Ub=="auto_increment"),"on_update"=>(preg_match('~\bon update (\w+)~i',$Ub,$z)?$z[1]:""),"collation"=>$L["COLLATION_NAME"],"privileges"=>array_flip(explode(",","$L[PRIVILEGES],where,order")),"comment"=>$L["COLUMN_COMMENT"],"primary"=>($L["COLUMN_KEY"]=="PRI"),"generated"=>($sc[1]=="PERSISTENT"?"STORED":$sc[1]),);}return$K;}function
indexes($R,$h=null){$K=array();foreach(get_rows("SHOW INDEX FROM ".table($R),$h)as$L){$A=$L["Key_name"];$K[$A]["type"]=($A=="PRIMARY"?"PRIMARY":($L["Index_type"]=="FULLTEXT"?"FULLTEXT":($L["Non_unique"]?(preg_match('~^(SPATIAL|VECTOR)$~',$L["Index_type"])?$L["Index_type"]:"INDEX"):"UNIQUE")));$K[$A]["columns"][]=$L["Column_name"];$K[$A]["lengths"][]=($L["Index_type"]=="SPATIAL"?null:$L["Sub_part"]);$K[$A]["descs"][]=null;$K[$A]["algorithm"]=$L["Index_type"];}return$K;}function
foreign_keys($R){static$ze='(?:`(?:[^`]|``)+`|"(?:[^"]|"")+")';$K=array();$cb=get_val("SHOW CREATE TABLE ".table($R),1);if($cb){preg_match_all("~CONSTRAINT ($ze) FOREIGN KEY ?\\(((?:$ze,? ?)+)\\) REFERENCES ($ze)(?:\\.($ze))? \\(((?:$ze,? ?)+)\\)(?: ON DELETE (".driver()->onActions."))?(?: ON UPDATE (".driver()->onActions."))?~",$cb,$Cd,PREG_SET_ORDER);foreach($Cd
as$z){preg_match_all("~$ze~",$z[2],$pf);preg_match_all("~$ze~",$z[5],$Ef);$K[idf_unescape($z[1])]=array("db"=>idf_unescape($z[4]!=""?$z[3]:$z[4]),"table"=>idf_unescape($z[4]!=""?$z[4]:$z[3]),"source"=>array_map('Adminer\idf_unescape',$pf[0]),"target"=>array_map('Adminer\idf_unescape',$Ef[0]),"on_delete"=>($z[6]?:"RESTRICT"),"on_update"=>($z[7]?:"RESTRICT"),);}}return$K;}function
view($A){return
array("select"=>preg_replace('~^(?:[^`]|`[^`]*`)*\s+AS\s+~isU','',get_val("SHOW CREATE VIEW ".table($A),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$u=>$W)sort($K[$u]);return$K;}function
information_schema($i){return($i=="information_schema")||(min_version(5.5)&&$i=="performance_schema");}function
error(){return
h(preg_replace('~^You have an error.*syntax to use~U',"Syntax error",connection()->error));}function
create_database($i,$Oa){return
queries("CREATE DATABASE ".idf_escape($i).($Oa?" COLLATE ".q($Oa):""));}function
drop_databases(array$kb){$K=apply_queries("DROP DATABASE",$kb,'Adminer\idf_escape');restart_session();set_session("dbs",null);return$K;}function
rename_database($A,$Oa){$K=false;if(create_database($A,$Oa)){$Df=array();$rg=array();foreach(tables_list()as$R=>$T){if($T=='VIEW')$rg[]=$R;else$Df[]=$R;}$K=(!$Df&&!$rg)||move_tables($Df,$rg,$A);drop_databases($K?array(DB):array());}return$K;}function
auto_increment(){$sa=" PRIMARY KEY";if($_GET["create"]!=""&&$_POST["auto_increment_col"]){foreach(indexes($_GET["create"])as$Qc){if(in_array($_POST["fields"][$_POST["auto_increment_col"]]["orig"],$Qc["columns"],true)){$sa="";break;}if($Qc["type"]=="PRIMARY")$sa=" UNIQUE";}}return" AUTO_INCREMENT$sa";}function
alter_table($R,$A,array$m,array$ic,$Sa,$Hb,$Oa,$ra,$we){$ja=array();foreach($m
as$l){if($l[1]){$j=$l[1][3];if(preg_match('~ GENERATED~',$j)){$l[1][3]=(connection()->flavor=='maria'?"":$l[1][2]);$l[1][2]=$j;}$ja[]=($R!=""?($l[0]!=""?"CHANGE ".idf_escape($l[0]):"ADD"):" ")." ".implode($l[1]).($R!=""?$l[2]:"");}else$ja[]="DROP ".idf_escape($l[0]);}$ja=array_merge($ja,$ic);$uf=($Sa!==null?" COMMENT=".q($Sa):"").($Hb?" ENGINE=".q($Hb):"").($Oa?" COLLATE ".q($Oa):"").($ra!=""?" AUTO_INCREMENT=$ra":"");if($we){$xe=array();if($we["partition_by"]=='RANGE'||$we["partition_by"]=='LIST'){foreach($we["partition_names"]as$u=>$W){$X=$we["partition_values"][$u];$xe[]="\n  PARTITION ".idf_escape($W)." VALUES ".($we["partition_by"]=='RANGE'?"LESS THAN":"IN").($X!=""?" ($X)":" MAXVALUE");}}$uf
.="\nPARTITION BY $we[partition_by]($we[partition])";if($xe)$uf
.=" (".implode(",",$xe)."\n)";elseif($we["partitions"])$uf
.=" PARTITIONS ".(+$we["partitions"]);}elseif($we===null)$uf
.="\nREMOVE PARTITIONING";if($R=="")return
queries("CREATE TABLE ".table($A)." (\n".implode(",\n",$ja)."\n)$uf");if($R!=$A)$ja[]="RENAME TO ".table($A);if($uf)$ja[]=ltrim($uf);return($ja?queries("ALTER TABLE ".table($R)."\n".implode(",\n",$ja)):true);}function
alter_indexes($R,$ja){$Fa=array();foreach($ja
as$W)$Fa[]=($W[2]=="DROP"?"\nDROP INDEX ".idf_escape($W[1]):"\nADD $W[0] ".($W[0]=="PRIMARY"?"KEY ":"").($W[1]!=""?idf_escape($W[1])." ":"")."(".implode(", ",$W[2]).")");return
queries("ALTER TABLE ".table($R).implode(",",$Fa));}function
truncate_tables(array$Df){return
apply_queries("TRUNCATE TABLE",$Df);}function
drop_views(array$rg){return
queries("DROP VIEW ".implode(", ",array_map('Adminer\table',$rg)));}function
drop_tables(array$Df){return
queries("DROP TABLE ".implode(", ",array_map('Adminer\table',$Df)));}function
move_tables(array$Df,array$rg,$Ef){$Te=array();foreach($Df
as$R)$Te[]=table($R)." TO ".idf_escape($Ef).".".table($R);if(!$Te||queries("RENAME TABLE ".implode(", ",$Te))){$nb=array();foreach($rg
as$R)$nb[table($R)]=view($R);connection()->select_db($Ef);$i=idf_escape(DB);foreach($nb
as$A=>$qg){if(!queries("CREATE VIEW $A AS ".str_replace(" $i."," ",$qg["select"]))||!queries("DROP VIEW $i.$A"))return
false;}return
true;}return
false;}function
copy_tables(array$Df,array$rg,$Ef){queries("SET sql_mode = 'NO_AUTO_VALUE_ON_ZERO'");foreach($Df
as$R){$A=($Ef==DB?table("copy_$R"):idf_escape($Ef).".".table($R));if(($_POST["overwrite"]&&!queries("\nDROP TABLE IF EXISTS $A"))||!queries("CREATE TABLE $A LIKE ".table($R))||!queries("INSERT INTO $A SELECT * FROM ".table($R)))return
false;foreach(get_rows("SHOW TRIGGERS LIKE ".q(addcslashes($R,"%_\\")))as$L){$Uf=$L["Trigger"];if(!queries("CREATE TRIGGER ".($Ef==DB?idf_escape("copy_$Uf"):idf_escape($Ef).".".idf_escape($Uf))." $L[Timing] $L[Event] ON $A FOR EACH ROW\n$L[Statement];"))return
false;}}foreach($rg
as$R){$A=($Ef==DB?table("copy_$R"):idf_escape($Ef).".".table($R));$qg=view($R);if(($_POST["overwrite"]&&!queries("DROP VIEW IF EXISTS $A"))||!queries("CREATE VIEW $A AS $qg[select]"))return
false;}return
true;}function
trigger($A,$R){if($A=="")return
array();$M=get_rows("SHOW TRIGGERS WHERE `Trigger` = ".q($A));return
reset($M);}function
triggers($R){$K=array();foreach(get_rows("SHOW TRIGGERS LIKE ".q(addcslashes($R,"%_\\")))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($A,$T){$m=get_rows("SELECT
	PARAMETER_NAME field,
	DATA_TYPE type,
	REGEXP_REPLACE(DTD_IDENTIFIER, '^[^(]+\\\\(?|\\\\)$', '') length,
	REGEXP_REPLACE(DTD_IDENTIFIER, '^[^ ]+ ', '') `unsigned`,
	1 `null`,
	DTD_IDENTIFIER full_type,
	".($T=="FUNCTION"?"''":"PARAMETER_MODE")." `inout`,
	CHARACTER_SET_NAME collation
FROM information_schema.PARAMETERS
WHERE SPECIFIC_SCHEMA = DATABASE() AND ROUTINE_TYPE = '$T' AND SPECIFIC_NAME = ".q($A)."
ORDER BY ORDINAL_POSITION");$K=connection()->query("SELECT
	ROUTINE_COMMENT comment,
	CONCAT(IF(IS_DETERMINISTIC = 'YES', 'DETERMINISTIC\\n', ''), IF(SQL_DATA_ACCESS != 'CONTAINS SQL', CONCAT(SQL_DATA_ACCESS, '\\n'), ''), ROUTINE_DEFINITION) definition,
	'SQL' language
FROM information_schema.ROUTINES
WHERE ROUTINE_SCHEMA = DATABASE() AND ROUTINE_TYPE = '$T' AND ROUTINE_NAME = ".q($A))->fetch_assoc();if($m&&$m[0]['field']=='')$K['returns']=array_shift($m);$K['fields']=$m;return$K;}function
routines(){return
get_rows("SELECT SPECIFIC_NAME, ROUTINE_NAME, ROUTINE_TYPE, DTD_IDENTIFIER FROM information_schema.ROUTINES WHERE ROUTINE_SCHEMA = DATABASE()");}function
routine_languages(){return
array();}function
routine_id($A,array$L){return
idf_escape($A);}function
last_id($J){return
get_val("SELECT LAST_INSERT_ID()");}function
explain(Db$g,$I){return$g->query("EXPLAIN ".(min_version(5.7)?"":"PARTITIONS ").$I);}function
found_rows(array$S,array$Z){return($Z||$S["Engine"]!="InnoDB"?null:$S["Rows"]);}function
create_sql($R,$ra,$wf){$K=get_val("SHOW CREATE TABLE ".table($R),1);if(!$ra)$K=preg_replace('~ AUTO_INCREMENT=\d+~','',$K);return$K;}function
truncate_sql($R){return"TRUNCATE ".table($R);}function
use_sql($jb,$wf=""){$A=idf_escape($jb);$K="";if(preg_match('~CREATE~',$wf)&&($bb=get_val("SHOW CREATE DATABASE $A",1))){set_utf8mb4($bb);if($wf=="DROP+CREATE")$K="DROP DATABASE IF EXISTS $A;\n";$K
.="$bb;\n";}return$K."USE $A";}function
trigger_sql($R){$K="";foreach(get_rows("SHOW TRIGGERS LIKE ".q(addcslashes($R,"%_\\")),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_rows("SHOW VARIABLES");}function
show_status(){return
get_rows("SHOW STATUS");}function
process_list(){return
get_rows("SHOW FULL PROCESSLIST");}function
convert_field(array$l){if(preg_match("~binary~",$l["type"]))return"HEX(".idf_escape($l["field"]).")";if($l["type"]=="bit")return"BIN(".idf_escape($l["field"])." + 0)";if($l["type"]=="vector")return(connection()->flavor=='maria'?"VEC_ToText":"VECTOR_TO_STRING")."(".idf_escape($l["field"]).")";if(preg_match("~geometry|point|linestring|polygon~",$l["type"]))return(min_version(8)?"ST_":"")."AsWKT(".idf_escape($l["field"]).")";}function
unconvert_field(array$l,$K){if(preg_match("~binary~",$l["type"]))$K="UNHEX($K)";if($l["type"]=="bit")$K="CONVERT(b$K, UNSIGNED)";if($l["type"]=="vector")$K=(connection()->flavor=='maria'?"VEC_FromText":"STRING_TO_VECTOR")."($K)";if(preg_match("~geometry|point|linestring|polygon~",$l["type"])){$Fe=(min_version(8)?"ST_":"");$K=$Fe."GeomFromText($K, $Fe"."SRID($l[field]))";}return$K;}function
support($Xb){return
preg_match('~^(comment|columns|copy|database|drop_col|dump|event|indexes|kill|privileges|move_col|procedure|processlist|routine|sql|status|table|trigger|variables|view'.(min_version(8)?'|descidx':'').(min_version('8.0.16','10.2.1')?'|check':'').')$~',$Xb);}function
kill_process($r){return
queries("KILL ".number($r));}function
connection_id(){return"SELECT CONNECTION_ID()";}function
max_connections(){return
get_val("SELECT @@max_connections");}function
types(){return
array();}function
type_values($r){return"";}function
schemas(){return
array();}function
get_schema(){return"";}function
set_schema($Ze,$h=null){return
true;}}define('Adminer\JUSH',Driver::$jush);define('Adminer\SERVER',"".$_GET[DRIVER]);define('Adminer\DB',"$_GET[db]");define('Adminer\ME',preg_replace('~\?.*~','',relative_uri()).'?'.(sid()?SID.'&':'').(SERVER!==null?DRIVER."=".urlencode(SERVER).'&':'').($_GET["ext"]?"ext=".urlencode($_GET["ext"]).'&':'').(isset($_GET["username"])?"username=".urlencode($_GET["username"]).'&':'').(DB!=""?'db='.urlencode(DB).'&'.(isset($_GET["ns"])?"ns=".urlencode($_GET["ns"])."&":""):''));function
page_header($Kf,$k="",$Da=array(),$Lf=""){page_headers();if(is_ajax()&&$k){page_messages($k);exit;}if(!ob_get_level())ob_start('ob_gzhandler',4096);$Mf=$Kf.($Lf!=""?": $Lf":"");$Nf=strip_tags($Mf.(SERVER!=""&&SERVER!="localhost"?h(" - ".SERVER):"")." - ".adminer()->name());echo'<!DOCTYPE html>
<html lang="',LANG,'" dir="',lang(55),'">
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<meta name="robots" content="noindex">
<meta name="viewport" content="width=device-width,initial-scale=1">
<title>',$Nf,'</title>
<link rel="stylesheet" href="',h(preg_replace("~\\?.*~","",ME)."?file=default.css&version=5.5.1"),'">
';$fb=adminer()->css();if(is_int(key($fb)))$fb=array_fill_keys($fb,'light');$Ac=in_array('light',$fb)||in_array('',$fb);$yc=in_array('dark',$fb)||in_array('',$fb);$hb=($Ac?($yc?null:false):($yc?:null));$Kd=" media='(prefers-color-scheme: dark)'";if($hb!==false)echo"<link rel='stylesheet'".($hb?"":$Kd)." href='".h(preg_replace("~\\?.*~","",ME)."?file=dark.css&version=5.5.1")."'>\n";echo"<meta name='color-scheme' content='".($hb===null?"light dark":($hb?"dark":"light"))."'>\n",script_src(preg_replace("~\\?.*~","",ME)."?file=functions.js&version=5.5.1");if(adminer()->head($hb))echo"<link rel='icon' href='data:image/gif;base64,R0lGODlhEAAQAJEAAAQCBPz+/PwCBAROZCH5BAEAAAAALAAAAAAQABAAAAI2hI+pGO1rmghihiUdvUBnZ3XBQA7f05mOak1RWXrNq5nQWHMKvuoJ37BhVEEfYxQzHjWQ5qIAADs='>\n","<link rel='apple-touch-icon' href='".h(preg_replace("~\\?.*~","",ME)."?file=logo.png&version=5.5.1")."'>\n";foreach($fb
as$ig=>$Td){$b=($Td=='dark'&&!$hb?$Kd:($Td=='light'&&$yc?" media='(prefers-color-scheme: light)'":""));echo"<link rel='stylesheet'$b href='".h($ig)."'>\n";}echo"\n<body class='".lang(55)." nojs";adminer()->bodyClass();echo"'>\n",script("mixin(document.body, {onkeydown: bodyKeydown, onclick: bodyClick".(isset($_COOKIE["adminer_version"])?"":", onload: partial(verifyVersion, '".VERSION."')")."});
document.body.classList.replace('nojs', 'js');
if (!window.isSecureContext) {
	document.body.classList.add('insecure');
}
const offlineMessage = '".js_escape(lang(56))."';
const thousandsSeparator = '".js_escape(lang(4))."';"),"<div id='help' class='jush-".JUSH." jsonly hidden'></div>\n",script("mixin(qs('#help'), {onmouseover: () => { helpOpen = 1; }, onmouseout: helpMouseout});"),"<div id='content'>\n","<span id='menuopen' class='jsonly'>".icon("move","","menu","")."</span>".script("qs('#menuopen').onclick = event => { qs('#foot').classList.toggle('foot'); event.stopPropagation(); }");if($Da!==null){$x=substr(preg_replace('~\b(username|db|ns)=[^&]*&~','',ME),0,-1);echo'<p id="breadcrumb"><a href="'.h($x?:".").'">'.get_driver(DRIVER).'</a> » ';$x=substr(preg_replace('~\b(db|ns)=[^&]*&~','',ME),0,-1);$O=adminer()->serverName(SERVER);$O=($O!=""?$O:lang(57));if($Da===false)echo"$O\n";else{echo"<a href='".h($x)."' accesskey='1' title='Alt+Shift+1'>$O</a> » ";if($_GET["ns"]!=""||(DB!=""&&is_array($Da)))echo'<a href="'.h($x."&db=".urlencode(DB).(support("scheme")?"&ns=":"")).'">'.h(DB).'</a> » ';if(is_array($Da)){if($_GET["ns"]!="")echo'<a href="'.h(substr(ME,0,-1)).'">'.h($_GET["ns"]).'</a> » ';foreach($Da
as$u=>$W){$pb=(is_array($W)?$W[1]:h($W));if($pb!="")echo"<a href='".h(ME."$u=").urlencode(is_array($W)?$W[0]:$W)."'>$pb</a> » ";}}echo"$Kf\n";}}echo"<h2>$Mf</h2>\n","<div id='ajaxstatus' class='jsonly hidden'></div>\n";restart_session();page_messages($k);$kb=&get_session("dbs");if(DB!=""&&$kb&&!in_array(DB,$kb,true))$kb=null;stop_session();define('Adminer\PAGE_HEADER',1);}function
page_headers(){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(adminer()->csp(csp())as$eb){$Bc=array();foreach($eb
as$u=>$W)$Bc[]="$u $W";header("Content-Security-Policy: ".implode("; ",$Bc));}adminer()->headers();}function
csp(){return
array(array("script-src"=>"'self' 'unsafe-inline' 'nonce-".get_nonce()."' 'strict-dynamic'","connect-src"=>"'self' https://www.adminer.org","frame-src"=>"'none'","object-src"=>"'none'","base-uri"=>"'none'","form-action"=>"'self'",),);}function
get_nonce(){static$be;if(!$be)$be=base64_encode(rand_string());return$be;}function
page_messages($k){$hg=preg_replace('~^[^?]*~','',$_SERVER["REQUEST_URI"]);$Nd=idx($_SESSION["messages"],$hg);if($Nd){echo"<div class='message'>".implode("</div>\n<div class='message'>",$Nd)."</div>".script("messagesPrint();");unset($_SESSION["messages"][$hg]);}if($k)echo"<div class='error'>$k</div>\n";if(adminer()->error)echo"<div class='error'>".adminer()->error."</div>\n";}function
page_footer($Sd=""){echo"</div>\n\n<div id='foot' class='foot'>\n<div id='menu'>\n";adminer()->navigation($Sd);echo"</div>\n";if($Sd!="auth")echo'<form action="" method="post">
<p class="logout">
<span>',h($_GET["username"])."\n",'</span>
<input type="submit" name="logout" value="',lang(58),'" id="logout">
',input_token(),'</form>
';echo"</div>\n\n",script("setupSubmitHighlight(document);");}function
int32($_){while($_>=2147483648)$_-=4294967296;while($_<=-2147483649)$_+=4294967296;return(int)$_;}function
long2str(array$V,$tg){$Ye='';foreach($V
as$W)$Ye
.=pack('V',$W);if($tg)return
substr($Ye,0,end($V));return$Ye;}function
str2long($Ye,$tg){$V=array_values(unpack('V*',str_pad($Ye,4*ceil(strlen($Ye)/4),"\0")));if($tg)$V[]=strlen($Ye);return$V;}function
xxtea_mx($xg,$wg,$zf,$hd){return
int32((($xg>>5&0x7FFFFFF)^$wg<<2)+(($wg>>3&0x1FFFFFFF)^$xg<<4))^int32(($zf^$wg)+($hd^$xg));}function
encrypt_string($vf,$u){if($vf=="")return"";$u=array_values(unpack("V*",pack("H*",md5($u))));$V=str2long($vf,true);$_=count($V)-1;$xg=$V[$_];$wg=$V[0];$Ke=floor(6+52/($_+1));$zf=0;while($Ke-->0){$zf=int32($zf+0x9E3779B9);$Ab=$zf>>2&3;for($re=0;$re<$_;$re++){$wg=$V[$re+1];$Wd=xxtea_mx($xg,$wg,$zf,$u[$re&3^$Ab]);$xg=int32($V[$re]+$Wd);$V[$re]=$xg;}$wg=$V[0];$Wd=xxtea_mx($xg,$wg,$zf,$u[$re&3^$Ab]);$xg=int32($V[$_]+$Wd);$V[$_]=$xg;}return
long2str($V,false);}function
decrypt_string($vf,$u){if($vf=="")return"";if(!$u)return
false;$u=array_values(unpack("V*",pack("H*",md5($u))));$V=str2long($vf,false);$_=count($V)-1;$xg=$V[$_];$wg=$V[0];$Ke=floor(6+52/($_+1));$zf=int32($Ke*0x9E3779B9);while($zf){$Ab=$zf>>2&3;for($re=$_;$re>0;$re--){$xg=$V[$re-1];$Wd=xxtea_mx($xg,$wg,$zf,$u[$re&3^$Ab]);$wg=int32($V[$re]-$Wd);$V[$re]=$wg;}$xg=$V[$_];$Wd=xxtea_mx($xg,$wg,$zf,$u[$re&3^$Ab]);$wg=int32($V[0]-$Wd);$V[0]=$wg;$zf=int32($zf-0x9E3779B9);}return
long2str($V,true);}$G=array();if($_COOKIE["adminer_permanent"]){foreach(explode(" ",$_COOKIE["adminer_permanent"])as$W){list($u)=explode(":",$W);$G[$u]=$W;}}function
add_invalid_login(){$ya=get_temp_dir()."/adminer-invalid";foreach(glob("$ya*")?:array($ya)as$ac){$n=file_open_lock($ac);if($n)break;}if(!$n)$n=file_open_lock("$ya-".rand_string());if(!$n)return;$Zc=json_decode(stream_get_contents($n),true);$If=time();if($Zc){foreach($Zc
as$ad=>$W){if($W[0]<$If)unset($Zc[$ad]);}}$Yc=&$Zc[adminer()->bruteForceKey()];if(!$Yc)$Yc=array($If+30*60,0);$Yc[1]++;file_write_unlock($n,json_encode($Zc));}function
check_invalid_login(array&$G){$Zc=array();foreach(glob(get_temp_dir()."/adminer-invalid*")as$ac){$n=file_open_lock($ac);if($n){$Zc=json_decode(stream_get_contents($n),true);file_unlock($n);break;}}$Yc=idx($Zc,adminer()->bruteForceKey(),array());$ae=($Yc[1]>29?$Yc[0]-time():0);if($ae>0)auth_error(lang(59,ceil($ae/60)),$G);}$qa=$_POST["auth"];if($qa){session_regenerate_id();$Y=$qa["driver"];$O=$qa["server"];$U=$qa["username"];$F=(string)$qa["password"];$i=$qa["db"];set_password($Y,$O,$U,$F);$_SESSION["db"][$Y][$O][$U][$i]=true;if($qa["permanent"]){$u=implode("-",array_map('base64_encode',array($Y,$O,$U,$i)));$Ie=adminer()->permanentLogin(true);$G[$u]="$u:".base64_encode($Ie?encrypt_string($F,$Ie):"");cookie("adminer_permanent",implode(" ",$G));}if(count($_POST)==1||DRIVER!=$Y||SERVER!=$O||$_GET["username"]!==$U||DB!=$i)redirect(auth_url($Y,$O,$U,$i));}elseif($_POST["logout"]&&(!$_SESSION["token"]||verify_token())){foreach(array("pwds","db","dbs","queries")as$u)set_session($u,null);unset_permanent($G);redirect(substr(preg_replace('~\b(username|db|ns)=[^&]*&~','',ME),0,-1),lang(60).' '.lang(61));}elseif($G&&!$_SESSION["pwds"]){session_regenerate_id();$Ie=adminer()->permanentLogin();foreach($G
as$u=>$W){list(,$Ka)=explode(":",$W);list($Y,$O,$U,$i)=array_map('base64_decode',explode("-",$u));set_password($Y,$O,$U,decrypt_string(base64_decode($Ka),$Ie));$_SESSION["db"][$Y][$O][$U][$i]=true;}}function
unset_permanent(array&$G){foreach($G
as$u=>$W){list($Y,$O,$U,$i)=array_map('base64_decode',explode("-",$u));if($Y==DRIVER&&$O==SERVER&&$U==$_GET["username"]&&$i==DB)unset($G[$u]);}cookie("adminer_permanent",implode(" ",$G));}function
auth_error($k,array&$G){$jf=session_name();if(isset($_GET["username"])){header("HTTP/1.1 403 Forbidden");if(($_COOKIE[$jf]||$_GET[$jf])&&!$_SESSION["token"])$k=lang(62);else{restart_session();add_invalid_login();$F=get_password();if($F!==null){if($F===false)$k
.=($k?'<br>':'').lang(63,target_blank(),'<code>permanentLogin()</code>');set_password(DRIVER,SERVER,$_GET["username"],null);}unset_permanent($G);}}if(!$_COOKIE[$jf]&&$_GET[$jf]&&ini_bool("session.use_only_cookies"))$k=lang(64);$ue=session_get_cookie_params();cookie("adminer_key",($_COOKIE["adminer_key"]?:rand_string()),$ue["lifetime"]);if(!$_SESSION["token"])$_SESSION["token"]=rand(1,1e6);page_header(lang(27),$k,null);echo"<form action='' method='post'>\n","<div>";if(hidden_fields($_POST,array("auth")))echo"<p class='message'>".lang(65)."\n";echo"</div>\n";adminer()->loginForm();echo"</form>\n";page_footer("auth");exit;}if(isset($_GET["username"])&&!class_exists('Adminer\Db')){unset($_SESSION["pwds"][DRIVER]);unset_permanent($G);page_header(lang(66),lang(67,implode(", ",Driver::$extensions)),false);page_footer("auth");exit;}$g='';if(isset($_GET["username"])&&is_string(get_password())){list($Hc,$Ce)=host_port(SERVER);if(preg_match('~[^-\w.:/]~',$Hc.$Ce))auth_error(lang(68),$G);if(preg_match('~^-?\d+~',$Ce,$z)&&($z[0]<1024||$z[0]>65535))auth_error(lang(69),$G);check_invalid_login($G);$db=adminer()->credentials();$g=Driver::connect($db[0],$db[1],$db[2]);if(is_object($g)){Db::$instance=$g;Driver::$instance=new
Driver($g);if($g->flavor)save_settings(array("vendor-".DRIVER."-".SERVER=>get_driver(DRIVER)));}}$yd=null;if(!is_object($g)||($yd=adminer()->login($_GET["username"],get_password()))!==true){$k=(is_string($g)?nl_br(h($g)):(is_string($yd)?$yd:lang(70))).(preg_match('~^ | $~',get_password())?'<br>'.lang(71):'');auth_error($k,$G);}if($_POST["logout"]&&$_SESSION["token"]&&!verify_token()){page_header(lang(58),lang(72));page_footer("db");exit;}if(!$_SESSION["token"])$_SESSION["token"]=rand(1,1e6);stop_session(true);if($qa&&$_POST["token"])$_POST["token"]=get_token();$k='';if($_POST){if(!verify_token()){$Tc="max_input_vars";$Id=ini_get($Tc);if(extension_loaded("suhosin")){foreach(array("suhosin.request.max_vars","suhosin.post.max_vars")as$u){$W=ini_get($u);if($W&&(!$Id||$W<$Id)){$Tc=$u;$Id=$W;}}}$k=(!$_POST["token"]&&$Id?lang(73,"'$Tc'"):lang(72).' '.lang(74));}}elseif($_SERVER["REQUEST_METHOD"]=="POST"){$k=lang(75,"'post_max_size'");if(isset($_GET["sql"]))$k
.=' '.lang(76);}function
doc_link(array$ye,$Ff=""){return"";}function
email_header($Bc){return"=?UTF-8?B?".base64_encode($Bc)."?=";}function
send_mail($Db,$xf,$Md,$pc="",array$bc=array()){$Kb=PHP_EOL;$Md=str_replace("\n",$Kb,wordwrap(str_replace("\r","","$Md\n")));$Ca=uniqid("boundary");$pa="";foreach((array)$bc["error"]as$u=>$W){if(!$W)$pa
.="--$Ca$Kb"."Content-Type: ".str_replace("\n","",$bc["type"][$u]).$Kb."Content-Disposition: attachment; filename=\"".preg_replace('~["\n]~','',$bc["name"][$u])."\"$Kb"."Content-Transfer-Encoding: base64$Kb$Kb".chunk_split(base64_encode(file_get_contents($bc["tmp_name"][$u])),76,$Kb).$Kb;}$_a="";$Cc="Content-Type: text/plain; charset=utf-8$Kb"."Content-Transfer-Encoding: 8bit";if($pa){$pa
.="--$Ca--$Kb";$_a="--$Ca$Kb$Cc$Kb$Kb";$Cc="Content-Type: multipart/mixed; boundary=\"$Ca\"";}$Cc
.=$Kb."MIME-Version: 1.0$Kb"."X-Mailer: Adminer Editor".($pc?$Kb."From: ".str_replace("\n","",$pc):"");return
mail($Db,email_header($xf),$_a.$Md.$pa,$Cc);}function
like_bool(array$l){return$l["type"]=="bool"||(preg_match('~bit|tinyint~',$l["type"])&&$l["length"]==1);}connection()->select_db(adminer()->database());adminer()->afterConnect();add_driver(DRIVER,lang(27));if(isset($_GET["select"])&&($_POST["edit"]||$_POST["clone"])&&!$_POST["save"])$_GET["edit"]=$_GET["select"];if(isset($_GET["download"])){$a=$_GET["download"];$m=fields($a);header("Content-Type: application/octet-stream");header("Content-Disposition: attachment; filename=".friendly_url("$a-".implode("_",$_GET["where"])).".".friendly_url($_GET["field"]));$N=array(idf_escape($_GET["field"]));$J=driver()->select($a,$N,array(where($_GET,$m)),$N);$L=($J?$J->fetch_row():array());echo
driver()->value($L[0],$m[$_GET["field"]]);exit;}elseif(isset($_GET["edit"])){$a=$_GET["edit"];$m=fields($a);$Z=(isset($_GET["select"])?($_POST["check"]&&count($_POST["check"])==1?where_check($_POST["check"][0],$m):""):where($_GET,$m));$eg=(isset($_GET["select"])?$_POST["edit"]:$Z);foreach($m
as$A=>$l){if((!$eg&&!isset($l["privileges"]["insert"]))||adminer()->fieldName($l)=="")unset($m[$A]);}if($_POST&&!$k&&!isset($_GET["select"])){$y=$_POST["referer"];if($_POST["insert"])$y=($eg?null:$_SERVER["REQUEST_URI"]);elseif(!preg_match('~^.+&select=.+$~',$y))$y=ME."select=".urlencode($a);$t=indexes($a);$Zf=unique_array($_GET["where"],$t);$Ne="\nWHERE $Z";if(isset($_POST["delete"]))queries_redirect($y,lang(77),driver()->delete($a,$Ne,$Zf?0:1));else{$P=array();foreach($m
as$A=>$l){$W=process_input($l);if($W!==false&&$W!==null)$P[idf_escape($A)]=$W;}if($eg){if(!$P)redirect($y);queries_redirect($y,lang(78),driver()->update($a,$P,$Ne,$Zf?0:1));if(is_ajax()){page_headers();page_messages($k);exit;}}else{$J=driver()->insert($a,$P);$pd=($J?last_id($J):0);queries_redirect($y,lang(79,($pd?" $pd":"")),$J);}}}$L=null;if($Z){$N=array();foreach($m
as$A=>$l){if(isset($l["privileges"]["select"])){$na=($_POST["clone"]&&$l["auto_increment"]?"''":convert_field($l));$N[]=($na?"$na AS ":"").idf_escape($A);}}$L=array();if(!support("table"))$N=array("*");if($N){$J=driver()->select($a,$N,array($Z),$N,array(),(isset($_GET["select"])?2:1));if(!$J)$k=error();else{$L=$J->fetch_assoc();if(!$L)$L=false;}if(isset($_GET["select"])&&(!$L||$J->fetch_assoc()))$L=null;}}if(!support("table")&&!$m){if(!$Z){$J=driver()->select($a,array("*"),array(),array("*"));$L=($J?$J->fetch_assoc():false);if(!$L)$L=array(driver()->primary=>"");}if($L){foreach($L
as$u=>$W){if(!$Z)$L[$u]=null;$m[$u]=array("field"=>$u,"null"=>($u!=driver()->primary),"auto_increment"=>($u==driver()->primary));}}}if($_POST["save"])$L=(array)$_POST["fields"]+($L?$L:array());edit_form($a,$m,$L,$eg,$k);}elseif(isset($_GET["select"])){$a=$_GET["select"];$S=table_status1($a);$t=indexes($a);$m=fields($a);$mc=column_foreign_keys($a);$ee=$S["Oid"];$fa=get_settings("adminer_import");$Xe=array();$e=array();$bf=array();$ne=array();$Gf="";foreach($m
as$u=>$l){$A=adminer()->fieldName($l);$Xd=html_entity_decode(strip_tags($A),ENT_QUOTES);if(isset($l["privileges"]["select"])&&$A!=""){$e[$u]=$Xd;if(is_shortable($l))$Gf=adminer()->selectLengthProcess();}if(isset($l["privileges"]["where"])&&$A!="")$bf[$u]=$Xd;if(isset($l["privileges"]["order"])&&$A!="")$ne[$u]=$Xd;$Xe+=$l["privileges"];}list($N,$p)=adminer()->selectColumnsProcess($e,$t);$N=array_unique($N);$p=array_unique($p);$bd=count($p)<count($N);$Z=adminer()->selectSearchProcess($m,$t);$D=adminer()->selectOrderProcess($m,$t);$w=adminer()->selectLimitProcess();if($_GET["val"]&&is_ajax()){header("Content-Type: text/plain; charset=utf-8");foreach($_GET["val"]as$ag=>$L){$na=convert_field($m[key($L)]);$N=array($na?:idf_escape(key($L)));$Z[]=where_check($ag,$m);$K=driver()->select($a,$N,$Z,$N);if($K)echo
first($K->fetch_row());}exit;}$Ge=$cg=array();foreach($t
as$Qc){if($Qc["type"]=="PRIMARY"){$Ge=array_flip($Qc["columns"]);$cg=($N?$Ge:array());foreach($cg
as$u=>$W){if(in_array(idf_escape($u),$N))unset($cg[$u]);}break;}}if($ee&&!$Ge){$Ge=$cg=array($ee=>0);$t[]=array("type"=>"PRIMARY","columns"=>array($ee));}if($_POST&&!$k){$vg=$Z;if(!$_POST["all"]&&is_array($_POST["check"])){$Ja=array();foreach($_POST["check"]as$Ha)$Ja[]=where_check($Ha,$m);$vg[]="((".implode(") OR (",$Ja)."))";}$vg=($vg?"\nWHERE ".implode(" AND ",$vg):"");if($_POST["export"]){save_settings(array("output"=>$_POST["output"],"format"=>$_POST["format"]),"adminer_import");dump_headers($a);adminer()->dumpTable($a,"");$pc=($N?implode(", ",$N):"*").convert_fields($e,$m,$N)."\nFROM ".table($a);$vc=($p&&$bd?"\nGROUP BY ".implode(", ",$p):"").($D?"\nORDER BY ".implode(", ",$D):"");$I="SELECT $pc$vg$vc";if(is_array($_POST["check"])&&!$Ge){$Yf=array();foreach($_POST["check"]as$W)$Yf[]="(SELECT".limit($pc,"\nWHERE ".($Z?implode(" AND ",$Z)." AND ":"").where_check($W,$m).$vc,1).")";$I=implode(" UNION ALL ",$Yf);}adminer()->dumpData($a,"table",$I);adminer()->dumpFooter();exit;}if(!adminer()->selectEmailProcess($Z,$mc)){if($_POST["save"]||$_POST["delete"]){$J=true;$ga=0;$P=array();if(!$_POST["delete"]){foreach($m
as$A=>$W){$s=bracket_escape($A);if(isset($_POST["fields"][$s])||$_FILES["fields-$s"]){$W=process_input($m[$A]);if($W!==null&&($_POST["clone"]||$W!==false))$P[idf_escape($A)]=($W!==false?$W:idf_escape($A));}}}if($_POST["delete"]||$P){$I=($_POST["clone"]?"INTO ".table($a)." (".implode(", ",array_keys($P)).")\nSELECT ".implode(", ",$P)."\nFROM ".table($a):"");if($_POST["all"]||($Ge&&is_array($_POST["check"]))||$bd){$J=($_POST["delete"]?driver()->delete($a,$vg):($_POST["clone"]?queries("INSERT $I$vg".driver()->insertReturning($a)):driver()->update($a,$P,$vg)));$ga=connection()->affected_rows;if(is_object($J))$ga+=$J->num_rows;}else{foreach((array)$_POST["check"]as$W){$ug="\nWHERE ".($Z?implode(" AND ",$Z)." AND ":"").where_check($W,$m);$J=($_POST["delete"]?driver()->delete($a,$ug,1):($_POST["clone"]?queries("INSERT".limit1($a,$I,$ug)):driver()->update($a,$P,$ug,1)));if(!$J)break;$ga+=connection()->affected_rows;}}}$Md=lang(80,$ga);if($_POST["clone"]&&$J&&$ga==1){$pd=last_id($J);if($pd)$Md=lang(79," $pd");}queries_redirect(remove_from_uri($_POST["all"]&&$_POST["delete"]?"page":""),$Md,$J);if(!$_POST["delete"]){$De=(array)$_POST["fields"];edit_form($a,array_intersect_key($m,$De),$De,!$_POST["clone"],$k);page_footer();exit;}}elseif(!$_POST["import"]){if(!$_POST["val"])$k=lang(81);else{$J=true;$ga=0;foreach($_POST["val"]as$ag=>$L){$P=array();foreach($L
as$u=>$W){$u=bracket_escape($u,true);$P[idf_escape($u)]=(preg_match('~char|text~',$m[$u]["type"])||$W!=""?adminer()->processInput($m[$u],$W):"NULL");}$J=driver()->update($a,$P," WHERE ".($Z?implode(" AND ",$Z)." AND ":"").where_check($ag,$m),($bd||$Ge?0:1)," ");if(!$J)break;$ga+=connection()->affected_rows;}queries_redirect(remove_from_uri(),lang(80,$ga),$J);}}elseif(!is_string($Zb=get_file("csv_file",true)))$k=upload_error($Zb);elseif(!preg_match('~~u',$Zb))$k=lang(82);else{save_settings(array("output"=>$fa["output"],"format"=>$_POST["separator"]),"adminer_import");$J=true;$Qa=array_keys($m);preg_match_all('~(?>"[^"]*"|[^"\r\n]+)+~',$Zb,$Cd);$ga=count($Cd[0]);driver()->begin();$gf=($_POST["separator"]=="csv"?",":($_POST["separator"]=="tsv"?"\t":";"));$M=array();foreach($Cd[0]as$u=>$W){preg_match_all("~((?>\"[^\"]*\")+|[^$gf]*)$gf~",$W.$gf,$Dd);if(!$u&&!array_diff($Dd[1],$Qa)){$Qa=$Dd[1];$ga--;}else{$P=array();foreach($Dd[1]as$q=>$Na)$P[idf_escape($Qa[$q])]=($Na==""&&$m[$Qa[$q]]["null"]?"NULL":q(preg_match('~^".*"$~s',$Na)?str_replace('""','"',substr($Na,1,-1)):$Na));$M[]=$P;}}$J=(!$M||driver()->insertUpdate($a,$M,$Ge));if($J)driver()->commit();queries_redirect(remove_from_uri("page"),lang(83,$ga),$J);driver()->rollback();}}}$Cf=adminer()->tableName($S);if(is_ajax()){page_headers();ob_start();}else
page_header(lang(40).": $Cf",$k);$P=null;if(isset($Xe["insert"])||!support("table")){$ue=array();foreach((array)$_GET["where"]as$W){if(isset($mc[$W["col"]])&&count($mc[$W["col"]])==1&&($W["op"]=="="||(!$W["op"]&&(is_array($W["val"])||!preg_match('~[_%]~',$W["val"])))))$ue["set"."[".bracket_escape($W["col"])."]"]=$W["val"];}$P=$ue?"&".http_build_query($ue):"";}adminer()->selectLinks($S,$P);if(!$e&&support("table"))echo"<p class='error'>".lang(84).($m?".":": ".error())."\n";else{echo"<form action='' id='form'>\n","<div style='display: none;'>";hidden_fields_get();echo(DB!=""?input_hidden("db",DB).(isset($_GET["ns"])?input_hidden("ns",$_GET["ns"]):""):""),input_hidden("select",$a),"</div>\n";adminer()->selectColumnsPrint($N,$e);adminer()->selectSearchPrint($Z,$bf,$t);adminer()->selectOrderPrint($D,$ne,$t);adminer()->selectLimitPrint($w);adminer()->selectLengthPrint($Gf);adminer()->selectActionPrint($t);echo"</form>\n";$E=$_GET["page"];$oc=null;if($E=="last"){$oc=get_val(count_rows($a,$Z,$bd,$p));$E=floor(max(0,intval($oc)-1)/$w);}$cf=$N;$uc=$p;if(!$cf){$cf[]="*";$Ya=convert_fields($e,$m,$N);if($Ya)$cf[]=substr($Ya,2);}foreach($N
as$u=>$W){$l=$m[idf_unescape($W)];if($l&&($na=convert_field($l)))$cf[$u]="$na AS $W";}if(!$bd&&$cg){foreach($cg
as$u=>$W){$cf[]=idf_escape($u);if($uc)$uc[]=idf_escape($u);}}$J=driver()->select($a,$cf,$Z,$uc,$D,$w,$E,true);if(!$J)echo"<p class='error'>".error()."\n";else{if(JUSH=="mssql"&&$E)$J->seek($w*$E);$Fb=array();echo"<form action='' method='post' enctype='multipart/form-data'>\n";$M=array();while($L=$J->fetch_assoc()){if($E&&JUSH=="oracle")unset($L["RNUM"]);$M[]=$L;}if($_GET["page"]!="last"&&$w&&$p&&$bd&&JUSH=="sql")$oc=get_val(" SELECT FOUND_ROWS()");if(!$M)echo"<p class='message'>".lang(14)."\n";else{$xa=adminer()->backwardKeys($a,$Cf);echo"<div class='scrollable'>","<table id='table' class='nowrap checkable odds'>",script("mixin(qs('#table'), {onclick: tableClick, ondblclick: partialArg(tableClick, true), onkeydown: editingKeydown});"),"<thead><tr>".(!$p&&$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(85)."</a>");$Yd=array();$rc=array();reset($N);$Pe=1;foreach($M[0]as$u=>$W){if(!isset($cg[$u])){$W=idx($_GET["columns"],key($N))?:array();$l=$m[$N?($W?$W["col"]:current($N)):$u];$A=($l?adminer()->fieldName($l,$Pe):($W["fun"]?"*":h($u)));if($A!=""){$Pe++;$Yd[$u]=$A;$d=idf_escape($u);$Ic=remove_from_uri('(order|desc)[^=]*|page').'&order%5B0%5D='.urlencode($u);$pb="&desc%5B0%5D=1";echo"<th id='th[".h(bracket_escape($u))."]'>".script("mixin(qsl('th'), {onmouseover: partial(columnMouse), onmouseout: partial(columnMouse, ' hidden')});","");$qc=apply_sql_function($W["fun"],$A);$of=isset($l["privileges"]["order"])||$qc!=$A;echo($of?"<a href='".h($Ic.($D[0]==$d||$D[0]==$u?$pb:''))."'>$qc</a>":$qc);$Ld=($of?"<a href='".h($Ic.$pb)."' title='".lang(86)."' class='text'> ↓</a>":'');if(!$W["fun"]&&isset($l["privileges"]["where"])){$Ld
.='<a href="#fieldset-search" title="'.lang(34).'" class="text jsonly"> =</a>';$Ld
.=script("qsl('a').onclick = partial(selectSearch, '".js_escape($u)."');");}echo($Ld?"<span class='column hidden'>$Ld</span>":"");}$rc[$u]=$W["fun"];next($N);}}$td=array();if($_GET["modify"]){foreach($M
as$L){foreach($L
as$u=>$W)$td[$u]=max($td[$u],min(40,strlen(utf8_decode($W))));}}echo($xa?"<th>".lang(87):"")."</thead>\n";if(is_ajax())ob_end_clean();foreach(adminer()->rowDescriptions($M,$mc)as$_=>$L){$Zf=unique_array($M[$_],$t);if(!$Zf){$Zf=array();reset($N);foreach($M[$_]as$u=>$W){if(!preg_match('~^(COUNT|AVG|GROUP_CONCAT|MAX|MIN|SUM)\(~',current($N)))$Zf[$u]=$W;next($N);}}$ag="";foreach($Zf
as$u=>$W){$l=(array)$m[$u];if((JUSH=="sql"||JUSH=="pgsql")&&preg_match('~char|text|enum|set~',$l["type"])&&strlen($W)>64){$u=(strpos($u,'(')?$u:idf_escape($u));$u="MD5(".(JUSH!='sql'||preg_match("~^utf8~",$l["collation"])?$u:"CONVERT($u USING ".charset(connection()).")").")";$W=md5($W);}$ag
.="&".($W!==null?urlencode("where[".bracket_escape($u)."]")."=".urlencode($W===false?"f":$W):"null%5B%5D=".urlencode($u));}echo"<tr>".(!$p&&$N?"":"<td>".checkbox("check[]",substr($ag,1),in_array(substr($ag,1),(array)$_POST["check"])).($bd||information_schema(DB)?"":" <a href='".h(ME."edit=".urlencode($a).$ag)."' class='edit'>".lang(88)."</a>"));reset($N);foreach($L
as$u=>$W){if(isset($Yd[$u])){$d=current($N);$l=(array)$m[$u];if($W!=""&&(!isset($Fb[$u])||$Fb[$u]!=""))$Fb[$u]=(is_mail($W)?$Yd[$u]:"");$x="";if(is_blob($l)&&$W!="")$x=ME.'download='.urlencode($a).'&field='.urlencode($u).$ag;if(!$x&&$W!==null){foreach((array)$mc[$u]as$lc){if(count($mc[$u])==1||end($lc["source"])==$u){$x="";foreach($lc["source"]as$q=>$pf)$x
.=where_link($q,$lc["target"][$q],$M[$_][$pf]);$x=($lc["db"]!=""?preg_replace('~([?&]db=)[^&]+~','\1'.urlencode($lc["db"]),ME):ME).'select='.urlencode($lc["table"]).$x;if($lc["ns"])$x=preg_replace('~([?&]ns=)[^&]+~','\1'.urlencode($lc["ns"]),$x);if(count($lc["source"])==1)break;}}}if($d=="COUNT(*)"){$x=ME."select=".urlencode($a);$q=0;foreach((array)$_GET["where"]as$V){if(!array_key_exists($V["col"],$Zf))$x
.=where_link($q++,$V["col"],$V["val"],$V["op"]);}foreach($Zf
as$hd=>$V)$x
.=where_link($q++,$hd,$V);}$Jc=select_value($W,$x,$l,$Gf);$r=h("val[$ag][".bracket_escape($u)."]");$Ee=idx(idx($_POST["val"],$ag),bracket_escape($u));$eg=idx($l["privileges"],"update");$Cb=!is_array($L[$u])&&is_utf8($Jc)&&$M[$_][$u]==$L[$u]&&!$rc[$u]&&!$l["generated"]&&$eg;$T=(preg_match('~^(AVG|MIN|MAX)\((.+)\)~',$d,$z)?$m[idf_unescape($z[2])]["type"]:$l["type"]);$Ff=preg_match('~text|json|lob~',$T);$cd=preg_match(number_type(),$T)||preg_match('~^(CHAR_LENGTH|ROUND|FLOOR|CEIL|TIME_TO_SEC|COUNT|SUM)\(~',$d);echo"<td id='$r'".($cd&&($W===null||is_numeric(strip_tags($Jc))||$T=="money")?" class='number'":"");if(($_GET["modify"]&&$Cb&&$W!==null)||$Ee!==null){$xc=h($Ee!==null?$Ee:$L[$u]);echo">".($Ff?"<textarea name='$r' cols='30' rows='".(substr_count($L[$u],"\n")+1)."'>$xc</textarea>":"<input name='$r' value='$xc' size='$td[$u]'>");}else{$zd=strpos($Jc,"<i>…</i>");echo($eg?" data-text='".($zd?2:($Ff?1:0))."'".($Cb?"":" data-warning='".h(lang(89))."'"):"").">$Jc";}}next($N);}if($xa)echo"<td>";adminer()->backwardKeysPrint($xa,$M[$_]);echo"</tr>\n";}if(is_ajax())exit;echo"</table>\n","</div>\n";}if(!is_ajax()){if($M||$E){$Pb=true;if($_GET["page"]!="last"){if(!$w||(count($M)<$w&&($M||!$E)))$oc=($E?$E*$w:0)+count($M);elseif(JUSH!="sql"||!$bd){$oc=($bd?false:found_rows($S,$Z));if(intval($oc)<max(1e4,2*($E+1)*$w))$oc=first(slow_query(count_rows($a,$Z,$bd,$p)));elseif(JUSH=='sql'||JUSH=='pgsql')$Pb=false;}}$se=($w&&($oc===false||$oc>$w||$E));if($se)echo(($oc===false?count($M)+1:$oc-$E*$w)>$w?'<p><a href="'.h(remove_from_uri("page|next").($_GET["next"]?"&next=".urlencode($_GET["next"]):"")."&page=".($E+1)).'" class="loadmore">'.lang(90).'</a>'.script("qsl('a').onclick = partial(selectLoadMore, $w, '".lang(91)."…');",""):''),"\n";echo"<div class='footer'><div>\n";if($se){$Gd=($oc===false?$E+($M?(count($M)>=$w?2:1):0):floor(($oc-1)/$w));echo"<fieldset>";if(JUSH!="simpledb"&&JUSH!="redis"){echo"<legend><a href='".h(remove_from_uri("page"))."'>".lang(92)."</a></legend>",script("qsl('a').onclick = function () { pageClick(this.href, +prompt('".lang(92)."', '".($E+1)."')); return false; };"),pagination(0,$E).($E>5?" …":"");for($q=max(1,$E-4);$q<min($Gd,$E+5);$q++)echo
pagination($q,$E);if($Gd>0)echo($E+5<$Gd?" …":""),($Pb&&$oc!==false?pagination($Gd,$E):" <a href='".h(remove_from_uri("page")."&page=last")."' title='~$Gd'>".lang(93)."</a>");}else
echo"<legend>".lang(92)."</legend>",pagination(0,$E).($E>1?" …":""),($E?pagination($E,$E):""),($Gd>$E?pagination($E+1,$E).($Gd>$E+1?" …":""):"");echo"</fieldset>\n";}echo"<fieldset>","<legend>".lang(94)."</legend>";$rb=($Pb?"":"~ ").$oc;$he="const checked = formChecked(this, /check/); selectCount('selected', this.checked ? '$rb' : checked); selectCount('selected2', this.checked || !checked ? '$rb' : checked);";echo
checkbox("all",1,0,($oc!==false?($Pb?"":"~ ").lang(95,$oc):""),$he)."\n","</fieldset>\n";if(adminer()->selectCommandPrint())echo'<fieldset',($_GET["modify"]?'':' class="jsonly"'),'><legend>',lang(85),'</legend><div>
<input type="submit" value="',lang(16),'"',($_GET["modify"]?'':' title="'.lang(81).'"'),'>
</div></fieldset>
<fieldset><legend>',lang(96),' <span id="selected"></span></legend><div>
<input type="submit" name="edit" value="',lang(12),'">
<input type="submit" name="clone" value="',lang(97),'">
<input type="submit" name="delete" value="',lang(20),'">',confirm(),'</div></fieldset>
';$nc=adminer()->dumpFormat();foreach((array)$_GET["columns"]as$d){if($d["fun"]){unset($nc['sql']);break;}}if($nc){print_fieldset("export",lang(98)." <span id='selected2'></span>");$qe=adminer()->dumpOutput();echo($qe?html_select("output",$qe,$fa["output"])." ":""),html_select("format",$nc,$fa["format"])," <input type='submit' name='export' value='".lang(98)."'>\n","</div></fieldset>\n";}adminer()->selectEmailPrint(array_filter($Fb,'strlen'),$e);echo"</div></div>\n";}if(adminer()->selectImportPrint())echo"<p>","<a href='#import'>".lang(99)."</a>",script("qsl('a').onclick = partial(toggle, 'import');",""),"<span id='import'".($_POST["import"]?"":" class='hidden'").">: ",file_input("<input type='file' name='csv_file'> ".html_select("separator",array("csv"=>"CSV,","csv;"=>"CSV;","tsv"=>"TSV"),$fa["format"])." <input type='submit' name='import' value='".lang(99)."'>"),"</span>";echo
input_token(),"</form>\n",(!$p&&$N?"":script("tableCheck();"));}}}if(is_ajax()){ob_end_clean();exit;}}elseif(isset($_GET["script"])){if($_GET["script"]=="kill")connection()->query("KILL ".number($_POST["kill"]));elseif(list($R,$r,$A)=adminer()->_foreignColumn(column_foreign_keys($_GET["source"]),$_GET["field"])){$w=11;$J=connection()->query("SELECT $r, $A FROM ".table($R)." WHERE ".(preg_match('~^[0-9]+$~',$_GET["value"])?"$r = $_GET[value] OR ":"")."$A LIKE ".q("$_GET[value]%")." ORDER BY 2 LIMIT $w");for($q=1;($L=$J->fetch_row())&&$q<$w;$q++)echo"<a href='".h(ME."edit=".urlencode($R)."&where".urlencode("[".bracket_escape(idf_unescape($r))."]")."=".urlencode($L[0]))."'>".h($L[1])."</a><br>\n";if($L)echo"...\n";}exit;}else{page_header(lang(57),"",false);if(adminer()->homepage()){echo"<form action='' method='post'>\n","<p>".lang(100).": <input type='search' name='query' value='".h($_POST["query"])."'> <input type='submit' value='".lang(34)."'>\n";if($_POST["query"]!="")search_tables();echo"<div class='scrollable'>\n","<table class='nowrap checkable odds'>\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\[/);",""),'<th>'.lang(101),'<td>'.lang(102),"</thead>\n";foreach(table_status()as$R=>$L){$A=adminer()->tableName($L);if($A!=""){echo'<tr><td>'.checkbox("tables[]",$R,in_array($R,(array)$_POST["tables"],true)),"<th><a href='".h(ME).'select='.urlencode($R)."'>$A</a>";$W=format_number($L["Rows"]);echo"<td align='right'><a href='".h(ME."edit=").urlencode($R)."'>".($L["Engine"]=="InnoDB"&&$W?"~ $W":$W)."</a>";}}echo"</table>\n","</div>\n","</form>\n",script("tableCheck();");adminer()->pluginsLinks();}}page_footer();