www.gusucode.com > Kodexplorer 可道云PHP在线文件管理系统源码程序 > kodexplorer_v4.32/plugins/adminer/adminer/index.php

    <?php
/** Adminer - Compact database management
* @link https://www.adminer.org/
* @author Jakub Vrana, https://www.vrana.cz/
* @copyright 2007 Jakub Vrana
* @license https://www.apache.org/licenses/LICENSE-2.0 Apache License, Version 2.0
* @license https://www.gnu.org/licenses/gpl-2.0.html GNU General Public License, version 2 (one or other)
* @version 4.6.3
*/
@ignore_user_abort(true);
@set_time_limit(3600*2);//set_time_limit(0)  1day
@ini_set('memory_limit','2028M');//2G;
@ini_set("display_errors","off");//on off
@error_reporting(0);// 0
include('./../../../app/api/sso.class.php');
SSO::sessionAuth('AdminerAccess','check=roleID&value=1');
class AdminerSoftware extends Adminer {
	function login($login, $password) {return true;}
}
function adminer_object() {return new AdminerSoftware;}

error_reporting(6135);$Wc=!preg_match('~^(unsafe_raw)?$~',ini_get("filter.default"));if($Wc||ini_get("filter.default_flags")){foreach(array('_GET','_POST','_COOKIE','_SERVER')as$X){$Di=filter_input_array(constant("INPUT$X"),FILTER_UNSAFE_RAW);if($Di)$$X=$Di;}}if(function_exists("mb_internal_encoding"))mb_internal_encoding("8bit");function
connection(){global$g;return$g;}function
adminer(){global$b;return$b;}function
version(){global$ia;return$ia;}function
idf_unescape($u){$ne=substr($u,-1);return
str_replace($ne.$ne,$ne,substr($u,1,-1));}function
escape_string($X){return
substr(q($X),1,-1);}function
number($X){return
preg_replace('~[^0-9]+~','',$X);}function
number_type(){return'((?<!o)int(?!er)|numeric|real|float|double|decimal|money)';}function
remove_slashes($ng,$Wc=false){if(get_magic_quotes_gpc()){while(list($y,$X)=each($ng)){foreach($X
as$ce=>$W){unset($ng[$y][$ce]);if(is_array($W)){$ng[$y][stripslashes($ce)]=$W;$ng[]=&$ng[$y][stripslashes($ce)];}else$ng[$y][stripslashes($ce)]=($Wc?$W:stripslashes($W));}}}}function
bracket_escape($u,$Oa=false){static$oi=array(':'=>':1',']'=>':2','['=>':3','"'=>':4');return
strtr($u,($Oa?array_flip($oi):$oi));}function
min_version($Ui,$Ae="",$h=null){global$g;if(!$h)$h=$g;$ih=$h->server_info;if($Ae&&preg_match('~([\d.]+)-MariaDB~',$ih,$B)){$ih=$B[1];$Ui=$Ae;}return(version_compare($ih,$Ui)>=0);}function
charset($g){return(min_version("5.5.3",0,$g)?"utf8mb4":"utf8");}function
script($sh,$ni="\n"){return"<script".nonce().">$sh</script>$ni";}function
script_src($Ii){return"<script src='".h($Ii)."'".nonce()."></script>\n";}function
nonce(){return' nonce="'.get_nonce().'"';}function
target_blank(){return' target="_blank" rel="noreferrer noopener"';}function
h($Q){return
str_replace("\0","&#0;",htmlspecialchars($Q,ENT_QUOTES,'utf-8'));}function
nl_br($Q){return
str_replace("\n","<br>",$Q);}function
checkbox($C,$Y,$fb,$je="",$pf="",$kb="",$ke=""){$I="<input type='checkbox' name='$C' value='".h($Y)."'".($fb?" checked":"").($ke?" aria-labelledby='$ke'":"").">".($pf?script("qsl('input').onclick = function () { $pf };",""):"");return($je!=""||$kb?"<label".($kb?" class='$kb'":"").">$I".h($je)."</label>":$I);}function
optionlist($vf,$ch=null,$Mi=false){$I="";foreach($vf
as$ce=>$W){$wf=array($ce=>$W);if(is_array($W)){$I.='<optgroup label="'.h($ce).'">';$wf=$W;}foreach($wf
as$y=>$X)$I.='<option'.($Mi||is_string($y)?' value="'.h($y).'"':'').(($Mi||is_string($y)?(string)$y:$X)===$ch?' selected':'').'>'.h($X);if(is_array($W))$I.='</optgroup>';}return$I;}function
html_select($C,$vf,$Y="",$of=true,$ke=""){if($of)return"<select name='".h($C)."'".($ke?" aria-labelledby='$ke'":"").">".optionlist($vf,$Y)."</select>".(is_string($of)?script("qsl('select').onchange = function () { $of };",""):"");$I="";foreach($vf
as$y=>$X)$I.="<label><input type='radio' name='".h($C)."' value='".h($y)."'".($y==$Y?" checked":"").">".h($X)."</label>";return$I;}function
select_input($Ka,$vf,$Y="",$of="",$Zf=""){$Sh=($vf?"select":"input");return"<$Sh$Ka".($vf?"><option value=''>$Zf".optionlist($vf,$Y,true)."</select>":" size='10' value='".h($Y)."' placeholder='$Zf'>").($of?script("qsl('$Sh').onchange = $of;",""):"");}function
confirm($Ke="",$dh="qsl('input')"){return
script("$dh.onclick = function () { return confirm('".($Ke?js_escape($Ke):lang(0))."'); };","");}function
print_fieldset($t,$se,$Xi=false){echo"<fieldset><legend>","<a href='#fieldset-$t'>$se</a>",script("qsl('a').onclick = partial(toggle, 'fieldset-$t');",""),"</legend>","<div id='fieldset-$t'".($Xi?"":" class='hidden'").">\n";}function
bold($Wa,$kb=""){return($Wa?" class='active $kb'":($kb?" class='$kb'":""));}function
odd($I=' class="odd"'){static$s=0;if(!$I)$s=-1;return($s++%2?$I:'');}function
js_escape($Q){return
addcslashes($Q,"\r\n'\\/");}function
json_row($y,$X=null){static$Xc=true;if($Xc)echo"{";if($y!=""){echo($Xc?"":",")."\n\t\"".addcslashes($y,"\r\n\t\"\\/").'": '.($X!==null?'"'.addcslashes($X,"\r\n\"\\/").'"':'null');$Xc=false;}else{echo"\n}\n";$Xc=true;}}function
ini_bool($Pd){$X=ini_get($Pd);return(preg_match('~^(on|true|yes)$~i',$X)||(int)$X);}function
sid(){static$I;if($I===null)$I=(SID&&!($_COOKIE&&ini_bool("session.use_cookies")));return$I;}function
set_password($Ti,$N,$V,$F){$_SESSION["pwds"][$Ti][$N][$V]=($_COOKIE["adminer_key"]&&is_string($F)?array(encrypt_string($F,$_COOKIE["adminer_key"])):$F);}function
get_password(){$I=get_session("pwds");if(is_array($I))$I=($_COOKIE["adminer_key"]?decrypt_string($I[0],$_COOKIE["adminer_key"]):false);return$I;}function
q($Q){global$g;return$g->quote($Q);}function
get_vals($G,$d=0){global$g;$I=array();$H=$g->query($G);if(is_object($H)){while($J=$H->fetch_row())$I[]=$J[$d];}return$I;}function
get_key_vals($G,$h=null,$lh=true){global$g;if(!is_object($h))$h=$g;$I=array();$H=$h->query($G);if(is_object($H)){while($J=$H->fetch_row()){if($lh)$I[$J[0]]=$J[1];else$I[]=$J[0];}}return$I;}function
get_rows($G,$h=null,$n="<p class='error'>"){global$g;$yb=(is_object($h)?$h:$g);$I=array();$H=$yb->query($G);if(is_object($H)){while($J=$H->fetch_assoc())$I[]=$J;}elseif(!$H&&!is_object($h)&&$n&&defined("PAGE_HEADER"))echo$n.error()."\n";return$I;}function
unique_array($J,$w){foreach($w
as$v){if(preg_match("~PRIMARY|UNIQUE~",$v["type"])){$I=array();foreach($v["columns"]as$y){if(!isset($J[$y]))continue
2;$I[$y]=$J[$y];}return$I;}}}function
escape_key($y){if(preg_match('(^([\w(]+)('.str_replace("_",".*",preg_quote(idf_escape("_"))).')([ \w)]+)$)',$y,$B))return$B[1].idf_escape(idf_unescape($B[2])).$B[3];return
idf_escape($y);}function
where($Z,$p=array()){global$g,$x;$I=array();foreach((array)$Z["where"]as$y=>$X){$y=bracket_escape($y,1);$d=escape_key($y);$I[]=$d.($x=="sql"&&preg_match('~^[0-9]*\.[0-9]*$~',$X)?" LIKE ".q(addcslashes($X,"%_\\")):($x=="mssql"?" LIKE ".q(preg_replace('~[_%[]~','[\0]',$X)):" = ".unconvert_field($p[$y],q($X))));if($x=="sql"&&preg_match('~char|text~',$p[$y]["type"])&&preg_match("~[^ -@]~",$X))$I[]="$d = ".q($X)." COLLATE ".charset($g)."_bin";}foreach((array)$Z["null"]as$y)$I[]=escape_key($y)." IS NULL";return
implode(" AND ",$I);}function
where_check($X,$p=array()){parse_str($X,$db);remove_slashes(array(&$db));return
where($db,$p);}function
where_link($s,$d,$Y,$rf="="){return"&where%5B$s%5D%5Bcol%5D=".urlencode($d)."&where%5B$s%5D%5Bop%5D=".urlencode(($Y!==null?$rf:"IS NULL"))."&where%5B$s%5D%5Bval%5D=".urlencode($Y);}function
convert_fields($e,$p,$L=array()){$I="";foreach($e
as$y=>$X){if($L&&!in_array(idf_escape($y),$L))continue;$Ha=convert_field($p[$y]);if($Ha)$I.=", $Ha AS ".idf_escape($y);}return$I;}function
cookie($C,$Y,$ve=2592000){global$ba;return
header("Set-Cookie: $C=".urlencode($Y).($ve?"; expires=".gmdate("D, d M Y H:i:s",time()+$ve)." GMT":"")."; path=".preg_replace('~\?.*~','',$_SERVER["REQUEST_URI"]).($ba?"; secure":"")."; HttpOnly; SameSite=lax",false);}function
restart_session(){if(!ini_bool("session.use_cookies"))session_start();}function
stop_session($cd=false){if(!ini_bool("session.use_cookies")||($cd&&@ini_set("session.use_cookies",false)!==false))session_write_close();}function&get_session($y){return$_SESSION[$y][DRIVER][SERVER][$_GET["username"]];}function
set_session($y,$X){$_SESSION[$y][DRIVER][SERVER][$_GET["username"]]=$X;}function
auth_url($Ti,$N,$V,$l=null){global$fc;preg_match('~([^?]*)\??(.*)~',remove_from_uri(implode("|",array_keys($fc))."|username|".($l!==null?"db|":"").session_name()),$B);return"$B[1]?".(sid()?SID."&":"").($Ti!="server"||$N!=""?urlencode($Ti)."=".urlencode($N)."&":"")."username=".urlencode($V).($l!=""?"&db=".urlencode($l):"").($B[2]?"&$B[2]":"");}function
is_ajax(){return($_SERVER["HTTP_X_REQUESTED_WITH"]=="XMLHttpRequest");}function
redirect($A,$Ke=null){if($Ke!==null){restart_session();$_SESSION["messages"][preg_replace('~^[^?]*~','',($A!==null?$A:$_SERVER["REQUEST_URI"]))][]=$Ke;}if($A!==null){if($A=="")$A=".";header("Location: $A");exit;}}function
query_redirect($G,$A,$Ke,$zg=true,$Dc=true,$Oc=false,$ai=""){global$g,$n,$b;if($Dc){$_h=microtime(true);$Oc=!$g->query($G);$ai=format_time($_h);}$vh="";if($G)$vh=$b->messageQuery($G,$ai,$Oc);if($Oc){$n=error().$vh.script("messagesPrint();");return
false;}if($zg)redirect($A,$Ke.$vh);return
true;}function
queries($G){global$g;static$sg=array();static$_h;if(!$_h)$_h=microtime(true);if($G===null)return
array(implode("\n",$sg),format_time($_h));$sg[]=(preg_match('~;$~',$G)?"DELIMITER ;;\n$G;\nDELIMITER ":$G).";";return$g->query($G);}function
apply_queries($G,$T,$_c='table'){foreach($T
as$R){if(!queries("$G ".$_c($R)))return
false;}return
true;}function
queries_redirect($A,$Ke,$zg){list($sg,$ai)=queries(null);return
query_redirect($sg,$A,$Ke,$zg,false,!$zg,$ai);}function
format_time($_h){return
lang(1,max(0,microtime(true)-$_h));}function
remove_from_uri($Kf=""){return
substr(preg_replace("~(?<=[?&])($Kf".(SID?"":"|".session_name()).")=[^&]*&~",'',"$_SERVER[REQUEST_URI]&"),0,-1);}function
pagination($E,$Kb){return" ".($E==$Kb?$E+1:'<a href="'.h(remove_from_uri("page").($E?"&page=$E".($_GET["next"]?"&next=".urlencode($_GET["next"]):""):"")).'">'.($E+1)."</a>");}function
get_file($y,$Sb=false){$Uc=$_FILES[$y];if(!$Uc)return
null;foreach($Uc
as$y=>$X)$Uc[$y]=(array)$X;$I='';foreach($Uc["error"]as$y=>$n){if($n)return$n;$C=$Uc["name"][$y];$ii=$Uc["tmp_name"][$y];$_b=file_get_contents($Sb&&preg_match('~\.gz$~',$C)?"compress.zlib://$ii":$ii);if($Sb){$_h=substr($_b,0,3);if(function_exists("iconv")&&preg_match("~^\xFE\xFF|^\xFF\xFE~",$_h,$Eg))$_b=iconv("utf-16","utf-8",$_b);elseif($_h=="\xEF\xBB\xBF")$_b=substr($_b,3);$I.=$_b."\n\n";}else$I.=$_b;}return$I;}function
upload_error($n){$He=($n==UPLOAD_ERR_INI_SIZE?ini_get("upload_max_filesize"):0);return($n?lang(2).($He?" ".lang(3,$He):""):lang(4));}function
repeat_pattern($Xf,$te){return
str_repeat("$Xf{0,65535}",$te/65535)."$Xf{0,".($te%65535)."}";}function
is_utf8($X){return(preg_match('~~u',$X)&&!preg_match('~[\0-\x8\xB\xC\xE-\x1F]~',$X));}function
shorten_utf8($Q,$te=80,$Gh=""){if(!preg_match("(^(".repeat_pattern("[\t\r\n -\x{10FFFF}]",$te).")($)?)u",$Q,$B))preg_match("(^(".repeat_pattern("[\t\r\n -~]",$te).")($)?)",$Q,$B);return
h($B[1]).$Gh.(isset($B[2])?"":"<i>...</i>");}function
format_number($X){return
strtr(number_format($X,0,".",lang(5)),preg_split('~~u',lang(6),-1,PREG_SPLIT_NO_EMPTY));}function
friendly_url($X){return
preg_replace('~[^a-z0-9_]~i','-',$X);}function
hidden_fields($ng,$Fd=array()){$I=false;while(list($y,$X)=each($ng)){if(!in_array($y,$Fd)){if(is_array($X)){foreach($X
as$ce=>$W)$ng[$y."[$ce]"]=$W;}else{$I=true;echo'<input type="hidden" name="'.h($y).'" value="'.h($X).'">';}}}return$I;}function
hidden_fields_get(){echo(sid()?'<input type="hidden" name="'.session_name().'" value="'.h(session_id()).'">':''),(SERVER!==null?'<input type="hidden" name="'.DRIVER.'" value="'.h(SERVER).'">':""),'<input type="hidden" name="username" value="'.h($_GET["username"]).'">';}function
table_status1($R,$Pc=false){$I=table_status($R,$Pc);return($I?$I:array("Name"=>$R));}function
column_foreign_keys($R){global$b;$I=array();foreach($b->foreignKeys($R)as$q){foreach($q["source"]as$X)$I[$X][]=$q;}return$I;}function
enum_input($U,$Ka,$o,$Y,$uc=null){global$b;preg_match_all("~'((?:[^']|'')*)'~",$o["length"],$Ce);$I=($uc!==null?"<label><input type='$U'$Ka value='$uc'".((is_array($Y)?in_array($uc,$Y):$Y===0)?" checked":"")."><i>".lang(7)."</i></label>":"");foreach($Ce[1]as$s=>$X){$X=stripcslashes(str_replace("''","'",$X));$fb=(is_int($Y)?$Y==$s+1:(is_array($Y)?in_array($s+1,$Y):$Y===$X));$I.=" <label><input type='$U'$Ka value='".($s+1)."'".($fb?' checked':'').'>'.h($b->editVal($X,$o)).'</label>';}return$I;}function
input($o,$Y,$r){global$zi,$b,$x;$C=h(bracket_escape($o["field"]));echo"<td class='function'>";if(is_array($Y)&&!$r){$Fa=array($Y);if(version_compare(PHP_VERSION,5.4)>=0)$Fa[]=JSON_PRETTY_PRINT;$Y=call_user_func_array('json_encode',$Fa);$r="json";}$Ig=($x=="mssql"&&$o["auto_increment"]);if($Ig&&!$_POST["save"])$r=null;$ld=(isset($_GET["select"])||$Ig?array("orig"=>lang(8)):array())+$b->editFunctions($o);$Ka=" name='fields[$C]'";if($o["type"]=="enum")echo
h($ld[""])."<td>".$b->editInput($_GET["edit"],$o,$Ka,$Y);else{$vd=(in_array($r,$ld)||isset($ld[$r]));echo(count($ld)>1?"<select name='function[$C]'>".optionlist($ld,$r===null||$vd?$r:"")."</select>".on_help("getTarget(event).value.replace(/^SQL\$/, '')",1).script("qsl('select').onchange = functionChange;",""):h(reset($ld))).'<td>';$Rd=$b->editInput($_GET["edit"],$o,$Ka,$Y);if($Rd!="")echo$Rd;elseif(preg_match('~bool~',$o["type"]))echo"<input type='hidden'$Ka value='0'>"."<input type='checkbox'".(preg_match('~^(1|t|true|y|yes|on)$~i',$Y)?" checked='checked'":"")."$Ka value='1'>";elseif($o["type"]=="set"){preg_match_all("~'((?:[^']|'')*)'~",$o["length"],$Ce);foreach($Ce[1]as$s=>$X){$X=stripcslashes(str_replace("''","'",$X));$fb=(is_int($Y)?($Y>>$s)&1:in_array($X,explode(",",$Y),true));echo" <label><input type='checkbox' name='fields[$C][$s]' value='".(1<<$s)."'".($fb?' checked':'').">".h($b->editVal($X,$o)).'</label>';}}elseif(preg_match('~blob|bytea|raw|file~',$o["type"])&&ini_bool("file_uploads"))echo"<input type='file' name='fields-$C'>";elseif(($Yh=preg_match('~text|lob~',$o["type"]))||preg_match("~\n~",$Y)){if($Yh&&$x!="sqlite")$Ka.=" cols='50' rows='12'";else{$K=min(12,substr_count($Y,"\n")+1);$Ka.=" cols='30' rows='$K'".($K==1?" style='height: 1.2em;'":"");}echo"<textarea$Ka>".h($Y).'</textarea>';}elseif($r=="json"||preg_match('~^jsonb?$~',$o["type"]))echo"<textarea$Ka cols='50' rows='12' class='jush-js'>".h($Y).'</textarea>';else{$Je=(!preg_match('~int~',$o["type"])&&preg_match('~^(\d+)(,(\d+))?$~',$o["length"],$B)?((preg_match("~binary~",$o["type"])?2:1)*$B[1]+($B[3]?1:0)+($B[2]&&!$o["unsigned"]?1:0)):($zi[$o["type"]]?$zi[$o["type"]]+($o["unsigned"]?0:1):0));if($x=='sql'&&min_version(5.6)&&preg_match('~time~',$o["type"]))$Je+=7;echo"<input".((!$vd||$r==="")&&preg_match('~(?<!o)int(?!er)~',$o["type"])&&!preg_match('~\[\]~',$o["full_type"])?" type='number'":"")." value='".h($Y)."'".($Je?" data-maxlength='$Je'":"").(preg_match('~char|binary~',$o["type"])&&$Je>20?" size='40'":"")."$Ka>";}echo$b->editHint($_GET["edit"],$o,$Y);$Xc=0;foreach($ld
as$y=>$X){if($y===""||!$X)break;$Xc++;}if($Xc)echo
script("mixin(qsl('td'), {onchange: partial(skipOriginal, $Xc), oninput: function () { this.onchange(); }});");}}function
process_input($o){global$b,$m;$u=bracket_escape($o["field"]);$r=$_POST["function"][$u];$Y=$_POST["fields"][$u];if($o["type"]=="enum"){if($Y==-1)return
false;if($Y=="")return"NULL";return+$Y;}if($o["auto_increment"]&&$Y=="")return
null;if($r=="orig")return($o["on_update"]=="CURRENT_TIMESTAMP"?idf_escape($o["field"]):false);if($r=="NULL")return"NULL";if($o["type"]=="set")return
array_sum((array)$Y);if($r=="json"){$r="";$Y=json_decode($Y,true);if(!is_array($Y))return
false;return$Y;}if(preg_match('~blob|bytea|raw|file~',$o["type"])&&ini_bool("file_uploads")){$Uc=get_file("fields-$u");if(!is_string($Uc))return
false;return$m->quoteBinary($Uc);}return$b->processInput($o,$Y,$r);}function
fields_from_edit(){global$m;$I=array();foreach((array)$_POST["field_keys"]as$y=>$X){if($X!=""){$X=bracket_escape($X);$_POST["function"][$X]=$_POST["field_funs"][$y];$_POST["fields"][$X]=$_POST["field_vals"][$y];}}foreach((array)$_POST["fields"]as$y=>$X){$C=bracket_escape($y,1);$I[$C]=array("field"=>$C,"privileges"=>array("insert"=>1,"update"=>1),"null"=>1,"auto_increment"=>($y==$m->primary),);}return$I;}function
search_tables(){global$b,$g;$_GET["where"][0]["val"]=$_POST["query"];$fh="<ul>\n";foreach(table_status('',true)as$R=>$S){$C=$b->tableName($S);if(isset($S["Engine"])&&$C!=""&&(!$_POST["tables"]||in_array($R,$_POST["tables"]))){$H=$g->query("SELECT".limit("1 FROM ".table($R)," WHERE ".implode(" AND ",$b->selectSearchProcess(fields($R),array())),1));if(!$H||$H->fetch_row()){$jg="<a href='".h(ME."select=".urlencode($R)."&where[0][op]=".urlencode($_GET["where"][0]["op"])."&where[0][val]=".urlencode($_GET["where"][0]["val"]))."'>$C</a>";echo"$fh<li>".($H?$jg:"<p class='error'>$jg: ".error())."\n";$fh="";}}}echo($fh?"<p class='message'>".lang(9):"</ul>")."\n";}function
dump_headers($Dd,$Te=false){global$b;$I=$b->dumpHeaders($Dd,$Te);$Hf=$_POST["output"];if($Hf!="text")header("Content-Disposition: attachment; filename=".$b->dumpFilename($Dd).".$I".($Hf!="file"&&!preg_match('~[^0-9a-z]~',$Hf)?".$Hf":""));session_write_close();ob_flush();flush();return$I;}function
dump_csv($J){foreach($J
as$y=>$X){if(preg_match("~[\"\n,;\t]~",$X)||$X==="")$J[$y]='"'.str_replace('"','""',$X).'"';}echo
implode(($_POST["format"]=="csv"?",":($_POST["format"]=="tsv"?"\t":";")),$J)."\r\n";}function
apply_sql_function($r,$d){return($r?($r=="unixepoch"?"DATETIME($d, '$r')":($r=="count distinct"?"COUNT(DISTINCT ":strtoupper("$r("))."$d)"):$d);}function
get_temp_dir(){$I=ini_get("upload_tmp_dir");if(!$I){if(function_exists('sys_get_temp_dir'))$I=sys_get_temp_dir();else{$Vc=@tempnam("","");if(!$Vc)return
false;$I=dirname($Vc);unlink($Vc);}}return$I;}function
file_open_lock($Vc){$jd=@fopen($Vc,"r+");if(!$jd){$jd=@fopen($Vc,"w");if(!$jd)return;chmod($Vc,0660);}flock($jd,LOCK_EX);return$jd;}function
file_write_unlock($jd,$Mb){rewind($jd);fwrite($jd,$Mb);ftruncate($jd,strlen($Mb));flock($jd,LOCK_UN);fclose($jd);}function
password_file($i){$Vc=get_temp_dir()."/adminer.key";$I=@file_get_contents($Vc);if($I||!$i)return$I;$jd=@fopen($Vc,"w");if($jd){chmod($Vc,0660);$I=rand_string();fwrite($jd,$I);fclose($jd);}return$I;}function
rand_string(){return
md5(uniqid(mt_rand(),true));}function
select_value($X,$_,$o,$Zh){global$b;if(is_array($X)){$I="";foreach($X
as$ce=>$W)$I.="<tr>".($X!=array_values($X)?"<th>".h($ce):"")."<td>".select_value($W,$_,$o,$Zh);return"<table cellspacing='0'>$I</table>";}if(!$_)$_=$b->selectLink($X,$o);if($_===null){if(is_mail($X))$_="mailto:$X";if(is_url($X))$_=$X;}$I=$b->editVal($X,$o);if($I!==null){if(!is_utf8($I))$I="\0";elseif($Zh!=""&&is_shortable($o))$I=shorten_utf8($I,max(0,+$Zh));else$I=h($I);}return$b->selectVal($I,$_,$o,$X);}function
is_mail($rc){$Ia='[-a-z0-9!#$%&\'*+/=?^_`{|}~]';$ec='[a-z0-9]([-a-z0-9]{0,61}[a-z0-9])';$Xf="$Ia+(\\.$Ia+)*@($ec?\\.)+$ec";return
is_string($rc)&&preg_match("(^$Xf(,\\s*$Xf)*\$)i",$rc);}function
is_url($Q){$ec='[a-z0-9]([-a-z0-9]{0,61}[a-z0-9])';return
preg_match("~^(https?)://($ec?\\.)+$ec(:\\d+)?(/.*)?(\\?.*)?(#.*)?\$~i",$Q);}function
is_shortable($o){return
preg_match('~char|text|json|lob|geometry|point|linestring|polygon|string|bytea~',$o["type"]);}function
count_rows($R,$Z,$Xd,$od){global$x;$G=" FROM ".table($R).($Z?" WHERE ".implode(" AND ",$Z):"");return($Xd&&($x=="sql"||count($od)==1)?"SELECT COUNT(DISTINCT ".implode(", ",$od).")$G":"SELECT COUNT(*)".($Xd?" FROM (SELECT 1$G GROUP BY ".implode(", ",$od).") x":$G));}function
slow_query($G){global$b,$ki,$m;$l=$b->database();$bi=$b->queryTimeout();$ph=$m->slowQuery($G,$bi);if(!$ph&&support("kill")&&is_object($h=connect())&&($l==""||$h->select_db($l))){$he=$h->result(connection_id());echo'<script',nonce(),'>
var timeout = setTimeout(function () {
	ajax(\'',js_escape(ME),'script=kill\', function () {
	}, \'kill=',$he,'&token=',$ki,'\');
}, ',1000*$bi,');
</script>
';}else$h=null;ob_flush();flush();$I=@get_key_vals(($ph?$ph:$G),$h,false);if($h){echo
script("clearTimeout(timeout);");ob_flush();flush();}return$I;}function
get_token(){$vg=rand(1,1e6);return($vg^$_SESSION["token"]).":$vg";}function
verify_token(){list($ki,$vg)=explode(":",$_POST["token"]);return($vg^$_SESSION["token"])==$ki;}function
lzw_decompress($Sa){$ac=256;$Ta=8;$mb=array();$Kg=0;$Lg=0;for($s=0;$s<strlen($Sa);$s++){$Kg=($Kg<<8)+ord($Sa[$s]);$Lg+=8;if($Lg>=$Ta){$Lg-=$Ta;$mb[]=$Kg>>$Lg;$Kg&=(1<<$Lg)-1;$ac++;if($ac>>$Ta)$Ta++;}}$Zb=range("\0","\xFF");$I="";foreach($mb
as$s=>$lb){$qc=$Zb[$lb];if(!isset($qc))$qc=$ij.$ij[0];$I.=$qc;if($s)$Zb[]=$ij.$qc[0];$ij=$qc;}return$I;}function
on_help($tb,$mh=0){return
script("mixin(qsl('select, input'), {onmouseover: function (event) { helpMouseover.call(this, event, $tb, $mh) }, onmouseout: helpMouseout});","");}function
edit_form($a,$p,$J,$Gi){global$b,$x,$ki,$n;$Lh=$b->tableName(table_status1($a,true));page_header(($Gi?lang(10):lang(11)),$n,array("select"=>array($a,$Lh)),$Lh);if($J===false)echo"<p class='error'>".lang(12)."\n";echo'<form action="" method="post" enctype="multipart/form-data" id="form">
';if(!$p)echo"<p class='error'>".lang(13)."\n";else{echo"<table cellspacing='0'>".script("qsl('table').onkeydown = editingKeydown;");foreach($p
as$C=>$o){echo"<tr><th>".$b->fieldName($o);$Tb=$_GET["set"][bracket_escape($C)];if($Tb===null){$Tb=$o["default"];if($o["type"]=="bit"&&preg_match("~^b'([01]*)'\$~",$Tb,$Eg))$Tb=$Eg[1];}$Y=($J!==null?($J[$C]!=""&&$x=="sql"&&preg_match("~enum|set~",$o["type"])?(is_array($J[$C])?array_sum($J[$C]):+$J[$C]):$J[$C]):(!$Gi&&$o["auto_increment"]?"":(isset($_GET["select"])?false:$Tb)));if(!$_POST["save"]&&is_string($Y))$Y=$b->editVal($Y,$o);$r=($_POST["save"]?(string)$_POST["function"][$C]:($Gi&&$o["on_update"]=="CURRENT_TIMESTAMP"?"now":($Y===false?null:($Y!==null?'':'NULL'))));if(preg_match("~time~",$o["type"])&&$Y=="CURRENT_TIMESTAMP"){$Y="";$r="now";}input($o,$Y,$r);echo"\n";}if(!support("table"))echo"<tr>"."<th><input name='field_keys[]'>".script("qsl('input').oninput = fieldChange;")."<td class='function'>".html_select("field_funs[]",$b->editFunctions(array("null"=>isset($_GET["select"]))))."<td><input name='field_vals[]'>"."\n";echo"</table>\n";}echo"<p>\n";if($p){echo"<input type='submit' value='".lang(14)."'>\n";if(!isset($_GET["select"])){echo"<input type='submit' name='insert' value='".($Gi?lang(15):lang(16))."' title='Ctrl+Shift+Enter'>\n",($Gi?script("qsl('input').onclick = function () { return !ajaxForm(this.form, '".lang(17)."...', this); };"):"");}}echo($Gi?"<input type='submit' name='delete' value='".lang(18)."'>".confirm()."\n":($_POST||!$p?"":script("focus(qsa('td', qs('#form'))[1].firstChild);")));if(isset($_GET["select"]))hidden_fields(array("check"=>(array)$_POST["check"],"clone"=>$_POST["clone"],"all"=>$_POST["all"]));echo'<input type="hidden" name="referer" value="',h(isset($_POST["referer"])?$_POST["referer"]:$_SERVER["HTTP_REFERER"]),'">
<input type="hidden" name="save" value="1">
<input type="hidden" name="token" value="',$ki,'">
</form>
';}if(isset($_GET["file"])){if($_SERVER["HTTP_IF_MODIFIED_SINCE"]){header("HTTP/1.1 304 Not Modified");exit;}header("Expires: ".gmdate("D, d M Y H:i:s",time()+365*24*60*60)." GMT");header("Last-Modified: ".gmdate("D, d M Y H:i:s")." GMT");header("Cache-Control: immutable");if($_GET["file"]=="favicon.ico"){header("Content-Type: image/x-icon");echo
lzw_decompress("\0\0\0` \0\0\n @\0C\"\0`E鉗膏?tvM'擩dd\\宐0\0腬"櫪f訄ゎs5浵缪AXPaJ?劌8?R奣z`?.┣c鞽摸葊??\0m??玀€\0券(虊/(%孿0");}elseif($_GET["file"]=="default.css"){header("Content-Type: text/css; charset=utf-8");echo
lzw_decompress("\n1虈撡屴l7渿B1?vb0樛fs懠阯2B萄辟樲n:?(糱.\rDc)热a7E懁耹γ睌鑙1處s槾?4檱f	任i7抽剮孎茅攙t2傆!r0香悖t~経?3M€蒞凚?c蚉龙6T\rc緕r_頦K\r-糣NFS%~胏操?沑\^蕆罌u偱幟烎賸4'7k惰鉗枣h?g\rFB\ryT7SS?=扦cI枋:峝敽m>8L咼仠t.M強	蠇`'C〖坌889と Q佚岊2?8袗挊6m嗮j垻h?厡矮9/霕纡怞?蕚\0d>!\0Z坴旎n刖鸺o(隗ドk?綇s帙>顔!蠷\"*nS齖0@P\"凌??[顶g筼瓛zn?k?唍殭?碔*堲=蚽菠徃?玞(觖久犘?包*c祺>螏珽7D馤J1蠕枫`?(嵴3M\"?9?E乪=椰鼅蓬痈7;蒀翛虴\rd!)耡*?ajo\0?`?8禱0薯]揺岅埰2	mk鴈]吜AZs誗tZ昛!)BR℅+?Jv2(銧鲱c?<?sB?辁?YL\r=縖?3起<愈bx斶J=	m_ 鞠舊l譼嬪I獌H?弜*€涐6`t6久%U訪e賯楛碶0葾Q<P<:?u/zT\\>犓-厁J埻QH\nj+j輟痼?玚蒺幊\nk儍'揘觱X>頒-T拴稖笎?*L?Cj>7擗娹檂淃y佧苢羠?#ㄙ} :#n韁r憬^凝CA芨萜巵s&8帲K&霍*0岩t軸稍凝綶左:漒\]E輰?O唼^]酶咙嶈伧gZ訴嗛q撼妼 袼x\\瓖钑龉咿捍刓"J燶\卯堺##痢紻單x6隃5x受€付啫\rH鴏 嬹b鸂r?嵩6嗋j|翂③?鬎AquvyO捊WeM鲏D.F狯:R\$-∞兜T!霥S`?D榽熰A`(莈m儲螨@O1@簡X︹揬nLp饢慞濑劣耺yf?	壂聢贕SEI墎xC(s(a?\$`tE╪勸杯,髡 \$a悑U>,栊抃$Z駅Dm,G\0燶\悙i?使 nケ缝蒈g惿刡	y`掤詥薟旆 錀棥_C滥T\ni愊H%da乐i?At?廉J哫4n垜攬0o凸?g\nzmM%`?I鼆袨-栩?:p?p峇梤ED殼嘴犩b2]匬F狚ド>e生?j\n€甙t!?4f恡K;J\r螢懈?鄌u?愈丳h瀽?uIC}'~湃2噕ㄒ?)炖?霥I?чy&暍ea鄐*h蓵jlA(隂\"腬\雨m^i懏M)偘^	|~誰ǘ#!Y蚮81RS帬恋!噯?2PC戶l&睇鋢d!寍犺9癭謃OY忑鹧G郲E-eLCvT )腀恓-5稖pSg?扜=仈衂E姻\$\0⒀Kj鞺У\$偫G'I銹┞~趤 ;佢hN蹘G%*酭j駢X[淴Pf^帘|骅T!?N痧袉竆rU^q1V!鸣Uz,肐|7?唕,尽?旇弈綛柱躯?鳕┻圓趐臀角^€~丶W!3P奍8]摻v覬捔f駋,濌?W鴉`\0醧擹p}[Jdhy瓡N甑Y|餀Cy,<s A亄e蚎騢d剚烨 藼4;ks&悆衲萸a搌披斬;斯}鏢屗J咃?鳊d煸|翁Nd稩?8祶l醚搧E6~熄怓盭`楳\r蕿/?B/V繧錘&;犍?臮C cT&.E+鐣髢腊姏檐@?`;培薌?浔赁'檨洏鲟茞籝?秹QZ-i侓測v儢I?隗,O|璓謁F蹚狎御馶0慄??9廷櫌乶/蠂]爻&ΚI^=觢帺qfI剖= 謁x1GR?e?┖)婓':B睟剥a??.bz?劌駬U釗嵠L7-紈縯?傻駫e鯠$?鞅誁G? ?p餜燳C列~寥:繞浦EUJ佧67v]朖'鋛1铣镋l鬛袉i就梦駝/?{k<愢帧M躳o靰鑢立q屫靋彰_m襴锞峖簎柎霹邳珢肚ln	廄_~稧鴑桄嬛{k転遷戕鵟rj~桲揬0陷?铤€;溹涼b`}罜C,仈?秼L佇8\r,嚳kl岒n}-5亰崓3u沢m蛤鸥*?漪戍项讖鬬薫?x?B?#鲔廚;OR\rㄨ\$魑k?蠙\01\0k骪0?敉a栝/t狕?(&蘬&p赶靷咡馕iM{痾p*?g鑦壟6渒	堭渄嫭茏腁`6僱X)+d 氿? 鑌r牼 磊乧j6晖\rp絓r姓\r\"oP?輁r愂\0\0緔犌P慅\rQ7痼郱佈4Q犵缵p/▂\r?#D瘥牼煥<杇\0fi2?f裓\	mGh\r?眓犨痦@[ 蔊慭"Sqm姢\r€?杌(Aj駋眩%魫虘3qE墑\0r柼牼聸0褟鈿萃?Q7褕W懮憉戰 @颞H鷮q'vs?闬n?0畡新SGp躉`蟎r)c?乱懃R=\$€茞R\r褿褘\$R?%2C瞇\0貚膥?盶\缷p?@緛襉(rg%?ra\$壉)r](矝&?&?&R?,\rqV3襖"H閙+鄭萳扱\"\04\$r?駫=挔?2;.睭@`璇饰a収採\$瞋*RIS&刃q犱_?1+1捙乐狊3)2襐7?l蜈!1g-2f`愐?Q?聩0qg覿!q髆6姦嫵_睲7 偭7硂6Q噜髃p?砱9敧s 3?黒r:S?訌; 揬r9-\0芛缨0Q渣b#<觼襴/燝绤>r乗r胚=3峖&Q;眩?q?\"?H袡憒邮朣鄻i郂*覶?T#巿 玕0癈皰07]?戄&獩訣硡D宣:/3鼸5铀EQ宔薚\"﹎灘松5慐;鬅?=4?耱*闰﹫鳯S?Hr馢E TO\r詤J磵J撚J笥纄G)8B?,&驉G茬€	嘘?M€κ刹^*G粟14?薥$.\"鎷I4w!\$L ?b闍2鸏?M?MF鶿$?脆擆Nr搓/4顱J诼?);}elseif($_GET["file"]=="functions.js"){header("Content-Type: text/javascript; charset=utf-8");echo
lzw_decompress("f:泴gCI架\n8溑3)八7渽?1惺x:\nOg#)嘘r7\n\"嗚碻鴟2蘥Si朒)N戜r嚌\"0鼓@?焋(\$s6O!予淰/=潓' T4妪剺iS槏6IO撌er賦?*藕昂n3漒r褖v僀伭`鯕?G%╕沔1櫷f艄讶俵っ1\ny*pC\r\$蘮峊獣3=\\俽9O\"	类l<奬r荺\€矷,s\nAてeh+M鈰!峲0欭f籤(N{c枟+w笋罽p侑3??Iυj购龓蟢凡n竡儘zi#^r乩磱3桠嵪[炶簅;(嬓6?酪悗峔":cz>撸C2vCX牲丳胏*5\n酣璺/黀97駖F癱0兂ò?崈鎱!?壝\nZ%膰#CH!ㄒr8鏫$ァ殳,萊軘2吶鉤0丰@?屸(?8P/傕篙勧\\羂$La\\潲c郒勧HX剚昞n蕛t渿?A<蟬Z?;I形3×@?<姠?A8G<詊?K?{*\r捙a1嚒鐽4Tc\"\\?=1^曫軲9O产咞j寠\r鉞亦L#H??T莳/-磱甥丅 聥\n?!儱蛅]ap螏蓊\0R跜藇琈翴,\r鰨0Hv拜?kT?俭u俦;&拹?&儧饡礬r萖弽乥u4荨i88?B?鈨?N8A蹵)52睑逦2埁s?鐡5ぅWC@琥榯呫敬謊悮h\"#8_樻cp^銏釯]OH:zd?g?剤酌杒割\\6磹槓2谮桏筰?樝]\r脁O緉簆琰×p颭甎衝嬺|@缢?G3鹆8bAㄊ6??7%#竆\8\r?萩\r轃k?(	帓-桱;顩洋 乳L阆 紴W怿悃撗ドも桏窞n麪咬绘齅卫9Z袧s]陑y^[4-篣\0ta?2^晿.`傗.C遤[釀? Q\0`d隡8喀妓踈$O0`4碴蝄n\0a\rA凕咢焹泭\r!窥谺A??h>で牃~虒?葓h埤?淎7X淅謬\\糪r亼Q<铓q?!X螕2鶷 ?孌\r?K碶"?楬qR\r勌牏C =庬犳屈c擻n#<€5峂 闑儨y尅敁嚢鷒\"癱JKL2&XeR溊W蠥螑Tw恃慃錔堚醆\`)5υ逌B騫hT3оR	?\r+\":8だtV揂?]屔S72瑞團兗Z85c,骠禞帘/+S竛BpoWd愔\"a璟Kp柁\$洅硝4廔L'@xCdf閪}Q*斠A掂Q抃"B?2\0?颜kF\"\r攽 豲僜\寓悪赩ijY属O\$妶2ThH伌お0XH5~kL匱*:~P2锣B\0齓吚翜j唙D衧.?搒腹踏芇*x灙昩擋\$筗/?蒙z';ρ\$?閐鈓砻兡'b\r裯%拍47W?煉圉牰K党@<舋猫bB?[7\抾€VdR?6leQ蘞(寓,d樺?\rS:??`钔Y繾蹵逡?疽ZkQ攕M?炎葅`疛*漺蹲訆>站鬌消汘飁泳穃"t+po桍杜W\$銇芡鸔釘@?t`啒-k7g驿燷邮l碋拦^dW>nv纓鰈zPHFvW鮒\n説;B酓柏?斛J齿\\? %ヱ桏钺]褗a纵囻=澕X啗N?屝w揓馹[醫)5艚鵔R2l-:沋9?l R;痷#S	 ht爇螮!l佞誉SH€繶<,丱竃y袃%L朷\0	傆^遜w??Sct榚=M:4??]旉P頣胹幷n:┖u>/焏 揄碼?%钃羜舀&@謵暳顚朒稧釦w8p窭溋蝸\n{禰瞭2劽郺柎>	wJ頭+u~o碌Xk咋BZk吮肵=人0>猼l艃)Wb€堞'肁?犴m哬?婣捔駣e?V柜+恘1I┪柿E?[恻镓[-R歮K9箏嶃嬿L€-3O樖羆_0s鷣薒;洶锣]?酯|hV荰:妭逓erM紊a\$~e??後銏袛羂r帐\\斄鬔1脷列%↓0{	熖鐋迼t诩掿韭髝Q鐋\0?鉡g@u?蓾|啮4?偟c-7?\ri'^傺蹇n;滫基墛?会ο{K莌駈f镖Z蠞}l宠赙臸\r鋽pJ>?gp{烕蝄0到u)谡s鐽?玢H嬴C9M5痍*鴱`阫掋瑤狏AhY?柀獖jJ樓匬N+^ D?斧脌钚€DP潇€LQ`O&枺\0貆怽$潊?怹n>菜0 躤缾\n€	卼rp!恏V?Py衈?|r%|\nr\r#幇凘w硇T.Rv?靔鈂nmBワpㄏ 鶼0ㄏ雖\0鐯P\r8繷\rG剌d	繯GP%E?@]\r朗纚\0蘍愒嗬bR M\rF鐋㈣%0SDr牉f/栢萝\":躮o厕兟%這?H\0耹\0炮	€W犨遐\n?\r\0}瓳濪馺#眛備.€jEoDr洽lb镭馘t靎4?€坤%?掑k獄2\r駸 頦@聮?\r\n~1€俋牑亳篋2!鬙?げ{0<Ek*m?谋蝲\r\n鎊i嵗 ǔ!.r  鼚鲨頵耱默砾+:庯炁婮鶥5\$L荑騊届襆膫 Z@红晏`^P餖%5%jp慔釽鲤onkA#&愽?衮<K6?桖矌虖⑻礓XWe+&?难瞔&rj?%襵偛熬舗K??侄媗嚓*?黵幫微墏?衆r+jp廈g陒 ??1(獖頩媊Q#痹庘n*h驙騰庀鹄\\F\n俉舝 f\$?3銰4%d燽擔JZ!?€塤狖f%2€?s*F€ㄒ撼EQq~矌`ts忠€憭(廯赲r罋?€R┈氨R畆蠖X贽:R?駻*3縗$l?谓:\"Xl淘tbK?劼氁O>R?∏=を\$S鬨$?缞}7Sf光[寎\"@萞燵6S|SE_>-銨z`禧?斌苹肆C?[酪纚D稗jC\nf錽朠?'€庤葧 QE搾鍺\\%r駉?o鶪+dW4A*€?TqE蝔?鵇碯?枾2.靿臨k€z@稄@E矰C耉!C驿艜\0痹跧?38帋M3@?L団ZB?F@L鋒~G?M难?駛?鋁褦騷茷f娝N€?4鹄X訠td?\nbtNQb;軕D傉L廫0痋"\n倿咪V淹6牙]U鮟Vf勸臘`嘙?O4?sJ晪55?揬\x	忘5[F苓祔7m?@SV臑#陎傉8 崭褘`穃\`?妚2昌誴湻+v鸘L陎Y.墰\0005(濦蝠粹暗[U@#礦JuX4u_颸"JO(Dt齙	5s絕悹酢儬雅?穅籢V嗑I赕\rg&]牗\r\"ZCI?凳#滴\r┄軗嚦]7磹爍?袤6}o緬梎u€ab(馲覦爁齅N)齎UUF徯绝掿jSWi臷"\\B1臑谽0 礱mP?<_嶭栻?c?Z*犂R\$録澏鵰v齕v>莪韕晥潑(逅0愷皽cPm\0R待p?媤+KQ乻6唥5[s鯦U?爹/€O 騐*)薘?Du33朏\r;v4叠H	_!舡2尩k徎+%嵇蒧,eo柘FㄌAJ禣萛"%琝n媖5`z %|?奈玤|老}l秜2n7蕕\0	╕RH@猪r挱xN-Jp\0鸺傚媐#€@藔mv詘厴\r桙?WMO/癨nD7蟷2饞蜾VWW桕w蓘7€薍苉劏餧竆$訫z\\騟.f鳵Z豠咮涔禒QdKZ撪vt镭€w4\0鎆@	黥Bc;蝏栥>贐	3mn\n雘犗J3旀k?軑俓"鄖G\$:\r嘏嗚輲摑G6€刹Jョy疡Q鯸\Qif鳝搌?飉)/r揬$J?滺蘛*蝌襟噂ZOD餮瑠僝1蝕22樋睏堬玣三HT厛]N?腗\0諿8x嚾瓻鏂?&L諺m渧辣獢j勛樓F迥\\櫀	櫄?s@Q \\\"騜€	嗄\rBs欼w	淵蓽N ?C/&佾`╘n\n橻k樄?A枲馮蟅*UZtz{?傜y楽墵#?pzW@yC\nKT粯1@|剒#潼€_CJz(B?V?K篲『dO棭€P郂X厤t冃叇篶;鶺ZzW_贍廫0迠翪F鴛R 	唳\n厔鄮喊P艫¤&帤殟犻?謕fV|@N╘"綷$€[卛拪瓡囵Υ郱0Zd\\\"厊`浩]禾tz衞\$\0[拌眜乪炵氡蓹琤hU-,€r 鉒k8肢哣&赼lж豚d韺?;	?-《Jyu棝a┑輁0狑〞a崳{s禰9V\0磭F珣R VB0S;D哈L4?ZHO1\0蕎g篠KえR厇ㄚi稼+?wz扻(G\$皑D+皌展(#獢oc:	类Y6糪0栬&辜	@	鄿?乱!泧处w€粶# t衳篘D罄暷?牾CJFZp滥a椖*F腷	兺祭專隳y仱彗Si/S?噣z閁H*?弘に?鵎??摥?k`皀躄i蔎雫聎郕n久\"韅引熵V?O寞8t泾蝶vo脞E.僐z`媝稰溤E\\偻骚?L鏻镅]T憞噊V€\n牑	*俓r粿7)κD黰?W?觻哂前╳菰b斎輡	糐V艰罍\"倁r\r?N0N鯞╠λd?頓皎€_瞳譤T霎H#]刣?鷙€~繳,蠵R%駠咘梢選哉羏A粱C咙m缾兓透饭捽c们y艤D)浾uH圜遬猑u\0閳寎选臷rg鋝荙M?j乗r梶0\0X租@q寱I`龌5F?盢筑V@訑sE飌掯?\r綯鳀DeW嗀捡洯併踷!没鐬:麯MV(ⅸ~X笣?0澹@樋?0N芙~擰衃T徿膃Sv\"誠"h鉢0R-黨Z砫楍吚蹻5P栌`?翫&xs9W謼5Er@o蘷kb?軵O-O﨩xlHD6/挚璵檗静3?T惃K葉54	駊#礗據YIN\\5€侼觾瓏楑Mpr&淕韝M萻q寑楕.F柾8s睅 h€e5狞逸鸢彬*郻?S讵喬e??X {?|眎栔傘葧6z傓綇/Y壋蹘M 苾 蔦nR*8r o @7?Bf鍅鵎胷锅A\$税	p慭0??燿╧脇45}繟€厣骔狂J?k Gi\0\"纃€桧8慭0燓m舐髞 `8痺?蒾4鈉Gh湵Q?韤?@\$<\0pひ0橱楲X+凧a€{霛B亦磆敦8Cy勻關2簼赢?覧H?脚軩qS囒橈p?買偛僰絗摞S韁n聸:轾B?噼饆-卖衊顎饏6窤燱≤朶r哤#?哈{\0羞艏cD牅[<悂勑f?-歱詫?B刔刵W安^帬R70\r?N℅N砛$(\0#+y驚轅iD(8@\r纇誋圚eバ蘻z纚1閰腊h賅1FWho&a蓽辒6〗jw樿牲互耟h漿v`RE輁nj啠錪贶驹瞧*埌矢}猋●	\rY嘓??\0馥寤嗞轪剂 Q℉El4齞ぼ韕?檰▉儭o觔r+_)\r`?衸dQ旫=Q省€馕蹲EOB'慆鬚飚粲敦 A\rnK俰典 	娏	?<	胦;係凘?	瞲掄:垎A?\\1d\$鵭O溕7?	?姕稈gu剒*癎侶5\"8杺,焆raqǐ?爃孁#嵜醐\$ /tn亡8y?甇傹楬眀<鈀??靈?(uo浝叚|`G藧S柙BaM	趥9茷D@?塀€tD续省@?o?H杺qC8ETcncR?㎞%紃Hj距2G\0塧 r燎z9b>(P愩x枨<嶗)魓#8瑾箃硤説?v邱Wo2U胛蝨硺+=纋#牦蟡﨑	0ゅ嫑&Rc鑌$?虘-Z`嗬\r婈;|Ap啐1	1來茍╞Ev(^€X2=\0}俉憟鱃近皻蔊」戻鳵?P僅墚r9	Y?扡B憫4€NC刏堫IC磻訫Lm⒙,羏@eY爔汢S(?<4Y)-豛rz?\$鄝躙"\"簫 6狤鵟r)z憭腀葢抮剱?鍍鍶褥湅缊%\$鵨齁構\0A錦$诎/5昭B0S簸渪揑篞)髸<?YS?憑娂b+IG=>r怭Y`Z窪昤U并狥1€婙4d8X(美苞C%巂忋湱0薎\$?W聀莵,Ac罇?詫閜\$忷濑]?哣Y蒤$p ⒁]糸`岥€e\0?鉢nK+跕DL酳€坮(on癕\0@9%僜"擶S萛"竿呙 浈櫴賺┴籮琠J-鰎蕼嗌?衆\?€5>Ze\"0皩%9y仸^甒Max&a)D獿谰?Q洅箭t?燒,?of?I瀄$\r;€?駗腬r揥@敢皶M|\r砓氊耛5魷怽\*s:屛FV!€鄈賳蘎簖匧3L	婘52癕€sb沑$衣?嶾0l聐槵? 9蛗m!箿0J€?蘐Sd椆銰掱裯K閂:l緿'/鶒:Zs?\n繀y?杋鹜,@也L牨j1<嵧3抹D2/;?P莼睖俙飺嬗qK劝琭滻銵 D莠?? 扥H驤	q?旝垝塜?r)F繶x灌乛QwOP斒h暷諡-_>腶0睈(	鉿%K俠稂蒃僯7憚尢霈唄Ht揱.r塒噲豿狅\"{\0006CVQE?€宁檗厧w惓杄'?B?x>:\"?3牑妜T\0e悢箦歫	匸t枰\"?\\K恊苧竴鯑e> 摢玕0002h蕠Xa<擩tU`甸仈?腚#掻忟?-籍4hFY|C\"M蓎茢Kd 綎揈??(U彩朮鲈 /D厚?錦"尪矐亘迚johz4乼嗨霥讓隚圂RZ屇嚖瓤\0臚V4Q?v鹖=G←犀媖蘢+\n>艵準\0?f{墏膺!J敘Q鞖J貥9?2?\\Z辄,裃堀??8`	bwR6噘\n*銒€┢掶(tL*鬝0x???剋H]7O盢倂(袚dg€q	\nLp勑LN壼H@?憸箐M 		n扎z憥焑4!!	€?妲?t氚蔄QP簤鵏,摙?粍\\踚欏繼繺$?爘Z€(S9╇郳n* +獦T蔇剒?(T烃勛Lγ騌癨$鋤写i碳W澩█Ds襸)訞犇	v鵓纆醧IV舀€€丰\n )??|\$pZ*?7A皹粑N娚j颪W€廢跶枻)eFUA揝\0[N堭?悍餢 :S蟃剘芐*T4	?]9誇尒]:朘Ug;*Ay輆泪1j|8潍死瓖I腗R撀Vh7uU靹r,慼%<q窻@N9蕨纊	繠|櫨剚8挅r爼粦鬌袪@\"勆嫟z\r拨旚凮繽Q裓0\0纜琞€f醆nz&簞燯eH從?k+TF?懓*03?\0扞櫍爐	f\0(S濉UZAF蔼1\0犦k嶿WZN芉瑒軅?皒1剰??-,浊秜zg捙#嶨h蓰fPH?Bj爑鳿n貯裋R潑摢1K+淢N!插S渭渫Y埥vdZ\\,?揼侉煴昌淺"}W∑Y傻鰐盤氠縢?篙僳	\0b-穐B/@處€/圡翊J乩怸\0斝脎)\n苕I?v	ㄑ葦1擻$?憌\r+鬾 岙鋝祍琎fQ荗慞?D琤V\0-荍<噄;[桚#徰蒼,j?)郳"牸攍YL.饱凙::嶛垽狟xOF7€`茭d鈣=觟)@泻嬮\$ q朔(y%妼huzb23僻枂.?h蒾O€\0`笐VZ勡&y顃9C枔¢嫮Z垢覒€Z!郮鉛湼河.k挫乂#8€}籕愥u8c潍tbE>v{@{QP]<ry熒j\\蝄$j簒鎛c6k?qs鏣樇蘇厯€jJ睙課\\C仼{衊g鸢??鸠怰k閠赆则椒s晐@隷0螀5:B?狭r选?傘锤竆0粺?ぷ皧眸溤烌嘢X蕰鱃玬炇禬r,jq\0\$藓sW絇?A\n4?(u穑.弆扸鉐u碓寜+軦渦C>hl6筠2晳Ge徳蒒鉀膎??庞~脼螬猥P襽?0z瀠r\0?uE襰\"猖運\妥涵缍^?3聺諔S%<+9羼跃圩珋\0趡'虨髦掽+?i帔慈@汵忹燶$o鮼阐櫸 ╙瀿贞籞?]鹡,锁x祯>_詅戦W\0006嚹%騷I乗nh還w饫泮澢 -〈H@_禫i潉墈黂喻^嗃攠5瀊,!5鄟H坧/毶k<<琷h|i犲k醜Lv輨\n綻[鄝琖C6马z\n曗r做u=!zC牛试顭e#€踤j呂\0`^;=E?@藋? 堲LQe黎?瑼?,凋Cx餿円爯G璢qO(櫛\nV9drD'5@x\$媟6墥;\"牵g?肻0M0艈H_#鋍鄍n><aa璹@g?眱lm-6弃け?怿?8?p脊凿>構ji店馧鶿$#E/?樀s\n砘B\r?垧z丰歰yn[螜 6穉Ι簦g8輖C封紲I峁rNF浫珪1罒70遗?i(B?樃Z梁(锾+S鯦,栦91/Y+jx颖F劚蠥摄k騠翵ee\r笴统rz飬m斒謍@9榘O茸 貪靷貵K橝d菩荗H捹辇窢<&`嘖A?WO;-裍孡呯m鍜Kz?-e[u紨p╭三無/`怌彃倓KX頸鸠繷7=匨?狥諶袍擳鴇Y\"=`11諒h慭r順责f@N槗z?@髴匋伋	h黒0歧漭誌粆PJKr拡pR`x甫鲀fo⑨?A€[?9?&jo<琁@p	@畜硠硷,y	nIs漗袔勋:Yvc暁貜9q.C8黚WV?阕覅?\$u锧5#S(4Y懮芀??脶N6<鯈|v1?蕣:躇!樤彷`弱M傓l洈f`歓蚃=北GX骙)_l市鎀?P暀`?熠:?Z\"lYS鯱丐(吲Y1Z‰媹rv)F`鍷~=Y>够歋阳歝书!l暷D壾BrF\$撵RA:蚛\P?訴誖6<嶰篠襙BCS+攧嗙'V2T#Lc霧籒BD%G黈駈R镾汝劮I\n'k0垻O仺袔彡鰠8r莜AS?婃xm鋣v胄縜焍桶?袇A敻埗單]pJ\\\\諼i塃u夳B)皙弱Z@螐 \"溔gg0{n赅'APR珘侉v觺?R齱靲\"锦穳磤H烰椅栙\\沑r}i?銘覓:珕2菹g€{I?)酈┭蜋Z鱯``.?2纕t銣X矷GU>`)?嗬?|雈<螝_限瘈慱G蔹懟_ 藷啂硒俒:?G8叭l?J(JC棩頯嗂蝫F纖\"b?,彺!趓闌躃(糪n@AsV砾S怪4鸰\ns贍e趮j二)&?辿k徕Q澇G砪踃^峀{馛\n飉鶑坭A舵D茺1O?(贶(岸疯2\"UL嬇+#o敻@豳鏧蒤0苜糬n_p雃Q藱X}%部*依e抦鮷圙N嚺Xl胵閉R\\Z媣!? 皼xd蝷,萩K断楫嚽m汪虸~岋嗀軰{+G荪辇@Q又,1!aEOc#6<u徻rB縗nθ矄dH塼	秢C睃x3堎鐷1箮K渨B圽0磩u懆瞾'訂Q僞偧驎i鐁Rv鬡煞筶S?O)澱鰴[豹xS輙鰺與)縦B囌+v撶鶥w?wC翗?—?d?H赁p+a\\H穂羂$}nNN7旽?逽\rㄈ扵谅瞱	*Hg\\佫\$??KBOx咡鹞5愪凁佣槄壚u2徢n虢糮湂Yq艱绰鉿wMBn?>嵡丟谮剠屍慪aKw(2`槄趙1m?:?LD8頤敎8l羂\<屌	矮z鵤嚂擔,獚K'?7:飹鷺M堦U[烖?;K稈蚸?/wG鼡圽n鶈卐V'幥,;〖B6烥?盟OKW斠狰(i裍\np肀C讴c6抆樸穩=没cQ繰p`\$	繢(\0D?{瘭ET颿嵚I\r{勭哱$o慠	腪Z?*暶???j跫餹浖Q`皖笈X3	\$庋窶抃n讐w"d醀羹杶@?吾?+-w彇蒌y6冉'卦咜Y)Y0\0?)?'菫v潷ιfI赲n闉聑??馼ψ!痗E癧ひF楹檏s迃鵅v?軻嚁?)J\$j荶奐$圷勀讞90淺n孃櫦.^J晵趮眀朱mI0:g?棟拞藯ATPI鵠~!齻;D妈	皕蕉<P籕>僲粋轥?%Y晛T\n\0D\0\0'啍H@0`奎篆10?甿?偵?A\0纞殈陙∧?t抙褦.w?)0	#c侊\"c诛脆jfW辋\0\0pC麥漦C逆8络85+i:掘[?騜筹l繹\"钩典5S\0滹?顢6V駍?粊7!?\"脚c?凮霶,筵员﹩\r?,*?乤Q﹗?鏮C|遢鲓碦(o(惁<j(郥v盃\r顐泑_\"?m撯S7D?赘騢顋灐??岪:蚣	\"-迬&Mu;?纀泻=p怇A6森?€? WW9釵,給'駐2贮€3\0貅爃@` 3TX蠚|賊"FC_搪~x潼靥`?f-4汒∥?襚'舄?A\$>圁`P呃_G(瀽E煠?/J罥鄓?m椁p逓Fo	?[i鹭媴G*兙峺?駩近°?q隮?鲧湭羚B单橽r鄉磖\nUn僻鶟T>煮?	歈鱛焲溜茁K阱8筅夶e玑_xz鮴峀责穚14貘d齻〖U#4t蠯过\$?噜p攚矀凁痁x翳_咇飷i5T?}鹚C☆憫{先鰄/Gzj\$.B缫=#柘弢韱*▏糊I氅魒/纠a顇`*┆*彸鑍?a?'}FJS茱衷朅0?澜镳愲薀?:63沸积鮪'泐厭漊/r抾=slb0穰\0W隁rB検櫐@T毿~\$仧堻H煄?	敤D\\╆-宁(屷〇B闂M翇誾+??戧i予愎儻I斂?/?y/壕\$纚Q}p嬡籨I哱\諑€B\0V0糂?{T\$n?\$Z鴈頟某眙%9?桌V邓b瓁}g\"%h焼*俑vOw乘鞠/無長,搯?翖V5Bg 隙?隐葉\nxi譢"抳@鸩烃偅n祝芟硑ac闓?%[暫4`n弼47!5欈€r鶡谄蓧镨>z?Y梩冫0€V鄭匬€ZXT`2€~Cl昔俒o錸纓8jB\0d診0000爾V蠃g胬啝@V!媓\0006d<顗=[燱缞欲f@pb腶€栀;汹镚<巭a鉄?甆睱框\"(伙??藊#?聕S呬Oて?朆4梨+*?轾)6#+?'煻?X窍貸O\0爛");}elseif($_GET["file"]=="jush.js"){header("Content-Type: text/javascript; charset=utf-8");echo
lzw_decompress("v0渷F)绦==樜FS	惺_6M瞥樿鑢:橢嘋I词o:C剶Xc倽\r尕凧(:=烢仸a28鸶??僫癝ANN戼饃sNB崽Vl0泴鏢	溗Ul(D|覄缡P>欵嗐┒yHch渎-3Eb撳 竍竭pE羛9.姀樚~\n?Kb眎w|萡趋d.紉8EN︺!斖2?﹫醆r嵮Y幪鑩6GFmY?o7\n\r?\0丏bc?綫7楔d8嬃~懍N)鵈谐`鬘s唣`芐)蠴闂风/<亁?巓辉宓领3n2?r机;??圕权畨肻n<駦`润痓鑌\?峘?\r#`<疊e鉈# 茔\r.D`j?帋par傍恽瑚>?覾$蒫牼1蒫湢犼陒n7烂A餘蔙Li\r1谰??j麓?玛62X?+忄?\r魞!x煎僪?汊?S餦0R镌赳O襖n?(W0呫溓7q滊:N肊:68n+庝沾5_(畇\r銛陦/m?P訞肊Q佮?\n╒-嬃骪"?:錔嵪8we蝢絴貒砐]递Y X羍鍅W恻 ?恹Z1嶍hQf巽u?Z{p\\AU薐<鯁k崃@忌嵜郂}&剚圠7U皐uYh愒2溉@鹵 P?薃唄杼虬?脹鏧E蛥Z圿璴酅Mplv? 罤W懺y>怸?鳼熻/珴洩令爃C燵*孄F悱#~?衊鬨r#0P顲藵梖牱☆肻\顩秶乛?B<廫\f薇裴休?/傪L\\jF潹jZ?玕\:拼>丯汞XaF肁巢鹈赝fh{\"s\n?4囓吋??躛p峔"霛榜雀\\趀(窹僋奠q[g噶r&}Ph枢±W夙*揄r_s薖噃嗉嘈\n鬯胦m蹩ッ陾?А.羂0@pdW \$液癚劢Tl0 肏dH?殗蹚?P榆豀恎帻U彧B鑕\r唗:囌\0)\"舤?礈捽荹?D鳲\nR8!喥氿躭A黇?爃q<炧@}秒蔳K盷]猃90皝'€怿wA<們補羱€W氭僁|A磫?覺賃2嚅y艎悐=)玕0P	榮€祅?顏r刦\0叿簐姨G罥@??丽_I`挑臷r.儬N核KI匸斒朣J┚aUf汼z麅玀%\"Q|9€Bc羜\0??腰a劤:z1Uf>Z筶墘節永e5#U@iUG聜櫓n?野s墅gxL磒P?B鐚蔘峔\b?榫扱凖7?篭r:僼欹:y( \n踕)幸\n罼;爧鞄CaA琝r彷駸P℅H??\n\nAl~H狕猇\ns斋嵠bBr*剴啕3\r濸?⒀刓r}b/壩慭$5隒鋅"w藼_鐜U誫At毪魠澶呴^Q腻U闹j櫫頎Bvh臁??广+?<杍^忺L筻4U*狌丅g犽墟?n蕱?荃	9O\$磯胤zyM?刓\9荑?o姸毺敫E(i酁溎?	t邭闈-&nj!\r伬y測郉1g鹨鯹yR?\"疰穬垀理嘬)TZ0E9M錣ZtXe!輋咢鐊痊yl	8;惁僐{勲8漠羍?UL?F?8PE5-	衉!?咉燵2塉利HR查枪€8p鐥草嘆櫍0,债psK0\r?敘\$sJ伱4蒁Z┱I'\$cL擱仏MpY&復iz3Gz覛J%撂P?怺?x绯T緖p锭z婥講ビ:僔'漒\枓KJaM?喊S綷"嗖e漮^Q+h^衖T侌1狾R鋖?5[輼\$狗)jL苼U`薫Z^饇€噐箭鱪鐧粬楾U	1Hyk浨t+\0v酓縗r	<溹茩祚jG灜t?3%k沋懿T*|\"C婞lhE?\r?r囎{?宀貲躝寚.6懈琨泓噭rBj僌'蹨ゥ牺\$ぴ`^6櫶9?辅?Xmh8:犒c?;?詨房关;鋅\'(狀則?+欜谭癪乚N裿圭#?雟鹱肙i澫柀>忿<S顰\\€\\畹??*tl`鱱乗0p'?匬9穊s渰纕畕伏7圽"{燮r頰?縙婕軪鼹牍g臆/▲濽?g额?仍`腬nL\n)绬?A鷄餦" 缲	&凱翤O\n甯0(M&〧J'! ?夵颒腩络迄*蘾炱*鏞Z韒*n/b?愽異埞.焘﹐\0问dn?鶑巌忷R幬隤2阭礬0/v霴X黟鳩食蠄岃甛"癞牿罡??鰝?b诵gj痧\$駈0}	頏=M苽0n頟/p鎜t€靼.烫廹\0?o梊n0洒塡rF堕€燽緄睹o}\n摊	NQ?饃Fa蠮钗魪L鹦嗥\r劳\r€嘱0?瓞蒬	oep?D熊蕫(~捞 闬r侲佰pr鵔VFH渓Kj銷&璲!虷`俖bh\r1牶n!蓭z櫚馥蚛\\r韸胉V_k诿\"\\讉'V埆\0示`AC毕叇V芵\r%澎r疋儌k@N腊鼇B耥殭 ?萛n抃0Z6癨$d爩,%?la鞨譢n?\$!\$@遁2睄I\$r€{!卑J?H郱M\\汕hb,'||cj~g衦卄寄己\$耗+闍1饻E€蕾 <蔐裓$釿%-FD獖d€L鐒碃猏n@bVf杈;2_(媵L男柯秉%@跍,\"阣睦N俥r鬨0鎯`€?'ld9-?`潴艝呧吨鉰6肫cv牰郚胀恌犞@軉?払\$宥(餤&勥?78I 嗫郟\rk\\彠?`禱rdLb@E鰞2`P( B'€€??狋{聬晸?dB?騘貕*\r\0c<K恷?sZ綻豪繭3?=@?繡>@耊*	=\0N<g?s67Sm7u?	{<&L?3~D年\r艢痻?,r頸n?犲O\0o{0k蝅3>m?\0擨@?T34+詸@e擥FMC蒤rE3薊tm!?1罝 @侶(懹n 闷<g,V`R]@巧3Cr7s~臛I骾@\0v掠5\rV?瑺犖涝\r鈂$<b%(嘍d儖PW念刑bfO 鎥\0鑮 鈹lb?塿j4礚S绩执远5&dsF M?覾".H薓01uL砛"侣/J`騵渠蕏菒Yu*\"U.I53Q?Q艋J剶g爳5s帔?j褜捳u傎狦QMTmGB僼l-c?炳\r姭Z7怎?hs/RUV佛舄B烴藞该筱詩鄆↙k?┐膖鞝榫﹨rYi斦?S祪3蚛\歍隣M^璆>ZQj嚈\"琲斨MsS鉙\$Ib	f庋u姒礄潸SB|iY娄冟8	v?閿D?`噯.€薧驢臡塤占妘罊U蕑`Z岼	e绾軥Ce黼a塡"m骲?辕JR慣?裕XMZ芡袉万p枰丢Qv痡jV秢都臗淺r嫡7塗蕿 5{P隹]抃r?Q郃A黎帇捦2窬爴V)Ji\-N99f杔 Jm万;u@侟F牼e唈€摩廔堻+CW@饋缋縕憀?赛2舏F?`KG榽L&+N忇YtWH椋憌	晝騦€襰'g摄q+L閦biz逝⑿.袏莦W睬 鵽d昗鞴(弝)v軪4,\0\"dⅳ\$B銂矌!)1U?bp#舽m=兹@坵	P\0鋅r⒎憖`O|肫	溕嶞捧鸜翩J諅鯡踪Ou瀇n`F`}M?#1醾琭?凑掸  縵鄒c麁棾 xf?kZR痵2蕚-啋2?幨矾(錽U鮟D蜓肥鞓軽!嗤u?-vP胸\0'L飳X 鳯箤坥	簋刚覾r@貾\rxFE€倘?飚?5N譁兏??鵑嗣叐w奰豩X?8 亶qz阆d%6虃t?厱樹廘l臼,躃a昇~累禚,'砬€M\rf9悩!x愾x[埾懾G?;剎A橓-I?5\$朌\$黾?呚x熏翑嚷蠢宂洡鯂&o?3?諰z嶞6耕u箊Z 柩8_暽恱\0D?歑7啓珤y監Y.#38牂莯榚擰?貈*槞G寃m 弛刌犂赸YOY‵氋)剒#\$e姎)/寊?;櫁琟埴F襔g暊眺歚^趀…#撠駭?湼eMZ3u体亙0羹蔦"?燊@讞Xv昞"攲宫?寓\r6v~嚸OV~?专乛g鼱毮戀瀲'€f6:-Z~箽O6;zx伈;&!?{9M俪d \r,9猪颁稺戚?闬r滪銤@鐫?⒎]溙-瀃g灆蹏[s禰i炠i萹洓y涢x?搢7蛖7藎w硙劉鸚皜Wk竱J貋鍓xm埜q xwyj熁?硺e?博壐崫肋镁檰虺 {柽趶爕摖籑桓碄蓚摪Y?g蜌-┖╀怼∝J(丂髤;厃?S紘礩勅p@?鑣烔o?;瓣眶酩?	?圸N侬潞 k糣Хu塠窦x潊|qN?€烧	卄u?峾瓅X工瓧爻|O靫!犏蠗Y]柆箮檆暚繺r筯?n连€?'楖傟酄芢rS.1竣US雀吋X壣+松z]傻?湬世C薥r姿\\鳿$蟕)U蘾摔|穴x'諟靥涫<嗵檈蝲晖崇鈷涕桳锵軲蝭€(郄衛徯氦O]{丫FD賫u嬔膾?XL\\x迫;U咨Wt€v熌\\OxWJ9葤識5稺iMi[K€f(\0婢d臍诣咯碶rM尼荣7钧让企荫缬6塊师I猏r能脁v\r睼3折呱?郣嶀|熱^2塣0呔\$燪弯[憧D麽埽濑1'^X~t1\"6L濥?続酁e撴錓戠~熷獬獬@哒pM>觤<匆SK?H衫糡76賁Mfg?臛P拾汸謀r搁>鼍ˉ2Sb\$旵[刈??炥%Q#G`u鸢荊wp\rk轐e梲hj搝i(翳rO霓誉豑=?瞅額4\"ef泘韉欞鞻Z墯鱑?隻'V礘Z7埚?T懀8.<縍M\$墳糅?遙y颸n5鴥蒗_鄔裎鞺饞`ei蘅Jbゞ饀S碗?湾`鲠烄+鞠 M飃?`韁0?燉_?鮂癨0擋嵏X宕抂帛J?&~D#瘤{P佤4軛靳\"\0纮孆鼲覔枼\0F ?*彔^耧嵐瀵w胄濟伨u嘞3xK蚟體摷ㄟ瘔y[詾(炴?/zr_攇锋?\0?€1wMR&M嗼?St€T]荽G酊I粪Ⅶ?嚛B飯 v臾捊1<t肉6贱W{婔x:=阮憙逇篪:?!\0x浾槪鱭&徼0}z\"]霓o晍襧脀走授6敢J蹫[\\ }`S橽0啶qHM?7B拃P履]FT8S5/I裓r孿n 侇O0aQ\n燓?璲匊=诂踕A=璸L)X鮘n娄`e\$楾痞QJ澩螽鎙J飱灶褃処	泮冄哪B鵥P绬鸝竛罢U;>_裓n	觉胄`評M驅倐轮峬阵翷w鶥\0\\b8怺z憹&?齖0	rT肿泚€+\\?繮lb4-)%Wd#\n儒r錗X\"稀?Ei11(b`@f瓋S殷坖錎啙bf€r緫鼶慠1厺碽楢埏Iy\"礧v嗔gC窱J8z\"P\\i\m~ZR耿v?ZB5I娒i@x攩钒-塽M\njK誙癶\$o棃J悉!萀\"#p7\0 P€\0D\$	燝K4e衆$\nG??AJF4郔p\0譌?辈<f@ %q<k鉾€	郘Op\0x忧(	€G>@冂破9\0T缊橃GB7?€G:<Q#ㄓ谴??tza0*J=?婮>剡8q啸	€O愧X鬎郠?伬衆"9懏p??6A',y€IF€R埑T埾齖"旝H繰?磈#kyF罊鄀懍zk瑞G\0paJ`Ci鵃T|\n€Ix\"?◢Tk\$c瞅茢aAh€?燶"鶨\0Od腟x\0T	鯸0倿?F躙n扷搢?S&		IvL\"敁呬\$h腥轊A颪\$?%?\nP?殦瞷わ) <囸燣崰?R1も6懚扅丂O*\0J@q箲元#@堑0\$t億]鉦弧膴A]挽P釕€楥纏\\p窑\0遗7澳諤9゜恗坮秓C+賋r詅\r)d捬湱^h逫\\? g柺>ネ8屴?朒纅檙J襕r鏾ク.箆斤#?yR?﹜酥^蝙泦F\0岜仚]!蓵肄?+賍?‐0<@€M-2W蜮賀,c晫渆2?@\0P €耤癮0荺\P翃圤仩鴃I_2Qs\$磜?=:蝯\0)蘞h娐柫纰\nJ@@诗朶0汎 6qT?J%昇-簃つ邈.蓩%*cn渌N?\"\r蛻蛤钘麏f褹盗p鮉踿I7\0橫渠lO?臩	7檆挽€\"爝0鍝6頿s厲妮鍄.淬	馬K昉Ao1F聇I腷*闪<嚛鼲?藗p,餄0N坯:牗N瞞?漻O%!趘敞爂z(M罄I绵	鄟~y琐沨\0U:樨OZyA8滭2Р鸶蕌s迆l蚱蜤饦O?睙0]'匎≥蓫孃荜;?€聎音濅?~3G螙~迎濅c.	騰T\0c豻'饮P瞈$繺$€?俿瞅e|?旲d蠴bw渔cⅤ'覢`P\"x佃?O??|鉛{:b㏑\"?褕k樞鈆BD乗nk€P濄c┽4鋇 p6S`徿\$霅f;??ls肋唃D?4Xja	A噮E%	86b狕qr\r盷C8蔯F\n'褜f_9?(?攡娿iS枸惿@(85燭斔[J趰4両l=嶲躙$d喇h銨D	-佡!黖]哨H柶姅k6:汾騖\M-特痱r慒J>\n.qeG?QZ嵈唻' 散灲蹃0燁亃P栢#鲋r嘁t綊蚁藥<Q垙T福3廌\\箘挠pOE%)77朩t漑呼@泿歕$F)?qG0?裌磛璋*)Rr?9qE*K\$g	鞟!錚jBT:桲?作H R0??A)B@:Q?B+J?U]`勔瑵€:p?%Ip9屘€`KcQ鶴.B敱Ltb獤yJ駶E隂T楗?曃鯝m愉Ku:庰Sji 5.q%LiF簹Tri┱K堃▃55T%U晧U贗諅Φ誝\"\nS誱喲膞ńCh鱊Z禪Z潝? B牯\$Y薞层€u@钄粧ⅹ|	俓$\0\0爋Zw2襽x2憹鹝\$?I6I襫暊暋I,€芉U4黒n?.鳴愻謅I醈櫪犺L鈎\"鴉⒂夻楘Z?L`n権墩?擵LZu卐X喓B楷簰怹`;旿嘳蜓€銼8极f \n诙?\$鵭M(箲蕖攧瑵aG恣?A?鑨L/\0)	C\n馱@?悁忈郓 娫RZ儺燒穷8揱?~鈫h漓P 伆\r	烄D-FyX?蔲癚Sj+X髚暼9-鴖瑇攸嗞+塚蒫bp炜攐6H衠牥@.€l?g結M熤WMP廓U》YL?PaH2?﹦:禷瞏d\0&瓴Y燹Y0贅《S??;/嘥軧S砅?f愗暊@逨憩(粗?裶 +[僙:QY\0薮隞UY謸/唒kz葓騹,答獓僯陉€白磂㎎礔鑽齎BI礬rFpF汵賯侄?炸?k?€{檨曾`q檿也Bq礶c谮訴E﹤琻侎卒FG燛汘j铊喧?g碼|h?u螺剭\$晢臌a魲7&‰癛[WX勈?q?潓琍蛊渥栞c8!H嘭VXj蔤庺憽グQ,DUaQ盭0懻炸垒Gb淋l夿t9-oZ鼣峀%颅錺藝憍6&My韵s覑繓餦"胀€鑂侷WU`c靼鄛l<|聗膚\"佛vI%r+亱R喽\n\\伫醚][嬔6?粮萑a斢红舑?趽餞褤稢'叴 '%de,萛n朏C叛峞9C筃湫崅-6擴e鹊岧CX蠽眱澒+訰+斔?B佢孞稷铏湵鎀2]\0P鑑莟29献(i?€a飘1\"S匉龇堉oF)kf趄歇\0涌,誻陜J@熘V騽幍閝.e}KmZ镥筙nZ{G-击語Q函莭懪锥?筛腳炟佌夃\n諤7違 诊嫎C\0]_ ┦爹锘}鸊罻W: fCYk+橼b鄱乏?S,	趮?橽0锆?腪!痚2鄾楉k.Oc?v坍8淒eG`蹏聦鯨滨?僤薥"C嗜諦-斈(剟p黜觩褒噘!齥捸夷飣(蔅杒r_R顥芗08a%蹣L	\0閱礼b矚衽@譢"蟫,0T踨V>垍萉熜\"時搠P&3b酨叉-爔傄眜W~峔"*鑸瀸N鈎?7﨣€€^A鳟C棹籶a\0..`c沛+蠆釭JじH坷瓻叅緇@|I#Ac?D悈|+<[c2?*WS<坮鉭港舽墛>i佪€?`f8駙(c枭Q=f馶n?裞4?q潖8\naR鉈軀癛撟昕輒祳\\q邗gX罓枍蠋0鋁浍`n頕€鞂O p阮H駽償jd颠EuDV槓bJ搔垮:憋€\\?m杀?,TIa嗀aT.L€]?J弻??擣Mct!a侑R闒凣?笰鯎籸r?p嶺穃r或C^?佱?R閈0裦*郃\n跽H徙頨=曲鑵l€<嚬A腳硅	+懳tA\0B旤Ay?fy?蝐;p枧幡漙鐠4小M?滎f嗞 5fvy {?┼竖y^c馔u?嚈€8\0奔颖?奼氂 8B嵨&p9諳\"z酋rs0烘B?u?f{譢0Ⅹ\n@\0溃乸愘?.;帔﹦蔮?J>藗夐-肂蟞kR`-荞勿aw鎥Ej﹨髁r?竆0\\溜€\\窾hm ?m誋3檀恣S檽伶q\0鶡NVh矵y	椈5鉓蛶e\\g絓n鏘P:Sj≠惰<幆x?孡钧nf投c髊洣\$f?l锿硡溹?%y螢総?棍gU坛d颸0e:锰h颶	衈傽鐮1€蟤#袾忬w@屵O痧zG蝄$颞m6?}僖覌歑'譱\\Q篩潃?k-.琥yz讶軭喀]骀x錑现3M\0€z7劤6?DO34澽媆0螝涅伟t\"蝄"vC\"Jf蟁蕿扎ku3M捂~?V 鄤j/3鷥@gG泒D竞B覰q促=]\$榭I圂訛?▁=_j媂侉漟k(C]^j費镣F铡屶希Cz纫V例]&瀄r碅<	娴吕茔?僭状輅jk7:g皖?债犭揧Zq謋tu潀峢Z乙6璱銆??蹰{-7_:白迱t询韈k媊Y拓&摯闈I鮨P`: j瓄h臊衒	肹by灑蕗o袐B癛S梹糂6繼@'?骧1U跠q}烀N?X6j}琧{@8泸?	螾FCB郳$mv潹P鎈"痕L稣CS砞洀萼E俎蟣U喲f韜h{o?椾)鑌0@*a1G (D4-c驪8潱N|R泦釼M赴譶8G`e}!}莗粐茯鼲_竿裯Ct9幯\0]籾鳖痵粖輣鑢Щ#Cn爌;?婠wu笉辬脀轂.濃郲禽hT鱷篙鍊	绋藖嚪J饙云梚J?鎬O烬€圎孢E旝俅慖m埏赩'緻?倇獞涷霪祼;韔p;^栘6哦@2绡l轓锓篗縭€_馨嗣嵈` ? y??懝钋7/羛餰>|哙	鼾絔衞c侞戓&鍃Nm崳夌兓o稧肗	p梻粯x〞媒蒺儁\\3鄰鴩聙'諭`r釭鱙木?圽\7?9臹p噞<Z岱竡4檜蝲折Q蹤圊p欭歩\$禓ox馹<伬?pBU\"\0005崡 i讉桓C鹥碶n鬷@[銣?糺衼?b鍼刓0?F2~幚硷U&殅窘嵖蓸	櫶Da<€鎧x秌婟皉3樗(l_攣匜eF洕??揔	\\訋ld	?丠\r€p!%bG鎄f?\0溫	'6罏ps_涐\$?0\0拁p(丠\n€1匴:9胀瘶`嬫:h荁栬g汢k┢p钠侒t检圗BI@<?砾` 陫y乨\\Y@D朠?妡+!勧W励.:Le€v,晓q驛国灃bY閳@8焏>r/)翨?佬?伔奰|楦:t?珛哩?<疈?S挴P\0唼\\驸 |?铤V製w鐇?煖4€荶jD^触?检腃[?М閖潞[燛阁 u惆{KZ[s瀫6係1澨z%1鮟櫍B4圔\n3M`0?珧搪3???£!YA繧,)疱昹哤['剖I聡Tj儊>F┘鱏燘斜P峄ca寀铫N侠鳫	LS魨?斦Y`缕萛"il慭r鏐搽/岕泺%P€陷N擥?J芚\n?a?3@M鍲&贸筑繍,癨"€lb篾KJ\r颼k_b鼽A豳寞厅1I,泡铧圎B,助眷Y%糐爭?v攢'唟哐楞劄	wx:\ni岸硳}c腊eN颼!w澠\0腂RU#豐?<`枑&v??韖O?危fL9廞B蕠审鋸b余_+铽*€Su>%0€帣﹨8@l?扡1po.腃&巾蔂B朗qh槮蟓捔瀦\0盽1醎9餦"杸?怽$鴮秪~-??3r?怖d檚\0条伻>z\n\0??膥戶楯鸪瘊攟S逌魻k7g閈0岤K誀d賏深Pg?w揇絷zm饮弱?繎駣渏嬠茁`k灰丵郶?鼘?五淊/wb麲wOk棉觃?儸-CJ稿7&á吼E馶0L\r>?蟩虂愐7萘o姍`9O`堗償?!}鱌~E錘萩旜Q)灬##驀€靽萄憽J衲z_u{驰K%慭0=筢O嶺禖>\n瞼厊w?F€抨務a烯U愘逯b	N锷h娊婚?)轌?鼨|惚y/焅0殇縕攞檫P鱕G{?Z}T!?熣=mN胒豛"%4檃鯸"!栟焷礬0珲铹}活[蜱芫畴bU}悔昺踔2睍爡?t?#?沿柲se€Bp&}[藷幥7恻a鵎?纡P\0欝g简?汏,謀0哌坮,燓繉齏誉稆/筑[q龕k~C計4G姱:剙X鳂Gr\0砷熲烲%VFLUc鋺HybP傏'#	\0锌旃`99縹矧_棘0q?K-貳0郻粝t`lm觏?b屶茦; ,='S?b淑S劸Cc梼觌蕧AR,冺芚夽?厹8Z0?靀nc<<龋3\0(+*3窅@&\r?@h, \$O刓0艗冭t+>嫓b獉拾€\r?<]#?傷N靤螽艓€⑹?颿?-@狶 >結乸#?唂0蠲时a?>卉`婆郟啁9o皁v筊)e\0冖\\傲\nr{卯X櫼旺A*矍.D鹾7亷患?,N竆r嶦櫾鱤QK2惠━絲傀P@鞍	T<升:癤GJ<癎Af&譇^p鉦├衶0`机€);U !衑\0=蟘唒\r嫵爧晋(鴷@?2	S痋$Y?榀hC朱橔O?罫箫/氶傜琸,啹K錹o7BD0{儛鬆j&X2珄瘆凴蟲ぢv龄髫@9A毒0堺0?€5/擖茜 綨?E瘧椙	+阈吢Pd;?n熂&8/jX癨r悮>	P蠍W>K鄷O挗V/敩U\n<哎\0賊nI乲@悝僛嗳夕虏??€%駜傝?\0001\0k鑐1T ﹦倦偵恖紣毨np傲超硡< .?碡5幮\0	O?k@Bn緤<\"i%旫満z擇?貾!餦r繺"琝r 堽歛d圉螈U?谇?P琢j3d皯>;愉峻瀟62鋄吗蘧M\r燓昂\0潇P畟B璜Oe*Rn測; 8\0苏o娼0鴌馒?蕗2@数啵畀?x鬧鱻勖La幆亙w\ns鲌A部x\r[補?clc=妒糥0/>+毆鳺[磑2馒?e?HQP镈Y搝G4#YD咑吅p)	篐鷓悗&?*@?:	釅T	瓱H5冸h.傾>滐`;.煭頨摿a	买鷗/ =3癇nhD?(\n€!腂鷖\0藾?DJ彂)\0j臦膟巋Dh(鬕?!晓甴,=埘嗐tJ€+S醣,\"M改碞?縖;?醣#<孖臒孭?尼LJD霵1\$念跫Q>dO紇??mh8881N:鳽0Z娏鑄 旴C莙3%\0仫\"XD	?\0?\\?#乭紇靑b俆€!d獥埼黇\\2罄S肱艗\nA+徒p歺iD(旌(唿*鲒+耪E蘐燘鑃稢瓤T存倌 e凙飹\"|﹗紇8腡\0002慇8D^oo儌憒擭鶚籁愂J8[3迈頙峼壮WL\0\0瀫葐8助y,?&@斃 怑J慼;?f?B?:檬蝃Z3珎餹混肴懎锳⊕觪P4,勼篨c8^荒`變傯l.県迶皾侽+?P#巍\n?圮IB绞e藨丱\\]温6?劢貋(!c)燦醺貉?E擝##D 鞤do藉P廇猏0€:躰茻€`  Q劤>!\r6\0€塚%cb丠F?&\0B?I?捹#]鷺谼>3<\n:ML饜?C駨?汶\0悡(釓H\n篗€\"GR\n@忴`[皿€榎ni*\0?堻€倫靧?かHp\0€N	繺"€甆:9q.\r!崓碕衷{,?尜亰4BlqXc4婲1扫5玏m伹3\n伭F€`?憟見x?>z>N琝$4?鬀蔑徛(\n靲?	胂礟?Cq蛯宲璹GLqq鯣瞴虷.玘酁\0z誠$€AT9Fs喰參D{韆cc_€Gz?蟪 軁Qh蘃B指岦倅!L瓝€?\\偛堫狓'H(備-礬"僫n]臑埑璡\?赻M楬,g葞砘*襅f?\0颃聙6秷?戎2骽J?賩nq?噙魨蒆?cH?榎r扂稏7?嘬€Z矘ZrD ̄卟`rG\0l\n甀崍i\0<变泗\0Lg厏惃E\$襊\$夽襊萍T03蒆GH眑蒕%*\"N??湒	€蝄n馛rW蒀\$瑬p%塽R`浪%騌\$<慲諭fx鱘$/\$剶仴乗$湚扥?嫃\0嫠\0廟Y*?	闬r軠C9€?hh帻I?\$朢RI?\\昦=E劃騯路'虣wI?T拃€扅┚鉑9%榙⒋穫!鼣伬世襧臁碛&剉虩瞈\=<,淓宍Y硫\\煵偆*b0>瞨,d杙d寣?DD 號`?T ?? P憺?鳿r騜?專鮆谚皖T0騚`凭掼眢Jt┦?(d鞘h+ <蓤+H%i嚾魦矔#` 谑?簦B>t疛€Z\\慲<J?hR肥8顗€hR?J]g颞I鋾?\n%J?衁帛wD湴&蕱D碑暽湭R\"?Q颞 敳AJKC,浯mV捇幉浭?彬螷I*眗▋\0荓砛"芀b(嶓J:qKr穌?)翞藛#愿厕竅篈籃?[栆ㄊ歼4’.?虍J?坍#J嚵g\0沏驊В<?敀餕?	M??d?'/浛2Y蠕>璡$l篭0啯+鴹墋-t簰蛥*陦R\$邤蛱K?戳JH?\r効B弬?P陀?\"鼥nf哱0#袊 %\$氖[€\n衝o滾J皩庞耬'<厙1K砹y蘗1でs0?zLf#/%y-菜?-劼捦K悾L段伾?湷掚竅,に痰,湵挮劎0敱?.D馈@?風+.|鳏??L?垂S:\0?刺眢G3l塘a藧l矦L?z4?虙蚅?粎?0?3=L?|葪?\"笆?此?,\$琒PM慭\蔽?J奩撎」?(耡=K4湦矯踏<衼匌\$?怀UJ]5h砏?t諭%€?砛\M38g蛠5H奛?W1H毐^寿愿揧蜅貭復?侼3M?脜砢剮i/P7dM>歞?滾R茆=K?0>疘\0[瘐\0咄\r2粼騔@?勠27?銯G+浏覝臷r)鄅QtL}8\$蔅eC#翐r*H熔珟-汬?厮?冗\$鳵C9仑?個?黭/P0Xr5儭3D悇稽T猎抭疜舂硁蜨?F:1SL蝦?(島)竂r?€nJ肐碨\$\$?螄9蚤睮螣? ↙胠敁?渑C昇?浴骪$?蚤s澤9@6t摬甆?即種鳃箳?鬆蝇:D嵊罬)<#栍肕}+?蜰癫汷&勷Ny*岒蛸竅;耋蜲\"m谀笈M酎c犅磦氨8K,从荖?07s譐E=T岢芆<贼常J椠D撚:螩<撪藟=滂螽K愂惶橙L3瓘凩T衻3蔛,??蟩-岏s?烃?蠹7O;軤`鵒A9大裣籠$滭O宣忑`9蝞荌丄寈p荟E=O<5衔匌2窸?d磶磳`N騣O>岨3絇	?をO瀖滫S餗羲咠?鉪悚A拳9彄慭0?睝儹9D帊辽&荦驃?湢撔i9籠n?€馎篁拳AS薖o?kuN5▇4茔?唵?驏寭*@(甆\0\\蹟dG妩p# ̄?阔\$2?z )`耊?\0姂80h彟お斾z\"T袖0愈\0奬ne \$€rM擙\n睳P鰿mt80瘊 #へJ=?衅3\0*€滲?€\"€堥楮€#徧>	?Q\n岎甏8?C\rt2僂C圽n`(莤?j8N筡0萚坤QN>)?\0x	c餦n?徸Ch黗&\0?裓0鳿n涞鶲`/€剭`#徐怷c栊螪 tR\n>紒詃B駾碙心条変型Dt4兄爅攑礕AoQoG8,-s阎訩#);5碩Q袵?Ao\0燓tM覦8yRG@'P魿	簏P魿錦"擪\0拹x~\0ei9徐渧))训Gb6€盚\r48袬侻堹€矲tQ?H攞R} 鬠Rp復設\0t8へ瘥吻[D4FD#恃+D?鬗徥傀RgI磰Q颙〝擴?Em忺TZ璄?汴E矗襮FzA哈?T婹3H?TL襮IjNT?Ch峏\nT浹貹\0000?€H裓0揊E@'褭Fp磆S5F漒"蝟旬恊%aoS E) €揇U牜Q桭m窝囱巡e(tn 揢1埽~>峔$襁莻挱(h涨慓鼀`玕0掙	冺G??Sp(鮌鉍韁$敎#	啯N╘n鬡\$鰨]詼P=\"R莹?Lzt穬1L\$\0曾G~?塊N?旊褿M攨NS€)厌O]:詩S}?1郣Ge@C韁0玂P餝鮊?糨T!P旲演S€?S塆`\n鳃€揚癹?R€ @3\n 鲝D訝纡L认紟	桦\0鵔5舻〤PSMP磛4喓?h	h隩嘍0謴酤&襂Tx鬙?旲UR8@%詵岝K€錕泱RyE璄# @%L喃Q玅*?N5\0\0乀隖詳R烻!oTE翪(稅三牡\0?3i頢S@U鱍eM	K豛n4P誄eS攽\0漀CP偔O?燶"RT慃€廠徚U5OU>UiI誔U#UnKP簦UYT?誄彨U?\0+焊?融:ReA郳$\0鴰荳D?藐忇`U5襂HUY旚:P	鮡\0MJi€谬Q齄@玊盋{浾u鸯?誢祐\0WR峕U}C鲫1-5+U?韁r鮓<?5旿U-SXL赃 \\t?襰M誦務僔軄t孇翸U+	E與埾?Nm\rR莾C?嶴荴?R议XjCI#G|?Q貵ht餛嵏 )<筜?孕RmX0組鮋Q遈齢阔duふZ(鼳o#lyN琕€Z9I嵑M暒V玓uO諈T誘臙諊址S蚭档质\n礨氮S跶ER党再[MF盫鏞=/醐彣>鮣展T鞻峯U廡砕扤€*T\\*蔑凶S-p礢彰V誵€M(螿=\\?UUUV瑿暷Z豛nu扸\$?M@U蜽J\r\rU性\\?U譝]匴敚W8篘?#h=oC笮鼺(:9誝u晢V-U?焆褻?U縗\怽n祋W權(TT?5P岐\$ R3这簾C}`>\0E]?R赅	?#R?W枓滫`#驡?4奟?踽ViD%8?菗^蹰#h	碒聨X	凗\$N齲礆#i x扻R€'?`m\\啫\nE捆Q盽u@遵NT?YY齽诞GV峕j5#?Lt/#瑪#閰絆璓针Q?暎O^韱 €殠瘘豈\\R5t从p?€僗圴\"W臘€	oRALm\rdG廚	掷?攑\$漃搴E5札啯Tx\n€+€婥[鬡帉龒?U旸u}鼗F\$.薗-;4葊盢X\n?X馼蛺\0痓?#璑鼼4K匦ZS擽状M?伢d璡"C偓>誨He\n鯵8? 堃廎鶧斀W1cZ6敍Q釱H麫*\0縙跟謀\Q逨?U3Y|慅婴镋浽郅?-?7Y働mhYw_\r歏e妆M槺哔廵(0F誠r?PUI晆?Q鍟C柩?0忀gu\rq啶-Q梵拌?g\0匼0M#鱑譙5Zt焌e^\$>睞rV痏\r;t顝瑨擧W㈱鞞H肇hzD柃\0玈2J HI錙?莵e韌?筟礡擖? /徱KM栘\n>饯H醃!iTX6栆譱篊 !記g 褿 }Q6炑4>鋡?跈C}B政濯UQ趹j?c颱峊帑?<侢三豸HC]╒氀7jj3vイ錪0描23霭序x鸃U梜燶n€:Si5炚#Y-w顢锗镸?c橐MQ臛Q昭僢`曭\0@跛咬\0Mム)ZrKX熧Wl鰸復l宄TMD\r4桻sS40裺Q虂鮩Y鉮昫翪`{沄€gE萛n柣Xk諄?予,4筤恝6?<4侀NXnM):狗OM_6d€栨醺悯[\"KU瞡炛?l磝\0&\0縍56烼~>魡崭?擩n瀫 埾Z/i?粑趃l挺諹坩F}?灒紞JL鯟TbM?陀cLTjSD拀Jt寑峑洩登:盠瓈磀:塃z斒お>諺\$2>帰[鉷?鲈R9u闣.??RHu炶跼?58援ろD萜u儯鏿鹀靂?渞谆 Eaf皭}5wY措鍌蠏谊臰倃T[Sp7'訽aEk燶"[/iタ#\$;m協兀WO斣F騖r%\$蚸u-t#<?穃n:獽EAm已]繺nU鍽璌E罓#€縓濞?[绳`/MD凳汁VEp?忓I%蟩哕鹡韝):ぇle⒋誟e誠\昬V[j厲i? -+诌G峎Ewt疻kE舿u霶/m?詯W梎齳u撉軦?妆\r睍諜O滵 )ZM^€硊-|v8]媑綉h鲎臠朩\0塞6薠啈=Y詃絈?蠐斚9gr <弥応D澈B`c?捜`D?wx㊣%?釀瑔侧陜j[褮澲磉O嫶 ``幣|蛤蚱搌寴柬.	AO娎	穳@@ 0h2韁\庑€M{e銆9^>魰釦7\0螋藗W拃\$,砩艢貈意曞譿^fm鍓,\0蟳D,诐^X€.啯7惴浢?舊;6\n敜巺^焭C┳mz呴n朸堲?LFF,蚌[€鮝Xy9h€!:z?c騋9b !€礕w_W蒰?徲S+t醦t蓛\nm+枩拶_	—\\紥漦5R]?坃h? 禀N厫椗]%|7酥湈];旓|濕禒X?諀羼滋G╗自\0憓U駭邕MCI:襮O╒詢a\0\r馬?蟺肻0鳣H⑴P+r霺鑰鴓7I~恜/H^蓐颤がE?%袒&.文+窲褣;:扯?N	苸霆墍/揥穆!凚鐻+耚$痦q?+裛/苿e刓\币蟲纏E憀pS翵S嵼仅6鄧_(暖┠閎\\O剖&旒\\?9漒0€9n忴D竰$笅K悜v2	d]鑦匔佌?乼f|W埴Tp&苦Ln勎璩烆{;堢贕丷9怲.y裹颕8€勾\rl 	T爊?荐餞.?磋3洜毤Z鑣’褿颃巿:	0&璀?宂犁模Q?鄃T?駲誼屨?剼莕<欤-?B顺,B蜢榬gQ磉髣蓭`卺2閯:畹絳g膕匄g骦繒 讓<譿{僢U9	`5`4\0BxMp饝8qnah閱@丶韱-?桛S|0畢茎??h\0CzLQ濦禱n?喐`A罓>2毬,麽橊N?尗x坙8sah1鑭楤嚿嘍峹B?V棆V讑`W鈇'@泧	X_?\n炀  昣鈦. 豍紃2bUar繧竳狁匰撪鶿0讌\"?€傀b;卾Ph{[?a`\0晁j梠寏符v質fv4[絓$东{蟑P\rv鍮KGbp肴砒櫀O?轄2\0j髻凩€?莔崛VjBB.'R{CわV'`貍 墡%€衆$O漒0榒倧挮4 蘊颃;43?滔€蠢*馒\\5勁?鸴X*?钅N?S魽M酤似,?\\ca惜 躇@兏B/劕网0`髒2铩劎宍hD臞O\$鐓@p!9!n1?pB,>8F4f犗€:7勵3洠3吙癟8桚+~豱鈂\膃伏br服狓F夭 C婜c€:詌朁\r涖\\3唼駱嚴6丱Nn?;狁@泃w隵F閫L啕€?^a徣\ra\"蘩诋'?剉郕e4米忹曬_d\r4\r塌埸垃S悩忇?€[c€刋师Pl\$蓿恑搘錮#嶣牃b仜巫挋`:唨蟸 <\02窏慠屄P萛r窲8D@霦庤\0\r蜏6鲶滢7暯榊z\"邃罋\r儲罋3儭.?珃3;_薀vL忀溆wJ?4繧怞a,A︸埊;僺?諲\nR?帶輴哋ms萠?z郗w剙踷墉7⊥舲鳀M崝垁o繑ユ\0a斉莨4?鑀f馳?旘i棖eB蜸?\0jDTeK敭UYS?66R	6Ry[c鲾?賋B蛿諶鵢eA)&鵞鍑XYRW?VYaeU昮Ye鍂晭U筨鍂擡氚蕟;zW9栦拽漭桋隲0<迾鑕?S逦a	擾-钺塋?菂Q鲨TH[!<p\0Py5坾?侁慞	?v鄽2|歉濁fao嗎,j8譢$A@k兛巃懡bc袢f4!4☉禼r,;戞戹b琵€聋\0傍藕厴哻d面X綽靫檃橰x0A鉮?w饃N[樮Bp縲橳?T%櫄M歭2鄧健殣饤}∪s.kY剺0\$/鑖U€=sgKM ?鏯4c.曾!?€鍒唃胞f?1忼瘺V AE<#坦\n?爦霙Np驌鉦.\"\"籄鐪ゃ楛q竵X摖佻:a?櫣f瘷Vs髬G欈r嶛鎂奁c詆漋l櫇g=潄`揥幩齳襣U澙藱杭頴T=€醼苮 0 M@粴?魏b綔櫰f圪O绛樮*0瘏畖t岚%睓P韧p纡gK烓?p鬇J奎B贌#璥1勵9?鐏g?3~剀珙nl渑f娯Vh?€鄥aC样?硦???8>A坅萛r棪y0犞i慗珆犩節z:\r?慡㈠h@漩僘广mCEgcy蠁崅<踵蚳@粿珃h<W倌`聲ū:zO阄謀r完W珦癡08賔7?Gy悆瞏St#飫f?儾仠C(9嚷権€d8T:? q禒?9幔phAg6?沔7Fr檅 萰鐰5顓冡1h昛Ch:?刮gUD9峙蓤勛瓜?~vTi;漋vS殑w溫\r蝺?嗲f玻?娤沬Y靉含3犖?,\n櫭r憠,/,@.:鑉>&厷F?忷檷秨b鑙O輎鏆:d鐰宯槡c=9O抙{ 8hY.倮緡畤\r嵵嚕罌婇1QU	擟慼唀O墰?2o涛燹N嫎鳔zp琚(觝€澧Z|琌褄D狺?鮐\0j0?#>螏例bZ8Fj箪;磙篢閰w)N`骐っ匓{麅z\r蟆c撚鑭dTGi?!i喪0奔?`Z:奀H?8聫阘V阢霆\0荜З啠W镞仟樥zgG緫厓讲-[眯	i滉N\rq洪玭創o	匹fEJapb龟}6札o?t鑉+霎EC\r諴x4=緳貮噳?啈F[q畿鑈6:FG#胞\$@&璦bhE:矁瀣`S??g1?uhY嫭_:B摺dc飽*瓎\0桭YF淂*n勜她郇H*Z糓hk?嶋儭瀦俟飲碷毩h@翩┴?\0橒ZK鶠㈦纹鑎+?vfs畾>垽O銃枥蕇肻0譁5X閶询F匃n緼坮]|螴i4鑵 芈C h@毓礋灃c撺?smO缅墠櫅gX琕2?g?~置Y寻唖鷆l \\R奬0尐c湞A+?皠淁涕峔n(漾锰^368cz:=z鱾(澍 ;瑁弒麱@`;靲,>yT唢&枙d絃谉?%-隒HL8\r嚽b埃鶰j]4怸m9Z贐P}<燐郮帛壧メ+g^豈 + B_Fd琗匄媗體葉頫r饨嬭\":躁qA1X眷娌续?螕E醜4遉Z麦?爡骀1~!N乫愦鰋棃橽nMe茑瑒铍XI蝿鞧@V*X瘑;礩5{V圽n幌T閦\rF?}m对p1韀€>﹖鑕w櫉骐@V謟#?娘	i趑蝱?儌p虧籫h憡?[elU墻跘哔队糹1?尵omm?K鄧陖栋!砥稠‘輠me穎`摋m楥踷=瀗蔸}g T沵Lu1F苴}=8竄龛O踡FFMfOO€痤崂媰/奸醺迵氬€檕qj巢鑞!+綈虻黌ㄋI??!nG筡\剾3a箏匫+五::頚@孿n贎儜Hph懘\\B孽dm漟vC炗P\" 娼?nW&栮nⅧHY?\r稉膠鱥>Mfq郅瞽葫軶c俒璈+胬oぱ*?'#膩Ew€D_X韥)>衧-~\rT=剑炧鲌- 韞Ч骛{刪鬅蘪贛?€^灩锢'@V濉+i阮悟洘宓喩;FD[蝏!季彺B	Δ:MP嬵筵璷C紇AE?镃睮iY?p禤\$kJ辯??7滯鰔坙C|骄bo?鋁?M鬨rl&磺:2銅垩cQ差虿鎜艳d醾-U躌o俌歯M;抧?栠\0朠緁疒Po卓(C趘<[騩鄹敋f芽贮利哚簴鮗Y?o甎p慨乸U岠?灎〣!'\0嬺恻T駶:1崩緺悚睃剾餹堫F仇僆⑶敶V0是丷O8墂,aF丧筟次焻馳O€/\0欃ox髑Q?О:賸肫鑐h@:儷况?M韒紉:郯c1ぶ帑v;剛鑎尕艪@z鸾虑\n{骂嬥;懘B柬?懞 g鍧掍\\*g鍄C)凟漗齇膆	〕A僽>畦麫郉哬柬涒`o狐>纼p墮娔窉q,Y1Q吒啅/qg孿0+\0怄鍑D冪? 瞟谶頺:鵟$抓6~I=@庬?均v趜O駚毑+王9莍硸浖a镳嗞麉g蝠羁潡??仛0Gn榪瞉{腋,F崦鳲♀勣 <_>f+,裉	辉癖&魷嗮砺紋签O?琔炉圠芢n妹I:2晨-;_蘑葇%殄纯!熙f瀄$哫r\"Kni駰佬\$8#沢-泙r@L渝湉鐯SⅫ憆N\n怐/rLdQk啵摂念e疱溷协屮\n=4)B様俗汈蘘-|Hb亞慔k?	Q!?侁G 灈Ybt!渴(n,霵砄fq?X揧?傠\"b F6痔r f驖\"艹!N◇^鸡r盉_(韁"↘蔩-<凋*Q黩ㄙ/,)丠\0潉瞨鏫"z2(箃賴.F>唶#3猱268sh贍ㄆI1Sn20剁?崼4捼?A渟(?浼硕乗0戚#勫rK'送G'?&\n>x唿躂谿O8,髤0尖孂8斞覾0W9捿I?:3n篭r-w:陈膛蛀3葔?嘻耻陜槝Z扲M?>周鹗?/=R?1??麧严m%去}蠂9蝴価蟦Q鲢=蟞hL醴G蟢W蝄r	%?覝s裎朖€3s?桜橴?\$苎N;?4驨谙2|鼠Z3豩\0??€^纗i2d\r|鸐肥h|?v莁 \0陳帑\$\r2h#忷?硤廔\n捈?o-湂?6`峁娇.\$禋鳮Y%芈丣?癛廚#K:癒酔L>:屻jP懱n_t&slm?嫘┥赣湶尳椼;6蹢HU5#霶7U狚WY躑 bN禆W鸰?TC鳾茳跂>徘鯄W鼵U佋6X#`MI:t祤	u#`璮u玕$玹瓉X骮峟<欲b錱h鲅??豐58醅?^?鮘0昀钫筊*?((躔鮭Z澹jX筈軫Uv訵 GW眈覶昵W魚诃^瞿琳齁=_貤bm州bV\\l伔/贛?TmTOXu升_忼ITvvu媋\rL_誵R/]]m襰u=H=u裧 o\\U諈gM	XVU犂%h53U橽\=■Q哓M箆噣錷鮱e堎鹔b軲軬CeO5佒O5呍Yi=e	G漈URvOa?輎vWX旿5<醑bu燷堊逐<趺僬\$u3v#?eu裄5m晩v婦5?v帉鮓=烾_?碶\V蟔<貅S蚽)?M%Qh醃嘥協5E?胀W綂v臮mi諅U哉]aW︰Rv豳-YUZu澷UV潡UiR峍潤醭忧[mZMU\=聉{踃紈Q鱤uHv亲gq荽w!趏qt{TGq齵?^G_ubQ勱鍟i9Qb>贜Ud罕k吔5hP賛u[昞0彟昱_堕[鮕-痿鱮跞?諧rMe齁?h?QrX3 x认#鱴拯踸u5~冺?輚隮yQ\r-旑\0鵸眨uu倏pU趨?朠遘\r<u玈0萆w惯-i蒹?讨婙B麽芼]艊E牮vlmQ輳6k襃磮w恙臑孛孍D禪賀揺峷:X遚NW}`-╰親#e剚b罕u€泱	~B7 ?	OP淐W底SE蜁V>稉譛?炵壴醡挥偓z=祪拓1簷?牴m肐,>礨7噤]?嚱*	^願惆N?栉/\"剰)	叝俿灝|啶缬熜l羮笌顽!顑?n眕刯>h}桊mE醶H耡O0d=A|w脒炽胱戊u矞v糋€x#畢bcSo-夰tOm`C嬺^M屌@氪h璶\$k碻HD^漃E郲鋵]龚rR竚濤?褓嘅Ayi \"鷢	穙?,.淺nq+昆錰Xd?呓圞呜?荜 ?a??p鳮LM勦!?枋帹寊X#榁釂uH%!罍63淛緍y諄睐q_鑥	鶺嚻|@3b1迦7|~w锉楚鞟7撘聸铏	?cS&{沅?Vx痫kZO壸w塙r?畡挭N |匔?虐蹂寨 ?9乫t嶦w窩篴\0鳲<Y恺闊e霕齨勴gyf0h@霺輁0:C┐^€竀gpE9:85?孓п吼廆会巎_猍?签x僞撽畣~@褔W沣摐?x桭C樋?愩氱鳇k^I廂U9S熦鹘棞\$鳿r4磪鵟0舞O銘?L[聀??PECS霫1nm{?濸頦A卟利€耢D?S篴廗f??碭蹀+彜B>?刊貵j榗z慉蛶鳅阛硁0bJ{o?3拉!'捸K门睐詝鉢\栉3W5x仙罫;?味n梐;瞾碜篨記]蒾簻x鹻洇5迿jX堭椂v託殂q奘EE{褉4辆膡碣	蘚n鍪>鶛a锆肪э豅?禁祚'睫閧隲n墬>J寣岣訔嗺Y蟎rO式饝t?-O4?9F?皈粱渣G瘌I狥哽1耾唧馩簿閍{w?伙て?駭剳l黲襦J蠺b\rw2甁叠=D#n历蓎覃S鴁,.?(菼\$惼ㄡ3胹?M蔭CR善虶虘滫I甙n<鹺y裍N攫?.類=椸翊D羌峔r洖閈n阵╘ro觚\n袩Cl%镣Y嘻ミ相G瑶趠#漋袧%??亦3嫔崢r烉};酐卓G商n鯷獅ス枔_<m4[	Iア兰q暗??cV齨ms劤nM貂圽"Nj1鮳?@靄$1>襘鯸\蘽n耚\為7焺抠焛c1?hoo攴?j<G鰔焞嚣㏒r}兔趞\"}曶/?s瑃I溴昙&^?e笥t泗,?'F高=?F乲,95rV忉嗬红憟佦o9网/F罇_唦*^足{蠭砌_儌寭^nN煀~崤A恙慸╁颃U鴚鋛Y卞畲T2篱G??ф:y%煐X鐦J跜	W柽巭鶪!喆J}洍腂-语胞麥h?蠹R挫鯡稜~怄.珇社鏍SAqDVx骂听'砩E?^婝淁繘珧殓飋7~侻[Q泐(耻y根nP玄[WX{q詀悉粕?&N?]聱HY镙麅脎[读????剫洣锭輪欢?對蜝餰6雲@枔[{G\r?}鼧髁蟔?|N劎4~(z羱摶癸?洊?边尤[锅1S猐x豮鲅KxO^锳崁塺Z+?唤*耊霪kD(锅籖:纨\0ы嶚'搈!O衆n渑u鑲企.[ P?共}紫m 埏1p駏,T╃L 	聙0}濃&P佶\n€=D=抉衆r職A/穙@?鉻?郉K扯\0僸?刲拣B陫(傷[坘r\r慃#懨鋬l艛\r<}zb+孕O馵€WrX僠Z 牛哖m'Fn牸夘Sp?癨0005繾d伧P劻谇痉邴蔡n\0?f颬剰縀Jw ??葵锭N蜣?;痞?[7忿ei赔-撝頳賻<[~6k:&?7嘳\0螬侞霒鶏/?9 窳@eT:鐓槸3興恠轁5鋸5f\0蠵钓HB枙戆?J訪S\0vI\0垯?Dm惼a?e醉?B唱\$?E媮衒徦@猲鷥b騁b料q3焲鼩Pa藞席X7Tg>.趐餀?斧AH诺?S?樍@?&w殿3鬽[侠騃靴觀撎J1?ゞT醽?蟂=_剛_伇	蒝q/C劬份€蝲唆狺怐 g>軇蹼 6\r?}q斊扭婮GB^顔\\g摧觞仠&%[?Ix矛6\03]?寋葽RU噘M鰻v<?娍懢sz眜P?煪F:襥顋繾璹喻哣| 沪\nk愨}?|巊d?? <,隤7榤||?禝嶢乚BB 螰?X销	D诌`W牭羜mL	旄.?羛偧襾禱"!嫃猏0馔A锩魢壛V€?k孧竆$N0\\\"媐戓犌腭犎\0uq灄,?沏A6譸挝萛n螑jY?[pK?;恖?n罖鈂\fl	M鳄鸓羚3畻C燞b袑└cEpP壼?eooe鵾\r-鄽2.灾ソP50u敛癎}拟\0钏酲<\r鰷!笢~数稻篑\n7F澁d洱鄵淊吩a①%篶6詾M昆|蜞d孄缝O觃?J妾C0摸衼?7kM4`%f韑鹞楤~x掩ZG镻20??p饐@圔e葦叵|2腬r?q感8砀氡裢袏(穣r狯?囝>淊繣?w軀r]?Av帻僚銨+軽联Ag馍?sC宣AXmN覞?\0\r谕8J軯鹎窪徱汅:=	曫囯芐?F;	\\&骤哖!6%\$i鋢i4c?B帑62=谯1蛮虉PC劐聝m送揹pc+5婂\$/rCR哷Q?(\\愥2A\\獙lG騦\0Bq挨P痳阐B惖夑浹偣_6Ll?BQ帀I聨G厘茇XRbsB桯r彏銟`蝀嬩\$p灞8饎	nbR,卤匧爫\"翬%\0抋YB渽虳,?谱蠜pN9RbG?掐M瑢t吀湰jU簸缾y\0?\$.iL!x蚂覔??)6T(扞呾a%襅萞m膖ヴ咜&驡7荌TM驜\rza仑])va?渾41T羓凸(!叕〃\\乗\芖萝\\t\$??釘\0aK\$鑄欶(Y郈@偤H蠬銆nD抎哤p蒱Z?醃C,/帩$JB╱墁Q:违翧鰤:-a#旍=jběl誙g;{R皜U罕EWn訳a粡V忸昇ju婫?▂止%菀@棚*浍誝x瓯_蟛€]?v\"鏡斟LVIv辇`浘'U? S\r~R槙橽ni斉)5S﹀D49~蔮擕)3??M3疕sJkT溍渿(鷹uJ塢[\$ufob5筡n.,頨艿9j1'祵!1\$J稇g冥諢膯U0Zuah1穋H潵,肶t柴Kb?楇5枓/dYAU氁叐媅W>╛V\r垜*孵﹋?T眳 zY蔰昪甿囈贡?箑[Ut-{齦	+a)?[簳_:?炰h凃W搂蒻互%JI懘[T玥>毊捣皶橕薠毯d曷烻沝塚妍\r票!N揔&A圝u4B吜dg微.Vp⑨mb媴)荲!U\0G涓◢揱\\卶鉄7Q鯾VL蔸湔鷥蟋Z.璑驑*栐U]Z磍鎧雲析荝 D1I迓Qr:\0<1~;#繨bκM榶?欅?乗"蠜j<3?柼岅瘛匉P.}e黠侐D\"q賧JGsop實孿rd栟\rxJ%韷掀糘:%yy闩,嚁%{?<頧酶眺z翬蝯(\0 €D_鹘.2+謌bc趚pg蕤吝|9CP廂?8U	Q?AqQ?4 7e\$D搲v:孷N4[坕v袄?馶r昘1紭AJ(<PlF衆0鲸€\\z?歐€(?陲 p暀吁蔪登\r砫a6敐O猪m馻磢q臽吕6P?h噻3殥f j?A鎯z夬?孌孶W鳧5拍%#榘x3{L\r-蜋]:jd譖	j黤絨:Z鱘"sad?驡?	+饖r凬K侖1Q鐔x=>鸤"ぐ-帔蔉鯗I賰*鞞詿莥T韁\U瑷銑Y~聤墡溻殏3D佸€翙╢,s?HV?蓆9v(:愔B9馶\Z彋(?侲8瘍蚖\$X\0籠n尀9玏B罀b撩66j9 馐垊?,| 鵤緷g1瞈nPs\0@?#K€燶r\0脓\00?拧,鋅0h笛h€\08\0l\0?躗眏b嗯琝0p\0?賔`ql€0\0i-躙\ps㈣€7媏\"-Zlb逧?鋅0蘛P ②E秼b\0?,Z郳r\0000媅f-@\r盈E趮/刏8綉~\"谂趮?^椅Qw€畔媯\0?t_燃忤E饗謀0?d]祤b|\0腬\丶偄鞥0af0tZ裯丣鬨0l\0?L^槾Qj@裴孞碸腹q#F(??靃?姠闫孖?躛8怽0[宷蘙脩l\"迤 寑\0?,d瓒€芢r寔刢{cE羂0o?琞\0\rc%袍嫍8w㈠芞嫷-腬\厚{胖婫?\\bp剠@1\0a?鶍认裺?浓??蘛8箲~c\"袍嬇?鬰螒m"€9宷?\\^fQ~c芲嫞?\$i瀄"謀0003屗X簈x#\09寳Z.磇溉孈F垖3tZH \rcK€b\0j?Dj1ㄢ馄Ih碼锐v€譬峅Z4淶蛱褌#YE╘0i?hH已sX/F<嬒?鋔癍b杵蚛0mV/d\\柝駤b鱁硧?T^(菅坈KFR嬚鶄鬩X秖舰鄭?註h玉瀋6E膵66躧憻鉵\0005峴n/dn冈`\r\"袴尦?D`日憢鉔€2媃x礼?\\烹媷V3x?x€Fx尵\0?宐q仯兦!?|^偺製b迤鄭-魊劁q笺:崎??宲p駭#伹嫝\0?詅昭洽馀瑣d?剄H幢荆\$茾媞?糬B4宝\"鶿08??lnx蠎犫闓?:0tjh~@萍帴?H岂筨蹽(巈剱4g睾q裸2?屔-宯X笋篭"鉌<峇?\\j父1菶菋涑4mㄕ癃鉡魦n羫7鼀h??妻??\\x衠KG倢?鋙樠1{0FJ嵶?糽X閝猓勂u崺?渞(?毅嘒c\0f:剅X綘#信絓0i蔹\\}遵錬頕絓0s?躽2萄?uFe崨\">4i嘏库云鐚\n<{搞憤b茐J;琞啬1?纹0徺J;4^杪D姐笄畫ǔ4iɡ(H#谄E寈?1疸/恰嬪j6,l樭1t?\0005%0刔x鼞叮GG5??ㄗ褛忾杛宷?ㄞ懳鉔FP弌\"4鬫樂1譫?媏 ?瑂8閼咷5帗 ?訹H揷豀廽Y欫鬧杈憳b? 巠駺腬\附q?WHN弴嶜蘡芉桡:???渒X茟贕蛯?Dfㄟ懞cWFl悺!?鼆c E軔嶜l樠q怽"隖?\\\\疋T芆媞?T|\"?戱銠艵惓f9TyY雪鉙G1慃翧\$f9R\n\"奁x尮>B渽H隈撙\0碟\$e1湥矲?廄?Tu)\nq筨榍~徦忘T侙伪衏塇.憁~C魒H时?/菼峕~3鋇埡褎#>慪?宆肝Qjc是K?\"?瑋6彦c\"荁懙\"b4桄%湤匀G\0e\"?t嫧?r?廵!v2剏辣蹁<菭弽?\\oㄊ褣#t叛怽rz@磢H聭鑒锲鑽y ?蘚\雂eG幜Z3寏r)?瓤嬠咮l~H讲:F-?攌8磓鑓(F蛬奒?|my駙c1劈*@磈蒯?阚啪寢>I碯柰Qj鋾?屔\$0h礠堜VFT	\$艫l~鰍冢缺\$政\\p賊rq俓$/萿%?甁q \$鉻E矉GN-Tq)騖"③H蕦?鞏X?-H挮?\\n埖RW\$H岆\"\\_筡0籨\$莊懗\".D剈	'QE韺&0to報qj泮瓶尦R@d楕洌u?#禠Lk?q骪$*G膽i蜙T奿憀泸E獞?寴緍\\d朓枒礬"/蘘?抝\$T毗z5Ld3k抩?Tq?1{嬪?淶妇Q誦覨寃J94n堃闹鋥?-??h乳掻\$?DkrsH瀼?魪Y7騖"?E繏	\$j??嶽\"N\$掕聭摛W懐?]郳$?€1Ga?&IDn扏\$迤!嬬\$?宬!漄ㄢ)(N/\$t篙逛肫O廗zP磘X茯[\0扜帓w(*K\$v埶1骳?轌虨I騲d\n揂?\\rX芬awI攊N淚%\$姐捚_戺?鏠?柸I?#嶧礂睾裣#矱鈷昞"?\$躢嘓垕vR|Q€E笍:R別罕h涠E螐fK`8.#稥硰s?L厴黂嶄咶?\nC\$`撒翊\$鬑?捤nP躤?駳F'斂?渿付闹?敮%翹,h忍rF\$鋈3磘襽沛?1<勆CQ?擅捁鍶鋃豧.?艒啘繁C詼.瞇橞铱x豚冭\0NRn`毴鵜\n%+N↖Ms:霉Yd僥f珺[栋輓乒Y婒mR讙Y贑刋岆踛崇U+Vk,痋0P臊b@e补瑒V竞yT?坲瞰[J飼缺\nDeR琺x&發\0)寎贘?\0処Z频\$k!胆馳b擦湴€R聡e/Q缾k?.羍懎5暲W`\0)€Yv\"V耚0暶\n?鍠`Yn粼x脝Q!,鮜\"	_.熷仼茤tm\$昞"摬J謲困巚?塎9j偘	鏂?矺p謹扄\\R ?(奮澂:}柸飢>碌a-'U%w*?>愄琫朖潳;Pw/+贯5E\rjn⌒胐桇[伟藌\\貝1mi\"x倓p迕;填堟P)?必挕吽!A?	4斐a{`aV{K漊嗍8悒?''o€2áyc谈9]K锧阂梌餷B堚Or朐?duぞ8?鯄€%糶B粓顐芛n+?c琫\0尠襦けYr@f鞁(]旨╘nbiz钪n€SS2AGdBPj姽諤€(椚ウ!?鐅泊e?c\0劒4J骁倰?揢	d荷e餵'TH]詩訥!?u罩療曇Z薆5揥帀0\n贬R乄亝\\ j^r?l?,襓y咨f3&曑幷Q:系2刴蒖)擳€?KR翣0擛Y储Y:Ye3\r%川癟?璛斄箛ST?J\\?賖裟奃!铭梪骊蒛\"九羙+7朶"劦亾f'涵R\0皯轏濙2S??nm 涣I鍔滮\"X瞇愔€鸯} Jǒc?p0誕?U\0DEW倢.L趿=<B?+?ZS V;鈂\獾I{?I慉糁?dWu?Ew\n\$%襾厛?i_\$?戽O,瑖鞽嫶諔Jg&J→G捄%\\J摲b.妮^L婽騀l岃柟]k#f@L稧€膼T假椧虷咸\"杚1S贪鶋j廣?螜勳ZVz吲喅,潷疏G?1FgN甥?脢V5E万5`騖0Ct=F\n峁浳睍K圑欀\0姳%ㄋD]Q\$\r\0?J\\,蜋毘<T4*?襓KD玅冮L颯%,奼郧拯穗檜0敉U膲*x(╁N聮Yv!y	w?fdrG晧M \$潢塣;洪濐萱?<P]D?%饮詊叔欼0鎍觰^Jp梉)?RhR鶨隼\n鏂L_?5|芫誱3P?╘\Y51X拻	i砃椚馶$\"昂a鮤*KU萏颲8ㄥu虮%&剅姣藲牪5o屨鏶阐輗Ml[屁鰃湷挿U蛁欔箽h|詄O2穎 MlW2AP勛箻捦v~eD琫?U荧l嘐62i蹯覷b田槵U尙┄铠慅V痍iI!\$iㄊ?Z:綎xm!艈?諳蚮w爷!斕觡荬蛢檷6b\"獻橨]]:T櫇6襐r}捾谦]櫘睉U	ys7f訫艡3垖芪Y滙:T_M蛍%3苙n捂z*欗3鈎兎	籤U柌L殗,ホ勑5vf兓脹?2_Q壖h萸uDno9)つ溦玀9?fo奂─r州俏WB~iT輊yQT釴\n歞pr?涹M;挊?鎝則??;殯?	|莻姯',AV7軘藻UA?焱R淧痋"湔y囈窌?燵n陶?3V曀,?渟6簆婛?巉滴A氎9k|萆甋唂?@湑5辡季煽2蛚湆U檻瘗鍴蜦沴%畃芦Ie砨e桵賁O\r嶽兼i?恌晌LV畆賣畩茎跱A汑?r勞y3Q漘谈沇.颜^Sl@&塘5諽l1彐蝳Vx隇g蕝Sn掏Q!:5譠辤ZC詧:繘?qg?D狨莳{U?抰Z筦u%w:蒢Q:Q煜荳 f顕頉?Jpl??x詖烃滽7瀊#将鏧+J?⒙h挫P*觼澊淊?讛炫廠L鏷*'潳╘npB鶛讵廹N蕽?Bu要槁幆螌澖8ni陥I蛃窾S虸殗;vv诔U鮯R?N漸?〩|黹庞阀處湯8騫凑俎+'堰蚡渪?R	债虹MaR8鷛??!湉;盪Y謸捿sNI漡:誎T難?甮幫Y濎胧k溷绍硁'LO(溈3歸44罨η溭掰l蜫綕柂w澖9輁\扃曮骽f(_~祢鄛9N靓\0柎錬\"椁僒h,跒@D←€\$€I灧;巈U漬ǔ灧,筄	X?g?罏?>ti'G倎鰩l?\0?釼B薝1珁e怽0KT4萴捄V2)\r]I/\rF鶇訶堊肋a翻G娐跪*埀?>ER祺町囇Z?)I\$礴:薥0綟yba賕玾Л(達@}鰅跏顎S^?5D猿	若URO睙JH澲\\is餱扑K歂眬qi鱏g譕聼\n睩~|?@gR€_Q<9s墁3i+貤?Cw膊陓倣鴜?a霴躖9尪蓶\n朐?([哶坿鞸鸧cS=の冼瓮訷梧U-><礬n<謘O鬛4F}\0007u鋕(/嫙?5{L9礬0К?硦[<硝焥踈0&丸#匑h涕3¬}滺?w+]'D?燖е乚);TGe3悕\\侮n咚d\$:N4舮kt?dR!7杹蒭4(P!暉-94鏮PMGb伳眞叓厣6O傗?yh0+€灢T|穵+u??爮A?蜣	鯰?.q爮41T锤e泙\n:P狓瘱{T頫n畴h?珰T顰鵖-*逡+鍀?鶿\昃Z硎頨旆EJ侖%窉s桳本d獨y?\rC铚摺'A駆,襶?菜蜅`	_*裀 ThKDV卜杶5	??峒,??璢満?謲K鍡`痎袱I42(]獁.鎲r氖岁]琝nY屁B啠	稠杴袐R 旧g貆:HюJ腤P碴刓"薜楌鬡\\?棗? >鍡?к喛=:焅n0阻\\+馭柎鎓軺尦韷U,匴C謭钑On蛭參?唀9|R鱅'?嵑材冱2鶝玅炗Bn:艻鮘n雩g9芢r,覴6除缫Q\$X?服悥┍`\n?/_8Qi赠桚囮v?5v漒0 \nㄧ蒐Gmw\\隖謱囇d隉祡s塡"懨Yv|鈾J*?h⊙@XEU??oQ]\$岯瀳,儠KT渧ptC蓛\n證,/楛…跈EW?V颬↓W*%K陾-Q`9	(竖59觻鑝)薠辅@?鵂齌@堐\nS柉慴d譋未a€+€DX钺|U		F 2?5\nj昺珋W?峹K屾V?#劧CT胑k??琷bd7)訐\"\n+霵篵掕I夽?曑礿U姨Es?D霋凊侞暻P乑3A螌誠nwTh饤勃蹣?Z洫<蕌擤dq馑妘(鳛揵KG编槔n覶锂圿z◢f%#?I薴Só&}@D咢++A韍怽n飥U椶|B;攨Um奄U匛昇?魓21\0mvH~趿H鑄?鯳YN齖"k5裿T#=第牲\n}?R3Y僅臨I统堞;萄Rl?l閡B%TQJ顧*宏堎'篍?i琩w,z释?\$啨;?狘頹?)詮蔦$32J}?嘯砛$虂{Dn慅E状?0踑Z{◢C 棼€(り:摳犣O@hDf\0`PTou摮娘F甛rQv傷o杰$S?樢#7坤Izr卲k燚W攬Fs?櫊Q 犘?€g琅#昞0\\L郳$?€g巠y ?3h浝!唍X梏]+睏	蓾€c\0萛0b嘏\0\r夵?{瀄0篞(Q診$s€0吅閙(癧Ru騐器邑>?J[?鄳亦J\0謼鶿\炊?议K??闿a_\0R騄 茥`歗远ClRIK顤鵟n燶$畁艔忆ワKj柀\n€俩~/オmn榏.猔艨ij意?K緲f:`\0呴寑6?K鈻zc袈\0捯酽/K畺?猟裟閲FE\0aL帢Z`僇閱S懴蕶?赝4蜙/?寢L驒?猔茨﹩€_L]4Zh粜SDM槄4:c验婼RプM桬4歩騹闉SGMj樺4zd哉〇SFKL獩%4猠韵%\$觢KM2桋1融斣iτ崺MV洯.岗斨i从崺Lz/堶糅觿ρM鏇,`奯羿imS姦gM茰€jg戲榍??.泤9j_蜷篠惀.浥9阓彬榫S垿.7趓)捎%2漨8簎T骈橲抱3M:漖3簈旇鋘颖N?|^襨t蟎"矣HKj?;zc駃斡毀枬\r<阓?i视弗馶"譃U.大i隦趹kOF烅=:\\粝\$Z萤LE?鷛豇┞踊_\"譁=<\0駎橘S绂9O覟?妦旜i灿臾筄隄忐陗q?騀辅挔=6:~怎鉐懴P:熗=ㄥT)⑵PJ8魼陊趑?O?]>獊t鳎昑\nу!\"爫6Y	)€菻?P獮?	轲?悜P~犩	赢!\"煃C捥札j ╡NJ↑堦堮?%??Q∨CZ嘠慾TBQ.rE)\0004岁\$€2⊿M+潼j則縥0??Q啞}F\0\$眘TaK危]Ecj*€'K籑緱MGx秸R荰1?Q辍獖5?詚↙殹4u6z彆\"j\"T圞uN郑鼼趃\$jFS塄颭2ぅH礬"闙T儵%RHz幷\$?詗Re.\$r獄?┷驭?Q鰻蚃劰懯狜园?R&/滻蕰1?]T硧?樉Q义D&萤qN_(磓瞔[Tw孮R翦礈J歕0n怊T.956c攒屨SzH樍?猂詝Sr8姎誠"b諸瑙罳?MN姈?沌澡〦S搂-H樍7\"躎_S戋}G靥?*y冤媷S颛絇*?#怫攒嵪T:P薀魿*€詨T:?K8?C獎R?-M染旽獔 ?T偍璈鮄獙匝嬜T姩鞷?忾攒婫T讴-SJM*斣UT讴mMH铬M獦轧猤SD?M嚷昍獪誋獁U\"╉K8照R獱在尅U*?U*ㄠn戮TIR?t闥IUF?1礧)v誯媉K偏pJ?ZjR?r\n^jI覥K簞偑}U蕮_詻O?N稲*疐-R灛%W殝誧軎誠\巃V>獷Yj柕d悦U维礧X?*日嫆筓y傰Z姲1k銠炸?V毈R\\H?h*諹ⅸ蟄僻M[姴眐陃崭?V颦}[(?W獄崭玦BO寒1疶梀?璠祊R鍳u?T@0>\0傟/I唱W`韂︳\0?P姱]韧1m*镎菎yUz╩W□|揫织匽J堦鳸鲍霪匷*?\\j懼Z`Z?~E飕W4Z毩5h誢媍XZ畷S1oVU&珝T耗5}cU^崨X毎dm*潮択UuカSfG=[鮦鋝湛懴Xc\niR釮绔i#灡uWt坏ズX聺誧墓U啲攔冖鮑Z嬚噧NE慩含?谌ud攴E洮eV^岔K舌n怛V8媠X楼蚮酋/耯J-J]觽厵游琳zO洷<Eh塡$鍕摲◇\0K滊<bw勸匎窋鳱瀄")]b	?z?cS.F	礠NQ惈閂*畚O[Xx姢P	koN}<aO颛I邠羑泛歍;騬駢墹僔D6Q摞z奭j~'扂霒[Iv趔7^蕬е翞j牒w[骖虹準艈?u 臘s#蝄\w袋n|*釅h雖蜬v;Y覉壁3醈尗^#梈猨y砵魔Y,?;3境授.萕\"懨\$?>g跍合酉ΚV乀骦jY輏瀔D*!歨&Xz薸獣?GV棴\"ユ竄廁窑?嘚oGjj蒥蕿kO衉恗jI獣ět瘱#絒鈐\rn娿戛衝欉Z,臻嗴g文毄:辜?壛玔L2甒=T宰0f禱0P甎6\ns%7isY??u?緬絥b5~熁歑|G~l?譳ぅ稭啹屜y柹)蝅溰璻顿傅告熘隂?諁u'n0W-喂b反仟祯焝?籿Q?呠}p\n祯罀唾Z*?)梳5迺ZW?ZB覆孃祯惬奧怽0WZfpGp钔佼:廎p婁U匐SN/櫹\\┸%s9琒{ ?Z蚢s售搾+^畵9橫調匬5隅 譗頙孩珁砧;彍陬z竷抡Y赩 ?桗餃D臝潑?鐕?9M;亥寬舁揤串歕rQ{晟债暥?F滳L墓奛┰垵\\)\$i寧N'\0Π峆娐汋是]X蘜漵1騠?奬"'<O毺薒\0筡"嘆敟%6UA?齣(z惕輥€\r艺備比bZ?IQO?€核\r=*膲爥)瘿!翞犘`h皥,蝎mGPC佀A牆俨韮A(Z虐%僼?h/翂坕柸kEJ6鸨処D枞琝"沑n颽U- 洬\nv巠澃_€穆聸讷痥	a紹<荲聝跠?P霍a盍)9L愣(Z偘8陙vv霉豮	衂Xk溲濮|??骆澅C伖捸岚`€1€]7&臋+橦BcX揃7xX髚1搥0︺a?毎ubpJL菂?窔mbl?I?R鰲@tk0€棥xX劣;僚 al]4s皌宽弄??存l違8M?懤€D4w`p?@706g虉~K\r傐 P磪賐h€\"&惎\n靟慞D刃误\$??QP<靼楞Q?X磪x5€潏R穈w/2?#娎笌 `??堒乗r怔虏柋B7鯲7Z寷gMY鶫3 b	Z劣J惻鯣鈝gl乛?慠-!蚻?滩L鯁瓢<1 QC/詹h监)蟇?C	*d堽6]VK!m靺茔€05G\$朢樀4=Cw&[鎻玒P矝d蓺?)VK,5e萛r奘鑶K+?刋)b踖)拟uF2A#E?g~慹抐p5lYl苍?鮾隹謀n聤賛}`(琈 丳l9Yf]€Vl-4幟│俐`罆/fPE檌媆0k檝芢0遞hS0?吐图#fu帖5	i%:Fd€?帣貈G<	{鰙炻s[7\0岈螢3韋t:+.葦杙燓卣保@!Pas6q,莱?b乾艐鉠K瓣避-鷵ar`?RxX灵憽蟅嵇?膜詚聬岥 繢€暰H擦16D`阘鱎臥謰>-?\$蠃踌讆蟺信`>亠初h??喞瑬&\0胔楇I杦l鸝刓$揬\\r崱8秪,怽no_崂B2D礀亙a1瓿嗲=<蟢Fp`廯攌BF? 闹矖h粕T T謳	嘆?dr彦墍J繦@1癎磀n烈w嚻?溱JG氁0b餞f]m(豮磓g\\斫忬笘瓣犎褕3vk'齘d川AX檦荳橵s?际鎑贷M犂瑵@?觹?\\枍m9<眎荮堅琱絕s}?Ksq鉨斡-擌OORm8\$辻w?#皩@鉂穃0粢丐 5F7雳儬X\n纜J/-S橶!f 0,w建D4佟RUT礊掝震ZX讫韅塛\$@庠?媂G見禇a>?鸜恫\n滁\n岇?玔mj湹?,mu琖@ FX驖瘘=瓲(璪魁<!\n\"敧83?(R輁n>旟@╓!L舓蘚r圗\nW妻\r'FH淺$滗m剚驱咱LY梾&衍\0幤#攢[?\0"@8膇K?賚壯p\ng顐?qbF栘y岖c弆@9?#JU矁{io瓚?{统4轛蛠奦nF蓌鹧鼁 Q噢瀄$kSa~狮0s@@?厃@?H巻N瓮Υ@唜?	塬 /\\ブ?<h趥鶇糏怲尃:?肻n%椄");}else{header("Content-Type: image/gif");switch($_GET["file"]){case"plus.gif":echo"GIF89a\0\0乗0001铑頫0\0€櫃橽0\0\0!\0\0\0,\0\0\0\0\0\0!剰┧M裉*)緊) q埖?尿L\0;";break;case"cross.gif":echo"GIF89a\0\0乗0001铑頫0\0€櫃橽0\0\0!\0\0\0,\0\0\0\0\0\0#剰┧#\na諪o~y?乢wa斸1绫JG翷?]\0\0;";break;case"up.gif":echo"GIF89a\0\0乗0001铑頫0\0€櫃橽0\0\0!\0\0\0,\0\0\0\0\0\0 剰┧MQN\n飣魹a8y歛哦甛0球\0;";break;case"down.gif":echo"GIF89a\0\0乗0001铑頫0\0€櫃橽0\0\0!\0\0\0,\0\0\0\0\0\0 剰┧M裉*)綶W\⑶L&贉贫昞0球\0;";break;case"arrow.gif":echo"GIF89a\0\n\0€\0\0€€€!\0\0\0,\0\0\0\0\0\n\0\0俰柋嫗厕籠0\0;";break;}}exit;}if($_GET["script"]=="version"){$jd=file_open_lock(get_temp_dir()."/adminer.version");if($jd)file_write_unlock($jd,serialize(array("signature"=>$_POST["signature"],"version"=>$_POST["version"])));exit;}global$b,$g,$m,$fc,$nc,$xc,$n,$ld,$rd,$ba,$Qd,$x,$ca,$me,$nf,$Yf,$Dh,$wd,$ki,$qi,$zi,$Fi,$ia;if(!$_SERVER["REQUEST_URI"])$_SERVER["REQUEST_URI"]=$_SERVER["ORIG_PATH_INFO"];if(!strpos($_SERVER["REQUEST_URI"],'?')&&$_SERVER["QUERY_STRING"]!="")$_SERVER["REQUEST_URI"].="?$_SERVER[QUERY_STRING]";if($_SERVER["HTTP_X_FORWARDED_PREFIX"])$_SERVER["REQUEST_URI"]=$_SERVER["HTTP_X_FORWARDED_PREFIX"].$_SERVER["REQUEST_URI"];$ba=($_SERVER["HTTPS"]&&strcasecmp($_SERVER["HTTPS"],"off"))||ini_bool("session.cookie_secure");@ini_set("session.use_trans_sid",false);if(!defined("SID")){session_cache_limiter("");session_name("adminer_sid");$Lf=array(0,preg_replace('~\?.*~','',$_SERVER["REQUEST_URI"]),"",$ba);if(version_compare(PHP_VERSION,'5.2.0')>=0)$Lf[]=true;call_user_func_array('session_set_cookie_params',$Lf);session_start();}remove_slashes(array(&$_GET,&$_POST,&$_COOKIE),$Wc);if(get_magic_quotes_runtime())set_magic_quotes_runtime(false);@set_time_limit(0);@ini_set("zend.ze1_compatibility_mode",false);@ini_set("precision",15);$me=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'=>'注讘专讬转','hu'=>'Magyar','id'=>'Bahasa Indonesia','it'=>'Italiano','ja'=>'鏃ユ湰瑾?,'ko'=>'頃滉淡鞏?,'lt'=>'Lietuvi懦','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'=>'小褉锌褋泻懈','ta'=>'喈も€屶喈苦喁?,'th'=>'喔犩覆喔┼覆喙勦笚喔?,'tr'=>'T眉rk莽e','uk'=>'校泻褉邪褩薪褋褜泻邪','vi'=>'Ti岷縩g Vi峄噒','zh'=>'绠€浣撲腑鏂?,'zh-tw'=>'绻侀珨涓枃',);function
get_lang(){global$ca;return$ca;}function
lang($u,$ef=null){if(is_string($u)){$bg=array_search($u,get_translations("en"));if($bg!==false)$u=$bg;}global$ca,$qi;$pi=($qi[$u]?$qi[$u]:$u);if(is_array($pi)){$bg=($ef==1?0:($ca=='cs'||$ca=='sk'?($ef&&$ef<5?1:2):($ca=='fr'?(!$ef?0:1):($ca=='pl'?($ef%10>1&&$ef%10<5&&$ef/10%10!=1?1:2):($ca=='sl'?($ef%100==1?0:($ef%100==2?1:($ef%100==3||$ef%100==4?2:3))):($ca=='lt'?($ef%10==1&&$ef%100!=11?0:($ef%10>1&&$ef/10%10!=1?1:2)):($ca=='bs'||$ca=='ru'||$ca=='sr'||$ca=='uk'?($ef%10==1&&$ef%100!=11?0:($ef%10>1&&$ef%10<5&&$ef/10%10!=1?1:2)):1)))))));$pi=$pi[$bg];}$Fa=func_get_args();array_shift($Fa);$gd=str_replace("%d","%s",$pi);if($gd!=$pi)$Fa[0]=format_number($ef);return
vsprintf($gd,$Fa);}function
switch_lang(){global$ca,$me;echo"<form action='' method='post'>\n<div id='lang'>",lang(19).": ".html_select("lang",$me,$ca,"this.form.submit();")," <input type='submit' value='".lang(20)."' class='hidden'>\n","<input type='hidden' name='token' value='".get_token()."'>\n";echo"</div>\n</form>\n";}if(isset($_POST["lang"])&&verify_token()){cookie("adminer_lang",$_POST["lang"]);$_SESSION["lang"]=$_POST["lang"];$_SESSION["translations"]=array();redirect(remove_from_uri());}$ca="en";if(isset($me[$_COOKIE["adminer_lang"]])){cookie("adminer_lang",$_COOKIE["adminer_lang"]);$ca=$_COOKIE["adminer_lang"];}elseif(isset($me[$_SESSION["lang"]]))$ca=$_SESSION["lang"];else{$va=array();preg_match_all('~([-a-z]+)(;q=([0-9.]+))?~',str_replace("_","-",strtolower($_SERVER["HTTP_ACCEPT_LANGUAGE"])),$Ce,PREG_SET_ORDER);foreach($Ce
as$B)$va[$B[1]]=(isset($B[3])?$B[3]:1);arsort($va);foreach($va
as$y=>$rg){if(isset($me[$y])){$ca=$y;break;}$y=preg_replace('~-.*~','',$y);if(!isset($va[$y])&&isset($me[$y])){$ca=$y;break;}}}$qi=$_SESSION["translations"];if($_SESSION["translations_version"]!=131114700){$qi=array();$_SESSION["translations_version"]=131114700;}function
get_translations($le){switch($le){case"en":$f="A9D搚訞s:繥唷(竑f儌姦	堎:S伆轪2\"1?.L'僆搓m#莝,咾儦OP#I藹%9惀i4萶2蠉企爛?9?繮纀2膏r\n2汵C?農4櫷1C`(:Eb?A萯:?銠斿y穲F蠼Y倛\r碶n 8Z許=\$A崪旋塑尣倿0蔦n毅dF	屴n:Z伟)Qφ萴w埒€軴缄mfpQ蝹墕q滉a誓#q畺w7S嶺3敔墱姌on>Z桵zi媚s;偬拏刜:?|@?6兠:綷r-z|?j*湪??-h骈/谈?)+r^1/袥疚?篫訄KX?,生>#愔??舚C姙碔鷟畅娶,?y ,	%b{盛暗9B儝)B冞寧+?>頟薜\r沂?箳2殢L€P?\r玕\*颟Jb嶟m杪1宩H驷\$钧吼4 猨Fo冧釬4 #0z\r犺8a衈庻\\怤-硨醸褦p?€\r?x7庶胸滇郶0囃#?宩k6傅@顑瓓劥匚嶢&2庴un?l臓+你s	劑命碃M]l?!嶃b_2姁籓z\r保a7??蝌雐诿\r煊妚猫輇阔滠3岃挝c2孨1峔0S楛庰育€P趣檄c嗗%ㄠ粴拓胈奱ccC犮樤\n\"`@譥甦?(嬗[Vn?柆9鋴h8乲?k睡K,??Z\"鼠皩唻逶"MF怀?i蕦B\r績0?NRL荄丅犧峂p驆瘱t鸉屫^s1穞?秃\n譸?}K€碻O-蘢>O?tP慶齙W?W扨綆豴覑坆槫#2鉿?\"?I]xP萆鬖镘tZP*1n獇\\诏7垣 譆檥獻1T?A驇E\r壨Wa(?偯€i !慔烛x葆賣%瑪礥j\\(毥W馥*朣\niN)錊〞\"rT嵘T姂胷盫m0h懶 F圏70氠=4\n熗zw=G挌棰>nU?祒vT12^	'貚	a蚼嘻桬T*噞-?覲ia缆鴲橩y縃G栰MA\0P	A?頞丄@\$垁?扞(^伕弑儦鬖僴\"鎀惙b|h91&pt鐠鋅rlp6?bTK	q0\r萴\n熧Da\$%8釔酊M`靵>菍蛋H0I\"rC(K胴?鎬€fTI!?F巢锐銡dW五讈i?<)匜^≧&?c缾柆舕S夗\$鐸Nprd\$粣0cIC奿g0虘釦燙闬nm\$ ?H?T悕9p?z^&? 镠5lZN擞I?*橞xNT(@(\n €\"Pi胉^逨覰枿;B‐\觿膶汆O,le	瀙	Ho5Dr瑲v\0T騐?R蕎桘};网砊1?g猂1鲍c`lH乧?蜙█牞夈?Bh<O挏wP??肈亹r#Gtt槝鋩<VL燰B@C?^敽+筍Eb梢鸉a霖%頜N-s(惗囱[hyD鞇璾僇氐藊讲痧哯-w9?\n擁畢埈獥滠	?簸2朠╖-r佭?凞7媪湒碸豛r?!]事??懔^浭 ?7z泤@翤 毰撶o摯~=拹\"澊x牮?]嗉翨`煤钅	f锸z膙?劦 获A\"q螣0媼鬀?k嶑Y吳AJC碳\r呥坮先橑#癩姲?篓/e蘪]r盏II摩鈩&Q	∩w8侜G驏.鞰??rJ`(+哖膐'?1m萷HGd艗a4榣萖z鮘0爯捤9eg?j@脣hI3だ艙赅vYy葦毃皹E雺XU[苫/仵螅揚CL*lmor詳?p薥\f3c賵姒殰?!aL2S蛖r?撕伺TK(焩@}籥貁垢臒Vx姘騿*鯸r3獱Inㄍ⒖-璡\C%s賣駇煹紊M馷mo?搾譃=?幯/照俩>???l苒楳螝?莍E0嚜/N]d4bdMrA傆?,X:B朶0廫\^o陰燨騈莭[?^+孺僧潝€襽AJ篻)鎈\	妚n遹{庁珩N旡圞嵺)吹{撯]67鬹 w0闄Q瘃<丳帅羈I#準鼹嚶鸪豏纪嬋\nf罯It浂蔺飝尖+ok眙e兇?I钪_i恹+哕焹往?柢齥|`€覹y?轱x绤7错潐wV╡鹸!絶\$詊<	yΤ绁2纨?葦欼襚/祾幉镹儿堟h?矧鶱T跙P?猼&.蛋 轔犎Z菵g氖o?0&瀎V濦?#?b,&舭?J0R镲猴e雉ni嫒皏囵j?X趀紨?碰鶒攔金V鷩	?o	溯\n瑙	0↗?D!\$╘n凢蝄n\n/垔pN{\0n閈r瀚/?\0忺D\0K躙0帬E@靭CN]稂癙\rbL\"靰O授7\rN炶咙7霯u嚔.\"	q%恼陮誱N潇od \r€V淺0`忠e堍0sz\r 蘳b餉\"p騢@猏n€爌G\.銡侍Z忨L闘旕-,7\r膢'0p瑇馝簅€qz蠢廿?6Ⅲ\r鉁.渲旧0VР4prJV腬$fKC隲n\n'Pab蜈傛质掊%歜箁蜶琺Φ哳R5\"#/鱘nR%2??\$飧崑#?杆o+俺/Nuq翪/諰僋錉@┢vdv╂y'L膻0O`?阾猺RZ\"\"vl婰=	?h脫cT3榚J蠰2级@?癙6oJ眆\"?LDD癩嗍ば\$歕"ぬ?)[\$\r?€\\";break;case"ar":$f="貱禤聧矄l*刓r?&\n貯韯?J.檮0Se\\\r厡b貮0?\nQ,l)爬β蛋瑔A蜷j_1丆蠱叓e€S橽ng@烵g毹魭X貲M)槹0寙cAㄘn8莈*y#au4潯 碔r*;rSU礵J	}壩*z猆廆X;ai1l(n镇龒肹觵檇辵'c(€躱F摫へe3橬b阷2N歋映:LZ鷝禤豛\b婕u?昜禥`u	!姯Jy祱&2彾(gT驮S褮M苮?g5窴甂β︵伧釛0蕗(?\rm8?(?\r銙f\"7N?矗 拶4脁鑽躲x妍?\"灨繀姶?砂W\"J\n瞀珺庩'hk琅玝i鈂\@蕄瑫陏f牠?帎授V?慣XW们{夤3)\"猈9|哩eRhU爆要?屏P圑刓"o{靄"7^ザpL\n7OM*O牲7cp?嶔Rfl怤伆SJ矀\\E臆V菾??膨冘嘕r 濥J瓥(陠禱$(橰侻楮v凣I鳔沪概办Wj諀俓"v榍? 寖k?勇銣3\r?禩[譶诎h矗敢蕹鸶略醚\0?乗0yw愂3销儉醲飪吤\r罰H專p_巔麭凧`|6?+?A#kuF\r拎^0囀zC塥朱勌缅檚搻j㏎8翰祏,15鷤繶rZT茤n隲"@P?嶤s?(蒢(瞈$秲哨鰺:哬k桿魵<椮龙崘胳0崈ㄊ嬢l扴R⒉歌i耑彈)kR<駪J?[鑡77WSI癥<褜磍鶰T囱K#oci@?S悳奲垬?舑h恹[3瑏!{峜T簳獊\\!>6}銽T賝?lk廊g甗骄稨叚r菣`y賺r?懚a湘]?株(v洘p喢??舱q恲j蜅玤<檪 Bld5铨噦衦伆鉆誠r(o翗6-3\n~3訶皳 y╠A伏俓0辎儶運\!櫦\0?k愈(ZC8a=@?禒@磧pu7`?倰濱萮) 孉\n\$闬n衆\獔j&Hh蜮藪Ko!ケ+4J糪$(湊鍃裏trHJ衅椧?蛺(\\竷8 Z!/P疲TXdZ嬡携艭榎"菼@F橝Oe霤悥\\N抳0珗g刃Ip 塢X棬@痑AY-\$檮n?b送噣W襖"^蒜K/政繶`彷劙败亖sbIC〞	!?疒腃沈#哢刂同G!瓘!腬r\n鏑*.蕭擌碧j楩矞犉bL聽h4珃O(蠤簝cF? i9谪aC&+\r??u觟B堌a溹€1虣[鄐Gㄙ惰睻坅|+n嶖愪蔡岺h煶C`%7\$村!S酬L崥釒O.9鈐峚?暛〃\$l旺]訢7噝窼週e翼e艂趈?楼G撯?宕~+m皡G梌(e#枻V\\_iO?|&a\$揀礐K[[m埾|l仔qo镣哾dT諾嗸堃萵?=aCεG愔伟鉢\n<)匓D^tm?B嗡趹mgQ-紾<畿f歌瞴&&翽溲[飤曵3匼0項v勖vi??\0蚔璢*氊i湅qu遦Og懁AG淬"?e橺!96,n廴A<'\0 A\n\r嵝B`E膉~:罭馼斠?\0/兗g([S0睵.蛼瞸\\ァ.)1H<曇8?ID?媟A?B驹	\\J\rs帄剾_揬\:Xe賛橽"56娃NW籓5楡w瞱虂馐拭,G萛r \nj化敝g椻5J~(臽aR\\Bz,VjN茥+漒"^m'wDS[yo:|s獏b藛孿\玞詆i\$湐茊M熋?蝘C\0P \0S\r!榭涾S猆菃H塁醽⑥稥e楹@月肫秌C(w&尛犽g1権壏池瘐w徿粎擨)R爜zMc錝NIJ]虦a6鎢蠫驼阋w徣'S勓?綑MVq蕜咢V)G夕?Pgk鑼儜?桪?扶鲶遥0蕰g匑BH媔1X惱p'\$?梺`F擊钤鬎鄝?叉{藓瓖FU&挀?#D 桢鄦/X岡殆Af-bPk/-?6嵫.F<崜)馻橔ミ钶e6t\\R鷕o!鴼傕咱U*絘u?甥?羧H迚\n	爛頖鯋$鹹zU饲鹎旳	mH<yS姌‐$Nt?-妘U<3	O屍h?,5\"忹胀:X盫A h?B鄝素錦r柝椷	飜[櫉r覌辒	?翴?\$?G碓~鼺涺尰鶨羈?鍊i庠鏋p	\0蜰?N埏^?F斳\"lg芌#Gv運"?乴Mf鐰\n?€~羵員.爂?誓m諓8K恅粣3?G幵泺?靗偛I砻づ蕵/繮:宯 @RSPi\0斚响谠iLC鱣榃jr#柢|蚻晁忈\n}0vh\r囄薖轌P\0齤堎p襸Pz谤\0衳zp|亶2燔EB&\$'\\尐剥甭秔B^e纹??湟nz阬ㄟo?\$€mo?盠弑Q慄8眭V蒤"\r莳朎\r??恸	f?辡#8醘t錅^駫暶廱 ~朠~軒唕㈡lm釲0畒毽?膇p?q孧闷Q發\$Na慭\邞r唣\n?/-鎃完噻樑鋱&1O鋒lB傐\"qdh乓.擰f{抃$*嫟ZqS\"盶$?扏甊J冾蝕騎諴誠$j9Fv\"oF葦\T鏀x儛 忷靄"鋽o鵏听慭$+1(襉&r\"銙?%鈨+*\"#V/ц2R}+c腉2?r]-蚕鉢"蓯?姕M挌F2瀍臄??R?02*/蟒? -騩-哎E,IreI皢误BU2产<H3覲郤3\"傖Ow3?S4S4s髇J葄2H\"me/p eH1*砐躙$?觃#eQ9e:巶鋣荊+卯R|>l蜊d[)?\rGFl?喴且栶V楸篓l瞹=n<'<O?&滌?掴掿hz\r€Vh:`諴]骣o匑€萙]bf损\r犼磤@園€猏n€爌OB弥尡ov鞉*皒\$n释肱f@汢?-秝f鈌qU!RwBze|`E\0郉扔錟C 榎r朕c咊\\骉笶冐.俁甧4?>?r颋g挌是啅-毴(帚t魟罯瘩P?,p\n\n6cD4擝玓\r噜撆ぺ膠.T黷酶?&凪腷揚Q &悰tB烾獕?蕡㈠餦\ZU牞[狸犣阵:韃焏?鈒u0氟O*€4晟旞1倈鞍鑰屬<骆嶭柸導>\\SR晽`*ご?寯鸣%D	\0@	爐\n`?;break;case"bg":$f="蠵\r汦袬4?Awh燴(&傇~\n媶fa蠳臽傼D垍4姓黒"衇4\r;Ae2敪a暗€仮劀.a妈鷕p簰@讚坾.W.X4蝈獸P禂题撠\$hR鄐绍蕔@ㄐ梡傩旀B?sE参?f?E?犛iX\nFC1犜l7c蜇MEo)_G滓蝊<嘒迎}喭?k雴qPX攠F?9彜?iZ璐歩鞶〕_a枟Z娝*╪^股誗9?烿▇砞蠿\\R髩6踉}j鈣	琹?峷鼾鑶3	碶0鵃D|陇壋怺€彃獟^]#餾.?d\0*嵜X?庛p@2嶤愞9( 龙#?尅\0?專楢巿桕8\\z8Fc橈寢妼錀m X?;r?HS啒??A>槁65	贶府kJ井&戟j絓"K狐?墈.湮-蔨泮?U??*>S?z>J&SK隉&辢R壔捴&产娿蓲>IJ柂怢鉎僅崙Eq8軿V颜s[專黎2嵜樢7孬璲彔/t扳Z?瘃燨絮m?攃Cm舀L#鋵某8槁Q憿BC*5\\ 沂皹?\rF涯uG#孛p蠁F褆c疲敢:\rx??纫Dd#@?屃鐳4儬?嘇x^;p脌`Q@]屷}鋣(?\r盶\k裍劂px?蜚n9)?	;?陲^\r俩j剩潸]U8{膩察粄v翌M;尿@O;DKb粳Ur\n?`C:<寛kT储`O)?3J>M+葅挒PH靐tT? 恝漇3	赭8礽~⒍痗+3芰C%~#庨胮o	軞碜?+吙墆qj慙\"慅なw剰擵睭瑈?狦操?:诤,齳蕲\"鷷#韹舐wDX\nA€Re?n@迡n{%4讐Je;蒬?yVqAL(劼!)?FL疉.P枪籍f鰔!儣B舙曕邸p糿+瞈n?桠{Z蕅a馺9隫淗庣!罢w秚侮4蒆4(L	\$\\x€?Wsao匹芨%b渋TA!D葦4&l6@溟N嬄;鎙糗/K~?用圽0S4\r4莌吸S€H蠶&*ぁ3愑抾取鰡d4?I撌魻s?x嵛8 sf槺?€LWQ0A换Y&Wぉy揬nM=\n桐誡挄z蕢>㈠Y運$穷W搜i,湰碖DPб皶O*韡匇2鲷wK.?	)紒姲锸&椟L猉K滳悩t炓h?x?\"P瘁匯]貣莔I9?丳4B帤坮請?XrI釐d,`攘@ eL睏郉懞嶦晹_+t9\"c!佡\r)i1'JI`T錬軥SO缠oR?#郟efwR歏薡{1fl諞硸wH驚hA埂,%埍朇Iih5ⅹ~?疑i?鎀44狺#蠂w4蘚\O&m綰期絕<c{*暞U{N鰈鏀剽W逊*u喃仃(峏m3Y\0亶镭5喰叔CfXth9嘨0u滇?唙k豩q?l+め簷蝍?閯g昞$`C p?噷l泞\n旓.@P粓>r〝蝘\0(-坤加肁	*(乗rd00荓貢薥r靾9愳U╣鹅?#幟{ 等捽弯8M湞x ?`z姁E%DR靼噸橺旂:J&葭塞唫K.↓'?q€	琈n皋蒳濺眺2棡S潞整嗶甧2?g磰罋匋U'2鰄?ab褩蔳A桸4紥/ドI%娪>@\$+鍴OD饥\\lZ?瓚H姓褊Xb	緙馡v摆Iy菖?R?菐泻?饭,蒤\哫A兡瞙q砛0F\n椝.蓚K蔦\b~妞z柫Pkg9殏b躜n潨鵵燣,j钘H篵B\n+夳E桚竎V]\\め}*粘F8汵恏	殁b矓;請?\r滆;V '屚w馷CGpY娛悫G楦	邟賊rz樗肀胐,_掺蟎n%}/J?s妸C粠k?啥僨{1灻俐i枪糢?!:佼OZG:8`;貝V2徽nr㈩/4€隞Xl/咈y{OuR贕燈\0\$b'釨眽浑吀忥c册2s鯝2╘r┶J媭<裑x腣s嫼=诳p!琱蝤┫恻!榴ⅲ{墽< 	RPn樂cd?d嵢8吘攘嬾哱rv痑]*B嚴7審妋#靉~暨Q柬剌\n仆\"峺?=]魃^咶鉊Wk綇3v.?渐秚xH>€:\\э5g扚By杉阄?t5@俓n€ 	\0@ 闑\0褿&el0G珃a@鋁d扵煨%紨屖_尭s?郂#*8羑sPFQ(F馑k*闖)?\"睮?妜薉+<彘qE+怹]專By怤6G鳱呝l?咆烐]尌#€炻垨l勽I昂'塹~{LP?鹞?q班m€Qo朘\rmT弌?€pzP擅傉	pn5,芪.!</鲚頀[Nt%?L渗M轮類?巴蠋謶DZ	恲i? 獺镩鄰H孿$	慶銁諅>︳;M?命?V犸(茊瑻侭r躦蜙Bj勹緱|鬗糪"b釨爆up]B畼铑锾|僯觐P燦Tㄈt{\"b屦崿?懮頧R甝b.晚9oQ畳#阴蝓Q鰏墛N執浏]\r窜O2o耵]拹Mw录(G糘)DJLn?帜裓\8 圗@喁?E瞩?82j?珹?偒D淓\$導\$\$却醑l熏i刳挲袖7GL躡?HR+鏔,繮x饖T伯\0S#'鷀Hⅹ-擱- #?2袉r詭NN?Q,a噉?嫠P]-r%q2垈q\"灬0=.0笔拔?R?\"-n?硖栬煅1?\r?k1S*~揂sE2R2惵猴S\"mQ6\"荚╜陲趚嬷&P怢#%5	螓フ6薥r7\rI!帒77醓80Ip贪r+表\nN*鵓;5S旣?.屹e;袃揥*纬^賯狘24S鐐?裸+m示陹郄bwD舞 锽<(撼億抽^:胩c@}BlㄇL去?k:]凈J?虬@f膭?對	~糴.责騈xw擱贮铝= ?n庺C\r饿O匉M╝D嫁羟鳊S?I#0鏗訯-?<s庺甛0]捽>?L艜\"ㄐ缛`烎渢顃QK軄2鼛鈍<嘽Kg猖t獭?23買j\$坱嗌)%J顙>覄)詀G坸4顙O'跭巤?P糪"A/.P:ar7'ヮ歞ㄡ	?K;e不屠龜	:3恻5<R3T僤1J晡齿P3?员4P/働qzh?Gu~裄瀖鮫:H嘜萧4	XGㄋ4'wYUKWt算I⒍寙竆$壃岄BQN儘JQ?驈J\\]%[]l烸颳\\悤^lNx,踎?于闭寚M曹k^M4?寯荵?7u鉢\bJ寬㊣笾\$I齍px3Nu骦征I帥X駹Pu?6*lH8餁盃vM`矨MAJ幼IUh!V{f蠠g鵢TW鰂齡铣Z姻ci鰨d-M釓鳾萾裧S9dg氻匀碾駁.?吹_ゼ亩聽6?vq~?痗Yb狀 忁颸$?爱Big7帞@ud蟎"鳤Py訜qr蜸Y)wr5Y;嘠+?pD敀?u\$屺?	fQ敝qV?摮\n礬r)硊蝄nqT璼\"	衭s徖b?bb\n阦乧u?AV譜wBQ勜侄瑽E\0猏n€爌滻活黭锌	3噈愹豂B~7m8T焪?膆莭盷s?榠4宦?1mj# 僔噈楚#駆a^艧:vY炸衲?鐽歕"tXXjrW?枤o?绑Q%J舘巟拟wD?dT嶫y喭n+趦(H鹴獆嗴┢军 諚1)赂郇?颮网?ц錻譢$Y?kX姄|QZ?=F戸夬4P x泩nI宔負鉰汱滞乜?!D袅J瓲|5C;5把r鞌W搥X耚0A%a狆泵,m?y	慔飸斁霏?XS蝑]氟on甛$9N鰐bHJn9og耑?嗷骽u膻O賆A朩卋鶉氁胸跧?76桺_H\rbn?3釉b?\"/6挾>r[_c'棙娡/e蘷MU?W?t柎#銆";break;case"bn":$f="郤)\nt]\0_ 	XD)L▌@?l5€徚BQp烫 9偁\n鶿0噣,∪h猄E0鑒檃%? 袶禱0瑖.b优2n噰D襡*扗M▕?OJ脨v褏\$:IK撌g5U4	Nd!u>?端增鍎襛\\瑻'Jx蒘ぱ?蠵睤П╆陑軎.S鮁<鵒S閗bO蘟f阧b\0镳鴕Κ)楒睶屃W鸩隕媨KгPP~?\\щl*媉W	戕7翕杉 4N芉皋 8?cI笆g2溎O9脏d0滭嘋Aт:#芎?3柀5?n€nJ祄k斉,q熈瞰@岘?n+L?x!蝛奍列2罫\0I∥#V堞?`亹娆瀲丅浤4嵜:炐 ?X懚?困,(_)煦7*\n煮鉷@2嶤愞9.?骪0?浫2\r飲?帀?M箬帔巆嫁2@怢娳 S6蔦\4貵蕚\0?n:&?Ht募/瓟0樃2畲斏TgPEt胎L?L5HЛ腖尪Gj?睂襌眛喝?I?4=XK禱$Gf稪z悍R\$漚`(劒炵?b0秩?@/r怡M骕輛紨磴N專敏7cH邁Q(L琝$眿wKR绰躓F5\"?詴_-eR陔柇妽糞?u*P╁\n賽脮?浣XTA冤J栧郟?\r瞕O油>巗#气卟n憼Nc牝鉑O袯P脨娲4C(凜@琥榯呫句9鎪8M?^2嵙}9写8^.A疔7紥`?嵂忘7亁`(gd?Dz路+?FQ耖у?A8論Ii耶\")E??鳷9tU员M銕/i偢叫78<氌5磣B嘎9\r襚螑劊%=k郞稠付鋅n蠤逅父?kR{{J郥鵏?4玸Eq\\嵌k?u6`Cb}羷6P识埫泈nx?C妬再詜d\r蚓錮^?U搿s梽@AaJ,棽嘤0猸?|闠债r?熹)sn剱,!€\$D*?&\n#p崈繂\n燖l>k袗0扝Q	€礘j筕h屬栵悅擝h1挷r豨qp僴潠baI劙0txQ1&1 迀MC	SH罫蓭+(T,ǖ℡#y勽?h騧琶w靟E? S詔Hw芵笆帼頜簧7S蒤${%:&Q剽莿 B応欰<E錽滵 wN<伡3`叵擪8陌S1Iny鐀「<俓0昕獼i仛\0满Lm€:)C8aI€倎仅z儵⊕?鋹) 尠訷?腀h渁Eq+俬蜝嘚嬊S抯;@堅?囶閅澃\nf>N,9N鏆;犻卑5C#?lG伈秝>O塌=g\"湓I?蔿?篐W藅VxD8壂!nPV(彭	?壋7 枍籸攈酦	┰齋筑郱騥?禪豙Mm\r┒6驵軆籺n凉6骝捋犍_k?\nChp=恋J梮 磵]KTC[塒I瞮赯瞞嗍覥驮du諈vRU馆諸緇宔8<?餈誄dZG?&蕐i衋挣?O'=\"憎?┆熋 s6;\riCLj\$楮塨Q\n?)Uq欲RO螛 \n ([\r9eQ笔\$泏鯼Ar4?B媃c&,5eUi指魹弛{?赑曲#鼮谕裓r徇〒<擼氩@瑍MJ鍸猦y]J&€阿,G濁D&x.笭Y #+(cH)▄蔈議]\\徒k;f?]2b3披籖蔒{﹢d6J譻zcI'y棿猩|掸豉6P儦}筛6&舷銃匠茺^|^犗倝Y	D燐?/0O\naP嘔園Uh烀?\\錪罫< 9xE鍴h鐂z?E潈篤EV镬(咶\0姸t?^l^乜;on?1殌 販拼偊嬶h4幷吨屝!锐攳j?4D牣Xu愨2ee-A圆攲p_胣ee捌?XGd?/奬$PY%>嚋H2薄iaH炝壖?m??訮螯2r挪S\n绤x%E?WZ褫瞀堄蹨鮏袩_DeQ眚愪燖3VQ捍?4U楲WG槄鈉?4\n檒s?':=UTy!孎?褌韋晜DQL缪95*/慟L纷;Ax??楻忷]韥N唿?曺鳞鈽q9V)寶_!r6|鐚い>嘕?栣螵觛脚7埵蔧z鐌?JI\r!犭CB`xSЩ鈽<攝奣阺}Q&d牓5椟λ?冽仈;赫衆"e谴敩憕_磬鐌~繒 t臙K硰軘S堛?s薑枧郳nlt8?蒌0?榎rZ昱鋗h?廟孜\0鋱銰P憃榶罫唫饖仍瓻蠤迥笁疏c0J.觫焊銑餯10)N鳊/rU傸圧0f琥祛啀鍅H頸z壣 ╘n€`\r魶L`O类與鬛\0蟑菫簟L崎v湆您b6{@^旺畓缂{D\r屌pTE\0脛?杢\nf隲n?0鄔袖晣鴅v蕊B屸(怸/?塞泄駪鬷\n凩L.犽#b鴛P.刾唸瓊sM喎2;P疼(p孃⑽D馜*8怴uB廫r郃HQ{N欯眰饚窲qTヱ怫倛鏸`樮M李\$(-Z,跖T|0苮-?N 粽藔炅L旮i\nm*?r廛炃塻!w!L避%B錦0R.!掐/腵y錼x錦";,鵱c!娎X?l?噷5P塡$p`7O66鏥/B/%襚錐\$p@w皏ワ鋍2q慭n铋天Ξ?惟ji裄雩朢#sG1噙肞1 憮Ei+?+鐆,Rq獛B華m+Q 铪-蟡w疅*蠒+?r\r蟝0	K?v珔/qK阫1R)v響 s%1*U*i0#ncj}PpR`頗掆1*坖?P鵟"n抈雜R*劖拲@甬?M?閘#34qn獐蜩鼺龔晰,?裏)?)+徣5hN噱\0P塸?4K郣規璙韁$?噹?T鵵?.悡N篭\?)Rn 榎$+23?qQ>O魮陹37A;?摻螕)8弐?;rR陲叁蝮%0s?S\r?r\0V2??D 棊1'A碵/?F)諓2桟?臧=E?(鉃G瞣5D.w灿B郴qXtm埄=芡,'菺b葾tu铦Iq[鬿3膛敥\$悬:舯匛KrO栾K鬋H臨,鍍?+飸TT}擣傇鰐[IWt偸魺LE/贼寥^4抰NV暳pZrT╠C\n体笽ネK?>s\$揃B匧x欣LH瓠?!!MT?U覭(W\$?:墍Q誃!Up}颸rI嗊鍊!?8?橽$説Q骪$]O-酧剛塛参w搰鍎愞撐蕭頱电']; SSu酏 爷PU!ORK6庅馷a57au鰾U0韦?50擉EuL1R-衞ZC搉xu齜6B騷d甿d鬷Bu2u	/諭ceo_擙Q问昖a?R)J4C娭L错琦&h[!稊/橁ソG#瑦?\0鋒R?/)-IS妘QP??A辞lgA)6R;53f諩I2玕$h唌L鲇P?A??軭{eeOi菷*&j龇G裆n0熘Swfv.賥\$諧Wq\rUqno鹲鑍z(坈V娻'轏+~ 禹O頲P/mB磗R3,?玼a辕oWkaNt瘫齯諵pPHVjLT媌w側W噖w媞蟮tWUxH\nCb暂r5誩c碨l鬥yv錣{?{t嗶7y椡'仔GB1^.oL?u齱?	%閈n硘?VCv覢鮡R+p7YnX\r7cAb鮞W曙€_v遺w]X}6髗慣嘀rVV剷F(H?l穋|XxY?珃3g?e墩'豼匄/n4褕(莭柵7-蛱騁塜^?<扌?盄庘*搡羢NPU)?}x!aQ檵窤稴笥N磡U孷woT塭5?,烸b翿!Js奪バ)Q鶵{)蚠*?B	?籒パ8 啛犡`茮嗥\r`@蛊磥h?i診r嗳\r 虧Μ.爩踿勗\n牗繸洙貼I㈦s\r敮嵏絅F晧k8峯c穼鶅\"T輼偩|箤垑iW捬侚+/覥1?窾l虊dB	筂昞0QV曅G峞H轖辛7茿~E褈厴*鋒棊输N`?\\'劽噖1罉贕磒媸j\0ZnК盱銗狽嶘綮/b6醥澞A晉B?#駛?赻鐉(脣&愕檟?S3替P6鏆y^F1y*訃/慣渪2M蹆y荷87_`a丏`╚冧<#菛@室@\n猤Q:棩誁C	a祬p斅匼"\0卹?傈(揜?/W撢9塗)M?Z1?貖\"瀈G.骎:朡SM\n茠犼\r穫8栱D臱厵嘎??<蜂螜觾裛)鷃/d亏U搃N?厂嶹~?刬鎛Tシ6~T脠鳑w8}Pgk齾硩#VDV犞h7w	\0@	爐\n`?;break;case"bs":$f="D0圽r啈惕e倸L鏢懜?	E?4S6M屁A惵t7镣p坱p@u9γxN0殠芕\"d7瀻企dp櫪貓覮麬怘a)虆.€RLΩ	p7翇妫L竂\nFC1犜l7AG憚鬾7倣?U耹導新b晿e膿汛隐4倞τ)y綀FY鳞\n,浳A唂 -啌堡豦3橬w觸溼H\r漖?3甔荩w螦!揇墫6e鄌7躖>9巶鄎肻$休iM苝V舤b╭\$ぶ\n%荟嘗IT躪吐)蠕躬0巋柁?	\n\n:嶾n冷:4P 妍甤\"\\&H\ro4犪笉x刃@嬻,\nl〦墯j?)笚\n姎鳦萺?爮爷/麀◣摆;.堛籍萰?瞗)|0丅8?眱,崲怒Z纩'砗δ漱8??|鏃	彌例\rɑ鷻嶲忤9悄l:馍鈈rⅹ嬍軃玕n@肍?\n媓裕4cS=,##玀赡窧B?礢F&!粿43Ul\"9聀╔猩屃鐳4儬?嘇x^;趤p肣(\\箤醷?9亁D胘鎰(??sㄜ|翉K俁(鶩R痯?;2痍5巿`24観犖訉榝篵-瞁厜脅,偱Th?—(??=n5€HK?+鯹榚橍崚JL\r#剎芢r缩 帺\0Z循疛?專0龙崘?満%艉B0犒宭;罥翂?巂溂0岒滥??刹\nY圚?暵廫rC猨雑1$NF5氪?5瞙v鼡C嘤蓖嶔英鈭K堃<夀皵缹N_a鴯n=3w挲F酏K堲專n#]鴩fP龈Y奝vV\"')?*邮?)x露9+?咍t噵滋啉 P觸疲@?轍刓r?虂p煼郁擂洲p驌蝐璣珻3P A?擯姘殷鹠劉淪鏊0RK俻e2蒟@聬Fs圶)R瞯挞 x吚潅澅.\nい2瀿寜旕朑t麣竈I諓g\n匭熣硬t;┕b櫯惒奾\"泥煙C平?\nP\n騖"]晢J!@ㄒQI齏r'\0嗄?X'毘謯覼玘\"?栮┠?D旃桜IrF潬H搝]W垳怉&?hD.\\塞靅D,殺鴫儜閈rfm|怱T住U茄;t` 0堽麦壝f 楣U?鮼\0f	,€ы]\"@s&03&wZi.崽ⅧN拲	蛒碙\$盝?4BP\n;跼eU疧?i孬8ら?寓uXj廷	U砛0007噚騅嘤莥=p賌?d檟磋a業|雁=J胋廐`仭硓w檴k渿攰嚀4Q肑'U?I胒j虡qΙc鈂"費迫鏜襓蜁\\&)X4J蟩\n<)匢囫―\$x偪捀圿r?r#\"lBL潊纼9儡圦U巳幥i)?}3u6薜栅?@€)龚\\i*O嘃a农逮[%\0n[=*\rd踅?bB檓膌?3聀 \n\"A\0(4d\r娶P鍸也?a€玴 E	哕唟掑+LW.鎿\0鬷?\r閉痨凨j]-?\"8!|]畃pq'A?\n飙`	qDP:肟gY}唑p蝽Zv10d冽Kf饠}g{摂饵I屰恻鱨2瘑痋nnv铄誦,%>燃w汚鮝6??啮rYBlP}OまVQ53aB{蠏悑\nc(`0潇悅耨M棺掾/l?阛帅棒t(拏o<糠忖y廇陒x	麅r翖.q<緣?e黜墮L竊慑è橛1wt爍荬蚒?唅嶜眂\r助淏邎%玱%鏫$<P蘊曆縊013_'敂汧不萨\n\nMl奕n邸\\縟y畳觚轭a丳*J_h!跹\$僈B蒭*Xf衎 ap@Rd專3{qM鰈b:\$蘑;懭lk_LM?3~繺$*顫锘鲲8りX焕萁<呙嵩i2诀 啁穡\nC紉)吾崨oz4鞁勫2.EIkM?労m澰B8恻憃綶簒_1喖[xsN`. ;瘖s緂几4n0 魔鴚ebr>HJ歑	錤U罚緃I1陉?Cs擓齃\\?3V旲%嗏q靹墔叇瀝\r.-4譨\r唥	Tu歕"m.嵛€H>g蒓K潹罃?cc=`z胹k圌囗??芢\)躩鸤n幛F\\*9~囪}鰹踸?Ts睫€鲣賡?[s\\糙?&Z?4蔠瞄{鴓L竼F絔\n苹Vn)偡焁膭I幬0瓁鐞鋚蟭J:f漶P嬡.藲扖L\"?P肊鱈(柊鴅?9苐舭\r婶H鰌{L.鳢?蟅%抢廷MK?餔鴓6謝0@黠Jn 糇膂'Ot捺渲倊鉳靄$威嵬尨鴓v娎?醦倃O0\"M忭	C*鴓毺薖8祩r\r卸#M3/?衅礟剔餤9硼tB?喓'版gt!許C6mc?⒋{	)阂 0鰔I\\/鄌 嶁.g鲬 ギ濫饴BF鄎塌菩赣KZM鵇镑翔?娧\rn,鶧餙#漒rL鴅惲pc)\r蠇ち蒧璴m&?憃\"犞駯oQMsH峔$虚脐&璸n︹(cRc郤B.Ec锷鈆刪蜷杕e弴H2韌	O€%漾.驯?岜竴&?f\"-€轛m^kg!?0琶(aK鯥侢?缜N\$蓫	襎/懅\r1催#?菨d8瞧g彽眧%膮 %8扟啔(犚=\$俫???H~MK騝 ~	颢颿1(璆+r7岻*\r8?糏鐟脋>%!蘗'襌PCi.1圕厕=覅€愮p?2gg悾	獗 彭﨟d斖?? h畞1扅頫r?釦*滦`4&^1F? Q0躍X??囥6B 悂6堒d糪r€V祌/扎彦1qB\\?俓"PB	唩牚\n€爌M慃闷鍘-止\n7M	d\$蠼 3肻n?<瓸\"€?瓏苆鏹z蚛0ac\r讹?#.凗頫"鰱搶骳6c夕痙j+T沝D\r阋腻\nS潸醣 -hN痝d盾Xj-b霏6Q\0z劕CD耊E#?vog庀鬫<fuBS縀<q魯剄GD犩>僜r1T丗纳?1*糽襦u喧3qT^D趐p<xKQ0\r嗄D肅韉2嵨媊?寍`暌\"~斡D劺?啺n1屨嚚-魷2l	@3b?YB庬P俭#.	\$1 侠??↖猬";break;case"ca":$f="E9j榾鎒3漀C餚擻\33A丏搃擂s9歀F?€耫5M荂	菮e6茡∴蕆墕匆d`g僆秇p棝L?Q*朘ぬ5L 溔S,-棃\r迄<e4?\"繮纀2膏r\n1e€纫g4泴&繯:竓4圽rC勦 MXa墰犵+恹类\\>R蔐K&螽聉幹必3旭茅聀t帩0Y\$l?\"P 勫d\$臍`o9>U惷^y凝=湮\n)韓?Oo姧M|磅?泹u彻篘r9]x閱儃d瓗?jP(?c宏2&\":牐:厑\0牿\r弐h?8倢Cp蒤r#{\$jか#Ri?槇hB犚8BD聝狫4层h氖n{癒 !/28,\$C #尟@生.j0费`@氦朐狮涕4蔫蘒昕&翵)ロt9I0?人!臩2!@詺\$嵜H?Z。&f餝僊<炸#茼€P?&扎M\0纁|BD\n0宑B7桴\"愫X44暬WA脨噳犘凌D4儬?嘇x^;蹃r?Vメr?咁衉H凧坾6牝3.亁B)@薥\?誠"/E`N√ㄆ:!L?l.?\$7鈹??,[.疫?ご瓂&劊 @1-栧鶎yD\r儴诮G秉)C松璊l[胦Bnx?,T\n;/cㄋP#T/9誄;=\\TT鴨棸燫h8让b;\r镠?\r鷋焑;L	]\r??ejmT墤R駡e?R蹹誚OZ铈腖堚聧繴?2乗0?墜樲;婼CЁ 墠8?厧{`属坙 ̄?}骋€w/楑h颷\n\rk^凢*氦€P夵V虈r2鱵uOYI9ペ晗K=噘0MJ挘?C贷€qUO嚥犧W	餹(h?錿F1奱!技\$2 a釀紲c焱j牋9倰b僘) 儽Cˊ?噤缿榥5臄摃e阞扄o?*rxㄟ渗_鋻?銩W?B噚*道愄<#%?慟@鵟0棧丿墅&\$蚆憜蔵婅p\r!叁@螂 矕S獂cy?檛 cXe厬Yg歹さ藏[Kp;X^W\n鉢\」r礈あ`鴬!gn?>L?胒MC!8?R猺F v臏€梤洎慂匼$濧?s垽u\\/s彀湗b#09D拕藘f廻\\┤軤dXF枘侜Q\n?嶘磋嶭:p掜斔?2a2怐eu8\n@P 两\$AQ(慹*o懨鷪q0:肵Mq皭FTjV晳na畸萛$q8我棞孝t?欰嵞朇Z0挏楮?\nEQh hTBBI&拏2燧㈡QT~i琋樰B 戚㈣,仄3d耒窸\naP?沆O埩4lJ殰?諎	I3羏??芉囇	Y	崐]Q喻跶B良彨嗄]荏?Z俓0'姚e孽[J簽z豶5罜悢旡M\$V	%[xNT(@+毝A\"劺媙	OSO鍦吵 _┇奨崛伿C(滻,'h85骪$獌1:い霛摐翢z憓n劲GTyO\r<哫!<Vl嬏)?R垖伅U-瀘ve\$縕椭甲喊(wu?蘅胃&'bHrcuS刓\d庡Q醆0\$姢+酊,裛:L羺%0%態?筲}b?gb贶抍iQ禛 冱BA楂愦€n腃怗€?\r\$綿軜動鳮月葘缸P飬_C齵f@a堉鷫X+v,z怶櫭翸?y97d刈@f泄*昃礑s葳锨赽卒僺s#S藞?韖z熇愜怚4譿hiB%knC	色cd?鲁@顱廄#饸!肗mH?@^k.|鎬2昌旙6bMQ酰2\\匈0呏F巻Yλ}\$?; €N覲汿N1淏泑╨蟒鶫*鹣!襰Wf夰YD桓抁Fi?碹搙D粔F栲鸤r鯖.码?猰}睱夗-?!逥E兩H+\n\0&p缮僽疪\\"L?D谢h?烁烮箄r(?悱 !夐qQ/ULB6&~]TJw汖@0c@M\n佞)勾麩愪揃Cb?渌論? 礲5S}墷礂7閰懳8x)I4槶 V蓌弨3GL椺糓	嗭囫擐弫軟磲腈2S^x樮夊遒稹7N?賏韁\\"TH`F6H-荺$姒蔓`\n暒Ok倛?膸NC謼T襦k>錭攆醄〓H8骝宔櫭:`@『+耎C )I>+间痫鈵d?坓	Oa豇%鉦矄wO纋疥N驧敉c\0oK??v噧\0	膡&w筱5-恬缛v桊w-7娪pMB/M擂切?m序pN6鐕H0Z\r腎?C鵟0?颬\$xj甹-崅宵鷓屝(扵?\00001	饝\n0?Cd笍?B?鐳0& AZ4渺椻补E?C佧d2豄奰P苝(噃啜,?输)疏Z^?0熾膆柅Hp犘dz蘯鋋岊G(dI\r蠣鹆父?	xf2垚!忁SQ?\np.鬎0?>{盉璊荞7/Daqg螩1r€耨f姥X?dv;M(袆葄痛陪&j侺袚塍0W?y1u\0Po褆vG唩.b潎a値?t1茝G?F紳峊€僔?1谏脺鸇?廣嬔 噔;裿xr	 瞈n!,\"!1嗔\"S\r?皤\$鎩N懸蛼X鹯>?P&循?Qj髥'B?'恑~鏳#,蚰襽疡赍2栬@╲瀹zQ傭qD飫妵2{'+\"?Qo+酪& ?杉? 饠U*躰C鴅\$\nf懾)刏.鹧帹芌&滐守\凧\$傴2?p>f 茯酊1砛n锱PN弔 甊d繺r€V,W蜶j廫\稁嗚& 寉bjB刓n橦,禶繸#W?硣?衆\賽g2SxA3}崰運n€y杼L?啅F蘱->%萳	1阍C凕耥\"1m(PS叉I?f<\$缆│?rxp^:6?=觬;酄1fx'剭剒VDHm訉輑7&臠杻9/6FB镔鈫B?顴ALT\n(誃cyB癨0>爷A461T| 5^―焹?潭凈+慆f嫘(?)DL阴bdp衔q\$D甽G濷胡锞|d0&鎈r\"j骎Dl*W\0阦K〦|UB鬋犺=?e:痻2@鬨$未!3D株{鏫\8斢L鄦韙2T+\"?G€怞E1靆嶡禪 	\0t	牃@n`";break;case"cs":$f="O8?c!詞\n媶faN2淺r鍯2i6幡Q嘎h90?Hi缄b7渽愧i勷i6葝嗘碅;蛦Y@v2沑r&硑蜨s揓GQ?%9惀e:L?e2髓荶t珸\nFC1犜l7AP枭4T谪途j\nb痙WeH€鑑1M喅态仛N€⒋e娋臹/J鄠-{翵p遧P潔藾芤le2b嶇c愯u:F譢r幦b驶孭€?7氞LDn痆?j1F?泖惑厄I61T7r┈賩慒罞3i匁记揯0騜乥╊p@c4{??穃0叮價\"墷JZ\r(鎸€洧Γk€:篊P鑾)藌楜\n ?礳(*\n毆99*觀朗:4冃?诡揧崈樦a狉8 Q團&癤?瓅\$吒僜n!\r)桎尹iR丅8?嵄x?苽新5ⅴ?j篜?#d维裸p臾?糲+?嵅?ㄑ噗<嶫\0簜	R3\$?\0\n耙4;孓巕牘B?8R月D?嫺?\r矆@H惿珗錒L拳x秿!\0凝Ap銅?z\r犺8a衈庼萛\0諘rT攲醲?呫劀9庨H凧€|;&睒A(屔K?Α郶0嚿X巒=}#婥{囿S儮?店](7廋kH77〞0詀鴰&薅l怔№[聣7#0流丆*??吕N[椔梦eY€韫糷汝8*G郟?'儱NL丅`	02耍s+e腭?癇&7\r臌輏=0?\rq灇3阠;_|\rc\$D漒r#打媅實:瓗\r6	墐\"\"G賍1闺ytgQ/=?\n\"bn藭 l#(硇1l④?揓捺t態=9聠!譩夳馎H鼬铚逸醒蔹}賀蜃磵&€\$-*	#l\n艌Gw願.譻M匾b 呪鴡<嶜`D軨塉3<3晧?MM24璸V∟蠤[\0h#DI弴2 *犛,€S9姓〕~陶hn6竣jI鬨0\r郂XH击亜A9牋v側憲A揱a`霠0?`0瘉~辣B狤l-D岰g壈3DD6襤/K窳'€€!?乸 ~次紺恗0M.	d碏?H衯8\\?篪ML\$7銲\n柡石?e 啨硹hs@鵞鄆癳_K饚滷睳CQSAJl7嗏~徝挩姭![﹛獀掹潕園V?渻b╰lESDMa\"	H覝€剩霾V\\廦隕i璘C痕[	o?赂羫p'拹7.跑鬋?jō砂|褃)匒d\0騇迳#JP摴D驿硍?氦呴\$'門姃V\\娐Y霨嶾0 b?蓂6v媯暟?歜6CP竕婈禱"J?(N2鴸墤@IYy/s嚕磿勌H!裉2Uu?}3G怢?2Rq⒐@\$\0AMi腑\"烟\0R僒\rL墪翟F@[??J\\r@Tz亾读V╰nW覂YJ◥亥翑晞 \"\"\"A-濺^g	沒?+	@壯5?i鬕l兠M6侧喳嬻I嚻=n4DU葤F(UD-鍘鍽瘋E娑?殚xB€O\naQ錀?誙Bg`i?賁:讒{a)坸3愇N崳匹┌企;永V((?7:II9V\rヌ洽G辪怽r【`㏒嶚0zg払D鍲??a4嚜紈舖?u_D伊cF斠)E,CO.磭魝?pmA;vP qヅ聇W蟎$鞚?Sg\$膼廆&濟6\n魸3绕料抃n46鉄鱣_偪呻\n课?m?Щ\$d譫美{yy`'旝F恴3?Q洗xx他z糀?昞0t?\ni:╟j妴埅瀻斣缶	釆7?OYRT\n弔聜P轳惚?殫虞?\0)噑N璜蜅弭9糲蔎蒵K陣諿韶da砩¢D幵[皒?輱扗0RZ圏5\0爣繮Zw錕c3泚壉?ˉ鹞諂1讧匽m馈赠?馺壓#謀\\0\n素}\rE貪纥36w\"s?29\$恍蝣^ 惌渲h	*@翧W充殺燴薃秖鵪'\"灄痿?+煳>7`滞滩笍杝 黉t'歒莂6A瀣}dc勣|4俥磸衇_邰绫蘩G畢秃&T\r摽?;浪爸g氅\r扎?/璂譸娜?臊4褂&ed?S緞=冹e葭睬^颜籘}儗下q.拖斈锺砒7@锠?応戞=鮾m?NZ垐}痧丐^絍脀牓@z譩峕D?脢М@;哛P>\0P虁)枾>袸倥娽s饆皤`钜[躐倢\r%敠躴?t2&cz殁;d?痃唒yN?uLc^謤臬侟硰??鉷'忯襝h乗0仍?瓆.??镨ㄠ炫?摩:0d偄cx*k磤M昂繥虸f?z*\nF 僅(K 倃n剛膶瀼B'`豥\0恔媛H-€+)掼胃磴J薴圵m?/榞苺`@艅,;膦伤,N\n蒜9%n犜j	斒p\"}?\r0 φ销#0%僇\r猝跀瘙'|噛02鱠腗P掬f ?V殿寕q\n镹鍻師腕0\"<溱.娛盤bnN極幤?_#QH#裬Q2?k垃踑隥\r?癪跮1O1癯P ?m斮廈7妙凂文~^H猿\"l&!Z(闎婋奷H癎类Y<r言^z啬E辋k#甕ぃ\0呮\r蛢\r冱适'藯 肗EK羂r纲瑛珖3崲趍燔b苽譵sQ?CQP G灣嗗@{Bx_襫?,?\0郔y\r恑&P*0灙}憅R?I瞱魐螑7)搪{R??鬱?嶊嶡F	d枢0Za靾C虳kNkdn>r?掑驍聮袮.泵'贛\r鷐沑$s\n煲鎍莬藽{0嬉9+J袬d勉黨牔DB€C痃异?奜 ?e?'覦'揫4?*m坲鈴6\$?2挗S搖10??J%s想9*\h??糅U髤懬:M菌懛硨弁?觃扝/蛹U虺:蔖鋯I)F\n岖騝8摨>>RY;釀q<侢ゎ?/2溱2\$腉gf=\n\0?媜梨轸濘\"敪D腴f虷qA?CcGBf篱SAN阧?嵜衒g.\rf?鬨$24猳.掝Q旵l5b?QsG噁榇B5HtuHE`哸@c?gL d憼(厫a區╟餏d?凩鳵,XR9vjz?篭n牗繸\n彐zJ?攬挑|雝羁m#C裋O代#K鮋-#桰褨&\"?Id}葅d	7B? g镖2 ??/膞侶篭$|Bd*L騖"C旲1 ?Ob:錌?汋\"@\$FT<@Ld薘譢$b俴\"~轡rrsn打IP-⑥胗屢惂嘘?4G斋醑O3鈐e,璝驨薝籝楔乗0帻C?PP5蜒'H&庾&?脩?\0a5\"Gm.(墄nk?V匾+&x\n聇煈潼刏3&/?肻" 醆0K鴌↑雞妪\0碈'VFy昫lg?蚇凓?ラ鴟炐Lrl`赲"莇sC5sdrE2\ry1霫@@";break;case"da":$f="E9嘠桃k5橬C餚擻\33AAD畅杠eA醆"├豲0?cI癨\\n&楳pci在 :IMJs:0#憯豷孊S橽nNF挋M,8匬Y8€0寙cAㄘn8値嗴h(農4櫷&	I7镾	妡l匢蔉S%o7l51r皭嬋(6榥7糸13??壈@a:0靄n篯崡僼湈e搽彐?€蚲:`稷	眦録競禕\r盒洶累)??佀h\n!帵pQT躪7昔竁X?\"h.辝9圏:渢岣=?綔葥?谸;)Cb覝)奨聢bD煛MB垼?ZH谰	8?'珗熟;M<鴾?銚衆r?j槍幝致EBp生褷宙瑧盒?氇稹?<!#\n#垁蒀(饸嵢0?もb灇臖橋?EP~胷&7鬡:=j\0&8玕\b(!L?74(3# 诘–#搌緃+禳#气 藡>?C貙鉎?\r惬B0?埴9乣@S傿z3兴榯呫絛\$3?蟋?^镄纩?義D胘螌-m镐圈2榵?騈+0僣j2=@P牥嚓5巸琓a愅\"0;\r#(\\?RBp蛐+?愜祵銡2??.?佛?h楚*D慆6贵膨繄4訸i???帲cB;-,?j职#\"穃0?(cヶ鄪i痈4?娌3I?貞Cx?奥淺r螒BC\$2@aポ鉦Z9宭)奬"`Z5瑩v藤]?纫e%7]缓09?'罕缹3\\邙q\0P牬]略繅#k?K\0P姇蜢7薼 V笈甭掀踳鯩4漱覎?彤獡{夲芢"犨蚊?(幋U3d舻巙9#8碌甘[SC(P9?8?廁Z倚坆槫#_澃JVeb搏纊蛤??2I[l憙獚6[覚\$DRL葧ID@鵄耣\\Vz袰J1櫑r楡]肬匦緮鄊P n@唆效\"2b	9)*傻?B刓$錐︰:︰a裋b獉W蒥+臏恘XK蕬鉦R捘萛$蚱H燏L>+(蠚蜰浢咲?蒃?陠u脰鸘慰?g?jT瞻1邅|3釞,(g劘?瀤騖rK俛脹6#t艇€襕C?. E袃觮?o?XN	褩3`€(€]魔'臷0€倐圽n`?\$睖S!鑆鞡S\"~ZuCKド€9逾)m#彳烬Ц鲖撈N&涠瓮?%D皸?g?>gA?憖迾絧膝?XT佂\n-銬<衡)@湂]n锈蕫@f:木D?\\=?鵁㈠:燄P	酟*)?g筡n?m鼈鯜訷\r璝篖笲煵罎撛 R肑D啞笒u膆 镴=5橽"8G`.d?6喸働*\\F\\矵?X9)蓌?S/c泣2虪\nhn`?乗0U\n 匑媇羂0D?\"卒蚊S剪L罙|嗓皺0L澦\$)憏%>G,毑鹭肩-灤]刞詣N爝7暂交S肄敊?A埣 C鑤壂鵞KUk&嘬)v登e?蘚n随O跜牄\n蘒S儰塚T涞栻?蕜捒?r叧憽嗃琎k靔5\"Vnkv\n呏湧愐慄蓃蟄mYV@u儏﹞?壴朶$t.ゴ篧]?F\0猖進*rje?扸F?豠噿P蘊僎董e蚍WZ9磕〕媽RI縬芍6孼奄{>瑯?蛭砛0PRSQ)瑲;紛瓄塻1\"0燗a P|y?鯺CQ灗+(衆\悅\0极0cxb菿`(S腡薻\0w仗\0v蠁0圞:癶8衕t>壪y唷f酜t將C??F秢	爺阽j洢C&動,g燗币Z8杏殎稽K狷G/砙ㄌ憟\\5%矏T綺赂eU渽诒z\\h6臅硸0帻_~h-围[慡m簹蔠,BtYiy~?凱贓住捃拀)@po%F輕p蕮x狽O犏o蒙拉?鈫ㄖL渆篙9怏斔p]肱l€\nX艒,γ緀24/\"`圕,c楻雅'5騆d纨嘅R镋E肻n怂d@x聧M2埨(絜膽曘b淯w:^3n矎b佀溘m揾霶璺?勻^ペm槶7x闿赛}稂褀継DI蓀zk4謜悉oOj4rT.~WYyBH漒r:ClW[Y(\\Y[痋\s眊濒}C莦達媫\r揳謻_I纽x壎X廹Z 缬~U帵y奵J\\鹩褀?浿r?畬倴Cx葕堼>&w頂聺莜穎窏侾鬪H蕃L臷rna幇铃责睥稥o鰩M楦駨嗩藅^FN氾iv鱪恬\"N	頖癎獈畎Dnボ\rTM苔40a题Cn~l嘭SF睱磻I\"蚴|=㈧eT?\0鋚\$關愹弜\\藆	癆餤膬lf)泣?+?吥C餲\n憧0龙犧Qb'瑨F迥?≧顝f扈6\rp鉢no堭p?P	铠\$瓞(媭t-阞0D瓽\n弅?拜0躙n宍芉?荺"飠稱:???Q)\"裈E@ɑ?C釲QK	ku凓癜燖1 淦c40肖8I墷)''楡豏B湮P谈4喹me(D袾	f蜝芃傑 啼^严V?mOS廥稝咰€`諤乐选J嫃洪(聦眜f楤嶛p鍚 纏|│;湫_侼袽8?瀞植,骲?J庐衆n€褟篫?\0.->/bf鑌$T7D&C~h日N??5?璂k儢嫝ⅵ?絠xl牒C9€??﨔Jn漕8B\" .萷m婇N*2帪`+j??靄$静?m€嚅R?%?pC-R?I?墒&#\"?7+戢妩g︹2l*	犧鍑雈瓹顦js\$k\\?F蒤"B光t藐;	/纶)?-?)`ù靷t'依0缻-1湞蔶竗6ユL蜮:鯦\"#铺\nB詾﹦F\".\r@";break;case"de":$f="S4泴擛s4樛S慄%绦pQ 運n6L哠p€靜帒'C)f2歕r唖)?a吚勷i6楳dd阞\$RCI滀肹0羽cI惕 溔S:杫7a旙t\$衪檲C埲f4崋銇?豦夌*,t\n%蒑衎膃6[鍬斅r繗d嗋Qfa?7嬙猲9霸嘋褨g/蚜? )aRA`€阭+G;鎻=DY须:χ嶲贴翶\n哻\n|j?]洳C悅嚹饬\\近,:鬨r侉U;Iz萪緂#噸7%_,鋋鋋#嘰\鐒\n?\r愫:Cx洫\$k鹇?#zZ@妜妃x妍罜\"f!1J*帲n.2:ê羡8QZ帋,匼$	槾睿?桧0嶩靥€荎鋃鯆C\nT酲m{瀬庆S€矯'?\r`P?嶃l潞豹毧-陘AI噍8 褎C刓$歠&GC/0陧层\"入垺D愰秀uB`? U.9灭龌蘞?\r╘n聀CT觱1宨j7碹c?€钆\r{鵤C礒225∴滦竎0z+銧?嘇x^;r5X痯\\3呰郷f?H^*!疔)僷'1蔃}1m仉砇洈:C珃:捍S:⒔b泊;鋪K掰垅?.锼?隮层欶=B亪C蔋劰哾柦壱I屌?>,8 績xZ\$繬丮娮;G1╅B湻瞝窤嚘(駺z4X?(螒蹟:f6J*錦$鞞Rb醪嵧蛠屜賸%凯氍@:O8荅;b垬墆2\r鷴甏8覰1t庛頢悳魬OL咍c疼睂緿梪缘sh??鯃Gz帻x8跎'a蠶T蔦"N逴踜X賱;j€燾x?\r晵f 孲P貚眰觮;+^@鍆`TU 娸v貐吜H惾0pA-胚懹@勅	P a4€熉Q< \$?鷪箜 ?w潺桎?P`o€=嬥\\\r`0@4A 	楥\naH#\0?郮E霐XL塇1 |R2扵椟>?粣_??E(:p蜀3\n唹'5顄XX*絩肸iE 乮-@实梹s@'tr恂3?p#a釶峩q€H脚Ho选\"Nd泽 Z┳iOG頕	#哽u\rUk瓡斗V\\j蓅%蠪譐~#奬0007.踱蠲乷io7H|A訨N@€&扚蚸VBg9栐S腿 '-礄⊿寣匼$鍰陞\0hSW庭9喼溚?}卨儣B遮?餉5#:j a?En餱壚侚?c⒉\\鴇扫3嗿鳃PFQY\0帒?國淣	[熵??谩?sN?HN$#牋▊怉(萨r審泮伨桮卣)w┨Α@轘锽?v!嬋奒\0A掞?磚炀Ca0a抩\"慆(いN銟FVQ潯t€?D墫CAH!f+懭[M漷^寝覸謭靗杸€F.S8i\rJB獞0聵T璝_?睶儁JΖ.2,撮詳陡枩镘\nZGlj篎&9筓霶Xei0f€5攢苴”渹9+f绉罰(.J堁|\$D]龃l'Pr?!箞L?J幯翄臥`駚籈?\0 A\n .g/^詶痿IBj\\┚╘\\"m	崧}皭@M砷2a8麮XTz瘠ワ\0鵁6觎瀜唙\0驪??c鋜K蘏D癆H敛摙奛剂*dgUC帱?+p覟9#`y懽6斾?粼觭rhk\0002綽7Vb芟A厹pI烲d踖蹎R-8\n\rd?拈埿,瀩^}ZvX虊墷?嘰0螑9?褜l穩l A?:?l??->0?N肍0干鈼F萛\Bχ%嘩h份\\鞀4TY‥AG蒨b+&MRF碇Tx€3畛i攺褾FgU浼v燗a l唾锚萗\\!憾	Io瘓匊贴5擬蚺+'f刓r挋忻&*捗?谩\nu腷舁<c? 缢審0鎈\摎rc;托K逨呮筆?溍Z∟]qg'?\\^\r洚0A[鶿n殏躶薨謄鏪l焧y屦??阉鹼3噰?禶?鉎_\ngI剻篡黏K崓F引2K蠺^a&式条楻M^挍\r\r茓罍犫F硗窉*Py仝6&8u蘁w飰龘檟Hv橤愺l枓~E??ta袢?砹?糵9 蔟婩恛眊/?sZ}栟S?x見G?N嵬摿`+,扔孄P 虸?dˋ 郚B膭r烱~5錖0餦nm,p?Z湴1F襡\"秝Mv注X麼淖B6\0Z\n唞9o\0P	孯,@渺€Qo?岨>,幨pX^碋踩0Z淫嘋O&<鵦>zo|纏oh5p妚皫??,np岥饎c膦h?赾謀nM猓腩骀(鸠x媛?@鸣N巉O顚 幸?P賚b0倜h'pZ鸆臼,瓪姥	飺o€耈徯x膦\n&F0 ZJ郂兀\0d:舂侜#鉦兡€\$%:刏灑5?澟P9杀@?F`\"\rnO+/綾b{E獉珆盭` 褌w萖繺rrq徥仨抲L6(-浩-纀&'携峛?p^?%-\n/?\r鎠嵶	\n?诗\n厦?b饁藢 M戟?1耔?4>6@敧\$谇(j巉n鎷馽\r湾?rE\$闥 皕紵M|d\0犓辎k抌鸵死拚疩'癆\0\"6N`? 芢rf?0*e稍嗦8Q萨0?恂矤o边?*虺*QP?G+Rs)蛩*R颀	O唽R攸襦_'2鐤踈"娵rH窍Eg,2/蝼02?悿孲\0:岔1r鹚げ[Rb1輒騌+R麯ddI?S8逽=%液\"!`绒?s(瓹謀n桎A??&瞺W侠)擂C\"冷`A6汤B:﹕x&`杶F赉奓超<Sj聂兇銆係@?聎.rF€哸\0s帄娈J肻n;tイ婧\"H?搜勬\n牗繸J\r钄WCh \"g﹙鳢撅霺|洚铧蠍#:#`町囅篭$頫"??m愘CR裀m?D1?Fk灌@芮F7#a<t<`+TBs?櫓W肏#'蠺+釸\nD-穆FvL?:嵱2限蒓~#.t<'\$€R鼚鏫\G婨JGa侜\rsvGT?T瓷引€蒤0⒅t3vG%c魥圔狅)泅^ 擴委??( )p8O礬0袱銊莮+坞烊?\0WM?珺tQ?&"戠nzM庤	敂4敇a 軮嗨愼凷=悀Qk抳嗋b4 蚀F|\r/-' }OD%嵰#僆2 /b";break;case"el":$f="蜫硶祠=蝂 ?r蜏縢{=;	E?0€鎈ng%!彖侳瘨3?逄檌敩`挑d扡綍I叓9e'匒左='噵nH|檟蜼胑怘56螥T袘:h围蟝;B?\\EPTD\r慸?g2㎝F2A賄2i膦q+枆Nd*S:檇橻h髭惨G%堉适..YJ#!樞j62政h\n琎Q34d?Y_忑\\Rk蒧畾U琜\n暽OW誼zX +榎\璯穿+禰J孓y烍\"娸魝Eb搘1uXK;r沂鄅浽辳3奃6%湲咃`擩禙((zl堞&s衣?磿?畨/%篈[7皝淸はJX毽	媚懏K诤懜m電?iBdABpT20孃??殕q\\?)敘*@I猹繺$肖窇?铪蝦笝霞巊fy?.J尞?*嵜X?庛p@2嶤愞9)B 龙#?尅\0?專楢5巿痍8漒n8Oc橈9寣)A\"塡\=.懭Q鑊洄綪渚獜跐*▕鬨0媆\N灄J??k[掳隻芷(l姴?Q#\nM)匹欎l柼hなFt?KM@乗$核@Jyn斉鸭?J铗`暭?N悺晩禕◎踷?/儛僅纥崜Nsx輣_專黎2嵜樢7岈)6乀`gvN+o╊M料獮 ?駤Λ趃6vv6N呌X蹈筡$\$嘻蚽霠^敱挽蘥婜qO胕6參*??\r?OBP訣#茾崦p习O蛹螨希敢:\rx隑?9言€X洦??z\r犺8a衈廃h\\0隁脆Nc8_?亁D胠纩昝4?硒x|卟K憊蟎"\\懕z昞$跟э痝鐌諳d>/擲背R唻y\n鶊\\9/饁<N2z?舂?築嘎9\r诎螐劊 @18X牚皁f碋#>l]尒瞛焖懕ZFD棩燵b諧oi藁鬘靿)錎淉慭0v)q#釦奈蒛H儂乓雀偺惤!4\n-徍袀咹澛R恕?L?A6?惐簠i剱炸糧B4W庙?9E\"Gx3敍覾"妕晙uqY坒Mu苺@	\$*剤?楬bD>衘/揬$*|0锡潺垖覨s7\$*釨=t鯺q(?幟?H樶鰠h璸旾'詂篔9%垍鸥h晱d&X?`I憮嚰瑳?艙8gd踯朮8献繠拀帓{?鮿涟:\"@\$帺J,攧旁炔 hd幄剑蠙渟A睳熊\$?a%*獒3恃?荵鐟R\n辟b訅?h& 涆臕?Y籥?	H?髐翴瀔p	凷紨g.?5鍁臷r羄y3?鑌$鋔4勌SKC╁鈮怉E] 獍楼昩D強7卝〝捫聬F楲d龕暮{?卶帓jvd蠧 垽2跦晈栦\\R偁h):`玡l鞰p滢a翍?蠤哕?@'s瑄Kn阮﹕*4}犯x曓騖\K諾傂)Zj鼶\$\"dRI?1YQ>*fb{漑L饷X3坬N1?\n塬梊r蝅?鬆	)闬\杫@鵟0∩寘彨恭‐"S躛銘%A彦%V憍尧笽偋l唷騝7ヵ?Gc?`鋱{f?腋\\郜d`t糏+€hO瓎?\0@蹆`l~i?'\nC+!檯譸[d磷\r擂诙m釥7馶0 n C`s0μ谝侻;?g錤鑃譢n,UHV惉D&鉂夆丿琷E>偛蓹T(€A.莛嚭嶹I+-'p即羘Rj釒?lj郯r\r!?蠄[矈PK锳嗹閱Sf!v,挿gHQ1\"D溊萻艍B铞?Q.,U\"止駿(糆縵礘h\$Di\n+3奆閯ぬI?奰?噕h喿n狫??糁 i鐛]蔇觡\nA玼ひ)7鏋G鮡Z;2Pc絲P拤L:\0P	酟*L!8I鉉禝z掰*4乾髫楚顙簚鋺W冭;u栔、V鋪=a)'X1璜>%7]?Hd:<?eKx 帯3T旳0T迢?U7·y!请擥砉腺 妑眾娿J谢鼔nb浜E`\n?e员淺$L2襖$?m	詺3槢	 K觜耚${尾L?湌v磄2杫z&泾狇6=U邺2鯤紃撑C鵴R;宂逺?僊-拗+n,Q%y?~踍夛a瘩瀬z-Q間?瓐攃Π怳]H塏aD黝輴>\\枛Vh;2㈨kO繓虬娫偉攡梙荥漷導皘o唼盁框騰疑sp恪**TM+箋@犟驲脱?餓s樀鎈\?G鎶蜱监CVV窿钋篋H蠮l螂?\r弯縗$睨誃F-/虵B痋"誦蚪鎗耧殐.?.弻K蟲z?J?8?栛'v{jT@G値k嶆?'刋掆惿H^zyi恍=f翲轊緰Jǐbhy)> Jh缾傭4 靄0螭n晡抃"媌PB掘\0?浶釿P纨P6i.黫媕攊譁扮d淺"砵f櫒"趠@?V 鉼	.藐垑DgI娪o獘eZ\0 ╘n€`\0む\r%l\0靴\n逆FR'鳮.Z=璛H贙鹦啩郂#'涮b囷;B爺Er8吷泶??CL?4?稃B?鉿яB(▕5銾0p|I綷$q妓1雅?-?)怡Q丌hR緥vJ兝W號X#H鋢k螞袗⑹r Ep*宴央 瑨<圚螏q??聕B??鼴?鲍R	\$睳媗Z%&[塺夝D??pB淘瘊WI鳅玍やr徝總柯鋄闬\ M氦r嶦拻R奛=l F,r﹡wFH!(j*枘,咮閺锣Rp,F医)oc韯T-?'l?H?艠覉匾杈|旖飌'P6IkD園/\0|-X厘徱B蛡啋俠鞇8R?儛!H錄侨J?x屸G戇3彃!)6搕E囇Pq#d-77餗snⅷR/#?庖吴@	刕鴲U髕C?鋅n=/b+p竮臘B螫;荧<狐E\\1蓂dVA骋7僜n锴t	{<(綶萝剛咽胆*`UF\0圢@嗉`~?她爰察\"d栶員跙機4%蒜J嶞撈懗毯笱 jF憛攢l豜盤攆L濴??-@SC廅[\"L鴕帏?灶I匟E?O\n齬G7詟 \\慻o>)6:3廐铈鴒惓牺擼9()HessH摶>云D	?s帔敭G猿MN肔斱蒃poL愰騭/0啦?膾.qgI醟蔏 G S 睗騋PG揚墋\"扐5Q偋Q蜒'N┘枑,嵤嬅蟠J觲H蚤P?贝wu\\诞?mO攺WUWUY3.玍癵t村>础D瓬B陜(J?0Nx邾K殶8譳礻凢HI嬙蓍4躎b!挲u艱?!^嶌%攲暘罣鸊?安\\U升	^跣絊X?v繺$M\0q>?焁瞍?{\r昪s?4m\\剭新蛐蒢寯€臾NX4WXt鏩ug5g84婰3eP{\"U漀贷)5h);f朧巘D.4?kf粞V乍顔慷滶3?枀Xj钵j筮	rP昁薪	k塁諢l揯,霏m略礲b+勪/orLア?d犭誩冸U沭-/L饫绕?6SR猥S4嘂枼LSgPw&决]kU塏?q,?T鉱uoET'mU|囍銭循uP橍p淛佰<B髒醜^.hP+S潸饗h柷斴v苂5譽偊d蔽玁,tS]?頼,濸l\"B幨4蟫滞6m噞\\烿鐃秼nW?fNFvj?|w?鳆Ovcs稯I\rv椬|QG{w哴栥x腗z髹c悢S?w7+V房€夥?箸~ik7f貘yO<y€輧T皱\$ほW粊枃UDCO\rO0朆倶Ca谿x?K梕~鞶*\"e擟wwMh誠ro8|挾轡$\\?|v诜S謊勅cx劘弫蛻_椼呑QZs瓓\\?W僱窷恩oe鴂嗰'tU\nc蛠6?Kh罾梫垁[槍鹮预r<?赀+鶑&&Eyb艈?硣D蚑eH絰霁愰5湥u?魸忊&?囇%TY~S?牟騟\$>褼T绬殸`芢r€` 臢荚C6諹9?厲裍c顸?弪?{^K赙?)铭fC鞀x.F廓\n€爌)@I2n€!s??捬軹僮:茭dv鵵&誊G\\D0鑨?Ke橱=~竄戰沑0)<滗蔊F.攱馤魆Ojs[稍牏T\r]5?戜L.\"骁贆XK睓瓯橪〨C\n史WP皇n\$褌KㄝFv\"樿躙$乺h5]勁&D32腬\饚]+2B蚙瘥: ̄{崊@韜4Fh58?o仾?Is?ZZ联艡琲~nGA谧Z圙犣釆杝7宏鼹蹗鋒U聗'y▆嫍赢皣?氞C膕謐e擨庘鑷馶rwby!u蟘駞:(鬨0駭wq=砲悃瑁带gU鮂籖wV闰,怆鴆罣?HX屼止=iY49)(澶+X苊)E昻摝dΝ?艬2HB黲鯧1!滼}3?H4W虎+項甕e}夈}瘦?jA摵?擕v!6TC?列鏤?(仇5%€";break;case"es":$f="耞慛gF凘s2櫸?x%绦pQ8 2溎y桃b6D搇p鋞0湥てh4潔忄QY(6榅k苟\nx扙虙)t耬	Nd)n坮椞b骅箹2\0膁3\rF胵冷n4洝U@Q间i3贚&拳V畉2泟勭4&浱啌1で)L?N\"-晦D藢M鏠犅v慤#v蟊g屴忡S亹脁教#W袔u旊嶡鍾 <f髊矣笗pr僸愡间n3t\"O繌B?浝(礄姒?藇I翛 ⅸU7陣{褦9M汅	婞?蚃? 韇M疰;\"h(-羂0滔`@:杠0刓n@6/虃痍?#R?笆姪8猬4	爢0╬*\r(?“獵湇\$蒤\.9**a桟k鞄丅0蕳脦蟹 P勼H聯斵疨生F[*垜凓悇\nPA?:E5B3RN#0&F	@0#??刑<譕迂4畇v鋈畑嗏L鷚*圤?\0005騚??s犨%N?RE尓 寖j饮C7罀 ィ茖KR[繑\nD;?う:缾9羛l,C僀3销儉醲飉呇7>羠?呺萠c?惾凧P|6?-伤屸亁&偞`埸冇QDcK滯#磱捤鑵尸掳镾J佲,?恧???2??B札劊 @1+栧鶌2Q鉦?蒲?淜?S#	#p破IN*.0貜R\n?`P?耤ㄙ藶C?藹孃柩-例盠&Q頺4榚滭?*夨T谳╟漮贷?<UN?礨#甝/狞闹踗?晟架儼趱湽ǜ?墍U岙穛Ze刡x釻J蠺襝x獝8?X喥7柘`2絟n溡鶀-A?貭?萀K=?*軘7b(標幪颦}扌抈?&w*矒?j碹4?)??>誠"T?踡<*\r殍?8;埈暲fj葈N愭厯!?枔Yr遆仈0RM纊2A) 寀<?\0CcYWe湟涴谿U鈪R浔z 谡3;膃\\肒5?J~x鴳╦愊 U|?eDG*Y唘g侒p5鐓|h∵玭8H褑聟抃n&L-? 4?2d`駒%K. I孉纻-ùV氄Z雃m噓邯UY鵟\k?.W^S瑵]√<愢HZHt尃?懁敯鎈r4}溋?A?\"2辇47F煟b#1,?婺\0l%掫崯hj挋pa	慭0塪/S矨`唭b軆\nJ8R(掓fy?)蜳C?x[COTLF個H\n7\\F丄J% c柔h\$e辶3曇~4d赔殕\\伻?柾 蜵4Q愪?阋\0櫔?憆襭虾O%4<+sk8K2~I'裓"0? K厒翀?B?!?Sy	\$L<櫞:俩 邋?*DcBD06?0	R?T缼?虗 ]\n<)匟cRIl鄝趴矅	R衐¤盲\"pN夆k%尽\"i??7R=暏洋診$/)脈EC亪6撆`〡?#yD瀃V痴X脩?,鈽懇愙{8h傂縞lC\n乀 劺R灌€!黏u\r披蹡窝紈RAeyo赴鹑倄p?槼n蘚r?м;0Cj9湄颉硋??芊IGnS确?g蒙>敫镳鈡zF=噦哂蜎2歕$垃杏r{ D卌K袹R礭B*p輺煥扄;@蔝?OL鏒E釔驃Z?箭遱'癟z 风. 淃\$,9-嗵@骬蟊C叇G俰?庸€湯fv酶\n_蘟絇0膋j眾襞籾.濠K蛞s負?\r?菗>H?6L碄敹|[1*¤%R(產\"猃酚\rrM^猟<0逴?躀?~較+%T滒パ	\0佦栿R鷎\n盄?敁S颱塦e\rI=b04煺堿e兰G耬儃3e劢揵昭v{斪!m荞穪-蚤硞赗&?雫F d踵\\揅jQM媟LT褹z8nbnqK汀C柨咇剌)嶱豎,銢\"q厜脈)?鎐d棼确s鵏蛎\r蛵H{︶版g苗察9°Kq??%T	U(R礆鬋~{R缀斾騖"H七%鵓DAV;渗f?<兑拊q?y?帢\$樕U缅藪)囼糄?}变:蘀魰嘭cZ4讂廐羊糤<鐣嘺起?3敆阹G鞨	ZC痲'mg邟n珧?7絕艳昶狚节馩z#H免B?鲘`栈@gL坁??鰂1+b?q紵脉X掂C#*嬛麸陁/顫ob?靮)\\鮢8酾簕颙JwL錦0?骪r4錉橈旒:?\\弋迋鈒.剮掴P瀹x嵧o8	粹徠jb煫怑象\0Pp羽tCoT?}-BC廰\0@樼叹BC萝襜?&?肈(iz/C瑔ifF?o蔅邪顟\$4埩Z0TbD煁锡?%惇毅€HPL\"鍨>蜶澨c O0?X堗蹻P寭饁携HPm,-?眩v訄T0汖?od衟Z孟M?	i蛿享貚/(嘠PiQ2鯌X鬲5	.K鏛ZqqK.?鯥⒁g?\"X鋓NK銅sF>蛕苾斬1]衆$嘙|U05馷岏嘰\€F鹿裭u蘤遵裻v姩l衍4q6iO?噝k/yhP?遬慆鯮d.q 鯭望\r fqb NpOf|騋>鬙?Q娾*zrFg鞦諐MO剣RR豫!?%腶%RcC%鞿?%'rk&翯pg駒=剤jU)-?P.賱K\$h	黒r\0\nE?J*а様褳7fi,jRR蔶胷镛1h2D?鑚q?F\\膇Rin\"f轇Vw\r匊寅?0d繺r€V爮薴.d#%B0駙鋮鈎薲嗞詺\n牗繸?c-Bh哝K釮犚5O\"?杔猷*#?焯帜╘\C弌囿+,<?擮q瞭秘8萌V鋭/-bw睙\"6援 ??X黣6ē嘟凐綿h<-z ?Jj鈨8N?	cf蘨J?.T犾D魿JIb魺咟3G\r傸跎?o魼r?鰲$牐孶@糅D#俠漪J?u\rb鎏fO胿pk阷蘚\utHp\$O?泣 D縟>#镨蛲晷N縗0酈(傆d6`,糪$?胿KRT7o澪隼渲R'}\0姥楺1#+劒j%呩/c@	\0t	牃@n`";break;case"et":$f="K0溎骯斎 5歁艭)皛\n媶faF0歁啈\ry9&!ほ\n2II賳祿cf眕(歛5滄3#tね崪围S懼%9惁眻詐倸N嘢\$訶\nFC1犜l7AGH駹襖n7湇&xT屫\n*LP趞 ㄔ瓿j惵\n)歂fS櫼?嗤f\\U}:潳揜杉 4N覔q綰j;F對| €闉:?荌I彝牫R溗7吤戆榓絘槺秵t撫pA邭?#<瀧诵泴啖]a饺	桌U7螫sp€蕆9Zf)2艄婴WR晭O栲€巆阂綂	愱霰jx部?髒)\nZ€迬~2?X鲘#j*D(?<恜逻,呪<1E`P淂崳誀犖鈫88#(扃!jD0碻P劧?+%銗	栝JAH#專x隈婻"0K KK?L蒍悂嶴C埸5價t7紊Fn/萌\nL7嶍<?届軠€E宛軗,餕鈧S鹕@\$h皹7瓐羴BS傓:屈締?擭/索B棵刓0#坡'N蠤叩k擃陳兴V塗	,乣@7鉆?屃鐳4儬?嘇x^;蹃rH挲醨?咅燺?@^)疒触(P檀嵂ㄓ<亁&⒉F?敽8*搤篓Β,鈐睮 漱皰\"婒?韸巃…@T?疯H?燩?杨?狆颏鎭l:,獬年.顸8;掫?0襪*驥6?塡nH@P塰#疇2C`霒滑?酳捡蟡暲	恽t2CF&?洮[2炿(\r#H淇	蝬昞r#X郑.\r吰谛赜Mè破0垬韻?yk,詪ecn?阬鼐c曑?消~6縗"E呬篡=愪j%+裒筡0竹\r燪咼璲4z\$嵃J┫こ髁嗀.OL :皠纖^澟靂劀什騤R7屆26炏T?僣|窹?^襳\\f碸瞯YI哱0蜦Oi\nC\n槄`蔦n?6伣/RS\nAe 6納IZ*0茟?G醋裄?/铏?e繥E╪'"v鯪A驨%蟼\0偑设rYA岦淰a榊隕v0D徥lg噄|h簒 g礬$tU!*\n=”鸅聠nぴ洏S薇桱Na亮`\\仓lSZKQk-叴恨卶甈芄SN颃*冪+G憈'\$緆儁4稆銈弞?璡"/槝拢?p92s虚?慀敨Vylre蜹(剹?a票8?b`3搷叞霈\\i洃)|5濩@i&A虤凴燬搜x#(P2鉢0!%i28i販 酅\$	詣鞋v0㏄恿=ql3歝<\r?捙粣#饣楢畸晴▏僘iY頂讫?M裓n?劧涒扖#俛9d.&槿侷&XRFL]g`C1馶rE\\?靗0u.yS襧xS\n€稉屈?xp\$扫睯o氠羘TRdW\\I匉Y跻犘i僢A惺TG.{MLl枽P笑姊	搱`?-轘U\ng€r咮?掅jrp(圗<3犂R裠嵣馂乗0U\n 匑娵-繢?\"垆炏毯廫$睚&痛繸恛?艖e麹剩&L0RF众c2#暦[纘嶚2\$W攤紷式Ca~.-K帅d罎?R蟼'V全a;注沑$騞G)3礵硝磉{蠇n惧\"肗8uハ改蔻?nI U鼰司P惮FRr敖b?Z?h6蝲?轡\q?0!闁袊纛妹噌1冡豌摒猏$砾儦?鮬弔穭圦c??f墊&jR/?b疽掱x呶	罞N,儌劼Z rKY钑hI犚燭\nA\$#刾捰勯鶈礋Ko^?(S;Xb,\ndy?柬\nB癊	罰)カ鰪^蝄r钠楔BH9W軫丅VM迯9酆缡1頦&斝莉 A義 卩€礯-淶曆/嘑欤,犣K肰焄q嘰\^^耝侸a廊\"m稅6z嚎?瓎禱nhig畔L{?圾R>壆襻箕s鷟C)刲庌2BH?k鉮瑪?戼	(?T慲ULg媬鉽儤:|lw7?克2裟%炓%\$穸 Fr铪镮暨5杼呙7釘掲Y騣邲|玵C钵O衲祀dn8yO耓俥壘1ot0.@!符勦粠d虄鲛曛?Tbr旄fN閫躭钮锕q藬Y餔橮j脆n畆_編@:公鄽z抔嵑W涜馶n5鬍K暂枖!与?3摢虸婚眄蚽7犹櫝i:4^4F|{鑘(弾(?牆t祷叼?d 痫聶鷛?橈厁	{?k縳刓"?o鈞濱馨梮G=閪嘄wrS穰鵠幺吒饹O餯忯陷\0竖!孿n釴`蚃翸PB滐噼芡心郗軅kF汐N#钕錉磥j?鼪弎\0#?/pOo	婁5€ZH倀Z?=霵朓h.腂幠H^i皵e敩瘓弲嚅#G'€臇态8?輑谽+CBEm皥2P?P?E餜刺€玧陭磂竒愣_芢$J?c\0S%Rb?c0\\铕5?Q??\r*_F20\rXR恚甝銓玴[H^霶J峑M/u\0n╘"盠y`mr \r`諤ㄖ萍阷tヾ<\0捼褟.秈敫7憑袬 K?责\r/铁饊犅1碼憆?盶n辣略塔(?鐾H俵廐P?怽"{?=1闛	Q贗骡侇蜦&員\"H7馯消!莙Q*饊?	J\\/绯#鎮FO盚饊‐n1戝!弸傹%茍偻g劎\"2NA\r術陲怽\?	?rm%q-坬2z`F矄?(燩襇(彝0R誵鋃}\$檄c首嬘'裊/Q捊\"跟庎饊愋B虧 P	n@扔2\r'唘鄪仕?裰翪袌?	/ \\+?P 蒤\笑iqU0锂	o\r茒鶏掮&?1Te刅蓁e*6玱9@哃 `?f@H)k%泮槇\$\n牗繸謮侸;Bj掍*B8g-菏颸n?咐鑞v€漫幬&葿\r )轡r鞱P/颼鯭q5n垐\rv7筇0M:\r'陽マY陭3?\$嘅d朗nM?惴㏕e睷幡>袃LkK摅?(?眺c鶩 衑弢饟?j,p+满C陬擂朌H来*/A眅\"T8M3#6gC谬碆g侼藙N顱+鎈"5刋m瘎?'?I.揬$(ΜB	>%/柡獉觫9I_命蹅喒`ぽt甿€酕唦,潼&O坢鄸O ?箛荝R擻"霮磞5揫HO%Nt6h碊d?/蚛n0m圽r舗?*7lD鼭\$^+hx廪	\0@	爐\n`?;break;case"fa":$f="貰聶矄6P韰沘T跢6韯?J.檮0Se豐臎aQ\n挭\$6訫a+X?(A矂劇萾韃.?昜\"S稌-匼\嶫)Cfh!(i?o	D6崨\n緎RX抹\0Sm`蹣瑳k6谘兜m瓫kv卺豆6	糃!Z酫dJ蓨癤瑧+<NCiW荙籑b\"蠢捻*5o#檇靨\\%乑A酎?棸g+瓍?m眂僛棢P鮲r佹s愽\rU湍s辰/谊H磖柭??楴茡qGXU?)6\r嚍*珤<?\rcp蓰嵙\0?Cx錉?孋? ?巃:#cㄠ8AP噌	c2+d\"齽倲?e_!寉?m泲*筎冥%Br ?玧翰剱璖&?hiT?%,:嗓%菮?蒕b?坛^?	賊\皙z猩隲" ??旂?Y光 ?d(T7P43CP?嵇?嶔擱澥HR@矣筡n窑l溒í,茎诧猙盼?缉5D幤岒Z耉3鶦砋\n薧?zK3 曾?\r痙\n吗?民@0宑1I蕉?B?;?犘7幇嗦Dc淜厑\0ys愂3销儉醲吤\r慹ApP?}觰嶤 ^(a疔B廯\r皍(7亁9Q煨寥6W]¥3d頫$╦B燎旎掊茴3M尹轡$琸悓	D澘U3俉ЮP?嶤s?(闰geP﹋?@?o级鞍郝絓"%l礆>欅z罥d耄?Hl椯b复栆詝 \$笗~睜;)2DB:厲3S(\n萐0冨*B0萛"彑艰塗罓z?撅+6鑣餣舞F菡绠n锌5@)奬"c昞$%?莡.嫷<;1揄Z盼祍擓諼瀍驠d蓠歆ㄚ?A犒粺楩V陣烚9靄"圂籓].8?嘅?脸濢2唡嬲|?€烕?\r閼竆0儬l6葤奬"琈书I埩脪`_联X	殧n㎜x?磨榧孒刟Bjf8AaC?D旪\"oR?嘰$?HWK<(8pˋB漫m愗s鉨祱i\r∶?蒦3葌W`鳦\naH#\0肸憠\$?H洱坧.XfN`CE?v0|鷽3润D\$瑦鈯翵暋蒵AP4\0哫竢誰p@敝Hn@氪1︰&Z舮疪侐Q学敝>V押VJH梯TZm梳?p2u;?扥蘚n 1D鷬陕uWf?G%|\";]肆y/E炀尹_両?\r?G&{n勴鬐tbD%p>T锲3+ρRX8>彜B猓,坰Y\")H該C蘐	路3*F!E? \\?\0膮???攧a誮璸i(l\r釡鯮%#0hB\0萍0n晛?\$閿T懕4&'嫕慘:F袓捘H\n (KD瑽?H倖\nRbN5砨嶆@CR瞙1逝譆r\r'瑼zZ\nO鑘7甹H€閗!V1杠#Tn+!3瓴jㄥE2扲蔵\$M	晸?矌\"A{31:猎?紼揹螖蚋赹毣冡\$暼匔KSY鐻755舃讗q╝dd揜IqF犌N悵A県幟Y覾$褧U,篻&\"f咁揙Y鳄欌8H艗[渇郱9%锭⑩朲I=x《茌痘tDfA紓7魗|襋^'?^瞝询輂4戤刞℡f{峔"o筓喊N?氻贪獟挑UMk婱淭C`聀 \n\"q嗀&\\庢U.*k巄┆j猆*hLh瓲哸=郛]D蕽?鬬斃J爁j0揇摑<疁鼠?墅氓q{Q膋p礣憰非\0蟠%瓀匵g!轡$夻?掔C卮篩鏸勷?8<汄徟岩SfL[V碩Hh?\n_柲O蒛n惮夌H銯5娚Xk朥婬>?n很{帒?峭豌Vf孯J;8纺匸孚>\"a牞赽gd荑YN???3^|K)软`S}〦~荾c?鼀F}彻⑺睘脐枫Q煟矝蘣S嚋~养rs<[&蹽蔾褝夡蠯0舫符{?V攘P ?.R\r(ai??氀Gtu庸a躙\?0^[\"宝\$m^酩窃H/6?堝諬[r}檭敒蹙%UQ 曵K靀M]R?幜喳?钊氤禱\鶲怐骪r蝤戥蓎葪楨垅 歬^?Z妺淗鄶夏Q!浮?C鰭悝*魴o羛紻g籍S嗿=U_嶛q墑	沷鉱庸{酠P霄讏蝫雑!\"W?園!~阋'R)闵閈"塱紕甑鳼初Z+&<v脄3髩>櫴顩笩?&覩篝↑]?D?~刈杓&嗮@圓 郒鄜賰Jt(x2cMKZOBl遠NUogB{皖\"NG#r?糨f肋漪?禙繞?郣>訉f廻瓞獤卨影p噥绑B渵m€P€褝?/椟恖|厅吻掿蒜皈盾?酄鞍嶇岸%p号嚖\$h~墥K偩n鹋\r细鷋d臠6t绾?.[\r-i)蚇%p酎嶾"{I4daOd⒛50裓"#宲“	碍	B%C,:嬶\r燬&浩猏$?\$a?鵳0NQ\$鈏\nN徸\r?M43銍埵Dl?剫?鵓渆Q抦q 慙`叡>{P?\r⒘,P?椠?襋铝AQ杬q蝷\".n?唴db鴫枋彉ID奀p"阁篑肝o魧憴\n襖$笱獦辟{甛r\"嚘.M鶯L?D侟便	嚨\$NrT0/蜆腉庖l蔾騎鰬?Rw	q鎘\$?pHw%q?2p凋z?R?嬐?1燥C&pN.m\$汨拸\n裁+╳*R4?惭也J你?G1戉m襘碦?L掩夑5/蟢-O曦慸訨砺魢?浜? t緡鎠\rHOP?飃12\0勍t皨Bpkf鶶87鉤娤历\$1煳競癁是穃n颂埔趍d啮蘎炬洙黎@k甛r 芢reN璔0MN躜x孿n牗繸▋锂喉,X槓鲰額0?埗潍loi垴v'á?%B?W0-鍲\"u)PG??mo`啄歯-污c?弒瀑?V霩々?j."L;尨w??膐002w 嵚CjUgU馕f'ET茀a署齅?蜭*貶4thXN韛鷔j]G懣J3颒岅7	H\r%J餌緫瘱鉍MVF斂敜偮o於t褔HspTgp叫?訹?2AG穃$G~!T礊莻N剘颢帖UuR;QmT谙?~ⅲH脡>K鹊\n悋.CH侈v魷廗騯(nfM?╯.ぼ僅?鐯3€";break;case"fi":$f="O6N喅x€靉9L#餚擻\33`ⅰなd7溛嗴€蔵?H榘肻$:GNa厥l4沞p(:湇&钄瞏t:DH碽4o侫旀B毰b駱躹?K厐膁3\rF胵冷t<歕rL5 *Xk:?d焓nd摡瓣j0虸Aa\r';e搀 滽璲I㎞w}揋鳿r,襨2漢赜@譬(v氓矄a緷p1I踯輬*mM踧za伹M窩^耺攀v喨睇緲c氥瀯鍑凃餚慒复Ku兑└謓7濈?懠?\"p&#T@@垝?>?V9巆混2&疉H?肞迶っ咱驿秊拰崺i?2cf&畁(@廂以寶x#僋	锚d鷰€P犚?|0踌@劃?痈糪n褗?迿売\"1o邡?c扅蹖S鸆P牲嫾Fi:燬堎丅R?C枰^6甭俋?腬$酏q襜4ιc?惰?嵃胹旘P\r€曲丅BX?儉??p?迎觐.霡?9渫\0@P\$8A擻n0宑嵜8@帴埴2籒4\rApl狷4C(凜B€8a衈庽H\\撝珮\\醶诎p?\r槤屜?佮^0嚿ì?秕 F韘7c(链H柢禱rc榄嘎R锥,@?膉/<B7'c:&實x膪?賀8?*1靯笏i??睹瞲枭 R\0乪@?乆Z~陙B5^5鄴(?岞柘r3錏?听V?Bd<酉X瞂粚?5H\nP髉2腏%J缨槰慼佯蓩	jB\n?趜\roN帥\n\"`Z俬融軆	K樭1: JE(旚┢F鉻Kv\r?誗Ck?\"妼'.+\"芗锴蛳塾.P?<蠲冸x百.闔\n7屆52叒\"MB5c\0:俞鷮?H覬飏b櫂#U{E懩n捸{??'!T⑿F媌?\$|螕x焹:V黀\r?&)鲹卿让+徿淇D孻﹢\n槹?雭E\",€]aMf癓袮Sc\r浤A??S\nA发R愌?0禗C賊n48墾UOa蚒履?鵟r%D4)DD\nfe+5柪cN剬弓暥稸`僴鄡;a診$繒4AH8n垔j@鶿n7te芰遭乭sRR堔tV櫷I!&'鯭E%廪\\圍.E毯R?禽x/ 芗搨rm2嗀淴虋纱ダ	誈n穃0蔝2蘱壬F蔦n獷%`攼u╦Nal崑1`0Bx硯` K0(釲櫒a襺,嬱X\r釢\nD'と5衡?,N?,t>n貯	4餚Q  \n (!?!8櫌俺N(嘤 稍D2\n坕 !湅璂€孼B.聲dD埱U芖[賁圖淮翌ONct(E軜斌怯\$?嚇祥dmX?襧屻趮U<矿詊?ZM1mUせD媊9椩?`,#f橘?NI\0P	酟*論Z!t2攭鉀c\\瞉:Lv暷?p湔汝d 伕3愇NIGu湆手睭?&Y(溦穰鎋	E*?`悬0响绾sI昣De瘨瞆K蓧/%5@勾艓A颸nE ??€乗0U\n 匑娫瘈D?\"遞z顛_f!#儙@拻Q?€j?獜?*N^?}潦\n譨垯朥榲Q聄姃榰eX\0豃?蘎q爟挒C玕na佇:孴頬搹芛\0(S獌*\$b罡牁丳孊d%辽9儰跦?&C誀贽内鯤磼7-*bb:-橷?昘Amq钒?搃赲"WnQ憢5慜J唖|]孿$鞜}鏔郆d駧	贏忕wCs嫢)w11U糯@雪]6?汄?%f.絷v砐S嚈秊擩2\"彫墭4.擙'h挼膼嶾0\n?-刨鎡qǒ═!\$\0鉃	邓1]X誼俲~n坱罶掯Nt坘5鄡x俓n偽Y瑼1?v喞驃_ 唞uPI邫w茷岺k|啌M耯歼X屿i游?湔??,浠鮐毊cY60??i软A埱\"k栍嫌(Z'F橤ⅣU?誎	嘑3?V晝}轖?Giv嬖E跃s[粬謟荶糪rあ屭M#=zT(*}I客6隌1}圫#]z	鐈狪\$濥nMcl勨kV蹮H(3<抶溾搵r浧1JxL岪Ry0nM?虬`揺8⑶吩苈鼌裎朥?/?F芍`(2娮Ю坿C俶!?9抃n閧抯H?a ~*E€2?`虢榎n鹲\\哟x媊P\nR?釕芴l牻g揀剉鎌:趮搊N萶阨(\"0d-溝瞀b堛\$蜾\"zC匋LB#D碑j貴`v怇`赅i犫n螽-pF.y蠵喈(扌X堈T骑c?Pz'p\n~09峖C/m\0飏妬H早??\n張>n< %槸\":擝t鏽G徫?畞镌4\rhC\"掳3->鼝癇艩??(r[正F(俓"袊?~跆朿-l:徳b?咜Os1&5响鮬\r\"逍靨o\"谫犅兮锺	QQP箯c蟌偃慍	M:%1lx鉥龄鰌?	幉j?&玛呷e%P^蜚6T??qq		QpQdj\0=坡u?Z寣\"鈖K虃綻戞30愧LU?哱ng\0%儡Y俶 d鋏1	R\rr4冃掲-::?!`?褋#\"Db) A/,D.w\$R8vp蘦mdI厜 锩&-h~qe\"?\r-u	裺\"荺\\$璼&P鏵&y(傪\$?憚<dnQ\$忷F蔱*MorJ阢\\鲳`&h懎E 	胿遚蔦rgQ鹑鍾Ob嶑羊K1hB\$?蕈贔C?2?q苩悄痫i8'釰A垼獡妏K犡cn\\#k╳L庢.|(鋠F鈂n垬	毢雤6pV4牲B?/-?B?O@跆X旴 蘷償&迥垽?c0r?訙8C倂FSどDD/cX5覨N悯(L*?笃1\"O<b?苙N.&F溝'貜t間?嚠吧??维鱃?凢膕.渂G鰝??\\踉)`?咜pZC}剥饊耏婸d傸葽歕r飤沩?G&黬SEg\nk 缕T\$熏螅腒`jT*&\"D零n呃鏕鉹L郤c??糙-珼脙\\#i靯e(肔F遪瞞/?R\n籰I TR-X錃R〓";break;case"fr":$f="肊?i剞u9fS懶耰7\n\0%搪?抦8蝕3I堌e鏅IcI屝i丏i6L崷陌?2@鎠Y?:JeS橽ntL擬&觾悅 Ps眴LeC埲f4崋銇?靑テ掽B嶾n 滾gStgM鍯L7豭摉??Y3櫾:N娦xI窷a;OB亞'剻,f摛&Bu疀L狌豝骪rf撐垿飙翮?筭!uz7泿'岉鰖\\萎盍懮錵n耋M<氲??緦疖3粻P崗*嵜X?庫焙€P?绊rP2\r闠ǔB喌峱妍ッ#D2帾N諑癨$畭?	〤(饋2#K矂獖翰?婒婄璡0P?&\\拢?)Qj€慍?\r鉮氖0D?丅?藔Pの鞙采琁?*,%署茕*hL?蒲翴帄c藶a昞r)KqE脺獽盝姄 *IK?2h蘊毬懹嗬帟k董V.薠?l+?# 趫&?7脙??/憿8@瀸悽蚏頎袃俚G厑\0x瀺ㄌ凜Cx8a衈庽圽\0豓#醲?韏GC ^*侌跅%€虠(o|/蕵?0軹5V*璍Q倆?C21Lca\0韁0?~0灠?,璈2cc&€P?嶤u劊\$?燙らzj:!嶃eO2I覄?{*l賁燴ql砐?恃\n?2o訹I纾.橸0畧岇铖踈0003霤=r鳿n[禕??Y算y哱\丅犱[丼皪餄4麎塩i2	幪秾儶}B豚)宑3O帠釶6f??U/奲垬絞<洠}綩樺i妟1T旤1嵳(飸 歮煂26臉0堢?`鸯T綘Aq?嶶B?荤臔蟄#點\"尝!鹹c\nO澇鑮O=?袆ま鵆O蠢g螇?褫敟峺|0よ\"3捌巡瞨%?*X>aJ*;g嶿m嘩⒏H&蜸k=4慽h.H7耈?	*冃曗Fa櫕7鄠殧躂]r<嚽qE摖肸) 寉?)'T+\"刄\r╪ 型g汄E0&h2恉慖\$劙禭I X0鼏.>I\nI]\\i卻.偍侒蟅'龍1\"t偤F亮4*暵ィy 蠱7+U霏S姲B+M!JF膗d氬珴t诨讏w^k占傚鹁椼℅'e伆W晗?Rt<﹍跓Oa剼:鱢J#壊?褡J鬘奐4?gl郧R鷈	憢蓧i籂@禞鐫a蔆9]3g?蘥増o/l玆}?押!FTお鈳蜶7_j號莆]睏e$б)€H\nqe8洽AT\"啒瘶梨HZ1坘p伝葪bky@?|猗萙eTLr甒:揵猠KFV[BXCl&I€騌d逖搷懞x毚0G狶4层I\r9?k?G3&B嵹_2\n 鄪HL媈藙閈n?∨K娴臤M聙O\naP烞@@u,:┈T篢j???H刭斛牆5w?罏茥H燽命|衸 \0溧?1\n娍泏SV^弍谈DR寿0w?\0)欐?(e滨A戛T琋?)毅燉 欿	n裀碶0聀 \n\"o&\\鸵隋'獴!Z]+n!礖襳鑾陾	崃袀pu槛%\\↑e?槖剱茑瑭臉OS^JA?G?荚/m奞?醆"晜\0崕Gz荥╒,:=劚枭鲫隂剔€J=椽_鯜认?9詨m1]\r!\0)倒5\0rs嵃aY*T撗	.漉?H.V伀\n賅豿腃渤i%\0?┥q襋[:!%_?鰣?n欇葠憡9僜r嵭T乐@s*N毠3tt_渖E&#籝r翑\r:鹕1荑€ug2\$<\0Е?Hn賷L釔磳IY断:8澷f62锦鬏2c涼拒A改丌勢_?n?魷敔曥?;7金R躕則a垚欷+@K?┛葺t蕸踑P*抮e)?MY/9SqpMy=眕篭n憊.&0h2傣攣C:Lv?/<婾J?!帤P P齼矤覺\0K呯劊?~€莦v琛彛魹oOM讯輮&Zvj絊馩獦:N殗+w\\簏s齻J\rGZpTRm:?钤呒鬘餮v1顄a钪3疫?%嵇愈J鼞犗獇怽$zg'榠囔v^?岺孱R W闊HrR舤+哖膖化V袢砭K苌刡uδ狋幧絮&{P庶jS?V#?E?悘購嬭禰秂遒?酊e漦IW唋錹?v蓍杖濥絒鴰糟述坙Y~'gjO/撖)喨j羂0\0O/潇l沑0\"e\0kl#'\0浒g葨飵mbN軰簉其h 埓篓\"罓h兌这`5#-?翭hE悉賒m3埣I?%m贫搂*tcp謕/苰棌尨中'囄蚻适?堚k惍yp礬n0海p*魫l︺師\r皗瞧|藽鞋齖"v%b丷棒\$<?甌郍赅孰蝔鏫"Q0迗P挨惴p ?B*?鑥推\n凃?p论腠N馶r?膑/嘬M&lP?L(j膦#崻陦p稇B0鬙滎j让,8J4悁\\\"€T胔\0蜩G2騻 賷h灺j睒虃?矢<?b攍@她-笑癃5,瑒\$圔+B\r仍を.韸eRr嵏??柭邪e駕\np?\0眒z尊P屟\"&\\@ 橚黳踈n鼵'%瞊}!	%q#IM瘁騥'\$批驋?襺嚢?n厁^膶I甹僜"铰簃+S沑r@X?睹扏3Q%\"痦-2R?g蘟m鋋蠍槠f?綿煜)2Q/U0+#?婢k'?R鸢丨\$轗佝2e-#?2b,矁33\$;?,厕H察ds74M?3AS3嘆0衼,?揹J=.!瓲'衼0?频',茼銵NO砶S堔\r?u9?9訋m睪7R鳆8辌\0輯ō?;鬆r-B]€嗖m)JD\nSB91G9刣?纡2r瘙?ss鈚	nJC\nN阧'\n 嚷鍯嘏坆晲趆?wj滹?蜤室1C膶拢j畍\"誤傳?:&狚喩:S?FI_C猓#蓼?@k鯸r-\$5c:鬯|溷ndP?0鰫痁詖wj容3匋繞繸嚯?,!疇镹朗磜-⒗??耑Z騍韸掌?!帨u掺pQ8@?唫d@U@D5儑I盶"QI2I\0鋨c謀r?\n謏u(~k'鎟h祪:3?O枚馼昈4u\r⒛;'r鞌&2?趓蘷#馱V礭MP冫	IM鞚V聲W1#语W祴W鮬M隲r▕;e?t|?2<?#nq\r<d.P寊E慀鏐?霣m鈺聋\\饡]BcM獈?螥\r?n牢寴快Hs蟗0r1喱=/綧J嚆并,`茔L^荓x+瑌%	Z瑦炇Hb5v葐〝\nsRT	\\?`嫒=圏>`A`?;break;case"gl":$f="E9j淌g:湇沭P擻\33AAD銀窣肨髾つl2圽r&刭辱a9\r1てh2歛B郠<A'6榅kYx懯虙l綾\nNF覫幸d暺1\0旀B歁ǔ	敩h,蠤\nFC1犜l7AF#偤\n7湇4u?e7B\r苾b7榝凷%6P\n\$洜祝?胅E嶧S櫾?∕\"慶5z;d鋔Q?樜嘯─?袄p? 耚n#橚	藝)傾`鏨晣'7T8N6釨i蒖拱hGcK泪z&餛\n騬菗;嶚T鐝*泹u蠹Z昞n9M=訏?束鑲帲侹?庪热歕n蔢0幮愱鋷\n釒k鹨睠I哬睯ㄦ塺袱*?瑝爢0╩4陠枍蕒Z崓塡\.闬r/ 溙\r猂8?i:\r藒!;	D\nC*(運$巸憜V封\$`0i\n瑫%,袗D觗獗D?丱St9丅渀咬3陻元\"<+0罵ㄘ蛄I\nㄡ帓]7瓝()I?1〢\0茒? 寠e0斃@颂卦[Co溲H簺(幍沒廉0X?型屃鐳4儬?嘇x^;tiU)Ar?呾\0_貝p^*琉诩恒p碳?r*|歕nc*@1宺*鸙?扻僽襟j9瓛邏⒎\rKta竮\\?嶒&7芦\nA\$嵲+> @1-(斿yk8QC`?癄Tn嶆掻\0摨O#\"1硑+\\X2`P翴*?屨+蓔遷?菆型睝P?砪<i%圥钙洽\rΞ4苁╟滰桤??鴺姩\r濼?螗O~DQ €mt耊Q庒巴炗 ?墍T惺[3猓N 攬U?€蠞/N軒#ㄋ@坙郜9觚泘€w)围曱T梄\n\rCU蒪JIY1?饼ㄋ?齀xT\"\\_q貾(67禧*佯绊GL(塋皫C9膷襣t庫痣綗氮е嬠l?擻"BW亻€*U4竔\$墣磕tH_D怽n\n繦 A+丩溅t肻\\naL)h(lG栏Pk貏p暱譞T蒢?fy+ z\$&掷▼p1C鋰b B贻T-冷边Y(d槼姲\"臔緮?F?\$珒犢BA橽n!%h枑噲□:_Ca?葨#爑啈昬礒湸捲Z薫;Rv赀\\!筽◇\0潵\"`>厦p抹酭\\"kA'	俁JY鈕\$ ∝汖 竍丗q?衘宺&丳?僤繒楠?*`D\$捠f4?劔P岎 H!滌M愯	颊=?Q矄萡恖O!潢欕C&)鍬 \n (P摁 X洆xT褋'dx?\"*сpg&洮8<b@以z\$祥W鮢wKH蕒QHq皞!OD?碩霤C妭xy蕗乒B紥T?叨窎嘋倽)楔IHaf礤/}〖(葀fZ灿o?谌b}Y%韪蜶i璡n<)匜_脛l噳好D砛$\r?GP??枇洑嶷@HA鑛钂布Fi岃b9╡攂豅w?rN蒤\80*P赢蛏3P瓻P暀5^Y茩:Ⅹ纎饈第)苅丅&柲MC\n乀 劺R<'\0 A\nl倄R\nW︴扌B`E緒x奜G)v櫥9腊?Ryp4:グ-a喭樒?XT\$牻LCr	t/g怽"?Tc軮{&禘瀠Jb淾.;昿嘵牤j猖6蛾CR污\$c,敓襈*敂7玊栍艘ofdS4鈺盫I妮瀳`*lD1<狿U欗 l馎u妩鄸C1沶劈,]+╧蛻Jh6]?w偅誂L贳╟垎U??嶪U2Za汵Ox潱jmz%駟#N?fn箣挃乾U玵/m皔5フqf邝r?rd专\\繁0r沓橲再冋yS3k狟2餪)a`n[!Iv>=#p♀+b\n丷饎€@頚薛%	櫿bIE 举恸g望0鄟棽CYQ-屑5鑍跐舔N,Je`卤賴6\rUM0\\T鉇銕??辤1?aNt眻☆ZJ	?孅er?刷砌_擊.1?gF愦EQ籁5_Rh	鏛剔D?k?%l4+€I鹚快卾?G鎳.?Fr犲q台FE]曔躣|Ji恇D輌燊>鯹餴璁陦A箢┴!h尠??/M5詶o馕{a爻鴷-映動`膿?咲搔?O臊V??寅?芁O琣螛梴桧?靡顴&}A\\]jT蚀魞瀺:Z硰詳楤儌&!?竏zT	Epl	菿謁夝 欜晱?5很偏Y>峝gg\n俓r聽世唡T鵪€膳(#俬K\"綢0\$zゐ鵒N0?ul埬&,TpChu蟲?L蹒`营hK蟧't鳳ND{餹?2爢0呏翕嵨^?T鋘h1NQO皫J瓳?朇甪浃?-嶾$+氋Lp醢脊P罃信p%頀/﹫}@運0珵w怛譫瀗ㄜ€蓴\"?	j3呏&餦0X鈫泟^茁R祼T@犔\0虆\r~I鑭{P宩\r蕁?d<O鈊FP蚛r:檷~襖0诘G氌\r,a弳(癨$bBO1l?7璆f\"詐!0`R皃鴲Q睅姁A廤褦7\r唄蓤k GΥN魚 俼渚曄?<渜雉4飒鸉寠応減u蕵?餴胥'^k?燶r?纹k!Q?\r詆P\0w??魫]B襃l侾2:vRqfb?銙?\$蠳騌U\$滨%妖\$靼j)?\$0a' '抍'q?佗 矊趨'Q?矏?1渫(阈P矀?藧\n噁g懌\",[#pj?Q残H矤枓趭€怉B`嵣	?K\$*谾a 噫 掮\"?肂鈸\0005▌,\n珓e#fRQ?S\$?%L棣T?HT晓L `茊@啤滥3ii\"Β绀?膫E?	鷚*,7G%}k躙n€爌b\$N毋尹??.j\"?#\$rB|M,|娐?/'陌_Cb;?n谍?哅巴惱趬k\$氇⒙C6‵`鋞J*s?>畍x婠樟t3鈨;甌蝕!艱螈?|犗怬天z94裀>′D4&塪;A駊\rB擕B虏?嵆CO蚯蟠裻I駐O喴蟜?B藼鷮%L(Rlf&pHuf B劊 蓿d挟R<1?D鉲1鄠?B?`授?ABd1鬨"腷TX)yt~拟攇犩侻)%阯X:#:\0#h(ξB綷r?;break;case"he":$f="譐5襖rt鑲譛@ 篴畷kデ唷(竑f罰簤疁儶犘<=R翑\rt踋S€F襌d渵瀔蒚-t薧q 仸`z乗0?nI&擜?yZV\r%炏S牎`(`1苾Q败p9崻'摌茆K?cu4DQ铬 毀K*島\r巫u桰? MH銝﹟鯍淏js尲笼5栤.-嵥髰uF妰D 3墌G=瑩`1:礔?磌悫?\\増N5呼匠?饾?猲5泹鐂p€蕆9蜝郠聇0槍'3(€萶2溎¥d阷8x晶Y填廫"Oぉ{J?\ryR厾頸&洠圝 澓\n覕?*伄斆*盯- 盈H趘?j竆n訟\n7t伄.|棧蘑6?‐\h?,J鰇?;拞?垐4巓H伥゛娘\r襱狔Jr埵<???|2媅W!!ルT貍B-i趒5檐谅Ld€?j湃tCA╢筁拽酬 寖h?;飐帙>彸瘕??\0?盈s昔給h?巸@蔸荆@o鬨0錮4C(凜@琥榯呫綌4?飬肆}i[C ^)a疒瘕礃恬\r??亁@Hc氜蠅3瞙<?塡\饤逪2E嶘匢芒鐵ぢ\r%繮?嶤u&3(!1扅咋衬O\"03T饊獔‐$萾巼Qp跴k\\a勪w筺 暏碯{裀z礝k燭骈i9-鳍q螈kx 9觽捆k窮肉?ㄛ爮\"	€澠?唁韟弣犻闌劋B槩&lPI.?島?汅赪>辥咖il顛郳rb\r牡搪襏鏺_\r?h?笻滊怠剛6炑}6偢.稂	厅猭	珊7sXC犡狼宏仸\$葐??N?7啛困満w煱l闧y:V枼?p兦迻	瞯8氶笡@h?闾玘簣酲儬P犐z \$L\n哖H垊%H	橥O	鯉吭u	q?I)@涫	塱?]x瘱K@鴺<襆'WJ隌D\$倣sNNAj妖`^鴵宬邞 潇?燣?冴齚?姳諮藗婞癍%枹\\K蓙1-岛	)圤れQ聬|A?pj&楒P鼚:nj1\$B?胠e⒙諯P9'd建匑衶T餿\\鄟U喞}q X竌蓈?戋f秉6鹞やb琝r\0乂炘?羂0cW/H犅.孁揊C\\D!lc鈱\0\0()`びGFr)Q世蕃脨i隶'唝0羊I囂7v渎s尠?t q3s钚2<鼔8F\rP膿S;婻<? V剗 d垾榟Z鹕~锱PhTR鄾bzK[*?s汕\"?藾qD魵奬"蒊4}y湔?個O\naR亼翵C孍嶆`狄覾$D亽r巍蟇牎	-々橒iI邞%!岡8pZ偆萛$K(搧?	叐苣︿@t'q?枵肁?W烋ⅱ?屚胭?mㄗB?M]唀DV端?G€廞B速哾??鯏?揑ffI嵺湽綮_漈叅緬GkN炄僞Nj 妥{暤生/G鬂粋s 掤zI	酳eF'BZ炆IJ5=)?S'6</7v惲j#沫阕fzZ用l??b6sI朦€\r軼C訍N竽贻騳姝\$堓騉L暰噉寴聫A癨\?\\Y無荄€狖.k雰鴧物CG@熿茨I詸湶皉)+B	嗱?jA\"标?闰2窏\\鋟LIS巇 匑BHe鞧鈀浺)?F>\\?帕x 甜9?es)	蘢AE\r 	剙WU8D	|{瞤闔y:\r6@SHnZ:蠙列(?@dHZ?Xu俨YR屃i(d\$隆!毞m\ry萷&譍狿賿衷1@U兄桚XXZ?Y?1o圯4j嵫MU爛矗	隲n0w岀X沧笩!牓}\$矮穳qY?歱楡劖葑Q+g湻撕aS%剳U#訲蘘庈椮\"鄥葷倁缼俓$伷癇o環噸彰棥脁Y檎豿US?薴??B丒i-Bh豔al-K呥\$垒﨔鍒鍷鑈醹s?业嘰nQv氞酐囈鶁\$v?儝m踔闒庖v謝賩)敄?秜Y\0蟣_>裢釥t蓙'?缧砉縍^砳;踷皤帽湼覾r9?5?x\"謌鉩⒘W螪z諢鏏sO~騣伅?篓g凶D	珹蝣x*XGj!氈l<峒J仚??\"{垳?Z呢拭纯?H詵室}侞緔#閐^v\"	q 冷rMK除秊鋝厌+2_俠<5s?\r\n#澢^妈N#m粿k濠€伷鷁璮藦\0000M>戆閷廃0nh.\n鵟$j筒煅HQmo暑魎g爇嘰$鍴h鏳 \"毊cON眦#恡h忛N阑幬唠qls	0|?7Bc?.'nE擽み宧く拆\"垻制隤?叭X?[?魏?呿?寪顳凙P瀭0(?惃艒琥殌寜鈯0g旪F释k?\n>J'f?耑:l蠅k#腩v?顛鑊?袆B%)Ie倊B<%66脑6蔜\$88k(ⅹ\0@V\0爍x锨╰@qdff歼}p踥?韑cH	\n蔦n-q?Dl?鋢}侤`c:毡鏻\"唭,趣`FK?菐0呸\$菐iI赲$推\n4崁鄲薺#芺磵瘕)頒2%!弦腧.`蜔夀覯濟坹鉕/-/O竬態h 鲲衹睇#廌FM?V鮽7屎pI'\r瞂xi@^&鯜m孿"6姐qn??* e拚e誶MJ#b噹\$*櫒`vRA ";break;case"hu":$f="B4瀻嗴榾膃7專餚擻\33\r?	剔d8NF0Q8蕀|€蘣6kiL  0袰T\\n 膶'僉MBl4羏j琈Rr2X)\no9⊥D眴?OF揬\蹳\nFC1犜l7AL5 鎈nL敁Lt襫1羍J懊7)灒F?\n!aOL5咽韝倹LT肰漒r?DAq2Q嵡櫣d辵'c-L 8?cI?厫胛!喅!4Pd&闁nM凧?嗀粫p?W>do6N涜√耚n骢篭"a珆與1凝]芪\n*J蜺n\\t?;1?6Bㄜ5嵜x?3銗?嶪笀?忋Z?*?穋噫;羶\"n虡蠷椰嶭鐜妟d歕r璎玧昆mc?%\rTJ煒e歗攴垻D忺cH任??釩\$廙#尒*捹;鈂"傗6裛A3鉻嘀樺9B?cH這&鈈傢r梃1\"娷犃Mc\"\r??I%%4揇吩aCG1	B?: P?緦 簖?)?\n顛泪\rJP?宭-7閰sP怈;陪COa6鬇9乣@&#B?销儉醲飖吤\rl匒癭|:9民^)侌5\r7亁&鉅胉?bK巸愱5k?*攭杋 嫣/n筻?A慸庪綼揅RB0\0瘒嵪r寛2h:9鎩D5€P灻bC哋&娠&蕦闼鷪#値婁灘?3闬"?龙?\0韴帲(%秓?燩孃纁覾$峣牢3<茒黼嶧C暐\0\npe沊灝矾)X致\r亦* R?奨祶稉粛懰垛祝?G鈭檍嶿汄2C;G鲙MAE旬V俥ǐ?*%\$鍖蝅寁L_曖訲u{陙B僤冼?漾啕钂6搡穲G蹞瘚魎歿祿]奫 Bz偉個\洅3nいcP猛ho翗ⅷ>7汌\nhxCcf袔儃鍼i妵抈	w伞翌謨((`?梗f 0?0J\r泯!f乗0K-伆23邮頱P t缣0·j徥銌jBN堻k\r梻j\r@?龇\rJ運\%0釮潥耆a,,惴€L慭n)F?%痂秾┒9使Xs?僑?珩-U鸬訇}い\"%斗c意\\嫏t.ヘ唬松z彖焾B丳k韣景鄊t恅?#4E蜕:0愅?rQ癿愐 愂? 嘖儮藨W;%h諪2P巇?8抢蛽\0谱T?ㄦK愪烂憭g3I谾盬?-4p\ri?@€1蔛X坰&?粭樒嬋?n囍>誏qFp?@\$\n.?阎1?>M?S??`┓g倻%x腦恮.P纴S尣r朶nO	馌2%h惟浃蔛bX5,1荁J虢3@t	窱\"!溆珨磌惢?蔖fAd?玹鰂 cbT诮怲;8i孏\$X5瑺聵T&\n(腣F-湽s鞽U7濹蔏4[M異晗Ry 琰?\"+鄒vp哶嗸懿iY!M*傏█ 罵桘6zO_l?V\r^懃%\\K溹A;?H9??F魩[?抹[3歋L\r崂﹩SX鳻|坒娻卂p愰覬\r榫6雎q漷j紛.绂	9A1捕%TJH爒;\$访鑱S握Q硂鵔灑為颅?6糘?秧玕\`p灨e{8<o儃}\n屈仒眆逨乽眝襖n贗1mR馈斔y墐&?7d羪Ej穯粤禤鏪鑃 -簻救p徧达.X\\\"譙b!扥~罄o堈(	灈@入)/褦€爳嫎x汑;H'诪萣k%;+'鄗e簞洺.鄉⑾e2咷\r#G肵鳙0n畕a 贈?y=毊瓊%g倱Z.UScD^vHLag傓啤P*~?W厇哖軰?Aデ絠甎至Z:\$? ^WM烇疨f蒎5atD┪愙种鵑浝粫暼€N\r{脗湹{xJ醥cN R黠(黅ぃ^3厉嫇泓 吗肻rW<G敡?s筸⒐?涷F恓塚證}笕\r炼銃y瞣惻O8涓L灑鮞亱xFG葦^?r踧P靫Gd廒蠧]%8\$岆6椹pTQ蒐n莪?很59H!捋@熙昜话奩Yメ祔蝰z,娱嘍缠0GIHH	?+抟V\rb69L珠辠I靣wO掼NK??走?晔&蕨嗫ls#E褟?\n擈咳%鶿rV0豥橊J(?袌傦!丄嚨拄犥+F	\0~艂p&G唿遊蠲先襚俈钜)瞱'鞀;d|秧\"ff燿茤塳?\0-p船P飭艔跑x孞:<咯葷p膒L{蠟%o?\"?袐鐦习B努g/G鍱#?`?蛸)\"P	嶯釴|錸€忄	萪w皷犿\nnz<惉馕]O\n0\n\n杈悦n籯湖HL磳p		\r责湔BPf:;澳 犉淒婢D4@€买H朄Ⅳ3渄au\$t婚猏re?1\$r €鬷瑐唌*褺Z玻lj苞[C乞f至衄凲D嬾R嘁5u0O彋;靽G麴算踈rrzbr=彅嬹ρJ皘F穴)'?慂丼瑀莑jVj兖{c>偬旋臂q嬥LA?;聆#耩tG	b€	奎\n!J\$?rk誠n\0?犱+oRb袨舚?m旕恜鵥s#坋\"nn骝om畑炖z`奬r-=?%绶%@?庇 欠&2g&甭b瞈nq惣氖9Ed9b^黚\$C?舞q)2peR?]噎*F>?礼蚝<騵(茻褶厦2?-蛸%宜.喛-1$-jWㄏ蟻/+騃/媱忠埦W於芃1峝Or魗mLK亠R?,冥?3崹Lr[\$q办?4e312禗c?r臫Y	C顁r)VhF;,~慲识弉/?7靯k?8?庞幥硟9b~懂L侠栚腬n繺"V鬘jAx郤榠&匂oX琊茹瓶ds<蝹唧三p畦/b犡k*瀄"bm`豰_嗳\r 虆腳%+帤K\0=P\0猏n€爌Nㄧ@%愰新6?鬂\n坒}?'?B簏X44下<\$D\$侤艬~nc秅%旟が</@M燶nEL/ND??轹W疛:F81f足含#A/-, \"嚥P珅?\0Ye	敭=;z@雏FSA嗶#IJ冁>kC钙瘜鳯\"0腬"沼?涛颍萻?渀赭鈤呆J聕\"蟖O++/N鈂n5I 鑸緁簡?玻獠o-裞N,衁	 氜\r?ZODxt塏睔iX`曦酁*b\"??#髊&)%#p	CVd崵\r旇Y挫i,挶?u\n+怾艢-aZn訠*胓	,2捹亞偛\r硃9`\$奣KC:迋l鄑\r犣";break;case"id":$f="A7\"蓜謎7罛Qp烫 9倞啒珹8Ni斳g:翘@€膃9?1p(別9楴RiDㄧ0氢鎿I*70#d怈%9惀铲L珸t夾≒)l碻1苾Q败p9顽3||+6bUt0赏捯渾)歂f搮├蘏+源瞣:圽r睌@n7#I匾l2欐鼔葬:c巻嬚>銟M睋p*螳溑?Sq帥?hA焆l?惠鱟'鳆'珼匼$曮H4U7z犱o9KH懌尟d7骝碁x徼嵠Ng3繝葨篊摝\$s横?*J槑孒?巑芙ㄩb\\毄溪挱藸枋,翿<規鹣龚\0螘\"I蘋窤\0顑A﹔BS徎??0\"/M;@@廐鞋挋(	/k,,鯇藔溥?(谧%l?D袰渶璑粓?\0P殨帲\\?\"??? 寖j擻"飱n仇c`涧H@鰩lp?磍B6伩O泓4C(凜@琥榯呫絓\(s疖螥A}2C ^)疒?菮挑O\n偸|枈敢捬郟檌?8敛鬲沥珒V嘶助尭.@P?HI2d:丅篸77▓J2\$裕?嶃d膆嶘芩@P掟?\"V4x #K\"TC?#c:尃U⒋峔0P寪岆荟3?L!&<@虙B飵M狐軒公Z氘垹湇Qr?闳B哴(3鶷8c葿竆$?C怄痬僛s\$譲靾€?9雔巤\\鹱nL涄(?战T {u肠崥铒69 吅m€P醝d8亩帽)7屆2覻ア^澐薭犧孺菮惥碝3b鷢??魿\nF孱?\r甘aJ[觤j?夿2灦\"	 \\	cK(6鮩犖X缶/?iC介鸛僖x靃聸]硐晵QNr?@S蘒CQ楧弬.釢f,忤LaE镹>DGwA︳篖召蘒a嵘TT姍T*珒喊O臬ep暵S#蒝?衸MY榒\$鋫z鴄餉祷域J嚛8睠bfぽ愄鶯pak(牘0赜??t幆€聳T璔G碡4觞韁"陻\\!犌:堿妱z沽%?€H\n酀2嗌I?)\0ョ:eVql迿肻$尢箼BniT\"	_赁Q捫倓貾0?@陠趢e乲P:喸㎞O@誎鲑q='溴闋亙Hk(T杽LA;_\nH瀒	骸,q矫析?涗z</?7?Ж\0聵Tha娶緍hLOK詆(箚(騽\\Jv\$鬨0潽諸yb\r翗4匼nA啗!屫欏黀鵾mh&=葿罵E摃餻:敎蒤0?h俌!l1厲b腝Y0O	纮*匼0B燛U@-IA80AOTe\$P菤.﹋さJ)AG2﹩櫵3:GP?篭r,姅?u趜渿芿少嫯婣?嫖{	so#m樢璗皷c&\0(+B庥峲pA+?獟pdD婆韁"惇s>H?v璈S3\$瓤/蕘Yl粔/!閹蓳V饟構r岃?*祒祻I9(侷欤?噒Z竿?],?縕SD5音闬0筗篆(7S矂獈k鲁谛塷掟oD﹫悶Mi襹寜d嵐]F4譃蹿幄9\";夓*@翤 渕X凸息F?€爮H貲]Bx 烹甘0,Z?\r妐邩<k>?<f苍繒\"Xuk?摱俶\n-w?@錩趝.射?鷛N蜃O膌髧r\"x{eC2BF?'k&h唐&a)╮LH\\u#灁Ve彋螌{歛?燣QqNaL憯P閬肑3 篭\靶_嫪鞊狣6鄂曰鉍鞶:'t)w罬N悞F9|勳袒Y嫋L毫W弉v籩琳pl}儺.k膆栒⑦n@QQ昅rc€聦勿D<崃\n惁埶?#涨K顁犐侗?[嫉砗翀D佧D4焖槇棥7粭娵S@Pk	5倒Λ_u幨[梂箩掘'%@钦RrAk輫恹C岉8椗y傗;d@x片鉁蕉s嫥0鋭飽\\?._层X壧近_莒侶¨T聍髇'暴荢津w濎經謔oT霚瘨髪p縤□臼\0 嬑Pb懻#墆ip@寴顴<=>\n	弌1K紱懺黌{滇B苾3Sm4麑T*潅鱏觹s秧鱸抆Vrf荧s郫梏>W貆]z%萈z鑙渑.舏/PkB.贳?{痗榻天觜衔P藘,J嬴殍&眤輕I囅禘@榈\\Fv3n\r;钖畡铨徏%豽Ny?'V鴯ヘ鯨贚潚戭邺諮殅R?蛝p?浼0b臆\"P堈U\0鮊\$鴨(T0課脊喴碢\$?S忷4P:&飭炱绎N頯+鈂r+骥p@L嬺舢X10F趶妼KモF呧?ZL孿$f0>鈵圖愎K	\$P齆汤H€T漓gf珽苚?o卵L炷鎺/莮a忄q Zw钄?湸n>\r€Vbb,,狟cG?GP?瑄E(%爩ろJ湪聎€猏n€爌Ik>蔔?怑xp夷莟F哀M裓0莉梨渁`>璂,枚@搔2k?bF(\"焐\$\n衈倞a掷榎r闌XeBq叚F\\,盲(K 肏Kkd|靻餷?啢窝瓣?h?蛺鯸"bs頊?庪决 燨\0刈韾懑l蹰0蟎n臛 殎啲\"t撩歡鉰hN灰^l?偏(婡陾\$/耚0堹散&/?i?E刅;牛Io	皢iBH犃?G@菷ggFP€焏\$F ";break;case"it":$f="S4樜?x%搪?哸9@L&?歌oα樢l2圽r企p俓"u9樛1qp(榓寶b嗐櫐I!6楴sY蘤7徣Xj乗0旀B枓c戦奌 2蚇gC,禯0寙cAㄘn8値荢|\\o垯?€N&(軅ZM7橽r1Ib2揗劲s:踈$茡9哯Y7滵	贑#\"'j	灑 媹!啯?Nz澵S稘f薁 1柍c0愙蝬-T獷%稘 汓蝄n\"?V获3澖Nw猢缸#;蓀PC敶墻刮?C~~Ft唄弫聇s;掁悦?Cb毃獕7\r*(妞﹋\n牘4隥哖%旂\r(*\r#?蠧v尛N:廓⑥:螽M盒N\)盤?嶈?峉Z惃楔-沑"闰(牲@┆IネTT€*c*r装L颁炫0袪#惿1B*莜T\r	儂話r7M鹦?\r玔尳璠搌樹#泼沽4紸\0顣烫徯X墍??z\r犺8a衈庻圽\0蚀醶*旧苁2\r獵?薆r荬佮^0嚿h7異簖Rmih觡n樺/K鈆?w:蚪b/聄躯#艿7嵿P畧Ap螁劊 @1*傕鳭\r鉨H禖p睑!签毻6?X荝cW鑹R?ㄘ?C`隲r\nw凿??椓`?詫ni\rl琧p銜丅|剃K襌姡H磋榕Bc3?A_vfP洇?輬Oo`@)奬"`0矻+囤葑M庖甋S]傶p潭!詶?6|{过;笭统??袺摖9?鱘0002縬?\"M?ih縟螓 蒤"	?螖鴸埇\$67仳惚s3d%;巘麜輰,jyxe7M罖ア犧5ⅰ\0?夿2湌?K轮?b`堬汽,\$cR屟褪?\n{G猠瘾Y!妊V0J|軤b5	揟姍a0D廰l7l	g-*	粅V垹0J奌恟&つ?w	裈€婔颏?j丵A5N猆Z璘昴;?j竢W*?癡亶A衸倎>S,袚棸獄lI紪劼Bp哨C釙|`	s#洮T6員恈Y剷K碘鑖L\"0唄d|]瘥xq峒?A▽銵惐鹗覯賛J幹'DH勇?dX聞沈\$(姤\$€H\n\n!蕷pPQ両1r抶1Zr|廕D卸?Hr&€儀w掤T浞烒 |\$i陳E侹霅\r/?(0蘣V2扙壗譅B蒙?,C?竕MZh帎@\":儝d1?唈&i?觮7汪H堖D	酟*>@擙憜J僻k?*慤搇^熓?嫏澪晖胋4QL7獷\$撂cgm%\0ρ%沚`纳绕	鷱Hb]0R溤撪\n7+循勷≒*V婾 E	畺魗%X^禎N)(r楇R`MUl4P嗤(Af幞搾r聶骫棕\$bZ儴\n⑨祘楾`釲筄沺厩光爐瀥iq u砫s仭鰛钁SrfH#?玪樹t峺r,罼罦鋱玝晥fQ揵n攨粜洅(怱6-E1姩溞賡.o衬zu标K0洠?L磺R\"穬詶汷符.aBヒ^咟7z陏椩€楶Ξ隕棷趽/烛寒U|`H&哠I^纘Ceは%b0Y犅	*濋\0撧㈡!摎e朧&盝iA-)B趓琦0C	\0倉?;g>揕#萫苻<ea	0繼;-!厖?哱\澺吹\0?z盥xKS?)吒da螥..?e虛椓a蘺Y?|蜰悌-斈炷繍谫H隶A釘3嘝药	kGBhdcdE賅%'w?)+朂榵_?蔝P'纻rC遜擻"腵?薣8W潼=i\n^?eemIIyP膒踯鍭Phmelhi?c_吥竗H 鏚e濳麰遙齖n樷榎\糤*猒稌愘s袋T?&鍑-许7V獺刷奸荠鋾娷?鹁;鄻Im鳿\Ⅱs`)b韯4媔hA&jK猂諮靦轆D1ǖ縢傍\n悝罴Vn}阁[I靷w鹺砄U媉豁u様?\0W0矢O&s闞冿?浆獣\"\$彛雴辚x7H鑴恻?韝[窭畸窖u損鄗解?珄:殩聳,O嗐碁屾b蘮f喙fl邓.擻\^w;eP栤匢兞茌鴛l饊ew}彨x諐狳WQ~欬鬄N6鋒LW塞篓M5挶 齹Hs閗骁舲y谡=\$4?靎鑲`減\r覾\蔌_/泓O掃爵7啁Jq棩啖诊挂跩拿蕄黋灶繆六┄?Z砼谇?嬧颱笩遆^坻鰨咗?醆0MV編>撵Z	 痋"8咹礬r譯Z舗痦o陜G囝?陰\0邜8?芸>#\0&4\r呁\0俙x柡fX掟^G瘦聾\$騅夦鵱催o謊皞[緎皫鼜暨怰?p刡f'腂%mDL/译?\$@忏B4潲	,L.馂?肉腅耙窪U0鸾?\n?€?\r?1??炥休?f?h\"-?鶿n傲m愔	E	tC\$*珸缷崘X/m\$頜樮L玆Rp 奐楊s妴\$?.B?d熌</?0fL株RB庯?_mV虰?lIH嬿鹏cK6缆A ?@j\n  仲L鷈)襉(	@鋌O\nA*f牚\n€爌Ir/F??\n圑屢覀茵!!籐荀?鳗@1bP%G\$漓\$G凿盌~2憘馜民?焍?溲\\ΖX?qfV儨銰抜?BC#犇⑻髵.lH#?噫,b氏\"\\\$2拰驏跞?媆r*R惥R?毉=+挬+噎,d昻?N\$V2廽.嚥。vP+?oo鎩&鴷N昁疳耚\jj鑋*?	t .咲c?刵暑Q犼E唺げ飚爞-叕€姊頟6r爎K\ryj疄n驲﨔1,p乗n赎\n\\A&痋"0\$]璳慛	\0t	牃@n`";break;case"ja":$f="錡'輁nc梼/犐?-藜O倓⑨櫂@鏢N4U苽P窃懪\\}%QGq菳\r[^G0e<	?汩0S?€r?必鼌#A蒔KY}t 溔Q篭$倹I?塥悦?▋B0<愄h5\r怱漅9P?aKI 蠺\n\n>姕Ygn4\n攴T:Shi?zR偁xL&埍蝕`⑸缄 4N芉皋 8?cI笆g2溎My脏d0?嘋At0樁锣S憕澀?件崋瓝=斪O\嚕蹼鮂搎烌塃:S*L摇\0鑅'公整?TBㄜ5得杠?嶯`堗?嬷儃r謲銧@9访\r愭;羶#槂?4彴刏W腨Br梾┨T燚z忊Q鸿12<@悐€妾#什幜\$a蘇$	V璜膿)?C玠故D辍L繍E瞏€G9|T湦瀿聻掑)蘈比 T?VA醎4+S?A鵗嶾$4B8UN3槇?-磾A怈軳祳岪9S?疳\r脴?毡=彈(驛~?bA'9PW%魪酏3M笔H#ZQKD誽4*A\n筬灃酶s換L瑤[濧躡?綈HA\n马t5疱\r#栖障h@0摒€	5兏意4aD儛4C(凜@琥榯呫綯7濍羶8^2嵙|B9膓(^*!疔5廯\r甛r^7亁VU蛿A殚NE漒$袔h酜4J	seⅪk0*Wk膖)蜯曆|zN腁 \n?=傸寔煮薒彦?巕T@獢g9+A垬鹇:崘徐0崈ㄋ菒%撂E?GI,Q盈少豕蘎?hQ9ベvs剗賊\s銯韺て[vD\$?漒$﹐#/\$Y+箒B7067u\$61?s?増Oq墬KEt纣顠9踬^柞當汘肎z'汯鸝	'潼鞩?bz*I騨雸	宅鵣J-`AX.剌雃)BI狗X& 邅~O裐\0爤T#帟泻3翩C懁4帾\0僢鮒K磾粑銈爋57怈Uhu`L39€@xg=佂@g'FG\0爊0Rs V*S\nA[(鞘cG(唜\0@溾B柲\ng}I#\"吋G譹)Q[匔R€陀CU諅唒@迹J	c峏*嗳綐穴c瑌0D惇嶕ご碞 呝*#铧A?偕馃侷峔\圽"\ncWd悅穻C璡"R)診$p旵7g,Y€X?c,nUD3(eA輺2嘬侫s1fl誙*臷\邶	!?`谕さ蕕o#@a\rm 槞@%脊P异嶬釲O処鎂DH R,討襒?f\r廯1类俤?p!?M?8姱b,E脦!籠r?釥ノ3槍Q?F桢gd,酿(€爧陚4F揉t#\"\n&uZ\\K? 塎e?業邯眩j聎?f哩A?f咱哤績『8萢€R稗?p嶲邀)2]2梲鉓壒8馹Yjí'臷0臍?Z睽w	!??2 O樍0D A.⑴G远?\$慲 ip+閈r矹qM.x9虃胠煗素?J滲県勡罓聵T}雐(j I竵!G%薽z趜?e4A玶,(鶪d0A>@┎苴[?h?Rw竵汪Xe ?倹毬h0T\n78?黣鹤b鎳#V僈趣盲A哩\n]D(r嫥t聀 \n\"@VH\"劺嫇耸dY隓r堮k2蹚y螩啾\\w`I妪腅裵溝悿(\"[7G8闍)jmЛ垧黶沲??舔萖垘匷?覾r]\$细侳硚td~饡BZ峰世?躍\n|r纵PB豷T鎀\\OR2跗?琝$  B罢*葞扵廫\亘昁,G瑮B\n^懴恟慢I!閈r!橄坠茗S縓c迀O檜執EQ?ΑSZlT葍	≤?终 €袌夯4h%x(⑧杈\0禱">獜~J黋V鏫nV9莤魪?餁`\\}VbepE基)1l鼇珗5?肉卶?Y>+巳G楳棏{聟嬲+鬇概R?绎舊4粽ε雝庸8*覣!罚Ys鍒?>k蕸垈炻'no睞? g跾剔\rS:DhrD{蟻綝}'迄V箖恼惧望穏穃$/ |G €(&bXwIv槩晉Gk枱Z薱謀$鈵I[?癙拗9鱙&?G瑯熤P侎磄起C萙?&攐o皚0O吣?3邺Kh阎晳 [牠v焲葵/鈵Qb瀰kb仑DQb6馻?\$2嗀m凄衜衆$o\n铵m?\$mA琶雋\"@0&,3m琹彾k>pF0N岚V痧ZhDG帰勑bf凩麦'RL湄0>€圓`郔@~ZE?H\r槩畬#巀€小\nIx椥渨安h^描vN€Iю餻r\"0提f蝢歽棣瑽騔0栄g鎇邪5蟨Z\"n麌 薲箜Q卲愓0t?瑋徆0笮!N`沣韧P嶜omQ^"伿鏐?婽€螉嫦楍 断\0飍=慇t菍|M睔銏0l1ゃq瀒鐸骓僋&#?甂dm\"6S/啂Zi ?蓐?B尉鈳,pp剮3?悜60d?闉Ra	/(秊陡l.Lmm册穻]瓸m\r1I\$频\\哝赣?%&rQ?荞'e?q/O(圠|Ζ.AC(羄潦c 潦g?1xZ窕'鑷(鑡}-r?'Lu赆懏崾鏅0χB8幤?缦.?襩右魲厏謗?﹃?Q欣W醕-gc(s&#?.鍛?s)2裧54S92褹3a3皛3\n#垘W湓W?M皴?(Bsf#髃纬搒\$h?y3~M\$?spNSW7艣9ほ96%,鋘S餟3S插髵*巌<?键?;p?O=o?懠n漩GL'偖?l槌i;冮6S?採9n?-:	\$╜?r証?3a0?A鑌$醽霄禗蕦釿/MC2鋒鐔驘*\"?茬z矨 tKD鬝*O.~?^h糪r€Vh`諸a6s塦薰 虊9€屇犣搫4エ蔃嗒\n€爌TIH??憥 ь倎偳{C'2;掳~tM\"+蘧*?礴I嘤J392m?h8U2#&!o魛廾f~嚕€9 e*刅諦z'鬚1卖嗀j?pN嬋爗儏&T怤#vДU蠱NbN衤8徾<pJq3wM餯\n匟7CR5l:\r噜杄柽eU餶f??螷昆煨~謊p驷.\\忪克?B祤\n犼\r代\rN蝿認勵B?h6:f蠱\n€錟c俿淦kosM1叏t5eVb绀q5v沓Y5萙€s+h?*L牺で\0UB0@";break;case"ko":$f="霦ヾH佢昄@帴拋貖Z貉h嘡?	E?0佖碊潹腸苞紦!#蓆+瑽渦び恉獋<圠J行鴮N\$HiBvr靂2X闬\,S橽n?撋枒錦n沿濾A?zc?姙D0寙cAㄘn8取碦`霱i塍XZ:	J躁隐€衇ㄥ帽N懣牀掉,	峷%鐀UY7滵	厥 7懁靑6L鍿榾椴:鑘4颪鎮霵 +闧Gu,孑?嶊魮蔨莌A?揑R蛸(闤 E=iぼg太z	塌[*K屔XvEH*嵜[b;嵙\0?Cx錉垘#?巑x?穽€蔸泜8BQ\0c糪$22K劏?2J篴燲/?RP\n N劻Hj簣琁^\\#鸟黔lu晫?H40	绤J决:vDs!\"&灿懼B DS*M憞j渻M Tn盤P堜箥虗BPp軩店9Qc(疴嵜樢7?	諹)q;+懃偞v悜?顸u谺&斿/怯董e4靄\悋[鈛朌D衆\T?汿UHt鐴捄^u飑;dH	訸纄v呪\\欆vキd# 邴A7?D8D償@0宑yM>醆0脀B0讕鉑幵揄淨C X楕??z\r犺8a衈廀\\0軼d'	醲??臿xD胠\$拙?\$6笖剀}OT待SA[嘺BXJ鍣i煎橽0^1z帵Yj?[O?9NF&%\$n\n?>曼審9`芛s隐K?z拠YRL淮苪戜韶S瘍鋅"b?D奥6?﨎iQ犲A販/旌!帒D叔QP様?uf铨泠砵材?o	2r╖因侕767詣B1?s?墢9T枖物/:摚Y礶…j孆爒怑!諷柜 _/萧潖wz][Oか:剨賷奧F%偬1?BQ?A'\0`雋?T珽淲杸\n匶V綠铁粰s`)#NjWQ仒3咆氄,莟M?y瞘伕<俓0軎C_a櫱俓0?l<:(zC8a>纻)穃0@好pu8牋9倱瀉b@檮0?蝑@媆0\\y	\nj&&幜FJZBH竏%a?\n啽浿t鄟t艅妹淪A憊V?`!k@hG<BQ\nN_;db27瀯唝釆鏗鋮?騻P僚R尮?€ib埍?)0咆c瑌悋vF蒀r獭??覝fL衆$喰鄋Ck+拡(孤鳞壙娽?硠L冡茆敀榚渮栃?躐( `”#^|嚋-?唅t坆\n鷈銬x拑X)?吁脺Aド?\$屟?G&€?CL@PFH旭俓0PUK?舌v?菾\0J)L庀K挵CS揇1?崱??\r樯C宿痫Ub?Q?K輘綟EG鬐奌?d裛揬"oO??膧鞁斖!?	 u讚蝊U枆}剴:a@d\r-舩W:NA絙伵蕠4@悎m憮Av渧WH\":i洸xS\n嚍	婨橬摴k卪?覬dm⑹妒う旘k徐噓&帯bz媀b?2鵒?姛Q毀槂NGd孁 覾"聸毄n柯0T5竼櫦塨?X9?_娜b卅A鏫\怬	纮*匼0B燛X(@.z鋣&n,獽%b監欁€V溄	烍鈅?騖0翖鏾€K黗琿峳[U烏亩?K厪語蟶/煛@'+鼿(n\n=軙r)躙"虫Z萑%戉甀	T禭%	/VfU锒D覰摖樑臷$锠%EQ囉\nd;iE5*婮硞\0t?乲%柝鞸裃佪媀丗,鶈愻濯T迡NX)哠sSj?x姹VBg_t 陹B?躆竐?Ю?\$檒-x\$,Uk阩捔?帜|#砛0唿\nc蚺]洔?阽%捕與b)?`( \n寀?P;DZ^芒赛瑢诀aLp73@ C	\0偽 鹨嘯Q?侪O楄n/囻I?*?.砇j湆烌S熑DI&蝲%\"1+4把蛴M噂?`€.D%>J遂羴閈$憰嫆&1&种搾瞆K蓧>)GRC襪Vj灶灳諫箖h濚耚r?謨戛,N蟦闩*0w韖+擻$L掇H躒恆\"砏?簵V\$杀?\?魼庲i潵胚k^ng\"偆汅`h蝯<嫟登成貱烛CM閶?l^鹡]睨t%Y]KYW婛粯罭湬P繧A"A昊罶Jrg纥b/驍|;酤鈙繠7`-?鵖\\沕k齻oD害蘊I燫Nc鷯钍瑎熟Ovd+喪唐鈕薰彇na?钚鲳\$.Ulf戍蟷,|?F詜mR-p飠镻f}?藪贏C恴蝤皉魧\0002秧谳礅Ge庈袆*n63颭W	/n賹纻捝懑P栙新蒵O弿行冃J佀蠟0鸉阄)l\"V+历)p翹 靭ぽEbU刓0,庶颧!隈狳lH釶=l8旰?怴\ntiB?+?1'\r頉⒆0刎f疔囨\rjG_鹜奤顴\r肕K餖,an*O槀(鲪>o1悲饚J穸l閖?丏%¦蘕琝0;\"i靮#	磬+q耢?凧磔眸佽?'\n滢H儯?鎾塳!q騹%刾2'1VD0:P]b桂?R9#姓C鉢$gj韕1岄rVV扄\$扂?&i夘@氦蜯-主Q畺LtKb<舑?/AG(卼L拺'瞘)襴*21'與!OM垂顗扙%歃??%覅,步,駗砘姨)霟!捽.懃(!D鉢0艌蕲?ど虶'2?遰n@怌	扆\nG卫傿vS(-N纥鉈仆pH懊郌尀#盐荭皌S羏砛n挩nT泽[&嗨圊OY-bh歕r€Vh\\`諵_鏫$r儗嘆薏@虈( 尳犣慭$@犎ˋ牚\n€爌Q蒤"睠铛甬護P丂?1憸2F/@s4薭j>	钞\r3睵AhjafNO42?|砥O髝榎r肫f萒8cT*d嗂\$AF?懤▉\0|鏟S?;ae羏彔乨v墾~y儖.S疈\\!俀@QiFP?Tb鳲P?括Rz5僜\紶蚀噢	@]m_?\r&=鬪<瘼蕫&F羋t荘4/琋袹F羛x/?强\0d嘮銆琠\0犣/鈷:\r掐ぎ衍s奝Z鏆嗋錐r聗挨0X?泼p昌S?膡!2JUゆ%Vt#づn囔EnH`t繿B>\0";break;case"lt":$f="T4毼FH%搪?渆8N菗Y粿腤毺γ·@f\r忄Q4耴9歁a早惻寚?-	Nd)!Ba棝對S9阬t:浲F €0寙cAㄘn8偐Ui0倣?I溡n朠!藾@l2泿懗Kg\$)L=&:\nb+爑猛鼭l稦0j磹瞣:圽r#(€8Y茮仠?:E帶萏@t4M存翲I?S9?癙於沨瘠濮b&Nq术|塉槇PV鉼碘o㈥黕<k4?`\$躦,?H(?1XI?&U7蜱sp€蕆9X鋭C	覺?痥>?萩F8,c燖垘c橆睂?怔疆肔彤.X@簲0X囟#闥?歾煡闬"屷?ZH*〤鼏娒湫?R煊?嬍)峢\"及<齖r枫b	 、 ?岰+ο\n?蒆h?嶃lげ)`P垱5媱J,o残植┰羞兔(鸸嵣H搡洊艩庘?泔'瑧)KP?駣_\r楝殼嗣tv魪K`(P愈浑鵂?#瞉哟?B?窤(0(?\0?宭鶵镒U淂巐鞃0羓乗0yf\r0凜@琥榯呫侥5}b9?|g嶤 ^'A疒辈?瘫祛|#F5竷%(甘\"??雱漤?邡=樏弽笅備嵏(sfゥ霵庐-B糾;鑘J2K矤9緍?{済C㈧?`嗪!驥珛鼇、晷H?冈ㄩ1‐0陰cー?乆.繄誠0?用~?岗??*笂輓9B4*WG瓋RT橉 丅bU濋眿唻3?h2?歏嗧卣蛨`?嵨啖&,6m+劁P銥鱟+Y醫碔Le\"_8幔脴?P丕墡笨撳`夃毅\r2KW橜觾K6晤(h?涸\"Lf顉掃〆卝>硖B铬	齧g攷8dQ睍\r針3舃?UA溈匑轊塜n.代嘦x瘍3c-峒?U⒘犢?鑜錪毟e$ゑ墅A%) 宨脃-'PL斜?%黉貘転?N\$nr Jbぜ%@晢X敎5\0軕y揀\$絵涷]A畢巛h?頙C\"瞆fIk-倀侎??濴\rK僭`{仱弶賍%p?睩IU\"瞉琮x焋\r駔挶韏岸栤轡\圎瓻蘌桞闿伖v'2鉂モ`嘧?>L閤?€	YCh)(2预DGdE%蜱帖?翂姕B1褱i2U庤櫳暁钡/3€嫏縑饈FH? X鏍蛹R k呴\0貕媃mY愐鑹n(Dyt7'&釱K(€爣í\"G`牆CP庸Brg櫁膅\n!zAh\$棜?草o颞嘋rmH?檣*h€V7NJIY-%辶讪蚶Q?iE潉bMお?ぶL歜tk萖y2\n挖燚盋s85ㄣ蝡腮鵟r逼[?P\\hQ\"X<I偛/f襅穰*qq1爜绺q|曚諜U?憛t廕铜v€P? m?Cf*效P雈0o\\1[8耆?c`㊣狷}\n潇篊?錺饱BqI:SSp<耏贑?#歐1gu\r|)礀?Vk瓧漄?榽o叔J巪鎲?C塹搣>B%蝄";vE菓固+頧r+\n?G攝€.y*)sㄧ}f??鯺冫{\r耝DKC?Q|曍N3lョ喎_?e*p7鏧S?%?杝佸Ql笘堋 恆I瀓蒵MJ0乬茨镸獦緋IzAG箯60[調鳯几氰囖鈤M>坆爧?/Xec蔆馬縣.欙斏A>hpi衛p峵褅!郭撹沕\\瞹w瑦揸侾K€P\0J藖dn6籞+G臷r輁r謽伆兌x?鱄汍淜鈍樃甛\蜋b拁K蒿)=泮萵LW?#\0+垯豋痌釕煋嶲C	\0偪lk孩购^輐疘D弗6唡蕇>e汤9?O鈌0Y烚霽a輁$?V扤耜:橦x?鋅"繎楻??G#塬宺頯/潎2:|讙髠4Q謌<蔉6尙蜧H?/'梤旺桝6]妑B櫯合T嫯榅沿9廢雭@s藫AG沱bt?梺膙F;蟵(tr莸v拕⑧+茎斘嘃G姡慷1@gv	5湊x>猘?€	◣k桳勡1嘭?[縪诶困蕒|檐f魗oD=?i筟u瀫Y?筰o愂拷;?柲\r窬Ε曝G@`q\r/\$叻c塮至z舿g瑍C? 蒤06!a埯?$忴DC0\"LDL黗贮琹澡?綷"/|#绽鎞剒QK靑€@2&繰谦粝??h{e毲#谤琫寙?0TLL剎彚幰拓硼J 鷇騹\n&鍖N洄衵茴受B舳Nf鑾n镹(鶱怐\n\r萣笑猤7顁y]悿韓?0腻l6D悥峨敦#漂嬄餬\"鶑t7\rk鬲窃rd謩╯~#璸J嚮/聹\"萭)?瓢\"\":@b:ANs琋€騄1,渜2摛(Q)?6Jz7靄\.*#?p扮鏇L扎&L?4Tp#	馊侑?渔>訮镑钶1O@餼鱈娙?#?-冶皠氏\r??-g簙/t?8鞁J赒緙Q?\\,%F抃"咙N孬臢wCf:斏埃蠔蕄喴醒\"?-押仪岀B>m祁;r:f?蜍kd??菳>2B9戲8?!泻b銟騦\r茷\ndc1皯缯(P\$c圶獽&鋣\$b仞.岂矽 i压O\r)Q4G睻x\r?崱驯*蛉賀残?(弖+僌--⑤蚶巽鄻Ib 莫F6鲠B?G\"dx1o\"?0r囵蚫\r B?R2,'炁RJ`bb襢上6pSI\$铧#覲 sD拵-4?Gsc5P堗念讍|\0渏骵3駩鷅_\n抬S?訑 愊/9Nf\r€Vh`諱觊铺2Π^鈐?;\"z笯诹)鈪€@\n牗繸詭守釯9鎆#,,塍?蟎0掠i:処@\"8衣#2K€L€#褗	?2莉p ?崠8?讇?b?e`8璿c儗鼇B3??896┄欺皉+刧?艅?詍\0@\n\\Q劒A寣证hL慭n狋ll席獅唕犾s鄒覾n侍x\0沏蠲肂贷h`\"㏄SL?愻莯↙2d灋+\rrm6\$斆J虰O︱of9B4秏\0+4D忷|?sJ馋&驭%?K飗鍍蔉犉犼\r	絷V朂纻-Tv烟zJ`鎤\0㎎腂TT籃C2CU蒅烀j首抾\"ご k`I\n2)喝穷?噤";break;case"ms":$f="A7\"亜鎡4徚BQp烫 9倝	蠤n0歁b4d 3榙&羛(=G#i勚s4汵ρ渎n3啌?r5湍奥h	Nd))W丗午SQ陨%愄h5\r怮s7PcaT4 f猏$RH\n*槰?1宰A7[?!桎i9蒨J労Xe6﹂堡@k2??苊B蓾/伫艬k4洸證%谹?蒍s.g憽@嵮	磁摐漮F?觭B枩镓仈鑕9NyCJ|y鉦J#h(匞僽H?㏕躪7嘻緛绒r拺\"烟竖7橬qs|[?z,値c橆鳘?寪<嶁尋h?劌)㈱Κ羂"樿铆BR| 夝?紑P?废z?般Z愝%荚p岅\n饫堛,X?郟埬>僣睽x@烮2[?I?痃嵣傄膜襽鋵辅; \n*寷0\"sz亷4PB[(胋(鞧奬n屳燙*&\r樗捒T荆l聂# 谠敏?矛(c讫&	聠滯o;?犘7帹簇傽蠤X??z\r犺8a衈庼\\鉺=?^?Z9亁D胟摞?3迻Hx?騄(\r+lf僜n\n?H;?碈掟釥桾`涋j8@?繮掔0\n駜T淺"!(嚷?x卆巣\"%嶓郴5X渾缐r?5H\\ㄌ?ㄋu蓅B3€楲?EZ\$3! Rwj[8\nn?3僷觇癨"B?尛?Nz_F%雙掃<-苒?鍽FK鉈?奬"`擗 R`?+汪谇笴?_0?柣龋孩烓z宙赉b纬痋0嶤\"g!G陔鵷MC吺4竷d?F (燧'#x?-?KC2?)y\n巹	疦?6嶤吥螖j?sBr悿uza鳮諲3彩+{銧x厠Rあ犧?b?嵚#@\\6p^?O脫\n髑巐羲(蕨g?碻aN乼&蟭PI丠3	|DNyb峏W6颷壔4&峏f璘笿KTC燢V6G杷博y虝猕w愴Z羗\$┥?2w擇-|蓹}'c\$\\冴賊\+瘱耎夽?晼朲W'蒵,-00\0平蔍麅dmp蕿?O|磼v}墏%I貪C1€{麊品M冥\r剕炃ゴ屻!樼?敠斷f6(R\"\np骗!3?!?鋮\r鸓6砌X莁@@P&燬KAfS蠟PB渭碆旗E0驆yp鎦挘I?怣R<MYI+擮r贖圧釰N愃6&4	苜F	鯟B郒┨C\0(%1騿阥駧嵂进钎姛癟A(―'博R衴?骬j強s\n<)匟貱?H刘毙乒Nb} g	蟰a螼浦4槳\0槰e漒r鑻憭6GW+靗岔O診"M!2*Km臝N芛6o虧'(jt3€犉臞4A<'\0 A\n敝PB`E環?檝*L毪BMǖ%噯q隢G嬦暫E%Ⅹ贘?抃n_Q2?\"cz3!'z簐缏{T鯾N觝\\C呬旌 ??Hs-赏稧)m潰t煵`鄘C1瘮昕抎黨垐V:浈ㄒc葙朆(VYKysT+芇o?棦BnqJK?r鬧@PCT4枡胊&%	?ヲ辴,	HH?鉓@_AG\\kTEO峚東趧'呑{蚹_	\$7躌\rL&jm錛灼E韇U?A峂]栦鵐軐F?:K?子)?柇?倰?,拿?<憲E稭壒阾蘚0F*0L鐽	*;?月兩a`f#\n嶩嶯J2vQ墆7%妮W塡$╦ヒV楘V豈?y紬!臮?^蚫?f佧?6s\r蜗B 覙^w\"\$L娪?J?cO>N悖42獑兴I^璏5欏=x{9殬		*椳﨣鯀trq罯=瘂9r?u9と戬?j椦; 6徒琈!v?F?殜0繕L?<壏~饓輖鲋嘯_?伄辒羁抅蚴6旗7銽挦▌庄萢9捒嗕[疅A虆﹐i粛T疄/X?黣?朂	徎鰚\"3鲃鹩b纮,丮y:秮港ょ久N蹀鶱芋跾衆rA~D`栢;QmH@鄎#⒐獹詆?+8f煽?雉B闙氘_?阍?{颦磸;Vu?绗鵙uZ所6耝&玿Х瀁鄘?珵┟侯MV~H搭悪?&L石綸震2*醁碧踦菦??嚒'gD獣)寕|Gz珮@讁U頯BF絵f-眪呿sZ緝唪A踋7qx詏n>a趢瑋羁魚殱煭銰\r椟鞗I鄜s珤W钤EK烠桯B晟歂擊~&>蜚(L蔉G靲菴v胂犺庁擄壤P懋凄崵揊-? 媭^O牢f喾庀啂濡2\0?茙幤?捐弬:&l駨癭鵒%蛴皛f蠵em?陳2螰3\"-	项?d?p釵里0Y\n弦Ypq??穃nKL\\	L瑠麼v蓤\n盱帑聀M痨郞謎@鎼€,H\n;面?!壓鑌r~!\0摚b鞂渚vlN芒}?'膛J陧嫦-欿€咰嘭`?犉w閊5FR?鍔 D2?8欵@愇嵚蘁€猏n€爌\$顜€\\聞屭L?:爯8IK妼%Wj\r崈!b.岐.6+?勮户H犟?b詉O鴂\\\r阨垘:Ll?Gm%疬礓?~n-蔬囵u.嗊襖n\"v2?r逴襖r噜3bf蒡\nF僯u咅g\nrzq嘬馶$珀>F璐?.`卢悋爩V€虋@瑦狸痋0欴?#?閐e\nh\n?#B??槞玶?爀#k?衇漾?儝隲0泾脋q俏";break;case"nl":$f="W2橬█對?葉\n媶faO7M鎠)耙j5FS櫺耼2哫!镭o0︶p(歛<Mlㄞe2硉奍&嚏#y奸+Nb)虆5!Q潋搎;9`1苾Q败p9 &pQ间i3歁`(⑸藬Y;肕`ⅳ@欉躬萛n,涏	赬n7s宝4'S亽?:*R	婂5't)<_u饥棠銛儒F臏眦烀'5懜漫2沣溌瀡鮰+CN颃6D┫具蘂#┃U7~	蕵r殤({S	蝀2'隂@亷m`嗷 c凓9庪叭毥Oc.N釐鉩稒(稷j疰*儦碍%\n2J鐮c2D蘠挷O[趩JP蕶诵襛昲l8:#侶蒤$?\"変:兰孃??p@?	?' NK繊鉰粚燩埄6珨J.襹覗*砪?醚\0冶F\"b>捝o啬兲?崰P笐?n懊B娿?恖3O診0\$嵣x雾拌鹪?鉹91\r  寖j魡篜A4RCI哉氓L苛曝矵pd鑷幐凌EJ嵭t呫酱&5r鳇.?^檯鯡斺呩#R掺3.胘嘂嵙郶0囆 蟎r蕸i\\\\?*:=辁嶡P趼Os<酮;塡r兀?+卯\"4儴劝J攲C蔞溟U#塸搪艸??藽rL闡c玌Y颯L??帲b;#`?塹#?睰\"-'頩赈i?啿\"虠壬C2任Td5ぁ\n3^?陮#h?儤妻奲垯65%J.籏\"7孵-0罰?CRt#岰茵葕|^Z魳;yB愃I〝刿嶺\"\"噀俠胒1胁-w L)訉 P砖iXk2偤塦?l鮶j*魽傯	8騻_(荾Y#6摴#k墟栳芈3蕣*舄%6鰘2楻躎辱燃?>9`r揦a!?秉a]瑈榻R6v夜\$7仢樏8|J 婐3X穲ii?渀@矵2衂ET鋅0u儭過酸楸J馫*g@@_鄖瀙怚K睏&轲惝dqP氲JC炑枓訸薬mu斧UzK塺'T唇J	.脊3愰硫kLK敵鱴TPI\r^E頋U	#??rg	#*up肇1鉶D屟槈Ha	Z锦v鴿覟}4?詙,h笝3犚観8Q箏曘\$p?€€(€S磯\$n橑'蟥AU~?泦怫照?4aひ歵vh怉S6j薛掦H牧so惣繑部I?'\$鞛猅抪哐耚$h各H	傾M劌T殑?L岩叒抬RgM慡E僚Х蘏	??羔2^癕壋ADp殔\0聽-w荺\贂朣g1E慎∈vK?C堾H僖NN嗕z豣ふ鍌Ma/&*??嘌阩4\#I嶸蕥疺靲Qt肅儜?R餛HbP/2腅聀 \n\"k &Z檳/\r?B?XA0櫡D蕁a蔊\n萫\rO誠0O\r礬0篫(6脧鋖?t咯譐御?+D淕0q犽6-魩悍n爿!,T橒4\n荝[?8I択&坉5員H渃苣樣\"7?VI喳鶺PuX閴9屴嘿頛*哱r\$*j&帱?絗(铙踸VE呤帣薕^]趍鬀鏀2噕?y僑e孅8L癌ET甃!脴	鶀,M?=p撥C]札耘遴{Z餚怐湙<|@S咠嗏u銹繳芢r觇20膸W鄑\"螎E#ua嵹鮺\n!剙AEj\"W	YZ P囗SX胞/答H?鄡8橞>	I?!G7=弛?8枡X2岜宁9饐珂A燫勏\$~}Q?胮v%]W3?Y鼤虉e賜`万曫u燈伵巽6枵礿 欬扈%U惖9蘋J嗮頔娛+E5D楰V撞ォ-猍D匐Hゑ铭&?暌C@Q\0[x鈂"JJ茭??炪I\"#鯐b€爦|X吼~f3?*[劑銟RQS\$i{2睸|9R懪?笟凬&﹠:y狳}鼙?x b黆薶択蕛e挷Cns?倭JC靤眃艺窵抲!蜋\"つ\$ξ妈{?蜵Ap?f?蠵苌X)A8绋[t鋗氮鈃漙恠狾胢苟漌#喚1?嚓臇C9惘贑U革嘬sjA]騐L邵砐哅%潈V囸?龋?挡'杶b`?Z雖o菓v?夒v)鮴Q?V,=讓a夷Rz?’@L(:犡愬<HI犥tU!L絘嵦‐\%B?匴?席 x詭汈线運$佧斖圠煎n貧毋兇2&怜j觎\0廫0餚b.X鲘禸v?樖zXI#\$??gP,X鐾焓0:?蠧?陌'L肮類妲SnE浦?Vn﨏#T\r嘁;鞉革<J?釵:嗓餦r?疦jf猲?P~蓀傦&3\nF╦?,s峔n蘚\uD欪H蓑薘?3鏌\r/\n逍?et馚>駡:P鹧sc蚌%孿\\n唈醢剽Q鷲Q%慂zl`票\r@lPA靑/w	??l膮扅?b3C'D`枋\V唭"恃P漕q/2C8bU@甴1&i耭!f糴\n偊5T\r衼G铌r%tZ}鉚gb鶿nq,阣	\0謶診rⅶ	rf\r€V\rb<\$'C?聑&B裕?C.肕@阯)8}嗒\n€爌I鑆eL&璡n辌?\"8谊膙\"諱h螧?oK#萄\r?#B?釨't*塔	犧`涛T(NN1Qt麹~\$ E'銛D   q?酗耲	崥慏k&侔|鄙趚蔉瓿d敇C(\$啋gq^oJ.B€鋬-rL(%腨 ??G4苢偨\r舱.愖霓*c8塀F8Q?L.;-o抌,k憥}聤4揲贚nK*nDT齐4 ?覂樄`芶e\nt?\0侜镭PRB睛t)捾a爯簜V/?T\r.聠@NnW?雋俭斒N糮p鏫r\",s眰i+.缥X濃TJ 	\0t	牃@n`";break;case"no":$f="E9嘠桃k5橬C餚擻\33AAD畅杠eA醆"a勬t樢l墻\\趗6抶橐A%撉豮儜仁l9?B)虆)#I苔朲i徛╭?\nFC1犜l7AGCyo9L鎿q勜\n\$泴艄憚?6B?#)捳\n坛h蘘醨?K?6榥W鷐j4`閝儩杄>涠\rKM7'?\\^雡6^M覓a勏>mv>屼t犪4	斛绺輏望	L嬙w;i袼y沗N-1B9{臩qo;?G+Da:]Q?妓Ⅲ髱gY8#脴畲塇崑R>O衷鞙6Lb€通儦惀)?,\"樿?铧內嗬	蓘诶= @濡CH蕊瓎L	琨!N饚2仪*搀苃\n?#\n,?B@7 脇摆*	??娞R<HR冫\r繮0缹s帙(-藮蕲揾爡2(杠鏫r嶼# 诙(o?(+??袌?捐2燬樐鶆敢:\rx赙!\09繮 X?袩凌D4&脌醲颹吿]嫀Ar?呹X_S?惾凧(|6仑3-奼-亁@甥z2N`P 铭娫礳耙2庎U终#媊穳盟埮丅嘎9\r薫?。\$<0HKXC顗嶔>\n慞藞\r眧\rF7瓋Z}宲?#ㄘ藀雼楞`泉Z5KL\0??^P:`+澔聾齑32燿W鐺S媻y\$勨妑>靈\$2C\$瓔^粕0\"垬峩,丮0鄫丠雡y]彞4棦\n5岰+\"	,齪??^蠘缙疴傆w/+[\0\$嵈儈﹐=採.軁扯 U寥微 劺驕}莻H腇2叐権	仳5\"?篇蚊;{Q鈨xO芬*tㄍ?盪膚觢0瓕*墐WaJR*屻蓉縍?萑擤h@?.酟墐#!澛?CyL\$bHA?!P45sDuR契BZ ?€@:?爤R贚藪賉d墍謘l'a犁?怟P	?楡t%\$ Z!M?&磨X珪偛V佈[+卼驁X+\rb嗗姇奪Y屗49冪8薥$!P!^Ya綢恅覛xN蚘?轲笖輆皌m!袧揵0NvGF攘?feI-r槯?wT?\"C2^Q蟄T=p伥K\\烻釥橧梨纁84栦4a藱LTk'R?P廫$鑌\H栩@P砛r騻k丄E1I?\n\\ih媶8`oQ戂\r.`2?0銺ス@噐遦飦夋K粗g晹騘LL戱l翗煷\$Szf挜C鈼P[DC\$$蝠嬻Q砞?萇儖/Aa橏;ォtj犓U葊橦4剕漾筽\\Hi睑	鳣	i當礦^\n檮鰇I2哰俍\$翝t?D_夢7漰H@謉堘&鋱Jx@B沶WJ偁PFi嵛殆])bォ)槬攩G)僺D2€(喂蛞袀xNT(@+埐A\"劺媐O育7/鵳棑Zm	?Ξ\"芴韀蕸?麙h\"J3\$v捃憈n?\0€箐?梄妕CT€哱$a欂\$槶鳋漖+嫺?7聜I襖n塔^苕t|WCJTJ亙]袣SRbO\$厕鈯侟瓟皑啜謳~`LP籙C渘u骦鎑葿!旆o摈?橃bY?R粭傗]肽*`識\\La-t\r袈扗塞^	矾3慃gA'\$矩憅KxT-/(渷ljD╈9'G\n[X/図暉i@Y(RTq墆;T间y篈垳隮pBHǘ8y鶴忑矦藧>蘼羂0/* F链i€	s*0 pO	j疐礚i梡r!1(?庭蠢 覼sH矅&u# ?2豋8z牉<Y?t忆驦劙]A罆哧瓕D肨€7!溿?IP\$寧扅东f轀錘鸵k!? ?3/惺\n畒\n劷,剮椧K熕{矨欈v緱KB颾勳樄8\0汴9 3褘?\\z圽r袵論?n儍獷炫"?蘚"y倄纲M?# ̄-^逍甸蘺g4 5迸諲d^-H\nZ卮oβ棵\"f/让\r!浲鵓爀\r #~燣脽S:輄〣.倎諶铤亓?巎遜?d%ē菷C\\1€隝rT茏勲\\篚t?x>e2SLa\"G垺绾塍瓵蟙?傦]煕c\0?€愴W圌巚飧邲蜱;bS~b;fMX句茽\r:	\0烼?鶧€g瑱\$x頮t?啽\r勻逰Y7O嗜?燌顈鑮>9w龛c食h?餞偝腳v鸴eUr顨y\$幨L-樭O念蹚郳r虱S?i#坉猡'肈wO?墽慂&z鴒?靨^请e\0向盱T^<5+i祠?驞舙:`6僱Q媟H泰裎l粜hO铿S糖廔D_鏆\r匜d爯荬`蒤\\r崋'?A€蔱,鲣術l鎏p?pP|\$隲$6\r鈧噡b氩t绠<靶M扳0愖\r稗B鴀~b)莏騪F\rqgM?敲9H1?Q(K(b械?EijBe?弦b寲8餰裋*N?題鉇0lh?楘袾3欷0\0‵凭媸狣挠皕MI薪褨耨l\0?,.陝滻豷CB淎鐃Sf把騌?掱比慌*(d%z	f\$`蟎"躣爞燕d??J?哉℉\0愢咲``諥\" 镸4儑CX€痛.從仼&ZK&\n€r潱蔦r朦%1鷽崹tnFy%\n襬滠.gP6P}倊€C娾Q漒0#屴N?鵟"lh隳>弋掳&Ad^〦?0)労b鄲藡?l鎐\\皤淪錒柒s顀,B1,廃\$玵畘6+栵捠0嗏?j??蝧/藳-釪&c\"?G,,麗\\`€ΓJ|#2n0\0毾.姽2?靘3-襗敕峔\Kq3-聽c②n\ng\n!t@狿捫?藊02P钵悟b鄭.&J	bD霶1篎梨豛n?iF\"嘁";break;case"pl":$f="C=D?惕ebδ)芤e7罛Qp烫 9倞鎠憚厸\r&敞€膟b爫鶖趏b痋$Gs(M0毼g搃勜n0?芐a甡沚!?9)襐%9惁	甕 4隶癐皜0寙cAㄘn8値X1b2瀯?\n!Gj荂\r蕾6\"'C┄D78k啼@r2褞FF田6普帶檗Z臖挸.苆4 姝U鰣i?\n褪関7v;=▋SF7&惝A?樨墲扌鐁澡馴杙荏k'摷z\n*溛篭0Q+5茝&(y弱?推鋜7湨腃\r鹉0巆+D7牘`蔸#剜刓09庯热┛{<e囹m(?岄Z潼Nx树! t*\n毆伱-虼嚝€Pㄈ犗④*#癹3<憣 P淂嵄;扆C臌鸂?鮘0/J€9IB8??犱?晔?@J€@闬0?E儨?N.8饍嵜樢7?皹@Pつ蕀c丅淣Oc 緢\$@	H藜2汥?#Cv6\r恹岧9nh潞筴鉟\0巆UJ 寢?:4p+<C9A?牫熊3刓n@:\rx隵|\"蓞乗0x爫€凜@琥榯呫教5尛呄任|9恀*騘?胮厅В7亁*cx??艹1幍`-.盝巋f\$頣嘎衎?J'> 埿?J满2寜3:958Y蝚鐚	cx賊$(磠傴B\r灂?p迫I.]^(疸F6\"義Zb毛庥\n9W?=b,X3寖r?翆(炌q\n1殷:0镠??€R\0峋|?Ⅹ倖%0麭吪?5頺顯B槩&P8钍洔麂X盡惹Ow 玑ハ肜:v鍥軐y\r杩共嘢80萮傢Q悚匢h@P?讄`姖}>_涚鮾eKC卦鐔脠^樠漶屶魣悈:`(6&#蔄H9	Ma?\$>M偢yT\n埫#D咺Y-N篊*>噚0璙:狔艫n爾?偽晵?`羆\n竐僶?A醙!?袠蜝揧\n詨 SP?,痼\r!?働q崦鑰╝獔悽陇PKf澳:`淐拶奨;怽"葊 aL)`\\淓嫤??RP?A锄喥^\\輦J,:扸傐	'泓I#`呄乗rD\$?劍<7嚕好L鄌B耬k-叴穃n€\"茖?罼96QJ礌谱=pMQ啍/\"Ila傫虜倲湐?DJ弭1輐V谳[雲q甎魏e	鷀巳6/頓襹^脘椥蓜\rR(胮爜0様.T﹠G頛b擜	aA估络 涩1LD??@€(€燤偅鸛?聞C`l\$)扽╝:%~癈4厔*?R鯓j㏄sT	珰V淽僠s3闞\"WP\n㈨t◎鏤Q2(d敂(!俕LI檝p翈牪S@挀轅J扸'@猡=@脷4俓r'b妼Q\\?4d-4\$0庡0—,烈	F蒳>QXcHi峝0a\"岈?(緼	塞p亽\$??鄝-?s訅6	D ^P(諔勀r瑤璗O恑5?5 遤?>e虛q^c+w\0007?\\&Js歿UB	M1勆:6蘢7[@@p0iTDv婬狰縏歇殫d(!0阜\0;懮\0RㄊJ2?忖0Ty殽9禚b\rへ%磟鉍j?3X睇鍼[錦n類€犩菼檜S刱#沼cj??wo鸉i?Jg>岁[q	堑?脙l0鎈$叛v\r蠵t袊y︻.j鐗抐?,蒊辔#D寨P鋅n?嚡^K湭/劍呬E`夓D踬Lx麧茢ZY??C oX万慧鶾倷|0刣+崩uSRCQP\$猝鋔 d?⒉倈ke\r硡fe嵦炂溴騾C\\?ID(蝛`&鹨攳贚W陵午焟澊Q皝<w隼I?澑闬\c顎牎紝庺H?縗$V梁x+ptn?箣枍K?坙X射1N忖鍆ka晔告>)x捋F豰\"廐R.2U6哱0虺V?≡9#SP[[r?*?C鴵x瀍H奬$胺\\_P !P*贫%≥帪妖EBo€T嵼:颃H?鍄?碶$蠈y態A绱vc'㎝焇\$脆u{\$[-鹤駚旜k蹛?睚#箛炿Wa抋椊愹?k?j2q??布2|钷&Iw瑑慊?稔K;檤B??烋恺W囷谢墅i苯|-顬j癯?	+輟饼忑?簶gPG€荴Z?賍X懾??oZ敌<貞(凡/MXg螈兝儷肔Cv槇	=彊d\0沫?嗧靉I?H\$(翸\0@怭騆圽"JF翶0c岅 乐;頣eC?錜夊魫>裵BJf\$菟*&销BD咱怈@h8r?0mB偵0H	禙衱.K庿驪t甙審?y凃蹅€屘瀠m?L忋F撈毒!6蓜鱘"埸&誀D8*\$\n^8CN嬸筡rEx9&涫瑺A锈4鉦\n鹬(鞓|儡嗦w	甃箸汲狿G纇\r?F帅4\$峔n~?Pk?惃是坹Q耩腈嚢{馂Zp`凷10儽W	胦盢\ngˋk0癕M蝯眥阿	uq廓鋅r诞fb憑駹Y㈥驩fo坥巋?碻i	/z鬴X驇bX懰	严1盡颒hLX馓`??炳?.Jqo蠰挪 1朰馷\n瘁C*釋燏.dT爋啇()B\$鏫$DV〥抰c?e狝b%犥F@??啶p$X<瞝╖?%2爞赜jPl)G侤E碊 蜡蒤" 0	僄'團F蠋?扐题>悢抟倪QI錝mF:?k-p燒椅\n?7.\r鎑樼i甉%r鼐\r .x? dE13	.挨鮏 %?y落嵆2;韺JJrf?犉=C€8兀/1閈$莯失卍?1怉mD(鍽SNi7恾翼?鏫0謻掖cIS9\0銽拆}忮:?2酊豹d 罾島%2\"hj蚠-r8蝄rs?髸?,>烗r?蚕2?喳?復@€醆"s?QA1媆"憥7-意#C<咏@撎?C*tApMCC恒僲 r虰N5D-穃"s隓?P.y鬨\'蜠 ?{g聕bGASACN圚b躇D阔Gnc嵰)e歶\"?Q鎨C;&D咹3t掺娢ED(SF21陋L狅4p7M4刺3o?苩兔腸1K傣+峀?\"e垺戼!?N绬L@`?〓彁鰏J\$置?煤),X1,R羵?勽\$?)B?巢t\n牗繸mP?!€履.隰аW舁啎t磴-0h]W聘u%:屄@噀,#鸨€?b鋨&/B怤銌錞'I\$45嶱\$婼訆rD.;ΩsH!ETャ朮X痋"5_k3MR?瞜#正产9囿C具倛? @迯Bc?b寐Z?蒫V%X?(胔?2裒GM\"	v#R刾恆Y2玣#RΣ?ct?瀗YVa泉~%|S捆\rp礣敩刅?PcneGth始c 詘廛O雗(/?谜Mㄌk骅0纻享躳H?ㄖQ*?乥蓸籘H眃珻S1D佣??i僫n?\"躌嬱-@瀧\0??;break;case"pt":$f="T2汥屖r:OF?J.檮0Q9啠7j擂s9罢)癅e7?悅2f4樛SI绒.&	秆6霸'僆?d椞fsX蘬@%9惂jT襩 7E?Z!8愄h5\r怮芈z4浟F髴のi7M慫詾	&))勭8&浱啓亷X\n\$泿py1~4谞\"憱颺徫&蟥€衋扸#'贋2溎H稍郿0聉f屛瘻尾土骡K\$餝y搁x崴`哱\[\rOZ泗x蓟芅?&愧灑餲M擺劈搵7ES濣猲5泹鐂t滀I缊馨l0)\r婽:\"m秉??妍畠\"p(.乗0淘C#?╀?菿\$a柊R牘`@5(L?c葰)纫?Q篳7\r*Cd8\$烏C寢Cj弫P濮銛r!/\n旯\nN犑銓瘓蜀%r?呃陚\\枼B炠C3Rk媆$	屗?-\r@砟勻 門攰蘐\$A#?J镈'医@P襽婄J?殌當嫈?t 寖j饍|鼳儨篈苾\$:癈;?:职夾\nC X 形屃鐳4儬?嘇x^;蹃tmU\r?\\醶P晲2(惕@刷x绻∴^0嚿捆拰戾S3狺?M嬇b舶谋lk敃+盐 ?8J?a榩?幦毯隙€P畺Hp螉 @1(H栧鶍bcx??妖淟Nt锤p莆晌r2 貜妱鐚k悎2胏ㄙ-佘跌毲堎悱f魼颖?牋xk8竎f酼\r儃綁鯨阢F?b?尹骍!)蕍灖鮧g9瓸茖[負W瓃&荺rx7)\0?墍S飦C;辞怿抂AC裟m(u8特9頾悊恒]瑀\"鰞侾eB觖SZ4崍陲(	#l??耒饼篤栕?_u?\"OO{邅L領(j?F谣??蟏聹 暲?i?\rzQ貒0陶u.鍵e?\0C8a/烃矱辣((`鹬J\0C\naH#A@霵廦H纴M挘擪壮V%吥鎾W訡??觩s瞁虥摀N~\r掯%▂]*吚A諿Q2IV,覮慞@摓蕳尹_緯类MQ癮Yh=\r!呢5垺4肅艑勑﹡屾u,艥氄Z雃m惊衆n鋅\凉s勮潡j飝±酌x搙 I7讱H徹瀿€鐽	\$叴˙H@楻?甯媚d瓧笼XM棤yG抯.!欫D(?\n俴a}Rq彃槙喩jE尭hF)虜 堾hD/M腛+B€H\n5僤\n\n€)\$鍄槹鍳\$\r埿娈曼?讍s℅U〔7伖3鰑	溜殞I菓採	)\$??湊Q(%⒓c瀜#耚$TW1婬P?萅?斏剴\$M\"H(,墥哱\皪闈ney\rb?骸鷲愢€eB帱)匛yI夆uu鄝39V]佋厭銃孳MA4槔ge?9伕楘d璄Syⅷ.aI@迧曍b.蝭?佱p 罵u撝\\Q^|々\"H€Y璃\$喩匳j\rrf潲\0牉乗0U\n 匑媖瓈D?\"踖4ag堝徿	`Rl駬\\倄pm\r斉碘騅M`e?鯜JV 礀颵?x曫i	qPY饠s勑噭廭?=o辸F6豪軿椏\$Q霐:yb??h\n?(D愄?R\0PV 髕寱\0u&M蔞勨?7K扉漞@'榎"鏩塅螟 嘑猕?9\r亞姼c	幦燬R)}溂?	€).攌茱阵?改?^.%A擕釗3嵢Y?X?	?v&8枓,挟-qu犃?阿餦\砓弆譞;D來)=挫8*g*垿{螩p)d?衆$成i竢+剀?變孿\7SD懃D○,KR\nH鉡PBH\r毯牕跶恜y鬇魺?^k诓j桢蚵2z\r焱條揂n翵eq€琀也鯝炠D3&7^€K9€[縨\\/妦哇[?nm阥Eg\n!X諕蘉箟a8f慘i*@釯叮m茜0龛oV秄羓伸夛溃I瞛<羛rp舴疗pk?\$铡??耱箺P尗R}k筛@Dd??U	?q\\謼蓄Co=!銓仡rS4~鯩荄EA塩o釥洰爺Bz籈炸廑0c?媀甇&n砲I镘>埇弇攆\"芶We|楱顧N銟?h=呯檆铙蹣翈锝蚛"W遪+?賽d龁K裻AF?C锁!6	紗軅LtZ棹~閼O埩?稴:E36oA^塶皎幨:妥U/?€\n8珗\r唳撺€w\"4刧	Bb?坻?忈蛆垣趙棓騖"\$斤o?u/鄔騢舩藷淊9冱/{q?S巛竆\涱孳谙钶/爘鉪榤?+B5\r\0阥T*忙?o?-栊龓摒P(祥鎍0糘酗㏑9唙/+餗b靹?填暶6;I梨(胒朏?/鈐D鱨襖$栲 n\$gK.^嬧董蜏戾 釶`JM婣\rG/疨捨虢l艉髂r\n聂 徎俼\r黲昞r耙鹣p%?0C以幭遭瘌(邛▕庘蟎"[蒐.MR厬hk荺"(?蹂Tb2?(勖層阞(?-A啎O茴1D:慣祓F巕vK\$lNRj蛫-E钱CQp;帘G飊#k\$2P条鑸QaTh耊?宷哎朹穹姓pJ0毙%b)\"O惸{qQ餲韁n.嫜\rr臲c俒犖绣O喛!r'\"giC嬲g^M戜 ?D'>yE\$2@?佬蓘迡鋜躂b焉'宖憣羚嚠?瞤m6O,鞩jf旰e敏撁/o<1鎕X#7忲x<@j╘r&HD垁腲B3嫲蘼N霡﹃E?\r|A倠b\n€爍F?fT逴蜊k0?T?殽S\n漤逈?剎Nǐ\"%w奥1€蜢瑅舣!R3\$胰鋅rrE寺 傯噸蚺e赔x愻	揯<(H獭tj鈯綅鍷矂c唽 @?儏N6S圕B?o豎C~勑6P<0園j(巫怞{,?D瑬;:靯5蟮墇刓0濽R菳锡<k!\r&?&郘濑xD搱幌瓜劸'妏藶Q衻 悄]#?\$满頜擻"孿"m涤馇N/\$??.斐R蘏杣近埣O碻哑r7\0懩?s屖M:e	(p&t@晰`";break;case"pt-br":$f="V7権j惺m抬(1杪?	E?0€鎈n'0詅\rR 8蝕6挫e6︺堡聄G%─靜妴i勡hXj沥2L嶴I磒6歂啔Lv>%9惂\$\\謓 7FZ)蝄r9愄h5\r怮芈z4浟F髴のi7M憢&)A勭9\"?R餛\$躶厷NXH觙儓F[龢錦"湒M鏠犆'癝觙愂s偳!哱r4g喔浆洄偦f蜭o7T颓Y|??RA\\緄擜€蘝f肠煼罝IA沑$鋶笮QT鐢*泹f銀苘M8錅垗汽蔏n貛埑v悺9庪嗳湂郂35鹦晏獄7葍2k玕n诤R喯4	葐0寜X聺\r)q屘☉\$	Ct9帾#%汹叅O\\?攙!0R\nC,r?骥/必埾笌虬槮心趧\\55拈X婕查葮媳H抚> 褙オK6鸌%栱p!A\$J\"+?3b`蘅筷x錇嵣Z#\"Sp嗀睝A茀\$oH@0膼0臜庩拃:?扜\n嶤 X暲醒屃鐳4儬?嘇x^;tqSr?呴X^8Bv 凧纜4n3/夑﹁亁8蟞泣:拫墿赎讹-€:收 貎SZ?xV??'\r挈阂极挟棈螶.寔\0命犂NI揺\r!嶃`昀菈_1?音m炶\r€j樒箭愢雲崽?褝??fa旕V]R岤拼媻\r8莿2墸?a\0貈癅P焍荓躶灦鑃(Oj岶澰\n\$偰胄儻b:柏敱S{?宨鰋P*?L[>頲( 醜[獺D蛃鈂\糈9爣2酏Lv\"|G裻M'襩)耙6#它$嵉?\"7榨蓢苼U逤凼\" vw1}_屴偷Mb^颸r??0+?矷修牕锰B藥禌n9屭^誐;索#?qd獫`PP罥9\n伡5挵@聵R烁;7萊Ap R拇陸培иY//&幕3蛭y?絛茀\$$o`Q?F? T玴9,v巈剩iY&礷,獍侎I0'H3疷罹I?伬?€卤袀Cち祮vQ鼊獕骪0牃c榖翨圶肊CF呏B蕡?h?质踻╘ro芨C?N鏏t.\r?壚?泟\n%彶濘?旗鮬f\"?G釘?S猭?p`兗瑮?W襸%!?抡h碷€*鯤O髏G'Dg鄅Fi 0窪A5餈@PA蟎nm倐癨nIQfFfH9BI胋6:\n?拿rH\r浕6虝X儎粐?﹛湡DR峱刾繟QC	9\n'Rf/慵P?F汼\$?閘迴&簮翑2L?&FIAH▂5h惇 ?J鋺?嵈d6i菵;弒?謭\$伮\\仦2匼0垄?JH灖u(:V;/%腥Hq18m魩S:Y	44eL?鴡恇騐=O圽r栳[瞓怢Cs閲郂偆?虜?	-O蠞7D搀\\I???*憊庒万xm?PT秾@-?	峔\滝d翺o酅棇1E#?|'??抝fNQJ<fc-Qe夯\r!嘟%覐ez憈K鵟"P?U(姢湛轍h肑珐qY|?硓衆"?线桭擲賔鄝?C\$鎪阘#圼#卄H課类īG赈ja)?dh\nSO磖弲J陇嘠鐜藽\r'F,僻嘁殐0x0▎Y陾??oU?嬐C9岇2f鉻絘C(wAX蠔,fcb;b4靻昲閄i%斯}窏z?€pNuL\\溄}桘瘟伱€I複?9v箁惟?兖燨j0\n觶??譼7?	;@\"襙耟窑\n丳 ?A}Ao~?錫A#缈庂X/-,泵N蕶.絆啚凉懎?>XYc朊I吧恌=蔖\0朼檇貴(揿輧惩2D梴M搻?F&眅8椺礼渡y9epc?PJv觕蹔幔6赝->慲憔7~鷬沏~止愝虈	賘d#DH紘摟T檿鎣饃輘t\\tκ3顩錠?hHG\n?姂曭R0釘1b壖	乗\)勥B钤酆LqH;??4L?7?(剟?艡}h鴬萍3疈LO亷』啶嵁?\r槐腓=偻?汽S?綘氉咇<fV@N蚵革\$*{閦嶌啄?8a?馾%2rのEI櫦谕竆\亹95笾i脛峔"髺浱齛S胳凰踎b譠箦駰髊栿冧騹P蛕Q涆up\nUd6?瞢賦豫锺椣趋锆~紮??谬臊{紱=%遶??鼍+烋龐\"(&~鏺躯x?灶忲u项蛶栉\"x2€ひ0萃噗4N?錸贜在彝掅P傥?\r祈I烇6璜K8J项麐L鋬K4稳玕0oh癑砽癡釂bfco怿堂绿虴\$\$<.^b \r鍘G)J0頫\DO旞\"TR開蠝攅%泺9?豈\rE霆瓞閜安癋蝡_鋠?\$糽?嫟2Jsk斁?允孅餺iT錻3皏齥矣薥n翹?抪R癨0僎6盹\0塜B?*韋碳:?TB裗h*,!Zjm (芧娕H#孡慭r疊P?謶腺Q錻?锘\0奝j飏蚮'L\n2HM'XCq笆?寡?裛?螥o曛/慀锱&\r雄琁戞I!U薥ro拾\0扄怶蕂 扅Gq,3\r\n惂?\"侰猪g9p?*fl霡ㄏL鵟"袹矧Lm2s\$扸\"?RJ衎拖]%Rp3` 鎚i&韻@QHG,HKJIu沫%2奍r4顎?佬K憦!脿呉r愪紏&WG\0S僜r€罀平洮1\"?飵f止俓"d笆抍0oX2哣*CC(趻??煲m?#蔦r€Vɡ襪,\r嗄]??\\怮+χ' 尠€贑1呠礌繸篽鉢$嘰r溘钴騥鉹崱-弶6b??↑\$DN猷﹄靔奦镲\"GqV0騅鯾/3C?lZ|\r?C?k気皽\r馲q7?播4瘏豏c腏?T\n哠尨F(撕6~?7/? 鋐gD⒎?摀7浑袡颸0006伷帄峘4?饚*04属5;診"?噢?,pB飚疲嫄D?<??0耶f窧~?芷j萶炷笷爒萲8O`?sV@闐F軩铈3`?,Z2 /剥3d?)\$2?%君氙'&`q隲r﹥睪n麶?a宴?€?;break;case"ro":$f="S:泿哣Bl 9歀鏢悺垉徚BQp掏帰	碄p:漒$\"杠c嚋宖樢萀歀?┎>e凩斡1p(?樚姊i勷iL営I藹-	Nd芿9?	懭@n崣h鯓|鬤\nFC1犜l7AFsyo9B?鉢r賳?F园?2`uZ:LFSa杬E2`xHx(抧9烫鼓g彃I巉;烫引,涖f罹o忁N茰 :nN,鑘︷2YY镹?蛊蝸 楢蘤祀?鎟'-K煟 !{轩:<碣肝\nd& g-?槫0`P傓尃P?\rcp蓰?樹??-@2\r睃?脌嗉+C?9庪廊瀳栓迍牗:?a6☆买2膩J〦\n鈩?Jh桦般P聻?Jh悸槁V9#妰JA(0駩柁\r,+偧囱9P揬"鯛蝤趷.胰嗔/q) 勠?專x?帊l姚筰陇/银1G4=C莄,zi膻?嵁抰櫶珺p愄\n宏0丅?T\n闲,铇7岏簆8&j(軮H?偉痠?┬崦銙??惣&谅没446Vz?模惾釾4<?z\r犺8a衈庽╘\?書/8_I寔xD胘饻/c2稷祟鄕?髿渤形?凱#哢俬尢ドC则 鮜WY.N4?籠"蓫墾看\rb簻AN鸍+沏r?巋樕DcC閏~5丅T0嵦戾賯聱戬\"a+\nC?1L鑸2屰0丨髓隠英# #Z4繡;蒤\細愖K揪70顢A掳韀日频;忩3‐rΓ獷糪r壎o祕盲(墎\0愎嶤茖nG9碱嶮擻r9SW?wy氲cE9Vo撚D!?螉~拫咤琰衡愧僼计鳿$婉:\"o+驺oVnL帑揌勯z誧B暑螲塾A?j镈`)=	\$樃吐(刃2%?C\r娻?E肻n笷(浓C粿罖s\$??嶾0o\rjH凗BC纴<(恌壝E豮 f?z\r)	-0?k愴SW? ]\r眜 D惲|K缳壉X焅r?\$-Rq奬\圑+?幖]c&F#蠭鐼Bыo?L師JN<0??曰r館K褅/厞咀?\r它<#w3|伬失A馫)牲悴xb{a?D*醅,/?9P!?9鈗廞.We幔8烌堚V\r'p-`曎3圛?tM+b\rA稁9罋?模萢伍}R)?)墧?,趩揬$o籉d?{1媍酄〣陡朁襔軉搗[??e?錃)uR@匧W澚DH<6肾N鬑X\$魨&bhM?G#蓆挸覼梊njh绣捚VH鋕R爞Eb2@3腬\<沑$.ZZ?.\"u撊腌?A鋤,声誠rB洧#}\"J繿\rE(穰'e甴Hv藬O\$r@婾橅槩抆A桗T枖?耚\B尧-痡IM\"v忕塎aJ擂R柆9娽M磖n蒨F\n丂嶶萳?誦O匿9钓誢QR!蒧€7KQi躥'鴸0斝(L%崒櫅谒L>VV\r酥鵐X艖#浌?}準oD #C9拽}OV[I	汾`AS欼?g鮓<鞫h蘗{n0 2UZa/踁Dp嵲r祏憽*?豞n~娙\$bX薢慩2姕+#y齉摄@櫶4T佋矇E哛‐"K€H秴IDb鰻LUG9喀脗5}璻k寭:I礵轍[| a慄弊/gl?l\"徿莿笆痈e痩紒8P〇K睙0徉?菉蚈Q{衵蓯xpx屜D^嫱|OS?S軝祿J陔KX&*痈嚗俦y鱔–v`8螽痋" M	ヒdv\\\n)?U颾惿a-o-靹麳I跢曄\r5e诇u?a詨 匑BHu卫	V朾 ?	揊/閬钮\0^7?q听Т紧蠉p\n\n.	?2劵搵滖塢3<欚P窳虖	*;p∶貸拨啘乊Y\\炑8嘌/寭豄鉴1@粇睨*vG+	J&D?露囧i噕捪浘%莈!吵\0蕢S1+}1(歘\rH3!蜎yo夠B矈^u魽?a组e42qi嫢爞槗\r耷騂越觱橤芕K宁j?噽W蝬	羠郡d▂=fo囡鴟tㄈSf急€癀g菤5骊A?m凝\0P鼺'顈琏q	o?歈摅0韺Ц騀u鄢\$塩飃,寰%?媙碹/v?96準纱鲭cRA猪9縻U6J?\rX?E戮霅{贊镆袰裚面eKN油Zg+蠴嗦謩唕羚媛I*惡刵霅们蛤/t濓苧腊(耾b澨g俼镪?zz?*酾f麓鴱X9蕬餹@Ex2"0hdc霵*韼J銑|g餿+Px釶勻Nt?nA饜d悥50??p?藔砵\\谦圍餤鯿G鑈??p蟳`p苡愇=P?蔲蓏á紭i 閻#€P?饊狛MK卋 h<<樸?cず]#\\\r翃c?((隲r&敫? [鞄列斐nU厅黜\0%僔?&规8巾1姘3ゐ蟜約P涔饆&]pf騊]Q芉桏P彤el,鷓-燫G2 O匃L0瀜黑E0wo}本\$Bm鈹perc磊1谀B别枎淺$祠\$#羻@沱'*'?p&:8n扎gpp-\$	?\rp%\"Bd?\n,#悡j癭戌帣- 芿C聱J孈4崝\$?&g?択O?萌\$P?&AV 犅Aw#毩覊(?)?L'矠c2r?q娾{%}*嗲+\")Rp:蚺,,某'矙\rL2厬??嚯瞉.峔$}抙no媆0!Kd鰣炚S鹆Q梓Hr?S,\rS0EA/嚍囃VT睲@木ね??.3DT矺1O%\n\"z\n矲跠?续'爯B虙D饍J\nz< 溴瓳P?e蛏(K&* 傼j??sT厛6W恽g坆2\"lj7駁\no?儺醤:岙i9萤	嶖5萖P j襴犠胮羗J沑"&叒?訦\$r\r犼&隲0@\n牗繸;i頫\i`洄跺滄nkB釳	#迀?4#侟\$DC嗞Mq4F/&hvD鹗C?G\n?隢1b\\鱯軔(畇f&蓨8\"砾€A(怬,R薔if奤卬)F嶶BN&ぼU钁gO€2hO+O風肼睋Z鏾\\g恸j?黿t酠1?57鉮6?啀\"M谈D?De懘X\$f蘡腽鵇癒F猭俱'5?;袋孟鰋Bb:DDt @&My>\$扰鼆	噌QF_\"c誉.\$n3爣74牃\$-?嗈:玟I\"@祾X&笍?徑+ ?蛫o聋蜩蒜mMsB	\0@	爐\n`?;break;case"ru":$f="蠭4Qb奬r牪h-Z(KA{倓⑨櫂@s4皹\$h蠿4m驟袴yAg偸唺\nQBKW2)R鯝@耡pz\0]NKWRi汚y-]??傛	惌鑠E#甑yl矡\n@N'R)麎\0	Nd*;AEJ扠頕盀荺$蠽??AA?@\nFC1犜l7c+?\"I欼蟹橖>墓尋,q愊赐.娜u?隊嗢糒劲,&矋NsD歁憫樲辝!_涕媄G*剅忹i9X冟p漝麘戺'藢6ky珆鱒挽\n關鼗N?\0\$??)篺?nB>鋅$e碶n洬mz旣杆嗣!0<=洊斄霺<悺lP*鬍羒箐?畲(P1燱娆E丅ㄜ5嵜x?(?\r銙嶾"#犅1#樖儀?h鑻帲€?蹄労9庲ㄈ簱\nc砛n*J\\莍T\$蒘鑋爮硦?;Hdn?藪闞-e羸hB弄€?萐<Y1i甯f尞铮8仛篍<蒙v蝶岮燬籎\n挄搒A<蓌h戸鈭?凓卤脮lD?唩&喒=H鞽 ?薱d竟7[饵蓂\\(嵇?嶗sV?1qcE绰?x???颞憠撨_!獚奾鯐K?*熋P#fB??寭蝦Z鹉?蚮硜B??t?LS\$?MS`@0宑莣嵜>w0K2芑/庛H?\r悻?p?NA`@j@?屃鐳4儬?嘇x^;p脳?怾*屷}闦犱2\r铂繕屢ㄛ,px?蜿€炔<}埞覼潸T趌@&.#	xd沉慄!G5YZD伞伂萳M士F僾?筜;痾4.`?嶤vb3(日銀膈屮龡捘届i~寭K薀?硎嘓#\$?豦捗晕E5V黵=;裕\$豪錣T{];谊|鸩?4?澧)	堽)bΟq狔墈jFDè堢さIR?惟℡\">勁#\$>墵e4宱垢!?琫j葪霜|镍惷Y嘄贌倶Q	€递瀟 H?1%-磹S?B鏜展鱙辥Adㄡ\"m蟓Q顖翚3赴荛w:愐?詖}'	ln嬏q圐s茭I*蕚蝬ЁxLFEi肗\$fL崉t墖餳籜?N紙cQ綆@ c #*伷晞爎H嗁`?\\H蠙黊&	8波*\"7?鰯鐲牃?(?%斊?萓g萑?HHq*X鋅$d鰺Jd廃\$I?鍒0\\W欷Q嶫>4O\$匘D囜烜簺牲XN6悓滄%MN梣;\n)\r濓F?鐼刓\鳠3.}介?塑?2唊噬矨驷谩lf嘚:#9姮?3陂(芟濬苹s窯狷烜?b聵R蓝樄#錍	墛螠铇\"rIHdx%H蜡(扺1漗卶@R?P?糴.鰥0I偁h)-28獲hL箻3 湔馷釕櫟€@謿鉤.@&噏*峈肖5RO?弲O描.?荺r玅弭{橫<=d 銵凷?\"庝簲E\\T;')墵觊j旁岜諥雎刿+gm-舵嘬僺r]k祑蜣苼葵Η猻E,晓欐0嬲1叕Δ?儙錦0垝堯罶呪蟠尤垝厤1珝頣?(;O漲?乘0糀I\r伆\$晘\r銌袒+鴖焼`雵`o烨礌Z_[槍6穋u!?桽獃R9'Q坲?c獑??'f 狞啯B伾33&:t犻y\rD?n鋁 攑喖Y恈砛r觫僅v\r+x3釬\"跮〗п礉?1\r玤AW皺⒚wR齒0?S2^儝傟痳娡俿蝞L駽!━鬻捜墑语煉抳裕謩鞶蕯簝篔D;?C拕埲?暼?膍6Lb/h╠ 塓,;D?\"V,#m胞e\r猍mET1r日赱蓴v??夃FL薻曇0姀纮(穰\"爞殸2瑗?{???DU挭朊閈\墜\0譀勯禍?謉<湡B_=%/&赛H尯q\nl唇闸g渽2焆蹝爓o=綃Q奵D湕襶\0F\n丄`vW筏瑴C擣邆鯑?l负T?睻猁/t3檉t`縣k銶鴫G?趓2'麐\"CS铅/雅/a芜咳菑G @p堞腍}NjQ魎Z侀U荄P憟戭鬴;榽G\\s1垼嘻iT?燚軐吢嶰鬙輦鵜R苮瑡.琘 6)YP?\$im?Bz鈷*8O搻K%?猾軀€伞_n峔0捞嚰擀}(蕨BH?# 懿r痲@邅 (UIm挃ou遝蔧瑈樫巘8o?仩扦\\#+腳M\"e)袋銥顖鎍忸?i杤?ZZ羂0H幨賖气Z`寣炑e騛hd楮螵)G冭紖w徃ㄧL懑魎N餿乮癨$齈*zP.朒?岁噦?苩,濳>揃O\$?蒤"D蕵寚Y\n'^Z/(D鮀l檳?臠玲U?H&-蔰h衂頛/F‰.Xw%7\n庳鏟<槍?囖黢#%(	&??麄JJ	A顖?4錒A\n癤蒝,O贴?蝽(a\"X遗f餪俓n€ 	ㄛG?恝棅蘆2H靷l\$.幔X鏔P姯 蔦"Gy婽尝@z\rAq懖_g?┤郄v鬍礱z蛋n|?	彶0a燠q|<q锡偤+裰廴錃b?'E憿車O扂!沿屇nF1萟?h?h棴{ N??痋$I\$侜搄?娠\$駔婃0枓FF授瑿?釯&2!Q駽襎懭嗡I?2w\rRz€扺h葐m\"@被A鈂\&%刓\/偑梃坋%?逼\$(\"&\"Y螆R矂??廍!抐F?蚶雑2燫帉R爬?剙獻.螹,g?铪C?d{\\?)睔{钷囑O谈zJ轥P??\0?3J嶤hN弌@0o5*?w?菷餭5儼eDP湲鎢?箔bN掹叓靀.硋UZ墿Jc??躜?,v摌*摐及您'产c{:Б6b6甬〨痍U%Z嘢笖瓣~蚟,紱'╘0t(劏躙"04b腚槌C[@p挈\$燼皵b-8\$/嫥=	坵蟊娩翯睻M紺刚饍馔D4/	Ao騀*ro栢l;6tbb韓鹕硢璬3*2(9'铟tdiH滍T@揻鲘礔t9?ㄏ6EF怘9飬KI?I螯禟F6塩6aCL衋 矻\0*俋戗3?瘁H铱&q28'6\$?S|A袁=t盶"t師镕褽N/=qP嗗 掅7腟J丧P睮'N玤NQ凸R'骿鸈kF①S2%Sa|胄异沑r.鮔R詐*1齎B匳 銷僻誻M嚵U?晣\r祋X詸葽慭"隓蟡Bb亓;H?O皎凿=鍤Ut〞媄穃n€&&阦9Y珂鈘Gg甋\"F?\n悮\$薣慤\$k*),摝1[+ c瀰:P悠;VdAV諎\r驢峃~勩靸\rGc9H/覩?翏W3s婫4I奡SRq&飀饓eC]S?%Z秂e.莛鰉I詴V4禝ggc8膒撹ZYнgG6匇袺i晈e礯e驐jV?秌N/4舊 2漐V穒6栝<6嘦< 紒|{嶸(A\rn侭B袊O6?i.蠶?孲G/籓昞$悤=f魋6wOpyqv玃柉;W#9w&@w+ZV肎V汽2丼杸P誌報栐v	;Hcv圓qR癱盭T	mc(鼧鑤U@AW舤83Q錦0礎Uyi鰗M罥C譒哋y謚皡7淉住zB弡?KJ椖蔠?K4弖.阾W笒讞}#mV?V嗿\"o~騢鬃my鬏€?=祕u喷<I0#選暺N?tv竰v觲3_僷?袖(祻W禃刓"殏p?u弤4;W鳴xV-5蹆'/??xW?噚e,T辴?iLm氊u:WZ?墬鳾e豊▲7鱹x炡W<祩-,Pcu梮+鸈葥4sz+sNxrU)OW40aU拫弚vS尘歈yp9\n從<.Ш\$c怐萉 +H牝	04y:鯹 覿甑]\$P昚Y涠aUC?拡4ir\r€VR﹨敍嬄恨>耬>w肃丕芯b縔JE?R琝r[']^螦X暭陞LS@猏n姦0?羃恞+癜蔘祽(藵HM?y轟鏫"&jD`y閌D;?lx衤r25?蜤\r(瀴\$蝓?塘ciI鑾d|?焢LVO4夙NZ+\nD0谫鰮桁.j碘臷\肻n刭棌躁A{櫘D魃0捤+(畜\n薎PI6挳s俥批Z9r?aX咜闯_]*忏厎:P愝J資bh~cL.皬c慃珕麰=瑉&愨樦q鐡#c璼摥悍晍C瘔;z矇坍3柛2禍Z绡z佚EY晥杫~?//闯藂=3?I==邡敠@€甛"+踽_彌\0万釺C\n璓z秷>t黭鳪Xvr&:糟 羪郴\0?o?綵(嗻[{皠恇泲2gde:4[婔笙RA?t簣漉p?暔	X?︴B鹽蛝窓婙溠 &x8膚倷<鉙J沖x哸鞄@";break;case"sk":$f="N0浵FP%搪?γ]嶇(a凘n2淺r鍯	纫l7盘&儜厞墻沥诿P沑r裩沿辧2洣睍埦5浳rxdB\$r:圽rFQ\0旀B斆?8箶?9垂H€0寙cAㄘn8値)佽D?sL阞\nb疢&}0鑑1g娉踏玨0潔2pQZ@臺b苑嬚? 廮0拻删抙挠\rY83橬b阷/苾Nb渁冰aWwM\r婀+o;I敵Cv蚛0?缷肤F\"<耹b╔j豽&阦崷0曥<汃梲n5栉驷斾9\"iH?躲姒儃T媿恽祝C8@脴顗寜H0o跒>忬d珃扆\n?H?殺?娀j?€P?わ`?簩兤涠I5榚KX<b? P垬+P?鉆繮労掄)盘`?嶃h生32砵?圓聵hゐCp?嶓騌- I樭'\nc食\$崹s鼮嶡P犗HEl垷繮愓\$?铂64ba?▋湭*NMM%4?N溑繮?\rA0[Gp?#~9香p梧讛)兏漾\r鯃B朌.9乣@\" ?销儉醲飛吽錼Ar&3呴萠l滦繼)琉趬ㄌ壗c0007亁%\"礄)9U浔*袕唿3`?巿倫敉Cs€峔r	扸?n?'9	?輱ró庝諶寔?€N仭 儬螅h:Z;!谩圿(\n抈%?蜝P襖"曛LV9??\\c?A誴 bC?毛?症洗願鳄?蝤CX嶉鷝鵓揹\\22@P簟+C傕&%譁薡>9白綣蝗?5搨?宑車\n\"e岸谷舾帀秉苖畛x山Yk栘鯔Rc諮鄓E檅]赍T篰鞎/]氎p灥?揓韇(聆>~穨邋eU?{~椇旵?\"gJI)伡3`禺塇O娙P獌&y!=a伏舭V1a櫡@]蜣M恡0唒耛A0h胪眴PP罥)	膃*Bt/Ma? €!?乸 侴X槶2樍脨mm閯r`T蠻Z轮CeT;-備f儵)\n唨浮朖薞胩-鋁焹K媆"媭.%壤榎"萛$櫚肵yQ凩-陈w肻n轛1l騢鬠娽剶捁*E廑h%\\8栃哣m齭畷只Wxw^*醈/U罹Cr	?_Pp'\r狣滗殩 €鯁禱n勏k?dH染蒊襃奍鼖 騋	?')&5倶盭RI沾(jh!?\")<#劙-%╧'1M@€1蕍糬胋22呾緳xOhd蒤0'\"銱怜 €霗b槉衐B'!1zt╬z秹0@\n\nt9A\r@憖?朳d42殩傷\rY礎諉痤塧狱@攏I爅H運na#堜!wn嬓茰q\0鯍襘L`鋐獺L銷(J广?h整だ瑿?攧L蚣?杺?h-态俓0虁黶柎!?@佽BB啣\r;xI鈽I	((穰啊/醐挒漢K'J*众H诳)(?0阸Dhe\rU榇2k燶n貯閯蒜E7ka堸L1DX#@爌CsA%喜犽歬戥?膜!嘝òk'銪?r鄙('勦@B€D!P\"逰(L否櫀訍C揟v8錪t(IfA%s忾啸PE艮RDx眉x銫f┙埖[F膭隲n<rn挞[1愳9続B鶊厨T(	g>凪肑s卍禱n??x潺@螯:骚>Z脄莟笌l\$枹bLiXや徰@P	]\0R珻DūN胘扟U硞Ps6r	釆+筓&€3鍁J?`apiI欮竕?D酚!β`杀滼嚿\$咠米'P!)撃\\詯opB鷑蒞IL碴饷瞥圽0005S4\\O賔滴xt鍐;﹗装F祩<虷rI蕪b蜔碩斞vMz?tci1Y5?#0劚嗱?dI8*懰聮~.鶕㎝枼*V罰*冊H.W艂eH狕?_鬥h 集4s2侰[L30聁?PZ<n戢#*銇誳'X髩蝪h??`\\y庚湒1UnS k)< 帓箼mP淃嶪?>屲rC血?椟?俁^ha梶滆=A襢Vう冣爄,@h?坰~蹛`i碚籊p牔鑬:耋?1?€筡r 摰Rθ鼮E:??佽淺$鈒?B侊#*E9vz嶥壊鮘n@4愢J诵F奃- b牅20錐5z\n iY鶿$鄲嵠矼琀?w*a??a仞Σ儶Y妮&鏳<灢]愖V赂?gr磜鬠\$佱3旕藥苫渂?hm^齻,#l堃秭璡\(凝Z叙鼑錦0r枋~I 7鋷\r砝ゅ?鍉I缊@\0郌\"\nBqk.9jB逪\$r€蔦r劀	將7@豧@惗\$I铺:鑸猟┢(訧坆 餱@α&j^嘇\0SgJ@g纘P萈刃%G p\0J﨎`菒忦D\"0\r'鶴惢\0M-鎈nm=\r痦屈{雄=#點Cm咵&抹.蝂觐F傛埇饰ot\$伴q*&.侌婃.n斒螜\rq%蔎1R牮岎o\n姳^``旒崕?C岧惤l眲捡堎q睉1氋ZE1頬\r莬玡譧轡rFjIB,lj`郍闃鰴?fI€6&j?f羮錽,侍倹j\\浡坬kj搈褐猱Y?wP蠭Q 碆,泀轋虏O睘賺|Sj'[\0鎟??+1詊蚏說vは?LrjeRb硌嶆z餦\誖x:嵻(B塡r瞦\0忔荩?騡2湵驋黴竊挌9銆家?c&z(捊*菆/狜儐keE飘	bL?蚏T獴u:JHmqeQI)M+'0%/?挦脖0疔1湖mh8Ho`襢S\"?l準?gO2矀~go3/0|i闘I`郠乐'鞆 骪\u?业sl'3q*QY菤y錝7砡3r?d5硙4穹)p?啽	Q?J[(唜覷4#-?m?)摠U撃Wq撀早虩1螬2玷阢?芣>臷"J?矤 闞?'笊6Q紷?}rg;M霩t盄飠4肻"m1\"?(r痾I?広円罘-篽彀X?F>P2鹩擯@庨広5訨?	F-o	b@揷h鋨\r倐Q牜D?E?\$^齻B9	'虶萂€`謥泸搭苇!Z8聜[艪\"m8:D~Dn?BR耍玕n?柧啜繸鶨b6<钬禭pQ|雬跡l僌?\"q{帡EbCP茷??~?*狟#〓寛€?	打臏\n蔜I胇?RfJ)#dh侰P~屧2\$G\".wU#?	嫄h&m綣祙/兾j2s\$?JdJ囮gsR樸?7\$樔⑤6p\r惺嬪俓r魄?镓?6n蔣\"u?骳P\$闸p5c@'┸坄W-C5玕$萖屢aT`?+\"玈淡D?砎\n?*P?bR	肻n6W#T5銜FX犼|u鳋(q\0?pie#\ndTM幀9#|uT1嗠[B遀u履蘛	kuXp潇琔g琜-曉6硻5錎媑f\nvC愇母!爯	\0t	牃@n`";break;case"sl":$f="S:D憱ib#L&鉎%搪?6涏ρ嘎l7盬茡·@d0漒rY擼0殠芚I 櫅\r&硑涕'斒滩%9惀銳瞡n蘏閴哵 #!樞j6 ?勽n7偅F??l婭巻斮/*罫啇QZ╲でc旞襝棖M鏠犆3帥鄃#N\0豦3橬b	P€阷擛s唭Nn鎎怂蔲償.置栝哖l5MB謟67Q崰瓎籪n淿頣9n3倝'Q姟導┴(猵峕/匰qwNG(?St0溹FC~k#?9琰)?庤腥棅`?崱c<M狮楦?\$饸R愾%Jp@?壊^利庺1!幐止\r#傴b,0丣`琥鴣B?嶩`&牘?專x?巸!?杷肔?A驓?R< #t7蘉S稄\r瓄J€竓奯!僜\L鹋LT葾(\$iz矲?覜0*5<尚l|h 寭J?緩残?H襼0宑5嵜8@洿/冧 信觝\0嶤\$&韅?销儉醲颽呁礬$刃玲{?^)?偢?46?L|椇k?伮芒Z\nx?0?担 拇奾 ?禣\0嗡寧%鮺.K㈧磯脇3}R2`+eB妱盃臉巰N*b鉘鐛b乩訍c樒?C`?宍P丅\\甤摐寣?赛	2幦Z帚?'?蟇+跃毛?衧写2C:N綷rj0錇'N%44?#l槏&A	\$h\"\r鉫鉋鄅z堌63捯(1蹀迠b垬?9祶v嵙?.=_*奬r谝*и\r先s?;ndT刽蠹;\r?жD絓0檠`頱M}苾K┃乑Fl??梢牀夈%揀Yp奚[僷蛳LC?O屭8@?&鹀\"?樰\$:?@膠鞡A戾蔹坆槫乸 ]\B秲恗h閈0r兠Y?BnC?:鋢梾CyL3蕘Q)怭cL湧説cH*竄佁汨G?\?b夽,\r匷 d蠶?卮(e羧	/	€フ灤U奯E抨\0迈m曏絎a噓姢Kr萗K07,睦冇m哷鳿$喰鄀奏t嘸?\$拌[3增YBh0s銺?釄d蔓mゝ拐F?dUタ比€z燘KB亜3ER(鲾蛐|.ESa?俓0芧櫊i#崽梽\"\noO CX??i黒r!n苔#`H\n\0€€RGI2媣?掟啓\n劆:镕c0P←唋覠uF呙xw詼˙燿輎.&葰 u褦?G襮攂5 RA}\"D冪,E'\$蔼\n阡\"a渑抪覅簡\r瞈nZa>橏萂R!寪*x=O駲倧貪蔂呮竮&酅'?‐0B淤\rG^怈袰BIG]S\\彃f{G伛#?M?濪?h,eF` q!2櫴B`	窮\n搇叀D<崣?)C\"f犻篭$连V帲hhI鑳畝鎱岰|s漈l躸桳?8C?O癍徠稸顛i!N魭谝Pn\08&a@懓聐?檉郳\*\\堽6&??)f桭JJ.笪撁偿櫹€瀹崮L蝠蓡鵥勺藬\r;.d碎辂慀ぜ惊4葿滢櫠Rd1鬑篱}癨0Od蛒€牭%\r婥\n藴G劄?v~	?梖X@XZ1嵘憏鷆訹慔敶陳≥vI哱0_0浐F?暅胇鎹憂g!?4rNM}筟lLL岷0軔?l"q/嵰蹜B	bq]叧G芠搼訍\0俢磖鎈\繮F[d撪]瓝!掽攛铗?檠8C	\0倶4箪颛冰蕔陕鑨D蛖?拭0?MFIZΖ0籂2戥I峵莛b瘊HA?(bn慭rA浾C壖愒Z昤籾殖T哫6譁讬{_共▎睅膉€籧嘄?舟;\\m\ru頏∽Ol嵈K额咧泲f祗g磄営踪6菪籾9嘍d楘竮扢鯨潲圩r铧蹸荮僶砬An譚漯7qL气蛹[唓?气乗nJ渻or\"肷8?埸?庲??J滗E窀&拁{	,:P谹}VO 卓?灀,髙r秗p'm苔??:L*s琝$bvc0\"轰樞綦篭\?R6篭\?辙糎ぜ2D{K祃雎扊5kR靓埝?=.胾Ca?T?拸?嘼鎅v豛$\n陣+甎:啕韣l;璺v譠ri瘃d	揬0橶Th孿$?\"类旽r?¢湏パ崀_蚛$勏?彚]練z\n烹巅\\y愋9潲┦猎Zq4 \r諘?竲?#坤漓燂鞇艟炶榾 を塨鮘0凱b?k\0趰x\r?a|搰~u\r橏`荖魀醢(盥t编?G9	 拠\0<靍`州-猀m勠-H匦F匕L PP猜U怾.n\0跕役恔?0Ub?熾/-H姯pN攼t勿∩韱詪7lū,F吼率k!/V鼜\"e胎p鏒∥tv俓$胔j僷6L靍FX??hC獶06BJ	猞.bl\$59僯椞斶玄窗?凙f赝卬=DI昙]\$W\r0瑧\"n喩摄wfX匹d(Pp轢眮\0?S鬊b谁倴鱨皚\r骅蟩廻A鉚聡gpB备NLDg釾f.?风V簨\ra\rc\r鏫"HEq呼憞	N瀿Yr	 K疫侺|&g2絈S匿v严\"@謏€皂裣	0癗O.#F`脿?`躳懁粞堳U%匌!懢儖?d&瞈r\r襠`p?ri\$綪襲%⒁e飶Q R??!涯3哸#Rl甞,?n嫈瞤藿,繬1	甭=挼,懡*2?m},c?荈蓑邀剏q?\$O-B?臎,?补'眧NcZN瞈n迲 LD'傱6\"?RF旦?嚔荰M1苕皑(殁=塩嶴\0b)A4C5揔蝟4+?P&e3妄+始囔%餏L媆$蒨?f+38覤馾樭	5栻m?5?/Q9休硃a堻aI蘄犡k+壞麐h沑0??%鄬\"鯥L8郂\n牗繸?鯰\"饁O9Mn-@Q坺摜@璔6`獳輴菊禛*殦p?\"?#E鲛惬1dOKb/` \nB霺l螨┼<dN€脇gN槴氆 :-气鲫铨C%鄻\r贶Z沔=孢H據:\$躳珼儌F€?特,誊螌r孟腬"圽"&*ɑ睯悶`k~擢L-?埗摊^wMT#M?3c2隀类\$ひ跭Ch_蘮kg%@耚rt鱻x罋巷Q獘=l?I祆+墩喱S€闓\0	趄n#竚 ?鐓7邦晡鉠0塊\"b馡6D2k\0険'S2k|軲s?RvOB蛱Uz挞8Gc虿n";break;case"sr":$f="蠮4傢牳4P-Ak	@邻6奬rh/`沭P擻\33`hΑ蠩あ締C‐\f袻J獍_貲錯h︵R苽鶢穐Q	檾jQ熗旭*?a1楥V?枣%9惃P	u6cc歎鉖/淎鐱繮纀2膏s\$_培T鶬0?\"u蘘頗憴-?諆AcYXZ?錠\$Q?玒宨q椞耤9m:彙M鏠犅v2圽r岂冷i;M哠9旀 :q!勯历\r<蟆勁说色鑨璪緲抶欮D歲凪|];俅RT塕滓擙弎0?/kV譅鑲N?\nS?枫H?<託谄?E襀?	昏讑轴庛p@2嶤愞9(B##泜2\r顂?帀?Fr巆糵2-d鈿摬E欴疤N贰+1爾偿圽"瑓&,雗 kB謤屡4 夳XM爥騚?	蓀禂I憉2Q苋s植>鑛%;+\ry燞盨蔍6!??R普斊?Lq燦SF乴乗$剼d0紪\0P堩晃X@淾7V甛rq]W(痣嵜樢7孬Z?-稞?棌鸛孨H*歇胰_>\rR?Jt@?-傶?鬱?	!?W?5PhLS矽N穬隩# 	Fy8r?取\0?宯u	醁n1G.??軅0覆D?乣@c傽?屃鐳4儬?嘇x^;鎭p`3呫(茹湏%呩\r睕	褬陔X鉷x?驞?]Kjh{#4T蠱\0嫾除\\玅RクY羠揶偎{38?鹮牏6蔧}堍嘎9\r袗螒劊\"霞鑐岂?松褊鏫"椉趾N?蒤$鸈笸Z32谄 潵醞{Wn育&P0帲d侞#`?潞迄?蕧O?n?祆?⒕哉+夭u庿?&钖?o;撼穀0澚誐鞗C>W碕<待=罬篼轫	櫌驉蜀?辇?gbJI猅[镍\\藤媖H,0歄4﹗冀⒙V╘n'噷驔rp萆搎r珳姧T灪圳嵏6d<j涴f纓唹惣o垄 敺4cM? ?萼?/`鸄策D\$r\rb&隗旲DD抃")垫d桟肅\0)#rn豐'W!?芢0Z尿[Vt*髨用py誦嘨脙3?唗\$tR(0唒聞爎孅7S甛n?-e宝uN溞HC\naH#A斃?b.驼弗傟yR!\"慠譢r堽5坙mT7权绱绣\"豿g鯮#D諦諲蔤0s@+黎鈿沀-o 2xkpE橒82郔艃\"uxㄔ褒?崉&?Cd稽\0疑襝#d碀?芢\?熨鋊欅=g	b,e愌Z8I\r±鍐謡'圑V纩?tAO\rm-##	M襨銐e裋\$?E朰1nS9丁窞AB\n,嘙衟X\\颵\0亱喞耴SgC5HR=?\$?b鏳鑅駾i tb泦梲薡楥?3D感鰥\$鶤塽/ズ-R坉B俓0厡儷案?竇\r玤z,^ 啿)0c濎Bc恟巂eq9C瀡邀畸郓VL\r&υ艵xZ逶nvEU,揦6??鮘"{厶O*CD5\rge R酫を擯)Xl暒Iy?告\nH欟?;G=搰~fFA秏襐vY鮽拡昃巗n偉NIADY酁楼棇湮鯸$銴R黍\n僷!?Ec墯萁?j敨鑍?T*[:y坉獄銳`Z俷QNT臁肻n.:rQ洷f氒捛0T?E歠耎 罙#犱p¢z霰L'?N受瑿倕縻扵d?	?PT爛P2%{仲狵潴\r伲躂厐)Z@.娧?(ヅ姱\"/L乮b睬0?埞騎.+颽V痚&齃Z?&\0柫?\"05妓k拇臸篭"W夾戁v殏森\rtY,i[G/)晏看p契産濲q}D,A—T&璣8单_嫝8穱0?擷W击1y抌}r?铃U返.秼?o扺P谌Q9魅臷"`┹	4だM论?ho隢澖Z鞠.吥︱傂I鰯&O?E蘗陖嬪弉?r權0蕆頃簥╙B!n咋睸鰀缬錍?把8銙C侯┮裱A#@餒余r7圱e;愈悒Z駡H)壐檯1Gl囋D3潧Jw掽th蔬崊'揅\$耗;⑷D鎓岬袇I?B\"\\V燜€爑哠c?君譺豹V\0E掻墩O羦钀BH?po痣で軂j硞蕨椪6柄銇x 箯蒬45p/h札郦C绍?0︼e3UJ玕"r嵜餍潽?B奜苕忊.〇1?鸺萧q萰炌?萝?k探pnO鸤0閿Cf袉醷镂?n?16-\"侯騍\r規顬異kV虐:\"襄0B\"Hp?zL 鹥@餓x.琙焍u	?筡n0.(.罴@樚桃F@頫$bJ热杻辋豈j[聹萛$P賐P?⒓,轒罗m蹭嘼RbD郬FN\"d*?E媛螗J划eG瀄$?%€]埡詫8早紌喜|\$0l\"蛿1nW,喞}d餩D阼Y?B荓划刲鴒b幋甶\n-餌惕7=Nf煇泮祆傘憸箮N攛jPm?E桀螜褷4训懟&H{+幾\r\0嬔港ゼ5乗n螑l3ィだ}馱#讨も荁飒EdF@唰b9 \r欽树R#r5lERNI\"/?[泺4啮睽[癴.Fs屠)m趡娩找.悖0殷la憹飭儜?h柔LG(j鳿r 匔 騲?貫褲砥}颌萃覊M?耴O駭7GR?o?傋-擦2群?衮?躮,QC嚣︾皬\"0:m?锿鏫$&[*0?衆r2\n?(齪U2#买'囹l頫"-\r?b35e\\{0翁?Q骪r髃r次?6U+\nK特ⅸ9&\"桢oG\$?\n沣P顐% FD萪39鑽:\$灆敞v'+;Y\$By.%餝l馥餧? 炉<}+2-鱞k盱!3溸s??阒痫>f鳋ョ扱v@m\"?嗚賱材5憿挡)C(S7捲逿A\"D6搳T齿D韓堀?BG砛0螪搃D韾n弉嘣9.蚯7赓釶W.礃鑚>+橤攍勴^黝虸弇I阊 伻楧oF?湮笱81k0#鞂>皪KQ6?f~蜿KBH鯯#M觵/臢揃+陛E搩N鷧&噹蛫}h聠t栤B茆m跤嶟幔P冓y?\"1Hx魎鈭R?.?剚骠\"A~?酖\r虻嫃Up槙%E礮)麸H4OP/霩盝4a#]W'礩悇S魪採f騋5QX晴鄨爐仩?<4O[B\$oC蛘穃\T鸌qIS(>\"漒\鋅0\$廩S?B曔\\58o9HtjuU?tND哉?訬JD5?5謀$丣?寸MeF)宿蚺/黰T	缍赜jJ萵-	k恸鯱3G)e?=禿KEBMo窲簃6'壑v黦^R攭.?誠0Ob盄柔3Q3*糊6f之4心i4\r€V埚=PLv.粑*篾t(@屗犣朎廓\n€爌Wi揽?sIDvr綟始帧p?fJ鑦烗3J<諴叶栏螃┮JK忟閑JJS鑼\0	犧縺/,%吨C栟?\r颡QC騅磤家Jp,q#%5?A霜&*龖sx1鼲睊1	wCH{O,e窽n>町朅va€3a娀{Q?P&讶軝b?衭|&R曯	w秮坊(UZ儣踾姿~ru噧齱w轅怴梽8?YL矏塿t4碶$劃Q鴛Q抝?尡凈祓?疒謨>屝?耀Nu齚\n犼\r禔48	t脦L囄l?/聺{鯣\$S G釄w觲n%\"s-'铱売zD砑4矠鑽_饮娼.?2_嶛.`";break;case"ta":$f="郬* i蜡F羂\Hd_啱曅+罛Qp烫 9偄衪\\U劔り鬇W∴(<蒤\睌@1	|燖(:淺r嗴	怱.WA曡ht錧哛&戍滖\\祦涕覫`篋甁蒤$蚤:甌蠣X挸`?鷕j1k€,暾厇@%9惈?|朥d冞j洇笀C埲f4崋銇蛜鵏涒g采鶖趐:E5鹐&瓖諤.悕曨兯qu僕[曡琝"?@駇搭\0但,-舡一[茏?蟥€衋;D鉿€鄏4潔&?準s<!勯狷\r?啮8\nRl壃庶灛蝃zR.朦洩薥n8N\"姥0黻鋯AN?诿卶`矫	&癇吾%0dB晳狟食?B愔秐K傛*9Q膩B浝4嵜:緛斅Nr\$兟泞瘧)20\n*嵜[躯嵙\0?Cx浏彸?巓?斤蔸\$\n?O勦9庴P揉E葕爤瘜R拑鋃末抃0锽nz揲A昴ガJ<>鉷?嶃r巰K)T侗B饇%(D嬰FF揬r,tT杍r拱D渗?=KW-D4:\0磿醛]_?缏-?玏˙綠 \r脄嬆6霴&藃踏什p掭裾妧I壌G奈=创:2介F6JrZ襸<弓顒CM,鰏|8?崳-愓B#?=孄?L胿8馭<2-ERTN6埗iJ嵬俓n窏\nq?bb橋9俱m柅L┧\r\ns;?hyz玓暕I??aX荍RR俪堆钝欏諩t瑬It涵&E饖[j庒ndF末@ 寖l?滉騉滜>?锦撌癯p?<C敢摾麦O?乗0y訊愂3销儉醲镞吺/7L醫?咘P_?t凩\0|6蚈?MCk頄亁P汧追0`T唍ォ粃?\"榩P蔙暫篣~雧^逿C厎?騌N蘾?i@bt喇~0I磻凝R嵴@??糗WS\rAJ#獰俉\n釀9鋹%埳} ,`&蜥泚爣﹤蝩:!BB!俻冡9?狺6驰r'幪0嘝貫癮\r佋2曮劷烰?J5`te剟鍫躅DW2朆` 唒戊傷跿3么じsH\\m皈桇j饥g埍fGe黸売Gi0	5dIZ眅\\?I	I薔,豐運"迧涟6FHa\r(劼?爴:[嗘3#%r掙DB\"阡攛G?襂驜 €?\\控椳]?Mt?总Q搼VJ塏躎乙鑌\酒g蘑%媦\\?tCы)gq]镏`.d\r,d犒牑攤冩<輸璦颓\$???\"Yσ翴*MxG燡?M澗4C遡諠桕xん婟7撽i7导盝s鷘M1CX7??	发鴕Gl盥媚?f\r?鴡<\n伡蚪犥AorN]虇h\ngI椭眞+ R@ ?後嘢頫n?+) 孯\r檰瀞璾+鎭4Z((@備d逃HsV∈幅!暁7Y鑒(gWjt鍓鍨`Gy奅^Ze?Q玦#\n儲\$C緲O冐Uネp@guR?茹y辷N谚?D摏\"嶪%罱S吇T-J礽Y%ぢ垖!)禡V孄b[閑毑?c抍€?殹獲S侘竜1纡刺€ivJ\r蛀]还wn踹噖傗\\Zkx颸$7<朢收+衵T劇fT.琬c纴姾Hf|盽a\roY>蛪铧(喥攦A3`*N堌测Y歕r/勞咸鈘焉RE-\0b<A??+f繧娑<谳-k峺tG澍唭鈖儩⊕蔱H哖–櫥蔋匫&y?鄝\01髄抧]0?Y訪蚛\狞纇s幦\nj曗G^|O)纨'哫f灻恡>禧:ih镁甔Q坜罶拫{R?咵+藊豉幵0FG掹?kNGCL\"O入k幵lh5[Q\$3'f浖r#&泤]&灬0晅n衣潾K頄襃!>纲f蓑炠葐誣|WLm;U索s?鴫婐I#徜?杏軄 eX箭dc#@?嗃弳%?,??銢u=m嘄6都蛫腽▍\0垄炿a嶅4fm?忔pO鞃$??F鵲鶞纋烃~杺嫎?i嵩9H\$0Pe郧嘋螓U六鮏岵?哘\\郻隌€)宿7阾*i	u肕\"?椟q?膬揙?襺*t鑄脈菼簿r韽0O	纮*匼0B燛^h@/簿!?袃违隖棇暔怔麔kW埘(€3L阡J敼錔M妪d遂??潥2暋刌夹鞰駨餹惉戍0逾n巜~鴫?_?X*B?I&J6r栗覥 {ユ5蛒琝r|幃?嚶?\\欕??0镺揀廷E鞇萜d\0鞀?鴐齖$<|镡靰瘣08G夨锊UxR素犍畣覫鰨搓~??隲$逍F P\n萖毋?鎲 ND&?0?i凓€臧\"6>樈-?LV?\$犖\r\0@淹 湘TTl?嶬k慕厇絓r?HHL1朶nGfv@鎈r嗱儀&?\"+↘%聵€r 魧璅4挈對欭堚障WO簻鉌阷搁\$t爅鄦憤~X	?ⅱ\0抃r嚷玥f\n`仆谴癒?奈侮╢=@閵K4+蓞\\傟?QD}j騊k/褬T\r癣彀zf╝妫1摩设JN谭q旧o姤宜:?K衩腱N㈣~€b,欸+搛	聲鎆脐蟜饚萹舁慂3蕽1F齽r+,k佝%聗遣>茊R?T磀m!p€ 殅f褱7铺谾jⅡ鲫e猱憪d8螥\n€`1潢jO 嘀頟r(SpRA鏠宆1?/t9?唈+隿q鈫鑖鐓?p`F怱著~悫GO	a按/幸駱渒仂?趐,~K(-?02纣Ol绯/hAB\"莩,fK?蛭轱^堬\"仞!)?-\"s2pR0)	!楌r倱I矵???'颟&饲.)a2掕菀?\r?-??,-訊曳2R錃?赟?s鎼2曈\\泊洳€	t`@M 顜夎V鸶僄?媘蟴砺?烯>碁C\n4瞅?v竣?聤#FGJZ劝'30+<L淕H驎寉5撎!覾"蠬Jn鏫"塣FB讑桍鄢PR锧T^躃8*e阐~慑鬉)\nJ湷cF嬸樤'Gb蝡0l?r坥QCG鼴h?蒁Rg?Cf隊咠圶hcZS?翘8jo瞎魻?謓0卦)2╳3嵿菠??Hs;载NS烮k?\ngPhR傂5	N銆G?.罔翮<4挈e摚.氂\rSs疑皂:U'S硉焅n^澮|Κ8櫞鱑<窌AU5,?h┢!B\0<.皀}舩W?@嵮L繮媊虌ň飙烜f鉆c\$<#R8,鬉.靵+栈0TrHg\\戉钎s<镄?醌-巃覣Dc^?1	儏帱95S憤_	P跞?駹e\0@\n€蛩悞┫[,儴'翎'j|ΓW訷&巸cu1N5iB礩B6\n?s滳Q?=EK4`R鮡5d[dP=f+P髨濼U禬/?VX饲f?0?V謶誚╭9J\n镻雊VJ,ū<鷗誅v噆謦T	lh#l胞A鲂Jt盽6踘6〆V醊+騇e2R写p觝#Ig^烧od1C/u3仪\0003D?籪鯤?章窊麙OiV贝挶肹q5Q,坵j?rT?-Sy5眲?si〤}u衆rD遇裱遶VKm昅oV逽餴%恸T圎l#UW乿讻1砚)匳WSh譝gmTn%tI垊C]a	0牸c[ir 肐_哘ZMT蘃+Wx譛gN_	2 Q@蘈鎀sf篁埿閬 p稭╀Aㄑ2罂9K摞x深~&髚N_|诱}7堖b\"攥焅"%(51|獒bHR?礭5跗f	)Y疈6 袟IX\"屮&?傦渿嬵駑诐5s<o]Tm冊%0yn鲃鮴Y鴀}rU?預HA/j匳窊W褄?c7軷耳€樺s%wV2乭革T8騏嶜=d?醋墜E	b#%&&B\r黎婿綆伐h鳄yIS懸]X儂‰(鸟箣{z%攗墥y+掲祻衏By7{?%墰膄炅~yO捹S`粫擸%\"瞰樄mm7褟HRO飞 v1\\袀?&鲪xn8oD朮絎闭訚i*ZC欿Q?j晅8橗曎7鶗桏|ApY鮥?j7弆.q窔?臩柢↙贰?擕98in壆澐-旾Z*蕴珰I幄冶眍%\"ak樐硽?珴V訢2桱矯陣珦7虎Un蔸y}G毳鲭鏳糸燍{v7濠.?D輺Q]^鱡J3橔躬z 鷈鷜a`P56%x?o:j庚aG谁禱"氶@塷e%N邗v窐汑恙9mW筜q馡?聱М嚝8擗 Q鱴{+?\r旱i#叧欝匙+惫Е?駬跭睮\r?驕[A7禩/稓偷ZS禋V^喘cy}^賮杙wT雛F¦%酔?]墥:禧?[汏姝n夲黤e芣\r?#礳R印谘Бup	嗤郎pWF?楼代\r帴M蒂\r?#獮D髧:禲拂郧e氱摲=吏-u蟫s^|紎溰#/'w邮^徬K痀蔅绽?q姑挱迷墏擪8v厧暨n賾碶"\$趪雜:歈O鲚&\\3互壢Y? 癳怽r€Vj`猼馴實P艀揿\0汰F+缹颸0踈nゐ薐鬖牚\n€爌d+橃?S?刐>裓n7(8H邛餣%怣.[縋紞瑊St?系椣敩H道絓r疆∈8斧反蟼y膤]	亿8? 秳I骗@n€浱 犹t駼縚F!@仉鞋AD,J\"??A?縝蟩og|諻#L齰磻;\"\naF}嫅pU啍q灝=?ds{跙妳疒塚婛曧Ky吂:?対瓆断懣w6庞?J)俳殶?zY迼2?蓿ok?翖y[i=桕5冁昿佝iB箣耜洨+官=峤9喃9╗ミ{_W\0╠c啕懵 输€?V痬vq\$?渔媑GVY~嗋>e爿萘惔.[XyeLI'悘狭t嘄枩[彡ùM繞莇尯パ}h[袌`犤?襃\"~	\qQbf鈂\J牵@S莅?厎C凖菓骴WB绥'~\n€暹駆h}儚a?C側?稯粵/肃椹D糓引?A鈐w惠z>壂賸亸f齰窤凁D矱誅N	\0@	爐\n`?;break;case"th":$f="郳\! M拦@0tD\0喡 \nX:&\0*郳n8轡0	E?0?\0ZB(^\0A郖2\0獣?珘b?窴Gn倢泥	I?J\\?珚b.槷)圽\驐SМ\"s\0C賅Jざ_6\\+eV6r窲茅5k裔碷氤8跄@%9惈94樊fv2 #!樞j65樒:飅\\?z食y網 e耲嘰0MLrS珎{q\0甲и|\\Iq	緉隱璕銃笖棣洨?;Z玲4	=j劯崔.簌癥7滵	厥 7懁靑6L鍿榾棂?帍x?\r/梃0孫诙響p瞈0@?眕P?慊JQpXD1挋玧Cb?挛胞梵梊$3€竆$\r?姑屑J倍?氱??粩Q髣煥1谮`P?p维P.錔V?塍\0?@P?\ro堫7(?\r銙癨"@恅?姐 撖>xp?香勵9庴埳籭?盘驴?盲?MJ詿?lY\$篛*U@づ?怯?n儀\\5睺(?/\n5拰8牘BN虷\\I1rl鉎嗝斈Y;r騶諏IM?€?I 皈に_萉褺17,踤m1,等;?玠礒凔榾&i黡青(UZb!N挔P翉蛗N3h輰届F89cc(嵜樢7?{蒖蒊镕馶$!-_H枖帹?鵴兓鱘r斾襰袇f奓漍\\5榾_6慴w敻v盎;荕 g樼頽踞l+喩浢N* 寖l?曾酇嶴1宱鎁+:孲晦;?;优>t=9乣@rC@?屃鐳4儬?嘇x^;鰜p镁矬斺3呫(忻E\r硧?層堐ecpx?髬}.冯W妮;u倷2*轡n勒Y鹔蜥痔砪1鯩湔!qLS?~?v遱?,扔t掐?耏'n.Ap癨n\n釀9洫脵!剺?\!逰(p潱A蠯殱協\$唖压ka床谒jN6蠒?暒嶀'hp鄫F,u\r夵;C+K&!倻凮	萖	\\跽T'阘P晵lJ昊_+|篭"c禙帗呬瑖裓r跙l却灉嗶ㄚ圣+&>?\n?漤d撜0V豂qB+T崟椘谥醈SIP僡\n\0001決j嫢0诓*坋x栦*呭嬶.煺WK\nLoue=鴂/熿v镅,坹H+?*缼?鎴aJA巋<鮏\$D?oqY瞪%皹	I嗆樸Z珆?蝧?銆?樷?悢銭硺\")?f?妎hD颁廇陚嚰7哷瀴)?襖0蛺压\n伡?疖A\0ue!掌8嗤乗0l\r釢*?D?!?AO?o粮:燩P罧讘,>圼乗0C\naH#A锚\\j/;f翤S<煹keA0现[?醩学促Dm?謪0YC貧胪d佌菃p@?ntA崠2犎!雝睽0D撚怾榻R躶裊5=瘼聑睭%{6\"漈?NV鉶'毖?\r嵋E懺砭tv甁繫N扅嗚hxビǚF閘洩u幑?'h莩竆r筛;穤镔3(eL扁紁C侚\r:Y衸骑[殐g<鹬蛟*nぷ眊讞萻V?/珯?橻hYe}D1俣X纋?堶輅痋\!氣(\nX鉤/?蕷&?佅a嗸俓0莝o`i壥[s姓`U熬jN儲c!環荍峎罆:N^\n (\0PbJ〣?X襴缽赻湤猆繮Ce梠羢鼃彙??练	O?	痫汸}b{艓珴*矑撄T?v鷉)酼瘪鋼耎T闥*邑]艾珜鏉?k`M疪)u\$.-饩+\$拠撘郈Lp達4]8q?哾l=趐遙阣?NrP秋<哧讫r檖蟿[J賋'M媯靑栨?J?蚶杻殤Y!BQ?{l╁鵯軌嘰n耈縤:琕僇?勼犍J\r2v頓 觓L?钿?T刹歕r啗小)?溴*5EzX勍禱\#昳1(篅PO	纮*匼0B燛纥靄"Pz(hu6礿xF7Jh殰珏尛:蝘罞揤葧1真T嶿i9v縓?!|4菪&佣舃揹9SJ5轷专侗酑Q~;me?Ma馱v~|颇?譂T鹳阞纪H5+砎駋@疚蟬趈鱕潺昳?挍宣龣?d﹋IK€[鋅\5Wr譁d細b'矘C強磏R瘙丟i贖局b稠!?m1硿C琙恑QG1^妺m狗隶犵7&蚔駁rb栈k劯宒謨c狀^	d腎o??b`樼鴹eF€D<'艭唲+?8舦,c</(溞(谑灤閞2'闃以&h闠V\\M厘桠+\$(S剕?倦坓Bh?藐泠′DSB屽堶c忽;揄ゆ緸E鈱8蔅鮠^赲"竌舦8\"攸p 少?魤鄛宭B,薔j鑌0 	\0@譊躙r\$l婷P岎錦r?桠鼂宵X @?DJI[&?e頫\D&q佛F€薞U#??駪m	軈\"骣儕檄L幈@昉皪墥1鎚KlE苞&+,楸B撸买馲呴5轸驟淸f?DF宬牁闱2?;?⒎\"?C( 詈鍴囜qc&XqTц繯袨鎾W#A辁呮vg皟萛$犇OJp(cO矋坧id%q萖hX酴m!e倂阞鋄?[倊G#岤孇6b\0戢m#唜9?雏▓%&it橮凞dP柺丞舊b肀闕慥~╲VA駒嘒鑁切e閿渵鍊%鍰韲匰疙D?!NA洳n8CQ(?|'	|捦?\r珈€r瑋嵑:袸,餦"閗t赕0:峭潋\$j蓜X?袌'o]@圢\0郬纞+2L炲圔匉媴F+gS-?怯9r?R謷3.雺m3e?C[nR:Ix8蓕D#03g-颏镼枃/^?9NPE帪E↙晌紤o朶"郣闐p鸪\r\nmO\n獶E(ⅰ/E笝,BF?>蟫?\r舁<sr刞!3?砳炎3\n鲹?sy+1恹堻髗\no饹ILz?\r@s陗6?~菜>szS)V0颅?RT逦0QL%馪儍?/L|搩艫餳錓澶Jag+詙EB乳磤8詣~訯骻?45A魪C餸G鍡QG:}I?銑嶏~廷韊\"骪n纩癙?\"g8舊C圠圽n裹%侺D%擔呯:愅茟.忘Q Vhr畇喐g廘<\$Y	揜}釪HHTb廙%KJI.YKsnQ-5t趶&牌E嗇璏S'隨e3琊;礋J塽>臾6舡G驠凑;S?Iu?4H說HWg坈蚯\rP?r肵h_\"愑諞BJG鏦Z縕跖[U汖2錍u揀>招猍暲嵃裑P軾銢_当掌V単1殪:#h聳im[ja?━笰B1錫a褭`臽<%Z@fBq錒磁d朙籿Q;圐]5匷JǘO^4Ru絝4u魴燖撪芴6T/?n>d鄎犎`5'hjUh蒓Y枝>€遡譅?梊$銡[?N?次1	c髱7+A謯=蹉[怠mām鯻K轱g栨盾q额D诊B涌f擋ov鹡絧5僷楚JV鵱洱gT?%喨[柵n/3ev縈v聳詨gt肅VO-r抆lV?wV咓7tX捆榎n悘	6X鯂wNw曀p5蟞mq譒vp)o7K^雏gp?	輚蛏z讞	Q鼅ン_曒(\" 譳D1?召zWh0m7炙洱^Tv愬}T[}朧	頫r羂n覯|峃衣??*侨鬮z鯲>?咮坧_\n鮺?gDh4涰'P甏恱懈4a?仏\rH攏?s\"曎F盛0`疲\0芢rm譢$С/&猞|质+\0屸犣皠妦M€猏n€爌c?QR8詉q#?盵:俌}眃-N羵鸥NTL糪"	犨媆0.P脲fVp9翳 	誥穲償]鼯	u1詄-8媷銤?螶倊廝)pU€0vB*+\0榎ry'NrdY6v?\"%2}ojM褟V寳衚╛&TU3齾草t虦狜€施.荱U釺LT8斜?坬.檒</A0<豮橰豕s窉@╠?冘釥守犧6o衆n扛踋t詅诈埾a鏉宒?攻趱7?決樗\r硸8I.剏魻y葛E;硟QY?驝/欇?嶺竆"\n犼\r耽?!碟?|[聑諌?阥柔頷;?;梓16gl崠<<硺H\\J麮櫃<櫈颏b鼹.SA\"伏68An噟拘+_魈伵\\;窼l鋽?`	\0@	爐\n`?;break;case"tr":$f="E6歁	i=罛Qp烫 9倛嗴欎 3爸沏!斾i6`'搚萛\\nb,P!冽 2捞慔皜膐<漀嘪bn)虆'壟b嬗)厍:GX夰淍\nFC1犜l7ASv*|%4殸F`(╝1\r	!異胇?Q讄%極3悭羞vK吺s宖Sd啒kXjya涫t5料XlF:蹿塱枺x财\\鮂歛6?瞉7泿F	赣嚎橝E=閿 4\\K狵:錖&郠T躪7勿8袷KH0F灪fe9圏8S櫾鄍掅N脵轏2\$?@:廚罔焅r僜n劅寧趌4n0@5?J€煩	?帀Ι恽悇頢绊B咜/払徆l-蠵?5\n6籭A`袓僅 猔P?嶊`僅嫫敌J輁r覀堷蕄牲C鄮i8?C眥?茫k曻嵜獮誃} P\r餒+%搋买4 4Jb銔J傹#\"7#蕡搌>C{棼?揬n0宭樻僜r?@嬃疭刈鉎?\r陚.镳?乗0x媿愂3销儉醲颿吤\r?羠J3呴坃X?^(○趻等虙莾犚鄧亁\$筲>,?倈翓,乵4#?492+磊?蕽O躈滯?姃ú喾}	艵婻*⑿\\閯"l€N3崗-H桙?t[wぃ'帓K?\r4犗pT焭B	?|妛iN謨\$崝h%咛錰C43E8.堯:濞+f 腊1?H毾p彬仕F怨ci髺(墣湏C\r?弓M糟孕?漙xi奜\$X咮\0W苿入疅府曣柴滑陻曭敵s鑲5頗抾擦JW粥霟-塌iu茁盥 吷q戉鲚胐d:殢崳'^Oл.=\$﨡|5A脛0笼A<獀9eU76詡槂.棇!v=?`嫀n嚫專[烮?D?簮銩(aL)`RQ?!僫隋=n嚄漫Z1'臐F\"C?d檽6K霠\ra洟:G\n錧侎雴b牟拘鄰’厱~嬂芄W<|o?⒂鄎蓸l佌Z喡2CH豺C	\r*C2?.嬇t?c偊6'2啚[j\$?DEx瘱耎d,╘\I杬裓r薊.?掷s8茮b傀Bi琶E˙nH犋`F栊[	箴\$通O檈j`?r?0蓙勂夨b,a1R医骪nw搋蘢|D]NI?鋭珊 I陋\rz桼\$|#Y!R(€爎'掆E帎0PQ`{P3mMu斅淭QUHa?p,K鵆塕3码幋ME.B	c篭$岓|G燘\r3\r 鶑2CI't攧椣\$^kQ駡?FYf获23茠€楺焗IN?I蘍櫀EPB諛?齘膒廕SN1D駴借⑧莒\r蟄硖RK翗\n<)匔ZG?丹A溷津賈焛Q\"罠卩F闰%T:噽螞8?隆cS赲0T炰?X茁珆qA餦0)穮\$Rp嘰$螸f╫溪m)?伒\\q憄:鸿?UW?媭0猏0盇,0牸 乗0U\n 匑@H9暑5渟La\0D琝nq[弛\n@U霞!&[璿.譼]鯸$櫺82迒F\\蕁奢箼鮰ㄟ佪I参喅桰詠鳃f( 鑀!帚胷R皦ns_捽f4t壩(V炆{卋僜$9Lq兓s??`巉^`@怶濛怬啿鼍B\$?g毗xA襑V╘nz蟶3:襮?N葼?2黳}?r轣\n?-俓\譁韓+f'&\$疣灆?孖Rh\rJ]<\$?魭蜇Bp 腩*Ν&-舶n_仍竼魙Wf%:€9戏墻J氟紪迈A廅鄦嘰0000蒼l楰].#1甦\$哵磖姧W璂'a墤i?燇qqBz	?h棫Q艾嫍萭N陞@翧V?痀c<I峔$梐Mg嘥螷Nc嗉鱘0YF}坥儣籜躙$^o勍宣檈[c[炻飡纆19锼vn2y3f|B埴澛J'5淂a嶋g渭\"??圪???纅t%鄠煏q\n邽邷谇髱3矽锳?餾*uC?抝FH?\"Hj-+圽r劀)δ莼戧釘1蘏檄"螊瓟ǎ}NA#x頀舒RyQ葒0帣=郼7*鯻\n	/丵EXs庿\"雺浵4Fb睋2糑_`钖嶰(訊咸p韚;\$w豥(牕?x	:Z鏅g5%3翤暼V羷^h蜁肃B#_>a療ン楒w穽濣SЖ阮4&蜩:d,*鄕O却??:迏嶾\&;茷sc?鑘狟?鹋?锿蝶)\0靵\0壠螫&}Z鮌&欿:w?/f(曻m歏cp鉵x*f,~鐽b#\n渖溻`7.N@扌`N蟓f讽j诛6菩€謨吨棋衆r(	0場菳N誎&7嘈籦\0b錐'艅X徝\"#玕"G嶛V安綟葶瀟;\$賊r?闅笑A蘕犇C)惛GZ闸m禳糒榓8)?M.?颤峜覉0*蟊\"野鲳?蜀>葝?P婖渠赑橌盢1J|惃??q(a盻#藐(咩富H\0Gdz-鋢榗p\"頯|N癿?殩竡0\n蟊06\$鎮;?\\d?I烛1f咜1\nPIDD嶿`B饓捌拭?qR鮀1顚皜n?裨d三/h嚤o)亂\"€騖r}!廭譹[#r3!#\0覗qn滍zゲQ嶜慯谀,焅nK/K&abN懕n鴥禕&枲@]R?+?塼!f4`l寘€镹~~.傖?mbD8R桸桚类\"聂e??尧豺樳柊f?p{OHd 2鑜36^R\0@d朶r€V潅*诸\n牗繸l+:桸i-K疃胖	瀸N€逺囿S81l^z&\n糪"R黷膢H\"殊#\"蛏韃O瞜/I&S^6f6*d,潎?ha%桄~繺"靀礐+V濹虚{菃d瞈"7(Pボ?墱x一<\0001嫆蔡?を嵁a+陃童u襝>h贑扁Q\"B#?又影?畋O燺3梯靀汤	?\$?濑岨#BCd>m&虊竺笭?員O@ \"\0?'?@鬫馒糆 ?7〦\r鏯x褀6s淥瑎幊衵?霡ds郞RL罗\r`欹d?\nmL*i鎈"@";break;case"uk":$f="蠭4偵牽h-`?袺罛Qp烫 9倸	豶駹緃--}[筞酡倳H`R仮剺甦b枰rb篽燿遍Z恝寙G鄫H犕\r鮉s6@Se+葍E6淛鏣d€Jsh\$g\$鍳啳f蒵>爺C埲f4崋銇蘪警SdR闎鸤rh″SE?\rV岹!TI绰V睉绦詛ZL暚轵蕯i%Q螧剀vUXhZZ<,浳A勳e嶁伻襳4)藹t鍧NC	訍t4z荂	嫢kK?\\L+U0\\F件縦C?圓鴻2@僜$M涏?閶TAJ\\G綩R騻	??\nK丅泴4嵜;\\挼\r?T蟂X5ⅷ?笴杠?嶪鄨罴驿儃嶃?鋽8HC橈媃\"諙夲扚\n*X?.h2珺操??)Ι媻Q\$耿D&j?脷侄琄z骸%嘶J樂慉燪\$˙22;`諣褋 ㄑN櫒R?J2l蜴?R?\n7稍薚E/d魴?嘰$筘A+熟\"<O+?鋚7W蜝蟕嶸\0牲;胮?嶖r諴狋 鴼ぱ7*嵑覙?}@枽d*5jU萞\\T?椧寵鞖矏(腷4H鬔喍w1燪勞鴁墘x?d液繮?\rrH丙?rd#脐亳I嶩勪鉑泪IC?蔯惿0嚈靶9?z\r犺8a衈廁h\\0詛醲?騹?J亁D硣胠x銬4x6欢€|禒*檆肻r赽豃A/	N麺5羂0炸隆翋pj高`Y藈臩n 卮	#f砚阠G( P?嶤t@3?(葌4^踺俿噕潀賅\r馿v)‐"@喫枵j?条s細?榶{鹒蒒]孢_3繕囎z龙崚P?崈ㄋ頪?~!⒀畡??U!~嵨魸?nh!,埨Z輩R+)Sha杀B!愾:婱?I眇*w>€JH???84⒑A卯盚纁!槅I[DhY)儀bQ:?'妖C意蔐Av沫;V旃攓勍?慭nGa8?3EG\0004b箾?€跙'v钄|?@O\nIcn榰r釐c呵g痔[]? ?嫕v.?Fɡ B\\駩廷砫媻酥O?\0p軦萛r針3?璡n伡宥€A\0uY琳?€贴\0l\r釢4敯!?0A1潾\r猎€鎈nKY?ja6℅@S\nA贩?倕u<b璁a`]舙矋BP\$L昞n<僜"W剺?a%E傈\n漟滩C?鄟嬏楥裏釕嵆訄_`\$U[lm薓?s#銓2\$?楺tKF?繫爈詺s灆?琦T)鑔啨瞲R轞-i?€ih	TQf~衂Eh?ゴ蓄于坣G 躬5f安謏蟌-y愙恗j嵋鍋\\櫅?\0伌度撗坍畉憠?~慟S!鲫\\4)靾P 衦- Z 仒喨\\嶡pG4跟鹇猂K柇n[麻u/?<^藨€肻\乗0c猽?緞黤c*to痻侏F嶑?)糩俓0€-?梊r<\\W槚丄g)唚o捤?v8G/TD}0{'鵌爞\\I郈Z5?U^蝘晰'L2呼儭拯I!氋噢镬?穷L蓇駽谋Kn鐽舠鶶薢?	ぽ9\n脠!D弲┾,Cc1絩% 蕞9逸败Z?B貐穰斷-)b櫼约J﹦CStD傩烮郔\"徜?酪胴j蹊饾f€_PsIA嗂XX汆j鲦]\$;i€襾育\r軩&B溡譧逦	酟*@y!q訥葫瀊澥3鱷!=聫\0004-團5[/据\np爽 鹕?@硌s亾a?;R楱2澳hXS喞€3_癅t癋\n丄鏭k{#fZ? 鋛殃\rs磲颴 Q?梠1!RVA\n寻ha0AI>巹pC0澕A槄Dh	薄孺涓0朅訠腺喿z)]\$嬛攴E饃吢P媆nvム啞]M匒}惙 櫋:踱%G壺?A}}慅E闔?塺3	E罆楈i蛯茽?>\n滝衡X盗囕>鋅\M灞&Ga\"u?抍F腬\壘G棹?:K嶾"栚zi?gJ@{儰笼>儹=sn}押i陉焄涑蒰}斸偊亵剭泻燧萮\"趭l崲?n鹝匠埙趯裷?幸焆颦?鯀0蕋| K?aQ侮9凡浫:鬆C?rG孡\\散踧袉斖4]V腉r眣	E?}堊婁Aj湋u凢?C(齟??郓)賡g=焅"L嬈嵨At瓘裤?*洍嵕4踇砀}凓x#E?擝^A▓!蠚淾瞵!D瞤潢v(鋅\l 抧帎f闘畳勅^DV ╘n€`磅D帞,I`嗫慵J︳[ⅵ\$劸LJP嘊 \"g^怍v觫Gr7x2饁n蘐w釥=(r妿p予BCJp趥鐿\n娙*剨h8\$餿ppxo`\\0抰p槖錠牨萛$麗狢(?0g\$Q*擹	笆蛡O\r举?\n汹{鸫u饖囩|罥*屍培w蘚$\$鹑)疤xv%Pr0P嘔鯨p騖\愽*=羮'uhㄇ4xq9夌	蘌5牁豛r咷`?0纶?6\$幄耟翭A眻%\0o滶溌\n@嫳h儊j=	鷀\"]%b-傑m<鬳訣聟蚊眴)裈*Qc?e鑳啷唯L靘荺"癍笡葮?w琕Z聆*B44g乥柽a<€鴤44@沔#.j41 Lnu,	d?轭tQ\$?tX阠\$酿B竹I鰽%絓$Bb疴?&飌洙鑼伉h8麸n駉t鞉bK嶍h?l撸n惎rspjW\"犘A眝2H8Ahp<Ce//旑	 G`郞$邰揣nJ猓\"碴K'窺I牟2瞊鏓/嘰"q0?g均h?/巹瘨y?Q@鲧?s剮9DT!?i`啖J臷0R辳% (溝?	睪2タ5忩\\砠Z?7?镥+6SV竤Z鎕???%鯸\?尧褠sd婳J潛o'聥&?:n?轱8ポ%;H滬摑%sdn-瀄$ぞ6劗媾腖ξU\0 帎鄙2L1ERO9?9疖ò厩s軐余?>?€,裚?弫6?A?#A貙1鞖p鱘$拢育)4-@M?m橽n墾 ?#:'蟊/骛fBG#覩m汧/沮3?硩G.??猻\0忺r鈿*怅%rKC 骿`+竳抃nCl\"B?運$&0?眙f隒飮1㈥s駶L簸_ 絉诧4?H罎d荕骆.n廫"蛅岶SFG\"?狕C薏?嵍鳫笹?s:A驚鯣\"龃匋訶p鉌蝧G例]US;耀:)嫧敀鮦rq瞱E)/65W掵?S2晭N籜st橕骵S戩焧資';I魶W党Y琬TE?I_A燷1b氣彖PuN網\$?狽{N??]餦rD0+誤鋻爹A擃p蠖5rSB场X瞰_玉a3軿Uv碛1悂~(?Z溪Q翦b0展?cn'c道杪L?馻d? 敫濕!M曟鬌P?龓?n@Pk蚡5峛頝.报?圠捧T汓扴H譄YtWb鯜鴱醞死EM檌?[淬P僫 胖j鰨VSdx袅V酾W5Wk	K鐡e滞K慄D威蚊m蟑<D鼸]kVbp/?詶b硰`?鴙髊絣禤?臮6T諆Y-鱙P.艸T瞫et?YuU塧b鱘\熞vV-r丣A漶N?`碅fnS骪0_)碑簐B_v9褕U墙4!6(4C6B炎^稗wVFさC?鳔^仮_妺z箝x鐎xB鞶冦葄M5/]眼gk塏6dbWtUqqe9{w蟺穔€?%姿@抏%U?TK#琾?€\r€Vl廅bS1鞮鰌=Xk褦蚻\rIK@樹n\n牗繸啟 萿q+惞4n髐Jh頔QQ衼蝸乪0#赛摅{@P増1\r笀帹zUi?\"d?	︽?(o 	犨嚑\$F7BS!C闐~蜧譥奀V`獒堈K 滑雲)	>蕢U鈞	€拚δhX<€爑s8礬0惎Dk\n?陦琕a晓Qx绪T邅c 2Cf濛\r時箷	7,bTs'稪4刄o厁籷檌椨殲攐p?(R潠瞲Q釦?t緣祴?)瞫櫶(訳N4T)鱋Tぇ??琛@币.瘟⑾妈?驨s4be2 ,?3韁"扳?2\n艼犼\r欿?貺伹込P淓般C牯`QS袮q塖?+S?8隲n猓?]x0錯脼fぇ郡煆QiV疎佝w掺N骋們]L,妤wDo\0";break;case"vi":$f="Bp當&崋硞 *(J.檮0Q,忻Z屸?v儙@Tf橽npj?肰樛肅`醈μrY<?\$b\$L2€@%9惀臝聂屍螕劀4藚€膁3\rF胵冷t9N1燪奅3凇県膉[桱;焙妎鏫n(Ubda艻戮RiD\0\0丄)鱔?@q:瀏!C絖#y锰笝6:偠掩?楎姎鞬;?饹儅F幨图S0潔6铝絾岟\\菖v嗄N5蔼n5泹鐇!斾r7湧腃	新1#樖鯈?嫱嶃?:凅妍?\"\\!?:8!K贖+摆0R?碑鷚C(\$F]撫襗?版0帯規9﹋jP牁e顒Fd毑c@隃鉐*?煊奨刓n\npE嵣?4匥\nd嬄駭菮3&?\0陲?Z亴??胜孒僉n1\r?!\0??wBTX牲??澍0?淭4BB殮-Kd豍躺抪S吧Z?闪;榪??l%Kr!樑\n&淔/c,6J;rb!久騼,犢Vej擡?@]阵8覮B?籵	APA脭0宑\rI叁筐;?柁:葆\"9聀╔??z\r犺8a衈庿萛\0躻+酎屷}鄕(?\r韺先邺覂px?騖\,疂勊?韸h	K)Ft喬 @禷哣\r螷斬-螳B嘎9\r呜螉"顸?@ 栎N昴悑桰?知J挻h榣p6AC奥6??BT劎Jv7oL2pJ馟g姎洣5?癡奭?蓡Q7,tW毛g	}?扖?, P\$兊陭L镅(帵S;稦濨龆q輇Rτ\"槩&C苲\r嵜436麶"|?邳蜷 鏅g?楡儁屚秼GKK生\0j呝瑏璼鲁IBJ榕じ圻€&亩5z侂2璡0悎€S鸤r躜緒€PY_鄟癄0?腬r翑兗([y i渁婻&I t(Х鴌迠綤/\0腪寥福L膖鮁獗逃e`M?IrlHN€3\n騖nA'啒缾S2YZ飤3哱$ 桃#B?掑悰W襁AAx姦Zf*4:疊6笚\$CL1㏄3	-啺驉侌dE袓3vrK個h\r*á\n奿;H		嬸yoFnHAB懻牶V听U1猏nwさ?脴b孻??(O?d?2% ?efaBLヨm柪踅\n?憻ー4!t[\$/SM0FkP屧/镭贛喰寿fR*5u儹\r伣4E鳪IF魓偘蒔嘡判à:.愐nX肁?鑋牋?t&h	xN2€%!铏v8 襳gl	爐a>t|ヅ9峫P埉Fe湤?@*?铇怽\D廐A賄嫳F倽?w壩7&cD韇-E\0毴E臝?壏\"H\$竆$ 肻$М76b;[豠ˊ?3儳(?h敪U\$刱Q麉k虙<Q	`/\n<)匟皐搦9泚\"@O蝣幺?#?翾?a襡E凇3轲\\闉庬Y煵旡2O猱H? 垁`㏕N|虗g>\0耬|rV\r薠?\$8v觪欏惮︿俠?伅騖ni6?I\$∵U\$瞈n@櫳LK!甫a扻?\n榏堉蘄?K=\$殬闍	V,-\n┕鋌>A?-dl2^D渨qT	戸更?轅`.G濒~o?触匀sSy_昮搢L清ば昞"/嗗袒艕%\n*}QQ闐7)4QX\n\n劈蹂b8伜(换赧SxB齿\"^Lo5&滗喒裐朳?俏.#漻P猥櫕?hO策X侁禎犑蘙Q6w联詗窯凪B8?坠w碤y荓x洫€彼~#a€蠁抪x梪勍hξ-燤鷤]鈐		]L橪倰??H鐸毃D翸YN*@翫X??貎毽!?缐*]搛5餈C??I峙-眀N铵虙U儢騡獤vJ侳甦F?h1Y?I颦]?)|蝍然?dV篭r+€頔08\$礣掍\\潉?烘睒飌m?j仆kE/zぺ薁h噵正~?聀*吮O?銙\$铒碟ヵ螃?蟽?u?iX*^饕m滩8H&蹹J1\"饿扏诠~炠虢潩騗尘戺忀鳏憳\n\rw?譣諤V肼鼣溡衑]拓姟T蓜灣囙€~ニ玥掗[?垻 棤?嗿艅8蘒V肍餤/腇a?@?蜯誳6托谕?\r碈\\毱菆m怇钐诛漠迢\$匇?艑戴d?鐳虶耯鶑衺d	恏台唂g恅€(d皜}囕玺肘\\韉I蝚T??\0\\#發\"巐螏捗堛瘒痝!\"鶦?鈂\\"屑肻$娉\r0 鷪\0犘6<羂"'lt宕H\rPъ\0 興i隢`鋁诡啯?贑庝幢\0g霕叞j:bd猶奬"?秀\r婱/€6GT珧}cづ?彙姳\rfM敊啨 惵鼝芢"裿K1{霸久<岍mLhp媆n醱'\r-?qr錹€鑑N7 栟#dd毮f?蒩Y衴\nNqY EQ?啋?QV煱p俊N\$R#恇錗a\0舼黮汽怫9肰O嫼芇I?Pb2	捚Ph翦?\"??Vb-R8€)哃蘣 监%(?鮭膽T<鑈X襸)e庼婄d Rf诓?+业蚵虅?2?}e\\\$勑\\奇皒狎谄舉+f??V袃/?/螑Mdg敆?'4葐?PX0巳's\"5f獚J&:驓符?,sD!仆*傠碍!鋷	铭b校t墌覄裓0餔o翧&剒褚甛$岰\0k?O?W\"\n牗繸h?谄蝕)聁D4叾\$蘶驖驙鮤?昩殕#_%\n/羣]M?Pk6E??唙g?,耺鬝fNe瀼J蔇淺n嚜z靔\rm顑虳~蘠U1Df骪n幟駈夡Jz@嗨璈剰扢瘔t)4@毕↙\"H7:??妗l~s押8S塞珰D銼D锇W厎\n竲#x卧轲糾V即h 柤\"i2揝H0黮sR?'8砢@}O?寺I桕庎銴愍莵^0牁觠崬膳朶$ ∟??4i钌?OI親!4I%vL-艚*?襝:[e?鞝q龛F* ";break;case"zh":$f="鋇s昞\歳铛鈢%搪:漒$\nr.畡?妑/d然[8 S?€r?T\竤扞4駮衻Js!Kd瞮磂錠┡D猉,#!樞j6 ?\nr頤:.Z睵藨.匼rVWd^%鋵抮苍紞*皊#U誤Qd辵'c(€躱F摫へe3橬b阷2N橲樱:LY駎a~潹&6蹔嫊r秙k烍{竟6麧蛸扩c(甘2騠搎炐圥:S*@S璽*呹擳姦鉤\\頽NG#y薺\"5M惵9玻 扪2脁m8帼羉9庯枞诩藕\0鳋A~L渽?s%I蔢挩藠滫M(靊xスd?宐燢滃aL寲K#鄐刮X梘)<它v﹒>s灞襅枅羣FC馁蔇?zH竆$庑C*r揺袷^擛P堊禠鷮芽茭勃8A<厦(鹫嵜樢7协K畯壩Y梟\n?銺Br?t嘰"$j蠾惽9@@ガ;倵D毴L??轀腶s論}^ 寖k庚4肆ph嶱X?宮顒\r{\0孭*;?kc30?9乣@Y聾?屃鐳4儬?嘇x^;p肻\護篾3呫(翪?\r*翔谡P鉷x?骿tI蘀?k?ち|s攨觽I溎?(\\9\r6貴U?猀`r梕?S丅嘎9\r梧?° ARYE瑨D?eA褻慜)UPr擠靓G蜽 龙崘X?崈ㄊb樁13椄重M邃枓嵛ZN)9vszF滃閈\枒u?J驊?qXsct瑫?l僣I>A?;\"垬r?駐駾剻蔨=nSx?YNW澅G-S檞錏.^l湝?o皒FHSGAMR拈蜸邈n湦:襄gR銅斾?娾錒矌Lkf躶3\r曐j9殘嚞*?旅py誃嘦惒?d?唖逐tP(0唒聎 ]嚓j罖s/ぱS\nAqH9腍?蚅F扚n#膵&ピr堁*尃H巘E	戶4l\$9@禆竸чo5\"糪\Eq甐>@伸:4&腗⊿YL5#d<!覒K偧[萌|lG.?毟W?!?暺呏尗檛.ヘ粭€w^K?燶\阶墅PJC(缆Hm|6癄硫w祂4cK,k`鐳鼲塢c殘h恻B帒B.茾d\$W烌霮\"仌X穸a-@亻?J謱C4咥?d\"闋?P謿@衑C榓暊€1腮\\[@s謇筡"DLyq孹J\n鮞 \n (	鼔覺彊Ю値CIj\"N?诔%箽3唜V尡。5?cMp?,0?饖誑c@避d`I?'\"巃\\-X觃*萫	娌(箤	\$L<縫Z2繟嬯[鉌该媕h,3累d饧5zAD	;㈱4*(R5丠p鐷P	酟*P錖b姵H坁刓0叐逮Y慭n3皏B惼 陱璃倠蚮俓0b繱u纮3R@@gVpF\n?沾`?悇!瑫毉?(婡	脦a@ヅxA<'\0 A\n彳PB`E筫燰墇?T閔	峕懸%E捅娞k則惟t嘃\"0.Qw糆運"?刨鈜惔J垏剼:F蓔馂;Lcm~8U>G檁逺]鉅Eǚ?Dx榢鍚E醆0?柯pV\"?/d5=产厖\n韩?9\"|L嚹哆嶽倅Y⊿\r!榈压U	踈\r3魖黒nyH衆0J咀瀋\$\$啛鱘"4c:C瑰e堂 (骧碚{絝m霶f俍.剚dlw塸?稩\"(Pv%;-豟H﹥銉?qC?.?\"L_a`僳秥X耧<嫧\$0q鑴囆?F4H?@翤 ??爢~ej衣臇夞Jy砶鈥Be\0^6-曜狐W奬$H)颭絙糐迁F6垙榧X嶲&#Q旤爒JL慦筹Q屭飀鸽韤岴擪k)LDC嬀柁?&Z酹鄔h執駼(\nQ=)访冾a熙鎟2糊F播运=?m\r?C翨鮮捂臓橨傌r89卥}b?鯟跋0?9棃魝9吥狞e嘟詣嚴g傹^a蠝bt顮]鲄膪=XW#币騴嶊9?緧腃藎胖淒A С@b9?M ?类澚e??錀鄧/勸祺畸 雇櫊苰1x%R:I痍.娸.?-紛沿/?蛏)遀亵G痠h廴?O?~VyG丶飛冽羿X9潷麡t|Y澋?贶踫ona~窛宊会s龃柬/楌襟XB3хA鷉\$艻\"P>?O?OG檀*aP|狺樷銭O,Mc~#!(	湪k\$?t穼潺俏騖"衚獮i feM?彯鞵Tft黤sd邛縈H)徃z%捻P?\"铗0夳饒MJs鏿-傑dg睷a^y!\\絘s 莟70t瑻聫鎓*圃O/O抭c?耼#舞钤0旤廘盥兪?a<?瞦eoP芕鵔餛1痱g1%\0熬神qg1?1*騉-蚐瘊縈袓\rX裃\\S1B?斜i徑?Qz>.VJ涑	-c普Ao睔.鄲@i彂宜鼂BA>縈夲靄$聨k+r)淅-\n\"l\"儍も阢?踑f醶郗荆H4\r€Vg`諳沭Y莆m#X€噢虂E?爩蠢称?\0猏n€爌OH吉愫6?缂0P?B8c套鎗	\r2Af償.!鏑岃與?#愐m*溢柄QK&/1€榎r?`5#b邟$C紭羓蔦$猝顒H錦nA<L尾鑌"薯i烐嵝綨?酙岞oq庁.啜O僃2C)#\n豛r噜崶t摔0垙c\0EA蘯,貁\"序铄,L 笏?屛蝮8鬨rN1R諮鋫浒闬n艓犼\r?偆?餏J?r茸芇&%<-c?銴鎛甔翐?+纨k彋rSE\0bd@	\0t	牃@n`";break;case"zh-tw":$f="鋇?訒\\歳パ熙鈢%涛u:H鏐(\\?珣p妑爾neRQ獭D8 S昞n乼*.tI&擥慛斒A胜S筕鳅	t%9悂Sy:\"<峳玈T鉅,#!樞j61uL\0紪頤:.柌I9搱桞鍷&]\nD猉鏪舽-,皉〒蛀嵨鰧?蟥€衋;D鉿€鄏4潔&?準s3亹聇\r滱新bエE旹1晦裕蔳:鍃鏬#0,'}眉b1Q鋅\y\0鏥E<沥躦枹S )歇OLP\0敨M萍彳 2湈F髺鑸锥嫱儃N蛵銧@9祪凒妍績#ttn﹝鳋∈D閝l蔃g1&Z%?蘐'9jB\nC\"?)n嗒j玕"⊕桉d鯟o{@BOを躶ツ€?銸溎t捘涁錆\$d€ülY籠nr?騖0J丅#h鄞懌P?t柰)瘙專胉7cH連7P?姜霜罴湧裋s杄躣X絽醫?尸r櫺L∏)^C kE4塚嫇%赲\R〆乸r\$)蟈謄P?\r@?9A儎9AC?呆+6\$\0001@L蓄4禠螧P犱2乗0yj愂3销儉醲飡吤\r乤?專p_巔?凧@|6繉蛹3?僰_C\r拎^0囃岩@QU T擶滃!u2邛錻蘆)!Dt牡杄賳@??%tM暲P?嶤s?巋xC薫aK翶銻\\毞&%傩S攐1U+嵣孴鉼?ㄙ?尮9??{(6C鈩呝vs剕萻椇)蘂T*UA蘚\z瞲 郟〡罣I*[?2[ #m胏S=羉?;b垬r?驕腎'.-?x遟ys澱辬t籙攆Q晊%轔鐍眐斿~匼$s欧哎晧趜枒厎zr)]%狙项z嬑o馯鈂"旝K阕elm帀1泋r2FQj.?lXF閉?骈儁漛A伏俓0辍Z!櫡\0?k擔(:C8a;纻俈灠CpujmV\n敔\"	?aL)cR肹/萡E帒#N娀墑潦%卹7鳨	?鼌褢\n哱\鶜 狉鄟_脙蚬C嘝a畇,簵c	` T[c?(胁cb9+惲\"tP0駖B奡\"P皪?3€i]HYs.堭籛z馸k調噓蚓胵所€0'P繲*嘺(\$喰鄆k'`A0V隣5S0臉h楻C(y/襀燪\n笔%b耩孉犕,5栘lv翀O!歁 窧,\$v袨焨秎峀銩a哷俓0?inA懁V婹z1Ff0.觷/銟G婬@PEH癇`寗! 揬"狱ri坛>hM?e嘋PmB蜐A畸雍翫t\n赲\J?禝\"G鈆Ln@赂Z啡淨	﹔鼱杧枂LJLBU\0乗0y亖?歹巶?f蠵f?a?K唋榎r勮€\"i嵭P	酟*?!@/蝲M?橚D孺賊$V懰Z?A&\"磧娡T檿wG苤Bu舻€i峚M\0蚇A*歺i椚>g垭^憴?ごR	a??⒃BP?O	纮*匼0B燛W@-閖2嶲 坼渖慂穁輩肁礉C瑅喧\"傡側抚g悑冕+	2/駾◇?E!憖寉?W禱"?H*丳\"懿b窫7?\"腬0ジq\"惉!俰>\"\"◆枅覄飕0槍]d2惾?b%^巏絰5爁酟4嚘隠%篾n襍:vxp#k诂臷0^掓键楔%櫄y≤蚠辸*脺Z\n!?€鋏?Fh {.梨B@嫶D^&^惞绬(熭k眝_Hr╈L@дbd^j椰9暡窱\"\0Q矁?粟証9{鲗訔傝陭眒楾~炘孃B綷n丳 ?+鰙@ 蚖u揙j1K鈹t\n慐弜/大瀀lx i劈枆駈c?胼'劰\r寎鯠\"鬤帒>/琛sx]奒禧否廏桧牳*G/\"1呆N妜頖鼒F\0牂r栢 ?a荭淕承ゃ洅E\"G8sro8憫脩M)蚻櫎P=1M壟:*9禣沱戵f?窛KC棧aZ(塰僆\"厭2n媒I?&F\r?\nX窱8€嫎麆(\"\rF姙⑿舤夎榹\nH懱&拧牙C潰q眃tkO揾暣杢呫1\0/礐袶漒$蜤裗汭U碩e欬Jⅰ葏\0惖h湸C?<.\0F鱢磽屮?恹%1	j;酊SF鸆#I?ER笑イ碒埚?猁啫H?\r裘_孵mLQhw桗oOh熻7D<廌€A蛲δ蟎"?OZy\0剘-j錨仂bGo鍘駈嵛 冒腬rJ弘不pJ责PW醞20L覤|DC斢罰U皃\\?騽斆+@鸉稇篓(e衵QBt皜汮*D腜鸤r 8b<廻H天隘B	鋨喊L誠r;\nB粞MB詂?@鶿$f唋/怽raI-怽\oF蟊行鬴餌?栙'1鸟(傩i?兖^诃蘞eg羄r馂 碆|yDy献蛽F`*!!\0享憓pToLlar憁幷暄模垰?}耑d榎$P橕徴蘠D€鸟駎1嚌1<懗\0?芶薄懼?d諈=mUQ享環盅鋣耋 m]韇謒j漳睰d篕?悬诿噗r,H?愍H?I\"	渶萛"靆r聳虁}'L(揞N\0?i`P4郣采篎A煳Hc酕?z%羈洎E.瞺戽滀??D!1>彡^厾`苽@芢rd?濯n&?(4\r觇曲[僼藔\r犼燼妙\n牗繸驇*琨鼼鈷鋙畤?膆荬\0?€?艱?骘0?9n﨤-z{餗\"	€薅伱\\6蝅4<\"娗C?\",r.g莇裎馐鬙,z,8廐鮠v??a?绊9聞c颳饶OcP2?.\r噜傂.鮬u*荺np鈀lX單肯漫B?N?瀄n艤犼\r砯\0g蠁|?fNV廚.騑B牲訋羋>1\nlSCl\$<印:Q衦a%p隱!涓K缾	\0t	牃@n`";break;}$qi=array();foreach(explode("\n",lzw_decompress($f))as$X)$qi[]=(strpos($X,"\t")?explode("\t",$X):$X);return$qi;}if(!$qi){$qi=get_translations($ca);$_SESSION["translations"]=$qi;}if(extension_loaded('pdo')){class
Min_PDO
extends
PDO{var$_result,$server_info,$affected_rows,$errno,$error;function
__construct(){global$b;$bg=array_search("SQL",$b->operators);if($bg!==false)unset($b->operators[$bg]);}function
dsn($kc,$V,$F,$vf=array()){try{parent::__construct($kc,$V,$F,$vf);}catch(Exception$Bc){auth_error(h($Bc->getMessage()));}$this->setAttribute(13,array('Min_PDOStatement'));$this->server_info=@$this->getAttribute(4);}function
query($G,$_i=false){$H=parent::query($G);$this->error="";if(!$H){list(,$this->errno,$this->error)=$this->errorInfo();if(!$this->error)$this->error=lang(21);return
false;}$this->store_result($H);return$H;}function
multi_query($G){return$this->_result=$this->query($G);}function
store_result($H=null){if(!$H){$H=$this->_result;if(!$H)return
false;}if($H->columnCount()){$H->num_rows=$H->rowCount();return$H;}$this->affected_rows=$H->rowCount();return
true;}function
next_result(){if(!$this->_result)return
false;$this->_result->_offset=0;return@$this->_result->nextRowset();}function
result($G,$o=0){$H=$this->query($G);if(!$H)return
false;$J=$H->fetch();return$J[$o];}}class
Min_PDOStatement
extends
PDOStatement{var$_offset=0,$num_rows;function
fetch_assoc(){return$this->fetch(2);}function
fetch_row(){return$this->fetch(3);}function
fetch_field(){$J=(object)$this->getColumnMeta($this->_offset++);$J->orgtable=$J->table;$J->orgname=$J->name;$J->charsetnr=(in_array("blob",(array)$J->flags)?63:0);return$J;}}}$fc=array();class
Min_SQL{var$_conn;function
__construct($g){$this->_conn=$g;}function
select($R,$L,$Z,$od,$xf=array(),$z=1,$E=0,$jg=false){global$b,$x;$Xd=(count($od)<count($L));$G=$b->selectQueryBuild($L,$Z,$od,$xf,$z,$E);if(!$G)$G="SELECT".limit(($_GET["page"]!="last"&&$z!=""&&$od&&$Xd&&$x=="sql"?"SQL_CALC_FOUND_ROWS ":"").implode(", ",$L)."\nFROM ".table($R),($Z?"\nWHERE ".implode(" AND ",$Z):"").($od&&$Xd?"\nGROUP BY ".implode(", ",$od):"").($xf?"\nORDER BY ".implode(", ",$xf):""),($z!=""?+$z:null),($E?$z*$E:0),"\n");$_h=microtime(true);$I=$this->_conn->query($G);if($jg)echo$b->selectQuery($G,$_h,!$I);return$I;}function
delete($R,$tg,$z=0){$G="FROM ".table($R);return
queries("DELETE".($z?limit1($R,$G,$tg):" $G$tg"));}function
update($R,$O,$tg,$z=0,$M="\n"){$Ri=array();foreach($O
as$y=>$X)$Ri[]="$y = $X";$G=table($R)." SET$M".implode(",$M",$Ri);return
queries("UPDATE".($z?limit1($R,$G,$tg,$M):" $G$tg"));}function
insert($R,$O){return
queries("INSERT INTO ".table($R).($O?" (".implode(", ",array_keys($O)).")\nVALUES (".implode(", ",$O).")":" DEFAULT VALUES"));}function
insertUpdate($R,$K,$hg){return
false;}function
begin(){return
queries("BEGIN");}function
commit(){return
queries("COMMIT");}function
rollback(){return
queries("ROLLBACK");}function
slowQuery($G,$bi){}function
convertSearch($u,$X,$o){return$u;}function
value($X,$o){return(method_exists($this->_conn,'value')?$this->_conn->value($X,$o):(is_resource($X)?stream_get_contents($X):$X));}function
quoteBinary($Vg){return
q($Vg);}function
warnings(){return'';}function
tableHelp($C){}}$fc["sqlite"]="SQLite 3";$fc["sqlite2"]="SQLite 2";if(isset($_GET["sqlite"])||isset($_GET["sqlite2"])){$eg=array((isset($_GET["sqlite"])?"SQLite3":"SQLite"),"PDO_SQLite");define("DRIVER",(isset($_GET["sqlite"])?"sqlite":"sqlite2"));if(class_exists(isset($_GET["sqlite"])?"SQLite3":"SQLiteDatabase")){if(isset($_GET["sqlite"])){class
Min_SQLite{var$extension="SQLite3",$server_info,$affected_rows,$errno,$error,$_link;function
__construct($Vc){$this->_link=new
SQLite3($Vc);$Ui=$this->_link->version();$this->server_info=$Ui["versionString"];}function
query($G){$H=@$this->_link->query($G);$this->error="";if(!$H){$this->errno=$this->_link->lastErrorCode();$this->error=$this->_link->lastErrorMsg();return
false;}elseif($H->numColumns())return
new
Min_Result($H);$this->affected_rows=$this->_link->changes();return
true;}function
quote($Q){return(is_utf8($Q)?"'".$this->_link->escapeString($Q)."'":"x'".reset(unpack('H*',$Q))."'");}function
store_result(){return$this->_result;}function
result($G,$o=0){$H=$this->query($G);if(!is_object($H))return
false;$J=$H->_result->fetchArray();return$J[$o];}}class
Min_Result{var$_result,$_offset=0,$num_rows;function
__construct($H){$this->_result=$H;}function
fetch_assoc(){return$this->_result->fetchArray(SQLITE3_ASSOC);}function
fetch_row(){return$this->_result->fetchArray(SQLITE3_NUM);}function
fetch_field(){$d=$this->_offset++;$U=$this->_result->columnType($d);return(object)array("name"=>$this->_result->columnName($d),"type"=>$U,"charsetnr"=>($U==SQLITE3_BLOB?63:0),);}function
__desctruct(){return$this->_result->finalize();}}}else{class
Min_SQLite{var$extension="SQLite",$server_info,$affected_rows,$error,$_link;function
__construct($Vc){$this->server_info=sqlite_libversion();$this->_link=new
SQLiteDatabase($Vc);}function
query($G,$_i=false){$Qe=($_i?"unbufferedQuery":"query");$H=@$this->_link->$Qe($G,SQLITE_BOTH,$n);$this->error="";if(!$H){$this->error=$n;return
false;}elseif($H===true){$this->affected_rows=$this->changes();return
true;}return
new
Min_Result($H);}function
quote($Q){return"'".sqlite_escape_string($Q)."'";}function
store_result(){return$this->_result;}function
result($G,$o=0){$H=$this->query($G);if(!is_object($H))return
false;$J=$H->_result->fetch();return$J[$o];}}class
Min_Result{var$_result,$_offset=0,$num_rows;function
__construct($H){$this->_result=$H;if(method_exists($H,'numRows'))$this->num_rows=$H->numRows();}function
fetch_assoc(){$J=$this->_result->fetch(SQLITE_ASSOC);if(!$J)return
false;$I=array();foreach($J
as$y=>$X)$I[($y[0]=='"'?idf_unescape($y):$y)]=$X;return$I;}function
fetch_row(){return$this->_result->fetch(SQLITE_NUM);}function
fetch_field(){$C=$this->_result->fieldName($this->_offset++);$Xf='(\[.*]|"(?:[^"]|"")*"|(.+))';if(preg_match("~^($Xf\\.)?$Xf\$~",$C,$B)){$R=($B[3]!=""?$B[3]:idf_unescape($B[2]));$C=($B[5]!=""?$B[5]:idf_unescape($B[4]));}return(object)array("name"=>$C,"orgname"=>$C,"orgtable"=>$R,);}}}}elseif(extension_loaded("pdo_sqlite")){class
Min_SQLite
extends
Min_PDO{var$extension="PDO_SQLite";function
__construct($Vc){$this->dsn(DRIVER.":$Vc","","");}}}if(class_exists("Min_SQLite")){class
Min_DB
extends
Min_SQLite{function
__construct(){parent::__construct(":memory:");$this->query("PRAGMA foreign_keys = 1");}function
select_db($Vc){if(is_readable($Vc)&&$this->query("ATTACH ".$this->quote(preg_match("~(^[/\\\\]|:)~",$Vc)?$Vc:dirname($_SERVER["SCRIPT_FILENAME"])."/$Vc")." AS a")){parent::__construct($Vc);$this->query("PRAGMA foreign_keys = 1");return
true;}return
false;}function
multi_query($G){return$this->_result=$this->query($G);}function
next_result(){return
false;}}}class
Min_Driver
extends
Min_SQL{function
insertUpdate($R,$K,$hg){$Ri=array();foreach($K
as$O)$Ri[]="(".implode(", ",$O).")";return
queries("REPLACE INTO ".table($R)." (".implode(", ",array_keys(reset($K))).") VALUES\n".implode(",\n",$Ri));}function
tableHelp($C){if($C=="sqlite_sequence")return"fileformat2.html#seqtab";if($C=="sqlite_master")return"fileformat2.html#$C";}}function
idf_escape($u){return'"'.str_replace('"','""',$u).'"';}function
table($u){return
idf_escape($u);}function
connect(){global$b;list(,,$F)=$b->credentials();if($F!="")return
lang(22);return
new
Min_DB;}function
get_databases(){return
array();}function
limit($G,$Z,$z,$D=0,$M=" "){return" $G$Z".($z!==null?$M."LIMIT $z".($D?" OFFSET $D":""):"");}function
limit1($R,$G,$Z,$M="\n"){global$g;return(preg_match('~^INTO~',$G)||$g->result("SELECT sqlite_compileoption_used('ENABLE_UPDATE_DELETE_LIMIT')")?limit($G,$Z,1,0,$M):" $G WHERE rowid = (SELECT rowid FROM ".table($R).$Z.$M."LIMIT 1)");}function
db_collation($l,$qb){global$g;return$g->result("PRAGMA encoding");}function
engines(){return
array();}function
logged_user(){return
get_current_user();}function
tables_list(){return
get_key_vals("SELECT name, type FROM sqlite_master WHERE type IN ('table', 'view') ORDER BY (name = 'sqlite_sequence'), name");}function
count_tables($k){return
array();}function
table_status($C=""){global$g;$I=array();foreach(get_rows("SELECT name AS Name, type AS Engine, 'rowid' AS Oid, '' AS Auto_increment FROM sqlite_master WHERE type IN ('table', 'view') ".($C!=""?"AND name = ".q($C):"ORDER BY name"))as$J){$J["Rows"]=$g->result("SELECT COUNT(*) FROM ".idf_escape($J["Name"]));$I[$J["Name"]]=$J;}foreach(get_rows("SELECT * FROM sqlite_sequence",null,"")as$J)$I[$J["name"]]["Auto_increment"]=$J["seq"];return($C!=""?$I[$C]:$I);}function
is_view($S){return$S["Engine"]=="view";}function
fk_support($S){global$g;return!$g->result("SELECT sqlite_compileoption_used('OMIT_FOREIGN_KEY')");}function
fields($R){global$g;$I=array();$hg="";foreach(get_rows("PRAGMA table_info(".table($R).")")as$J){$C=$J["name"];$U=strtolower($J["type"]);$Tb=$J["dflt_value"];$I[$C]=array("field"=>$C,"type"=>(preg_match('~int~i',$U)?"integer":(preg_match('~char|clob|text~i',$U)?"text":(preg_match('~blob~i',$U)?"blob":(preg_match('~real|floa|doub~i',$U)?"real":"numeric")))),"full_type"=>$U,"default"=>(preg_match("~'(.*)'~",$Tb,$B)?str_replace("''","'",$B[1]):($Tb=="NULL"?null:$Tb)),"null"=>!$J["notnull"],"privileges"=>array("select"=>1,"insert"=>1,"update"=>1),"primary"=>$J["pk"],);if($J["pk"]){if($hg!="")$I[$hg]["auto_increment"]=false;elseif(preg_match('~^integer$~i',$U))$I[$C]["auto_increment"]=true;$hg=$C;}}$vh=$g->result("SELECT sql FROM sqlite_master WHERE type = 'table' AND name = ".q($R));preg_match_all('~(("[^"]*+")+|[a-z0-9_]+)\s+text\s+COLLATE\s+(\'[^\']+\'|\S+)~i',$vh,$Ce,PREG_SET_ORDER);foreach($Ce
as$B){$C=str_replace('""','"',preg_replace('~^"|"$~','',$B[1]));if($I[$C])$I[$C]["collation"]=trim($B[3],"'");}return$I;}function
indexes($R,$h=null){global$g;if(!is_object($h))$h=$g;$I=array();$vh=$h->result("SELECT sql FROM sqlite_master WHERE type = 'table' AND name = ".q($R));if(preg_match('~\bPRIMARY\s+KEY\s*\((([^)"]+|"[^"]*"|`[^`]*`)++)~i',$vh,$B)){$I[""]=array("type"=>"PRIMARY","columns"=>array(),"lengths"=>array(),"descs"=>array());preg_match_all('~((("[^"]*+")+|(?:`[^`]*+`)+)|(\S+))(\s+(ASC|DESC))?(,\s*|$)~i',$B[1],$Ce,PREG_SET_ORDER);foreach($Ce
as$B){$I[""]["columns"][]=idf_unescape($B[2]).$B[4];$I[""]["descs"][]=(preg_match('~DESC~i',$B[5])?'1':null);}}if(!$I){foreach(fields($R)as$C=>$o){if($o["primary"])$I[""]=array("type"=>"PRIMARY","columns"=>array($C),"lengths"=>array(),"descs"=>array(null));}}$yh=get_key_vals("SELECT name, sql FROM sqlite_master WHERE type = 'index' AND tbl_name = ".q($R),$h);foreach(get_rows("PRAGMA index_list(".table($R).")",$h)as$J){$C=$J["name"];$v=array("type"=>($J["unique"]?"UNIQUE":"INDEX"));$v["lengths"]=array();$v["descs"]=array();foreach(get_rows("PRAGMA index_info(".idf_escape($C).")",$h)as$Ug){$v["columns"][]=$Ug["name"];$v["descs"][]=null;}if(preg_match('~^CREATE( UNIQUE)? INDEX '.preg_quote(idf_escape($C).' ON '.idf_escape($R),'~').' \((.*)\)$~i',$yh[$C],$Eg)){preg_match_all('/("[^"]*+")+( DESC)?/',$Eg[2],$Ce);foreach($Ce[2]as$y=>$X){if($X)$v["descs"][$y]='1';}}if(!$I[""]||$v["type"]!="UNIQUE"||$v["columns"]!=$I[""]["columns"]||$v["descs"]!=$I[""]["descs"]||!preg_match("~^sqlite_~",$C))$I[$C]=$v;}return$I;}function
foreign_keys($R){$I=array();foreach(get_rows("PRAGMA foreign_key_list(".table($R).")")as$J){$q=&$I[$J["id"]];if(!$q)$q=$J;$q["source"][]=$J["from"];$q["target"][]=$J["to"];}return$I;}function
view($C){global$g;return
array("select"=>preg_replace('~^(?:[^`"[]+|`[^`]*`|"[^"]*")* AS\s+~iU','',$g->result("SELECT sql FROM sqlite_master WHERE name = ".q($C))));}function
collations(){return(isset($_GET["create"])?get_vals("PRAGMA collation_list",1):array());}function
information_schema($l){return
false;}function
error(){global$g;return
h($g->error);}function
check_sqlite_name($C){global$g;$Lc="db|sdb|sqlite";if(!preg_match("~^[^\\0]*\\.($Lc)\$~",$C)){$g->error=lang(23,str_replace("|",", ",$Lc));return
false;}return
true;}function
create_database($l,$pb){global$g;if(file_exists($l)){$g->error=lang(24);return
false;}if(!check_sqlite_name($l))return
false;try{$_=new
Min_SQLite($l);}catch(Exception$Bc){$g->error=$Bc->getMessage();return
false;}$_->query('PRAGMA encoding = "UTF-8"');$_->query('CREATE TABLE adminer (i)');$_->query('DROP TABLE adminer');return
true;}function
drop_databases($k){global$g;$g->__construct(":memory:");foreach($k
as$l){if(!@unlink($l)){$g->error=lang(24);return
false;}}return
true;}function
rename_database($C,$pb){global$g;if(!check_sqlite_name($C))return
false;$g->__construct(":memory:");$g->error=lang(24);return@rename(DB,$C);}function
auto_increment(){return" PRIMARY KEY".(DRIVER=="sqlite"?" AUTOINCREMENT":"");}function
alter_table($R,$C,$p,$dd,$vb,$vc,$pb,$Ma,$Rf){$Li=($R==""||$dd);foreach($p
as$o){if($o[0]!=""||!$o[1]||$o[2]){$Li=true;break;}}$c=array();$Ff=array();foreach($p
as$o){if($o[1]){$c[]=($Li?$o[1]:"ADD ".implode($o[1]));if($o[0]!="")$Ff[$o[0]]=$o[1][0];}}if(!$Li){foreach($c
as$X){if(!queries("ALTER TABLE ".table($R)." $X"))return
false;}if($R!=$C&&!queries("ALTER TABLE ".table($R)." RENAME TO ".table($C)))return
false;}elseif(!recreate_table($R,$C,$c,$Ff,$dd))return
false;if($Ma)queries("UPDATE sqlite_sequence SET seq = $Ma WHERE name = ".q($C));return
true;}function
recreate_table($R,$C,$p,$Ff,$dd,$w=array()){if($R!=""){if(!$p){foreach(fields($R)as$y=>$o){if($w)$o["auto_increment"]=0;$p[]=process_field($o,$o);$Ff[$y]=idf_escape($y);}}$ig=false;foreach($p
as$o){if($o[6])$ig=true;}$ic=array();foreach($w
as$y=>$X){if($X[2]=="DROP"){$ic[$X[1]]=true;unset($w[$y]);}}foreach(indexes($R)as$fe=>$v){$e=array();foreach($v["columns"]as$y=>$d){if(!$Ff[$d])continue
2;$e[]=$Ff[$d].($v["descs"][$y]?" DESC":"");}if(!$ic[$fe]){if($v["type"]!="PRIMARY"||!$ig)$w[]=array($v["type"],$fe,$e);}}foreach($w
as$y=>$X){if($X[0]=="PRIMARY"){unset($w[$y]);$dd[]="  PRIMARY KEY (".implode(", ",$X[2]).")";}}foreach(foreign_keys($R)as$fe=>$q){foreach($q["source"]as$y=>$d){if(!$Ff[$d])continue
2;$q["source"][$y]=idf_unescape($Ff[$d]);}if(!isset($dd[" $fe"]))$dd[]=" ".format_foreign_key($q);}queries("BEGIN");}foreach($p
as$y=>$o)$p[$y]="  ".implode($o);$p=array_merge($p,array_filter($dd));if(!queries("CREATE TABLE ".table($R!=""?"adminer_$C":$C)." (\n".implode(",\n",$p)."\n)"))return
false;if($R!=""){if($Ff&&!queries("INSERT INTO ".table("adminer_$C")." (".implode(", ",$Ff).") SELECT ".implode(", ",array_map('idf_escape',array_keys($Ff)))." FROM ".table($R)))return
false;$wi=array();foreach(triggers($R)as$ui=>$ci){$ti=trigger($ui);$wi[]="CREATE TRIGGER ".idf_escape($ui)." ".implode(" ",$ci)." ON ".table($C)."\n$ti[Statement]";}if(!queries("DROP TABLE ".table($R)))return
false;queries("ALTER TABLE ".table("adminer_$C")." RENAME TO ".table($C));if(!alter_indexes($C,$w))return
false;foreach($wi
as$ti){if(!queries($ti))return
false;}queries("COMMIT");}return
true;}function
index_sql($R,$U,$C,$e){return"CREATE $U ".($U!="INDEX"?"INDEX ":"").idf_escape($C!=""?$C:uniqid($R."_"))." ON ".table($R)." $e";}function
alter_indexes($R,$c){foreach($c
as$hg){if($hg[0]=="PRIMARY")return
recreate_table($R,$R,array(),array(),array(),$c);}foreach(array_reverse($c)as$X){if(!queries($X[2]=="DROP"?"DROP INDEX ".idf_escape($X[1]):index_sql($R,$X[0],$X[1],"(".implode(", ",$X[2]).")")))return
false;}return
true;}function
truncate_tables($T){return
apply_queries("DELETE FROM",$T);}function
drop_views($Wi){return
apply_queries("DROP VIEW",$Wi);}function
drop_tables($T){return
apply_queries("DROP TABLE",$T);}function
move_tables($T,$Wi,$Th){return
false;}function
trigger($C){global$g;if($C=="")return
array("Statement"=>"BEGIN\n\t;\nEND");$u='(?:[^`"\s]+|`[^`]*`|"[^"]*")+';$vi=trigger_options();preg_match("~^CREATE\\s+TRIGGER\\s*$u\\s*(".implode("|",$vi["Timing"]).")\\s+([a-z]+)(?:\\s+OF\\s+($u))?\\s+ON\\s*$u\\s*(?:FOR\\s+EACH\\s+ROW\\s)?(.*)~is",$g->result("SELECT sql FROM sqlite_master WHERE type = 'trigger' AND name = ".q($C)),$B);$gf=$B[3];return
array("Timing"=>strtoupper($B[1]),"Event"=>strtoupper($B[2]).($gf?" OF":""),"Of"=>($gf[0]=='`'||$gf[0]=='"'?idf_unescape($gf):$gf),"Trigger"=>$C,"Statement"=>$B[4],);}function
triggers($R){$I=array();$vi=trigger_options();foreach(get_rows("SELECT * FROM sqlite_master WHERE type = 'trigger' AND tbl_name = ".q($R))as$J){preg_match('~^CREATE\s+TRIGGER\s*(?:[^`"\s]+|`[^`]*`|"[^"]*")+\s*('.implode("|",$vi["Timing"]).')\s*(.*)\s+ON\b~iU',$J["sql"],$B);$I[$J["name"]]=array($B[1],$B[2]);}return$I;}function
trigger_options(){return
array("Timing"=>array("BEFORE","AFTER","INSTEAD OF"),"Event"=>array("INSERT","UPDATE","UPDATE OF","DELETE"),"Type"=>array("FOR EACH ROW"),);}function
begin(){return
queries("BEGIN");}function
last_id(){global$g;return$g->result("SELECT LAST_INSERT_ROWID()");}function
explain($g,$G){return$g->query("EXPLAIN QUERY PLAN $G");}function
found_rows($S,$Z){}function
types(){return
array();}function
schemas(){return
array();}function
get_schema(){return"";}function
set_schema($Yg){return
true;}function
create_sql($R,$Ma,$Eh){global$g;$I=$g->result("SELECT sql FROM sqlite_master WHERE type IN ('table', 'view') AND name = ".q($R));foreach(indexes($R)as$C=>$v){if($C=='')continue;$I.=";\n\n".index_sql($R,$v['type'],$C,"(".implode(", ",array_map('idf_escape',$v['columns'])).")");}return$I;}function
truncate_sql($R){return"DELETE FROM ".table($R);}function
use_sql($j){}function
trigger_sql($R){return
implode(get_vals("SELECT sql || ';;\n' FROM sqlite_master WHERE type = 'trigger' AND tbl_name = ".q($R)));}function
show_variables(){global$g;$I=array();foreach(array("auto_vacuum","cache_size","count_changes","default_cache_size","empty_result_callbacks","encoding","foreign_keys","full_column_names","fullfsync","journal_mode","journal_size_limit","legacy_file_format","locking_mode","page_size","max_page_count","read_uncommitted","recursive_triggers","reverse_unordered_selects","secure_delete","short_column_names","synchronous","temp_store","temp_store_directory","schema_version","integrity_check","quick_check")as$y)$I[$y]=$g->result("PRAGMA $y");return$I;}function
show_status(){$I=array();foreach(get_vals("PRAGMA compile_options")as$uf){list($y,$X)=explode("=",$uf,2);$I[$y]=$X;}return$I;}function
convert_field($o){}function
unconvert_field($o,$I){return$I;}function
support($Qc){return
preg_match('~^(columns|database|drop_col|dump|indexes|move_col|sql|status|table|trigger|variables|view|view_trigger)$~',$Qc);}$x="sqlite";$zi=array("integer"=>0,"real"=>0,"numeric"=>0,"text"=>0,"blob"=>0);$Dh=array_keys($zi);$Fi=array();$sf=array("=","<",">","<=",">=","!=","LIKE","LIKE %%","IN","IS NULL","NOT LIKE","NOT IN","IS NOT NULL","SQL");$ld=array("hex","length","lower","round","unixepoch","upper");$rd=array("avg","count","count distinct","group_concat","max","min","sum");$nc=array(array(),array("integer|real|numeric"=>"+/-","text"=>"||",));}$fc["pgsql"]="PostgreSQL";if(isset($_GET["pgsql"])){$eg=array("PgSQL","PDO_PgSQL");define("DRIVER","pgsql");if(extension_loaded("pgsql")){class
Min_DB{var$extension="PgSQL",$_link,$_result,$_string,$_database=true,$server_info,$affected_rows,$error,$timeout;function
_error($yc,$n){if(ini_bool("html_errors"))$n=html_entity_decode(strip_tags($n));$n=preg_replace('~^[^:]*: ~','',$n);$this->error=$n;}function
connect($N,$V,$F){global$b;$l=$b->database();set_error_handler(array($this,'_error'));$this->_string="host='".str_replace(":","' port='",addcslashes($N,"'\\"))."' user='".addcslashes($V,"'\\")."' password='".addcslashes($F,"'\\")."'";$this->_link=@pg_connect("$this->_string dbname='".($l!=""?addcslashes($l,"'\\"):"postgres")."'",PGSQL_CONNECT_FORCE_NEW);if(!$this->_link&&$l!=""){$this->_database=false;$this->_link=@pg_connect("$this->_string dbname='postgres'",PGSQL_CONNECT_FORCE_NEW);}restore_error_handler();if($this->_link){$Ui=pg_version($this->_link);$this->server_info=$Ui["server"];pg_set_client_encoding($this->_link,"UTF8");}return(bool)$this->_link;}function
quote($Q){return"'".pg_escape_string($this->_link,$Q)."'";}function
value($X,$o){return($o["type"]=="bytea"?pg_unescape_bytea($X):$X);}function
quoteBinary($Q){return"'".pg_escape_bytea($this->_link,$Q)."'";}function
select_db($j){global$b;if($j==$b->database())return$this->_database;$I=@pg_connect("$this->_string dbname='".addcslashes($j,"'\\")."'",PGSQL_CONNECT_FORCE_NEW);if($I)$this->_link=$I;return$I;}function
close(){$this->_link=@pg_connect("$this->_string dbname='postgres'");}function
query($G,$_i=false){$H=@pg_query($this->_link,$G);$this->error="";if(!$H){$this->error=pg_last_error($this->_link);$I=false;}elseif(!pg_num_fields($H)){$this->affected_rows=pg_affected_rows($H);$I=true;}else$I=new
Min_Result($H);if($this->timeout){$this->timeout=0;$this->query("RESET statement_timeout");}return$I;}function
multi_query($G){return$this->_result=$this->query($G);}function
store_result(){return$this->_result;}function
next_result(){return
false;}function
result($G,$o=0){$H=$this->query($G);if(!$H||!$H->num_rows)return
false;return
pg_fetch_result($H->_result,0,$o);}function
warnings(){return
h(pg_last_notice($this->_link));}}class
Min_Result{var$_result,$_offset=0,$num_rows;function
__construct($H){$this->_result=$H;$this->num_rows=pg_num_rows($H);}function
fetch_assoc(){return
pg_fetch_assoc($this->_result);}function
fetch_row(){return
pg_fetch_row($this->_result);}function
fetch_field(){$d=$this->_offset++;$I=new
stdClass;if(function_exists('pg_field_table'))$I->orgtable=pg_field_table($this->_result,$d);$I->name=pg_field_name($this->_result,$d);$I->orgname=$I->name;$I->type=pg_field_type($this->_result,$d);$I->charsetnr=($I->type=="bytea"?63:0);return$I;}function
__destruct(){pg_free_result($this->_result);}}}elseif(extension_loaded("pdo_pgsql")){class
Min_DB
extends
Min_PDO{var$extension="PDO_PgSQL",$timeout;function
connect($N,$V,$F){global$b;$l=$b->database();$Q="pgsql:host='".str_replace(":","' port='",addcslashes($N,"'\\"))."' options='-c client_encoding=utf8'";$this->dsn("$Q dbname='".($l!=""?addcslashes($l,"'\\"):"postgres")."'",$V,$F);return
true;}function
select_db($j){global$b;return($b->database()==$j);}function
quoteBinary($Vg){return
q($Vg);}function
query($G,$_i=false){$I=parent::query($G,$_i);if($this->timeout){$this->timeout=0;parent::query("RESET statement_timeout");}return$I;}function
warnings(){return'';}function
close(){}}}class
Min_Driver
extends
Min_SQL{function
insertUpdate($R,$K,$hg){global$g;foreach($K
as$O){$Gi=array();$Z=array();foreach($O
as$y=>$X){$Gi[]="$y = $X";if(isset($hg[idf_unescape($y)]))$Z[]="$y = $X";}if(!(($Z&&queries("UPDATE ".table($R)." SET ".implode(", ",$Gi)." WHERE ".implode(" AND ",$Z))&&$g->affected_rows)||queries("INSERT INTO ".table($R)." (".implode(", ",array_keys($O)).") VALUES (".implode(", ",$O).")")))return
false;}return
true;}function
slowQuery($G,$bi){$this->_conn->query("SET statement_timeout = ".(1000*$bi));$this->_conn->timeout=1000*$bi;return$G;}function
convertSearch($u,$X,$o){return(preg_match('~char|text'.(!preg_match('~LIKE~',$X["op"])?'|date|time(stamp)?|boolean|uuid|'.number_type():'').'~',$o["type"])?$u:"CAST($u AS text)");}function
quoteBinary($Vg){return$this->_conn->quoteBinary($Vg);}function
warnings(){return$this->_conn->warnings();}function
tableHelp($C){$we=array("information_schema"=>"infoschema","pg_catalog"=>"catalog",);$_=$we[$_GET["ns"]];if($_)return"$_-".str_replace("_","-",$C).".html";}}function
idf_escape($u){return'"'.str_replace('"','""',$u).'"';}function
table($u){return
idf_escape($u);}function
connect(){global$b,$zi,$Dh;$g=new
Min_DB;$Hb=$b->credentials();if($g->connect($Hb[0],$Hb[1],$Hb[2])){if(min_version(9,0,$g)){$g->query("SET application_name = 'Adminer'");if(min_version(9.2,0,$g)){$Dh[lang(25)][]="json";$zi["json"]=4294967295;if(min_version(9.4,0,$g)){$Dh[lang(25)][]="jsonb";$zi["jsonb"]=4294967295;}}}return$g;}return$g->error;}function
get_databases(){return
get_vals("SELECT datname FROM pg_database WHERE has_database_privilege(datname, 'CONNECT') ORDER BY datname");}function
limit($G,$Z,$z,$D=0,$M=" "){return" $G$Z".($z!==null?$M."LIMIT $z".($D?" OFFSET $D":""):"");}function
limit1($R,$G,$Z,$M="\n"){return(preg_match('~^INTO~',$G)?limit($G,$Z,1,0,$M):" $G".(is_view(table_status1($R))?$Z:" WHERE ctid = (SELECT ctid FROM ".table($R).$Z.$M."LIMIT 1)"));}function
db_collation($l,$qb){global$g;return$g->result("SHOW LC_COLLATE");}function
engines(){return
array();}function
logged_user(){global$g;return$g->result("SELECT user");}function
tables_list(){$G="SELECT table_name, table_type FROM information_schema.tables WHERE table_schema = current_schema()";if(support('materializedview'))$G.="
UNION ALL
SELECT matviewname, 'MATERIALIZED VIEW'
FROM pg_matviews
WHERE schemaname = current_schema()";$G.="
ORDER BY 1";return
get_key_vals($G);}function
count_tables($k){return
array();}function
table_status($C=""){$I=array();foreach(get_rows("SELECT c.relname AS \"Name\", CASE c.relkind WHEN 'r' THEN 'table' WHEN 'm' THEN 'materialized view' ELSE 'view' END AS \"Engine\", pg_relation_size(c.oid) AS \"Data_length\", pg_total_relation_size(c.oid) - pg_relation_size(c.oid) AS \"Index_length\", obj_description(c.oid, 'pg_class') AS \"Comment\", CASE WHEN c.relhasoids THEN 'oid' ELSE '' END AS \"Oid\", c.reltuples as \"Rows\", n.nspname
FROM pg_class c
JOIN pg_namespace n ON(n.nspname = current_schema() AND n.oid = c.relnamespace)
WHERE relkind IN ('r', 'm', 'v', 'f')
".($C!=""?"AND relname = ".q($C):"ORDER BY relname"))as$J)$I[$J["Name"]]=$J;return($C!=""?$I[$C]:$I);}function
is_view($S){return
in_array($S["Engine"],array("view","materialized view"));}function
fk_support($S){return
true;}function
fields($R){$I=array();$Da=array('timestamp without time zone'=>'timestamp','timestamp with time zone'=>'timestamptz',);foreach(get_rows("SELECT a.attname AS field, format_type(a.atttypid, a.atttypmod) AS full_type, d.adsrc AS default, a.attnotnull::int, col_description(c.oid, a.attnum) AS comment
FROM pg_class c
JOIN pg_namespace n ON c.relnamespace = n.oid
JOIN pg_attribute a ON c.oid = a.attrelid
LEFT JOIN pg_attrdef d ON c.oid = d.adrelid AND a.attnum = d.adnum
WHERE c.relname = ".q($R)."
AND n.nspname = current_schema()
AND NOT a.attisdropped
AND a.attnum > 0
ORDER BY a.attnum")as$J){preg_match('~([^([]+)(\((.*)\))?([a-z ]+)?((\[[0-9]*])*)$~',$J["full_type"],$B);list(,$U,$te,$J["length"],$xa,$Ga)=$B;$J["length"].=$Ga;$eb=$U.$xa;if(isset($Da[$eb])){$J["type"]=$Da[$eb];$J["full_type"]=$J["type"].$te.$Ga;}else{$J["type"]=$U;$J["full_type"]=$J["type"].$te.$xa.$Ga;}$J["null"]=!$J["attnotnull"];$J["auto_increment"]=preg_match('~^nextval\(~i',$J["default"]);$J["privileges"]=array("insert"=>1,"select"=>1,"update"=>1);if(preg_match('~(.+)::[^)]+(.*)~',$J["default"],$B))$J["default"]=($B[1]=="NULL"?null:(($B[1][0]=="'"?idf_unescape($B[1]):$B[1]).$B[2]));$I[$J["field"]]=$J;}return$I;}function
indexes($R,$h=null){global$g;if(!is_object($h))$h=$g;$I=array();$Mh=$h->result("SELECT oid FROM pg_class WHERE relnamespace = (SELECT oid FROM pg_namespace WHERE nspname = current_schema()) AND relname = ".q($R));$e=get_key_vals("SELECT attnum, attname FROM pg_attribute WHERE attrelid = $Mh AND attnum > 0",$h);foreach(get_rows("SELECT relname, indisunique::int, indisprimary::int, indkey, indoption , (indpred IS NOT NULL)::int as indispartial FROM pg_index i, pg_class ci WHERE i.indrelid = $Mh AND ci.oid = i.indexrelid",$h)as$J){$Fg=$J["relname"];$I[$Fg]["type"]=($J["indispartial"]?"INDEX":($J["indisprimary"]?"PRIMARY":($J["indisunique"]?"UNIQUE":"INDEX")));$I[$Fg]["columns"]=array();foreach(explode(" ",$J["indkey"])as$Md)$I[$Fg]["columns"][]=$e[$Md];$I[$Fg]["descs"]=array();foreach(explode(" ",$J["indoption"])as$Nd)$I[$Fg]["descs"][]=($Nd&1?'1':null);$I[$Fg]["lengths"]=array();}return$I;}function
foreign_keys($R){global$nf;$I=array();foreach(get_rows("SELECT conname, condeferrable::int AS deferrable, pg_get_constraintdef(oid) AS definition
FROM pg_constraint
WHERE conrelid = (SELECT pc.oid FROM pg_class AS pc INNER JOIN pg_namespace AS pn ON (pn.oid = pc.relnamespace) WHERE pc.relname = ".q($R)." AND pn.nspname = current_schema())
AND contype = 'f'::char
ORDER BY conkey, conname")as$J){if(preg_match('~FOREIGN KEY\s*\((.+)\)\s*REFERENCES (.+)\((.+)\)(.*)$~iA',$J['definition'],$B)){$J['source']=array_map('trim',explode(',',$B[1]));if(preg_match('~^(("([^"]|"")+"|[^"]+)\.)?"?("([^"]|"")+"|[^"]+)$~',$B[2],$Be)){$J['ns']=str_replace('""','"',preg_replace('~^"(.+)"$~','\1',$Be[2]));$J['table']=str_replace('""','"',preg_replace('~^"(.+)"$~','\1',$Be[4]));}$J['target']=array_map('trim',explode(',',$B[3]));$J['on_delete']=(preg_match("~ON DELETE ($nf)~",$B[4],$Be)?$Be[1]:'NO ACTION');$J['on_update']=(preg_match("~ON UPDATE ($nf)~",$B[4],$Be)?$Be[1]:'NO ACTION');$I[$J['conname']]=$J;}}return$I;}function
view($C){global$g;return
array("select"=>trim($g->result("SELECT view_definition
FROM information_schema.views
WHERE table_schema = current_schema() AND table_name = ".q($C))));}function
collations(){return
array();}function
information_schema($l){return($l=="information_schema");}function
error(){global$g;$I=h($g->error);if(preg_match('~^(.*\n)?([^\n]*)\n( *)\^(\n.*)?$~s',$I,$B))$I=$B[1].preg_replace('~((?:[^&]|&[^;]*;){'.strlen($B[3]).'})(.*)~','\1<b>\2</b>',$B[2]).$B[4];return
nl_br($I);}function
create_database($l,$pb){return
queries("CREATE DATABASE ".idf_escape($l).($pb?" ENCODING ".idf_escape($pb):""));}function
drop_databases($k){global$g;$g->close();return
apply_queries("DROP DATABASE",$k,'idf_escape');}function
rename_database($C,$pb){return
queries("ALTER DATABASE ".idf_escape(DB)." RENAME TO ".idf_escape($C));}function
auto_increment(){return"";}function
alter_table($R,$C,$p,$dd,$vb,$vc,$pb,$Ma,$Rf){$c=array();$sg=array();foreach($p
as$o){$d=idf_escape($o[0]);$X=$o[1];if(!$X)$c[]="DROP $d";else{$Qi=$X[5];unset($X[5]);if(isset($X[6])&&$o[0]=="")$X[1]=($X[1]=="bigint"?" big":" ")."serial";if($o[0]=="")$c[]=($R!=""?"ADD ":"  ").implode($X);else{if($d!=$X[0])$sg[]="ALTER TABLE ".table($R)." RENAME $d TO $X[0]";$c[]="ALTER $d TYPE$X[1]";if(!$X[6]){$c[]="ALTER $d ".($X[3]?"SET$X[3]":"DROP DEFAULT");$c[]="ALTER $d ".($X[2]==" NULL"?"DROP NOT":"SET").$X[2];}}if($o[0]!=""||$Qi!="")$sg[]="COMMENT ON COLUMN ".table($R).".$X[0] IS ".($Qi!=""?substr($Qi,9):"''");}}$c=array_merge($c,$dd);if($R=="")array_unshift($sg,"CREATE TABLE ".table($C)." (\n".implode(",\n",$c)."\n)");elseif($c)array_unshift($sg,"ALTER TABLE ".table($R)."\n".implode(",\n",$c));if($R!=""&&$R!=$C)$sg[]="ALTER TABLE ".table($R)." RENAME TO ".table($C);if($R!=""||$vb!="")$sg[]="COMMENT ON TABLE ".table($C)." IS ".q($vb);if($Ma!=""){}foreach($sg
as$G){if(!queries($G))return
false;}return
true;}function
alter_indexes($R,$c){$i=array();$gc=array();$sg=array();foreach($c
as$X){if($X[0]!="INDEX")$i[]=($X[2]=="DROP"?"\nDROP CONSTRAINT ".idf_escape($X[1]):"\nADD".($X[1]!=""?" CONSTRAINT ".idf_escape($X[1]):"")." $X[0] ".($X[0]=="PRIMARY"?"KEY ":"")."(".implode(", ",$X[2]).")");elseif($X[2]=="DROP")$gc[]=idf_escape($X[1]);else$sg[]="CREATE INDEX ".idf_escape($X[1]!=""?$X[1]:uniqid($R."_"))." ON ".table($R)." (".implode(", ",$X[2]).")";}if($i)array_unshift($sg,"ALTER TABLE ".table($R).implode(",",$i));if($gc)array_unshift($sg,"DROP INDEX ".implode(", ",$gc));foreach($sg
as$G){if(!queries($G))return
false;}return
true;}function
truncate_tables($T){return
queries("TRUNCATE ".implode(", ",array_map('table',$T)));return
true;}function
drop_views($Wi){return
drop_tables($Wi);}function
drop_tables($T){foreach($T
as$R){$P=table_status($R);if(!queries("DROP ".strtoupper($P["Engine"])." ".table($R)))return
false;}return
true;}function
move_tables($T,$Wi,$Th){foreach(array_merge($T,$Wi)as$R){$P=table_status($R);if(!queries("ALTER ".strtoupper($P["Engine"])." ".table($R)." SET SCHEMA ".idf_escape($Th)))return
false;}return
true;}function
trigger($C,$R=null){if($C=="")return
array("Statement"=>"EXECUTE PROCEDURE ()");if($R===null)$R=$_GET['trigger'];$K=get_rows('SELECT t.trigger_name AS "Trigger", t.action_timing AS "Timing", (SELECT STRING_AGG(event_manipulation, \' OR \') FROM information_schema.triggers WHERE event_object_table = t.event_object_table AND trigger_name = t.trigger_name ) AS "Events", t.event_manipulation AS "Event", \'FOR EACH \' || t.action_orientation AS "Type", t.action_statement AS "Statement" FROM information_schema.triggers t WHERE t.event_object_table = '.q($R).' AND t.trigger_name = '.q($C));return
reset($K);}function
triggers($R){$I=array();foreach(get_rows("SELECT * FROM information_schema.triggers WHERE event_object_table = ".q($R))as$J)$I[$J["trigger_name"]]=array($J["action_timing"],$J["event_manipulation"]);return$I;}function
trigger_options(){return
array("Timing"=>array("BEFORE","AFTER"),"Event"=>array("INSERT","UPDATE","DELETE"),"Type"=>array("FOR EACH ROW","FOR EACH STATEMENT"),);}function
routine($C,$U){$K=get_rows('SELECT routine_definition AS definition, LOWER(external_language) AS language, *
FROM information_schema.routines
WHERE routine_schema = current_schema() AND specific_name = '.q($C));$I=$K[0];$I["returns"]=array("type"=>$I["type_udt_name"]);$I["fields"]=get_rows('SELECT parameter_name AS field, data_type AS type, character_maximum_length AS length, parameter_mode AS inout
FROM information_schema.parameters
WHERE specific_schema = current_schema() AND specific_name = '.q($C).'
ORDER BY ordinal_position');return$I;}function
routines(){return
get_rows('SELECT specific_name AS "SPECIFIC_NAME", routine_type AS "ROUTINE_TYPE", routine_name AS "ROUTINE_NAME", type_udt_name AS "DTD_IDENTIFIER"
FROM information_schema.routines
WHERE routine_schema = current_schema()
ORDER BY SPECIFIC_NAME');}function
routine_languages(){return
get_vals("SELECT LOWER(lanname) FROM pg_catalog.pg_language");}function
routine_id($C,$J){$I=array();foreach($J["fields"]as$o)$I[]=$o["type"];return
idf_escape($C)."(".implode(", ",$I).")";}function
last_id(){return
0;}function
explain($g,$G){return$g->query("EXPLAIN $G");}function
found_rows($S,$Z){global$g;if(preg_match("~ rows=([0-9]+)~",$g->result("EXPLAIN SELECT * FROM ".idf_escape($S["Name"]).($Z?" WHERE ".implode(" AND ",$Z):"")),$Eg))return$Eg[1];return
false;}function
types(){return
get_vals("SELECT typname
FROM pg_type
WHERE typnamespace = (SELECT oid FROM pg_namespace WHERE nspname = current_schema())
AND typtype IN ('b','d','e')
AND typelem = 0");}function
schemas(){return
get_vals("SELECT nspname FROM pg_namespace ORDER BY nspname");}function
get_schema(){global$g;return$g->result("SELECT current_schema()");}function
set_schema($Xg){global$g,$zi,$Dh;$I=$g->query("SET search_path TO ".idf_escape($Xg));foreach(types()as$U){if(!isset($zi[$U])){$zi[$U]=0;$Dh[lang(26)][]=$U;}}return$I;}function
create_sql($R,$Ma,$Eh){global$g;$I='';$Ng=array();$hh=array();$P=table_status($R);$p=fields($R);$w=indexes($R);ksort($w);$ad=foreign_keys($R);ksort($ad);if(!$P||empty($p))return
false;$I="CREATE TABLE ".idf_escape($P['nspname']).".".idf_escape($P['Name'])." (\n    ";foreach($p
as$Sc=>$o){$Of=idf_escape($o['field']).' '.$o['full_type'].default_value($o).($o['attnotnull']?" NOT NULL":"");$Ng[]=$Of;if(preg_match('~nextval\(\'([^\']+)\'\)~',$o['default'],$Ce)){$gh=$Ce[1];$uh=reset(get_rows(min_version(10)?"SELECT *, cache_size AS cache_value FROM pg_sequences WHERE schemaname = current_schema() AND sequencename = ".q($gh):"SELECT * FROM $gh"));$hh[]=($Eh=="DROP+CREATE"?"DROP SEQUENCE IF EXISTS $gh;\n":"")."CREATE SEQUENCE $gh INCREMENT $uh[increment_by] MINVALUE $uh[min_value] MAXVALUE $uh[max_value] START ".($Ma?$uh['last_value']:1)." CACHE $uh[cache_value];";}}if(!empty($hh))$I=implode("\n\n",$hh)."\n\n$I";foreach($w
as$Hd=>$v){switch($v['type']){case'UNIQUE':$Ng[]="CONSTRAINT ".idf_escape($Hd)." UNIQUE (".implode(', ',array_map('idf_escape',$v['columns'])).")";break;case'PRIMARY':$Ng[]="CONSTRAINT ".idf_escape($Hd)." PRIMARY KEY (".implode(', ',array_map('idf_escape',$v['columns'])).")";break;}}foreach($ad
as$Zc=>$Yc)$Ng[]="CONSTRAINT ".idf_escape($Zc)." $Yc[definition] ".($Yc['deferrable']?'DEFERRABLE':'NOT DEFERRABLE');$I.=implode(",\n    ",$Ng)."\n) WITH (oids = ".($P['Oid']?'true':'false').");";foreach($w
as$Hd=>$v){if($v['type']=='INDEX')$I.="\n\nCREATE INDEX ".idf_escape($Hd)." ON ".idf_escape($P['nspname']).".".idf_escape($P['Name'])." USING btree (".implode(', ',array_map('idf_escape',$v['columns'])).");";}if($P['Comment'])$I.="\n\nCOMMENT ON TABLE ".idf_escape($P['nspname']).".".idf_escape($P['Name'])." IS ".q($P['Comment']).";";foreach($p
as$Sc=>$o){if($o['comment'])$I.="\n\nCOMMENT ON COLUMN ".idf_escape($P['nspname']).".".idf_escape($P['Name']).".".idf_escape($Sc)." IS ".q($o['comment']).";";}return
rtrim($I,';');}function
truncate_sql($R){return"TRUNCATE ".table($R);}function
trigger_sql($R){$P=table_status($R);$I="";foreach(triggers($R)as$si=>$ri){$ti=trigger($si,$P['Name']);$I.="\nCREATE TRIGGER ".idf_escape($ti['Trigger'])." $ti[Timing] $ti[Events] ON ".idf_escape($P["nspname"]).".".idf_escape($P['Name'])." $ti[Type] $ti[Statement];;\n";}return$I;}function
use_sql($j){return"\connect ".idf_escape($j);}function
show_variables(){return
get_key_vals("SHOW ALL");}function
process_list(){return
get_rows("SELECT * FROM pg_stat_activity ORDER BY ".(min_version(9.2)?"pid":"procpid"));}function
show_status(){}function
convert_field($o){}function
unconvert_field($o,$I){return$I;}function
support($Qc){return
preg_match('~^(database|table|columns|sql|indexes|comment|view|'.(min_version(9.3)?'materializedview|':'').'scheme|routine|processlist|sequence|trigger|type|variables|drop_col|kill|dump)$~',$Qc);}function
kill_process($X){return
queries("SELECT pg_terminate_backend(".number($X).")");}function
connection_id(){return"SELECT pg_backend_pid()";}function
max_connections(){global$g;return$g->result("SHOW max_connections");}$x="pgsql";$zi=array();$Dh=array();foreach(array(lang(27)=>array("smallint"=>5,"integer"=>10,"bigint"=>19,"boolean"=>1,"numeric"=>0,"real"=>7,"double precision"=>16,"money"=>20),lang(28)=>array("date"=>13,"time"=>17,"timestamp"=>20,"timestamptz"=>21,"interval"=>0),lang(25)=>array("character"=>0,"character varying"=>0,"text"=>0,"tsquery"=>0,"tsvector"=>0,"uuid"=>0,"xml"=>0),lang(29)=>array("bit"=>0,"bit varying"=>0,"bytea"=>0),lang(30)=>array("cidr"=>43,"inet"=>43,"macaddr"=>17,"txid_snapshot"=>0),lang(31)=>array("box"=>0,"circle"=>0,"line"=>0,"lseg"=>0,"path"=>0,"point"=>0,"polygon"=>0),)as$y=>$X){$zi+=$X;$Dh[$y]=array_keys($X);}$Fi=array();$sf=array("=","<",">","<=",">=","!=","~","!~","LIKE","LIKE %%","ILIKE","ILIKE %%","IN","IS NULL","NOT LIKE","NOT IN","IS NOT NULL");$ld=array("char_length","lower","round","to_hex","to_timestamp","upper");$rd=array("avg","count","count distinct","max","min","sum");$nc=array(array("char"=>"md5","date|time"=>"now",),array(number_type()=>"+/-","date|time"=>"+ interval/- interval","char|text"=>"||",));}$fc["oracle"]="Oracle (beta)";if(isset($_GET["oracle"])){$eg=array("OCI8","PDO_OCI");define("DRIVER","oracle");if(extension_loaded("oci8")){class
Min_DB{var$extension="oci8",$_link,$_result,$server_info,$affected_rows,$errno,$error;function
_error($yc,$n){if(ini_bool("html_errors"))$n=html_entity_decode(strip_tags($n));$n=preg_replace('~^[^:]*: ~','',$n);$this->error=$n;}function
connect($N,$V,$F){$this->_link=@oci_new_connect($V,$F,$N,"AL32UTF8");if($this->_link){$this->server_info=oci_server_version($this->_link);return
true;}$n=oci_error();$this->error=$n["message"];return
false;}function
quote($Q){return"'".str_replace("'","''",$Q)."'";}function
select_db($j){return
true;}function
query($G,$_i=false){$H=oci_parse($this->_link,$G);$this->error="";if(!$H){$n=oci_error($this->_link);$this->errno=$n["code"];$this->error=$n["message"];return
false;}set_error_handler(array($this,'_error'));$I=@oci_execute($H);restore_error_handler();if($I){if(oci_num_fields($H))return
new
Min_Result($H);$this->affected_rows=oci_num_rows($H);}return$I;}function
multi_query($G){return$this->_result=$this->query($G);}function
store_result(){return$this->_result;}function
next_result(){return
false;}function
result($G,$o=1){$H=$this->query($G);if(!is_object($H)||!oci_fetch($H->_result))return
false;return
oci_result($H->_result,$o);}}class
Min_Result{var$_result,$_offset=1,$num_rows;function
__construct($H){$this->_result=$H;}function
_convert($J){foreach((array)$J
as$y=>$X){if(is_a($X,'OCI-Lob'))$J[$y]=$X->load();}return$J;}function
fetch_assoc(){return$this->_convert(oci_fetch_assoc($this->_result));}function
fetch_row(){return$this->_convert(oci_fetch_row($this->_result));}function
fetch_field(){$d=$this->_offset++;$I=new
stdClass;$I->name=oci_field_name($this->_result,$d);$I->orgname=$I->name;$I->type=oci_field_type($this->_result,$d);$I->charsetnr=(preg_match("~raw|blob|bfile~",$I->type)?63:0);return$I;}function
__destruct(){oci_free_statement($this->_result);}}}elseif(extension_loaded("pdo_oci")){class
Min_DB
extends
Min_PDO{var$extension="PDO_OCI";function
connect($N,$V,$F){$this->dsn("oci:dbname=//$N;charset=AL32UTF8",$V,$F);return
true;}function
select_db($j){return
true;}}}class
Min_Driver
extends
Min_SQL{function
begin(){return
true;}}function
idf_escape($u){return'"'.str_replace('"','""',$u).'"';}function
table($u){return
idf_escape($u);}function
connect(){global$b;$g=new
Min_DB;$Hb=$b->credentials();if($g->connect($Hb[0],$Hb[1],$Hb[2]))return$g;return$g->error;}function
get_databases(){return
get_vals("SELECT tablespace_name FROM user_tablespaces");}function
limit($G,$Z,$z,$D=0,$M=" "){return($D?" * FROM (SELECT t.*, rownum AS rnum FROM (SELECT $G$Z) t WHERE rownum <= ".($z+$D).") WHERE rnum > $D":($z!==null?" * FROM (SELECT $G$Z) WHERE rownum <= ".($z+$D):" $G$Z"));}function
limit1($R,$G,$Z,$M="\n"){return" $G$Z";}function
db_collation($l,$qb){global$g;return$g->result("SELECT value FROM nls_database_parameters WHERE parameter = 'NLS_CHARACTERSET'");}function
engines(){return
array();}function
logged_user(){global$g;return$g->result("SELECT USER FROM DUAL");}function
tables_list(){return
get_key_vals("SELECT table_name, 'table' FROM all_tables WHERE tablespace_name = ".q(DB)."
UNION SELECT view_name, 'view' FROM user_views
ORDER BY 1");}function
count_tables($k){return
array();}function
table_status($C=""){$I=array();$Zg=q($C);foreach(get_rows('SELECT table_name "Name", \'table\' "Engine", avg_row_len * num_rows "Data_length", num_rows "Rows" FROM all_tables WHERE tablespace_name = '.q(DB).($C!=""?" AND table_name = $Zg":"")."
UNION SELECT view_name, 'view', 0, 0 FROM user_views".($C!=""?" WHERE view_name = $Zg":"")."
ORDER BY 1")as$J){if($C!="")return$J;$I[$J["Name"]]=$J;}return$I;}function
is_view($S){return$S["Engine"]=="view";}function
fk_support($S){return
true;}function
fields($R){$I=array();foreach(get_rows("SELECT * FROM all_tab_columns WHERE table_name = ".q($R)." ORDER BY column_id")as$J){$U=$J["DATA_TYPE"];$te="$J[DATA_PRECISION],$J[DATA_SCALE]";if($te==",")$te=$J["DATA_LENGTH"];$I[$J["COLUMN_NAME"]]=array("field"=>$J["COLUMN_NAME"],"full_type"=>$U.($te?"($te)":""),"type"=>strtolower($U),"length"=>$te,"default"=>$J["DATA_DEFAULT"],"null"=>($J["NULLABLE"]=="Y"),"privileges"=>array("insert"=>1,"select"=>1,"update"=>1),);}return$I;}function
indexes($R,$h=null){$I=array();foreach(get_rows("SELECT uic.*, uc.constraint_type
FROM user_ind_columns uic
LEFT JOIN user_constraints uc ON uic.index_name = uc.constraint_name AND uic.table_name = uc.table_name
WHERE uic.table_name = ".q($R)."
ORDER BY uc.constraint_type, uic.column_position",$h)as$J){$Hd=$J["INDEX_NAME"];$I[$Hd]["type"]=($J["CONSTRAINT_TYPE"]=="P"?"PRIMARY":($J["CONSTRAINT_TYPE"]=="U"?"UNIQUE":"INDEX"));$I[$Hd]["columns"][]=$J["COLUMN_NAME"];$I[$Hd]["lengths"][]=($J["CHAR_LENGTH"]&&$J["CHAR_LENGTH"]!=$J["COLUMN_LENGTH"]?$J["CHAR_LENGTH"]:null);$I[$Hd]["descs"][]=($J["DESCEND"]?'1':null);}return$I;}function
view($C){$K=get_rows('SELECT text "select" FROM user_views WHERE view_name = '.q($C));return
reset($K);}function
collations(){return
array();}function
information_schema($l){return
false;}function
error(){global$g;return
h($g->error);}function
explain($g,$G){$g->query("EXPLAIN PLAN FOR $G");return$g->query("SELECT * FROM plan_table");}function
found_rows($S,$Z){}function
alter_table($R,$C,$p,$dd,$vb,$vc,$pb,$Ma,$Rf){$c=$gc=array();foreach($p
as$o){$X=$o[1];if($X&&$o[0]!=""&&idf_escape($o[0])!=$X[0])queries("ALTER TABLE ".table($R)." RENAME COLUMN ".idf_escape($o[0])." TO $X[0]");if($X)$c[]=($R!=""?($o[0]!=""?"MODIFY (":"ADD ("):"  ").implode($X).($R!=""?")":"");else$gc[]=idf_escape($o[0]);}if($R=="")return
queries("CREATE TABLE ".table($C)." (\n".implode(",\n",$c)."\n)");return(!$c||queries("ALTER TABLE ".table($R)."\n".implode("\n",$c)))&&(!$gc||queries("ALTER TABLE ".table($R)." DROP (".implode(", ",$gc).")"))&&($R==$C||queries("ALTER TABLE ".table($R)." RENAME TO ".table($C)));}function
foreign_keys($R){$I=array();$G="SELECT c_list.CONSTRAINT_NAME as NAME,
c_src.COLUMN_NAME as SRC_COLUMN,
c_dest.OWNER as DEST_DB,
c_dest.TABLE_NAME as DEST_TABLE,
c_dest.COLUMN_NAME as DEST_COLUMN,
c_list.DELETE_RULE as ON_DELETE
FROM ALL_CONSTRAINTS c_list, ALL_CONS_COLUMNS c_src, ALL_CONS_COLUMNS c_dest
WHERE c_list.CONSTRAINT_NAME = c_src.CONSTRAINT_NAME
AND c_list.R_CONSTRAINT_NAME = c_dest.CONSTRAINT_NAME
AND c_list.CONSTRAINT_TYPE = 'R'
AND c_src.TABLE_NAME = ".q($R);foreach(get_rows($G)as$J)$I[$J['NAME']]=array("db"=>$J['DEST_DB'],"table"=>$J['DEST_TABLE'],"source"=>array($J['SRC_COLUMN']),"target"=>array($J['DEST_COLUMN']),"on_delete"=>$J['ON_DELETE'],"on_update"=>null,);return$I;}function
truncate_tables($T){return
apply_queries("TRUNCATE TABLE",$T);}function
drop_views($Wi){return
apply_queries("DROP VIEW",$Wi);}function
drop_tables($T){return
apply_queries("DROP TABLE",$T);}function
last_id(){return
0;}function
schemas(){return
get_vals("SELECT DISTINCT owner FROM dba_segments WHERE owner IN (SELECT username FROM dba_users WHERE default_tablespace NOT IN ('SYSTEM','SYSAUX'))");}function
get_schema(){global$g;return$g->result("SELECT sys_context('USERENV', 'SESSION_USER') FROM dual");}function
set_schema($Yg){global$g;return$g->query("ALTER SESSION SET CURRENT_SCHEMA = ".idf_escape($Yg));}function
show_variables(){return
get_key_vals('SELECT name, display_value FROM v$parameter');}function
process_list(){return
get_rows('SELECT sess.process AS "process", sess.username AS "user", sess.schemaname AS "schema", sess.status AS "status", sess.wait_class AS "wait_class", sess.seconds_in_wait AS "seconds_in_wait", sql.sql_text AS "sql_text", sess.machine AS "machine", sess.port AS "port"
FROM v$session sess LEFT OUTER JOIN v$sql sql
ON sql.sql_id = sess.sql_id
WHERE sess.type = \'USER\'
ORDER BY PROCESS
');}function
show_status(){$K=get_rows('SELECT * FROM v$instance');return
reset($K);}function
convert_field($o){}function
unconvert_field($o,$I){return$I;}function
support($Qc){return
preg_match('~^(columns|database|drop_col|indexes|processlist|scheme|sql|status|table|variables|view|view_trigger)$~',$Qc);}$x="oracle";$zi=array();$Dh=array();foreach(array(lang(27)=>array("number"=>38,"binary_float"=>12,"binary_double"=>21),lang(28)=>array("date"=>10,"timestamp"=>29,"interval year"=>12,"interval day"=>28),lang(25)=>array("char"=>2000,"varchar2"=>4000,"nchar"=>2000,"nvarchar2"=>4000,"clob"=>4294967295,"nclob"=>4294967295),lang(29)=>array("raw"=>2000,"long raw"=>2147483648,"blob"=>4294967295,"bfile"=>4294967296),)as$y=>$X){$zi+=$X;$Dh[$y]=array_keys($X);}$Fi=array();$sf=array("=","<",">","<=",">=","!=","LIKE","LIKE %%","IN","IS NULL","NOT LIKE","NOT REGEXP","NOT IN","IS NOT NULL","SQL");$ld=array("length","lower","round","upper");$rd=array("avg","count","count distinct","max","min","sum");$nc=array(array("date"=>"current_date","timestamp"=>"current_timestamp",),array("number|float|double"=>"+/-","date|timestamp"=>"+ interval/- interval","char|clob"=>"||",));}$fc["mssql"]="MS SQL (beta)";if(isset($_GET["mssql"])){$eg=array("SQLSRV","MSSQL","PDO_DBLIB");define("DRIVER","mssql");if(extension_loaded("sqlsrv")){class
Min_DB{var$extension="sqlsrv",$_link,$_result,$server_info,$affected_rows,$errno,$error;function
_get_error(){$this->error="";foreach(sqlsrv_errors()as$n){$this->errno=$n["code"];$this->error.="$n[message]\n";}$this->error=rtrim($this->error);}function
connect($N,$V,$F){$this->_link=@sqlsrv_connect(preg_replace('~:~',',',$N),array("UID"=>$V,"PWD"=>$F,"CharacterSet"=>"UTF-8"));if($this->_link){$Od=sqlsrv_server_info($this->_link);$this->server_info=$Od['SQLServerVersion'];}else$this->_get_error();return(bool)$this->_link;}function
quote($Q){return"'".str_replace("'","''",$Q)."'";}function
select_db($j){return$this->query("USE ".idf_escape($j));}function
query($G,$_i=false){$H=sqlsrv_query($this->_link,$G);$this->error="";if(!$H){$this->_get_error();return
false;}return$this->store_result($H);}function
multi_query($G){$this->_result=sqlsrv_query($this->_link,$G);$this->error="";if(!$this->_result){$this->_get_error();return
false;}return
true;}function
store_result($H=null){if(!$H)$H=$this->_result;if(!$H)return
false;if(sqlsrv_field_metadata($H))return
new
Min_Result($H);$this->affected_rows=sqlsrv_rows_affected($H);return
true;}function
next_result(){return$this->_result?sqlsrv_next_result($this->_result):null;}function
result($G,$o=0){$H=$this->query($G);if(!is_object($H))return
false;$J=$H->fetch_row();return$J[$o];}}class
Min_Result{var$_result,$_offset=0,$_fields,$num_rows;function
__construct($H){$this->_result=$H;}function
_convert($J){foreach((array)$J
as$y=>$X){if(is_a($X,'DateTime'))$J[$y]=$X->format("Y-m-d H:i:s");}return$J;}function
fetch_assoc(){return$this->_convert(sqlsrv_fetch_array($this->_result,SQLSRV_FETCH_ASSOC));}function
fetch_row(){return$this->_convert(sqlsrv_fetch_array($this->_result,SQLSRV_FETCH_NUMERIC));}function
fetch_field(){if(!$this->_fields)$this->_fields=sqlsrv_field_metadata($this->_result);$o=$this->_fields[$this->_offset++];$I=new
stdClass;$I->name=$o["Name"];$I->orgname=$o["Name"];$I->type=($o["Type"]==1?254:0);return$I;}function
seek($D){for($s=0;$s<$D;$s++)sqlsrv_fetch($this->_result);}function
__destruct(){sqlsrv_free_stmt($this->_result);}}}elseif(extension_loaded("mssql")){class
Min_DB{var$extension="MSSQL",$_link,$_result,$server_info,$affected_rows,$error;function
connect($N,$V,$F){$this->_link=@mssql_connect($N,$V,$F);if($this->_link){$H=$this->query("SELECT SERVERPROPERTY('ProductLevel'), SERVERPROPERTY('Edition')");if($H){$J=$H->fetch_row();$this->server_info=$this->result("sp_server_info 2",2)." [$J[0]] $J[1]";}}else$this->error=mssql_get_last_message();return(bool)$this->_link;}function
quote($Q){return"'".str_replace("'","''",$Q)."'";}function
select_db($j){return
mssql_select_db($j);}function
query($G,$_i=false){$H=@mssql_query($G,$this->_link);$this->error="";if(!$H){$this->error=mssql_get_last_message();return
false;}if($H===true){$this->affected_rows=mssql_rows_affected($this->_link);return
true;}return
new
Min_Result($H);}function
multi_query($G){return$this->_result=$this->query($G);}function
store_result(){return$this->_result;}function
next_result(){return
mssql_next_result($this->_result->_result);}function
result($G,$o=0){$H=$this->query($G);if(!is_object($H))return
false;return
mssql_result($H->_result,0,$o);}}class
Min_Result{var$_result,$_offset=0,$_fields,$num_rows;function
__construct($H){$this->_result=$H;$this->num_rows=mssql_num_rows($H);}function
fetch_assoc(){return
mssql_fetch_assoc($this->_result);}function
fetch_row(){return
mssql_fetch_row($this->_result);}function
num_rows(){return
mssql_num_rows($this->_result);}function
fetch_field(){$I=mssql_fetch_field($this->_result);$I->orgtable=$I->table;$I->orgname=$I->name;return$I;}function
seek($D){mssql_data_seek($this->_result,$D);}function
__destruct(){mssql_free_result($this->_result);}}}elseif(extension_loaded("pdo_dblib")){class
Min_DB
extends
Min_PDO{var$extension="PDO_DBLIB";function
connect($N,$V,$F){$this->dsn("dblib:charset=utf8;host=".str_replace(":",";unix_socket=",preg_replace('~:(\d)~',';port=\1',$N)),$V,$F);return
true;}function
select_db($j){return$this->query("USE ".idf_escape($j));}}}class
Min_Driver
extends
Min_SQL{function
insertUpdate($R,$K,$hg){foreach($K
as$O){$Gi=array();$Z=array();foreach($O
as$y=>$X){$Gi[]="$y = $X";if(isset($hg[idf_unescape($y)]))$Z[]="$y = $X";}if(!queries("MERGE ".table($R)." USING (VALUES(".implode(", ",$O).")) AS source (c".implode(", c",range(1,count($O))).") ON ".implode(" AND ",$Z)." WHEN MATCHED THEN UPDATE SET ".implode(", ",$Gi)." WHEN NOT MATCHED THEN INSERT (".implode(", ",array_keys($O)).") VALUES (".implode(", ",$O).");"))return
false;}return
true;}function
begin(){return
queries("BEGIN TRANSACTION");}}function
idf_escape($u){return"[".str_replace("]","]]",$u)."]";}function
table($u){return($_GET["ns"]!=""?idf_escape($_GET["ns"]).".":"").idf_escape($u);}function
connect(){global$b;$g=new
Min_DB;$Hb=$b->credentials();if($g->connect($Hb[0],$Hb[1],$Hb[2]))return$g;return$g->error;}function
get_databases(){return
get_vals("SELECT name FROM sys.databases WHERE name NOT IN ('master', 'tempdb', 'model', 'msdb')");}function
limit($G,$Z,$z,$D=0,$M=" "){return($z!==null?" TOP (".($z+$D).")":"")." $G$Z";}function
limit1($R,$G,$Z,$M="\n"){return
limit($G,$Z,1,0,$M);}function
db_collation($l,$qb){global$g;return$g->result("SELECT collation_name FROM sys.databases WHERE name = ".q($l));}function
engines(){return
array();}function
logged_user(){global$g;return$g->result("SELECT SUSER_NAME()");}function
tables_list(){return
get_key_vals("SELECT name, type_desc FROM sys.all_objects WHERE schema_id = SCHEMA_ID(".q(get_schema()).") AND type IN ('S', 'U', 'V') ORDER BY name");}function
count_tables($k){global$g;$I=array();foreach($k
as$l){$g->select_db($l);$I[$l]=$g->result("SELECT COUNT(*) FROM INFORMATION_SCHEMA.TABLES");}return$I;}function
table_status($C=""){$I=array();foreach(get_rows("SELECT name AS Name, type_desc AS Engine FROM sys.all_objects WHERE schema_id = SCHEMA_ID(".q(get_schema()).") AND type IN ('S', 'U', 'V') ".($C!=""?"AND name = ".q($C):"ORDER BY name"))as$J){if($C!="")return$J;$I[$J["Name"]]=$J;}return$I;}function
is_view($S){return$S["Engine"]=="VIEW";}function
fk_support($S){return
true;}function
fields($R){$I=array();foreach(get_rows("SELECT c.max_length, c.precision, c.scale, c.name, c.is_nullable, c.is_identity, c.collation_name, t.name type, CAST(d.definition as text) [default]
FROM sys.all_columns c
JOIN sys.all_objects o ON c.object_id = o.object_id
JOIN sys.types t ON c.user_type_id = t.user_type_id
LEFT JOIN sys.default_constraints d ON c.default_object_id = d.parent_column_id
WHERE o.schema_id = SCHEMA_ID(".q(get_schema()).") AND o.type IN ('S', 'U', 'V') AND o.name = ".q($R))as$J){$U=$J["type"];$te=(preg_match("~char|binary~",$U)?$J["max_length"]:($U=="decimal"?"$J[precision],$J[scale]":""));$I[$J["name"]]=array("field"=>$J["name"],"full_type"=>$U.($te?"($te)":""),"type"=>$U,"length"=>$te,"default"=>$J["default"],"null"=>$J["is_nullable"],"auto_increment"=>$J["is_identity"],"collation"=>$J["collation_name"],"privileges"=>array("insert"=>1,"select"=>1,"update"=>1),"primary"=>$J["is_identity"],);}return$I;}function
indexes($R,$h=null){$I=array();foreach(get_rows("SELECT i.name, key_ordinal, is_unique, is_primary_key, c.name AS column_name, is_descending_key
FROM sys.indexes i
INNER JOIN sys.index_columns ic ON i.object_id = ic.object_id AND i.index_id = ic.index_id
INNER JOIN sys.columns c ON ic.object_id = c.object_id AND ic.column_id = c.column_id
WHERE OBJECT_NAME(i.object_id) = ".q($R),$h)as$J){$C=$J["name"];$I[$C]["type"]=($J["is_primary_key"]?"PRIMARY":($J["is_unique"]?"UNIQUE":"INDEX"));$I[$C]["lengths"]=array();$I[$C]["columns"][$J["key_ordinal"]]=$J["column_name"];$I[$C]["descs"][$J["key_ordinal"]]=($J["is_descending_key"]?'1':null);}return$I;}function
view($C){global$g;return
array("select"=>preg_replace('~^(?:[^[]|\[[^]]*])*\s+AS\s+~isU','',$g->result("SELECT VIEW_DEFINITION FROM INFORMATION_SCHEMA.VIEWS WHERE TABLE_SCHEMA = SCHEMA_NAME() AND TABLE_NAME = ".q($C))));}function
collations(){$I=array();foreach(get_vals("SELECT name FROM fn_helpcollations()")as$pb)$I[preg_replace('~_.*~','',$pb)][]=$pb;return$I;}function
information_schema($l){return
false;}function
error(){global$g;return
nl_br(h(preg_replace('~^(\[[^]]*])+~m','',$g->error)));}function
create_database($l,$pb){return
queries("CREATE DATABASE ".idf_escape($l).(preg_match('~^[a-z0-9_]+$~i',$pb)?" COLLATE $pb":""));}function
drop_databases($k){return
queries("DROP DATABASE ".implode(", ",array_map('idf_escape',$k)));}function
rename_database($C,$pb){if(preg_match('~^[a-z0-9_]+$~i',$pb))queries("ALTER DATABASE ".idf_escape(DB)." COLLATE $pb");queries("ALTER DATABASE ".idf_escape(DB)." MODIFY NAME = ".idf_escape($C));return
true;}function
auto_increment(){return" IDENTITY".($_POST["Auto_increment"]!=""?"(".number($_POST["Auto_increment"]).",1)":"")." PRIMARY KEY";}function
alter_table($R,$C,$p,$dd,$vb,$vc,$pb,$Ma,$Rf){$c=array();foreach($p
as$o){$d=idf_escape($o[0]);$X=$o[1];if(!$X)$c["DROP"][]=" COLUMN $d";else{$X[1]=preg_replace("~( COLLATE )'(\\w+)'~",'\1\2',$X[1]);if($o[0]=="")$c["ADD"][]="\n  ".implode("",$X).($R==""?substr($dd[$X[0]],16+strlen($X[0])):"");else{unset($X[6]);if($d!=$X[0])queries("EXEC sp_rename ".q(table($R).".$d").", ".q(idf_unescape($X[0])).", 'COLUMN'");$c["ALTER COLUMN ".implode("",$X)][]="";}}}if($R=="")return
queries("CREATE TABLE ".table($C)." (".implode(",",(array)$c["ADD"])."\n)");if($R!=$C)queries("EXEC sp_rename ".q(table($R)).", ".q($C));if($dd)$c[""]=$dd;foreach($c
as$y=>$X){if(!queries("ALTER TABLE ".idf_escape($C)." $y".implode(",",$X)))return
false;}return
true;}function
alter_indexes($R,$c){$v=array();$gc=array();foreach($c
as$X){if($X[2]=="DROP"){if($X[0]=="PRIMARY")$gc[]=idf_escape($X[1]);else$v[]=idf_escape($X[1])." ON ".table($R);}elseif(!queries(($X[0]!="PRIMARY"?"CREATE $X[0] ".($X[0]!="INDEX"?"INDEX ":"").idf_escape($X[1]!=""?$X[1]:uniqid($R."_"))." ON ".table($R):"ALTER TABLE ".table($R)." ADD PRIMARY KEY")." (".implode(", ",$X[2]).")"))return
false;}return(!$v||queries("DROP INDEX ".implode(", ",$v)))&&(!$gc||queries("ALTER TABLE ".table($R)." DROP ".implode(", ",$gc)));}function
last_id(){global$g;return$g->result("SELECT SCOPE_IDENTITY()");}function
explain($g,$G){$g->query("SET SHOWPLAN_ALL ON");$I=$g->query($G);$g->query("SET SHOWPLAN_ALL OFF");return$I;}function
found_rows($S,$Z){}function
foreign_keys($R){$I=array();foreach(get_rows("EXEC sp_fkeys @fktable_name = ".q($R))as$J){$q=&$I[$J["FK_NAME"]];$q["table"]=$J["PKTABLE_NAME"];$q["source"][]=$J["FKCOLUMN_NAME"];$q["target"][]=$J["PKCOLUMN_NAME"];}return$I;}function
truncate_tables($T){return
apply_queries("TRUNCATE TABLE",$T);}function
drop_views($Wi){return
queries("DROP VIEW ".implode(", ",array_map('table',$Wi)));}function
drop_tables($T){return
queries("DROP TABLE ".implode(", ",array_map('table',$T)));}function
move_tables($T,$Wi,$Th){return
apply_queries("ALTER SCHEMA ".idf_escape($Th)." TRANSFER",array_merge($T,$Wi));}function
trigger($C){if($C=="")return
array();$K=get_rows("SELECT s.name [Trigger],
CASE WHEN OBJECTPROPERTY(s.id, 'ExecIsInsertTrigger') = 1 THEN 'INSERT' WHEN OBJECTPROPERTY(s.id, 'ExecIsUpdateTrigger') = 1 THEN 'UPDATE' WHEN OBJECTPROPERTY(s.id, 'ExecIsDeleteTrigger') = 1 THEN 'DELETE' END [Event],
CASE WHEN OBJECTPROPERTY(s.id, 'ExecIsInsteadOfTrigger') = 1 THEN 'INSTEAD OF' ELSE 'AFTER' END [Timing],
c.text
FROM sysobjects s
JOIN syscomments c ON s.id = c.id
WHERE s.xtype = 'TR' AND s.name = ".q($C));$I=reset($K);if($I)$I["Statement"]=preg_replace('~^.+\s+AS\s+~isU','',$I["text"]);return$I;}function
triggers($R){$I=array();foreach(get_rows("SELECT sys1.name,
CASE WHEN OBJECTPROPERTY(sys1.id, 'ExecIsInsertTrigger') = 1 THEN 'INSERT' WHEN OBJECTPROPERTY(sys1.id, 'ExecIsUpdateTrigger') = 1 THEN 'UPDATE' WHEN OBJECTPROPERTY(sys1.id, 'ExecIsDeleteTrigger') = 1 THEN 'DELETE' END [Event],
CASE WHEN OBJECTPROPERTY(sys1.id, 'ExecIsInsteadOfTrigger') = 1 THEN 'INSTEAD OF' ELSE 'AFTER' END [Timing]
FROM sysobjects sys1
JOIN sysobjects sys2 ON sys1.parent_obj = sys2.id
WHERE sys1.xtype = 'TR' AND sys2.name = ".q($R))as$J)$I[$J["name"]]=array($J["Timing"],$J["Event"]);return$I;}function
trigger_options(){return
array("Timing"=>array("AFTER","INSTEAD OF"),"Event"=>array("INSERT","UPDATE","DELETE"),"Type"=>array("AS"),);}function
schemas(){return
get_vals("SELECT name FROM sys.schemas");}function
get_schema(){global$g;if($_GET["ns"]!="")return$_GET["ns"];return$g->result("SELECT SCHEMA_NAME()");}function
set_schema($Xg){return
true;}function
use_sql($j){return"USE ".idf_escape($j);}function
show_variables(){return
array();}function
show_status(){return
array();}function
convert_field($o){}function
unconvert_field($o,$I){return$I;}function
support($Qc){return
preg_match('~^(columns|database|drop_col|indexes|scheme|sql|table|trigger|view|view_trigger)$~',$Qc);}$x="mssql";$zi=array();$Dh=array();foreach(array(lang(27)=>array("tinyint"=>3,"smallint"=>5,"int"=>10,"bigint"=>20,"bit"=>1,"decimal"=>0,"real"=>12,"float"=>53,"smallmoney"=>10,"money"=>20),lang(28)=>array("date"=>10,"smalldatetime"=>19,"datetime"=>19,"datetime2"=>19,"time"=>8,"datetimeoffset"=>10),lang(25)=>array("char"=>8000,"varchar"=>8000,"text"=>2147483647,"nchar"=>4000,"nvarchar"=>4000,"ntext"=>1073741823),lang(29)=>array("binary"=>8000,"varbinary"=>8000,"image"=>2147483647),)as$y=>$X){$zi+=$X;$Dh[$y]=array_keys($X);}$Fi=array();$sf=array("=","<",">","<=",">=","!=","LIKE","LIKE %%","IN","IS NULL","NOT LIKE","NOT IN","IS NOT NULL");$ld=array("len","lower","round","upper");$rd=array("avg","count","count distinct","max","min","sum");$nc=array(array("date|time"=>"getdate",),array("int|decimal|real|float|money|datetime"=>"+/-","char|text"=>"+",));}$fc['firebird']='Firebird (alpha)';if(isset($_GET["firebird"])){$eg=array("interbase");define("DRIVER","firebird");if(extension_loaded("interbase")){class
Min_DB{var$extension="Firebird",$server_info,$affected_rows,$errno,$error,$_link,$_result;function
connect($N,$V,$F){$this->_link=ibase_connect($N,$V,$F);if($this->_link){$Ji=explode(':',$N);$this->service_link=ibase_service_attach($Ji[0],$V,$F);$this->server_info=ibase_server_info($this->service_link,IBASE_SVC_SERVER_VERSION);}else{$this->errno=ibase_errcode();$this->error=ibase_errmsg();}return(bool)$this->_link;}function
quote($Q){return"'".str_replace("'","''",$Q)."'";}function
select_db($j){return($j=="domain");}function
query($G,$_i=false){$H=ibase_query($G,$this->_link);if(!$H){$this->errno=ibase_errcode();$this->error=ibase_errmsg();return
false;}$this->error="";if($H===true){$this->affected_rows=ibase_affected_rows($this->_link);return
true;}return
new
Min_Result($H);}function
multi_query($G){return$this->_result=$this->query($G);}function
store_result(){return$this->_result;}function
next_result(){return
false;}function
result($G,$o=0){$H=$this->query($G);if(!$H||!$H->num_rows)return
false;$J=$H->fetch_row();return$J[$o];}}class
Min_Result{var$num_rows,$_result,$_offset=0;function
__construct($H){$this->_result=$H;}function
fetch_assoc(){return
ibase_fetch_assoc($this->_result);}function
fetch_row(){return
ibase_fetch_row($this->_result);}function
fetch_field(){$o=ibase_field_info($this->_result,$this->_offset++);return(object)array('name'=>$o['name'],'orgname'=>$o['name'],'type'=>$o['type'],'charsetnr'=>$o['length'],);}function
__destruct(){ibase_free_result($this->_result);}}}class
Min_Driver
extends
Min_SQL{}function
idf_escape($u){return'"'.str_replace('"','""',$u).'"';}function
table($u){return
idf_escape($u);}function
connect(){global$b;$g=new
Min_DB;$Hb=$b->credentials();if($g->connect($Hb[0],$Hb[1],$Hb[2]))return$g;return$g->error;}function
get_databases($bd){return
array("domain");}function
limit($G,$Z,$z,$D=0,$M=" "){$I='';$I.=($z!==null?$M."FIRST $z".($D?" SKIP $D":""):"");$I.=" $G$Z";return$I;}function
limit1($R,$G,$Z,$M="\n"){return
limit($G,$Z,1,0,$M);}function
db_collation($l,$qb){}function
engines(){return
array();}function
logged_user(){global$b;$Hb=$b->credentials();return$Hb[1];}function
tables_list(){global$g;$G='SELECT RDB$RELATION_NAME FROM rdb$relations WHERE rdb$system_flag = 0';$H=ibase_query($g->_link,$G);$I=array();while($J=ibase_fetch_assoc($H))$I[$J['RDB$RELATION_NAME']]='table';ksort($I);return$I;}function
count_tables($k){return
array();}function
table_status($C="",$Pc=false){global$g;$I=array();$Mb=tables_list();foreach($Mb
as$v=>$X){$v=trim($v);$I[$v]=array('Name'=>$v,'Engine'=>'standard',);if($C==$v)return$I[$v];}return$I;}function
is_view($S){return
false;}function
fk_support($S){return
preg_match('~InnoDB|IBMDB2I~i',$S["Engine"]);}function
fields($R){global$g;$I=array();$G='SELECT r.RDB$FIELD_NAME AS field_name,
r.RDB$DESCRIPTION AS field_description,
r.RDB$DEFAULT_VALUE AS field_default_value,
r.RDB$NULL_FLAG AS field_not_null_constraint,
f.RDB$FIELD_LENGTH AS field_length,
f.RDB$FIELD_PRECISION AS field_precision,
f.RDB$FIELD_SCALE AS field_scale,
CASE f.RDB$FIELD_TYPE
WHEN 261 THEN \'BLOB\'
WHEN 14 THEN \'CHAR\'
WHEN 40 THEN \'CSTRING\'
WHEN 11 THEN \'D_FLOAT\'
WHEN 27 THEN \'DOUBLE\'
WHEN 10 THEN \'FLOAT\'
WHEN 16 THEN \'INT64\'
WHEN 8 THEN \'INTEGER\'
WHEN 9 THEN \'QUAD\'
WHEN 7 THEN \'SMALLINT\'
WHEN 12 THEN \'DATE\'
WHEN 13 THEN \'TIME\'
WHEN 35 THEN \'TIMESTAMP\'
WHEN 37 THEN \'VARCHAR\'
ELSE \'UNKNOWN\'
END AS field_type,
f.RDB$FIELD_SUB_TYPE AS field_subtype,
coll.RDB$COLLATION_NAME AS field_collation,
cset.RDB$CHARACTER_SET_NAME AS field_charset
FROM RDB$RELATION_FIELDS r
LEFT JOIN RDB$FIELDS f ON r.RDB$FIELD_SOURCE = f.RDB$FIELD_NAME
LEFT JOIN RDB$COLLATIONS coll ON f.RDB$COLLATION_ID = coll.RDB$COLLATION_ID
LEFT JOIN RDB$CHARACTER_SETS cset ON f.RDB$CHARACTER_SET_ID = cset.RDB$CHARACTER_SET_ID
WHERE r.RDB$RELATION_NAME = '.q($R).'
ORDER BY r.RDB$FIELD_POSITION';$H=ibase_query($g->_link,$G);while($J=ibase_fetch_assoc($H))$I[trim($J['FIELD_NAME'])]=array("field"=>trim($J["FIELD_NAME"]),"full_type"=>trim($J["FIELD_TYPE"]),"type"=>trim($J["FIELD_SUB_TYPE"]),"default"=>trim($J['FIELD_DEFAULT_VALUE']),"null"=>(trim($J["FIELD_NOT_NULL_CONSTRAINT"])=="YES"),"auto_increment"=>'0',"collation"=>trim($J["FIELD_COLLATION"]),"privileges"=>array("insert"=>1,"select"=>1,"update"=>1),"comment"=>trim($J["FIELD_DESCRIPTION"]),);return$I;}function
indexes($R,$h=null){$I=array();return$I;}function
foreign_keys($R){return
array();}function
collations(){return
array();}function
information_schema($l){return
false;}function
error(){global$g;return
h($g->error);}function
types(){return
array();}function
schemas(){return
array();}function
get_schema(){return"";}function
set_schema($Xg){return
true;}function
support($Qc){return
preg_match("~^(columns|sql|status|table)$~",$Qc);}$x="firebird";$sf=array("=");$ld=array();$rd=array();$nc=array();}$fc["simpledb"]="SimpleDB";if(isset($_GET["simpledb"])){$eg=array("SimpleXML + allow_url_fopen");define("DRIVER","simpledb");if(class_exists('SimpleXMLElement')&&ini_bool('allow_url_fopen')){class
Min_DB{var$extension="SimpleXML",$server_info='2009-04-15',$error,$timeout,$next,$affected_rows,$_result;function
select_db($j){return($j=="domain");}function
query($G,$_i=false){$Lf=array('SelectExpression'=>$G,'ConsistentRead'=>'true');if($this->next)$Lf['NextToken']=$this->next;$H=sdb_request_all('Select','Item',$Lf,$this->timeout);$this->timeout=0;if($H===false)return$H;if(preg_match('~^\s*SELECT\s+COUNT\(~i',$G)){$Hh=0;foreach($H
as$ae)$Hh+=$ae->Attribute->Value;$H=array((object)array('Attribute'=>array((object)array('Name'=>'Count','Value'=>$Hh,))));}return
new
Min_Result($H);}function
multi_query($G){return$this->_result=$this->query($G);}function
store_result(){return$this->_result;}function
next_result(){return
false;}function
quote($Q){return"'".str_replace("'","''",$Q)."'";}}class
Min_Result{var$num_rows,$_rows=array(),$_offset=0;function
__construct($H){foreach($H
as$ae){$J=array();if($ae->Name!='')$J['itemName()']=(string)$ae->Name;foreach($ae->Attribute
as$Ja){$C=$this->_processValue($Ja->Name);$Y=$this->_processValue($Ja->Value);if(isset($J[$C])){$J[$C]=(array)$J[$C];$J[$C][]=$Y;}else$J[$C]=$Y;}$this->_rows[]=$J;foreach($J
as$y=>$X){if(!isset($this->_rows[0][$y]))$this->_rows[0][$y]=null;}}$this->num_rows=count($this->_rows);}function
_processValue($qc){return(is_object($qc)&&$qc['encoding']=='base64'?base64_decode($qc):(string)$qc);}function
fetch_assoc(){$J=current($this->_rows);if(!$J)return$J;$I=array();foreach($this->_rows[0]as$y=>$X)$I[$y]=$J[$y];next($this->_rows);return$I;}function
fetch_row(){$I=$this->fetch_assoc();if(!$I)return$I;return
array_values($I);}function
fetch_field(){$ge=array_keys($this->_rows[0]);return(object)array('name'=>$ge[$this->_offset++]);}}}class
Min_Driver
extends
Min_SQL{public$hg="itemName()";function
_chunkRequest($Ed,$wa,$Lf,$Fc=array()){global$g;foreach(array_chunk($Ed,25)as$ib){$Mf=$Lf;foreach($ib
as$s=>$t){$Mf["Item.$s.ItemName"]=$t;foreach($Fc
as$y=>$X)$Mf["Item.$s.$y"]=$X;}if(!sdb_request($wa,$Mf))return
false;}$g->affected_rows=count($Ed);return
true;}function
_extractIds($R,$tg,$z){$I=array();if(preg_match_all("~itemName\(\) = (('[^']*+')+)~",$tg,$Ce))$I=array_map('idf_unescape',$Ce[1]);else{foreach(sdb_request_all('Select','Item',array('SelectExpression'=>'SELECT itemName() FROM '.table($R).$tg.($z?" LIMIT 1":"")))as$ae)$I[]=$ae->Name;}return$I;}function
select($R,$L,$Z,$od,$xf=array(),$z=1,$E=0,$jg=false){global$g;$g->next=$_GET["next"];$I=parent::select($R,$L,$Z,$od,$xf,$z,$E,$jg);$g->next=0;return$I;}function
delete($R,$tg,$z=0){return$this->_chunkRequest($this->_extractIds($R,$tg,$z),'BatchDeleteAttributes',array('DomainName'=>$R));}function
update($R,$O,$tg,$z=0,$M="\n"){$Vb=array();$Sd=array();$s=0;$Ed=$this->_extractIds($R,$tg,$z);$t=idf_unescape($O["`itemName()`"]);unset($O["`itemName()`"]);foreach($O
as$y=>$X){$y=idf_unescape($y);if($X=="NULL"||($t!=""&&array($t)!=$Ed))$Vb["Attribute.".count($Vb).".Name"]=$y;if($X!="NULL"){foreach((array)$X
as$ce=>$W){$Sd["Attribute.$s.Name"]=$y;$Sd["Attribute.$s.Value"]=(is_array($X)?$W:idf_unescape($W));if(!$ce)$Sd["Attribute.$s.Replace"]="true";$s++;}}}$Lf=array('DomainName'=>$R);return(!$Sd||$this->_chunkRequest(($t!=""?array($t):$Ed),'BatchPutAttributes',$Lf,$Sd))&&(!$Vb||$this->_chunkRequest($Ed,'BatchDeleteAttributes',$Lf,$Vb));}function
insert($R,$O){$Lf=array("DomainName"=>$R);$s=0;foreach($O
as$C=>$Y){if($Y!="NULL"){$C=idf_unescape($C);if($C=="itemName()")$Lf["ItemName"]=idf_unescape($Y);else{foreach((array)$Y
as$X){$Lf["Attribute.$s.Name"]=$C;$Lf["Attribute.$s.Value"]=(is_array($Y)?$X:idf_unescape($Y));$s++;}}}}return
sdb_request('PutAttributes',$Lf);}function
insertUpdate($R,$K,$hg){foreach($K
as$O){if(!$this->update($R,$O,"WHERE `itemName()` = ".q($O["`itemName()`"])))return
false;}return
true;}function
begin(){return
false;}function
commit(){return
false;}function
rollback(){return
false;}function
slowQuery($G,$bi){$this->_conn->timeout=$bi;return$G;}}function
connect(){global$b;list(,,$F)=$b->credentials();if($F!="")return
lang(22);return
new
Min_DB;}function
support($Qc){return
preg_match('~sql~',$Qc);}function
logged_user(){global$b;$Hb=$b->credentials();return$Hb[1];}function
get_databases(){return
array("domain");}function
collations(){return
array();}function
db_collation($l,$qb){}function
tables_list(){global$g;$I=array();foreach(sdb_request_all('ListDomains','DomainName')as$R)$I[(string)$R]='table';if($g->error&&defined("PAGE_HEADER"))echo"<p class='error'>".error()."\n";return$I;}function
table_status($C="",$Pc=false){$I=array();foreach(($C!=""?array($C=>true):tables_list())as$R=>$U){$J=array("Name"=>$R,"Auto_increment"=>"");if(!$Pc){$Pe=sdb_request('DomainMetadata',array('DomainName'=>$R));if($Pe){foreach(array("Rows"=>"ItemCount","Data_length"=>"ItemNamesSizeBytes","Index_length"=>"AttributeValuesSizeBytes","Data_free"=>"AttributeNamesSizeBytes",)as$y=>$X)$J[$y]=(string)$Pe->$X;}}if($C!="")return$J;$I[$R]=$J;}return$I;}function
explain($g,$G){}function
error(){global$g;return
h($g->error);}function
information_schema(){}function
is_view($S){}function
indexes($R,$h=null){return
array(array("type"=>"PRIMARY","columns"=>array("itemName()")),);}function
fields($R){return
fields_from_edit();}function
foreign_keys($R){return
array();}function
table($u){return
idf_escape($u);}function
idf_escape($u){return"`".str_replace("`","``",$u)."`";}function
limit($G,$Z,$z,$D=0,$M=" "){return" $G$Z".($z!==null?$M."LIMIT $z":"");}function
unconvert_field($o,$I){return$I;}function
fk_support($S){}function
engines(){return
array();}function
alter_table($R,$C,$p,$dd,$vb,$vc,$pb,$Ma,$Rf){return($R==""&&sdb_request('CreateDomain',array('DomainName'=>$C)));}function
drop_tables($T){foreach($T
as$R){if(!sdb_request('DeleteDomain',array('DomainName'=>$R)))return
false;}return
true;}function
count_tables($k){foreach($k
as$l)return
array($l=>count(tables_list()));}function
found_rows($S,$Z){return($Z?null:$S["Rows"]);}function
last_id(){}function
hmac($Ca,$Mb,$y,$xg=false){$Va=64;if(strlen($y)>$Va)$y=pack("H*",$Ca($y));$y=str_pad($y,$Va,"\0");$de=$y^str_repeat("\x36",$Va);$ee=$y^str_repeat("\x5C",$Va);$I=$Ca($ee.pack("H*",$Ca($de.$Mb)));if($xg)$I=pack("H*",$I);return$I;}function
sdb_request($wa,$Lf=array()){global$b,$g;list($Bd,$Lf['AWSAccessKeyId'],$ah)=$b->credentials();$Lf['Action']=$wa;$Lf['Timestamp']=gmdate('Y-m-d\TH:i:s+00:00');$Lf['Version']='2009-04-15';$Lf['SignatureVersion']=2;$Lf['SignatureMethod']='HmacSHA1';ksort($Lf);$G='';foreach($Lf
as$y=>$X)$G.='&'.rawurlencode($y).'='.rawurlencode($X);$G=str_replace('%7E','~',substr($G,1));$G.="&Signature=".urlencode(base64_encode(hmac('sha1',"POST\n".preg_replace('~^https?://~','',$Bd)."\n/\n$G",$ah,true)));@ini_set('track_errors',1);$Uc=@file_get_contents((preg_match('~^https?://~',$Bd)?$Bd:"http://$Bd"),false,stream_context_create(array('http'=>array('method'=>'POST','content'=>$G,'ignore_errors'=>1,))));if(!$Uc){$g->error=$php_errormsg;return
false;}libxml_use_internal_errors(true);$jj=simplexml_load_string($Uc);if(!$jj){$n=libxml_get_last_error();$g->error=$n->message;return
false;}if($jj->Errors){$n=$jj->Errors->Error;$g->error="$n->Message ($n->Code)";return
false;}$g->error='';$Sh=$wa."Result";return($jj->$Sh?$jj->$Sh:true);}function
sdb_request_all($wa,$Sh,$Lf=array(),$bi=0){$I=array();$_h=($bi?microtime(true):0);$z=(preg_match('~LIMIT\s+(\d+)\s*$~i',$Lf['SelectExpression'],$B)?$B[1]:0);do{$jj=sdb_request($wa,$Lf);if(!$jj)break;foreach($jj->$Sh
as$qc)$I[]=$qc;if($z&&count($I)>=$z){$_GET["next"]=$jj->NextToken;break;}if($bi&&microtime(true)-$_h>$bi)return
false;$Lf['NextToken']=$jj->NextToken;if($z)$Lf['SelectExpression']=preg_replace('~\d+\s*$~',$z-count($I),$Lf['SelectExpression']);}while($jj->NextToken);return$I;}$x="simpledb";$sf=array("=","<",">","<=",">=","!=","LIKE","LIKE %%","IN","IS NULL","NOT LIKE","IS NOT NULL");$ld=array();$rd=array("count");$nc=array(array("json"));}$fc["mongo"]="MongoDB";if(isset($_GET["mongo"])){$eg=array("mongo","mongodb");define("DRIVER","mongo");if(class_exists('MongoDB')){class
Min_DB{var$extension="Mongo",$server_info=MongoClient::VERSION,$error,$last_id,$_link,$_db;function
connect($Hi,$vf){return@new
MongoClient($Hi,$vf);}function
query($G){return
false;}function
select_db($j){try{$this->_db=$this->_link->selectDB($j);return
true;}catch(Exception$Bc){$this->error=$Bc->getMessage();return
false;}}function
quote($Q){return$Q;}}class
Min_Result{var$num_rows,$_rows=array(),$_offset=0,$_charset=array();function
__construct($H){foreach($H
as$ae){$J=array();foreach($ae
as$y=>$X){if(is_a($X,'MongoBinData'))$this->_charset[$y]=63;$J[$y]=(is_a($X,'MongoId')?'ObjectId("'.strval($X).'")':(is_a($X,'MongoDate')?gmdate("Y-m-d H:i:s",$X->sec)." GMT":(is_a($X,'MongoBinData')?$X->bin:(is_a($X,'MongoRegex')?strval($X):(is_object($X)?get_class($X):$X)))));}$this->_rows[]=$J;foreach($J
as$y=>$X){if(!isset($this->_rows[0][$y]))$this->_rows[0][$y]=null;}}$this->num_rows=count($this->_rows);}function
fetch_assoc(){$J=current($this->_rows);if(!$J)return$J;$I=array();foreach($this->_rows[0]as$y=>$X)$I[$y]=$J[$y];next($this->_rows);return$I;}function
fetch_row(){$I=$this->fetch_assoc();if(!$I)return$I;return
array_values($I);}function
fetch_field(){$ge=array_keys($this->_rows[0]);$C=$ge[$this->_offset++];return(object)array('name'=>$C,'charsetnr'=>$this->_charset[$C],);}}class
Min_Driver
extends
Min_SQL{public$hg="_id";function
select($R,$L,$Z,$od,$xf=array(),$z=1,$E=0,$jg=false){$L=($L==array("*")?array():array_fill_keys($L,true));$rh=array();foreach($xf
as$X){$X=preg_replace('~ DESC$~','',$X,1,$Eb);$rh[$X]=($Eb?-1:1);}return
new
Min_Result($this->_conn->_db->selectCollection($R)->find(array(),$L)->sort($rh)->limit($z!=""?+$z:0)->skip($E*$z));}function
insert($R,$O){try{$I=$this->_conn->_db->selectCollection($R)->insert($O);$this->_conn->errno=$I['code'];$this->_conn->error=$I['err'];$this->_conn->last_id=$O['_id'];return!$I['err'];}catch(Exception$Bc){$this->_conn->error=$Bc->getMessage();return
false;}}}function
get_databases($bd){global$g;$I=array();$Rb=$g->_link->listDBs();foreach($Rb['databases']as$l)$I[]=$l['name'];return$I;}function
count_tables($k){global$g;$I=array();foreach($k
as$l)$I[$l]=count($g->_link->selectDB($l)->getCollectionNames(true));return$I;}function
tables_list(){global$g;return
array_fill_keys($g->_db->getCollectionNames(true),'table');}function
drop_databases($k){global$g;foreach($k
as$l){$Jg=$g->_link->selectDB($l)->drop();if(!$Jg['ok'])return
false;}return
true;}function
indexes($R,$h=null){global$g;$I=array();foreach($g->_db->selectCollection($R)->getIndexInfo()as$v){$Yb=array();foreach($v["key"]as$d=>$U)$Yb[]=($U==-1?'1':null);$I[$v["name"]]=array("type"=>($v["name"]=="_id_"?"PRIMARY":($v["unique"]?"UNIQUE":"INDEX")),"columns"=>array_keys($v["key"]),"lengths"=>array(),"descs"=>$Yb,);}return$I;}function
fields($R){return
fields_from_edit();}function
found_rows($S,$Z){global$g;return$g->_db->selectCollection($_GET["select"])->count($Z);}$sf=array("=");}elseif(class_exists('MongoDB\Driver\Manager')){class
Min_DB{var$extension="MongoDB",$server_info=MONGODB_VERSION,$error,$last_id;var$_link;var$_db,$_db_name;function
connect($Hi,$vf){$kb='MongoDB\Driver\Manager';return
new$kb($Hi,$vf);}function
query($G){return
false;}function
select_db($j){$this->_db_name=$j;return
true;}function
quote($Q){return$Q;}}class
Min_Result{var$num_rows,$_rows=array(),$_offset=0,$_charset=array();function
__construct($H){foreach($H
as$ae){$J=array();foreach($ae
as$y=>$X){if(is_a($X,'MongoDB\BSON\Binary'))$this->_charset[$y]=63;$J[$y]=(is_a($X,'MongoDB\BSON\ObjectID')?'MongoDB\BSON\ObjectID("'.strval($X).'")':(is_a($X,'MongoDB\BSON\UTCDatetime')?$X->toDateTime()->format('Y-m-d H:i:s'):(is_a($X,'MongoDB\BSON\Binary')?$X->bin:(is_a($X,'MongoDB\BSON\Regex')?strval($X):(is_object($X)?json_encode($X,256):$X)))));}$this->_rows[]=$J;foreach($J
as$y=>$X){if(!isset($this->_rows[0][$y]))$this->_rows[0][$y]=null;}}$this->num_rows=$H->count;}function
fetch_assoc(){$J=current($this->_rows);if(!$J)return$J;$I=array();foreach($this->_rows[0]as$y=>$X)$I[$y]=$J[$y];next($this->_rows);return$I;}function
fetch_row(){$I=$this->fetch_assoc();if(!$I)return$I;return
array_values($I);}function
fetch_field(){$ge=array_keys($this->_rows[0]);$C=$ge[$this->_offset++];return(object)array('name'=>$C,'charsetnr'=>$this->_charset[$C],);}}class
Min_Driver
extends
Min_SQL{public$hg="_id";function
select($R,$L,$Z,$od,$xf=array(),$z=1,$E=0,$jg=false){global$g;$L=($L==array("*")?array():array_fill_keys($L,1));if(count($L)&&!isset($L['_id']))$L['_id']=0;$Z=where_to_query($Z);$rh=array();foreach($xf
as$X){$X=preg_replace('~ DESC$~','',$X,1,$Eb);$rh[$X]=($Eb?-1:1);}if(isset($_GET['limit'])&&is_numeric($_GET['limit'])&&$_GET['limit']>0)$z=$_GET['limit'];$z=min(200,max(1,(int)$z));$oh=$E*$z;$kb='MongoDB\Driver\Query';$G=new$kb($Z,array('projection'=>$L,'limit'=>$z,'skip'=>$oh,'sort'=>$rh));$Mg=$g->_link->executeQuery("$g->_db_name.$R",$G);return
new
Min_Result($Mg);}function
update($R,$O,$tg,$z=0,$M="\n"){global$g;$l=$g->_db_name;$Z=sql_query_where_parser($tg);$kb='MongoDB\Driver\BulkWrite';$Za=new$kb(array());if(isset($O['_id']))unset($O['_id']);$Gg=array();foreach($O
as$y=>$Y){if($Y=='NULL'){$Gg[$y]=1;unset($O[$y]);}}$Gi=array('$set'=>$O);if(count($Gg))$Gi['$unset']=$Gg;$Za->update($Z,$Gi,array('upsert'=>false));$Mg=$g->_link->executeBulkWrite("$l.$R",$Za);$g->affected_rows=$Mg->getModifiedCount();return
true;}function
delete($R,$tg,$z=0){global$g;$l=$g->_db_name;$Z=sql_query_where_parser($tg);$kb='MongoDB\Driver\BulkWrite';$Za=new$kb(array());$Za->delete($Z,array('limit'=>$z));$Mg=$g->_link->executeBulkWrite("$l.$R",$Za);$g->affected_rows=$Mg->getDeletedCount();return
true;}function
insert($R,$O){global$g;$l=$g->_db_name;$kb='MongoDB\Driver\BulkWrite';$Za=new$kb(array());if(isset($O['_id'])&&empty($O['_id']))unset($O['_id']);$Za->insert($O);$Mg=$g->_link->executeBulkWrite("$l.$R",$Za);$g->affected_rows=$Mg->getInsertedCount();return
true;}}function
get_databases($bd){global$g;$I=array();$kb='MongoDB\Driver\Command';$tb=new$kb(array('listDatabases'=>1));$Mg=$g->_link->executeCommand('admin',$tb);foreach($Mg
as$Rb){foreach($Rb->databases
as$l)$I[]=$l->name;}return$I;}function
count_tables($k){$I=array();return$I;}function
tables_list(){global$g;$kb='MongoDB\Driver\Command';$tb=new$kb(array('listCollections'=>1));$Mg=$g->_link->executeCommand($g->_db_name,$tb);$rb=array();foreach($Mg
as$H)$rb[$H->name]='table';return$rb;}function
drop_databases($k){return
false;}function
indexes($R,$h=null){global$g;$I=array();$kb='MongoDB\Driver\Command';$tb=new$kb(array('listIndexes'=>$R));$Mg=$g->_link->executeCommand($g->_db_name,$tb);foreach($Mg
as$v){$Yb=array();$e=array();foreach(get_object_vars($v->key)as$d=>$U){$Yb[]=($U==-1?'1':null);$e[]=$d;}$I[$v->name]=array("type"=>($v->name=="_id_"?"PRIMARY":(isset($v->unique)?"UNIQUE":"INDEX")),"columns"=>$e,"lengths"=>array(),"descs"=>$Yb,);}return$I;}function
fields($R){$p=fields_from_edit();if(!count($p)){global$m;$H=$m->select($R,array("*"),null,null,array(),10);while($J=$H->fetch_assoc()){foreach($J
as$y=>$X){$J[$y]=null;$p[$y]=array("field"=>$y,"type"=>"string","null"=>($y!=$m->primary),"auto_increment"=>($y==$m->primary),"privileges"=>array("insert"=>1,"select"=>1,"update"=>1,),);}}}return$p;}function
found_rows($S,$Z){global$g;$Z=where_to_query($Z);$kb='MongoDB\Driver\Command';$tb=new$kb(array('count'=>$S['Name'],'query'=>$Z));$Mg=$g->_link->executeCommand($g->_db_name,$tb);$ji=$Mg->toArray();return$ji[0]->n;}function
sql_query_where_parser($tg){$tg=trim(preg_replace('/WHERE[\s]?[(]?\(?/','',$tg));$tg=preg_replace('/\)\)\)$/',')',$tg);$gj=explode(' AND ',$tg);$hj=explode(') OR (',$tg);$Z=array();foreach($gj
as$ej)$Z[]=trim($ej);if(count($hj)==1)$hj=array();elseif(count($hj)>1)$Z=array();return
where_to_query($Z,$hj);}function
where_to_query($cj=array(),$dj=array()){global$b;$Mb=array();foreach(array('and'=>$cj,'or'=>$dj)as$U=>$Z){if(is_array($Z)){foreach($Z
as$Ic){list($nb,$qf,$X)=explode(" ",$Ic,3);if($nb=="_id"){$X=str_replace('MongoDB\BSON\ObjectID("',"",$X);$X=str_replace('")',"",$X);$kb='MongoDB\BSON\ObjectID';$X=new$kb($X);}if(!in_array($qf,$b->operators))continue;if(preg_match('~^\(f\)(.+)~',$qf,$B)){$X=(float)$X;$qf=$B[1];}elseif(preg_match('~^\(date\)(.+)~',$qf,$B)){$Ob=new
DateTime($X);$kb='MongoDB\BSON\UTCDatetime';$X=new$kb($Ob->getTimestamp()*1000);$qf=$B[1];}switch($qf){case'=':$qf='$eq';break;case'!=':$qf='$ne';break;case'>':$qf='$gt';break;case'<':$qf='$lt';break;case'>=':$qf='$gte';break;case'<=':$qf='$lte';break;case'regex':$qf='$regex';break;default:continue;}if($U=='and')$Mb['$and'][]=array($nb=>array($qf=>$X));elseif($U=='or')$Mb['$or'][]=array($nb=>array($qf=>$X));}}}return$Mb;}$sf=array("=","!=",">","<",">=","<=","regex","(f)=","(f)!=","(f)>","(f)<","(f)>=","(f)<=","(date)=","(date)!=","(date)>","(date)<","(date)>=","(date)<=",);}function
table($u){return$u;}function
idf_escape($u){return$u;}function
table_status($C="",$Pc=false){$I=array();foreach(tables_list()as$R=>$U){$I[$R]=array("Name"=>$R);if($C==$R)return$I[$R];}return$I;}function
create_database($l,$pb){return
true;}function
last_id(){global$g;return$g->last_id;}function
error(){global$g;return
h($g->error);}function
collations(){return
array();}function
logged_user(){global$b;$Hb=$b->credentials();return$Hb[1];}function
connect(){global$b;$g=new
Min_DB;list($N,$V,$F)=$b->credentials();$vf=array();if($V.$F!=""){$vf["username"]=$V;$vf["password"]=$F;}$l=$b->database();if($l!="")$vf["db"]=$l;try{$g->_link=$g->connect("mongodb://$N",$vf);if($F!=""){$vf["password"]="";try{$g->connect("mongodb://$N",$vf);return
lang(22);}catch(Exception$Bc){}}return$g;}catch(Exception$Bc){return$Bc->getMessage();}}function
alter_indexes($R,$c){global$g;foreach($c
as$X){list($U,$C,$O)=$X;if($O=="DROP")$I=$g->_db->command(array("deleteIndexes"=>$R,"index"=>$C));else{$e=array();foreach($O
as$d){$d=preg_replace('~ DESC$~','',$d,1,$Eb);$e[$d]=($Eb?-1:1);}$I=$g->_db->selectCollection($R)->ensureIndex($e,array("unique"=>($U=="UNIQUE"),"name"=>$C,));}if($I['errmsg']){$g->error=$I['errmsg'];return
false;}}return
true;}function
support($Qc){return
preg_match("~database|indexes~",$Qc);}function
db_collation($l,$qb){}function
information_schema(){}function
is_view($S){}function
convert_field($o){}function
unconvert_field($o,$I){return$I;}function
foreign_keys($R){return
array();}function
fk_support($S){}function
engines(){return
array();}function
alter_table($R,$C,$p,$dd,$vb,$vc,$pb,$Ma,$Rf){global$g;if($R==""){$g->_db->createCollection($C);return
true;}}function
drop_tables($T){global$g;foreach($T
as$R){$Jg=$g->_db->selectCollection($R)->drop();if(!$Jg['ok'])return
false;}return
true;}function
truncate_tables($T){global$g;foreach($T
as$R){$Jg=$g->_db->selectCollection($R)->remove();if(!$Jg['ok'])return
false;}return
true;}$x="mongo";$ld=array();$rd=array();$nc=array(array("json"));}$fc["elastic"]="Elasticsearch (beta)";if(isset($_GET["elastic"])){$eg=array("json + allow_url_fopen");define("DRIVER","elastic");if(function_exists('json_decode')&&ini_bool('allow_url_fopen')){class
Min_DB{var$extension="JSON",$server_info,$errno,$error,$_url;function
rootQuery($Vf,$_b=array(),$Qe='GET'){@ini_set('track_errors',1);$Uc=@file_get_contents("$this->_url/".ltrim($Vf,'/'),false,stream_context_create(array('http'=>array('method'=>$Qe,'content'=>$_b===null?$_b:json_encode($_b),'header'=>'Content-Type: application/json','ignore_errors'=>1,))));if(!$Uc){$this->error=$php_errormsg;return$Uc;}if(!preg_match('~^HTTP/[0-9.]+ 2~i',$http_response_header[0])){$this->error=$Uc;return
false;}$I=json_decode($Uc,true);if($I===null){$this->errno=json_last_error();if(function_exists('json_last_error_msg'))$this->error=json_last_error_msg();else{$zb=get_defined_constants(true);foreach($zb['json']as$C=>$Y){if($Y==$this->errno&&preg_match('~^JSON_ERROR_~',$C)){$this->error=$C;break;}}}}return$I;}function
query($Vf,$_b=array(),$Qe='GET'){return$this->rootQuery(($this->_db!=""?"$this->_db/":"/").ltrim($Vf,'/'),$_b,$Qe);}function
connect($N,$V,$F){preg_match('~^(https?://)?(.*)~',$N,$B);$this->_url=($B[1]?$B[1]:"http://")."$V:$F@$B[2]";$I=$this->query('');if($I)$this->server_info=$I['version']['number'];return(bool)$I;}function
select_db($j){$this->_db=$j;return
true;}function
quote($Q){return$Q;}}class
Min_Result{var$num_rows,$_rows;function
__construct($K){$this->num_rows=count($this->_rows);$this->_rows=$K;reset($this->_rows);}function
fetch_assoc(){$I=current($this->_rows);next($this->_rows);return$I;}function
fetch_row(){return
array_values($this->fetch_assoc());}}}class
Min_Driver
extends
Min_SQL{function
select($R,$L,$Z,$od,$xf=array(),$z=1,$E=0,$jg=false){global$b;$Mb=array();$G="$R/_search";if($L!=array("*"))$Mb["fields"]=$L;if($xf){$rh=array();foreach($xf
as$nb){$nb=preg_replace('~ DESC$~','',$nb,1,$Eb);$rh[]=($Eb?array($nb=>"desc"):$nb);}$Mb["sort"]=$rh;}if($z){$Mb["size"]=+$z;if($E)$Mb["from"]=($E*$z);}foreach($Z
as$X){list($nb,$qf,$X)=explode(" ",$X,3);if($nb=="_id")$Mb["query"]["ids"]["values"][]=$X;elseif($nb.$X!=""){$Wh=array("term"=>array(($nb!=""?$nb:"_all")=>$X));if($qf=="=")$Mb["query"]["filtered"]["filter"]["and"][]=$Wh;else$Mb["query"]["filtered"]["query"]["bool"]["must"][]=$Wh;}}if($Mb["query"]&&!$Mb["query"]["filtered"]["query"]&&!$Mb["query"]["ids"])$Mb["query"]["filtered"]["query"]=array("match_all"=>array());$_h=microtime(true);$Zg=$this->_conn->query($G,$Mb);if($jg)echo$b->selectQuery("$G: ".print_r($Mb,true),$_h,!$Zg);if(!$Zg)return
false;$I=array();foreach($Zg['hits']['hits']as$Ad){$J=array();if($L==array("*"))$J["_id"]=$Ad["_id"];$p=$Ad['_source'];if($L!=array("*")){$p=array();foreach($L
as$y)$p[$y]=$Ad['fields'][$y];}foreach($p
as$y=>$X){if($Mb["fields"])$X=$X[0];$J[$y]=(is_array($X)?json_encode($X):$X);}$I[]=$J;}return
new
Min_Result($I);}function
update($U,$yg,$tg,$z=0,$M="\n"){$Tf=preg_split('~ *= *~',$tg);if(count($Tf)==2){$t=trim($Tf[1]);$G="$U/$t";return$this->_conn->query($G,$yg,'POST');}return
false;}function
insert($U,$yg){$t="";$G="$U/$t";$Jg=$this->_conn->query($G,$yg,'POST');$this->_conn->last_id=$Jg['_id'];return$Jg['created'];}function
delete($U,$tg,$z=0){$Ed=array();if(is_array($_GET["where"])&&$_GET["where"]["_id"])$Ed[]=$_GET["where"]["_id"];if(is_array($_POST['check'])){foreach($_POST['check']as$db){$Tf=preg_split('~ *= *~',$db);if(count($Tf)==2)$Ed[]=trim($Tf[1]);}}$this->_conn->affected_rows=0;foreach($Ed
as$t){$G="{$U}/{$t}";$Jg=$this->_conn->query($G,'{}','DELETE');if(is_array($Jg)&&$Jg['found']==true)$this->_conn->affected_rows++;}return$this->_conn->affected_rows;}}function
connect(){global$b;$g=new
Min_DB;list($N,$V,$F)=$b->credentials();if($F!=""&&$g->connect($N,$V,""))return
lang(22);if($g->connect($N,$V,$F))return$g;return$g->error;}function
support($Qc){return
preg_match("~database|table|columns~",$Qc);}function
logged_user(){global$b;$Hb=$b->credentials();return$Hb[1];}function
get_databases(){global$g;$I=$g->rootQuery('_aliases');if($I){$I=array_keys($I);sort($I,SORT_STRING);}return$I;}function
collations(){return
array();}function
db_collation($l,$qb){}function
engines(){return
array();}function
count_tables($k){global$g;$I=array();$H=$g->query('_stats');if($H&&$H['indices']){$Ld=$H['indices'];foreach($Ld
as$Kd=>$Ah){$Jd=$Ah['total']['indexing'];$I[$Kd]=$Jd['index_total'];}}return$I;}function
tables_list(){global$g;$I=$g->query('_mapping');if($I)$I=array_fill_keys(array_keys($I[$g->_db]["mappings"]),'table');return$I;}function
table_status($C="",$Pc=false){global$g;$Zg=$g->query("_search",array("size"=>0,"aggregations"=>array("count_by_type"=>array("terms"=>array("field"=>"_type")))),"POST");$I=array();if($Zg){$T=$Zg["aggregations"]["count_by_type"]["buckets"];foreach($T
as$R){$I[$R["key"]]=array("Name"=>$R["key"],"Engine"=>"table","Rows"=>$R["doc_count"],);if($C!=""&&$C==$R["key"])return$I[$C];}}return$I;}function
error(){global$g;return
h($g->error);}function
information_schema(){}function
is_view($S){}function
indexes($R,$h=null){return
array(array("type"=>"PRIMARY","columns"=>array("_id")),);}function
fields($R){global$g;$H=$g->query("$R/_mapping");$I=array();if($H){$ze=$H[$R]['properties'];if(!$ze)$ze=$H[$g->_db]['mappings'][$R]['properties'];if($ze){foreach($ze
as$C=>$o){$I[$C]=array("field"=>$C,"full_type"=>$o["type"],"type"=>$o["type"],"privileges"=>array("insert"=>1,"select"=>1,"update"=>1),);if($o["properties"]){unset($I[$C]["privileges"]["insert"]);unset($I[$C]["privileges"]["update"]);}}}}return$I;}function
foreign_keys($R){return
array();}function
table($u){return$u;}function
idf_escape($u){return$u;}function
convert_field($o){}function
unconvert_field($o,$I){return$I;}function
fk_support($S){}function
found_rows($S,$Z){return
null;}function
create_database($l){global$g;return$g->rootQuery(urlencode($l),null,'PUT');}function
drop_databases($k){global$g;return$g->rootQuery(urlencode(implode(',',$k)),array(),'DELETE');}function
alter_table($R,$C,$p,$dd,$vb,$vc,$pb,$Ma,$Rf){global$g;$pg=array();foreach($p
as$Nc){$Sc=trim($Nc[1][0]);$Tc=trim($Nc[1][1]?$Nc[1][1]:"text");$pg[$Sc]=array('type'=>$Tc);}if(!empty($pg))$pg=array('properties'=>$pg);return$g->query("_mapping/{$C}",$pg,'PUT');}function
drop_tables($T){global$g;$I=true;foreach($T
as$R)$I=$I&&$g->query(urlencode($R),array(),'DELETE');return$I;}function
last_id(){global$g;return$g->last_id;}$x="elastic";$sf=array("=","query");$ld=array();$rd=array();$nc=array(array("json"));$zi=array();$Dh=array();foreach(array(lang(27)=>array("long"=>3,"integer"=>5,"short"=>8,"byte"=>10,"double"=>20,"float"=>66,"half_float"=>12,"scaled_float"=>21),lang(28)=>array("date"=>10),lang(25)=>array("string"=>65535,"text"=>65535),lang(29)=>array("binary"=>255),)as$y=>$X){$zi+=$X;$Dh[$y]=array_keys($X);}}$fc=array("server"=>"MySQL")+$fc;if(!defined("DRIVER")){$eg=array("MySQLi","MySQL","PDO_MySQL");define("DRIVER","server");if(extension_loaded("mysqli")){class
Min_DB
extends
MySQLi{var$extension="MySQLi";function
__construct(){parent::init();}function
connect($N="",$V="",$F="",$j=null,$ag=null,$qh=null){global$b;mysqli_report(MYSQLI_REPORT_OFF);list($Bd,$ag)=explode(":",$N,2);$zh=$b->connectSsl();if($zh)$this->ssl_set($zh['key'],$zh['cert'],$zh['ca'],'','');$I=@$this->real_connect(($N!=""?$Bd:ini_get("mysqli.default_host")),($N.$V!=""?$V:ini_get("mysqli.default_user")),($N.$V.$F!=""?$F:ini_get("mysqli.default_pw")),$j,(is_numeric($ag)?$ag:ini_get("mysqli.default_port")),(!is_numeric($ag)?$ag:$qh),($zh?64:0));$this->options(MYSQLI_OPT_LOCAL_INFILE,false);return$I;}function
set_charset($cb){if(parent::set_charset($cb))return
true;parent::set_charset('utf8');return$this->query("SET NAMES $cb");}function
result($G,$o=0){$H=$this->query($G);if(!$H)return
false;$J=$H->fetch_array();return$J[$o];}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
Min_DB{var$extension="MySQL",$server_info,$affected_rows,$errno,$error,$_link,$_result;function
connect($N,$V,$F){if(ini_bool("mysql.allow_local_infile")){$this->error=lang(32,"'mysql.allow_local_infile'","MySQLi","PDO_MySQL");return
false;}$this->_link=@mysql_connect(($N!=""?$N:ini_get("mysql.default_host")),("$N$V"!=""?$V:ini_get("mysql.default_user")),("$N$V$F"!=""?$F:ini_get("mysql.default_password")),true,131072);if($this->_link)$this->server_info=mysql_get_server_info($this->_link);else$this->error=mysql_error();return(bool)$this->_link;}function
set_charset($cb){if(function_exists('mysql_set_charset')){if(mysql_set_charset($cb,$this->_link))return
true;mysql_set_charset('utf8',$this->_link);}return$this->query("SET NAMES $cb");}function
quote($Q){return"'".mysql_real_escape_string($Q,$this->_link)."'";}function
select_db($j){return
mysql_select_db($j,$this->_link);}function
query($G,$_i=false){$H=@($_i?mysql_unbuffered_query($G,$this->_link):mysql_query($G,$this->_link));$this->error="";if(!$H){$this->errno=mysql_errno($this->_link);$this->error=mysql_error($this->_link);return
false;}if($H===true){$this->affected_rows=mysql_affected_rows($this->_link);$this->info=mysql_info($this->_link);return
true;}return
new
Min_Result($H);}function
multi_query($G){return$this->_result=$this->query($G);}function
store_result(){return$this->_result;}function
next_result(){return
false;}function
result($G,$o=0){$H=$this->query($G);if(!$H||!$H->num_rows)return
false;return
mysql_result($H->_result,0,$o);}}class
Min_Result{var$num_rows,$_result,$_offset=0;function
__construct($H){$this->_result=$H;$this->num_rows=mysql_num_rows($H);}function
fetch_assoc(){return
mysql_fetch_assoc($this->_result);}function
fetch_row(){return
mysql_fetch_row($this->_result);}function
fetch_field(){$I=mysql_fetch_field($this->_result,$this->_offset++);$I->orgtable=$I->table;$I->orgname=$I->name;$I->charsetnr=($I->blob?63:0);return$I;}function
__destruct(){mysql_free_result($this->_result);}}}elseif(extension_loaded("pdo_mysql")){class
Min_DB
extends
Min_PDO{var$extension="PDO_MySQL";function
connect($N,$V,$F){global$b;$vf=array(PDO::MYSQL_ATTR_LOCAL_INFILE=>false);$zh=$b->connectSsl();if($zh)$vf+=array(PDO::MYSQL_ATTR_SSL_KEY=>$zh['key'],PDO::MYSQL_ATTR_SSL_CERT=>$zh['cert'],PDO::MYSQL_ATTR_SSL_CA=>$zh['ca'],);$this->dsn("mysql:charset=utf8;host=".str_replace(":",";unix_socket=",preg_replace('~:(\d)~',';port=\1',$N)),$V,$F,$vf);return
true;}function
set_charset($cb){$this->query("SET NAMES $cb");}function
select_db($j){return$this->query("USE ".idf_escape($j));}function
query($G,$_i=false){$this->setAttribute(1000,!$_i);return
parent::query($G,$_i);}}}class
Min_Driver
extends
Min_SQL{function
insert($R,$O){return($O?parent::insert($R,$O):queries("INSERT INTO ".table($R)." ()\nVALUES ()"));}function
insertUpdate($R,$K,$hg){$e=array_keys(reset($K));$fg="INSERT INTO ".table($R)." (".implode(", ",$e).") VALUES\n";$Ri=array();foreach($e
as$y)$Ri[$y]="$y = VALUES($y)";$Gh="\nON DUPLICATE KEY UPDATE ".implode(", ",$Ri);$Ri=array();$te=0;foreach($K
as$O){$Y="(".implode(", ",$O).")";if($Ri&&(strlen($fg)+$te+strlen($Y)+strlen($Gh)>1e6)){if(!queries($fg.implode(",\n",$Ri).$Gh))return
false;$Ri=array();$te=0;}$Ri[]=$Y;$te+=strlen($Y)+2;}return
queries($fg.implode(",\n",$Ri).$Gh);}function
slowQuery($G,$bi){if(min_version('5.7.8','10.1.2')){if(preg_match('~MariaDB~',$this->_conn->server_info))return"SET STATEMENT max_statement_time=$bi FOR $G";elseif(preg_match('~^(SELECT\b)(.+)~is',$G,$B))return"$B[1] /*+ MAX_EXECUTION_TIME(".($bi*1000).") */ $B[2]";}}function
convertSearch($u,$X,$o){return(preg_match('~char|text|enum|set~',$o["type"])&&!preg_match("~^utf8~",$o["collation"])&&preg_match('~[\x80-\xFF]~',$X['val'])?"CONVERT($u USING ".charset($this->_conn).")":$u);}function
warnings(){$H=$this->_conn->query("SHOW WARNINGS");if($H&&$H->num_rows){ob_start();select($H);return
ob_get_clean();}}function
tableHelp($C){$_e=preg_match('~MariaDB~',$this->_conn->server_info);if(information_schema(DB))return
strtolower(($_e?"information-schema-$C-table/":str_replace("_","-",$C)."-table.html"));if(DB=="mysql")return($_e?"mysql$C-table/":"system-database.html");}}function
idf_escape($u){return"`".str_replace("`","``",$u)."`";}function
table($u){return
idf_escape($u);}function
connect(){global$b,$zi,$Dh;$g=new
Min_DB;$Hb=$b->credentials();if($g->connect($Hb[0],$Hb[1],$Hb[2])){$g->set_charset(charset($g));$g->query("SET sql_quote_show_create = 1, autocommit = 1");if(min_version('5.7.8',10.2,$g)){$Dh[lang(25)][]="json";$zi["json"]=4294967295;}return$g;}$I=$g->error;if(function_exists('iconv')&&!is_utf8($I)&&strlen($Vg=iconv("windows-1250","utf-8",$I))>strlen($I))$I=$Vg;return$I;}function
get_databases($bd){$I=get_session("dbs");if($I===null){$G=(min_version(5)?"SELECT SCHEMA_NAME FROM information_schema.SCHEMATA ORDER BY SCHEMA_NAME":"SHOW DATABASES");$I=($bd?slow_query($G):get_vals($G));restart_session();set_session("dbs",$I);stop_session();}return$I;}function
limit($G,$Z,$z,$D=0,$M=" "){return" $G$Z".($z!==null?$M."LIMIT $z".($D?" OFFSET $D":""):"");}function
limit1($R,$G,$Z,$M="\n"){return
limit($G,$Z,1,0,$M);}function
db_collation($l,$qb){global$g;$I=null;$i=$g->result("SHOW CREATE DATABASE ".idf_escape($l),1);if(preg_match('~ COLLATE ([^ ]+)~',$i,$B))$I=$B[1];elseif(preg_match('~ CHARACTER SET ([^ ]+)~',$i,$B))$I=$qb[$B[1]][-1];return$I;}function
engines(){$I=array();foreach(get_rows("SHOW ENGINES")as$J){if(preg_match("~YES|DEFAULT~",$J["Support"]))$I[]=$J["Engine"];}return$I;}function
logged_user(){global$g;return$g->result("SELECT USER()");}function
tables_list(){return
get_key_vals(min_version(5)?"SELECT TABLE_NAME, TABLE_TYPE FROM information_schema.TABLES WHERE TABLE_SCHEMA = DATABASE() ORDER BY TABLE_NAME":"SHOW TABLES");}function
count_tables($k){$I=array();foreach($k
as$l)$I[$l]=count(get_vals("SHOW TABLES IN ".idf_escape($l)));return$I;}function
table_status($C="",$Pc=false){$I=array();foreach(get_rows($Pc&&min_version(5)?"SELECT TABLE_NAME AS Name, ENGINE AS Engine, TABLE_COMMENT AS Comment FROM information_schema.TABLES WHERE TABLE_SCHEMA = DATABASE() ".($C!=""?"AND TABLE_NAME = ".q($C):"ORDER BY Name"):"SHOW TABLE STATUS".($C!=""?" LIKE ".q(addcslashes($C,"%_\\")):""))as$J){if($J["Engine"]=="InnoDB")$J["Comment"]=preg_replace('~(?:(.+); )?InnoDB free: .*~','\1',$J["Comment"]);if(!isset($J["Engine"]))$J["Comment"]="";if($C!="")return$J;$I[$J["Name"]]=$J;}return$I;}function
is_view($S){return$S["Engine"]===null;}function
fk_support($S){return
preg_match('~InnoDB|IBMDB2I~i',$S["Engine"])||(preg_match('~NDB~i',$S["Engine"])&&min_version(5.6));}function
fields($R){$I=array();foreach(get_rows("SHOW FULL COLUMNS FROM ".table($R))as$J){preg_match('~^([^( ]+)(?:\((.+)\))?( unsigned)?( zerofill)?$~',$J["Type"],$B);$I[$J["Field"]]=array("field"=>$J["Field"],"full_type"=>$J["Type"],"type"=>$B[1],"length"=>$B[2],"unsigned"=>ltrim($B[3].$B[4]),"default"=>($J["Default"]!=""||preg_match("~char|set~",$B[1])?$J["Default"]:null),"null"=>($J["Null"]=="YES"),"auto_increment"=>($J["Extra"]=="auto_increment"),"on_update"=>(preg_match('~^on update (.+)~i',$J["Extra"],$B)?$B[1]:""),"collation"=>$J["Collation"],"privileges"=>array_flip(preg_split('~, *~',$J["Privileges"])),"comment"=>$J["Comment"],"primary"=>($J["Key"]=="PRI"),);}return$I;}function
indexes($R,$h=null){$I=array();foreach(get_rows("SHOW INDEX FROM ".table($R),$h)as$J){$C=$J["Key_name"];$I[$C]["type"]=($C=="PRIMARY"?"PRIMARY":($J["Index_type"]=="FULLTEXT"?"FULLTEXT":($J["Non_unique"]?($J["Index_type"]=="SPATIAL"?"SPATIAL":"INDEX"):"UNIQUE")));$I[$C]["columns"][]=$J["Column_name"];$I[$C]["lengths"][]=($J["Index_type"]=="SPATIAL"?null:$J["Sub_part"]);$I[$C]["descs"][]=null;}return$I;}function
foreign_keys($R){global$g,$nf;static$Xf='`(?:[^`]|``)+`';$I=array();$Fb=$g->result("SHOW CREATE TABLE ".table($R),1);if($Fb){preg_match_all("~CONSTRAINT ($Xf) FOREIGN KEY ?\\(((?:$Xf,? ?)+)\\) REFERENCES ($Xf)(?:\\.($Xf))? \\(((?:$Xf,? ?)+)\\)(?: ON DELETE ($nf))?(?: ON UPDATE ($nf))?~",$Fb,$Ce,PREG_SET_ORDER);foreach($Ce
as$B){preg_match_all("~$Xf~",$B[2],$sh);preg_match_all("~$Xf~",$B[5],$Th);$I[idf_unescape($B[1])]=array("db"=>idf_unescape($B[4]!=""?$B[3]:$B[4]),"table"=>idf_unescape($B[4]!=""?$B[4]:$B[3]),"source"=>array_map('idf_unescape',$sh[0]),"target"=>array_map('idf_unescape',$Th[0]),"on_delete"=>($B[6]?$B[6]:"RESTRICT"),"on_update"=>($B[7]?$B[7]:"RESTRICT"),);}}return$I;}function
view($C){global$g;return
array("select"=>preg_replace('~^(?:[^`]|`[^`]*`)*\s+AS\s+~isU','',$g->result("SHOW CREATE VIEW ".table($C),1)));}function
collations(){$I=array();foreach(get_rows("SHOW COLLATION")as$J){if($J["Default"])$I[$J["Charset"]][-1]=$J["Collation"];else$I[$J["Charset"]][]=$J["Collation"];}ksort($I);foreach($I
as$y=>$X)asort($I[$y]);return$I;}function
information_schema($l){return(min_version(5)&&$l=="information_schema")||(min_version(5.5)&&$l=="performance_schema");}function
error(){global$g;return
h(preg_replace('~^You have an error.*syntax to use~U',"Syntax error",$g->error));}function
create_database($l,$pb){return
queries("CREATE DATABASE ".idf_escape($l).($pb?" COLLATE ".q($pb):""));}function
drop_databases($k){$I=apply_queries("DROP DATABASE",$k,'idf_escape');restart_session();set_session("dbs",null);return$I;}function
rename_database($C,$pb){$I=false;if(create_database($C,$pb)){$Hg=array();foreach(tables_list()as$R=>$U)$Hg[]=table($R)." TO ".idf_escape($C).".".table($R);$I=(!$Hg||queries("RENAME TABLE ".implode(", ",$Hg)));if($I)queries("DROP DATABASE ".idf_escape(DB));restart_session();set_session("dbs",null);}return$I;}function
auto_increment(){$Na=" PRIMARY KEY";if($_GET["create"]!=""&&$_POST["auto_increment_col"]){foreach(indexes($_GET["create"])as$v){if(in_array($_POST["fields"][$_POST["auto_increment_col"]]["orig"],$v["columns"],true)){$Na="";break;}if($v["type"]=="PRIMARY")$Na=" UNIQUE";}}return" AUTO_INCREMENT$Na";}function
alter_table($R,$C,$p,$dd,$vb,$vc,$pb,$Ma,$Rf){$c=array();foreach($p
as$o)$c[]=($o[1]?($R!=""?($o[0]!=""?"CHANGE ".idf_escape($o[0]):"ADD"):" ")." ".implode($o[1]).($R!=""?$o[2]:""):"DROP ".idf_escape($o[0]));$c=array_merge($c,$dd);$P=($vb!==null?" COMMENT=".q($vb):"").($vc?" ENGINE=".q($vc):"").($pb?" COLLATE ".q($pb):"").($Ma!=""?" AUTO_INCREMENT=$Ma":"");if($R=="")return
queries("CREATE TABLE ".table($C)." (\n".implode(",\n",$c)."\n)$P$Rf");if($R!=$C)$c[]="RENAME TO ".table($C);if($P)$c[]=ltrim($P);return($c||$Rf?queries("ALTER TABLE ".table($R)."\n".implode(",\n",$c).$Rf):true);}function
alter_indexes($R,$c){foreach($c
as$y=>$X)$c[$y]=($X[2]=="DROP"?"\nDROP INDEX ".idf_escape($X[1]):"\nADD $X[0] ".($X[0]=="PRIMARY"?"KEY ":"").($X[1]!=""?idf_escape($X[1])." ":"")."(".implode(", ",$X[2]).")");return
queries("ALTER TABLE ".table($R).implode(",",$c));}function
truncate_tables($T){return
apply_queries("TRUNCATE TABLE",$T);}function
drop_views($Wi){return
queries("DROP VIEW ".implode(", ",array_map('table',$Wi)));}function
drop_tables($T){return
queries("DROP TABLE ".implode(", ",array_map('table',$T)));}function
move_tables($T,$Wi,$Th){$Hg=array();foreach(array_merge($T,$Wi)as$R)$Hg[]=table($R)." TO ".idf_escape($Th).".".table($R);return
queries("RENAME TABLE ".implode(", ",$Hg));}function
copy_tables($T,$Wi,$Th){queries("SET sql_mode = 'NO_AUTO_VALUE_ON_ZERO'");foreach($T
as$R){$C=($Th==DB?table("copy_$R"):idf_escape($Th).".".table($R));if(!queries("\nDROP TABLE IF EXISTS $C")||!queries("CREATE TABLE $C LIKE ".table($R))||!queries("INSERT INTO $C SELECT * FROM ".table($R)))return
false;foreach(get_rows("SHOW TRIGGERS LIKE ".q(addcslashes($R,"%_\\")))as$J){$ti=$J["Trigger"];if(!queries("CREATE TRIGGER ".($Th==DB?idf_escape("copy_$ti"):idf_escape($Th).".".idf_escape($ti))." $J[Timing] $J[Event] ON $C FOR EACH ROW\n$J[Statement];"))return
false;}}foreach($Wi
as$R){$C=($Th==DB?table("copy_$R"):idf_escape($Th).".".table($R));$Vi=view($R);if(!queries("DROP VIEW IF EXISTS $C")||!queries("CREATE VIEW $C AS $Vi[select]"))return
false;}return
true;}function
trigger($C){if($C=="")return
array();$K=get_rows("SHOW TRIGGERS WHERE `Trigger` = ".q($C));return
reset($K);}function
triggers($R){$I=array();foreach(get_rows("SHOW TRIGGERS LIKE ".q(addcslashes($R,"%_\\")))as$J)$I[$J["Trigger"]]=array($J["Timing"],$J["Event"]);return$I;}function
trigger_options(){return
array("Timing"=>array("BEFORE","AFTER"),"Event"=>array("INSERT","UPDATE","DELETE"),"Type"=>array("FOR EACH ROW"),);}function
routine($C,$U){global$g,$xc,$Qd,$zi;$Da=array("bool","boolean","integer","double precision","real","dec","numeric","fixed","national char","national varchar");$th="(?:\\s|/\\*[\s\S]*?\\*/|(?:#|-- )[^\n]*\n?|--\r?\n)";$yi="((".implode("|",array_merge(array_keys($zi),$Da)).")\\b(?:\\s*\\(((?:[^'\")]|$xc)++)\\))?\\s*(zerofill\\s*)?(unsigned(?:\\s+zerofill)?)?)(?:\\s*(?:CHARSET|CHARACTER\\s+SET)\\s*['\"]?([^'\"\\s,]+)['\"]?)?";$Xf="$th*(".($U=="FUNCTION"?"":$Qd).")?\\s*(?:`((?:[^`]|``)*)`\\s*|\\b(\\S+)\\s+)$yi";$i=$g->result("SHOW CREATE $U ".idf_escape($C),2);preg_match("~\\(((?:$Xf\\s*,?)*)\\)\\s*".($U=="FUNCTION"?"RETURNS\\s+$yi\\s+":"")."(.*)~is",$i,$B);$p=array();preg_match_all("~$Xf\\s*,?~is",$B[1],$Ce,PREG_SET_ORDER);foreach($Ce
as$Kf){$C=str_replace("``","`",$Kf[2]).$Kf[3];$p[]=array("field"=>$C,"type"=>strtolower($Kf[5]),"length"=>preg_replace_callback("~$xc~s",'normalize_enum',$Kf[6]),"unsigned"=>strtolower(preg_replace('~\s+~',' ',trim("$Kf[8] $Kf[7]"))),"null"=>1,"full_type"=>$Kf[4],"inout"=>strtoupper($Kf[1]),"collation"=>strtolower($Kf[9]),);}if($U!="FUNCTION")return
array("fields"=>$p,"definition"=>$B[11]);return
array("fields"=>$p,"returns"=>array("type"=>$B[12],"length"=>$B[13],"unsigned"=>$B[15],"collation"=>$B[16]),"definition"=>$B[17],"language"=>"SQL",);}function
routines(){return
get_rows("SELECT ROUTINE_NAME AS SPECIFIC_NAME, ROUTINE_NAME, ROUTINE_TYPE, DTD_IDENTIFIER FROM information_schema.ROUTINES WHERE ROUTINE_SCHEMA = ".q(DB));}function
routine_languages(){return
array();}function
routine_id($C,$J){return
idf_escape($C);}function
last_id(){global$g;return$g->result("SELECT LAST_INSERT_ID()");}function
explain($g,$G){return$g->query("EXPLAIN ".(min_version(5.1)?"PARTITIONS ":"").$G);}function
found_rows($S,$Z){return($Z||$S["Engine"]!="InnoDB"?null:$S["Rows"]);}function
types(){return
array();}function
schemas(){return
array();}function
get_schema(){return"";}function
set_schema($Xg){return
true;}function
create_sql($R,$Ma,$Eh){global$g;$I=$g->result("SHOW CREATE TABLE ".table($R),1);if(!$Ma)$I=preg_replace('~ AUTO_INCREMENT=\d+~','',$I);return$I;}function
truncate_sql($R){return"TRUNCATE ".table($R);}function
use_sql($j){return"USE ".idf_escape($j);}function
trigger_sql($R){$I="";foreach(get_rows("SHOW TRIGGERS LIKE ".q(addcslashes($R,"%_\\")),null,"-- ")as$J)$I.="\nCREATE TRIGGER ".idf_escape($J["Trigger"])." $J[Timing] $J[Event] ON ".table($J["Table"])." FOR EACH ROW\n$J[Statement];;\n";return$I;}function
show_variables(){return
get_key_vals("SHOW VARIABLES");}function
process_list(){return
get_rows("SHOW FULL PROCESSLIST");}function
show_status(){return
get_key_vals("SHOW STATUS");}function
convert_field($o){if(preg_match("~binary~",$o["type"]))return"HEX(".idf_escape($o["field"]).")";if($o["type"]=="bit")return"BIN(".idf_escape($o["field"])." + 0)";if(preg_match("~geometry|point|linestring|polygon~",$o["type"]))return(min_version(8)?"ST_":"")."AsWKT(".idf_escape($o["field"]).")";}function
unconvert_field($o,$I){if(preg_match("~binary~",$o["type"]))$I="UNHEX($I)";if($o["type"]=="bit")$I="CONV($I, 2, 10) + 0";if(preg_match("~geometry|point|linestring|polygon~",$o["type"]))$I=(min_version(8)?"ST_":"")."GeomFromText($I)";return$I;}function
support($Qc){return!preg_match("~scheme|sequence|type|view_trigger|materializedview".(min_version(5.1)?"":"|event|partitioning".(min_version(5)?"":"|routine|trigger|view"))."~",$Qc);}function
kill_process($X){return
queries("KILL ".number($X));}function
connection_id(){return"SELECT CONNECTION_ID()";}function
max_connections(){global$g;return$g->result("SELECT @@max_connections");}$x="sql";$zi=array();$Dh=array();foreach(array(lang(27)=>array("tinyint"=>3,"smallint"=>5,"mediumint"=>8,"int"=>10,"bigint"=>20,"decimal"=>66,"float"=>12,"double"=>21),lang(28)=>array("date"=>10,"datetime"=>19,"timestamp"=>19,"time"=>10,"year"=>4),lang(25)=>array("char"=>255,"varchar"=>65535,"tinytext"=>255,"text"=>65535,"mediumtext"=>16777215,"longtext"=>4294967295),lang(33)=>array("enum"=>65535,"set"=>64),lang(29)=>array("bit"=>20,"binary"=>255,"varbinary"=>65535,"tinyblob"=>255,"blob"=>65535,"mediumblob"=>16777215,"longblob"=>4294967295),lang(31)=>array("geometry"=>0,"point"=>0,"linestring"=>0,"polygon"=>0,"multipoint"=>0,"multilinestring"=>0,"multipolygon"=>0,"geometrycollection"=>0),)as$y=>$X){$zi+=$X;$Dh[$y]=array_keys($X);}$Fi=array("unsigned","zerofill","unsigned zerofill");$sf=array("=","<",">","<=",">=","!=","LIKE","LIKE %%","REGEXP","IN","FIND_IN_SET","IS NULL","NOT LIKE","NOT REGEXP","NOT IN","IS NOT NULL","SQL");$ld=array("char_length","date","from_unixtime","lower","round","floor","ceil","sec_to_time","time_to_sec","upper");$rd=array("avg","count","count distinct","group_concat","max","min","sum");$nc=array(array("char"=>"md5/sha1/password/encrypt/uuid","binary"=>"md5/sha1","date|time"=>"now",),array(number_type()=>"+/-","date"=>"+ interval/- interval","time"=>"addtime/subtime","char|text"=>"concat",));}define("SERVER",$_GET[DRIVER]);define("DB",$_GET["db"]);define("ME",preg_replace('~^[^?]*/([^?]*).*~','\1',$_SERVER["REQUEST_URI"]).'?'.(sid()?SID.'&':'').(SERVER!==null?DRIVER."=".urlencode(SERVER).'&':'').(isset($_GET["username"])?"username=".urlencode($_GET["username"]).'&':'').(DB!=""?'db='.urlencode(DB).'&'.(isset($_GET["ns"])?"ns=".urlencode($_GET["ns"])."&":""):''));$ia="4.6.3";class
Adminer{var$operators;function
name(){return"<a href='https://www.adminer.org/'".target_blank()." id='h1'>Adminer</a>";}function
credentials(){return
array(SERVER,$_GET["username"],get_password());}function
connectSsl(){}function
permanentLogin($i=false){return
password_file($i);}function
bruteForceKey(){return$_SERVER["REMOTE_ADDR"];}function
serverName($N){return
h($N);}function
database(){return
DB;}function
databases($bd=true){return
get_databases($bd);}function
schemas(){return
schemas();}function
queryTimeout(){return
2;}function
headers(){}function
csp(){return
csp();}function
head(){return
true;}function
css(){$I=array();$Vc="adminer.css";if(file_exists($Vc))$I[]=$Vc;return$I;}function
loginForm(){global$fc;echo"<table cellspacing='0'>\n",$this->loginFormField('driver','<tr><th>'.lang(34).'<td>',html_select("auth[driver]",$fc,DRIVER)."\n"),$this->loginFormField('server','<tr><th>'.lang(35).'<td>','<input name="auth[server]" value="'.h(SERVER).'" title="hostname[:port]" placeholder="localhost" autocapitalize="off">'."\n"),$this->loginFormField('username','<tr><th>'.lang(36).'<td>','<input name="auth[username]" id="username" value="'.h($_GET["username"]).'" autocapitalize="off">'.script("focus(qs('#username'));")),$this->loginFormField('password','<tr><th>'.lang(37).'<td>','<input type="password" name="auth[password]">'."\n"),$this->loginFormField('db','<tr><th>'.lang(38).'<td>','<input name="auth[db]" value="'.h($_GET["db"]).'" autocapitalize="off">'."\n"),"</table>\n","<p><input type='submit' value='".lang(39)."'>\n",checkbox("auth[permanent]",1,$_COOKIE["adminer_permanent"],lang(40))."\n";}function
loginFormField($C,$yd,$Y){return$yd.$Y;}function
login($xe,$F){if($F=="")return
lang(41,target_blank());return
true;}function
tableName($Kh){return
h($Kh["Name"]);}function
fieldName($o,$xf=0){return'<span title="'.h($o["full_type"]).'">'.h($o["field"]).'</span>';}function
selectLinks($Kh,$O=""){global$x,$m;echo'<p class="links">';$we=array("select"=>lang(42));if(support("table")||support("indexes"))$we["table"]=lang(43);if(support("table")){if(is_view($Kh))$we["view"]=lang(44);else$we["create"]=lang(45);}if($O!==null)$we["edit"]=lang(46);$C=$Kh["Name"];foreach($we
as$y=>$X)echo" <a href='".h(ME)."$y=".urlencode($C).($y=="edit"?$O:"")."'".bold(isset($_GET[$y])).">$X</a>";echo
doc_link(array($x=>$m->tableHelp($C)),"?"),"\n";}function
foreignKeys($R){return
foreign_keys($R);}function
backwardKeys($R,$Jh){return
array();}function
backwardKeysPrint($Pa,$J){}function
selectQuery($G,$_h,$Oc=false){global$x,$m;$I="</p>\n";if(!$Oc&&($Zi=$m->warnings())){$t="warnings";$I=", <a href='#$t'>".lang(47)."</a>".script("qsl('a').onclick = partial(toggle, '$t');","")."$I<div id='$t' class='hidden'>\n$Zi</div>\n";}return"<p><code class='jush-$x'>".h(str_replace("\n"," ",$G))."</code> <span class='time'>(".format_time($_h).")</span>".(support("sql")?" <a href='".h(ME)."sql=".urlencode($G)."'>".lang(10)."</a>":"").$I;}function
sqlCommandQuery($G){return
shorten_utf8(trim($G),1000);}function
rowDescription($R){return"";}function
rowDescriptions($K,$ed){return$K;}function
selectLink($X,$o){}function
selectVal($X,$_,$o,$Ef){$I=($X===null?"<i>NULL</i>":(preg_match("~char|binary|boolean~",$o["type"])&&!preg_match("~var~",$o["type"])?"<code>$X</code>":$X));if(preg_match('~blob|bytea|raw|file~',$o["type"])&&!is_utf8($X))$I="<i>".lang(48,strlen($Ef))."</i>";if(preg_match('~json~',$o["type"]))$I="<code class='jush-js'>$I</code>";return($_?"<a href='".h($_)."'".(is_url($_)?target_blank():"").">$I</a>":$I);}function
editVal($X,$o){return$X;}function
tableStructurePrint($p){echo"<table cellspacing='0' class='nowrap'>\n","<thead><tr><th>".lang(49)."<td>".lang(50).(support("comment")?"<td>".lang(51):"")."</thead>\n";foreach($p
as$o){echo"<tr".odd()."><th>".h($o["field"]),"<td><span title='".h($o["collation"])."'>".h($o["full_type"])."</span>",($o["null"]?" <i>NULL</i>":""),($o["auto_increment"]?" <i>".lang(52)."</i>":""),(isset($o["default"])?" <span title='".lang(53)."'>[<b>".h($o["default"])."</b>]</span>":""),(support("comment")?"<td>".h($o["comment"]):""),"\n";}echo"</table>\n";}function
tableIndexesPrint($w){echo"<table cellspacing='0'>\n";foreach($w
as$C=>$v){ksort($v["columns"]);$jg=array();foreach($v["columns"]as$y=>$X)$jg[]="<i>".h($X)."</i>".($v["lengths"][$y]?"(".$v["lengths"][$y].")":"").($v["descs"][$y]?" DESC":"");echo"<tr title='".h($C)."'><th>$v[type]<td>".implode(", ",$jg)."\n";}echo"</table>\n";}function
selectColumnsPrint($L,$e){global$ld,$rd;print_fieldset("select",lang(54),$L);$s=0;$L[""]=array();foreach($L
as$y=>$X){$X=$_GET["columns"][$y];$d=select_input(" name='columns[$s][col]'",$e,$X["col"],($y!==""?"selectFieldChange":"selectAddRow"));echo"<div>".($ld||$rd?"<select name='columns[$s][fun]'>".optionlist(array(-1=>"")+array_filter(array(lang(55)=>$ld,lang(56)=>$rd)),$X["fun"])."</select>".on_help("getTarget(event).value && getTarget(event).value.replace(/ |\$/, '(') + ')'",1).script("qsl('select').onchange = function () { helpClose();".($y!==""?"":" qsl('select, input', this.parentNode).onchange();")." };","")."($d)":$d)."</div>\n";$s++;}echo"</div></fieldset>\n";}function
selectSearchPrint($Z,$e,$w){print_fieldset("search",lang(57),$Z);foreach($w
as$s=>$v){if($v["type"]=="FULLTEXT"){echo"<div>(<i>".implode("</i>, <i>",array_map('h',$v["columns"]))."</i>) AGAINST"," <input type='search' name='fulltext[$s]' value='".h($_GET["fulltext"][$s])."'>",script("qsl('input').oninput = selectFieldChange;",""),checkbox("boolean[$s]",1,isset($_GET["boolean"][$s]),"BOOL"),"</div>\n";}}$bb="this.parentNode.firstChild.onchange();";foreach(array_merge((array)$_GET["where"],array(array()))as$s=>$X){if(!$X||("$X[col]$X[val]"!=""&&in_array($X["op"],$this->operators))){echo"<div>".select_input(" name='where[$s][col]'",$e,$X["col"],($X?"selectFieldChange":"selectAddRow"),"(".lang(58).")"),html_select("where[$s][op]",$this->operators,$X["op"],$bb),"<input type='search' name='where[$s][val]' value='".h($X["val"])."'>",script("mixin(qsl('input'), {oninput: function () { $bb }, onkeydown: selectSearchKeydown, onsearch: selectSearchSearch});",""),"</div>\n";}}echo"</div></fieldset>\n";}function
selectOrderPrint($xf,$e,$w){print_fieldset("sort",lang(59),$xf);$s=0;foreach((array)$_GET["order"]as$y=>$X){if($X!=""){echo"<div>".select_input(" name='order[$s]'",$e,$X,"selectFieldChange"),checkbox("desc[$s]",1,isset($_GET["desc"][$y]),lang(60))."</div>\n";$s++;}}echo"<div>".select_input(" name='order[$s]'",$e,"","selectAddRow"),checkbox("desc[$s]",1,false,lang(60))."</div>\n","</div></fieldset>\n";}function
selectLimitPrint($z){echo"<fieldset><legend>".lang(61)."</legend><div>";echo"<input type='number' name='limit' class='size' value='".h($z)."'>",script("qsl('input').oninput = selectFieldChange;",""),"</div></fieldset>\n";}function
selectLengthPrint($Zh){if($Zh!==null){echo"<fieldset><legend>".lang(62)."</legend><div>","<input type='number' name='text_length' class='size' value='".h($Zh)."'>","</div></fieldset>\n";}}function
selectActionPrint($w){echo"<fieldset><legend>".lang(63)."</legend><div>","<input type='submit' value='".lang(54)."'>"," <span id='noindex' title='".lang(64)."'></span>","<script".nonce().">\n","var indexColumns = ";$e=array();foreach($w
as$v){$Lb=reset($v["columns"]);if($v["type"]!="FULLTEXT"&&$Lb)$e[$Lb]=1;}$e[""]=1;foreach($e
as$y=>$X)json_row($y);echo";\n","selectFieldChange.call(qs('#form')['select']);\n","</script>\n","</div></fieldset>\n";}function
selectCommandPrint(){return!information_schema(DB);}function
selectImportPrint(){return!information_schema(DB);}function
selectEmailPrint($sc,$e){}function
selectColumnsProcess($e,$w){global$ld,$rd;$L=array();$od=array();foreach((array)$_GET["columns"]as$y=>$X){if($X["fun"]=="count"||($X["col"]!=""&&(!$X["fun"]||in_array($X["fun"],$ld)||in_array($X["fun"],$rd)))){$L[$y]=apply_sql_function($X["fun"],($X["col"]!=""?idf_escape($X["col"]):"*"));if(!in_array($X["fun"],$rd))$od[]=$L[$y];}}return
array($L,$od);}function
selectSearchProcess($p,$w){global$g,$m;$I=array();foreach($w
as$s=>$v){if($v["type"]=="FULLTEXT"&&$_GET["fulltext"][$s]!="")$I[]="MATCH (".implode(", ",array_map('idf_escape',$v["columns"])).") AGAINST (".q($_GET["fulltext"][$s]).(isset($_GET["boolean"][$s])?" IN BOOLEAN MODE":"").")";}foreach((array)$_GET["where"]as$y=>$X){if("$X[col]$X[val]"!=""&&in_array($X["op"],$this->operators)){$fg="";$xb=" $X[op]";if(preg_match('~IN$~',$X["op"])){$Gd=process_length($X["val"]);$xb.=" ".($Gd!=""?$Gd:"(NULL)");}elseif($X["op"]=="SQL")$xb=" $X[val]";elseif($X["op"]=="LIKE %%")$xb=" LIKE ".$this->processInput($p[$X["col"]],"%$X[val]%");elseif($X["op"]=="ILIKE %%")$xb=" ILIKE ".$this->processInput($p[$X["col"]],"%$X[val]%");elseif($X["op"]=="FIND_IN_SET"){$fg="$X[op](".q($X["val"]).", ";$xb=")";}elseif(!preg_match('~NULL$~',$X["op"]))$xb.=" ".$this->processInput($p[$X["col"]],$X["val"]);if($X["col"]!="")$I[]=$fg.$m->convertSearch(idf_escape($X["col"]),$X,$p[$X["col"]]).$xb;else{$sb=array();foreach($p
as$C=>$o){if((preg_match('~^[-\d.'.(preg_match('~IN$~',$X["op"])?',':'').']+$~',$X["val"])||!preg_match('~'.number_type().'|bit~',$o["type"]))&&(!preg_match("~[\x80-\xFF]~",$X["val"])||preg_match('~char|text|enum|set~',$o["type"])))$sb[]=$fg.$m->convertSearch(idf_escape($C),$X,$o).$xb;}$I[]=($sb?"(".implode(" OR ",$sb).")":"1 = 0");}}}return$I;}function
selectOrderProcess($p,$w){$I=array();foreach((array)$_GET["order"]as$y=>$X){if($X!="")$I[]=(preg_match('~^((COUNT\(DISTINCT |[A-Z0-9_]+\()(`(?:[^`]|``)+`|"(?:[^"]|"")+")\)|COUNT\(\*\))$~',$X)?$X:idf_escape($X)).(isset($_GET["desc"][$y])?" DESC":"");}return$I;}function
selectLimitProcess(){return(isset($_GET["limit"])?$_GET["limit"]:"50");}function
selectLengthProcess(){return(isset($_GET["text_length"])?$_GET["text_length"]:"100");}function
selectEmailProcess($Z,$ed){return
false;}function
selectQueryBuild($L,$Z,$od,$xf,$z,$E){return"";}function
messageQuery($G,$ai,$Oc=false){global$x,$m;restart_session();$zd=&get_session("queries");if(!$zd[$_GET["db"]])$zd[$_GET["db"]]=array();if(strlen($G)>1e6)$G=preg_replace('~[\x80-\xFF]+$~','',substr($G,0,1e6))."\n...";$zd[$_GET["db"]][]=array($G,time(),$ai);$xh="sql-".count($zd[$_GET["db"]]);$I="<a href='#$xh' class='toggle'>".lang(65)."</a>\n";if(!$Oc&&($Zi=$m->warnings())){$t="warnings-".count($zd[$_GET["db"]]);$I="<a href='#$t' class='toggle'>".lang(47)."</a>, $I<div id='$t' class='hidden'>\n$Zi</div>\n";}return" <span class='time'>".@date("H:i:s")."</span>"." $I<div id='$xh' class='hidden'><pre><code class='jush-$x'>".shorten_utf8($G,1000)."</code></pre>".($ai?" <span class='time'>($ai)</span>":'').(support("sql")?'<p><a href="'.h(str_replace("db=".urlencode(DB),"db=".urlencode($_GET["db"]),ME).'sql=&history='.(count($zd[$_GET["db"]])-1)).'">'.lang(10).'</a>':'').'</div>';}function
editFunctions($o){global$nc;$I=($o["null"]?"NULL/":"");foreach($nc
as$y=>$ld){if(!$y||(!isset($_GET["call"])&&(isset($_GET["select"])||where($_GET)))){foreach($ld
as$Xf=>$X){if(!$Xf||preg_match("~$Xf~",$o["type"]))$I.="/$X";}if($y&&!preg_match('~set|blob|bytea|raw|file~',$o["type"]))$I.="/SQL";}}if($o["auto_increment"]&&!isset($_GET["select"])&&!where($_GET))$I=lang(52);return
explode("/",$I);}function
editInput($R,$o,$Ka,$Y){if($o["type"]=="enum")return(isset($_GET["select"])?"<label><input type='radio'$Ka value='-1' checked><i>".lang(8)."</i></label> ":"").($o["null"]?"<label><input type='radio'$Ka value=''".($Y!==null||isset($_GET["select"])?"":" checked")."><i>NULL</i></label> ":"").enum_input("radio",$Ka,$o,$Y,0);return"";}function
editHint($R,$o,$Y){return"";}function
processInput($o,$Y,$r=""){if($r=="SQL")return$Y;$C=$o["field"];$I=q($Y);if(preg_match('~^(now|getdate|uuid)$~',$r))$I="$r()";elseif(preg_match('~^current_(date|timestamp)$~',$r))$I=$r;elseif(preg_match('~^([+-]|\|\|)$~',$r))$I=idf_escape($C)." $r $I";elseif(preg_match('~^[+-] interval$~',$r))$I=idf_escape($C)." $r ".(preg_match("~^(\\d+|'[0-9.: -]') [A-Z_]+\$~i",$Y)?$Y:$I);elseif(preg_match('~^(addtime|subtime|concat)$~',$r))$I="$r(".idf_escape($C).", $I)";elseif(preg_match('~^(md5|sha1|password|encrypt)$~',$r))$I="$r($I)";return
unconvert_field($o,$I);}function
dumpOutput(){$I=array('text'=>lang(66),'file'=>lang(67));if(function_exists('gzencode'))$I['gz']='gzip';return$I;}function
dumpFormat(){return
array('sql'=>'SQL','csv'=>'CSV,','csv;'=>'CSV;','tsv'=>'TSV');}function
dumpDatabase($l){}function
dumpTable($R,$Eh,$Zd=0){if($_POST["format"]!="sql"){echo"\xef\xbb\xbf";if($Eh)dump_csv(array_keys(fields($R)));}else{if($Zd==2){$p=array();foreach(fields($R)as$C=>$o)$p[]=idf_escape($C)." $o[full_type]";$i="CREATE TABLE ".table($R)." (".implode(", ",$p).")";}else$i=create_sql($R,$_POST["auto_increment"],$Eh);set_utf8mb4($i);if($Eh&&$i){if($Eh=="DROP+CREATE"||$Zd==1)echo"DROP ".($Zd==2?"VIEW":"TABLE")." IF EXISTS ".table($R).";\n";if($Zd==1)$i=remove_definer($i);echo"$i;\n\n";}}}function
dumpData($R,$Eh,$G){global$g,$x;$Ee=($x=="sqlite"?0:1048576);if($Eh){if($_POST["format"]=="sql"){if($Eh=="TRUNCATE+INSERT")echo
truncate_sql($R).";\n";$p=fields($R);}$H=$g->query($G,1);if($H){$Sd="";$Ya="";$ge=array();$Gh="";$Rc=($R!=''?'fetch_assoc':'fetch_row');while($J=$H->$Rc()){if(!$ge){$Ri=array();foreach($J
as$X){$o=$H->fetch_field();$ge[]=$o->name;$y=idf_escape($o->name);$Ri[]="$y = VALUES($y)";}$Gh=($Eh=="INSERT+UPDATE"?"\nON DUPLICATE KEY UPDATE ".implode(", ",$Ri):"").";\n";}if($_POST["format"]!="sql"){if($Eh=="table"){dump_csv($ge);$Eh="INSERT";}dump_csv($J);}else{if(!$Sd)$Sd="INSERT INTO ".table($R)." (".implode(", ",array_map('idf_escape',$ge)).") VALUES";foreach($J
as$y=>$X){$o=$p[$y];$J[$y]=($X!==null?unconvert_field($o,preg_match(number_type(),$o["type"])&&$X!=''?$X:q(($X===false?0:$X))):"NULL");}$Vg=($Ee?"\n":" ")."(".implode(",\t",$J).")";if(!$Ya)$Ya=$Sd.$Vg;elseif(strlen($Ya)+4+strlen($Vg)+strlen($Gh)<$Ee)$Ya.=",$Vg";else{echo$Ya.$Gh;$Ya=$Sd.$Vg;}}}if($Ya)echo$Ya.$Gh;}elseif($_POST["format"]=="sql")echo"-- ".str_replace("\n"," ",$g->error)."\n";}}function
dumpFilename($Dd){return
friendly_url($Dd!=""?$Dd:(SERVER!=""?SERVER:"localhost"));}function
dumpHeaders($Dd,$Te=false){$Hf=$_POST["output"];$Jc=(preg_match('~sql~',$_POST["format"])?"sql":($Te?"tar":"csv"));header("Content-Type: ".($Hf=="gz"?"application/x-gzip":($Jc=="tar"?"application/x-tar":($Jc=="sql"||$Hf!="file"?"text/plain":"text/csv")."; charset=utf-8")));if($Hf=="gz")ob_start('ob_gzencode',1e6);return$Jc;}function
importServerPath(){return"adminer.sql";}function
homepage(){echo'<p class="links">'.($_GET["ns"]==""&&support("database")?'<a href="'.h(ME).'database=">'.lang(68)."</a>\n":""),(support("scheme")?"<a href='".h(ME)."scheme='>".($_GET["ns"]!=""?lang(69):lang(70))."</a>\n":""),($_GET["ns"]!==""?'<a href="'.h(ME).'schema=">'.lang(71)."</a>\n":""),(support("privileges")?"<a href='".h(ME)."privileges='>".lang(72)."</a>\n":"");return
true;}function
navigation($Se){global$ia,$x,$fc,$g;echo'<h1>
',$this->name(),' <span class="version">',$ia,'</span>
<a href="https://www.adminer.org/#download"',target_blank(),' id="version">',(version_compare($ia,$_COOKIE["adminer_version"])<0?h($_COOKIE["adminer_version"]):""),'</a>
</h1>
';if($Se=="auth"){$Xc=true;foreach((array)$_SESSION["pwds"]as$Ti=>$jh){foreach($jh
as$N=>$Oi){foreach($Oi
as$V=>$F){if($F!==null){if($Xc){echo"<p id='logins'>".script("mixin(qs('#logins'), {onmouseover: menuOver, onmouseout: menuOut});");$Xc=false;}$Rb=$_SESSION["db"][$Ti][$N][$V];foreach(($Rb?array_keys($Rb):array(""))as$l)echo"<a href='".h(auth_url($Ti,$N,$V,$l))."'>($fc[$Ti]) ".h($V.($N!=""?"@".$this->serverName($N):"").($l!=""?" - $l":""))."</a><br>\n";}}}}}else{if($_GET["ns"]!==""&&!$Se&&DB!=""){$g->select_db(DB);$T=table_status('',true);}echo
script_src(preg_replace("~\\?.*~","",ME)."?file=jush.js&version=4.6.3");if(support("sql")){echo'<script',nonce(),'>
';if($T){$we=array();foreach($T
as$R=>$U)$we[]=preg_quote($R,'/');echo"var jushLinks = { $x: [ '".js_escape(ME).(support("table")?"table=":"select=")."\$&', /\\b(".implode("|",$we).")\\b/g ] };\n";foreach(array("bac","bra","sqlite_quo","mssql_bra")as$X)echo"jushLinks.$X = jushLinks.$x;\n";}$ih=$g->server_info;echo'bodyLoad(\'',(is_object($g)?preg_replace('~^(\d\.?\d).*~s','\1',$ih):""),'\'',(preg_match('~MariaDB~',$ih)?", true":""),');
</script>
';}$this->databasesPrint($Se);if(DB==""||!$Se){echo"<p class='links'>".(support("sql")?"<a href='".h(ME)."sql='".bold(isset($_GET["sql"])&&!isset($_GET["import"])).">".lang(65)."</a>\n<a href='".h(ME)."import='".bold(isset($_GET["import"])).">".lang(73)."</a>\n":"")."";if(support("dump"))echo"<a href='".h(ME)."dump=".urlencode(isset($_GET["table"])?$_GET["table"]:$_GET["select"])."' id='dump'".bold(isset($_GET["dump"])).">".lang(74)."</a>\n";}if($_GET["ns"]!==""&&!$Se&&DB!=""){echo'<a href="'.h(ME).'create="'.bold($_GET["create"]==="").">".lang(75)."</a>\n";if(!$T)echo"<p class='message'>".lang(9)."\n";else$this->tablesPrint($T);}}}function
databasesPrint($Se){global$b,$g;$k=$this->databases();if($k&&!in_array(DB,$k))array_unshift($k,DB);echo'<form action="">
<p id="dbs">
';hidden_fields_get();$Pb=script("mixin(qsl('select'), {onmousedown: dbMouseDown, onchange: dbChange});");echo"<span title='".lang(76)."'>".lang(77)."</span>: ".($k?"<select name='db'>".optionlist(array(""=>"")+$k,DB)."</select>$Pb":"<input name='db' value='".h(DB)."' autocapitalize='off'>\n"),"<input type='submit' value='".lang(20)."'".($k?" class='hidden'":"").">\n";if($Se!="db"&&DB!=""&&$g->select_db(DB)){if(support("scheme")){echo"<br>".lang(78).": <select name='ns'>".optionlist(array(""=>"")+$b->schemas(),$_GET["ns"])."</select>$Pb";if($_GET["ns"]!="")set_schema($_GET["ns"]);}}foreach(array("import","sql","schema","dump","privileges")as$X){if(isset($_GET[$X])){echo"<input type='hidden' name='$X' value=''>";break;}}echo"</p></form>\n";}function
tablesPrint($T){echo"<ul id='tables'>".script("mixin(qs('#tables'), {onmouseover: menuOver, onmouseout: menuOut});");foreach($T
as$R=>$P){$C=$this->tableName($P);if($C!=""){echo'<li><a href="'.h(ME).'select='.urlencode($R).'"'.bold($_GET["select"]==$R||$_GET["edit"]==$R,"select").">".lang(79)."</a> ",(support("table")||support("indexes")?'<a href="'.h(ME).'table='.urlencode($R).'"'.bold(in_array($R,array($_GET["table"],$_GET["create"],$_GET["indexes"],$_GET["foreign"],$_GET["trigger"])),(is_view($P)?"view":"structure"))." title='".lang(43)."'>$C</a>":"<span>$C</span>")."\n";}}echo"</ul>\n";}}$b=(function_exists('adminer_object')?adminer_object():new
Adminer);if($b->operators===null)$b->operators=$sf;function
page_header($di,$n="",$Xa=array(),$ei=""){global$ca,$ia,$b,$fc,$x;page_headers();if(is_ajax()&&$n){page_messages($n);exit;}$fi=$di.($ei!=""?": $ei":"");$gi=strip_tags($fi.(SERVER!=""&&SERVER!="localhost"?h(" - ".SERVER):"")." - ".$b->name());echo'<!DOCTYPE html>
<html lang="',$ca,'" dir="',lang(80),'">
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<meta name="robots" content="noindex">
<title>',$gi,'</title>
<link rel="stylesheet" type="text/css" href="',h(preg_replace("~\\?.*~","",ME)."?file=default.css&version=4.6.3"),'">
',script_src(preg_replace("~\\?.*~","",ME)."?file=functions.js&version=4.6.3");if($b->head()){echo'<link rel="shortcut icon" type="image/x-icon" href="',h(preg_replace("~\\?.*~","",ME)."?file=favicon.ico&version=4.6.3"),'">
<link rel="apple-touch-icon" href="',h(preg_replace("~\\?.*~","",ME)."?file=favicon.ico&version=4.6.3"),'">
';foreach($b->css()as$Jb){echo'<link rel="stylesheet" type="text/css" href="',h($Jb),'">
';}}echo'
<body class="',lang(80),' nojs">
';$Vc=get_temp_dir()."/adminer.version";if(!$_COOKIE["adminer_version"]&&function_exists('openssl_verify')&&file_exists($Vc)&&filemtime($Vc)+86400>time()){$Ui=unserialize(file_get_contents($Vc));$qg="-----BEGIN PUBLIC KEY-----
MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAwqWOVuF5uw7/+Z70djoK
RlHIZFZPO0uYRezq90+7Amk+FDNd7KkL5eDve+vHRJBLAszF/7XKXe11xwliIsFs
DFWQlsABVZB3oisKCBEuI71J4kPH8dKGEWR9jDHFw3cWmoH3PmqImX6FISWbG3B8
h7FIx3jEaw5ckVPVTeo5JRm/1DZzJxjyDenXvBQ/6o9DgZKeNDgxwKzH+sw9/YCO
jHnq1cFpOIISzARlrHMa/43YfeNRAm/tsBXjSxembBPo7aQZLAWHmaj5+K19H10B
nCpz9Y++cipkVEiKRGih4ZEvjoFysEOdRLj6WiD/uUNky4xGeA6LaJqh5XpkFkcQ
fQIDAQAB
-----END PUBLIC KEY-----
";if(openssl_verify($Ui["version"],base64_decode($Ui["signature"]),$qg)==1)$_COOKIE["adminer_version"]=$Ui["version"];}echo'<script',nonce(),'>
mixin(document.body, {onkeydown: bodyKeydown, onclick: bodyClick',(isset($_COOKIE["adminer_version"])?"":", onload: partial(verifyVersion, '$ia', '".js_escape(ME)."', '".get_token()."')");?>});
document.body.className = document.body.className.replace(/ nojs/, ' js');
var offlineMessage = '<?php echo
js_escape(lang(81)),'\';
var thousandsSeparator = \'',js_escape(lang(5)),'\';
</script>

<div id="help" class="jush-',$x,' jsonly hidden"></div>
',script("mixin(qs('#help'), {onmouseover: function () { helpOpen = 1; }, onmouseout: helpMouseout});"),'
<div id="content">
';if($Xa!==null){$_=substr(preg_replace('~\b(username|db|ns)=[^&]*&~','',ME),0,-1);echo'<p id="breadcrumb"><a href="'.h($_?$_:".").'">'.$fc[DRIVER].'</a> &raquo; ';$_=substr(preg_replace('~\b(db|ns)=[^&]*&~','',ME),0,-1);$N=$b->serverName(SERVER);$N=($N!=""?$N:lang(35));if($Xa===false)echo"$N\n";else{echo"<a href='".($_?h($_):".")."' accesskey='1' title='Alt+Shift+1'>$N</a> &raquo; ";if($_GET["ns"]!=""||(DB!=""&&is_array($Xa)))echo'<a href="'.h($_."&db=".urlencode(DB).(support("scheme")?"&ns=":"")).'">'.h(DB).'</a> &raquo; ';if(is_array($Xa)){if($_GET["ns"]!="")echo'<a href="'.h(substr(ME,0,-1)).'">'.h($_GET["ns"]).'</a> &raquo; ';foreach($Xa
as$y=>$X){$Xb=(is_array($X)?$X[1]:h($X));if($Xb!="")echo"<a href='".h(ME."$y=").urlencode(is_array($X)?$X[0]:$X)."'>$Xb</a> &raquo; ";}}echo"$di\n";}}echo"<h2>$fi</h2>\n","<div id='ajaxstatus' class='jsonly hidden'></div>\n";restart_session();page_messages($n);$k=&get_session("dbs");if(DB!=""&&$k&&!in_array(DB,$k,true))$k=null;stop_session();define("PAGE_HEADER",1);}function
page_headers(){global$b;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($b->csp()as$Ib){$xd=array();foreach($Ib
as$y=>$X)$xd[]="$y $X";header("Content-Security-Policy: ".implode("; ",$xd));}$b->headers();}function
csp(){return
array(array("script-src"=>"'self' 'unsafe-inline' 'nonce-".get_nonce()."' 'strict-dynamic'","connect-src"=>"'self'","frame-src"=>"https://www.adminer.org","object-src"=>"'none'","base-uri"=>"'none'","form-action"=>"'self'",),);}function
get_nonce(){static$cf;if(!$cf)$cf=base64_encode(rand_string());return$cf;}function
page_messages($n){$Hi=preg_replace('~^[^?]*~','',$_SERVER["REQUEST_URI"]);$Oe=$_SESSION["messages"][$Hi];if($Oe){echo"<div class='message'>".implode("</div>\n<div class='message'>",$Oe)."</div>".script("messagesPrint();");unset($_SESSION["messages"][$Hi]);}if($n)echo"<div class='error'>$n</div>\n";}function
page_footer($Se=""){global$b,$ki;echo'</div>

';switch_lang();if($Se!="auth"){echo'<form action="" method="post">
<p class="logout">
<input type="submit" name="logout" value="',lang(82),'" id="logout">
<input type="hidden" name="token" value="',$ki,'">
</p>
</form>
';}echo'<div id="menu">
';$b->navigation($Se);echo'</div>
',script("setupSubmitHighlight(document);");}function
int32($Ve){while($Ve>=2147483648)$Ve-=4294967296;while($Ve<=-2147483649)$Ve+=4294967296;return(int)$Ve;}function
long2str($W,$Yi){$Vg='';foreach($W
as$X)$Vg.=pack('V',$X);if($Yi)return
substr($Vg,0,end($W));return$Vg;}function
str2long($Vg,$Yi){$W=array_values(unpack('V*',str_pad($Vg,4*ceil(strlen($Vg)/4),"\0")));if($Yi)$W[]=strlen($Vg);return$W;}function
xxtea_mx($lj,$kj,$Hh,$ce){return
int32((($lj>>5&0x7FFFFFF)^$kj<<2)+(($kj>>3&0x1FFFFFFF)^$lj<<4))^int32(($Hh^$kj)+($ce^$lj));}function
encrypt_string($Ch,$y){if($Ch=="")return"";$y=array_values(unpack("V*",pack("H*",md5($y))));$W=str2long($Ch,true);$Ve=count($W)-1;$lj=$W[$Ve];$kj=$W[0];$rg=floor(6+52/($Ve+1));$Hh=0;while($rg-->0){$Hh=int32($Hh+0x9E3779B9);$mc=$Hh>>2&3;for($If=0;$If<$Ve;$If++){$kj=$W[$If+1];$Ue=xxtea_mx($lj,$kj,$Hh,$y[$If&3^$mc]);$lj=int32($W[$If]+$Ue);$W[$If]=$lj;}$kj=$W[0];$Ue=xxtea_mx($lj,$kj,$Hh,$y[$If&3^$mc]);$lj=int32($W[$Ve]+$Ue);$W[$Ve]=$lj;}return
long2str($W,false);}function
decrypt_string($Ch,$y){if($Ch=="")return"";if(!$y)return
false;$y=array_values(unpack("V*",pack("H*",md5($y))));$W=str2long($Ch,false);$Ve=count($W)-1;$lj=$W[$Ve];$kj=$W[0];$rg=floor(6+52/($Ve+1));$Hh=int32($rg*0x9E3779B9);while($Hh){$mc=$Hh>>2&3;for($If=$Ve;$If>0;$If--){$lj=$W[$If-1];$Ue=xxtea_mx($lj,$kj,$Hh,$y[$If&3^$mc]);$kj=int32($W[$If]-$Ue);$W[$If]=$kj;}$lj=$W[$Ve];$Ue=xxtea_mx($lj,$kj,$Hh,$y[$If&3^$mc]);$kj=int32($W[0]-$Ue);$W[0]=$kj;$Hh=int32($Hh-0x9E3779B9);}return
long2str($W,true);}$g='';$wd=$_SESSION["token"];if(!$wd)$_SESSION["token"]=rand(1,1e6);$ki=get_token();$Yf=array();if($_COOKIE["adminer_permanent"]){foreach(explode(" ",$_COOKIE["adminer_permanent"])as$X){list($y)=explode(":",$X);$Yf[$y]=$X;}}function
add_invalid_login(){global$b;$jd=file_open_lock(get_temp_dir()."/adminer.invalid");if(!$jd)return;$Vd=unserialize(stream_get_contents($jd));$ai=time();if($Vd){foreach($Vd
as$Wd=>$X){if($X[0]<$ai)unset($Vd[$Wd]);}}$Ud=&$Vd[$b->bruteForceKey()];if(!$Ud)$Ud=array($ai+30*60,0);$Ud[1]++;file_write_unlock($jd,serialize($Vd));}function
check_invalid_login(){global$b;$Vd=unserialize(@file_get_contents(get_temp_dir()."/adminer.invalid"));$Ud=$Vd[$b->bruteForceKey()];$bf=($Ud[1]>29?$Ud[0]-time():0);if($bf>0)auth_error(lang(83,ceil($bf/60)));}$La=$_POST["auth"];if($La){session_regenerate_id();$Ti=$La["driver"];$N=$La["server"];$V=$La["username"];$F=(string)$La["password"];$l=$La["db"];set_password($Ti,$N,$V,$F);$_SESSION["db"][$Ti][$N][$V][$l]=true;if($La["permanent"]){$y=base64_encode($Ti)."-".base64_encode($N)."-".base64_encode($V)."-".base64_encode($l);$kg=$b->permanentLogin(true);$Yf[$y]="$y:".base64_encode($kg?encrypt_string($F,$kg):"");cookie("adminer_permanent",implode(" ",$Yf));}if(count($_POST)==1||DRIVER!=$Ti||SERVER!=$N||$_GET["username"]!==$V||DB!=$l)redirect(auth_url($Ti,$N,$V,$l));}elseif($_POST["logout"]){if($wd&&!verify_token()){page_header(lang(82),lang(84));page_footer("db");exit;}else{foreach(array("pwds","db","dbs","queries")as$y)set_session($y,null);unset_permanent();redirect(substr(preg_replace('~\b(username|db|ns)=[^&]*&~','',ME),0,-1),lang(85).' '.lang(86,'https://sourceforge.net/donate/index.php?group_id=264133'));}}elseif($Yf&&!$_SESSION["pwds"]){session_regenerate_id();$kg=$b->permanentLogin();foreach($Yf
as$y=>$X){list(,$jb)=explode(":",$X);list($Ti,$N,$V,$l)=array_map('base64_decode',explode("-",$y));set_password($Ti,$N,$V,decrypt_string(base64_decode($jb),$kg));$_SESSION["db"][$Ti][$N][$V][$l]=true;}}function
unset_permanent(){global$Yf;foreach($Yf
as$y=>$X){list($Ti,$N,$V,$l)=array_map('base64_decode',explode("-",$y));if($Ti==DRIVER&&$N==SERVER&&$V==$_GET["username"]&&$l==DB)unset($Yf[$y]);}cookie("adminer_permanent",implode(" ",$Yf));}function
auth_error($n){global$b,$wd;$kh=session_name();if(isset($_GET["username"])){header("HTTP/1.1 403 Forbidden");if(($_COOKIE[$kh]||$_GET[$kh])&&!$wd)$n=lang(87);else{restart_session();add_invalid_login();$F=get_password();if($F!==null){if($F===false)$n.='<br>'.lang(88,target_blank(),'<code>permanentLogin()</code>');set_password(DRIVER,SERVER,$_GET["username"],null);}unset_permanent();}}if(!$_COOKIE[$kh]&&$_GET[$kh]&&ini_bool("session.use_only_cookies"))$n=lang(89);$Lf=session_get_cookie_params();cookie("adminer_key",($_COOKIE["adminer_key"]?$_COOKIE["adminer_key"]:rand_string()),$Lf["lifetime"]);page_header(lang(39),$n,null);echo"<form action='' method='post'>\n","<div>";if(hidden_fields($_POST,array("auth")))echo"<p class='message'>".lang(90)."\n";echo"</div>\n";$b->loginForm();echo"</form>\n";page_footer("auth");exit;}if(isset($_GET["username"])&&!class_exists("Min_DB")){unset($_SESSION["pwds"][DRIVER]);unset_permanent();page_header(lang(91),lang(92,implode(", ",$eg)),false);page_footer("auth");exit;}stop_session(true);if(isset($_GET["username"])){list($Bd,$ag)=explode(":",SERVER,2);if(is_numeric($ag)&&$ag<1024)auth_error(lang(93));check_invalid_login();$g=connect();$m=new
Min_Driver($g);}$xe=null;if(!is_object($g)||($xe=$b->login($_GET["username"],get_password()))!==true)auth_error((is_string($g)?h($g):(is_string($xe)?$xe:lang(94))));if($La&&$_POST["token"])$_POST["token"]=$ki;$n='';if($_POST){if(!verify_token()){$Pd="max_input_vars";$Ie=ini_get($Pd);if(extension_loaded("suhosin")){foreach(array("suhosin.request.max_vars","suhosin.post.max_vars")as$y){$X=ini_get($y);if($X&&(!$Ie||$X<$Ie)){$Pd=$y;$Ie=$X;}}}$n=(!$_POST["token"]&&$Ie?lang(95,"'$Pd'"):lang(84).' '.lang(96));}}elseif($_SERVER["REQUEST_METHOD"]=="POST"){$n=lang(97,"'post_max_size'");if(isset($_GET["sql"]))$n.=' '.lang(98);}function
select($H,$h=null,$_f=array(),$z=0){global$x;$we=array();$w=array();$e=array();$Ua=array();$zi=array();$I=array();odd('');for($s=0;(!$z||$s<$z)&&($J=$H->fetch_row());$s++){if(!$s){echo"<table cellspacing='0' class='nowrap'>\n","<thead><tr>";for($be=0;$be<count($J);$be++){$o=$H->fetch_field();$C=$o->name;$zf=$o->orgtable;$yf=$o->orgname;$I[$o->table]=$zf;if($_f&&$x=="sql")$we[$be]=($C=="table"?"table=":($C=="possible_keys"?"indexes=":null));elseif($zf!=""){if(!isset($w[$zf])){$w[$zf]=array();foreach(indexes($zf,$h)as$v){if($v["type"]=="PRIMARY"){$w[$zf]=array_flip($v["columns"]);break;}}$e[$zf]=$w[$zf];}if(isset($e[$zf][$yf])){unset($e[$zf][$yf]);$w[$zf][$yf]=$be;$we[$be]=$zf;}}if($o->charsetnr==63)$Ua[$be]=true;$zi[$be]=$o->type;echo"<th".($zf!=""||$o->name!=$yf?" title='".h(($zf!=""?"$zf.":"").$yf)."'":"").">".h($C).($_f?doc_link(array('sql'=>"explain-output.html#explain_".strtolower($C),'mariadb'=>"explain/#the-columns-in-explain-select",)):"");}echo"</thead>\n";}echo"<tr".odd().">";foreach($J
as$y=>$X){if($X===null)$X="<i>NULL</i>";elseif($Ua[$y]&&!is_utf8($X))$X="<i>".lang(48,strlen($X))."</i>";else{$X=h($X);if($zi[$y]==254)$X="<code>$X</code>";}if(isset($we[$y])&&!$e[$we[$y]]){if($_f&&$x=="sql"){$R=$J[array_search("table=",$we)];$_=$we[$y].urlencode($_f[$R]!=""?$_f[$R]:$R);}else{$_="edit=".urlencode($we[$y]);foreach($w[$we[$y]]as$nb=>$be)$_.="&where".urlencode("[".bracket_escape($nb)."]")."=".urlencode($J[$be]);}$X="<a href='".h(ME.$_)."'>$X</a>";}echo"<td>$X";}}echo($s?"</table>":"<p class='message'>".lang(12))."\n";return$I;}function
referencable_primary($eh){$I=array();foreach(table_status('',true)as$Lh=>$R){if($Lh!=$eh&&fk_support($R)){foreach(fields($Lh)as$o){if($o["primary"]){if($I[$Lh]){unset($I[$Lh]);break;}$I[$Lh]=$o;}}}}return$I;}function
textarea($C,$Y,$K=10,$sb=80){global$x;echo"<textarea name='$C' rows='$K' cols='$sb' class='sqlarea jush-$x' spellcheck='false' wrap='off'>";if(is_array($Y)){foreach($Y
as$X)echo
h($X[0])."\n\n\n";}else
echo
h($Y);echo"</textarea>";}function
edit_type($y,$o,$qb,$fd=array(),$Mc=array()){global$Dh,$zi,$Fi,$nf;$U=$o["type"];echo'<td><select name="',h($y),'[type]" class="type" aria-labelledby="label-type">';if($U&&!isset($zi[$U])&&!isset($fd[$U])&&!in_array($U,$Mc))$Mc[]=$U;if($fd)$Dh[lang(99)]=$fd;echo
optionlist(array_merge($Mc,$Dh),$U),'</select>
',on_help("getTarget(event).value",1),script("mixin(qsl('select'), {onfocus: function () { lastType = selectValue(this); }, onchange: editingTypeChange});",""),'<td><input name="',h($y),'[length]" value="',h($o["length"]),'" size="3"',(!$o["length"]&&preg_match('~var(char|binary)$~',$U)?" class='required'":"");echo' aria-labelledby="label-length">',script("mixin(qsl('input'), {onfocus: editingLengthFocus, oninput: editingLengthChange});",""),'<td class="options">',"<select name='".h($y)."[collation]'".(preg_match('~(char|text|enum|set)$~',$U)?"":" class='hidden'").'><option value="">('.lang(100).')'.optionlist($qb,$o["collation"]).'</select>',($Fi?"<select name='".h($y)."[unsigned]'".(!$U||preg_match(number_type(),$U)?"":" class='hidden'").'><option>'.optionlist($Fi,$o["unsigned"]).'</select>':''),(isset($o['on_update'])?"<select name='".h($y)."[on_update]'".(preg_match('~timestamp|datetime~',$U)?"":" class='hidden'").'>'.optionlist(array(""=>"(".lang(101).")","CURRENT_TIMESTAMP"),$o["on_update"]).'</select>':''),($fd?"<select name='".h($y)."[on_delete]'".(preg_match("~`~",$U)?"":" class='hidden'")."><option value=''>(".lang(102).")".optionlist(explode("|",$nf),$o["on_delete"])."</select> ":" ");}function
process_length($te){global$xc;return(preg_match("~^\\s*\\(?\\s*$xc(?:\\s*,\\s*$xc)*+\\s*\\)?\\s*\$~",$te)&&preg_match_all("~$xc~",$te,$Ce)?"(".implode(",",$Ce[0]).")":preg_replace('~^[0-9].*~','(\0)',preg_replace('~[^-0-9,+()[\]]~','',$te)));}function
process_type($o,$ob="COLLATE"){global$Fi;return" $o[type]".process_length($o["length"]).(preg_match(number_type(),$o["type"])&&in_array($o["unsigned"],$Fi)?" $o[unsigned]":"").(preg_match('~char|text|enum|set~',$o["type"])&&$o["collation"]?" $ob ".q($o["collation"]):"");}function
process_field($o,$xi){return
array(idf_escape(trim($o["field"])),process_type($xi),($o["null"]?" NULL":" NOT NULL"),default_value($o),(preg_match('~timestamp|datetime~',$o["type"])&&$o["on_update"]?" ON UPDATE $o[on_update]":""),(support("comment")&&$o["comment"]!=""?" COMMENT ".q($o["comment"]):""),($o["auto_increment"]?auto_increment():null),);}function
default_value($o){$Tb=$o["default"];return($Tb===null?"":" DEFAULT ".(preg_match('~char|binary|text|enum|set~',$o["type"])||preg_match('~^(?![a-z])~i',$Tb)?q($Tb):$Tb));}function
type_class($U){foreach(array('char'=>'text','date'=>'time|year','binary'=>'blob','enum'=>'set',)as$y=>$X){if(preg_match("~$y|$X~",$U))return" class='$y'";}}function
edit_fields($p,$qb,$U="TABLE",$fd=array(),$wb=false){global$Qd;$p=array_values($p);echo'<thead><tr>
';if($U=="PROCEDURE"){echo'<td>';}echo'<th id="label-name">',($U=="TABLE"?lang(103):lang(104)),'<td id="label-type">',lang(50),'<textarea id="enum-edit" rows="4" cols="12" wrap="off" style="display: none;"></textarea>',script("qs('#enum-edit').onblur = editingLengthBlur;"),'<td id="label-length">',lang(105),'<td>',lang(106);if($U=="TABLE"){echo'<td id="label-null">NULL
<td><input type="radio" name="auto_increment_col" value=""><acronym id="label-ai" title="',lang(52),'">AI</acronym>',doc_link(array('sql'=>"example-auto-increment.html",'mariadb'=>"auto_increment/",'sqlite'=>"autoinc.html",'pgsql'=>"datatype.html#DATATYPE-SERIAL",'mssql'=>"ms186775.aspx",)),'<td id="label-default">',lang(53),(support("comment")?"<td id='label-comment'".($wb?"":" class='hidden'").">".lang(51):"");}echo'<td>',"<input type='image' class='icon' name='add[".(support("move_col")?0:count($p))."]' src='".h(preg_replace("~\\?.*~","",ME)."?file=plus.gif&version=4.6.3")."' alt='+' title='".lang(107)."'>".script("row_count = ".count($p).";"),'</thead>
<tbody>
',script("mixin(qsl('tbody'), {onclick: editingClick, onkeydown: editingKeydown, oninput: editingInput});");foreach($p
as$s=>$o){$s++;$Af=$o[($_POST?"orig":"field")];$bc=(isset($_POST["add"][$s-1])||(isset($o["field"])&&!$_POST["drop_col"][$s]))&&(support("drop_col")||$Af=="");echo'<tr',($bc?"":" style='display: none;'"),'>
',($U=="PROCEDURE"?"<td>".html_select("fields[$s][inout]",explode("|",$Qd),$o["inout"]):""),'<th>';if($bc){echo'<input name="fields[',$s,'][field]" value="',h($o["field"]),'" maxlength="64" autocapitalize="off" aria-labelledby="label-name">',script("qsl('input').oninput = function () { editingNameChange.call(this);".($o["field"]!=""||count($p)>1?"":" editingAddRow.call(this);")." };","");}echo'<input type="hidden" name="fields[',$s,'][orig]" value="',h($Af),'">
';edit_type("fields[$s]",$o,$qb,$fd);if($U=="TABLE"){echo'<td>',checkbox("fields[$s][null]",1,$o["null"],"","","block","label-null"),'<td><label class="block"><input type="radio" name="auto_increment_col" value="',$s,'"';if($o["auto_increment"]){echo' checked';}echo' aria-labelledby="label-ai"></label><td>',checkbox("fields[$s][has_default]",1,$o["has_default"],"","","","label-default"),'<input name="fields[',$s,'][default]" value="',h($o["default"]),'" aria-labelledby="label-default">',(support("comment")?"<td".($wb?"":" class='hidden'")."><input name='fields[$s][comment]' value='".h($o["comment"])."' maxlength='".(min_version(5.5)?1024:255)."' aria-labelledby='label-comment'>":"");}echo"<td>",(support("move_col")?"<input type='image' class='icon' name='add[$s]' src='".h(preg_replace("~\\?.*~","",ME)."?file=plus.gif&version=4.6.3")."' alt='+' title='".lang(107)."'> "."<input type='image' class='icon' name='up[$s]' src='".h(preg_replace("~\\?.*~","",ME)."?file=up.gif&version=4.6.3")."' alt='鈫? title='".lang(108)."'> "."<input type='image' class='icon' name='down[$s]' src='".h(preg_replace("~\\?.*~","",ME)."?file=down.gif&version=4.6.3")."' alt='鈫? title='".lang(109)."'> ":""),($Af==""||support("drop_col")?"<input type='image' class='icon' name='drop_col[$s]' src='".h(preg_replace("~\\?.*~","",ME)."?file=cross.gif&version=4.6.3")."' alt='x' title='".lang(110)."'>":"");}}function
process_fields(&$p){$D=0;if($_POST["up"]){$ne=0;foreach($p
as$y=>$o){if(key($_POST["up"])==$y){unset($p[$y]);array_splice($p,$ne,0,array($o));break;}if(isset($o["field"]))$ne=$D;$D++;}}elseif($_POST["down"]){$hd=false;foreach($p
as$y=>$o){if(isset($o["field"])&&$hd){unset($p[key($_POST["down"])]);array_splice($p,$D,0,array($hd));break;}if(key($_POST["down"])==$y)$hd=$o;$D++;}}elseif($_POST["add"]){$p=array_values($p);array_splice($p,key($_POST["add"]),0,array(array()));}elseif(!$_POST["drop_col"])return
false;return
true;}function
normalize_enum($B){return"'".str_replace("'","''",addcslashes(stripcslashes(str_replace($B[0][0].$B[0][0],$B[0][0],substr($B[0],1,-1))),'\\'))."'";}function
grant($md,$mg,$e,$mf){if(!$mg)return
true;if($mg==array("ALL PRIVILEGES","GRANT OPTION"))return($md=="GRANT"?queries("$md ALL PRIVILEGES$mf WITH GRANT OPTION"):queries("$md ALL PRIVILEGES$mf")&&queries("$md GRANT OPTION$mf"));return
queries("$md ".preg_replace('~(GRANT OPTION)\([^)]*\)~','\1',implode("$e, ",$mg).$e).$mf);}function
drop_create($gc,$i,$hc,$Xh,$jc,$A,$Ne,$Le,$Me,$jf,$Ye){if($_POST["drop"])query_redirect($gc,$A,$Ne);elseif($jf=="")query_redirect($i,$A,$Me);elseif($jf!=$Ye){$Gb=queries($i);queries_redirect($A,$Le,$Gb&&queries($gc));if($Gb)queries($hc);}else
queries_redirect($A,$Le,queries($Xh)&&queries($jc)&&queries($gc)&&queries($i));}function
create_trigger($mf,$J){global$x;$ci=" $J[Timing] $J[Event]".($J["Event"]=="UPDATE OF"?" ".idf_escape($J["Of"]):"");return"CREATE TRIGGER ".idf_escape($J["Trigger"]).($x=="mssql"?$mf.$ci:$ci.$mf).rtrim(" $J[Type]\n$J[Statement]",";").";";}function
create_routine($Rg,$J){global$Qd,$x;$O=array();$p=(array)$J["fields"];ksort($p);foreach($p
as$o){if($o["field"]!="")$O[]=(preg_match("~^($Qd)\$~",$o["inout"])?"$o[inout] ":"").idf_escape($o["field"]).process_type($o,"CHARACTER SET");}$Ub=rtrim("\n$J[definition]",";");return"CREATE $Rg ".idf_escape(trim($J["name"]))." (".implode(", ",$O).")".(isset($_GET["function"])?" RETURNS".process_type($J["returns"],"CHARACTER SET"):"").($J["language"]?" LANGUAGE $J[language]":"").($x=="pgsql"?" AS ".q($Ub):"$Ub;");}function
remove_definer($G){return
preg_replace('~^([A-Z =]+) DEFINER=`'.preg_replace('~@(.*)~','`@`(%|\1)',logged_user()).'`~','\1',$G);}function
format_foreign_key($q){global$nf;return" FOREIGN KEY (".implode(", ",array_map('idf_escape',$q["source"])).") REFERENCES ".table($q["table"])." (".implode(", ",array_map('idf_escape',$q["target"])).")".(preg_match("~^($nf)\$~",$q["on_delete"])?" ON DELETE $q[on_delete]":"").(preg_match("~^($nf)\$~",$q["on_update"])?" ON UPDATE $q[on_update]":"");}function
tar_file($Vc,$hi){$I=pack("a100a8a8a8a12a12",$Vc,644,0,0,decoct($hi->size),decoct(time()));$hb=8*32;for($s=0;$s<strlen($I);$s++)$hb+=ord($I[$s]);$I.=sprintf("%06o",$hb)."\0 ";echo$I,str_repeat("\0",512-strlen($I));$hi->send();echo
str_repeat("\0",511-($hi->size+511)%512);}function
ini_bytes($Pd){$X=ini_get($Pd);switch(strtolower(substr($X,-1))){case'g':$X*=1024;case'm':$X*=1024;case'k':$X*=1024;}return$X;}function
doc_link($Wf,$Yh="<sup>?</sup>"){global$x,$g;$ih=$g->server_info;$Ui=preg_replace('~^(\d\.?\d).*~s','\1',$ih);$Ki=array('sql'=>"https://dev.mysql.com/doc/refman/$Ui/en/",'sqlite'=>"https://www.sqlite.org/",'pgsql'=>"https://www.postgresql.org/docs/$Ui/static/",'mssql'=>"https://msdn.microsoft.com/library/",'oracle'=>"https://download.oracle.com/docs/cd/B19306_01/server.102/b14200/",);if(preg_match('~MariaDB~',$ih)){$Ki['sql']="https://mariadb.com/kb/en/library/";$Wf['sql']=(isset($Wf['mariadb'])?$Wf['mariadb']:str_replace(".html","/",$Wf['sql']));}return($Wf[$x]?"<a href='$Ki[$x]$Wf[$x]'".target_blank().">$Yh</a>":"");}function
ob_gzencode($Q){return
gzencode($Q);}function
db_size($l){global$g;if(!$g->select_db($l))return"?";$I=0;foreach(table_status()as$S)$I+=$S["Data_length"]+$S["Index_length"];return
format_number($I);}function
set_utf8mb4($i){global$g;static$O=false;if(!$O&&preg_match('~\butf8mb4~i',$i)){$O=true;echo"SET NAMES ".charset($g).";\n\n";}}function
connect_error(){global$b,$g,$ki,$n,$fc;if(DB!=""){header("HTTP/1.1 404 Not Found");page_header(lang(38).": ".h(DB),lang(111),true);}else{if($_POST["db"]&&!$n)queries_redirect(substr(ME,0,-1),lang(112),drop_databases($_POST["db"]));page_header(lang(113),$n,false);echo"<p class='links'>\n";foreach(array('database'=>lang(114),'privileges'=>lang(72),'processlist'=>lang(115),'variables'=>lang(116),'status'=>lang(117),)as$y=>$X){if(support($y))echo"<a href='".h(ME)."$y='>$X</a>\n";}echo"<p>".lang(118,$fc[DRIVER],"<b>".h($g->server_info)."</b>","<b>$g->extension</b>")."\n","<p>".lang(119,"<b>".h(logged_user())."</b>")."\n";$k=$b->databases();if($k){$Yg=support("scheme");$qb=collations();echo"<form action='' method='post'>\n","<table cellspacing='0' class='checkable'>\n",script("mixin(qsl('table'), {onclick: tableClick, ondblclick: partialArg(tableClick, true)});"),"<thead><tr>".(support("database")?"<td>":"")."<th>".lang(38)." - <a href='".h(ME)."refresh=1'>".lang(120)."</a>"."<td>".lang(121)."<td>".lang(122)."<td>".lang(123)." - <a href='".h(ME)."dbsize=1'>".lang(124)."</a>".script("qsl('a').onclick = partial(ajaxSetHtml, '".js_escape(ME)."script=connect');","")."</thead>\n";$k=($_GET["dbsize"]?count_tables($k):array_flip($k));foreach($k
as$l=>$T){$Qg=h(ME)."db=".urlencode($l);$t=h("Db-".$l);echo"<tr".odd().">".(support("database")?"<td>".checkbox("db[]",$l,in_array($l,(array)$_POST["db"]),"","","",$t):""),"<th><a href='$Qg' id='$t'>".h($l)."</a>";$pb=h(db_collation($l,$qb));echo"<td>".(support("database")?"<a href='$Qg".($Yg?"&amp;ns=":"")."&amp;database=' title='".lang(68)."'>$pb</a>":$pb),"<td align='right'><a href='$Qg&amp;schema=' id='tables-".h($l)."' title='".lang(71)."'>".($_GET["dbsize"]?$T:"?")."</a>","<td align='right' id='size-".h($l)."'>".($_GET["dbsize"]?db_size($l):"?"),"\n";}echo"</table>\n",(support("database")?"<div class='footer'><div>\n"."<fieldset><legend>".lang(125)." <span id='selected'></span></legend><div>\n"."<input type='hidden' name='all' value=''>".script("qsl('input').onclick = function () { selectCount('selected', formChecked(this, /^db/)); };")."<input type='submit' name='drop' value='".lang(126)."'>".confirm()."\n"."</div></fieldset>\n"."</div></div>\n":""),"<input type='hidden' name='token' value='$ki'>\n","</form>\n",script("tableCheck();");}}page_footer("db");}if(isset($_GET["status"]))$_GET["variables"]=$_GET["status"];if(isset($_GET["import"]))$_GET["sql"]=$_GET["import"];if(!(DB!=""?$g->select_db(DB):isset($_GET["sql"])||isset($_GET["dump"])||isset($_GET["database"])||isset($_GET["processlist"])||isset($_GET["privileges"])||isset($_GET["user"])||isset($_GET["variables"])||$_GET["script"]=="connect"||$_GET["script"]=="kill")){if(DB!=""||$_GET["refresh"]){restart_session();set_session("dbs",null);}connect_error();exit;}if(support("scheme")&&DB!=""&&$_GET["ns"]!==""){if(!isset($_GET["ns"]))redirect(preg_replace('~ns=[^&]*&~','',ME)."ns=".get_schema());if(!set_schema($_GET["ns"])){header("HTTP/1.1 404 Not Found");page_header(lang(78).": ".h($_GET["ns"]),lang(127),true);page_footer("ns");exit;}}$nf="RESTRICT|NO ACTION|CASCADE|SET NULL|SET DEFAULT";class
TmpFile{var$handler;var$size;function
__construct(){$this->handler=tmpfile();}function
write($Ab){$this->size+=strlen($Ab);fwrite($this->handler,$Ab);}function
send(){fseek($this->handler,0);fpassthru($this->handler);fclose($this->handler);}}$xc="'(?:''|[^'\\\\]|\\\\.)*'";$Qd="IN|OUT|INOUT";if(isset($_GET["select"])&&($_POST["edit"]||$_POST["clone"])&&!$_POST["save"])$_GET["edit"]=$_GET["select"];if(isset($_GET["callf"]))$_GET["call"]=$_GET["callf"];if(isset($_GET["function"]))$_GET["procedure"]=$_GET["function"];if(isset($_GET["download"])){$a=$_GET["download"];$p=fields($a);header("Content-Type: application/octet-stream");header("Content-Disposition: attachment; filename=".friendly_url("$a-".implode("_",$_GET["where"])).".".friendly_url($_GET["field"]));$L=array(idf_escape($_GET["field"]));$H=$m->select($a,$L,array(where($_GET,$p)),$L);$J=($H?$H->fetch_row():array());echo$m->value($J[0],$p[$_GET["field"]]);exit;}elseif(isset($_GET["table"])){$a=$_GET["table"];$p=fields($a);if(!$p)$n=error();$S=table_status1($a,true);$C=$b->tableName($S);page_header(($p&&is_view($S)?$S['Engine']=='materialized view'?lang(128):lang(129):lang(130)).": ".($C!=""?$C:h($a)),$n);$b->selectLinks($S);$vb=$S["Comment"];if($vb!="")echo"<p class='nowrap'>".lang(51).": ".h($vb)."\n";if($p)$b->tableStructurePrint($p);if(!is_view($S)){if(support("indexes")){echo"<h3 id='indexes'>".lang(131)."</h3>\n";$w=indexes($a);if($w)$b->tableIndexesPrint($w);echo'<p class="links"><a href="'.h(ME).'indexes='.urlencode($a).'">'.lang(132)."</a>\n";}if(fk_support($S)){echo"<h3 id='foreign-keys'>".lang(99)."</h3>\n";$fd=foreign_keys($a);if($fd){echo"<table cellspacing='0'>\n","<thead><tr><th>".lang(133)."<td>".lang(134)."<td>".lang(102)."<td>".lang(101)."<td></thead>\n";foreach($fd
as$C=>$q){echo"<tr title='".h($C)."'>","<th><i>".implode("</i>, <i>",array_map('h',$q["source"]))."</i>","<td><a href='".h($q["db"]!=""?preg_replace('~db=[^&]*~',"db=".urlencode($q["db"]),ME):($q["ns"]!=""?preg_replace('~ns=[^&]*~',"ns=".urlencode($q["ns"]),ME):ME))."table=".urlencode($q["table"])."'>".($q["db"]!=""?"<b>".h($q["db"])."</b>.":"").($q["ns"]!=""?"<b>".h($q["ns"])."</b>.":"").h($q["table"])."</a>","(<i>".implode("</i>, <i>",array_map('h',$q["target"]))."</i>)","<td>".h($q["on_delete"])."\n","<td>".h($q["on_update"])."\n",'<td><a href="'.h(ME.'foreign='.urlencode($a).'&name='.urlencode($C)).'">'.lang(135).'</a>';}echo"</table>\n";}echo'<p class="links"><a href="'.h(ME).'foreign='.urlencode($a).'">'.lang(136)."</a>\n";}}if(support(is_view($S)?"view_trigger":"trigger")){echo"<h3 id='triggers'>".lang(137)."</h3>\n";$wi=triggers($a);if($wi){echo"<table cellspacing='0'>\n";foreach($wi
as$y=>$X)echo"<tr valign='top'><td>".h($X[0])."<td>".h($X[1])."<th>".h($y)."<td><a href='".h(ME.'trigger='.urlencode($a).'&name='.urlencode($y))."'>".lang(135)."</a>\n";echo"</table>\n";}echo'<p class="links"><a href="'.h(ME).'trigger='.urlencode($a).'">'.lang(138)."</a>\n";}}elseif(isset($_GET["schema"])){page_header(lang(71),"",array(),h(DB.($_GET["ns"]?".$_GET[ns]":"")));$Nh=array();$Oh=array();$ea=($_GET["schema"]?$_GET["schema"]:$_COOKIE["adminer_schema-".str_replace(".","_",DB)]);preg_match_all('~([^:]+):([-0-9.]+)x([-0-9.]+)(_|$)~',$ea,$Ce,PREG_SET_ORDER);foreach($Ce
as$s=>$B){$Nh[$B[1]]=array($B[2],$B[3]);$Oh[]="\n\t'".js_escape($B[1])."': [ $B[2], $B[3] ]";}$li=0;$Ra=-1;$Xg=array();$Cg=array();$re=array();foreach(table_status('',true)as$R=>$S){if(is_view($S))continue;$bg=0;$Xg[$R]["fields"]=array();foreach(fields($R)as$C=>$o){$bg+=1.25;$o["pos"]=$bg;$Xg[$R]["fields"][$C]=$o;}$Xg[$R]["pos"]=($Nh[$R]?$Nh[$R]:array($li,0));foreach($b->foreignKeys($R)as$X){if(!$X["db"]){$pe=$Ra;if($Nh[$R][1]||$Nh[$X["table"]][1])$pe=min(floatval($Nh[$R][1]),floatval($Nh[$X["table"]][1]))-1;else$Ra-=.1;while($re[(string)$pe])$pe-=.0001;$Xg[$R]["references"][$X["table"]][(string)$pe]=array($X["source"],$X["target"]);$Cg[$X["table"]][$R][(string)$pe]=$X["target"];$re[(string)$pe]=true;}}$li=max($li,$Xg[$R]["pos"][0]+2.5+$bg);}echo'<div id="schema" style="height: ',$li,'em;">
<script',nonce(),'>
qs(\'#schema\').onselectstart = function () { return false; };
var tablePos = {',implode(",",$Oh)."\n",'};
var em = qs(\'#schema\').offsetHeight / ',$li,';
document.onmousemove = schemaMousemove;
document.onmouseup = partialArg(schemaMouseup, \'',js_escape(DB),'\');
</script>
';foreach($Xg
as$C=>$R){echo"<div class='table' style='top: ".$R["pos"][0]."em; left: ".$R["pos"][1]."em;'>",'<a href="'.h(ME).'table='.urlencode($C).'"><b>'.h($C)."</b></a>",script("qsl('div').onmousedown = schemaMousedown;");foreach($R["fields"]as$o){$X='<span'.type_class($o["type"]).' title="'.h($o["full_type"].($o["null"]?" NULL":'')).'">'.h($o["field"]).'</span>';echo"<br>".($o["primary"]?"<i>$X</i>":$X);}foreach((array)$R["references"]as$Uh=>$Dg){foreach($Dg
as$pe=>$_g){$qe=$pe-$Nh[$C][1];$s=0;foreach($_g[0]as$sh)echo"\n<div class='references' title='".h($Uh)."' id='refs$pe-".($s++)."' style='left: $qe"."em; top: ".$R["fields"][$sh]["pos"]."em; padding-top: .5em;'><div style='border-top: 1px solid Gray; width: ".(-$qe)."em;'></div></div>";}}foreach((array)$Cg[$C]as$Uh=>$Dg){foreach($Dg
as$pe=>$e){$qe=$pe-$Nh[$C][1];$s=0;foreach($e
as$Th)echo"\n<div class='references' title='".h($Uh)."' id='refd$pe-".($s++)."' style='left: $qe"."em; top: ".$R["fields"][$Th]["pos"]."em; height: 1.25em; background: url(".h(preg_replace("~\\?.*~","",ME)."?file=arrow.gif) no-repeat right center;&version=4.6.3")."'><div style='height: .5em; border-bottom: 1px solid Gray; width: ".(-$qe)."em;'></div></div>";}}echo"\n</div>\n";}foreach($Xg
as$C=>$R){foreach((array)$R["references"]as$Uh=>$Dg){foreach($Dg
as$pe=>$_g){$Re=$li;$Ge=-10;foreach($_g[0]as$y=>$sh){$cg=$R["pos"][0]+$R["fields"][$sh]["pos"];$dg=$Xg[$Uh]["pos"][0]+$Xg[$Uh]["fields"][$_g[1][$y]]["pos"];$Re=min($Re,$cg,$dg);$Ge=max($Ge,$cg,$dg);}echo"<div class='references' id='refl$pe' style='left: $pe"."em; top: $Re"."em; padding: .5em 0;'><div style='border-right: 1px solid Gray; margin-top: 1px; height: ".($Ge-$Re)."em;'></div></div>\n";}}}echo'</div>
<p class="links"><a href="',h(ME."schema=".urlencode($ea)),'" id="schema-link">',lang(139),'</a>
';}elseif(isset($_GET["dump"])){$a=$_GET["dump"];if($_POST&&!$n){$Db="";foreach(array("output","format","db_style","routines","events","table_style","auto_increment","triggers","data_style")as$y)$Db.="&$y=".urlencode($_POST[$y]);cookie("adminer_export",substr($Db,1));$T=array_flip((array)$_POST["tables"])+array_flip((array)$_POST["data"]);$Jc=dump_headers((count($T)==1?key($T):DB),(DB==""||count($T)>1));$Yd=preg_match('~sql~',$_POST["format"]);if($Yd){echo"-- Adminer $ia ".$fc[DRIVER]." dump\n\n";if($x=="sql"){echo"SET NAMES utf8;
SET time_zone = '+00:00';
".($_POST["data_style"]?"SET foreign_key_checks = 0;
SET sql_mode = 'NO_AUTO_VALUE_ON_ZERO';
":"")."
";$g->query("SET time_zone = '+00:00';");}}$Eh=$_POST["db_style"];$k=array(DB);if(DB==""){$k=$_POST["databases"];if(is_string($k))$k=explode("\n",rtrim(str_replace("\r","",$k),"\n"));}foreach((array)$k
as$l){$b->dumpDatabase($l);if($g->select_db($l)){if($Yd&&preg_match('~CREATE~',$Eh)&&($i=$g->result("SHOW CREATE DATABASE ".idf_escape($l),1))){set_utf8mb4($i);if($Eh=="DROP+CREATE")echo"DROP DATABASE IF EXISTS ".idf_escape($l).";\n";echo"$i;\n";}if($Yd){if($Eh)echo
use_sql($l).";\n\n";$Gf="";if($_POST["routines"]){foreach(array("FUNCTION","PROCEDURE")as$Rg){foreach(get_rows("SHOW $Rg STATUS WHERE Db = ".q($l),null,"-- ")as$J){$i=remove_definer($g->result("SHOW CREATE $Rg ".idf_escape($J["Name"]),2));set_utf8mb4($i);$Gf.=($Eh!='DROP+CREATE'?"DROP $Rg IF EXISTS ".idf_escape($J["Name"]).";;\n":"")."$i;;\n\n";}}}if($_POST["events"]){foreach(get_rows("SHOW EVENTS",null,"-- ")as$J){$i=remove_definer($g->result("SHOW CREATE EVENT ".idf_escape($J["Name"]),3));set_utf8mb4($i);$Gf.=($Eh!='DROP+CREATE'?"DROP EVENT IF EXISTS ".idf_escape($J["Name"]).";;\n":"")."$i;;\n\n";}}if($Gf)echo"DELIMITER ;;\n\n$Gf"."DELIMITER ;\n\n";}if($_POST["table_style"]||$_POST["data_style"]){$Wi=array();foreach(table_status('',true)as$C=>$S){$R=(DB==""||in_array($C,(array)$_POST["tables"]));$Mb=(DB==""||in_array($C,(array)$_POST["data"]));if($R||$Mb){if($Jc=="tar"){$hi=new
TmpFile;ob_start(array($hi,'write'),1e5);}$b->dumpTable($C,($R?$_POST["table_style"]:""),(is_view($S)?2:0));if(is_view($S))$Wi[]=$C;elseif($Mb){$p=fields($C);$b->dumpData($C,$_POST["data_style"],"SELECT *".convert_fields($p,$p)." FROM ".table($C));}if($Yd&&$_POST["triggers"]&&$R&&($wi=trigger_sql($C)))echo"\nDELIMITER ;;\n$wi\nDELIMITER ;\n";if($Jc=="tar"){ob_end_flush();tar_file((DB!=""?"":"$l/")."$C.csv",$hi);}elseif($Yd)echo"\n";}}foreach($Wi
as$Vi)$b->dumpTable($Vi,$_POST["table_style"],1);if($Jc=="tar")echo
pack("x512");}}}if($Yd)echo"-- ".$g->result("SELECT NOW()")."\n";exit;}page_header(lang(74),$n,($_GET["export"]!=""?array("table"=>$_GET["export"]):array()),h(DB));echo'
<form action="" method="post">
<table cellspacing="0">
';$Qb=array('','USE','DROP+CREATE','CREATE');$Ph=array('','DROP+CREATE','CREATE');$Nb=array('','TRUNCATE+INSERT','INSERT');if($x=="sql")$Nb[]='INSERT+UPDATE';parse_str($_COOKIE["adminer_export"],$J);if(!$J)$J=array("output"=>"text","format"=>"sql","db_style"=>(DB!=""?"":"CREATE"),"table_style"=>"DROP+CREATE","data_style"=>"INSERT");if(!isset($J["events"])){$J["routines"]=$J["events"]=($_GET["dump"]=="");$J["triggers"]=$J["table_style"];}echo"<tr><th>".lang(140)."<td>".html_select("output",$b->dumpOutput(),$J["output"],0)."\n";echo"<tr><th>".lang(141)."<td>".html_select("format",$b->dumpFormat(),$J["format"],0)."\n";echo($x=="sqlite"?"":"<tr><th>".lang(38)."<td>".html_select('db_style',$Qb,$J["db_style"]).(support("routine")?checkbox("routines",1,$J["routines"],lang(142)):"").(support("event")?checkbox("events",1,$J["events"],lang(143)):"")),"<tr><th>".lang(122)."<td>".html_select('table_style',$Ph,$J["table_style"]).checkbox("auto_increment",1,$J["auto_increment"],lang(52)).(support("trigger")?checkbox("triggers",1,$J["triggers"],lang(137)):""),"<tr><th>".lang(144)."<td>".html_select('data_style',$Nb,$J["data_style"]),'</table>
<p><input type="submit" value="',lang(74),'">
<input type="hidden" name="token" value="',$ki,'">

<table cellspacing="0">
',script("qsl('table').onclick = dumpClick;");$gg=array();if(DB!=""){$fb=($a!=""?"":" checked");echo"<thead><tr>","<th style='text-align: left;'><label class='block'><input type='checkbox' id='check-tables'$fb>".lang(122)."</label>".script("qs('#check-tables').onclick = partial(formCheck, /^tables\\[/);",""),"<th style='text-align: right;'><label class='block'>".lang(144)."<input type='checkbox' id='check-data'$fb></label>".script("qs('#check-data').onclick = partial(formCheck, /^data\\[/);",""),"</thead>\n";$Wi="";$Qh=tables_list();foreach($Qh
as$C=>$U){$fg=preg_replace('~_.*~','',$C);$fb=($a==""||$a==(substr($a,-1)=="%"?"$fg%":$C));$jg="<tr><td>".checkbox("tables[]",$C,$fb,$C,"","block");if($U!==null&&!preg_match('~table~i',$U))$Wi.="$jg\n";else
echo"$jg<td align='right'><label class='block'><span id='Rows-".h($C)."'></span>".checkbox("data[]",$C,$fb)."</label>\n";$gg[$fg]++;}echo$Wi;if($Qh)echo
script("ajaxSetHtml('".js_escape(ME)."script=db');");}else{echo"<thead><tr><th style='text-align: left;'>","<label class='block'><input type='checkbox' id='check-databases'".($a==""?" checked":"").">".lang(38)."</label>",script("qs('#check-databases').onclick = partial(formCheck, /^databases\\[/);",""),"</thead>\n";$k=$b->databases();if($k){foreach($k
as$l){if(!information_schema($l)){$fg=preg_replace('~_.*~','',$l);echo"<tr><td>".checkbox("databases[]",$l,$a==""||$a=="$fg%",$l,"","block")."\n";$gg[$fg]++;}}}else
echo"<tr><td><textarea name='databases' rows='10' cols='20'></textarea>";}echo'</table>
</form>
';$Xc=true;foreach($gg
as$y=>$X){if($y!=""&&$X>1){echo($Xc?"<p>":" ")."<a href='".h(ME)."dump=".urlencode("$y%")."'>".h($y)."</a>";$Xc=false;}}}elseif(isset($_GET["privileges"])){page_header(lang(72));echo'<p class="links"><a href="'.h(ME).'user=">'.lang(145)."</a>";$H=$g->query("SELECT User, Host FROM mysql.".(DB==""?"user":"db WHERE ".q(DB)." LIKE Db")." ORDER BY Host, User");$md=$H;if(!$H)$H=$g->query("SELECT SUBSTRING_INDEX(CURRENT_USER, '@', 1) AS User, SUBSTRING_INDEX(CURRENT_USER, '@', -1) AS Host");echo"<form action=''><p>\n";hidden_fields_get();echo"<input type='hidden' name='db' value='".h(DB)."'>\n",($md?"":"<input type='hidden' name='grant' value=''>\n"),"<table cellspacing='0'>\n","<thead><tr><th>".lang(36)."<th>".lang(35)."<th></thead>\n";while($J=$H->fetch_assoc())echo'<tr'.odd().'><td>'.h($J["User"])."<td>".h($J["Host"]).'<td><a href="'.h(ME.'user='.urlencode($J["User"]).'&host='.urlencode($J["Host"])).'">'.lang(10)."</a>\n";if(!$md||DB!="")echo"<tr".odd()."><td><input name='user' autocapitalize='off'><td><input name='host' value='localhost' autocapitalize='off'><td><input type='submit' value='".lang(10)."'>\n";echo"</table>\n","</form>\n";}elseif(isset($_GET["sql"])){if(!$n&&$_POST["export"]){dump_headers("sql");$b->dumpTable("","");$b->dumpData("","table",$_POST["query"]);exit;}restart_session();$_d=&get_session("queries");$zd=&$_d[DB];if(!$n&&$_POST["clear"]){$zd=array();redirect(remove_from_uri("history"));}page_header((isset($_GET["import"])?lang(73):lang(65)),$n);if(!$n&&$_POST){$jd=false;if(!isset($_GET["import"]))$G=$_POST["query"];elseif($_POST["webfile"]){$wh=$b->importServerPath();$jd=@fopen((file_exists($wh)?$wh:"compress.zlib://$wh.gz"),"rb");$G=($jd?fread($jd,1e6):false);}else$G=get_file("sql_file",true);if(is_string($G)){if(function_exists('memory_get_usage'))@ini_set("memory_limit",max(ini_bytes("memory_limit"),2*strlen($G)+memory_get_usage()+8e6));if($G!=""&&strlen($G)<1e6){$rg=$G.(preg_match("~;[ \t\r\n]*\$~",$G)?"":";");if(!$zd||reset(end($zd))!=$rg){restart_session();$zd[]=array($rg,time());set_session("queries",$_d);stop_session();}}$th="(?:\\s|/\\*[\s\S]*?\\*/|(?:#|-- )[^\n]*\n?|--\r?\n)";$Wb=";";$D=0;$uc=true;$h=connect();if(is_object($h)&&DB!="")$h->select_db(DB);$ub=0;$zc=array();$Nf='[\'"'.($x=="sql"?'`#':($x=="sqlite"?'`[':($x=="mssql"?'[':''))).']|/\*|-- |$'.($x=="pgsql"?'|\$[^$]*\$':'');$mi=microtime(true);parse_str($_COOKIE["adminer_export"],$ya);$lc=$b->dumpFormat();unset($lc["sql"]);while($G!=""){if(!$D&&preg_match("~^$th*+DELIMITER\\s+(\\S+)~i",$G,$B)){$Wb=$B[1];$G=substr($G,strlen($B[0]));}else{preg_match('('.preg_quote($Wb)."\\s*|$Nf)",$G,$B,PREG_OFFSET_CAPTURE,$D);list($hd,$bg)=$B[0];if(!$hd&&$jd&&!feof($jd))$G.=fread($jd,1e5);else{if(!$hd&&rtrim($G)=="")break;$D=$bg+strlen($hd);if($hd&&rtrim($hd)!=$Wb){while(preg_match('('.($hd=='/*'?'\*/':($hd=='['?']':(preg_match('~^-- |^#~',$hd)?"\n":preg_quote($hd)."|\\\\."))).'|$)s',$G,$B,PREG_OFFSET_CAPTURE,$D)){$Vg=$B[0][0];if(!$Vg&&$jd&&!feof($jd))$G.=fread($jd,1e5);else{$D=$B[0][1]+strlen($Vg);if($Vg[0]!="\\")break;}}}else{$uc=false;$rg=substr($G,0,$bg);$ub++;$jg="<pre id='sql-$ub'><code class='jush-$x'>".$b->sqlCommandQuery($rg)."</code></pre>\n";if($x=="sqlite"&&preg_match("~^$th*+ATTACH\\b~i",$rg,$B)){echo$jg,"<p class='error'>".lang(146)."\n";$zc[]=" <a href='#sql-$ub'>$ub</a>";if($_POST["error_stops"])break;}else{if(!$_POST["only_errors"]){echo$jg;ob_flush();flush();}$_h=microtime(true);if($g->multi_query($rg)&&is_object($h)&&preg_match("~^$th*+USE\\b~i",$rg))$h->query($rg);do{$H=$g->store_result();if($g->error){echo($_POST["only_errors"]?$jg:""),"<p class='error'>".lang(147).($g->errno?" ($g->errno)":"").": ".error()."\n";$zc[]=" <a href='#sql-$ub'>$ub</a>";if($_POST["error_stops"])break
2;}else{$ai=" <span class='time'>(".format_time($_h).")</span>".(strlen($rg)<1000?" <a href='".h(ME)."sql=".urlencode(trim($rg))."'>".lang(10)."</a>":"");$_a=$g->affected_rows;$Zi=($_POST["only_errors"]?"":$m->warnings());$aj="warnings-$ub";if($Zi)$ai.=", <a href='#$aj'>".lang(47)."</a>".script("qsl('a').onclick = partial(toggle, '$aj');","");$Gc=null;$Hc="explain-$ub";if(is_object($H)){$z=$_POST["limit"];$_f=select($H,$h,array(),$z);if(!$_POST["only_errors"]){echo"<form action='' method='post'>\n";$df=$H->num_rows;echo"<p>".($df?($z&&$df>$z?lang(148,$z):"").lang(149,$df):""),$ai;if($h&&preg_match("~^($th|\\()*+SELECT\\b~i",$rg)&&($Gc=explain($h,$rg)))echo", <a href='#$Hc'>Explain</a>".script("qsl('a').onclick = partial(toggle, '$Hc');","");$t="export-$ub";echo", <a href='#$t'>".lang(74)."</a>".script("qsl('a').onclick = partial(toggle, '$t');","")."<span id='$t' class='hidden'>: ".html_select("output",$b->dumpOutput(),$ya["output"])." ".html_select("format",$lc,$ya["format"])."<input type='hidden' name='query' value='".h($rg)."'>"." <input type='submit' name='export' value='".lang(74)."'><input type='hidden' name='token' value='$ki'></span>\n"."</form>\n";}}else{if(preg_match("~^$th*+(CREATE|DROP|ALTER)$th++(DATABASE|SCHEMA)\\b~i",$rg)){restart_session();set_session("dbs",null);stop_session();}if(!$_POST["only_errors"])echo"<p class='message' title='".h($g->info)."'>".lang(150,$_a)."$ai\n";}echo($Zi?"<div id='$aj' class='hidden'>\n$Zi</div>\n":"");if($Gc){echo"<div id='$Hc' class='hidden'>\n";select($Gc,$h,$_f);echo"</div>\n";}}$_h=microtime(true);}while($g->next_result());}$G=substr($G,$D);$D=0;}}}}if($uc)echo"<p class='message'>".lang(151)."\n";elseif($_POST["only_errors"]){echo"<p class='message'>".lang(152,$ub-count($zc))," <span class='time'>(".format_time($mi).")</span>\n";}elseif($zc&&$ub>1)echo"<p class='error'>".lang(147).": ".implode("",$zc)."\n";}else
echo"<p class='error'>".upload_error($G)."\n";}echo'
<form action="" method="post" enctype="multipart/form-data" id="form">
';$Dc="<input type='submit' value='".lang(153)."' title='Ctrl+Enter'>";if(!isset($_GET["import"])){$rg=$_GET["sql"];if($_POST)$rg=$_POST["query"];elseif($_GET["history"]=="all")$rg=$zd;elseif($_GET["history"]!="")$rg=$zd[$_GET["history"]][0];echo"<p>";textarea("query",$rg,20);echo($_POST?"":script("qs('textarea').focus();")),"<p>$Dc\n",lang(154).": <input type='number' name='limit' class='size' value='".h($_POST?$_POST["limit"]:$_GET["limit"])."'>\n";}else{echo"<fieldset><legend>".lang(155)."</legend><div>";$sd=(extension_loaded("zlib")?"[.gz]":"");echo(ini_bool("file_uploads")?"SQL$sd (&lt; ".ini_get("upload_max_filesize")."B): <input type='file' name='sql_file[]' multiple>\n$Dc":lang(156)),"</div></fieldset>\n","<fieldset><legend>".lang(157)."</legend><div>",lang(158,"<code>".h($b->importServerPath())."$sd</code>"),' <input type="submit" name="webfile" value="'.lang(159).'">',"</div></fieldset>\n","<p>";}echo
checkbox("error_stops",1,($_POST?$_POST["error_stops"]:isset($_GET["import"])),lang(160))."\n",checkbox("only_errors",1,($_POST?$_POST["only_errors"]:isset($_GET["import"])),lang(161))."\n","<input type='hidden' name='token' value='$ki'>\n";if(!isset($_GET["import"])&&$zd){print_fieldset("history",lang(162),$_GET["history"]!="");for($X=end($zd);$X;$X=prev($zd)){$y=key($zd);list($rg,$ai,$pc)=$X;echo'<a href="'.h(ME."sql=&history=$y").'">'.lang(10)."</a>"." <span class='time' title='".@date('Y-m-d',$ai)."'>".@date("H:i:s",$ai)."</span>"." <code class='jush-$x'>".shorten_utf8(ltrim(str_replace("\n"," ",str_replace("\r","",preg_replace('~^(#|-- ).*~m','',$rg)))),80,"</code>").($pc?" <span class='time'>($pc)</span>":"")."<br>\n";}echo"<input type='submit' name='clear' value='".lang(163)."'>\n","<a href='".h(ME."sql=&history=all")."'>".lang(164)."</a>\n","</div></fieldset>\n";}echo'</form>
';}elseif(isset($_GET["edit"])){$a=$_GET["edit"];$p=fields($a);$Z=(isset($_GET["select"])?($_POST["check"]&&count($_POST["check"])==1?where_check($_POST["check"][0],$p):""):where($_GET,$p));$Gi=(isset($_GET["select"])?$_POST["edit"]:$Z);foreach($p
as$C=>$o){if(!isset($o["privileges"][$Gi?"update":"insert"])||$b->fieldName($o)=="")unset($p[$C]);}if($_POST&&!$n&&!isset($_GET["select"])){$A=$_POST["referer"];if($_POST["insert"])$A=($Gi?null:$_SERVER["REQUEST_URI"]);elseif(!preg_match('~^.+&select=.+$~',$A))$A=ME."select=".urlencode($a);$w=indexes($a);$Bi=unique_array($_GET["where"],$w);$ug="\nWHERE $Z";if(isset($_POST["delete"]))queries_redirect($A,lang(165),$m->delete($a,$ug,!$Bi));else{$O=array();foreach($p
as$C=>$o){$X=process_input($o);if($X!==false&&$X!==null)$O[idf_escape($C)]=$X;}if($Gi){if(!$O)redirect($A);queries_redirect($A,lang(166),$m->update($a,$O,$ug,!$Bi));if(is_ajax()){page_headers();page_messages($n);exit;}}else{$H=$m->insert($a,$O);$oe=($H?last_id():0);queries_redirect($A,lang(167,($oe?" $oe":"")),$H);}}}$J=null;if($_POST["save"])$J=(array)$_POST["fields"];elseif($Z){$L=array();foreach($p
as$C=>$o){if(isset($o["privileges"]["select"])){$Ha=convert_field($o);if($_POST["clone"]&&$o["auto_increment"])$Ha="''";if($x=="sql"&&preg_match("~enum|set~",$o["type"]))$Ha="1*".idf_escape($C);$L[]=($Ha?"$Ha AS ":"").idf_escape($C);}}$J=array();if(!support("table"))$L=array("*");if($L){$H=$m->select($a,$L,array($Z),$L,array(),(isset($_GET["select"])?2:1));if(!$H)$n=error();else{$J=$H->fetch_assoc();if(!$J)$J=false;}if(isset($_GET["select"])&&(!$J||$H->fetch_assoc()))$J=null;}}if(!support("table")&&!$p){if(!$Z){$H=$m->select($a,array("*"),$Z,array("*"));$J=($H?$H->fetch_assoc():false);if(!$J)$J=array($m->primary=>"");}if($J){foreach($J
as$y=>$X){if(!$Z)$J[$y]=null;$p[$y]=array("field"=>$y,"null"=>($y!=$m->primary),"auto_increment"=>($y==$m->primary));}}}edit_form($a,$p,$J,$Gi);}elseif(isset($_GET["create"])){$a=$_GET["create"];$Pf=array();foreach(array('HASH','LINEAR HASH','KEY','LINEAR KEY','RANGE','LIST')as$y)$Pf[$y]=$y;$Bg=referencable_primary($a);$fd=array();foreach($Bg
as$Lh=>$o)$fd[str_replace("`","``",$Lh)."`".str_replace("`","``",$o["field"])]=$Lh;$Cf=array();$S=array();if($a!=""){$Cf=fields($a);$S=table_status($a);if(!$S)$n=lang(9);}$J=$_POST;$J["fields"]=(array)$J["fields"];if($J["auto_increment_col"])$J["fields"][$J["auto_increment_col"]]["auto_increment"]=true;if($_POST&&!process_fields($J["fields"])&&!$n){if($_POST["drop"])queries_redirect(substr(ME,0,-1),lang(168),drop_tables(array($a)));else{$p=array();$Ea=array();$Li=false;$dd=array();$Bf=reset($Cf);$Ba=" FIRST";foreach($J["fields"]as$y=>$o){$q=$fd[$o["type"]];$xi=($q!==null?$Bg[$q]:$o);if($o["field"]!=""){if(!$o["has_default"])$o["default"]=null;if($y==$J["auto_increment_col"])$o["auto_increment"]=true;$og=process_field($o,$xi);$Ea[]=array($o["orig"],$og,$Ba);if($og!=process_field($Bf,$Bf)){$p[]=array($o["orig"],$og,$Ba);if($o["orig"]!=""||$Ba)$Li=true;}if($q!==null)$dd[idf_escape($o["field"])]=($a!=""&&$x!="sqlite"?"ADD":" ").format_foreign_key(array('table'=>$fd[$o["type"]],'source'=>array($o["field"]),'target'=>array($xi["field"]),'on_delete'=>$o["on_delete"],));$Ba=" AFTER ".idf_escape($o["field"]);}elseif($o["orig"]!=""){$Li=true;$p[]=array($o["orig"]);}if($o["orig"]!=""){$Bf=next($Cf);if(!$Bf)$Ba="";}}$Rf="";if($Pf[$J["partition_by"]]){$Sf=array();if($J["partition_by"]=='RANGE'||$J["partition_by"]=='LIST'){foreach(array_filter($J["partition_names"])as$y=>$X){$Y=$J["partition_values"][$y];$Sf[]="\n  PARTITION ".idf_escape($X)." VALUES ".($J["partition_by"]=='RANGE'?"LESS THAN":"IN").($Y!=""?" ($Y)":" MAXVALUE");}}$Rf.="\nPARTITION BY $J[partition_by]($J[partition])".($Sf?" (".implode(",",$Sf)."\n)":($J["partitions"]?" PARTITIONS ".(+$J["partitions"]):""));}elseif(support("partitioning")&&preg_match("~partitioned~",$S["Create_options"]))$Rf.="\nREMOVE PARTITIONING";$Ke=lang(169);if($a==""){cookie("adminer_engine",$J["Engine"]);$Ke=lang(170);}$C=trim($J["name"]);queries_redirect(ME.(support("table")?"table=":"select=").urlencode($C),$Ke,alter_table($a,$C,($x=="sqlite"&&($Li||$dd)?$Ea:$p),$dd,($J["Comment"]!=$S["Comment"]?$J["Comment"]:null),($J["Engine"]&&$J["Engine"]!=$S["Engine"]?$J["Engine"]:""),($J["Collation"]&&$J["Collation"]!=$S["Collation"]?$J["Collation"]:""),($J["Auto_increment"]!=""?number($J["Auto_increment"]):""),$Rf));}}page_header(($a!=""?lang(45):lang(75)),$n,array("table"=>$a),h($a));if(!$_POST){$J=array("Engine"=>$_COOKIE["adminer_engine"],"fields"=>array(array("field"=>"","type"=>(isset($zi["int"])?"int":(isset($zi["integer"])?"integer":"")),"on_update"=>"")),"partition_names"=>array(""),);if($a!=""){$J=$S;$J["name"]=$a;$J["fields"]=array();if(!$_GET["auto_increment"])$J["Auto_increment"]="";foreach($Cf
as$o){$o["has_default"]=isset($o["default"]);$J["fields"][]=$o;}if(support("partitioning")){$kd="FROM information_schema.PARTITIONS WHERE TABLE_SCHEMA = ".q(DB)." AND TABLE_NAME = ".q($a);$H=$g->query("SELECT PARTITION_METHOD, PARTITION_ORDINAL_POSITION, PARTITION_EXPRESSION $kd ORDER BY PARTITION_ORDINAL_POSITION DESC LIMIT 1");list($J["partition_by"],$J["partitions"],$J["partition"])=$H->fetch_row();$Sf=get_key_vals("SELECT PARTITION_NAME, PARTITION_DESCRIPTION $kd AND PARTITION_NAME != '' ORDER BY PARTITION_ORDINAL_POSITION");$Sf[""]="";$J["partition_names"]=array_keys($Sf);$J["partition_values"]=array_values($Sf);}}}$qb=collations();$wc=engines();foreach($wc
as$vc){if(!strcasecmp($vc,$J["Engine"])){$J["Engine"]=$vc;break;}}echo'
<form action="" method="post" id="form">
<p>
';if(support("columns")||$a==""){echo
lang(171),': <input name="name" maxlength="64" value="',h($J["name"]),'" autocapitalize="off">
';if($a==""&&!$_POST)echo
script("focus(qs('#form')['name']);");echo($wc?"<select name='Engine'>".optionlist(array(""=>"(".lang(172).")")+$wc,$J["Engine"])."</select>".on_help("getTarget(event).value",1).script("qsl('select').onchange = helpClose;"):""),' ',($qb&&!preg_match("~sqlite|mssql~",$x)?html_select("Collation",array(""=>"(".lang(100).")")+$qb,$J["Collation"]):""),' <input type="submit" value="',lang(14),'">
';}echo'
';if(support("columns")){echo'<table cellspacing="0" id="edit-fields" class="nowrap">
';$wb=($_POST?$_POST["comments"]:$J["Comment"]!="");if(!$_POST&&!$wb){foreach($J["fields"]as$o){if($o["comment"]!=""){$wb=true;break;}}}edit_fields($J["fields"],$qb,"TABLE",$fd,$wb);echo'</table>
<p>
',lang(52),': <input type="number" name="Auto_increment" size="6" value="',h($J["Auto_increment"]),'">
',checkbox("defaults",1,!$_POST||$_POST["defaults"],lang(173),"columnShow(this.checked, 5)","jsonly"),($_POST?"":script("editingHideDefaults();")),(support("comment")?"<label><input type='checkbox' name='comments' value='1' class='jsonly'".($wb?" checked":"").">".lang(51)."</label>".script("qsl('input').onclick = partial(editingCommentsClick, true);").' <input name="Comment" value="'.h($J["Comment"]).'" maxlength="'.(min_version(5.5)?2048:60).'"'.($wb?'':' class="hidden"').'>':''),'<p>
<input type="submit" value="',lang(14),'">
';}echo'
';if($a!=""){echo'<input type="submit" name="drop" value="',lang(126),'">',confirm(lang(174,$a));}if(support("partitioning")){$Qf=preg_match('~RANGE|LIST~',$J["partition_by"]);print_fieldset("partition",lang(175),$J["partition_by"]);echo'<p>
',"<select name='partition_by'>".optionlist(array(""=>"")+$Pf,$J["partition_by"])."</select>".on_help("getTarget(event).value.replace(/./, 'PARTITION BY \$&')",1).script("qsl('select').onchange = partitionByChange;"),'(<input name="partition" value="',h($J["partition"]),'">)
',lang(176),': <input type="number" name="partitions" class="size',($Qf||!$J["partition_by"]?" hidden":""),'" value="',h($J["partitions"]),'">
<table cellspacing="0" id="partition-table"',($Qf?"":" class='hidden'"),'>
<thead><tr><th>',lang(177),'<th>',lang(178),'</thead>
';foreach($J["partition_names"]as$y=>$X){echo'<tr>','<td><input name="partition_names[]" value="'.h($X).'" autocapitalize="off">',($y==count($J["partition_names"])-1?script("qsl('input').oninput = partitionNameChange;"):''),'<td><input name="partition_values[]" value="'.h($J["partition_values"][$y]).'">';}echo'</table>
</div></fieldset>
';}echo'<input type="hidden" name="token" value="',$ki,'">
</form>
',script("qs('#form')['defaults'].onclick();".(support("comment")?" editingCommentsClick.call(qs('#form')['comments']);":""));}elseif(isset($_GET["indexes"])){$a=$_GET["indexes"];$Id=array("PRIMARY","UNIQUE","INDEX");$S=table_status($a,true);if(preg_match('~MyISAM|M?aria'.(min_version(5.6,'10.0.5')?'|InnoDB':'').'~i',$S["Engine"]))$Id[]="FULLTEXT";if(preg_match('~MyISAM|M?aria'.(min_version(5.7,'10.2.2')?'|InnoDB':'').'~i',$S["Engine"]))$Id[]="SPATIAL";$w=indexes($a);$hg=array();if($x=="mongo"){$hg=$w["_id_"];unset($Id[0]);unset($w["_id_"]);}$J=$_POST;if($_POST&&!$n&&!$_POST["add"]&&!$_POST["drop_col"]){$c=array();foreach($J["indexes"]as$v){$C=$v["name"];if(in_array($v["type"],$Id)){$e=array();$ue=array();$Yb=array();$O=array();ksort($v["columns"]);foreach($v["columns"]as$y=>$d){if($d!=""){$te=$v["lengths"][$y];$Xb=$v["descs"][$y];$O[]=idf_escape($d).($te?"(".(+$te).")":"").($Xb?" DESC":"");$e[]=$d;$ue[]=($te?$te:null);$Yb[]=$Xb;}}if($e){$Ec=$w[$C];if($Ec){ksort($Ec["columns"]);ksort($Ec["lengths"]);ksort($Ec["descs"]);if($v["type"]==$Ec["type"]&&array_values($Ec["columns"])===$e&&(!$Ec["lengths"]||array_values($Ec["lengths"])===$ue)&&array_values($Ec["descs"])===$Yb){unset($w[$C]);continue;}}$c[]=array($v["type"],$C,$O);}}}foreach($w
as$C=>$Ec)$c[]=array($Ec["type"],$C,"DROP");if(!$c)redirect(ME."table=".urlencode($a));queries_redirect(ME."table=".urlencode($a),lang(179),alter_indexes($a,$c));}page_header(lang(131),$n,array("table"=>$a),h($a));$p=array_keys(fields($a));if($_POST["add"]){foreach($J["indexes"]as$y=>$v){if($v["columns"][count($v["columns"])]!="")$J["indexes"][$y]["columns"][]="";}$v=end($J["indexes"]);if($v["type"]||array_filter($v["columns"],'strlen'))$J["indexes"][]=array("columns"=>array(1=>""));}if(!$J){foreach($w
as$y=>$v){$w[$y]["name"]=$y;$w[$y]["columns"][]="";}$w[]=array("columns"=>array(1=>""));$J["indexes"]=$w;}echo'
<form action="" method="post">
<table cellspacing="0" class="nowrap">
<thead><tr>
<th id="label-type">',lang(180),'<th><input type="submit" class="wayoff">',lang(181),'<th id="label-name">',lang(182),'<th><noscript>',"<input type='image' class='icon' name='add[0]' src='".h(preg_replace("~\\?.*~","",ME)."?file=plus.gif&version=4.6.3")."' alt='+' title='".lang(107)."'>",'</noscript>
</thead>
';if($hg){echo"<tr><td>PRIMARY<td>";foreach($hg["columns"]as$y=>$d){echo
select_input(" disabled",$p,$d),"<label><input disabled type='checkbox'>".lang(60)."</label> ";}echo"<td><td>\n";}$be=1;foreach($J["indexes"]as$v){if(!$_POST["drop_col"]||$be!=key($_POST["drop_col"])){echo"<tr><td>".html_select("indexes[$be][type]",array(-1=>"")+$Id,$v["type"],($be==count($J["indexes"])?"indexesAddRow.call(this);":1),"label-type"),"<td>";ksort($v["columns"]);$s=1;foreach($v["columns"]as$y=>$d){echo"<span>".select_input(" name='indexes[$be][columns][$s]' title='".lang(49)."'",($p?array_combine($p,$p):$p),$d,"partial(".($s==count($v["columns"])?"indexesAddColumn":"indexesChangeColumn").", '".js_escape($x=="sql"?"":$_GET["indexes"]."_")."')"),($x=="sql"||$x=="mssql"?"<input type='number' name='indexes[$be][lengths][$s]' class='size' value='".h($v["lengths"][$y])."' title='".lang(105)."'>":""),($x!="sql"?checkbox("indexes[$be][descs][$s]",1,$v["descs"][$y],lang(60)):"")," </span>";$s++;}echo"<td><input name='indexes[$be][name]' value='".h($v["name"])."' autocapitalize='off' aria-labelledby='label-name'>\n","<td><input type='image' class='icon' name='drop_col[$be]' src='".h(preg_replace("~\\?.*~","",ME)."?file=cross.gif&version=4.6.3")."' alt='x' title='".lang(110)."'>".script("qsl('input').onclick = partial(editingRemoveRow, 'indexes\$1[type]');");}$be++;}echo'</table>
<p>
<input type="submit" value="',lang(14),'">
<input type="hidden" name="token" value="',$ki,'">
</form>
';}elseif(isset($_GET["database"])){$J=$_POST;if($_POST&&!$n&&!isset($_POST["add_x"])){$C=trim($J["name"]);if($_POST["drop"]){$_GET["db"]="";queries_redirect(remove_from_uri("db|database"),lang(183),drop_databases(array(DB)));}elseif(DB!==$C){if(DB!=""){$_GET["db"]=$C;queries_redirect(preg_replace('~\bdb=[^&]*&~','',ME)."db=".urlencode($C),lang(184),rename_database($C,$J["collation"]));}else{$k=explode("\n",str_replace("\r","",$C));$Fh=true;$ne="";foreach($k
as$l){if(count($k)==1||$l!=""){if(!create_database($l,$J["collation"]))$Fh=false;$ne=$l;}}restart_session();set_session("dbs",null);queries_redirect(ME."db=".urlencode($ne),lang(185),$Fh);}}else{if(!$J["collation"])redirect(substr(ME,0,-1));query_redirect("ALTER DATABASE ".idf_escape($C).(preg_match('~^[a-z0-9_]+$~i',$J["collation"])?" COLLATE $J[collation]":""),substr(ME,0,-1),lang(186));}}page_header(DB!=""?lang(68):lang(114),$n,array(),h(DB));$qb=collations();$C=DB;if($_POST)$C=$J["name"];elseif(DB!="")$J["collation"]=db_collation(DB,$qb);elseif($x=="sql"){foreach(get_vals("SHOW GRANTS")as$md){if(preg_match('~ ON (`(([^\\\\`]|``|\\\\.)*)%`\.\*)?~',$md,$B)&&$B[1]){$C=stripcslashes(idf_unescape("`$B[2]`"));break;}}}echo'
<form action="" method="post">
<p>
',($_POST["add_x"]||strpos($C,"\n")?'<textarea id="name" name="name" rows="10" cols="40">'.h($C).'</textarea><br>':'<input name="name" id="name" value="'.h($C).'" maxlength="64" autocapitalize="off">')."\n".($qb?html_select("collation",array(""=>"(".lang(100).")")+$qb,$J["collation"]).doc_link(array('sql'=>"charset-charsets.html",'mariadb'=>"supported-character-sets-and-collations/",'mssql'=>"ms187963.aspx",)):""),script("focus(qs('#name'));"),'<input type="submit" value="',lang(14),'">
';if(DB!="")echo"<input type='submit' name='drop' value='".lang(126)."'>".confirm(lang(174,DB))."\n";elseif(!$_POST["add_x"]&&$_GET["db"]=="")echo"<input type='image' class='icon' name='add' src='".h(preg_replace("~\\?.*~","",ME)."?file=plus.gif&version=4.6.3")."' alt='+' title='".lang(107)."'>\n";echo'<input type="hidden" name="token" value="',$ki,'">
</form>
';}elseif(isset($_GET["scheme"])){$J=$_POST;if($_POST&&!$n){$_=preg_replace('~ns=[^&]*&~','',ME)."ns=";if($_POST["drop"])query_redirect("DROP SCHEMA ".idf_escape($_GET["ns"]),$_,lang(187));else{$C=trim($J["name"]);$_.=urlencode($C);if($_GET["ns"]=="")query_redirect("CREATE SCHEMA ".idf_escape($C),$_,lang(188));elseif($_GET["ns"]!=$C)query_redirect("ALTER SCHEMA ".idf_escape($_GET["ns"])." RENAME TO ".idf_escape($C),$_,lang(189));else
redirect($_);}}page_header($_GET["ns"]!=""?lang(69):lang(70),$n);if(!$J)$J["name"]=$_GET["ns"];echo'
<form action="" method="post">
<p><input name="name" id="name" value="',h($J["name"]),'" autocapitalize="off">
',script("focus(qs('#name'));"),'<input type="submit" value="',lang(14),'">
';if($_GET["ns"]!="")echo"<input type='submit' name='drop' value='".lang(126)."'>".confirm(lang(174,$_GET["ns"]))."\n";echo'<input type="hidden" name="token" value="',$ki,'">
</form>
';}elseif(isset($_GET["call"])){$da=($_GET["name"]?$_GET["name"]:$_GET["call"]);page_header(lang(190).": ".h($da),$n);$Rg=routine($_GET["call"],(isset($_GET["callf"])?"FUNCTION":"PROCEDURE"));$Gd=array();$Gf=array();foreach($Rg["fields"]as$s=>$o){if(substr($o["inout"],-3)=="OUT")$Gf[$s]="@".idf_escape($o["field"])." AS ".idf_escape($o["field"]);if(!$o["inout"]||substr($o["inout"],0,2)=="IN")$Gd[]=$s;}if(!$n&&$_POST){$ab=array();foreach($Rg["fields"]as$y=>$o){if(in_array($y,$Gd)){$X=process_input($o);if($X===false)$X="''";if(isset($Gf[$y]))$g->query("SET @".idf_escape($o["field"])." = $X");}$ab[]=(isset($Gf[$y])?"@".idf_escape($o["field"]):$X);}$G=(isset($_GET["callf"])?"SELECT":"CALL")." ".table($da)."(".implode(", ",$ab).")";$_h=microtime(true);$H=$g->multi_query($G);$_a=$g->affected_rows;echo$b->selectQuery($G,$_h,!$H);if(!$H)echo"<p class='error'>".error()."\n";else{$h=connect();if(is_object($h))$h->select_db(DB);do{$H=$g->store_result();if(is_object($H))select($H,$h);else
echo"<p class='message'>".lang(191,$_a)."\n";}while($g->next_result());if($Gf)select($g->query("SELECT ".implode(", ",$Gf)));}}echo'
<form action="" method="post">
';if($Gd){echo"<table cellspacing='0'>\n";foreach($Gd
as$y){$o=$Rg["fields"][$y];$C=$o["field"];echo"<tr><th>".$b->fieldName($o);$Y=$_POST["fields"][$C];if($Y!=""){if($o["type"]=="enum")$Y=+$Y;if($o["type"]=="set")$Y=array_sum($Y);}input($o,$Y,(string)$_POST["function"][$C]);echo"\n";}echo"</table>\n";}echo'<p>
<input type="submit" value="',lang(190),'">
<input type="hidden" name="token" value="',$ki,'">
</form>
';}elseif(isset($_GET["foreign"])){$a=$_GET["foreign"];$C=$_GET["name"];$J=$_POST;if($_POST&&!$n&&!$_POST["add"]&&!$_POST["change"]&&!$_POST["change-js"]){$Ke=($_POST["drop"]?lang(192):($C!=""?lang(193):lang(194)));$A=ME."table=".urlencode($a);if(!$_POST["drop"]){$J["source"]=array_filter($J["source"],'strlen');ksort($J["source"]);$Th=array();foreach($J["source"]as$y=>$X)$Th[$y]=$J["target"][$y];$J["target"]=$Th;}if($x=="sqlite")queries_redirect($A,$Ke,recreate_table($a,$a,array(),array(),array(" $C"=>($_POST["drop"]?"":" ".format_foreign_key($J)))));else{$c="ALTER TABLE ".table($a);$gc="\nDROP ".($x=="sql"?"FOREIGN KEY ":"CONSTRAINT ").idf_escape($C);if($_POST["drop"])query_redirect($c.$gc,$A,$Ke);else{query_redirect($c.($C!=""?"$gc,":"")."\nADD".format_foreign_key($J),$A,$Ke);$n=lang(195)."<br>$n";}}}page_header(lang(196),$n,array("table"=>$a),h($a));if($_POST){ksort($J["source"]);if($_POST["add"])$J["source"][]="";elseif($_POST["change"]||$_POST["change-js"])$J["target"]=array();}elseif($C!=""){$fd=foreign_keys($a);$J=$fd[$C];$J["source"][]="";}else{$J["table"]=$a;$J["source"]=array("");}$sh=array_keys(fields($a));$Th=($a===$J["table"]?$sh:array_keys(fields($J["table"])));$Ag=array_keys(array_filter(table_status('',true),'fk_support'));echo'
<form action="" method="post">
<p>
';if($J["db"]==""&&$J["ns"]==""){echo
lang(197),':
',html_select("table",$Ag,$J["table"],"this.form['change-js'].value = '1'; this.form.submit();"),'<input type="hidden" name="change-js" value="">
<noscript><p><input type="submit" name="change" value="',lang(198),'"></noscript>
<table cellspacing="0">
<thead><tr><th id="label-source">',lang(133),'<th id="label-target">',lang(134),'</thead>
';$be=0;foreach($J["source"]as$y=>$X){echo"<tr>","<td>".html_select("source[".(+$y)."]",array(-1=>"")+$sh,$X,($be==count($J["source"])-1?"foreignAddRow.call(this);":1),"label-source"),"<td>".html_select("target[".(+$y)."]",$Th,$J["target"][$y],1,"label-target");$be++;}echo'</table>
<p>
',lang(102),': ',html_select("on_delete",array(-1=>"")+explode("|",$nf),$J["on_delete"]),' ',lang(101),': ',html_select("on_update",array(-1=>"")+explode("|",$nf),$J["on_update"]),doc_link(array('sql'=>"innodb-foreign-key-constraints.html",'mariadb'=>"foreign-keys/",'pgsql'=>"sql-createtable.html#SQL-CREATETABLE-REFERENCES",'mssql'=>"ms174979.aspx",'oracle'=>"clauses002.htm#sthref2903",)),'<p>
<input type="submit" value="',lang(14),'">
<noscript><p><input type="submit" name="add" value="',lang(199),'"></noscript>
';}if($C!=""){echo'<input type="submit" name="drop" value="',lang(126),'">',confirm(lang(174,$C));}echo'<input type="hidden" name="token" value="',$ki,'">
</form>
';}elseif(isset($_GET["view"])){$a=$_GET["view"];$J=$_POST;$Df="VIEW";if($x=="pgsql"&&$a!=""){$P=table_status($a);$Df=strtoupper($P["Engine"]);}if($_POST&&!$n){$C=trim($J["name"]);$Ha=" AS\n$J[select]";$A=ME."table=".urlencode($C);$Ke=lang(200);$U=($_POST["materialized"]?"MATERIALIZED VIEW":"VIEW");if(!$_POST["drop"]&&$a==$C&&$x!="sqlite"&&$U=="VIEW"&&$Df=="VIEW")query_redirect(($x=="mssql"?"ALTER":"CREATE OR REPLACE")." VIEW ".table($C).$Ha,$A,$Ke);else{$Vh=$C."_adminer_".uniqid();drop_create("DROP $Df ".table($a),"CREATE $U ".table($C).$Ha,"DROP $U ".table($C),"CREATE $U ".table($Vh).$Ha,"DROP $U ".table($Vh),($_POST["drop"]?substr(ME,0,-1):$A),lang(201),$Ke,lang(202),$a,$C);}}if(!$_POST&&$a!=""){$J=view($a);$J["name"]=$a;$J["materialized"]=($Df!="VIEW");if(!$n)$n=error();}page_header(($a!=""?lang(44):lang(203)),$n,array("table"=>$a),h($a));echo'
<form action="" method="post">
<p>',lang(182),': <input name="name" value="',h($J["name"]),'" maxlength="64" autocapitalize="off">
',(support("materializedview")?" ".checkbox("materialized",1,$J["materialized"],lang(128)):""),'<p>';textarea("select",$J["select"]);echo'<p>
<input type="submit" value="',lang(14),'">
';if($a!=""){echo'<input type="submit" name="drop" value="',lang(126),'">',confirm(lang(174,$a));}echo'<input type="hidden" name="token" value="',$ki,'">
</form>
';}elseif(isset($_GET["event"])){$aa=$_GET["event"];$Td=array("YEAR","QUARTER","MONTH","DAY","HOUR","MINUTE","WEEK","SECOND","YEAR_MONTH","DAY_HOUR","DAY_MINUTE","DAY_SECOND","HOUR_MINUTE","HOUR_SECOND","MINUTE_SECOND");$Bh=array("ENABLED"=>"ENABLE","DISABLED"=>"DISABLE","SLAVESIDE_DISABLED"=>"DISABLE ON SLAVE");$J=$_POST;if($_POST&&!$n){if($_POST["drop"])query_redirect("DROP EVENT ".idf_escape($aa),substr(ME,0,-1),lang(204));elseif(in_array($J["INTERVAL_FIELD"],$Td)&&isset($Bh[$J["STATUS"]])){$Wg="\nON SCHEDULE ".($J["INTERVAL_VALUE"]?"EVERY ".q($J["INTERVAL_VALUE"])." $J[INTERVAL_FIELD]".($J["STARTS"]?" STARTS ".q($J["STARTS"]):"").($J["ENDS"]?" ENDS ".q($J["ENDS"]):""):"AT ".q($J["STARTS"]))." ON COMPLETION".($J["ON_COMPLETION"]?"":" NOT")." PRESERVE";queries_redirect(substr(ME,0,-1),($aa!=""?lang(205):lang(206)),queries(($aa!=""?"ALTER EVENT ".idf_escape($aa).$Wg.($aa!=$J["EVENT_NAME"]?"\nRENAME TO ".idf_escape($J["EVENT_NAME"]):""):"CREATE EVENT ".idf_escape($J["EVENT_NAME"]).$Wg)."\n".$Bh[$J["STATUS"]]." COMMENT ".q($J["EVENT_COMMENT"]).rtrim(" DO\n$J[EVENT_DEFINITION]",";").";"));}}page_header(($aa!=""?lang(207).": ".h($aa):lang(208)),$n);if(!$J&&$aa!=""){$K=get_rows("SELECT * FROM information_schema.EVENTS WHERE EVENT_SCHEMA = ".q(DB)." AND EVENT_NAME = ".q($aa));$J=reset($K);}echo'
<form action="" method="post">
<table cellspacing="0">
<tr><th>',lang(182),'<td><input name="EVENT_NAME" value="',h($J["EVENT_NAME"]),'" maxlength="64" autocapitalize="off">
<tr><th title="datetime">',lang(209),'<td><input name="STARTS" value="',h("$J[EXECUTE_AT]$J[STARTS]"),'">
<tr><th title="datetime">',lang(210),'<td><input name="ENDS" value="',h($J["ENDS"]),'">
<tr><th>',lang(211),'<td><input type="number" name="INTERVAL_VALUE" value="',h($J["INTERVAL_VALUE"]),'" class="size"> ',html_select("INTERVAL_FIELD",$Td,$J["INTERVAL_FIELD"]),'<tr><th>',lang(117),'<td>',html_select("STATUS",$Bh,$J["STATUS"]),'<tr><th>',lang(51),'<td><input name="EVENT_COMMENT" value="',h($J["EVENT_COMMENT"]),'" maxlength="64">
<tr><th><td>',checkbox("ON_COMPLETION","PRESERVE",$J["ON_COMPLETION"]=="PRESERVE",lang(212)),'</table>
<p>';textarea("EVENT_DEFINITION",$J["EVENT_DEFINITION"]);echo'<p>
<input type="submit" value="',lang(14),'">
';if($aa!=""){echo'<input type="submit" name="drop" value="',lang(126),'">',confirm(lang(174,$aa));}echo'<input type="hidden" name="token" value="',$ki,'">
</form>
';}elseif(isset($_GET["procedure"])){$da=($_GET["name"]?$_GET["name"]:$_GET["procedure"]);$Rg=(isset($_GET["function"])?"FUNCTION":"PROCEDURE");$J=$_POST;$J["fields"]=(array)$J["fields"];if($_POST&&!process_fields($J["fields"])&&!$n){$Af=routine($_GET["procedure"],$Rg);$Vh="$J[name]_adminer_".uniqid();drop_create("DROP $Rg ".routine_id($da,$Af),create_routine($Rg,$J),"DROP $Rg ".routine_id($J["name"],$J),create_routine($Rg,array("name"=>$Vh)+$J),"DROP $Rg ".routine_id($Vh,$J),substr(ME,0,-1),lang(213),lang(214),lang(215),$da,$J["name"]);}page_header(($da!=""?(isset($_GET["function"])?lang(216):lang(217)).": ".h($da):(isset($_GET["function"])?lang(218):lang(219))),$n);if(!$_POST&&$da!=""){$J=routine($_GET["procedure"],$Rg);$J["name"]=$da;}$qb=get_vals("SHOW CHARACTER SET");sort($qb);$Sg=routine_languages();echo'
<form action="" method="post" id="form">
<p>',lang(182),': <input name="name" value="',h($J["name"]),'" maxlength="64" autocapitalize="off">
',($Sg?lang(19).": ".html_select("language",$Sg,$J["language"])."\n":""),'<input type="submit" value="',lang(14),'">
<table cellspacing="0" class="nowrap">
';edit_fields($J["fields"],$qb,$Rg);if(isset($_GET["function"])){echo"<tr><td>".lang(220);edit_type("returns",$J["returns"],$qb,array(),($x=="pgsql"?array("void","trigger"):array()));}echo'</table>
<p>';textarea("definition",$J["definition"]);echo'<p>
<input type="submit" value="',lang(14),'">
';if($da!=""){echo'<input type="submit" name="drop" value="',lang(126),'">',confirm(lang(174,$da));}echo'<input type="hidden" name="token" value="',$ki,'">
</form>
';}elseif(isset($_GET["sequence"])){$fa=$_GET["sequence"];$J=$_POST;if($_POST&&!$n){$_=substr(ME,0,-1);$C=trim($J["name"]);if($_POST["drop"])query_redirect("DROP SEQUENCE ".idf_escape($fa),$_,lang(221));elseif($fa=="")query_redirect("CREATE SEQUENCE ".idf_escape($C),$_,lang(222));elseif($fa!=$C)query_redirect("ALTER SEQUENCE ".idf_escape($fa)." RENAME TO ".idf_escape($C),$_,lang(223));else
redirect($_);}page_header($fa!=""?lang(224).": ".h($fa):lang(225),$n);if(!$J)$J["name"]=$fa;echo'
<form action="" method="post">
<p><input name="name" value="',h($J["name"]),'" autocapitalize="off">
<input type="submit" value="',lang(14),'">
';if($fa!="")echo"<input type='submit' name='drop' value='".lang(126)."'>".confirm(lang(174,$fa))."\n";echo'<input type="hidden" name="token" value="',$ki,'">
</form>
';}elseif(isset($_GET["type"])){$ga=$_GET["type"];$J=$_POST;if($_POST&&!$n){$_=substr(ME,0,-1);if($_POST["drop"])query_redirect("DROP TYPE ".idf_escape($ga),$_,lang(226));else
query_redirect("CREATE TYPE ".idf_escape(trim($J["name"]))." $J[as]",$_,lang(227));}page_header($ga!=""?lang(228).": ".h($ga):lang(229),$n);if(!$J)$J["as"]="AS ";echo'
<form action="" method="post">
<p>
';if($ga!="")echo"<input type='submit' name='drop' value='".lang(126)."'>".confirm(lang(174,$ga))."\n";else{echo"<input name='name' value='".h($J['name'])."' autocapitalize='off'>\n";textarea("as",$J["as"]);echo"<p><input type='submit' value='".lang(14)."'>\n";}echo'<input type="hidden" name="token" value="',$ki,'">
</form>
';}elseif(isset($_GET["trigger"])){$a=$_GET["trigger"];$C=$_GET["name"];$vi=trigger_options();$J=(array)trigger($C)+array("Trigger"=>$a."_bi");if($_POST){if(!$n&&in_array($_POST["Timing"],$vi["Timing"])&&in_array($_POST["Event"],$vi["Event"])&&in_array($_POST["Type"],$vi["Type"])){$mf=" ON ".table($a);$gc="DROP TRIGGER ".idf_escape($C).($x=="pgsql"?$mf:"");$A=ME."table=".urlencode($a);if($_POST["drop"])query_redirect($gc,$A,lang(230));else{if($C!="")queries($gc);queries_redirect($A,($C!=""?lang(231):lang(232)),queries(create_trigger($mf,$_POST)));if($C!="")queries(create_trigger($mf,$J+array("Type"=>reset($vi["Type"]))));}}$J=$_POST;}page_header(($C!=""?lang(233).": ".h($C):lang(234)),$n,array("table"=>$a));echo'
<form action="" method="post" id="form">
<table cellspacing="0">
<tr><th>',lang(235),'<td>',html_select("Timing",$vi["Timing"],$J["Timing"],"triggerChange(/^".preg_quote($a,"/")."_[ba][iud]$/, '".js_escape($a)."', this.form);"),'<tr><th>',lang(236),'<td>',html_select("Event",$vi["Event"],$J["Event"],"this.form['Timing'].onchange();"),(in_array("UPDATE OF",$vi["Event"])?" <input name='Of' value='".h($J["Of"])."' class='hidden'>":""),'<tr><th>',lang(50),'<td>',html_select("Type",$vi["Type"],$J["Type"]),'</table>
<p>',lang(182),': <input name="Trigger" value="',h($J["Trigger"]),'" maxlength="64" autocapitalize="off">
',script("qs('#form')['Timing'].onchange();"),'<p>';textarea("Statement",$J["Statement"]);echo'<p>
<input type="submit" value="',lang(14),'">
';if($C!=""){echo'<input type="submit" name="drop" value="',lang(126),'">',confirm(lang(174,$C));}echo'<input type="hidden" name="token" value="',$ki,'">
</form>
';}elseif(isset($_GET["user"])){$ha=$_GET["user"];$mg=array(""=>array("All privileges"=>""));foreach(get_rows("SHOW PRIVILEGES")as$J){foreach(explode(",",($J["Privilege"]=="Grant option"?"":$J["Context"]))as$Bb)$mg[$Bb][$J["Privilege"]]=$J["Comment"];}$mg["Server Admin"]+=$mg["File access on server"];$mg["Databases"]["Create routine"]=$mg["Procedures"]["Create routine"];unset($mg["Procedures"]["Create routine"]);$mg["Columns"]=array();foreach(array("Select","Insert","Update","References")as$X)$mg["Columns"][$X]=$mg["Tables"][$X];unset($mg["Server Admin"]["Usage"]);foreach($mg["Tables"]as$y=>$X)unset($mg["Databases"][$y]);$Xe=array();if($_POST){foreach($_POST["objects"]as$y=>$X)$Xe[$X]=(array)$Xe[$X]+(array)$_POST["grants"][$y];}$nd=array();$kf="";if(isset($_GET["host"])&&($H=$g->query("SHOW GRANTS FOR ".q($ha)."@".q($_GET["host"])))){while($J=$H->fetch_row()){if(preg_match('~GRANT (.*) ON (.*) TO ~',$J[0],$B)&&preg_match_all('~ *([^(,]*[^ ,(])( *\([^)]+\))?~',$B[1],$Ce,PREG_SET_ORDER)){foreach($Ce
as$X){if($X[1]!="USAGE")$nd["$B[2]$X[2]"][$X[1]]=true;if(preg_match('~ WITH GRANT OPTION~',$J[0]))$nd["$B[2]$X[2]"]["GRANT OPTION"]=true;}}if(preg_match("~ IDENTIFIED BY PASSWORD '([^']+)~",$J[0],$B))$kf=$B[1];}}if($_POST&&!$n){$lf=(isset($_GET["host"])?q($ha)."@".q($_GET["host"]):"''");if($_POST["drop"])query_redirect("DROP USER $lf",ME."privileges=",lang(237));else{$Ze=q($_POST["user"])."@".q($_POST["host"]);$Uf=$_POST["pass"];if($Uf!=''&&!$_POST["hashed"]){$Uf=$g->result("SELECT PASSWORD(".q($Uf).")");$n=!$Uf;}$Gb=false;if(!$n){if($lf!=$Ze){$Gb=queries((min_version(5)?"CREATE USER":"GRANT USAGE ON *.* TO")." $Ze IDENTIFIED BY PASSWORD ".q($Uf));$n=!$Gb;}elseif($Uf!=$kf)queries("SET PASSWORD FOR $Ze = ".q($Uf));}if(!$n){$Og=array();foreach($Xe
as$ff=>$md){if(isset($_GET["grant"]))$md=array_filter($md);$md=array_keys($md);if(isset($_GET["grant"]))$Og=array_diff(array_keys(array_filter($Xe[$ff],'strlen')),$md);elseif($lf==$Ze){$if=array_keys((array)$nd[$ff]);$Og=array_diff($if,$md);$md=array_diff($md,$if);unset($nd[$ff]);}if(preg_match('~^(.+)\s*(\(.*\))?$~U',$ff,$B)&&(!grant("REVOKE",$Og,$B[2]," ON $B[1] FROM $Ze")||!grant("GRANT",$md,$B[2]," ON $B[1] TO $Ze"))){$n=true;break;}}}if(!$n&&isset($_GET["host"])){if($lf!=$Ze)queries("DROP USER $lf");elseif(!isset($_GET["grant"])){foreach($nd
as$ff=>$Og){if(preg_match('~^(.+)(\(.*\))?$~U',$ff,$B))grant("REVOKE",array_keys($Og),$B[2]," ON $B[1] FROM $Ze");}}}queries_redirect(ME."privileges=",(isset($_GET["host"])?lang(238):lang(239)),!$n);if($Gb)$g->query("DROP USER $Ze");}}page_header((isset($_GET["host"])?lang(36).": ".h("$ha@$_GET[host]"):lang(145)),$n,array("privileges"=>array('',lang(72))));if($_POST){$J=$_POST;$nd=$Xe;}else{$J=$_GET+array("host"=>$g->result("SELECT SUBSTRING_INDEX(CURRENT_USER, '@', -1)"));$J["pass"]=$kf;if($kf!="")$J["hashed"]=true;$nd[(DB==""||$nd?"":idf_escape(addcslashes(DB,"%_\\"))).".*"]=array();}echo'<form action="" method="post">
<table cellspacing="0">
<tr><th>',lang(35),'<td><input name="host" maxlength="60" value="',h($J["host"]),'" autocapitalize="off">
<tr><th>',lang(36),'<td><input name="user" maxlength="16" value="',h($J["user"]),'" autocapitalize="off">
<tr><th>',lang(37),'<td><input name="pass" id="pass" value="',h($J["pass"]),'" autocomplete="new-password">
';if(!$J["hashed"])echo
script("typePassword(qs('#pass'));");echo
checkbox("hashed",1,$J["hashed"],lang(240),"typePassword(this.form['pass'], this.checked);"),'</table>

';echo"<table cellspacing='0'>\n","<thead><tr><th colspan='2'>".lang(72).doc_link(array('sql'=>"grant.html#priv_level"));$s=0;foreach($nd
as$ff=>$md){echo'<th>'.($ff!="*.*"?"<input name='objects[$s]' value='".h($ff)."' size='10' autocapitalize='off'>":"<input type='hidden' name='objects[$s]' value='*.*' size='10'>*.*");$s++;}echo"</thead>\n";foreach(array(""=>"","Server Admin"=>lang(35),"Databases"=>lang(38),"Tables"=>lang(130),"Columns"=>lang(49),"Procedures"=>lang(241),)as$Bb=>$Xb){foreach((array)$mg[$Bb]as$lg=>$vb){echo"<tr".odd()."><td".($Xb?">$Xb<td":" colspan='2'").' lang="en" title="'.h($vb).'">'.h($lg);$s=0;foreach($nd
as$ff=>$md){$C="'grants[$s][".h(strtoupper($lg))."]'";$Y=$md[strtoupper($lg)];if($Bb=="Server Admin"&&$ff!=(isset($nd["*.*"])?"*.*":".*"))echo"<td>";elseif(isset($_GET["grant"]))echo"<td><select name=$C><option><option value='1'".($Y?" selected":"").">".lang(242)."<option value='0'".($Y=="0"?" selected":"").">".lang(243)."</select>";else{echo"<td align='center'><label class='block'>","<input type='checkbox' name=$C value='1'".($Y?" checked":"").($lg=="All privileges"?" id='grants-$s-all'>":">".($lg=="Grant option"?"":script("qsl('input').onclick = function () { if (this.checked) formUncheck('grants-$s-all'); };"))),"</label>";}$s++;}}}echo"</table>\n",'<p>
<input type="submit" value="',lang(14),'">
';if(isset($_GET["host"])){echo'<input type="submit" name="drop" value="',lang(126),'">',confirm(lang(174,"$ha@$_GET[host]"));}echo'<input type="hidden" name="token" value="',$ki,'">
</form>
';}elseif(isset($_GET["processlist"])){if(support("kill")&&$_POST&&!$n){$ie=0;foreach((array)$_POST["kill"]as$X){if(kill_process($X))$ie++;}queries_redirect(ME."processlist=",lang(244,$ie),$ie||!$_POST["kill"]);}page_header(lang(115),$n);echo'
<form action="" method="post">
<table cellspacing="0" class="nowrap checkable">
',script("mixin(qsl('table'), {onclick: tableClick, ondblclick: partialArg(tableClick, true)});");$s=-1;foreach(process_list()as$s=>$J){if(!$s){echo"<thead><tr lang='en'>".(support("kill")?"<th>":"");foreach($J
as$y=>$X)echo"<th>$y".doc_link(array('sql'=>"show-processlist.html#processlist_".strtolower($y),'pgsql'=>"monitoring-stats.html#PG-STAT-ACTIVITY-VIEW",'oracle'=>"../b14237/dynviews_2088.htm",));echo"</thead>\n";}echo"<tr".odd().">".(support("kill")?"<td>".checkbox("kill[]",$J[$x=="sql"?"Id":"pid"],0):"");foreach($J
as$y=>$X)echo"<td>".(($x=="sql"&&$y=="Info"&&preg_match("~Query|Killed~",$J["Command"])&&$X!="")||($x=="pgsql"&&$y=="current_query"&&$X!="<IDLE>")||($x=="oracle"&&$y=="sql_text"&&$X!="")?"<code class='jush-$x'>".shorten_utf8($X,100,"</code>").' <a href="'.h(ME.($J["db"]!=""?"db=".urlencode($J["db"])."&":"")."sql=".urlencode($X)).'">'.lang(245).'</a>':h($X));echo"\n";}echo'</table>
<p>
';if(support("kill")){echo($s+1)."/".lang(246,max_connections()),"<p><input type='submit' value='".lang(247)."'>\n";}echo'<input type="hidden" name="token" value="',$ki,'">
</form>
',script("tableCheck();");}elseif(isset($_GET["select"])){$a=$_GET["select"];$S=table_status1($a);$w=indexes($a);$p=fields($a);$fd=column_foreign_keys($a);$hf=$S["Oid"];parse_str($_COOKIE["adminer_import"],$za);$Pg=array();$e=array();$Zh=null;foreach($p
as$y=>$o){$C=$b->fieldName($o);if(isset($o["privileges"]["select"])&&$C!=""){$e[$y]=html_entity_decode(strip_tags($C),ENT_QUOTES);if(is_shortable($o))$Zh=$b->selectLengthProcess();}$Pg+=$o["privileges"];}list($L,$od)=$b->selectColumnsProcess($e,$w);$Xd=count($od)<count($L);$Z=$b->selectSearchProcess($p,$w);$xf=$b->selectOrderProcess($p,$w);$z=$b->selectLimitProcess();if($_GET["val"]&&is_ajax()){header("Content-Type: text/plain; charset=utf-8");foreach($_GET["val"]as$Ci=>$J){$Ha=convert_field($p[key($J)]);$L=array($Ha?$Ha:idf_escape(key($J)));$Z[]=where_check($Ci,$p);$I=$m->select($a,$L,$Z,$L);if($I)echo
reset($I->fetch_row());}exit;}$hg=$Ei=null;foreach($w
as$v){if($v["type"]=="PRIMARY"){$hg=array_flip($v["columns"]);$Ei=($L?$hg:array());foreach($Ei
as$y=>$X){if(in_array(idf_escape($y),$L))unset($Ei[$y]);}break;}}if($hf&&!$hg){$hg=$Ei=array($hf=>0);$w[]=array("type"=>"PRIMARY","columns"=>array($hf));}if($_POST&&!$n){$fj=$Z;if(!$_POST["all"]&&is_array($_POST["check"])){$gb=array();foreach($_POST["check"]as$db)$gb[]=where_check($db,$p);$fj[]="((".implode(") OR (",$gb)."))";}$fj=($fj?"\nWHERE ".implode(" AND ",$fj):"");if($_POST["export"]){cookie("adminer_import","output=".urlencode($_POST["output"])."&format=".urlencode($_POST["format"]));dump_headers($a);$b->dumpTable($a,"");$kd=($L?implode(", ",$L):"*").convert_fields($e,$p,$L)."\nFROM ".table($a);$qd=($od&&$Xd?"\nGROUP BY ".implode(", ",$od):"").($xf?"\nORDER BY ".implode(", ",$xf):"");if(!is_array($_POST["check"])||$hg)$G="SELECT $kd$fj$qd";else{$Ai=array();foreach($_POST["check"]as$X)$Ai[]="(SELECT".limit($kd,"\nWHERE ".($Z?implode(" AND ",$Z)." AND ":"").where_check($X,$p).$qd,1).")";$G=implode(" UNION ALL ",$Ai);}$b->dumpData($a,"table",$G);exit;}if(!$b->selectEmailProcess($Z,$fd)){if($_POST["save"]||$_POST["delete"]){$H=true;$_a=0;$O=array();if(!$_POST["delete"]){foreach($e
as$C=>$X){$X=process_input($p[$C]);if($X!==null&&($_POST["clone"]||$X!==false))$O[idf_escape($C)]=($X!==false?$X:idf_escape($C));}}if($_POST["delete"]||$O){if($_POST["clone"])$G="INTO ".table($a)." (".implode(", ",array_keys($O)).")\nSELECT ".implode(", ",$O)."\nFROM ".table($a);if($_POST["all"]||($hg&&is_array($_POST["check"]))||$Xd){$H=($_POST["delete"]?$m->delete($a,$fj):($_POST["clone"]?queries("INSERT $G$fj"):$m->update($a,$O,$fj)));$_a=$g->affected_rows;}else{foreach((array)$_POST["check"]as$X){$bj="\nWHERE ".($Z?implode(" AND ",$Z)." AND ":"").where_check($X,$p);$H=($_POST["delete"]?$m->delete($a,$bj,1):($_POST["clone"]?queries("INSERT".limit1($a,$G,$bj)):$m->update($a,$O,$bj,1)));if(!$H)break;$_a+=$g->affected_rows;}}}$Ke=lang(248,$_a);if($_POST["clone"]&&$H&&$_a==1){$oe=last_id();if($oe)$Ke=lang(167," $oe");}queries_redirect(remove_from_uri($_POST["all"]&&$_POST["delete"]?"page":""),$Ke,$H);if(!$_POST["delete"]){edit_form($a,$p,(array)$_POST["fields"],!$_POST["clone"]);page_footer();exit;}}elseif(!$_POST["import"]){if(!$_POST["val"])$n=lang(249);else{$H=true;$_a=0;foreach($_POST["val"]as$Ci=>$J){$O=array();foreach($J
as$y=>$X){$y=bracket_escape($y,1);$O[idf_escape($y)]=(preg_match('~char|text~',$p[$y]["type"])||$X!=""?$b->processInput($p[$y],$X):"NULL");}$H=$m->update($a,$O," WHERE ".($Z?implode(" AND ",$Z)." AND ":"").where_check($Ci,$p),!$Xd&&!$hg," ");if(!$H)break;$_a+=$g->affected_rows;}queries_redirect(remove_from_uri(),lang(248,$_a),$H);}}elseif(!is_string($Uc=get_file("csv_file",true)))$n=upload_error($Uc);elseif(!preg_match('~~u',$Uc))$n=lang(250);else{cookie("adminer_import","output=".urlencode($za["output"])."&format=".urlencode($_POST["separator"]));$H=true;$sb=array_keys($p);preg_match_all('~(?>"[^"]*"|[^"\r\n]+)+~',$Uc,$Ce);$_a=count($Ce[0]);$m->begin();$M=($_POST["separator"]=="csv"?",":($_POST["separator"]=="tsv"?"\t":";"));$K=array();foreach($Ce[0]as$y=>$X){preg_match_all("~((?>\"[^\"]*\")+|[^$M]*)$M~",$X.$M,$De);if(!$y&&!array_diff($De[1],$sb)){$sb=$De[1];$_a--;}else{$O=array();foreach($De[1]as$s=>$nb)$O[idf_escape($sb[$s])]=($nb==""&&$p[$sb[$s]]["null"]?"NULL":q(str_replace('""','"',preg_replace('~^"|"$~','',$nb))));$K[]=$O;}}$H=(!$K||$m->insertUpdate($a,$K,$hg));if($H)$H=$m->commit();queries_redirect(remove_from_uri("page"),lang(251,$_a),$H);$m->rollback();}}}$Lh=$b->tableName($S);if(is_ajax()){page_headers();ob_start();}else
page_header(lang(54).": $Lh",$n);$O=null;if(isset($Pg["insert"])||!support("table")){$O="";foreach((array)$_GET["where"]as$X){if($fd[$X["col"]]&&count($fd[$X["col"]])==1&&($X["op"]=="="||(!$X["op"]&&!preg_match('~[_%]~',$X["val"]))))$O.="&set".urlencode("[".bracket_escape($X["col"])."]")."=".urlencode($X["val"]);}}$b->selectLinks($S,$O);if(!$e&&support("table"))echo"<p class='error'>".lang(252).($p?".":": ".error())."\n";else{echo"<form action='' id='form'>\n","<div style='display: none;'>";hidden_fields_get();echo(DB!=""?'<input type="hidden" name="db" value="'.h(DB).'">'.(isset($_GET["ns"])?'<input type="hidden" name="ns" value="'.h($_GET["ns"]).'">':""):"");echo'<input type="hidden" name="select" value="'.h($a).'">',"</div>\n";$b->selectColumnsPrint($L,$e);$b->selectSearchPrint($Z,$e,$w);$b->selectOrderPrint($xf,$e,$w);$b->selectLimitPrint($z);$b->selectLengthPrint($Zh);$b->selectActionPrint($w);echo"</form>\n";$E=$_GET["page"];if($E=="last"){$id=$g->result(count_rows($a,$Z,$Xd,$od));$E=floor(max(0,$id-1)/$z);}$bh=$L;$pd=$od;if(!$bh){$bh[]="*";$Cb=convert_fields($e,$p,$L);if($Cb)$bh[]=substr($Cb,2);}foreach($L
as$y=>$X){$o=$p[idf_unescape($X)];if($o&&($Ha=convert_field($o)))$bh[$y]="$Ha AS $X";}if(!$Xd&&$Ei){foreach($Ei
as$y=>$X){$bh[]=idf_escape($y);if($pd)$pd[]=idf_escape($y);}}$H=$m->select($a,$bh,$Z,$pd,$xf,$z,$E,true);if(!$H)echo"<p class='error'>".error()."\n";else{if($x=="mssql"&&$E)$H->seek($z*$E);$tc=array();echo"<form action='' method='post' enctype='multipart/form-data'>\n";$K=array();while($J=$H->fetch_assoc()){if($E&&$x=="oracle")unset($J["RNUM"]);$K[]=$J;}if($_GET["page"]!="last"&&$z!=""&&$od&&$Xd&&$x=="sql")$id=$g->result(" SELECT FOUND_ROWS()");if(!$K)echo"<p class='message'>".lang(12)."\n";else{$Qa=$b->backwardKeys($a,$Lh);echo"<table id='table' cellspacing='0' class='nowrap checkable'>",script("mixin(qs('#table'), {onclick: tableClick, ondblclick: partialArg(tableClick, true), onkeydown: editingKeydown});"),"<thead><tr>".(!$od&&$L?"":"<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(253)."</a>");$We=array();$ld=array();reset($L);$wg=1;foreach($K[0]as$y=>$X){if(!isset($Ei[$y])){$X=$_GET["columns"][key($L)];$o=$p[$L?($X?$X["col"]:current($L)):$y];$C=($o?$b->fieldName($o,$wg):($X["fun"]?"*":$y));if($C!=""){$wg++;$We[$y]=$C;$d=idf_escape($y);$Cd=remove_from_uri('(order|desc)[^=]*|page').'&order%5B0%5D='.urlencode($y);$Xb="&desc%5B0%5D=1";echo"<th>".script("mixin(qsl('th'), {onmouseover: partial(columnMouse), onmouseout: partial(columnMouse, ' hidden')});",""),'<a href="'.h($Cd.($xf[0]==$d||$xf[0]==$y||(!$xf&&$Xd&&$od[0]==$d)?$Xb:'')).'">';echo
apply_sql_function($X["fun"],$C)."</a>";echo"<span class='column hidden'>","<a href='".h($Cd.$Xb)."' title='".lang(60)."' class='text'> 鈫掽/a>";if(!$X["fun"]){echo'<a href="#fieldset-search" title="'.lang(57).'" class="text jsonly"> =</a>',script("qsl('a').onclick = partial(selectSearch, '".js_escape($y)."');");}echo"</span>";}$ld[$y]=$X["fun"];next($L);}}$ue=array();if($_GET["modify"]){foreach($K
as$J){foreach($J
as$y=>$X)$ue[$y]=max($ue[$y],min(40,strlen(utf8_decode($X))));}}echo($Qa?"<th>".lang(254):"")."</thead>\n";if(is_ajax()){if($z%2==1&&$E%2==1)odd();ob_end_clean();}foreach($b->rowDescriptions($K,$fd)as$Ve=>$J){$Bi=unique_array($K[$Ve],$w);if(!$Bi){$Bi=array();foreach($K[$Ve]as$y=>$X){if(!preg_match('~^(COUNT\((\*|(DISTINCT )?`(?:[^`]|``)+`)\)|(AVG|GROUP_CONCAT|MAX|MIN|SUM)\(`(?:[^`]|``)+`\))$~',$y))$Bi[$y]=$X;}}$Ci="";foreach($Bi
as$y=>$X){if(($x=="sql"||$x=="pgsql")&&preg_match('~char|text|enum|set~',$p[$y]["type"])&&strlen($X)>64){$y=(strpos($y,'(')?$y:idf_escape($y));$y="MD5(".($x!='sql'||preg_match("~^utf8~",$p[$y]["collation"])?$y:"CONVERT($y USING ".charset($g).")").")";$X=md5($X);}$Ci.="&".($X!==null?urlencode("where[".bracket_escape($y)."]")."=".urlencode($X):"null%5B%5D=".urlencode($y));}echo"<tr".odd().">".(!$od&&$L?"":"<td>".checkbox("check[]",substr($Ci,1),in_array(substr($Ci,1),(array)$_POST["check"])).($Xd||information_schema(DB)?"":" <a href='".h(ME."edit=".urlencode($a).$Ci)."' class='edit'>".lang(255)."</a>"));foreach($J
as$y=>$X){if(isset($We[$y])){$o=$p[$y];$X=$m->value($X,$o);if($X!=""&&(!isset($tc[$y])||$tc[$y]!=""))$tc[$y]=(is_mail($X)?$We[$y]:"");$_="";if(preg_match('~blob|bytea|raw|file~',$o["type"])&&$X!="")$_=ME.'download='.urlencode($a).'&field='.urlencode($y).$Ci;if(!$_&&$X!==null){foreach((array)$fd[$y]as$q){if(count($fd[$y])==1||end($q["source"])==$y){$_="";foreach($q["source"]as$s=>$sh)$_.=where_link($s,$q["target"][$s],$K[$Ve][$sh]);$_=($q["db"]!=""?preg_replace('~([?&]db=)[^&]+~','\1'.urlencode($q["db"]),ME):ME).'select='.urlencode($q["table"]).$_;if($q["ns"])$_=preg_replace('~([?&]ns=)[^&]+~','\1'.urlencode($q["ns"]),$_);if(count($q["source"])==1)break;}}}if($y=="COUNT(*)"){$_=ME."select=".urlencode($a);$s=0;foreach((array)$_GET["where"]as$W){if(!array_key_exists($W["col"],$Bi))$_.=where_link($s++,$W["col"],$W["val"],$W["op"]);}foreach($Bi
as$ce=>$W)$_.=where_link($s++,$ce,$W);}$X=select_value($X,$_,$o,$Zh);$t=h("val[$Ci][".bracket_escape($y)."]");$Y=$_POST["val"][$Ci][bracket_escape($y)];$oc=!is_array($J[$y])&&is_utf8($X)&&$K[$Ve][$y]==$J[$y]&&!$ld[$y];$Yh=preg_match('~text|lob~',$o["type"]);if(($_GET["modify"]&&$oc)||$Y!==null){$td=h($Y!==null?$Y:$J[$y]);echo"<td>".($Yh?"<textarea name='$t' cols='30' rows='".(substr_count($J[$y],"\n")+1)."'>$td</textarea>":"<input name='$t' value='$td' size='$ue[$y]'>");}else{$ye=strpos($X,"<i>...</i>");echo"<td id='$t' data-text='".($ye?2:($Yh?1:0))."'".($oc?"":" data-warning='".h(lang(256))."'").">$X</td>";}}}if($Qa)echo"<td>";$b->backwardKeysPrint($Qa,$K[$Ve]);echo"</tr>\n";}if(is_ajax())exit;echo"</table>\n";}if(!is_ajax()){if($K||$E){$Cc=true;if($_GET["page"]!="last"){if($z==""||(count($K)<$z&&($K||!$E)))$id=($E?$E*$z:0)+count($K);elseif($x!="sql"||!$Xd){$id=($Xd?false:found_rows($S,$Z));if($id<max(1e4,2*($E+1)*$z))$id=reset(slow_query(count_rows($a,$Z,$Xd,$od)));else$Cc=false;}}$Jf=($z!=""&&($id===false||$id>$z||$E));if($Jf){echo(($id===false?count($K)+1:$id-$E*$z)>$z?'<p><a href="'.h(remove_from_uri("page")."&page=".($E+1)).'" class="loadmore">'.lang(257).'</a>'.script("qsl('a').onclick = partial(selectLoadMore, ".(+$z).", '".lang(258)."...');",""):''),"\n";}}echo"<div class='footer'><div>\n";if($K||$E){if($Jf){$Fe=($id===false?$E+(count($K)>=$z?2:1):floor(($id-1)/$z));echo"<fieldset>";if($x!="simpledb"){echo"<legend><a href='".h(remove_from_uri("page"))."'>".lang(259)."</a></legend>",script("qsl('a').onclick = function () { pageClick(this.href, +prompt('".lang(259)."', '".($E+1)."')); return false; };"),pagination(0,$E).($E>5?" ...":"");for($s=max(1,$E-4);$s<min($Fe,$E+5);$s++)echo
pagination($s,$E);if($Fe>0){echo($E+5<$Fe?" ...":""),($Cc&&$id!==false?pagination($Fe,$E):" <a href='".h(remove_from_uri("page")."&page=last")."' title='~$Fe'>".lang(260)."</a>");}}else{echo"<legend>".lang(259)."</legend>",pagination(0,$E).($E>1?" ...":""),($E?pagination($E,$E):""),($Fe>$E?pagination($E+1,$E).($Fe>$E+1?" ...":""):"");}echo"</fieldset>\n";}echo"<fieldset>","<legend>".lang(261)."</legend>";$cc=($Cc?"":"~ ").$id;echo
checkbox("all",1,0,($id!==false?($Cc?"":"~ ").lang(149,$id):""),"var checked = formChecked(this, /check/); selectCount('selected', this.checked ? '$cc' : checked); selectCount('selected2', this.checked || !checked ? '$cc' : checked);")."\n","</fieldset>\n";if($b->selectCommandPrint()){echo'<fieldset',($_GET["modify"]?'':' class="jsonly"'),'><legend>',lang(253),'</legend><div>
<input type="submit" value="',lang(14),'"',($_GET["modify"]?'':' title="'.lang(249).'"'),'>
</div></fieldset>
<fieldset><legend>',lang(125),' <span id="selected"></span></legend><div>
<input type="submit" name="edit" value="',lang(10),'">
<input type="submit" name="clone" value="',lang(245),'">
<input type="submit" name="delete" value="',lang(18),'">',confirm(),'</div></fieldset>
';}$gd=$b->dumpFormat();foreach((array)$_GET["columns"]as$d){if($d["fun"]){unset($gd['sql']);break;}}if($gd){print_fieldset("export",lang(74)." <span id='selected2'></span>");$Hf=$b->dumpOutput();echo($Hf?html_select("output",$Hf,$za["output"])." ":""),html_select("format",$gd,$za["format"])," <input type='submit' name='export' value='".lang(74)."'>\n","</div></fieldset>\n";}$b->selectEmailPrint(array_filter($tc,'strlen'),$e);}echo"</div></div>\n";if($b->selectImportPrint()){echo"<div>","<a href='#import'>".lang(73)."</a>",script("qsl('a').onclick = partial(toggle, 'import');",""),"<span id='import' class='hidden'>: ","<input type='file' name='csv_file'> ",html_select("separator",array("csv"=>"CSV,","csv;"=>"CSV;","tsv"=>"TSV"),$za["format"],1);echo" <input type='submit' name='import' value='".lang(73)."'>","</span>","</div>";}echo"<input type='hidden' name='token' value='$ki'>\n","</form>\n",(!$od&&$L?"":script("tableCheck();"));}}}if(is_ajax()){ob_end_clean();exit;}}elseif(isset($_GET["variables"])){$P=isset($_GET["status"]);page_header($P?lang(117):lang(116));$Si=($P?show_status():show_variables());if(!$Si)echo"<p class='message'>".lang(12)."\n";else{echo"<table cellspacing='0'>\n";foreach($Si
as$y=>$X){echo"<tr>","<th><code class='jush-".$x.($P?"status":"set")."'>".h($y)."</code>","<td>".h($X);}echo"</table>\n";}}elseif(isset($_GET["script"])){header("Content-Type: text/javascript; charset=utf-8");if($_GET["script"]=="db"){$Ih=array("Data_length"=>0,"Index_length"=>0,"Data_free"=>0);foreach(table_status()as$C=>$S){json_row("Comment-$C",h($S["Comment"]));if(!is_view($S)){foreach(array("Engine","Collation")as$y)json_row("$y-$C",h($S[$y]));foreach($Ih+array("Auto_increment"=>0,"Rows"=>0)as$y=>$X){if($S[$y]!=""){$X=format_number($S[$y]);json_row("$y-$C",($y=="Rows"&&$X&&$S["Engine"]==($vh=="pgsql"?"table":"InnoDB")?"~ $X":$X));if(isset($Ih[$y]))$Ih[$y]+=($S["Engine"]!="InnoDB"||$y!="Data_free"?$S[$y]:0);}elseif(array_key_exists($y,$S))json_row("$y-$C");}}}foreach($Ih
as$y=>$X)json_row("sum-$y",format_number($X));json_row("");}elseif($_GET["script"]=="kill")$g->query("KILL ".number($_POST["kill"]));else{foreach(count_tables($b->databases())as$l=>$X){json_row("tables-$l",$X);json_row("size-$l",db_size($l));}json_row("");}exit;}else{$Rh=array_merge((array)$_POST["tables"],(array)$_POST["views"]);if($Rh&&!$n&&!$_POST["search"]){$H=true;$Ke="";if($x=="sql"&&$_POST["tables"]&&count($_POST["tables"])>1&&($_POST["drop"]||$_POST["truncate"]||$_POST["copy"]))queries("SET foreign_key_checks = 0");if($_POST["truncate"]){if($_POST["tables"])$H=truncate_tables($_POST["tables"]);$Ke=lang(262);}elseif($_POST["move"]){$H=move_tables((array)$_POST["tables"],(array)$_POST["views"],$_POST["target"]);$Ke=lang(263);}elseif($_POST["copy"]){$H=copy_tables((array)$_POST["tables"],(array)$_POST["views"],$_POST["target"]);$Ke=lang(264);}elseif($_POST["drop"]){if($_POST["views"])$H=drop_views($_POST["views"]);if($H&&$_POST["tables"])$H=drop_tables($_POST["tables"]);$Ke=lang(265);}elseif($x!="sql"){$H=($x=="sqlite"?queries("VACUUM"):apply_queries("VACUUM".($_POST["optimize"]?"":" ANALYZE"),$_POST["tables"]));$Ke=lang(266);}elseif(!$_POST["tables"])$Ke=lang(9);elseif($H=queries(($_POST["optimize"]?"OPTIMIZE":($_POST["check"]?"CHECK":($_POST["repair"]?"REPAIR":"ANALYZE")))." TABLE ".implode(", ",array_map('idf_escape',$_POST["tables"])))){while($J=$H->fetch_assoc())$Ke.="<b>".h($J["Table"])."</b>: ".h($J["Msg_text"])."<br>";}queries_redirect(substr(ME,0,-1),$Ke,$H);}page_header(($_GET["ns"]==""?lang(38).": ".h(DB):lang(78).": ".h($_GET["ns"])),$n,true);if($b->homepage()){if($_GET["ns"]!==""){echo"<h3 id='tables-views'>".lang(267)."</h3>\n";$Qh=tables_list();if(!$Qh)echo"<p class='message'>".lang(9)."\n";else{echo"<form action='' method='post'>\n";if(support("table")){echo"<fieldset><legend>".lang(268)." <span id='selected2'></span></legend><div>","<input type='search' name='query' value='".h($_POST["query"])."'>",script("qsl('input').onkeydown = partialArg(bodyKeydown, 'search');","")," <input type='submit' name='search' value='".lang(57)."'>\n","</div></fieldset>\n";if($_POST["search"]&&$_POST["query"]!=""){$_GET["where"][0]["op"]="LIKE %%";search_tables();}}$dc=doc_link(array('sql'=>'show-table-status.html'));echo"<table cellspacing='0' class='nowrap checkable'>\n",script("mixin(qsl('table'), {onclick: tableClick, ondblclick: partialArg(tableClick, true)});"),'<thead><tr class="wrap">','<td><input id="check-all" type="checkbox" class="jsonly">'.script("qs('#check-all').onclick = partial(formCheck, /^(tables|views)\[/);",""),'<th>'.lang(130),'<td>'.lang(269).doc_link(array('sql'=>'storage-engines.html')),'<td>'.lang(121).doc_link(array('sql'=>'charset-charsets.html','mariadb'=>'supported-character-sets-and-collations/')),'<td>'.lang(270).$dc,'<td>'.lang(271).$dc,'<td>'.lang(272).$dc,'<td>'.lang(52).doc_link(array('sql'=>'example-auto-increment.html','mariadb'=>'auto_increment/')),'<td>'.lang(273).$dc,(support("comment")?'<td>'.lang(51).$dc:''),"</thead>\n";$T=0;foreach($Qh
as$C=>$U){$Vi=($U!==null&&!preg_match('~table~i',$U));$t=h("Table-".$C);echo'<tr'.odd().'><td>'.checkbox(($Vi?"views[]":"tables[]"),$C,in_array($C,$Rh,true),"","","",$t),'<th>'.(support("table")||support("indexes")?"<a href='".h(ME)."table=".urlencode($C)."' title='".lang(43)."' id='$t'>".h($C).'</a>':h($C));if($Vi){echo'<td colspan="6"><a href="'.h(ME)."view=".urlencode($C).'" title="'.lang(44).'">'.(preg_match('~materialized~i',$U)?lang(128):lang(129)).'</a>','<td align="right"><a href="'.h(ME)."select=".urlencode($C).'" title="'.lang(42).'">?</a>';}else{foreach(array("Engine"=>array(),"Collation"=>array(),"Data_length"=>array("create",lang(45)),"Index_length"=>array("indexes",lang(132)),"Data_free"=>array("edit",lang(46)),"Auto_increment"=>array("auto_increment=1&create",lang(45)),"Rows"=>array("select",lang(42)),)as$y=>$_){$t=" id='$y-".h($C)."'";echo($_?"<td align='right'>".(support("table")||$y=="Rows"||(support("indexes")&&$y!="Data_length")?"<a href='".h(ME."$_[0]=").urlencode($C)."'$t title='$_[1]'>?</a>":"<span$t>?</span>"):"<td id='$y-".h($C)."'>");}$T++;}echo(support("comment")?"<td id='Comment-".h($C)."'>":"");}echo"<tr><td><th>".lang(246,count($Qh)),"<td>".h($x=="sql"?$g->result("SELECT @@storage_engine"):""),"<td>".h(db_collation(DB,collations()));foreach(array("Data_length","Index_length","Data_free")as$y)echo"<td align='right' id='sum-$y'>";echo"</table>\n";if(!information_schema(DB)){echo"<div class='footer'><div>\n";$Pi="<input type='submit' value='".lang(274)."'> ".on_help("'VACUUM'");$tf="<input type='submit' name='optimize' value='".lang(275)."'> ".on_help($x=="sql"?"'OPTIMIZE TABLE'":"'VACUUM OPTIMIZE'");echo"<fieldset><legend>".lang(125)." <span id='selected'></span></legend><div>".($x=="sqlite"?$Pi:($x=="pgsql"?$Pi.$tf:($x=="sql"?"<input type='submit' value='".lang(276)."'> ".on_help("'ANALYZE TABLE'").$tf."<input type='submit' name='check' value='".lang(277)."'> ".on_help("'CHECK TABLE'")."<input type='submit' name='repair' value='".lang(278)."'> ".on_help("'REPAIR TABLE'"):"")))."<input type='submit' name='truncate' value='".lang(279)."'> ".on_help($x=="sqlite"?"'DELETE'":"'TRUNCATE".($x=="pgsql"?"'":" TABLE'")).confirm()."<input type='submit' name='drop' value='".lang(126)."'>".on_help("'DROP TABLE'").confirm()."\n";$k=(support("scheme")?$b->schemas():$b->databases());if(count($k)!=1&&$x!="sqlite"){$l=(isset($_POST["target"])?$_POST["target"]:(support("scheme")?$_GET["ns"]:DB));echo"<p>".lang(280).": ",($k?html_select("target",$k,$l):'<input name="target" value="'.h($l).'" autocapitalize="off">')," <input type='submit' name='move' value='".lang(281)."'>",(support("copy")?" <input type='submit' name='copy' value='".lang(282)."'>":""),"\n";}echo"<input type='hidden' name='all' value=''>";echo
script("qsl('input').onclick = function () { selectCount('selected', formChecked(this, /^(tables|views)\[/));".(support("table")?" selectCount('selected2', formChecked(this, /^tables\[/) || $T);":"")." }"),"<input type='hidden' name='token' value='$ki'>\n","</div></fieldset>\n","</div></div>\n";}echo"</form>\n",script("tableCheck();");}echo'<p class="links"><a href="'.h(ME).'create=">'.lang(75)."</a>\n",(support("view")?'<a href="'.h(ME).'view=">'.lang(203)."</a>\n":"");if(support("routine")){echo"<h3 id='routines'>".lang(142)."</h3>\n";$Tg=routines();if($Tg){echo"<table cellspacing='0'>\n",'<thead><tr><th>'.lang(182).'<td>'.lang(50).'<td>'.lang(220)."<td></thead>\n";odd('');foreach($Tg
as$J){$C=($J["SPECIFIC_NAME"]==$J["ROUTINE_NAME"]?"":"&name=".urlencode($J["ROUTINE_NAME"]));echo'<tr'.odd().'>','<th><a href="'.h(ME.($J["ROUTINE_TYPE"]!="PROCEDURE"?'callf=':'call=').urlencode($J["SPECIFIC_NAME"]).$C).'">'.h($J["ROUTINE_NAME"]).'</a>','<td>'.h($J["ROUTINE_TYPE"]),'<td>'.h($J["DTD_IDENTIFIER"]),'<td><a href="'.h(ME.($J["ROUTINE_TYPE"]!="PROCEDURE"?'function=':'procedure=').urlencode($J["SPECIFIC_NAME"]).$C).'">'.lang(135)."</a>";}echo"</table>\n";}echo'<p class="links">'.(support("procedure")?'<a href="'.h(ME).'procedure=">'.lang(219).'</a>':'').'<a href="'.h(ME).'function=">'.lang(218)."</a>\n";}if(support("sequence")){echo"<h3 id='sequences'>".lang(283)."</h3>\n";$hh=get_vals("SELECT sequence_name FROM information_schema.sequences WHERE sequence_schema = current_schema() ORDER BY sequence_name");if($hh){echo"<table cellspacing='0'>\n","<thead><tr><th>".lang(182)."</thead>\n";odd('');foreach($hh
as$X)echo"<tr".odd()."><th><a href='".h(ME)."sequence=".urlencode($X)."'>".h($X)."</a>\n";echo"</table>\n";}echo"<p class='links'><a href='".h(ME)."sequence='>".lang(225)."</a>\n";}if(support("type")){echo"<h3 id='user-types'>".lang(26)."</h3>\n";$Ni=types();if($Ni){echo"<table cellspacing='0'>\n","<thead><tr><th>".lang(182)."</thead>\n";odd('');foreach($Ni
as$X)echo"<tr".odd()."><th><a href='".h(ME)."type=".urlencode($X)."'>".h($X)."</a>\n";echo"</table>\n";}echo"<p class='links'><a href='".h(ME)."type='>".lang(229)."</a>\n";}if(support("event")){echo"<h3 id='events'>".lang(143)."</h3>\n";$K=get_rows("SHOW EVENTS");if($K){echo"<table cellspacing='0'>\n","<thead><tr><th>".lang(182)."<td>".lang(284)."<td>".lang(209)."<td>".lang(210)."<td></thead>\n";foreach($K
as$J){echo"<tr>","<th>".h($J["Name"]),"<td>".($J["Execute at"]?lang(285)."<td>".$J["Execute at"]:lang(211)." ".$J["Interval value"]." ".$J["Interval field"]."<td>$J[Starts]"),"<td>$J[Ends]",'<td><a href="'.h(ME).'event='.urlencode($J["Name"]).'">'.lang(135).'</a>';}echo"</table>\n";$Ac=$g->result("SELECT @@event_scheduler");if($Ac&&$Ac!="ON")echo"<p class='error'><code class='jush-sqlset'>event_scheduler</code>: ".h($Ac)."\n";}echo'<p class="links"><a href="'.h(ME).'event=">'.lang(208)."</a>\n";}if($Qh)echo
script("ajaxSetHtml('".js_escape(ME)."script=db');");}}}page_footer();