Guest User

Untitled

a guest
Aug 21st, 2019
859
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 320.26 KB | None | 0 0
  1. <?php
  2. /** Adminer Editor - Compact database editor
  3. * @link https://www.adminer.org/
  4. * @author Jakub Vrana, https://www.vrana.cz/
  5. * @copyright 2009 Jakub Vrana
  6. * @license https://www.apache.org/licenses/LICENSE-2.0 Apache License, Version 2.0
  7. * @license https://www.gnu.org/licenses/gpl-2.0.html GNU General Public License, version 2 (one or other)
  8. * @version 4.7.2
  9. */error_reporting(6135);$oc=!preg_match('~^(unsafe_raw)?$~',ini_get("filter.default"));if($oc||ini_get("filter.default_flags")){foreach(array('_GET','_POST','_COOKIE','_SERVER')as$X){$Fg=filter_input_array(constant("INPUT$X"),FILTER_UNSAFE_RAW);if($Fg)$$X=$Fg;}}if(function_exists("mb_internal_encoding"))mb_internal_encoding("8bit");function
  10. connection(){global$h;return$h;}function
  11. adminer(){global$b;return$b;}function
  12. version(){global$ca;return$ca;}function
  13. idf_unescape($u){$zd=substr($u,-1);return
  14. str_replace($zd.$zd,$zd,substr($u,1,-1));}function
  15. escape_string($X){return
  16. substr(q($X),1,-1);}function
  17. number($X){return
  18. preg_replace('~[^0-9]+~','',$X);}function
  19. number_type(){return'((?<!o)int(?!er)|numeric|real|float|double|decimal|money)';}function
  20. remove_slashes($Pe,$oc=false){if(get_magic_quotes_gpc()){while(list($y,$X)=each($Pe)){foreach($X
  21. as$pd=>$W){unset($Pe[$y][$pd]);if(is_array($W)){$Pe[$y][stripslashes($pd)]=$W;$Pe[]=&$Pe[$y][stripslashes($pd)];}else$Pe[$y][stripslashes($pd)]=($oc?$W:stripslashes($W));}}}}function
  22. bracket_escape($u,$Ha=false){static$rg=array(':'=>':1',']'=>':2','['=>':3','"'=>':4');return
  23. strtr($u,($Ha?array_flip($rg):$rg));}function
  24. min_version($Rg,$Kd="",$i=null){global$h;if(!$i)$i=$h;$zf=$i->server_info;if($Kd&&preg_match('~([\d.]+)-MariaDB~',$zf,$A)){$zf=$A[1];$Rg=$Kd;}return(version_compare($zf,$Rg)>=0);}function
  25. charset($h){return(min_version("5.5.3",0,$h)?"utf8mb4":"utf8");}function
  26. script($Hf,$qg="\n"){return"<script".nonce().">$Hf</script>$qg";}function
  27. script_src($Kg){return"<script src='".h($Kg)."'".nonce()."></script>\n";}function
  28. nonce(){return' nonce="'.get_nonce().'"';}function
  29. target_blank(){return' target="_blank" rel="noreferrer noopener"';}function
  30. h($Q){return
  31. str_replace("\0","&#0;",htmlspecialchars($Q,ENT_QUOTES,'utf-8'));}function
  32. nl_br($Q){return
  33. str_replace("\n","<br>",$Q);}function
  34. checkbox($B,$Y,$Wa,$vd="",$me="",$ab="",$wd=""){$J="<input type='checkbox' name='$B' value='".h($Y)."'".($Wa?" checked":"").($wd?" aria-labelledby='$wd'":"").">".($me?script("qsl('input').onclick = function () { $me };",""):"");return($vd!=""||$ab?"<label".($ab?" class='$ab'":"").">$J".h($vd)."</label>":$J);}function
  35. optionlist($C,$tf=null,$Ng=false){$J="";foreach($C
  36. as$pd=>$W){$re=array($pd=>$W);if(is_array($W)){$J.='<optgroup label="'.h($pd).'">';$re=$W;}foreach($re
  37. as$y=>$X)$J.='<option'.($Ng||is_string($y)?' value="'.h($y).'"':'').(($Ng||is_string($y)?(string)$y:$X)===$tf?' selected':'').'>'.h($X);if(is_array($W))$J.='</optgroup>';}return$J;}function
  38. html_select($B,$C,$Y="",$le=true,$wd=""){if($le)return"<select name='".h($B)."'".($wd?" aria-labelledby='$wd'":"").">".optionlist($C,$Y)."</select>".(is_string($le)?script("qsl('select').onchange = function () { $le };",""):"");$J="";foreach($C
  39. as$y=>$X)$J.="<label><input type='radio' name='".h($B)."' value='".h($y)."'".($y==$Y?" checked":"").">".h($X)."</label>";return$J;}function
  40. select_input($Da,$C,$Y="",$le="",$Ge=""){$ag=($C?"select":"input");return"<$ag$Da".($C?"><option value=''>$Ge".optionlist($C,$Y,true)."</select>":" size='10' value='".h($Y)."' placeholder='$Ge'>").($le?script("qsl('$ag').onchange = $le;",""):"");}function
  41. confirm($Sd="",$uf="qsl('input')"){return
  42. script("$uf.onclick = function () { return confirm('".($Sd?js_escape($Sd):lang(0))."'); };","");}function
  43. print_fieldset($t,$Ad,$Ug=false){echo"<fieldset><legend>","<a href='#fieldset-$t'>$Ad</a>",script("qsl('a').onclick = partial(toggle, 'fieldset-$t');",""),"</legend>","<div id='fieldset-$t'".($Ug?"":" class='hidden'").">\n";}function
  44. bold($Pa,$ab=""){return($Pa?" class='active $ab'":($ab?" class='$ab'":""));}function
  45. odd($J=' class="odd"'){static$s=0;if(!$J)$s=-1;return($s++%2?$J:'');}function
  46. js_escape($Q){return
  47. addcslashes($Q,"\r\n'\\/");}function
  48. json_row($y,$X=null){static$pc=true;if($pc)echo"{";if($y!=""){echo($pc?"":",")."\n\t\"".addcslashes($y,"\r\n\t\"\\/").'": '.($X!==null?'"'.addcslashes($X,"\r\n\"\\/").'"':'null');$pc=false;}else{echo"\n}\n";$pc=true;}}function
  49. ini_bool($gd){$X=ini_get($gd);return(preg_match('~^(on|true|yes)$~i',$X)||(int)$X);}function
  50. sid(){static$J;if($J===null)$J=(SID&&!($_COOKIE&&ini_bool("session.use_cookies")));return$J;}function
  51. set_password($Qg,$O,$V,$F){$_SESSION["pwds"][$Qg][$O][$V]=($_COOKIE["adminer_key"]&&is_string($F)?array(encrypt_string($F,$_COOKIE["adminer_key"])):$F);}function
  52. get_password(){$J=get_session("pwds");if(is_array($J))$J=($_COOKIE["adminer_key"]?decrypt_string($J[0],$_COOKIE["adminer_key"]):false);return$J;}function
  53. q($Q){global$h;return$h->quote($Q);}function
  54. get_vals($G,$e=0){global$h;$J=array();$I=$h->query($G);if(is_object($I)){while($K=$I->fetch_row())$J[]=$K[$e];}return$J;}function
  55. get_key_vals($G,$i=null,$Bf=true){global$h;if(!is_object($i))$i=$h;$J=array();$I=$i->query($G);if(is_object($I)){while($K=$I->fetch_row()){if($Bf)$J[$K[0]]=$K[1];else$J[]=$K[0];}}return$J;}function
  56. get_rows($G,$i=null,$o="<p class='error'>"){global$h;$lb=(is_object($i)?$i:$h);$J=array();$I=$lb->query($G);if(is_object($I)){while($K=$I->fetch_assoc())$J[]=$K;}elseif(!$I&&!is_object($i)&&$o&&defined("PAGE_HEADER"))echo$o.error()."\n";return$J;}function
  57. unique_array($K,$w){foreach($w
  58. as$v){if(preg_match("~PRIMARY|UNIQUE~",$v["type"])){$J=array();foreach($v["columns"]as$y){if(!isset($K[$y]))continue
  59. 2;$J[$y]=$K[$y];}return$J;}}}function
  60. escape_key($y){if(preg_match('(^([\w(]+)('.str_replace("_",".*",preg_quote(idf_escape("_"))).')([ \w)]+)$)',$y,$A))return$A[1].idf_escape(idf_unescape($A[2])).$A[3];return
  61. idf_escape($y);}function
  62. where($Z,$q=array()){global$h,$x;$J=array();foreach((array)$Z["where"]as$y=>$X){$y=bracket_escape($y,1);$e=escape_key($y);$J[]=$e.($x=="sql"&&preg_match('~^[0-9]*\.[0-9]*$~',$X)?" LIKE ".q(addcslashes($X,"%_\\")):($x=="mssql"?" LIKE ".q(preg_replace('~[_%[]~','[\0]',$X)):" = ".unconvert_field($q[$y],q($X))));if($x=="sql"&&preg_match('~char|text~',$q[$y]["type"])&&preg_match("~[^ -@]~",$X))$J[]="$e = ".q($X)." COLLATE ".charset($h)."_bin";}foreach((array)$Z["null"]as$y)$J[]=escape_key($y)." IS NULL";return
  63. implode(" AND ",$J);}function
  64. where_check($X,$q=array()){parse_str($X,$Ua);remove_slashes(array(&$Ua));return
  65. where($Ua,$q);}function
  66. where_link($s,$e,$Y,$oe="="){return"&where%5B$s%5D%5Bcol%5D=".urlencode($e)."&where%5B$s%5D%5Bop%5D=".urlencode(($Y!==null?$oe:"IS NULL"))."&where%5B$s%5D%5Bval%5D=".urlencode($Y);}function
  67. convert_fields($f,$q,$M=array()){$J="";foreach($f
  68. as$y=>$X){if($M&&!in_array(idf_escape($y),$M))continue;$_a=convert_field($q[$y]);if($_a)$J.=", $_a AS ".idf_escape($y);}return$J;}function
  69. cookie($B,$Y,$Dd=2592000){global$aa;return
  70. header("Set-Cookie: $B=".urlencode($Y).($Dd?"; expires=".gmdate("D, d M Y H:i:s",time()+$Dd)." GMT":"")."; path=".preg_replace('~\?.*~','',$_SERVER["REQUEST_URI"]).($aa?"; secure":"")."; HttpOnly; SameSite=lax",false);}function
  71. restart_session(){if(!ini_bool("session.use_cookies"))session_start();}function
  72. stop_session($uc=false){if(!ini_bool("session.use_cookies")||($uc&&@ini_set("session.use_cookies",false)!==false))session_write_close();}function&get_session($y){return$_SESSION[$y][DRIVER][SERVER][$_GET["username"]];}function
  73. set_session($y,$X){$_SESSION[$y][DRIVER][SERVER][$_GET["username"]]=$X;}function
  74. auth_url($Qg,$O,$V,$m=null){global$Hb;preg_match('~([^?]*)\??(.*)~',remove_from_uri(implode("|",array_keys($Hb))."|username|".($m!==null?"db|":"").session_name()),$A);return"$A[1]?".(sid()?SID."&":"").($Qg!="server"||$O!=""?urlencode($Qg)."=".urlencode($O)."&":"")."username=".urlencode($V).($m!=""?"&db=".urlencode($m):"").($A[2]?"&$A[2]":"");}function
  75. is_ajax(){return($_SERVER["HTTP_X_REQUESTED_WITH"]=="XMLHttpRequest");}function
  76. redirect($Fd,$Sd=null){if($Sd!==null){restart_session();$_SESSION["messages"][preg_replace('~^[^?]*~','',($Fd!==null?$Fd:$_SERVER["REQUEST_URI"]))][]=$Sd;}if($Fd!==null){if($Fd=="")$Fd=".";header("Location: $Fd");exit;}}function
  77. query_redirect($G,$Fd,$Sd,$Ze=true,$ac=true,$hc=false,$gg=""){global$h,$o,$b;if($ac){$Nf=microtime(true);$hc=!$h->query($G);$gg=format_time($Nf);}$Kf="";if($G)$Kf=$b->messageQuery($G,$gg,$hc);if($hc){$o=error().$Kf.script("messagesPrint();");return
  78. false;}if($Ze)redirect($Fd,$Sd.$Kf);return
  79. true;}function
  80. queries($G){global$h;static$Te=array();static$Nf;if(!$Nf)$Nf=microtime(true);if($G===null)return
  81. array(implode("\n",$Te),format_time($Nf));$Te[]=(preg_match('~;$~',$G)?"DELIMITER ;;\n$G;\nDELIMITER ":$G).";";return$h->query($G);}function
  82. apply_queries($G,$T,$Xb='table'){foreach($T
  83. as$R){if(!queries("$G ".$Xb($R)))return
  84. false;}return
  85. true;}function
  86. queries_redirect($Fd,$Sd,$Ze){list($Te,$gg)=queries(null);return
  87. query_redirect($Te,$Fd,$Sd,$Ze,false,!$Ze,$gg);}function
  88. format_time($Nf){return
  89. lang(1,max(0,microtime(true)-$Nf));}function
  90. remove_from_uri($ze=""){return
  91. substr(preg_replace("~(?<=[?&])($ze".(SID?"":"|".session_name()).")=[^&]*&~",'',"$_SERVER[REQUEST_URI]&"),0,-1);}function
  92. pagination($D,$ub){return" ".($D==$ub?$D+1:'<a href="'.h(remove_from_uri("page").($D?"&page=$D".($_GET["next"]?"&next=".urlencode($_GET["next"]):""):"")).'">'.($D+1)."</a>");}function
  93. get_file($y,$yb=false){$mc=$_FILES[$y];if(!$mc)return
  94. null;foreach($mc
  95. as$y=>$X)$mc[$y]=(array)$X;$J='';foreach($mc["error"]as$y=>$o){if($o)return$o;$B=$mc["name"][$y];$ng=$mc["tmp_name"][$y];$ob=file_get_contents($yb&&preg_match('~\.gz$~',$B)?"compress.zlib://$ng":$ng);if($yb){$Nf=substr($ob,0,3);if(function_exists("iconv")&&preg_match("~^\xFE\xFF|^\xFF\xFE~",$Nf,$af))$ob=iconv("utf-16","utf-8",$ob);elseif($Nf=="\xEF\xBB\xBF")$ob=substr($ob,3);$J.=$ob."\n\n";}else$J.=$ob;}return$J;}function
  96. upload_error($o){$Pd=($o==UPLOAD_ERR_INI_SIZE?ini_get("upload_max_filesize"):0);return($o?lang(2).($Pd?" ".lang(3,$Pd):""):lang(4));}function
  97. repeat_pattern($Ee,$Bd){return
  98. str_repeat("$Ee{0,65535}",$Bd/65535)."$Ee{0,".($Bd%65535)."}";}function
  99. is_utf8($X){return(preg_match('~~u',$X)&&!preg_match('~[\0-\x8\xB\xC\xE-\x1F]~',$X));}function
  100. shorten_utf8($Q,$Bd=80,$Uf=""){if(!preg_match("(^(".repeat_pattern("[\t\r\n -\x{10FFFF}]",$Bd).")($)?)u",$Q,$A))preg_match("(^(".repeat_pattern("[\t\r\n -~]",$Bd).")($)?)",$Q,$A);return
  101. h($A[1]).$Uf.(isset($A[2])?"":"<i>…</i>");}function
  102. format_number($X){return
  103. strtr(number_format($X,0,".",lang(5)),preg_split('~~u',lang(6),-1,PREG_SPLIT_NO_EMPTY));}function
  104. friendly_url($X){return
  105. preg_replace('~[^a-z0-9_]~i','-',$X);}function
  106. hidden_fields($Pe,$Xc=array()){$J=false;while(list($y,$X)=each($Pe)){if(!in_array($y,$Xc)){if(is_array($X)){foreach($X
  107. as$pd=>$W)$Pe[$y."[$pd]"]=$W;}else{$J=true;echo'<input type="hidden" name="'.h($y).'" value="'.h($X).'">';}}}return$J;}function
  108. 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
  109. table_status1($R,$ic=false){$J=table_status($R,$ic);return($J?$J:array("Name"=>$R));}function
  110. column_foreign_keys($R){global$b;$J=array();foreach($b->foreignKeys($R)as$yc){foreach($yc["source"]as$X)$J[$X][]=$yc;}return$J;}function
  111. enum_input($U,$Da,$p,$Y,$Sb=null){global$b;preg_match_all("~'((?:[^']|'')*)'~",$p["length"],$Md);$J=($Sb!==null?"<label><input type='$U'$Da value='$Sb'".((is_array($Y)?in_array($Sb,$Y):$Y===0)?" checked":"")."><i>".lang(7)."</i></label>":"");foreach($Md[1]as$s=>$X){$X=stripcslashes(str_replace("''","'",$X));$Wa=(is_int($Y)?$Y==$s+1:(is_array($Y)?in_array($s+1,$Y):$Y===$X));$J.=" <label><input type='$U'$Da value='".($s+1)."'".($Wa?' checked':'').'>'.h($b->editVal($X,$p)).'</label>';}return$J;}function
  112. input($p,$Y,$Dc){global$Ag,$b,$x;$B=h(bracket_escape($p["field"]));echo"<td class='function'>";if(is_array($Y)&&!$Dc){$ya=array($Y);if(version_compare(PHP_VERSION,5.4)>=0)$ya[]=JSON_PRETTY_PRINT;$Y=call_user_func_array('json_encode',$ya);$Dc="json";}$ff=($x=="mssql"&&$p["auto_increment"]);if($ff&&!$_POST["save"])$Dc=null;$Ec=(isset($_GET["select"])||$ff?array("orig"=>lang(8)):array())+$b->editFunctions($p);$Da=" name='fields[$B]'";if($p["type"]=="enum")echo
  113. h($Ec[""])."<td>".$b->editInput($_GET["edit"],$p,$Da,$Y);else{$Lc=(in_array($Dc,$Ec)||isset($Ec[$Dc]));echo(count($Ec)>1?"<select name='function[$B]'>".optionlist($Ec,$Dc===null||$Lc?$Dc:"")."</select>".on_help("getTarget(event).value.replace(/^SQL\$/, '')",1).script("qsl('select').onchange = functionChange;",""):h(reset($Ec))).'<td>';$id=$b->editInput($_GET["edit"],$p,$Da,$Y);if($id!="")echo$id;elseif(preg_match('~bool~',$p["type"]))echo"<input type='hidden'$Da value='0'>"."<input type='checkbox'".(preg_match('~^(1|t|true|y|yes|on)$~i',$Y)?" checked='checked'":"")."$Da value='1'>";elseif($p["type"]=="set"){preg_match_all("~'((?:[^']|'')*)'~",$p["length"],$Md);foreach($Md[1]as$s=>$X){$X=stripcslashes(str_replace("''","'",$X));$Wa=(is_int($Y)?($Y>>$s)&1:in_array($X,explode(",",$Y),true));echo" <label><input type='checkbox' name='fields[$B][$s]' value='".(1<<$s)."'".($Wa?' checked':'').">".h($b->editVal($X,$p)).'</label>';}}elseif(preg_match('~blob|bytea|raw|file~',$p["type"])&&ini_bool("file_uploads"))echo"<input type='file' name='fields-$B'>";elseif(($dg=preg_match('~text|lob~',$p["type"]))||preg_match("~\n~",$Y)){if($dg&&$x!="sqlite")$Da.=" cols='50' rows='12'";else{$L=min(12,substr_count($Y,"\n")+1);$Da.=" cols='30' rows='$L'".($L==1?" style='height: 1.2em;'":"");}echo"<textarea$Da>".h($Y).'</textarea>';}elseif($Dc=="json"||preg_match('~^jsonb?$~',$p["type"]))echo"<textarea$Da cols='50' rows='12' class='jush-js'>".h($Y).'</textarea>';else{$Rd=(!preg_match('~int~',$p["type"])&&preg_match('~^(\d+)(,(\d+))?$~',$p["length"],$A)?((preg_match("~binary~",$p["type"])?2:1)*$A[1]+($A[3]?1:0)+($A[2]&&!$p["unsigned"]?1:0)):($Ag[$p["type"]]?$Ag[$p["type"]]+($p["unsigned"]?0:1):0));if($x=='sql'&&min_version(5.6)&&preg_match('~time~',$p["type"]))$Rd+=7;echo"<input".((!$Lc||$Dc==="")&&preg_match('~(?<!o)int(?!er)~',$p["type"])&&!preg_match('~\[\]~',$p["full_type"])?" type='number'":"")." value='".h($Y)."'".($Rd?" data-maxlength='$Rd'":"").(preg_match('~char|binary~',$p["type"])&&$Rd>20?" size='40'":"")."$Da>";}echo$b->editHint($_GET["edit"],$p,$Y);$pc=0;foreach($Ec
  114. as$y=>$X){if($y===""||!$X)break;$pc++;}if($pc)echo
  115. script("mixin(qsl('td'), {onchange: partial(skipOriginal, $pc), oninput: function () { this.onchange(); }});");}}function
  116. process_input($p){global$b,$n;$u=bracket_escape($p["field"]);$Dc=$_POST["function"][$u];$Y=$_POST["fields"][$u];if($p["type"]=="enum"){if($Y==-1)return
  117. false;if($Y=="")return"NULL";return+$Y;}if($p["auto_increment"]&&$Y=="")return
  118. null;if($Dc=="orig")return(preg_match('~^CURRENT_TIMESTAMP~i',$p["on_update"])?idf_escape($p["field"]):false);if($Dc=="NULL")return"NULL";if($p["type"]=="set")return
  119. array_sum((array)$Y);if($Dc=="json"){$Dc="";$Y=json_decode($Y,true);if(!is_array($Y))return
  120. false;return$Y;}if(preg_match('~blob|bytea|raw|file~',$p["type"])&&ini_bool("file_uploads")){$mc=get_file("fields-$u");if(!is_string($mc))return
  121. false;return$n->quoteBinary($mc);}return$b->processInput($p,$Y,$Dc);}function
  122. fields_from_edit(){global$n;$J=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){$B=bracket_escape($y,1);$J[$B]=array("field"=>$B,"privileges"=>array("insert"=>1,"update"=>1),"null"=>1,"auto_increment"=>($y==$n->primary),);}return$J;}function
  123. search_tables(){global$b,$h;$_GET["where"][0]["val"]=$_POST["query"];$wf="<ul>\n";foreach(table_status('',true)as$R=>$S){$B=$b->tableName($S);if(isset($S["Engine"])&&$B!=""&&(!$_POST["tables"]||in_array($R,$_POST["tables"]))){$I=$h->query("SELECT".limit("1 FROM ".table($R)," WHERE ".implode(" AND ",$b->selectSearchProcess(fields($R),array())),1));if(!$I||$I->fetch_row()){$Ne="<a href='".h(ME."select=".urlencode($R)."&where[0][op]=".urlencode($_GET["where"][0]["op"])."&where[0][val]=".urlencode($_GET["where"][0]["val"]))."'>$B</a>";echo"$wf<li>".($I?$Ne:"<p class='error'>$Ne: ".error())."\n";$wf="";}}}echo($wf?"<p class='message'>".lang(9):"</ul>")."\n";}function
  124. dump_headers($Uc,$Xd=false){global$b;$J=$b->dumpHeaders($Uc,$Xd);$we=$_POST["output"];if($we!="text")header("Content-Disposition: attachment; filename=".$b->dumpFilename($Uc).".$J".($we!="file"&&!preg_match('~[^0-9a-z]~',$we)?".$we":""));session_write_close();ob_flush();flush();return$J;}function
  125. dump_csv($K){foreach($K
  126. as$y=>$X){if(preg_match("~[\"\n,;\t]~",$X)||$X==="")$K[$y]='"'.str_replace('"','""',$X).'"';}echo
  127. implode(($_POST["format"]=="csv"?",":($_POST["format"]=="tsv"?"\t":";")),$K)."\r\n";}function
  128. apply_sql_function($Dc,$e){return($Dc?($Dc=="unixepoch"?"DATETIME($e, '$Dc')":($Dc=="count distinct"?"COUNT(DISTINCT ":strtoupper("$Dc("))."$e)"):$e);}function
  129. get_temp_dir(){$J=ini_get("upload_tmp_dir");if(!$J){if(function_exists('sys_get_temp_dir'))$J=sys_get_temp_dir();else{$r=@tempnam("","");if(!$r)return
  130. false;$J=dirname($r);unlink($r);}}return$J;}function
  131. file_open_lock($r){$Bc=@fopen($r,"r+");if(!$Bc){$Bc=@fopen($r,"w");if(!$Bc)return;chmod($r,0660);}flock($Bc,LOCK_EX);return$Bc;}function
  132. file_write_unlock($Bc,$vb){rewind($Bc);fwrite($Bc,$vb);ftruncate($Bc,strlen($vb));flock($Bc,LOCK_UN);fclose($Bc);}function
  133. password_file($rb){$r=get_temp_dir()."/adminer.key";$J=@file_get_contents($r);if($J||!$rb)return$J;$Bc=@fopen($r,"w");if($Bc){chmod($r,0660);$J=rand_string();fwrite($Bc,$J);fclose($Bc);}return$J;}function
  134. rand_string(){return
  135. md5(uniqid(mt_rand(),true));}function
  136. select_value($X,$_,$p,$eg){global$b;if(is_array($X)){$J="";foreach($X
  137. as$pd=>$W)$J.="<tr>".($X!=array_values($X)?"<th>".h($pd):"")."<td>".select_value($W,$_,$p,$eg);return"<table cellspacing='0'>$J</table>";}if(!$_)$_=$b->selectLink($X,$p);if($_===null){if(is_mail($X))$_="mailto:$X";if(is_url($X))$_=$X;}$J=$b->editVal($X,$p);if($J!==null){if(!is_utf8($J))$J="\0";elseif($eg!=""&&is_shortable($p))$J=shorten_utf8($J,max(0,+$eg));else$J=h($J);}return$b->selectVal($J,$_,$p,$X);}function
  138. is_mail($Pb){$Aa='[-a-z0-9!#$%&\'*+/=?^_`{|}~]';$Gb='[a-z0-9]([-a-z0-9]{0,61}[a-z0-9])';$Ee="$Aa+(\\.$Aa+)*@($Gb?\\.)+$Gb";return
  139. is_string($Pb)&&preg_match("(^$Ee(,\\s*$Ee)*\$)i",$Pb);}function
  140. is_url($Q){$Gb='[a-z0-9]([-a-z0-9]{0,61}[a-z0-9])';return
  141. preg_match("~^(https?)://($Gb?\\.)+$Gb(:\\d+)?(/.*)?(\\?.*)?(#.*)?\$~i",$Q);}function
  142. is_shortable($p){return
  143. preg_match('~char|text|json|lob|geometry|point|linestring|polygon|string|bytea~',$p["type"]);}function
  144. count_rows($R,$Z,$nd,$Fc){global$x;$G=" FROM ".table($R).($Z?" WHERE ".implode(" AND ",$Z):"");return($nd&&($x=="sql"||count($Fc)==1)?"SELECT COUNT(DISTINCT ".implode(", ",$Fc).")$G":"SELECT COUNT(*)".($nd?" FROM (SELECT 1$G GROUP BY ".implode(", ",$Fc).") x":$G));}function
  145. slow_query($G){global$b,$pg,$n;$m=$b->database();$hg=$b->queryTimeout();$Ef=$n->slowQuery($G,$hg);if(!$Ef&&support("kill")&&is_object($i=connect())&&($m==""||$i->select_db($m))){$ud=$i->result(connection_id());echo'<script',nonce(),'>
  146. var timeout = setTimeout(function () {
  147. ajax(\'',js_escape(ME),'script=kill\', function () {
  148. }, \'kill=',$ud,'&token=',$pg,'\');
  149. }, ',1000*$hg,');
  150. </script>
  151. ';}else$i=null;ob_flush();flush();$J=@get_key_vals(($Ef?$Ef:$G),$i,false);if($i){echo
  152. script("clearTimeout(timeout);");ob_flush();flush();}return$J;}function
  153. get_token(){$Ve=rand(1,1e6);return($Ve^$_SESSION["token"]).":$Ve";}function
  154. verify_token(){list($pg,$Ve)=explode(":",$_POST["token"]);return($Ve^$_SESSION["token"])==$pg;}function
  155. lzw_decompress($Ma){$Eb=256;$Na=8;$cb=array();$hf=0;$if=0;for($s=0;$s<strlen($Ma);$s++){$hf=($hf<<8)+ord($Ma[$s]);$if+=8;if($if>=$Na){$if-=$Na;$cb[]=$hf>>$if;$hf&=(1<<$if)-1;$Eb++;if($Eb>>$Na)$Na++;}}$Db=range("\0","\xFF");$J="";foreach($cb
  156. as$s=>$bb){$Ob=$Db[$bb];if(!isset($Ob))$Ob=$dh.$dh[0];$J.=$Ob;if($s)$Db[]=$dh.$Ob[0];$dh=$Ob;}return$J;}function
  157. on_help($hb,$Cf=0){return
  158. script("mixin(qsl('select, input'), {onmouseover: function (event) { helpMouseover.call(this, event, $hb, $Cf) }, onmouseout: helpMouseout});","");}function
  159. edit_form($a,$q,$K,$Ig){global$b,$x,$pg,$o;$Yf=$b->tableName(table_status1($a,true));page_header(($Ig?lang(10):lang(11)),$o,array("select"=>array($a,$Yf)),$Yf);if($K===false)echo"<p class='error'>".lang(12)."\n";echo'<form action="" method="post" enctype="multipart/form-data" id="form">
  160. ';if(!$q)echo"<p class='error'>".lang(13)."\n";else{echo"<table cellspacing='0' class='layout'>".script("qsl('table').onkeydown = editingKeydown;");foreach($q
  161. as$B=>$p){echo"<tr><th>".$b->fieldName($p);$zb=$_GET["set"][bracket_escape($B)];if($zb===null){$zb=$p["default"];if($p["type"]=="bit"&&preg_match("~^b'([01]*)'\$~",$zb,$af))$zb=$af[1];}$Y=($K!==null?($K[$B]!=""&&$x=="sql"&&preg_match("~enum|set~",$p["type"])?(is_array($K[$B])?array_sum($K[$B]):+$K[$B]):$K[$B]):(!$Ig&&$p["auto_increment"]?"":(isset($_GET["select"])?false:$zb)));if(!$_POST["save"]&&is_string($Y))$Y=$b->editVal($Y,$p);$Dc=($_POST["save"]?(string)$_POST["function"][$B]:($Ig&&preg_match('~^CURRENT_TIMESTAMP~i',$p["on_update"])?"now":($Y===false?null:($Y!==null?'':'NULL'))));if(preg_match("~time~",$p["type"])&&preg_match('~^CURRENT_TIMESTAMP~i',$Y)){$Y="";$Dc="now";}input($p,$Y,$Dc);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($q){echo"<input type='submit' value='".lang(14)."'>\n";if(!isset($_GET["select"])){echo"<input type='submit' name='insert' value='".($Ig?lang(15):lang(16))."' title='Ctrl+Shift+Enter'>\n",($Ig?script("qsl('input').onclick = function () { return !ajaxForm(this.form, '".lang(17)."…', this); };"):"");}}echo($Ig?"<input type='submit' name='delete' value='".lang(18)."'>".confirm()."\n":($_POST||!$q?"":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"]),'">
  162. <input type="hidden" name="save" value="1">
  163. <input type="hidden" name="token" value="',$pg,'">
  164. </form>
  165. ';}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
  166. lzw_decompress("\0\0\0` \0„\0\n @\0´C„è\"\0`EãQ¸àÿ‡?ÀtvM'”JdÁd\\Œb0\0Ä\"™ÀfÓˆ¤îs5›ÏçÑAXPaJ“0„¥‘8„#RŠT©‘z`ˆ#.©ÇcíXÃþÈ€?À-\0¡Im? .«M¶€\0ȯ(̉ýÀ/(%Œ\0");}elseif($_GET["file"]=="default.css"){header("Content-Type: text/css; charset=utf-8");echo
  167. lzw_decompress("\n1̇“ÙŒÞl7œ‡B1„4vb0˜Ífs‘¼ên2BÌѱ٘Þn:‡#(¼b.\rDc)ÈÈa7E„‘¤Âl ¦Ã±”èi1ÌŽs˜´ç-4™‡fÓ ÈÎi7†³¹¤Èt4…¦ÓyèZf4°i–AT«VV éf:Ϧ,:1¦Qݼñb2`Ç# þ>:7Gï—1ÑØÒs°™L—XD*bv<ÜŒ#£e@Ö:4ç§!fo·Æt:<¥Üå’¾™oâÜ\niÃÅð',é»a_¤:¹iï…´ÁBvø|Nû4.5Nfi¢vpÐh¸°l¨ê¡ÖšÜO¦‰î= £OFQÐÄk\$¥Óiõ™ÀÂd2T ã¡pàÊ6„‹þ‡¡-ØZ€Žƒ Þ6½£€ðh:¬aÌ,Ž£ëî2#8А±#’˜6nâî†ñJˆ¢h«t…Œ±Šä4O42ô½okÞ¾*r ©€@p@†!ľÏÃôþ?Ð6À‰r[ðLÁð‹:2Bˆj§!HbóÃPä=!1V‰\"ˆ²0…¿\nSÆÆÏD7ÃìDÚ›ÃC!†!›à¦GÊŒ§ È+’=tCæ©.C¤À: +ÈÊ=ªªº²¡±å%ªcí1MR/”EÈ’4„© 2°ä± ã`Â8(áÓ¹[W äÑ=‰yS b°=Ö-ܹBS+ ɯÈÜý¥ø@pL4Ydã„qŠøã¦ðê¢6 £3Ĭ ¯¸AcÜŒèΨŒk‚[&>ö•¨ZÁpkm]—u-c:ظˆNtæδpҝŒŠ8è=¿#˜á[.ðÜÞ¯~ mËy‡PPá|IÖ›ùÀìQª9v[–Q•„\n–Ùrô'g‡+áTÑ2…­VÁõzä4£8÷( ¾Ey*#j¬2]­•RÒÁ‘¥)ƒÀ[N­R\$Š<>:ó­>\$;–> Ì\r»„ÎHÍÃTÈ\nw¡N åwØ£¦ì<ïËGwàöö¹\\Yó_ Rt^Œ>Ž\r}ŒÙS\rzé4=µ\nL”%Jã‹\",Z 8¸ž™i÷0u©?¨ûÑô¡s3 #¨Ù‰ :ó¦ûã½–ÈÞE]xÝҁs^8Ž£K^É÷*0ÑÞwÞàÈÞ~ãö:íÑiØþv2w½ÿ±û^7ãò7£cÝÑu+U%Ž{PÜ*4̼éLX./!¼‰1CÅßqx!H¹ãFdù­L¨¤¨Ä Ï`6ë è5®™f€¸Ä†¨=Høl ŒV1“›\0a2×;Ô6†àöþ_Ù‡Ä\0&ôZÜS d)KE'’€nµ[ X©³\0ZÉŠÔF[P‘Þ˜@àß!‰ñYÂ,`É\"Ú·Â0Ee9 yF>ËÔ9bº–ŒæF5:üˆ”\0}Ä´Š‡(\$žÓ‡ë€37Hö£è M¾A°²6R•ú{MqÝ7G ÚC™C êm2¢(ŒCt>[ì-tÀ/&C ›]êetGô̬4@r>ÇÂå<šSq•/åú”QëhmšÀÐÆôãôLÀÜ#èôKË|®™„6fKPÝ\r%tÔÓV=\" SH\$} ¸)w¡,W\0F³ªu@Øb ¦9‚\rr°2Ã#¬DŒ”Xƒ³ÚyOIù>»…n †Ç¢%ãù'‹Ý_Á€t\rÏ„z Ä\\1˜hl¼]Q5Mp6k†ÐÄqhÃ\$£H~Í|ÒÝ!*4ŒñòÛ`Sëý²S tíPP\\g±è7‡\n-Š:袪p´•”ˆl‹Bž¦î”7Ó¨cƒ(wO0\\:•Ðw”Á p4ˆ“ò{TÚújO¤6HʶrÕ¥q\n¦É%%¶y']\$‚”a‘ZÓ.fcÕq*-êFWºúk„zƒ°µj‘Ž°lgáŒ:‡\$\"ÞN¼\r#ÉdâÂÂÿÐscá¬Ì „ƒ\"jª\rÀ¶–¦ˆÕ’¼Ph‹1/‚œDA) ²Ý[ÀknÁp76ÁY´‰R{áM¤Pû°ò@\n-¸a·6þß[»zJH,–dl B£ho³ìò¬+‡#Dr^µ^µÙeš¼E½½– ÄœaP‰ôõJG£zàñtñ 2ÇXÙ¢´Á¿V¶×ßàÞȳ‰ÑB_%K=E©¸b弾ߧkU(.!Ü®8¸œüÉ I.@ŽKÍxnþ¬ü:ÃPó32«”míH C*ì:vâTÅ\nR¹ƒ•µ‹ 0uÂíƒæîÒ§]ί˜Š”P /µJQd¥{L–Þ³:YÁ2b¼œT ñÊ3Ó4†—äcê¥V=¿†L4ÎÐr Ä!ßBðY³6Í­MeLŠªÜçœöùiÀoÐ9< G”¤Æ•Ð™Mhm^¯UÛNÀŒ· òTr 5HiM”/¬nƒí³T [-<__î3/Xr(<‡¯Š†®Éô“Ì uÒ–G NX20å\r\$^‡:'9è¶O…í;×k¼† µf –N'a¶”Ç­bÅ,ËV¤ô…«1µïHI!%6@úÏ\$ÒEGÚœ¬1(mUªå…rÕ½ïßå`¡ÐiN+Ãœñ)šœä0lØÒf0ý[UâøVÊè-:I^ ˜\$Øs«b\re‡‘ugÉhª~9Û߈b˜µôÂÈfä+0¬Ô hXrݬ©!\$—e,±w+„÷ŒëŒ3†Ì_âA…kšù\nkÃrõÊ›cu WdYÿ\\×={.óč˜¢g»‰p8œt\rRZ¿vJ:²>þ£Y|+Å@À‡ƒÛCt\r€jt½6²ð %Â?àôÇŽñ’>ù/ ¥ÍÇðÎ9F`וäòv~K¤áöÑRÐW‹ðz‘ êlmªwLÇ9Y•* q¬xÄzñèSe®Ý›³è÷£~šDàÍá–÷x˜¾ëÉŸi7•2ÄøÑOÝ»’û_{ñú53âút˜›_ŸõzÔ3ùd)‹C¯Â\$?KÓªP%ÏÏT&þ ˜&\0P×NAŽ^­~¢ƒ pÆ öÏœ“Ôõ\r\$ÞïÐÖìb*+D6궦ψÞíJ\$(ÈolÞÍh&”ìKBS>¸‹ö;z¶¦xÅoz>íœÚoÄZð\nÊ‹[Ïvõ‚ËÈœµ°2õOxِVø0fû€ú¯Þ2BlÉbkÐ6ZkµhXcdê0*ÂKTâ¯H=­•Ï€‘p0ŠlVéõ èâ\r¼Œ¥nŽm¦ï)( ú");}elseif($_GET["file"]=="functions.js"){header("Content-Type: text/javascript; charset=utf-8");echo
  168. lzw_decompress("f:›ŒgCI¼Ü\n8œÅ3)°Ë7œ…†81ÐÊx:\nOg#)Ðêr7\n\"†è´`ø|2ÌgSi–H)N¦S‘ä§\r‡\"0¹Ä@ä)Ÿ`(\$s6O!ÓèœV/=Œ' T4æ=„˜iS˜6IO“ÊerÙxî9*ź°ºn3\rщvƒCÁ`õšÝ2G%¨YãæáþŸ1™Ífô¹ÑÈ‚l¤Ã1‘\ny£*pC\r\$ÌnTª•3=\\‚r9O\"ã Ààl<Š\rÇ\\€³I,—s\nA¤Æe h+Mâ‹!q0™ýf»`(¹N{c–—+wËñÁY£–pÙ§3Š3ú˜+I¦Ôj¹ºýŽÏk·²n¸q܃zi#^rØÀº´‹3èâÏ[žèºo;®Ë(‹Ð6#ÀҐŽ\":cz>ߣC2vÑCXÊ<P˜ Ãc*5\nº¨è·/üP97ñ|F»°c0ƒ³¨°ä!ƒæ…!¨œƒ!‰Ã\nZ%Ãć#CHÌ!¨Ò r8ç\$¥¡ì¯,ÈRÜ”2…Èã^0·á@¤2Œâ(ð88P/‚à¸Ý„á\\Á\$La\\å;càH„áHX„•\nʃtœ‡á8A<ÏsZô*ƒ;IÐÎ3¡Á@Ò2<Š¢¬!A8G<Ôj¿-Kƒ({*\r’Åa1‡¡èN4Tc\"\\Ò!=1^ •ðÝM9O³:†;jŒŠ\rãXÒàL#HÎ7ƒ#Tݪ/-´‹£pÊ;B ‹\n¿2!ƒ¥Ít]apÎŽÝî\0RÛCËv¬MÂI,\rö§\0Hv°Ý?kTÞ4£Š¼óuÙ±Ø;&’ò+&ƒ›ð•µ\rÈXbu4Ý¡i88Â2Bä/⃖4ƒ¡€N8AÜA)52íúøËåÎ2ˆ¨sã8ç“5¤¥¡pçWC@è:˜t…ã¾´Öešh\"#8_˜æcp^ãˆâI]OHþÔ:zdÈ3g£(„ˆ×Ök¸î“\\6´˜2ÚÚ–÷¹iÃä7²˜Ï]\rÃxO¾nºpè<¡ÁpïQ®UÐn‹ò|@çËó#G3ðÁ8bA¨Ê6ô2Ÿ67%#¸\\8\rýš2Èc\ræÝŸk® ‚.(’ Ž’-—J;î›Ñó ÈéLãÏ ƒ ¼žWâø㧓ѥɤâ–÷·žnû Ò§»æýMÎÀ9ZНs]êz®¯¬ëy^[¯ì4-ºU\0t a ¶62^•˜.`¤‚â.Cßjÿ[á„ % Q\0`dëM8¿¦¼ËÛ\$O0`4²êÎ\n\0a\rA„<†@Ÿƒ›Š\r!À:ØBAŸ9Ù?h>¤Çº  š~ÌŒ—6ȈhÜ= Ë-œA7XäÀÖ‡\\¼\r‘Q<蚧q’'!XΓ2úT °!ŒD\r§Ò,K´\"ç%˜HÖqR\r„Ì ¢îC =Ží‚ æäŽÈ<c”\n#<€5Mø êEƒœyŒ¡”“‡°úo\"°cJKL2ù&£ØeRœÀWÐAΐTwÊÑ‘;åJˆâá\\`)5¦ÔÞœBòqhT3§àR ¸'\r+\":– Øðà.“ÑZM'|¬et:3%LÜË#‘f!ñhà×€eŒ³œÙ+ļ­Ná¹ Á½_’CXŠGî˜1†µi-ãzž\$’oK@O@TÒ=&‰0\$ àDA‘›¥ùùDàªSJèx9ׁFȈm l¨Èp»GÕ­¤T6RfÀ@ƒa¾\rs´RªFgih]¥éf™.•7+Ñ<nhh’* ÈSH P]¡ :Ò’¨Áa\"¨Õù¬2¦&R©)ùB¦PÊ™ÓH/ õf {r|¨0^ÙhCAÌ0»@æMÎâç2“B”@©âzªUŠ‘¾O÷þ‰Cpp’å\\¾L«%è¬ð›„’y«çodÃ¥•‰´p3·Š7E¸—ÐÜA\\ °ö†KƒÛXn‚Øi.ÐZ×Í óŸ˜s¡‰Gým^tIòY‘J’üÙ±•G1€£R¨³D’c–äà6•tMi hÆä9ƒ»9gƒq—RL–ûMj-TQÍ6i«G_!í.½hªvÞûcN¨Œý¸—^üÑ0w@n|ý½×VûÜ«˜AЭÃÀ3ú[Úû]Ž s7õG†P@ : Ì1Ñ‚ØbØ µìÝŸ›’wÏ(i³ø:Òåz\\ûº;Óù´AéPU T^£]9Ý`UX+U î‹Q+‰ÃbÌÀñ*Ï”s¨¼€–—Î[ßÛ‰xkûF*ô‚ŽÝ§_w.òÅ6~òbÛÎmKì¾sIÞMKÉ}ï•Ò¥ÚøåeHɲˆdµ*mdçlœQ°eHô2½ÔL¨ aÒ‚¯=…³sëPøaM\"apÃÀ:<á…äGB ”\r2Ytx& L}}‘ßAÏÔ±N…GЬza”öD4øtÔ4QÉvS©Ã¹S\rÎ;U¸ê¦éäý¸´Æ~’pBðƒ{¶ÑÆ,œ—¢O´ãt;ÇJ¡™ZC,&Yº:Y\"Ý#‰ÜãÄt:\n‘h8r¯¡îÚnéÔÈh>„>Zðø`&àaÞpY+¹x¬UÕý A¼<?ã”PxW Õ¡¯W™ i¬Ë.É\r`÷\$,Àú©Ò¾‹³V¥]ŒZr›ä§H³ˆ5Æf\\º-K Æ©¦v¼•Zçä®A¸Õ(§{3­o›ó¿¡l.¿ì¹JéÅ.ç\\t2æ;Ž¯ì2\0´Í>c+|ÁÐ*;-0înÂà[ t@ÛÚ•ò¢¤=cQ\n. z‰•ÉwC&‡Ô@‘ù¦FæÕˆ‡Ž'cBS7_*rsѨÔ?jð3@–ˆôÐ!ð.@7žsŠ]ÓªòL÷΁GŸð@ÿÕ_­qÕ&uûØótª\nÕŽ´LßEÐT¤ð­}gG–þ¸îwëoö(*˜ªð†›Aí¯-¥Åù¢Õ3¿mk¾…÷°¶×¤«Ÿt·¢Sø¥Á(ûd±žAî~ïx\n×õô§kÕÏ£:DŸø+Ÿ‘ gã äh14 Öâ\n.øÏdê«–ãì’  öþéA lY©jš©êŽjJœÇÅPN+b D°j¼¬€îÔ €D ªÞPäì€LQ`Of–£@Ø}(ÅÂ6^nB³ 4Û`ÜeÀ\n€š …trp !lV¤'}b‰*€r%|\nr\r#Ž°Ä@w®¼-ÔT.Vvâ8ìªæ\nmF¦/Èp¬Ï`úY0¬Ïâë­è€P\r8 ÀY\r‡Øݤ’ ÀQ‡%EÎ/@]\0Ê À{@ÌQØá\0bR M\r†Ù'| ¢è%0SDr¨È žf/–àÂÜb:Ü­¯¶Þà%߀æ3H¦x\0Âl\0Ì ÅÚ ‘€Wàß%Ú\nç8\r\0}îDž„É1d#±x ‚ä.€jEoHrÇ¢lb ÀØÚ%tì¦4¸p„Àä%Ñ4’åÒk®z2\rñ£`îW@Â’ç%\rJ‚1€‚X ¤Ú1¾D 6!°ô†*‡ä²{ 4<E¦‹k.më4Äò×€\r\nê^iÀ è³!n«²!2\$§ÈüÌ÷(îfñöÄìÄùk>Žï¢ÅËNú‚5\$Œàé2T¾,ÖLÄ‚¬ ¶ Z@ºí*Ð`^PðP%5%ªt‘HâWÀðonüö«E#föÒ<Ú2@K:Ìošùò’ÌϦÍ-èû2\\W i+f›&Ñòg&²níLõ'eÒ|‚²´¿nK¥2ûrÚ¶Ëpá*.ánü²’Φ‰‚‚*Ð+ªtBg* òžQ…1+)1hªŠî^‹`Q#ñØŽân*hòàòv¢Bãñ\0\\F\n†WÅr f\$ó=4\$G4ed b˜:J^!“0€‰_àû¦%2ÀË6³.F€ÑèÒºóEQÁ±‚²Îdts\"ׄ‘’B(`Ú\rÀš®c€R©°°ñV®²”óºXêâ:RŸ*2E*sÃ\$¬Ï+Á:bXlÌØtb‹á-Ä›S>’ù-åd¢=äò\$Sø\$å2Àʁ7“jº\"[́\"€È] [6“€SE_>åq.\$@z`í;ô4²3ʼ ÅCSÕ*ïª[ÀÒÀ{DO´Þª CJj峚Pò:'€ŽèÈ• QEÓ–æŽ`%rñ¯û7¯þG+hW4E*ÀÐ#TuFj•\n¾eùDô^æsš§r.ì‰ÅR kæ€z@¶@»…³Dâ`CÂV!Cæå•\0ñØÛŠ)3<ŽŽQ4@Ù3SP‡âZB³5F€Lä¨~G³5ÈÒ:ñÂÓ5\$XÑÔö}Æž fŠËâIŽ €ó3S8ñ\0XÔ‚td³<\nbtNç Q¢;\rÜÑH‚ÕP\0Ô¯&\n‚žà\$VÒ\r:Ò\0]V5gV¦„òD`‡N1:ÓSS4Q…4³N•5u“5Ó`x Ò<5_FHÜßõ}7­û)€SVíÌÄž#ê|‚Õ< Õ¼ÑË°£ ·\\ Ý-Êz2³\0ü#¡WJU6kv·µÎ#µÒ\rµì·¤§ÀûUõöiÕï_îõ^‚UVJ|Y.¨žÉ›\0u,ž€òðôæ°õ_UQD#µZJuƒXtñµ_ï&JO,Du`N\r5³Á`«}ZQM^mÌPìG[±Áa »bàN äž® ÖreÚ\n€Ò%¤4š“o_(ñ^¶q@Y6t;I\nGSM£3§×^SAYH hB±5 fN?NjWU•JÐÂøÖ¯YÖ³ke\"\\B1 žØ…0º µenÐÄ í*<¥O`S’L—\n‘Ú. gÍ5Zj ¡\0R\$åh÷n÷[¶\\ÝíñrŒÊ,æ 4ðœ ° cP§pq@R µrw>‹wCK‘…t¶ }5_uvh¤Ó`/Àúà\$ò–J)ÏRõ2Du73Öd\rÂ;­çw´Ý öHùI_\"4±rµ«®¦Ï¿+ê¿&0> É_-e qeDöÍVÔnŒÄf‹hüÂ\"ZÀ¨¶óZ¢WÌ6\\Lê ÷î· ke&ã~‡à àš…‘i\$Ï°´Mr×i*×ÄâÔç\0 Ì.Q,¶¢8\r±È ¸\$×­K‚ÈYƒ ÐioÍe%tÕ2ÿ\0äJýø~×ñ/I/.…e€€n«~x!€8´À|f¸hÛ„-H×åÏ&˜/„Æo‡­‡ø‚.K” Ë^jÜÀtµé>('L\r€àHsK1´e¤\0Ÿ\$&3²\0æin3í¨ oä“6ôжø®÷ ô§9Žj°¸àÈÚ1‰(b.”vC ÝŽ8ŒÙ:wi¬Ÿ\"®^wµQ©¥Åïz–o~Þ/„úÒ’÷–÷`Y2”D¬VúÆ³/kã8³ ¹7ZHø°Šƒ]2k2rœ¿ñ›ŠÏ¯h©=ˆT…ˆ]O&§\0ÄM\0Ö[8–‡È®…æ–â8&LÚVm vÀ±ê˜j„ךÇFåÄ\\™¶ ™º¾&så€Q› \\\"òb€° àÄ\rBsœIwž žYéžÂN š7ÇC/*ÙË ¨\n\nÃH™[« š¹Ô*A˜ ñTEÏVP.UZ(tz/}\n2‚çyšS¢š,#É3âi°~W@yCC\nKT¿š1\"@|„zC\$ü€_CZjzHBºLVÔ,Kº£º„O—ÁÀPà@X…´ …°‰¨ºƒ;DúWZšW¥aÙÀ\0ÞŠÂCG8–R   à¦\n…„àŽºÐPÆA£è&Žšº é,ÚpfV|@N¨b¾\$€[‡I’Š­™â àð¦´àZ¥@Zd\\\"…|¢ƒ+¢ Û®šìtzðo\$â \0[²èÞ±yƒE çë³É™®b hU1£‚,€r\$ãŒo8D§²‡F«ÆV&ځ5 h}ŽÂNÜͳ& ºçµ•ef€Ç™Y™¸:»^z©VPu W¹Z\"rÚ:ûhw˜ µh#1¥´O¥äÃKâhq`妄óÄ §v| Ë§:wDúj…(W¢ºº­¨›ï¤»õ?;|Z—«%Š%Ú¡Är@[†ŠúÄB»&™»³˜›ú#ª˜©Ù£”:)ÂàY6û²–è&¹Ü @¦ àœüIÄÒ!›©²»¶ »â2M „äO;²«ÑWƼ)êùCãÊF Zâp!ÂÄa™Ä*FÄb¹I³ÃÍ¾àŒ¤#Ĥ9¡¦åçS©/SüA‰`zé•L*Î8»+¨ÌNù‹Ä-¸M•Ä-kd°®àLiÎJë‚·þJnÂÃbí Ó>,ÜV¶SP¯8´è>¶wïì\"E.îƒRz`Þ‹u_ÀèœôE\\ùÏÉ«Ð3Pç¬óÓ¥s]”•‰goVSƒ±ñ„\n ¤ *†\r»¸7)ªÊ„ümPWÝUÕ€ßÕÇ°¨·Þf”×Ü“iÿÆ…kÐŒ\rÄ('W`ÞBdã/h*†AÌlºMŽä€_\nÀèüú½µëOªäT‚5Ú&AÀ2é`¸à\\RÑE\"_–_œ½.7¥Mœ6d;¶<?ÈÜ)(;¾û‰}K¸[«Åû»ÆZ?ÕyI ÷á1pªbu\0è éˆ ²²Œ£{ó£Å\ri€û¦Eæ` ~\n‹ã=ýão„‡¨'ÊûáÉóv¨PÝyC\0‚\$Ñ8çTÖ/m1GT¨Ól”ä}oéeí=Gtb÷I/[0à% èo|ÒSyíÑÚØ^o¹Â;¾«æÏÈ@TÙbŽ*˜iÜÓÚPZT ‹þÓƒ\0\$êÅ> ÛìeõLþ J_ç7¢-RfŽ0\"à…­6g€øz\rÄa3›aՍ6+3ÜDBg‡3ՁY¶'Yàdüçx6I3_2}Õóè;ˆ „`ä@Ãbý«þ×Ïí {îC:SuM\nļ‡ãSK\0ŸB;TÙ`Ö8÷Gˆ¶x‹IŽ`5€Ø#\"NÓҭÿõv&œeð˜kDÈsq€˜.Fÿ˜Í<§ƒsñ’ h€e6üÓŸš¢*àbøiSÜŠÂ †Ì®…`ç ÒÙ‚ô×ý+\0±¤Ë5¸LLBT²Ä‚ÏwdXcôÍF×À1&Õ0Ð^ôP)\$\\8iûÀ¨ô(LÜïx)ˆn@°Cá÷?€\$€Yvy.\$(\0@p €u\rxo††°¸Àtb{á7Bžk\r©`Mt(í BTPÁ <¢G’\$Ú>Ü^pC *Öýé!.&žLxíš¾²Ñ\0]°4šË\0ðá“PÃýaªšÑðÀ\näN… K†Ñ¦Üpã¢\$BË­@ÊëwVº¼¨¯f#¬Èrø§|YÇ/q‹ûYZÃVXB,wÜ„hF¨Gƒ¤ÂSg_?3,‹ sЊÊEµ#¸^š,С¦†Ù4¡R;’ÂÀJªæ,<…e (Vï#C€Êö`‚/8\rv‚qmpjBA›€´¶©ÅR@\nЭ ñv¹w‹Ó^ªÈÜÀ7Œ­:á=JÐP¤ÄiŒ­êíyÉ¥¤á\0007E¥(IU2!¡ÒˆfŸC©íIì8G¦¢?e^`ðŐÁA]¡Ä™‡(pÓ}ÐÞ‡{Â!àFm(ñ”R°‘ BíïeÛ‚@Œ)¨‹,JO®„“ŽÞ\nð™\0Ð%]‚éw•LAÁxÇç9€Ú”˜«á¹ÉŒ,ÊbØ:Áø/QªHE|;‘ ÿD¤äí± Ú\$¦¨¡ƒ¡°oñbê+ß[@‚Ð!Лd€Q•Bª7ÅžER\n£yWÇ|ØEPJ+ƒ‹:ìX\0¯Ô· A\rnˆiÕê Œ¡ô„])qÔ<<jHyÜ’ \"!NàtÐ D0FèÂŒ‰[ aŒ)'ËV}Q9\$Ñn@O9xŒXæ´”;è#Ñuƒ4 GÑA€±f.\\5£7bÞÅà\rz¤h¼~Õy\0„î“-é¿G\0/7K­·éò`+ Ãö,Qã:Àµâ‡ƒsÀ ^å54¦8ݍ®y\0°µï¥ùrŠu„©©;‹,8ãä\0ˆˆ4t¿5\nÿ_‰ach… ý¿¡bZZË¿Èð–ødQqŽ±ËZ(ê%@–ñç!ªÿ@Éò%†Ð‘ãƒQé?Èôˆø¡‚Ck¥#ß 8 ¨þ|dXc£ªíÔÎ2U²Iß!¥^½-WïT9â¾àè@÷°«Û=¼\0Ò˜\$””†2Œ¨JœeϤ’t¬2€µ©‚K“T+¨þ\0œœð¤ ™\0ôÈ@<HœÄG¶Bd}‡·¢‰ځzb•ÀÈõ‘ö ^IãÝøòÂhSI-†æK£áJ„”Â\r%RºÉ\\&ŽhlNЊI1\nJÔ9n#¹4ÒKU1ÄvK ³õ •haâm‰M#Š°¥¼¸;L˜*?ÎLe˜\n½ÈÂ(qìÕLGpˆŠê8` H꩘4T¥J`\"FM£%@Ê)QHÂgVO4 Å)ó\$²®3\" •ƒëØ*í2ž0!•ƒo\0¼ØWMÁP°rbëL1qJà¶RÅ•°µ†‹,R\$ÁŽ3‘wŒô^Â*²{°AAfhŸUŠšYW\nŒ4‚©˜.Å2,ÑÐÿaÀZÄÙ”&=B?bµ@O/“ Ý`IŹänp‰¿ WPÌa0¥ü’`ë¢a˼y“q\r`Æ\$=ËØd¡@Åö45€»Ñö˜ÂuÕe(\$Nð¨NÄ æEcu\"¬|Mo,:ƒžr á÷‹Z;¨öRrDÓÇT/-õ35™š@¡>,—z©àp~„®a´DÄ:(ˆSÁS†¤5AöM4\r“OƒušL< ˜0W30t æ`·IÌî)í+š”Õu GÂZkáO[ðã‘œ9’àU0Ðä›ZÝfvôf>X (®}ú•\\C3Ó\\Mvf8c¼ÛBá3Á_<Zh®ºQbz‡ 5-Ý\$9ð‘^ß´þÉLbˆÙbê6¦REizj¨ôH;иÇd/±åÌ\$îyâÆž|~õ—›ÀàJ€\nhصѧ/ OJÌTñçvú%³vi\$›üÞŠA2ïLÝos©\\³™a8—Tº®.»sü‘9€ªrŠH4Í&Á8f=?XˆÔõ€N9qMzFÐëÀÂb‡„:b‚ö,:àÑ›(Ä  (×H²–%¾…2سĂÚrRYh’Á|ï ");}elseif($_GET["file"]=="jush.js"){header("Content-Type: text/javascript; charset=utf-8");echo
  169. lzw_decompress('');}else{header("Content-Type: image/gif");switch($_GET["file"]){case"plus.gif":echo'';break;case"cross.gif":echo'';break;case"up.gif":echo'';break;case"down.gif":echo'';break;case"arrow.gif":echo'';break;}}exit;}if($_GET["script"]=="version"){$Bc=file_open_lock(get_temp_dir()."/adminer.version");if($Bc)file_write_unlock($Bc,serialize(array("signature"=>$_POST["signature"],"version"=>$_POST["version"])));exit;}global$b,$h,$n,$Hb,$Mb,$Ub,$o,$Ec,$Ic,$aa,$hd,$x,$ba,$yd,$ke,$Fe,$Rf,$Mc,$pg,$tg,$Ag,$Hg,$ca;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"];$aa=($_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");$E=array(0,preg_replace('~\?.*~','',$_SERVER["REQUEST_URI"]),"",$aa);if(version_compare(PHP_VERSION,'5.2.0')>=0)$E[]=true;call_user_func_array('session_set_cookie_params',$E);session_start();}remove_slashes(array(&$_GET,&$_POST,&$_COOKIE),$oc);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);$yd=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'=>'日本語','ka'=>'ქართული','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ếng Việt','zh'=>'简体中文','zh-tw'=>'繁體中文',);function
  170. get_lang(){global$ba;return$ba;}function
  171. lang($u,$ge=null){if(is_string($u)){$Ie=array_search($u,get_translations("en"));if($Ie!==false)$u=$Ie;}global$ba,$tg;$sg=($tg[$u]?$tg[$u]:$u);if(is_array($sg)){$Ie=($ge==1?0:($ba=='cs'||$ba=='sk'?($ge&&$ge<5?1:2):($ba=='fr'?(!$ge?0:1):($ba=='pl'?($ge%10>1&&$ge%10<5&&$ge/10%10!=1?1:2):($ba=='sl'?($ge%100==1?0:($ge%100==2?1:($ge%100==3||$ge%100==4?2:3))):($ba=='lt'?($ge%10==1&&$ge%100!=11?0:($ge%10>1&&$ge/10%10!=1?1:2)):($ba=='bs'||$ba=='ru'||$ba=='sr'||$ba=='uk'?($ge%10==1&&$ge%100!=11?0:($ge%10>1&&$ge%10<5&&$ge/10%10!=1?1:2)):1)))))));$sg=$sg[$Ie];}$ya=func_get_args();array_shift($ya);$_c=str_replace("%d","%s",$sg);if($_c!=$sg)$ya[0]=format_number($ge);return
  172. vsprintf($_c,$ya);}function
  173. switch_lang(){global$ba,$yd;echo"<form action='' method='post'>\n<div id='lang'>",lang(19).": ".html_select("lang",$yd,$ba,"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());}$ba="en";if(isset($yd[$_COOKIE["adminer_lang"]])){cookie("adminer_lang",$_COOKIE["adminer_lang"]);$ba=$_COOKIE["adminer_lang"];}elseif(isset($yd[$_SESSION["lang"]]))$ba=$_SESSION["lang"];else{$qa=array();preg_match_all('~([-a-z]+)(;q=([0-9.]+))?~',str_replace("_","-",strtolower($_SERVER["HTTP_ACCEPT_LANGUAGE"])),$Md,PREG_SET_ORDER);foreach($Md
  174. as$A)$qa[$A[1]]=(isset($A[3])?$A[3]:1);arsort($qa);foreach($qa
  175. as$y=>$Se){if(isset($yd[$y])){$ba=$y;break;}$y=preg_replace('~-.*~','',$y);if(!isset($qa[$y])&&isset($yd[$y])){$ba=$y;break;}}}$tg=$_SESSION["translations"];if($_SESSION["translations_version"]!=1250318134){$tg=array();$_SESSION["translations_version"]=1250318134;}function
  176. get_translations($xd){switch($xd){case"en":$g="A9D“yÔ@s:ÀGà¡(¸ffƒ‚Š¦ã ˆÙ:ÄS°Þa2 \"1¦..L'ƒI´êm‘#Çs,†KƒšOP#IÌ@%9¥i4Èo2ύÆó €Ë,9%ÀPÀb2£a¸àr\n2›NCÈ(Þr4™Í1C`(:Ebç9AÈi:‰&ã™”åy·ˆFó½ÐY‚ˆ\r´\n– 8ZÔS=\$Aœ †¤`Ñ=ËÜŒ²‚ž0Ê\nÒãdFé ŒÞn:Zΰ)­ãQ¦ÕÈmwÛø€ÝO¼êmfpQË΂‰†qœêaÊį±#q®–w7SŽX3” ‰œŠ˜o¢\n>Z—M„ziÃÄs;ÙÌ’‚„_Å:øõð#|@è46ƒÃ:¾\r-z| (j*œ¨Œ0¦:-hæé/̸ò8)+r^1/Л¾Î·,ºZÓˆKXÂ9,¢pÊ:>#Öã(Þ6ÅqCŠž´Iú|³©È¢,(y ¸, %b{K²ð³Âƒ’)BƒßŒŽPÞµ\rÒªü6¹’2šK‹pÊ;„ †\$#ò΁!,Û7Ã#Ì2¥A b„œøµ,N1\0S˜<ŽðÔ=ŽRZÛ#b×Ð(½%&…³LÌÚÔ£Ô2Òâè¸Ð‘£a Šr4³9)ÔÈ“1OAHÈ<ÄN)ËY\$ÉóÕWÊúØ%¸\$ К&‡B˜¦ cͬ<‹´ÈÚŒ’Í[K)¬Úâ\rƒÄÄïàÌ3\r‹[G@ŽLhå- è*ò*\rèÔÀ7(Úø:Œc’9ŒÃ¨ØLØXËÅ ÏY»+Z~­“;^_Õ!‚àøJù…Â롈M.ÍaŠÃ«:Ã/c°Ãv¤\"¦)̸Þ5ÈÁpAVµŒ¼\0’,é†NµÉ2Ýìƒàç‚`É@¨Åº©ðÍ?.@ Œ™bý…µÐ É\n‡‰ЀŒÁèD4Tã€æáx﹅ɼî¬ã8_#ê:)IÁxDoÌã†ã|Ò`p+²§ŽJ2ahíñäXv ”%JŒ*÷iòÄÈòyöÊÅmVØ:mÛ†åºn×vð9o[ä‹#ð!€ +/UœG£þ7¤,ÄÁžM/l¿0ÙŸÇiSÙâ¿*l9´O˜© C\r%êé6íÖ®9F‰Â33£–™iù-â_+ÿ¡ C˜Â\0criˆ4³3 `]¸sqŸý¤#üÐÏIë/äÔ\0ZH‚€\nI\$LÈ“\"PÍy¿|g5\$e ¤A©¤¥ÂbLÉ©(f,Ì4šØl (l0Ï‚FÏse/ñ”‡\\d¹ò\n\$4¨GŠZ[b·3Ä1†ò»ÉQ,%ÄÁ–†Ô8üì70P’œpÈOŠ{&°æ\nŸcÆZà—H ÀˆB ]É çWMÿšM™Q\$Šy­µ×dÿÈc#ÇŽB“ãÜeZ’ùVå¦\n„ð¦!àgÁHš°·(KŠB~Qà€Ÿx˜[ %9ÁÉÃóÈä•!±1¤ ÄhºvHá\$ŠM†v~Ba\$AFL‘„`©aº,O\\¼H´f®—‰~‡Ft˜²|±O!ÇEpä½MÅk7Ã*¹#‹Šr™¸fôZW&ì¿×¼¬TÝVӁ÷†isUëÍ,+ÜOÅ×?ÞðCB°É(ªÒÙ\$lÈ68Z^@i Ëô¼ ’pK¤SÛbAT*`Zé®.ç4”+š'Œà%°Ê€Rã A\$éb3N ½â&ŽLÁ}\\0¸£òSFhØ\nláÆ¥ l–¥ð°ròOµLe®ˆ<ª¿d¨ ¢†Í¤Ì:1—aKD‚§¥c£TŠˆ\n\ná 7“‚B*l0F€ÒõY8”‘5A ôš!‘z§‡A(­Zb]E.o|ÑU\no^¤A~_¥=R2è(ÂZ¼Vd´k8ìñ!´\0¸";break;case"ar":$g="ÙC¶P‚²†l*„\r”,&\nÙA¶í„ø(J.™„0Se\\¶\r…ŒbÙ@¶0´,\nQ,l)ÅÀ¦Âµ°¬†Aòéj_1CÐM…«e €¢S™\ng@ŸOgë¨ô’XÙDMë)˜°0Œ†cA¨Øn8Çe*y#au4¡ ´Ir*;rSÁUµdJ }‰ÎÑ*zªU@¦ŠX;ai1l(nóÕòýÃ[Óy™dÞu 'c(€ÜoF“±¤Øe3™Nb¦ êp2NšS¡ Ó³:LZúz¶PØ\\bæ¼uÄ.•[¶Q`u !Š­Jyµˆ&2¶(gTÍÔSÑšMÆxì5g5¸K®K¦Â¦àØ÷á—0Ê€(ª7\rm8î7(ä9\rã’f\"7NÂ9´£ ÞÙ4Ãx荶ã„ Žxæ;Á#\"ž¸¿…Š´¥2É°W\"J\nBŽê'hk ÀÅ«b¦Diâ\\@ªêÊp¬•êyf ­’9ŽÊÚV¨?‘TXW¡‰¡FÃÇ{â¹3)\"ªW9Ï|Á¨eRhU±¬Òªû1ÆÁPˆ>¨ê„\"o{ì\"7î^¥¶pL\n7OM*˜OÔÊ<7cpæ4ôRflN°SJ²‚›DÅ‹ï#Åô³ð‡Jrª ž>³J­ÓHsÞœ:îšã•ÊðÃUlK¦‰Ö,nÈR„*hý¡ª¬›ºÈ’,2 …B€ÌÃËd4àPH…á gj†)¥”›kR<ñ‘Jº\"É£\r/hùPš&ÒÓ¨RØ‘3ÂûÅ—K!TÕöRN•ó°Æ'ȍÏYI«²ƒËx:²[IÏl~È!U9H>ª}á=ëÌœßën2)vF<ê1êäQa@ ¢ht)Š`PÔ5ãhÚ‹ct0‹µúÚ[_Óz?rb\0Pä:\r€S<Ð #“J7ŒÃ0Øõ ¹4VÈJ•õT­U·ôX“È@P¨7µhÂ7!\0ëE£ÆÙc0ê6`Þ3½C˜XÚ[HÂ3Œ/PAÁ¶@Úõ­ØP9…*zN†–A\0†)ŠB2ª#é*ˆê¡uL†ÄÒaŒ*ô’„¿‹dLT¦Z +ëê3 ŽVšæ@êv2’Ư«g;±4Pf3Oíõ„ÉÍÐ6ö1Ñ´XÉàÂÐéÃ0z\r è8aÐ^Žÿ(\\0ùz¤ŒáxÊ7ð•\0:QŸ€D~MÓÔ3‡x˜±˜ %‚䝆ÀŒ*â…’–À]zX/J}V;u^®„&a5›°äjPò K!C‡\0ÒÓ‘Õzá¡ì½·º÷ß ã|¡Ýó¾—šúÓí}ï¹D>õ£Ax\")€ø\$†ÐàkÃkïõÿ§ÀAMèoYÖ'†ÖiCJ@Í™æ†àèSÏÙ>:â Ê’“ö×Lh¸EР±’L h4¡„1¿E¹®nˆÒ‡ ñ”IY„3Aä0Û›ƒrnÙ¼ HòoM¤r#a†\$‚\0Ç\n\"Pi !°9£ÔlŽKñn*¤•…\"uŒ¿Ïâ7k @Ô†€àçÑiû0d5ÖJ'2e1d (!¨×›_Ù´5¨Öã`VBhæÌß¡T/&Û°w™=¡Ž—ôWN^QE„«É´»Ž(,7®ÐëophÞÅ€ÜL h}ǃ|ÃDO\r!î‚ù\$M(c /ª—v(¿Hs½+bÊBBDèB¯ Å ¢”särÔŠºsÒŒ­#5^Iã4 O„Ì\$‘ ògÁ\0d\r+ Ó¡t ¢™¾6m88‡Sd…Ã2\r¯&=IځvBFf¡Ób£ÈlaVD6l\0ž¡ \"3U×,CFÔŠYEíHÆ\"ˆA ±8S¨’¤’ég+yÏ«+\$l \"ª[%Ñ R'^ZDâP·Ñ]o-³aÒ…\0 í( HÛ·gиbŸ`€)…˜4Ƶë„`¨,E0pq\r¸:qNˆÚ4ˆ)©Òl, ú¯XlX»5:~Ž´(6­aZÛJŒšò&ëúÚHÀ‹h³M6²XPò‚ëÜp¤Ì!‡@ä]A\r!Œ5¨Dõô›¦Ó\n'Å Ò›LY&aÉ׌…çû‚\n¡P#ÐpŸÞ…*=v¸)õín—ë… ‡¼[ײ:³ 9#sE±z׬PLA6ï^75ëiæ%I!Š#¥Ì–²›\$ Wt²…¸ GU**ÐDBÒ捑M\\Ïä» ¾Ã†Ô„Ph\nÆo¡ý“BŠJg\n[.jÅ̧GËíÈ\\xq8ߢç !ç ¦¾:Ì„˜§ÅvXX—(¢—Q‘k‚ÚF\"®×…^`\nº&˜'5D¯”M°Ä¶É€ ";break;case"bg":$g="ÐP´\r›EÑ@4°!Aw h Z(&‚Ô~\n‹†faÌÐNÅ`Ñ‚þDˆ…4ÐÕü\"Ð]4\r;Ae2”­a°µ€¢„œ.aÂèúrpº’@דˆ|.W.X4òå«FPµ”Ìâ“Ø\$ªhRàsÉÜÊ}@¨Ð—pÙДæB¢4”sE²Î¢7fŠ&EŠ, Ói•X\n FC1 Ôl7còØMEo)_G×ÒèÎ_<‡GÓ­}†Íœ,k놊qPX”}F³+9¤¬7i†£ Zè´šiíQ¡³_a·–—ZŠË*¨n^¹ÉÕS¦Ü9¾ÿ£YŸVÚ¨~³]ÐX\\Ró‰6±õÔ}±jâ} ¬lê4v±ø=ˆè†3 ´\0ù@D |ܤ‰³[€’ª’^]#ðs.Õ3d\0*ÃXÜ7Žãp@2ŽCÞ9(‚ Â: #Â9Œ¡\0È7Œ£˜AŽˆèê8\\z8Fc˜ïŒ‹ŠŒä—m XúÂÉ4™ ;¦rÔ'HS†˜¹2Ë6A>馔6Ëÿ5 êܸ®kJ¾®&êªj½\"Kºüª°Ùß9‰{.äÎ-Ê^ä:‰*U?Š+*>SÁ3z>J&SKêŸ&©›ÞhR‰»’Ö&³:ŠãÉ’>I¬J–ªLãHƒH獑ªÜEq8ÝZVÑÕs[Œ£Àè2Ã˜Ò7Ø«Šùέj¶/ËhŠC¨ù?CÕ´KTÖQ ¡k¦hL¦X7&‰\n¯= ¨ÕpƒK*Âi¼Y-Šú±UËD02!­RÒ‰!-ùE_êÚ>ý#ð˜H…¡ g††¨ùD¾ \"±x´ \$Ò©SŽŠ£è :Úºw£Ð8°JóÊn¸6ú¼˜²Ð–@\"…£hÂ4ˆù<‰âKŸkB9¢i3Yðl¢¨/©Ä'%”Š–•ÑJª¯(2ì¥+n©ÁvÙŽ%úÒ\\Ë4ü’éšã^bÊíÈhR8th(Äæ怔 P¶®³Û躴Åç\0ÙÝ9““šJšs¾²cîõD6ƒ•˜'Ó̼ŸÍò²ebŽÚïiJÎäð¤ûÄ!øºT†©nÓ=ª8 “jÉKì¯>h§në!¬FãÉýÅ Ë‹÷ÊÞÎ8A¨4ËF­ëÖÿN¦i§Z¯uëÏeCv³:ä÷0'xí÷姃ðxx+¾“xé'Såy‹´ƒ÷Sê±*¼¸þ.ŸL‰ú\\ÊI˜‰!¤Å&ˆâh ˆj×|ð¦’%¥Û;Z:\n°è¹„:nÓÚMåA´§‹Š5hXïAF¨^ˆ;³\$æ`¢@ÐQ\n: Êä:¬`ÜÁ\0A ´4†äP“ÃÈXÁ‘\0xA\0hA”3ÐD tÌð^âÀ. 0\\ŠÃ8/X€½«°è±Ãp/@ú2¢øzÁà/ ùeôÊÙlk `ސñ`Ýa^ƒO›¾ò§Ö„\nÌ“rx¥—[ÿMîô‘'8ôNP[ù6dòDx“âlOŠ1N*Åx³áä>E‘‚1F•‚°Ö,hE¸:ªUÄqŽo-hLð«f?DøG–SätÙ{ÅPÆm<™³JBäâÖ]„ÅJÑ£ÉàbÅ\$ˆ-“†jŽé\r˜pTÛ•3ðUšAéP¹†ÇÖ@ ìð6\0čC‚(†aÈ6†UøC2ÃHø1†4rÃ0už¡°7†x{<ƒHt\r\0‚‰#Ug?A\0c‰q7Fp™Ì8g=0™iЙ]S04H\\¯9tÁ2Øø´sª”ï-â@P¤¨=þ¨”Îi\0(-À¤¼És@yZ;]A\rdCéßè oÀ9ìÏ(gŸÕM!#¥dŽÃz=£ô0;Ïçí&T¶j)|ã-¸ø“PQ1vç蔦xZB5«ñ 9¤J (}°¸8T†‘R8r_Ü4ÇDáàgŠÙØ Æa¨eIFѧ©Oæ)ã’B浯i –ZÓ÷@E]͐Ԗ]DzO0iÄÕ´x([i õØAW,ÖA•6¦¬ð¦'Ä¥Wy½+–¤©C˜¹*ž Ö5\nz\\@ôÒ…±{[.(óT2Òîj»(*å½2¢ûÊtuέÆ×S^CI\nìz–ÝïµVÄx/lÐxidžR|ží¥HNo[˜8\$a Ѿi§¢q %RÒ|(¥yRßGtˆIhÄÖ›%—_l  \naD&rèZÉ¡Æà€#Jt'Ù%å-)MWtÚNú_r®tÁ9û¼4«ï_öH§k}Û[…Ç ´\$Í‘aZ^QP}3dÇ“Íª·´Pms§vljŒ~«ízä,ŸKò4èK7Iƒ=˜šóÌQ¹9‹äVÉ—f\nš,½­¶°†äC`+/§L˜¯¾½.Ñ^(E:í&›£0=¡kJ©¤aÔÙ‰Í<Þ4³ƒHÄè¨TÀ´@9¦™YK4(@ã Eû”R†4PìW›q{œWæ­lÂÇ;¶k=u¦»Ùí»IÑziƒˆ2ú,–K®yçM-q¹ž©²|­¿‘ |L!îÆj<‹†Ø¢k¡üŽ÷}¬È'ú‰Ð\"×GígàEžpÁ^‡\rÆ8Êé~´²T—åŶd¤r­¶\rqÍ\$øð=þÊ…\nˆ»‹9·ãTûÍ›hŒzô&°TàÊih³t5þ<ãwe¢ÖÄ|Mó“Oõ³*B¥\"25ôÒµ—6bLQ¶œ Â¯s·Ñ‹h]Ü:ÐJEâ‹@Ù/6T鶮ûÚåqÆ2óŽ";break;case"bn":$g="àS)\nt ]\0_ˆ XD)L¨„@Ð4l5€ÁBQpÌÌ 9‚ \n¸ú\0‡€,¡ÈhªSEÀ0èb™a%‡. ÑH¶\0¬‡.bÓÅ2n‡‡DÒe*’D¦M¨ŠÉ,OJа„v§˜©”Ñ…\$:IK“Êg5U4¡Lœ Nd!u>Ï&¶ËÔöå„Òa\\­@'Jx¬ÉS¤Ñí4ÐP²D§±©êêzê¦.SÉõE<ùOS«éékbÊOÌafêhb\0§Bïðør¦ª)—öªå²QŒÁWð²ëE‹{K§ÔPP~Í9\\§ël*‹_W ãÞ7ôâɼê 4NÆQ¸Þ 8'cI°Êg2œÄO9Ôàd0<‡CA§ä: #ܺ¸%3–©5Š!n€nJµmk ”Åü©,qŸÁî«@á­‹œ(n+LÝ9ˆx£¡ÎkŠIÁÐ2ÁL\0I¡Î#Vܦì#`¬æ¬ž‡B›Ä4Ã:žÐ ª,X‘¶í2À§§Î,(_)ìã 7*¬\n£pÖóãp@2ŽCÞ9.¢#ó\0Œ#›È2\rï‹Ê7Ž‰ì8Móèá:Žc¼Þ2@LŠÚ ÜS6Ê\\4ÙGÊ‚\0Û/n:&Ú.Ht½·ļ/­”0˜¸2î´”ÉTgPEtÌ¥LÕ, L5HÁ§­ÄLŒ¶G«ãjß%±ŒÒR±t¹ºÈÁ-IÔ04=XK¶\$Gf·Jzº·R\$a`(„ªžçÙ+b0ÖȈÿ@/râùMóXÝv¼”íãNŒ£Ãô7cHß~Q(L¬\$±Œ>–Ä(]x€WË}ÁYT¶ºðW5 b£oôH¢*|NKÕ…DJ”ª®3 !ØþCmGêõh·e4“Ú5¶Z@£c%=kàHKCŽ-¹´9r/ˆóA l¦ ´mœ¢N)ò\"‘J:k^H¶[qŠñ#¯\n鑐 Û‘JW7D]ív¾c°­Êð‹É\0EïK «ërÜY)ù-d֐ö­Ñ™“ö4S—BVaŠ¸¥ÙgèrÜÐpKPP€dtN_…1ÊÙË8»2ƒoÖJ5hRgÚòSs•bUÏ”Ý £Ñô¸G+°&YM·¶ýs¶§ÑÍ\$\$ К&‡B˜¦pÚ cW´5 ª~ÃKìMѺh;¼mGÇ»8Ø:@SºïŒ#“È7ŒÃ0Ù& ´J£Ò²ÍHǝ\0%‚™†¸Ð¨Ï8m !¸<‚\0꿨c gÄ9†`ê\0l\rá&0X|Ô\r !œ0¤ÀA œÈmIÔý€æ\nTI[T\"œD`@˜RË\rE¸ƒzSK2¯R¢¸•¾Tféú/\n¥•\nhVš•8…tED@ÔÁnxÑ,§C™f^!Õ~¤Ð@C\$*\rɲ†5þ¿C\"l\0ð0žäè\"\rÐ:\0æx/ò Òþ‚o à¼2†à^ž˜t_Ò8é ~R`g€¼0ƒçômÔÛe6ìEÚ¼4TˆHqVBÝá<GZQàüˆÄÙ”ÀgŸAJ\$@ÆÔê~ƒ‘èPŠ93¥òKòQÎ:†ˆïcÜ}òA‡y !ã\\‰R.FÈÅõ#Wêÿàˆ¹à’Cî\r²4:I¹:»Áë?½IâCYä\r* 6@¨Öž«#-Ên\\Îù3%eåEÈ †bÛй«Ñhʤ¾lŒd^<„1É%þ¹íƒˆòÙƒ”ëgA„3Lý ¤ƒj&ªB˜h<Ì0ΰ@æTì\r!„65tŸ:Ž¡¥F,©¦ÀøŽÑÑ6gP(€ ´ÐÁ…¡LIJ¨Ö؁jj× €€'z)Ž!xc i²a?T YNkþ5ÑÙ2|Ï9é=g´÷†Vt t>Gù=§Ú‰ƒ½~Q&yÝÄ‚ðÅâÃ0¢†.\0ª4ü¡9òŽ¡ÍAÁ8Nšäú\rÁÂL æ¡T= ?¡Œ4OÒãØ ¤”äò0ÃÉO†Eu(šˆªäA] ZÉ­\"ThCv*Åa!‘EÔ‘\0†L ˜ÐÓW2Á!Ά-¨të.t-µ1„ TÈ\\ðC†¸€\nUÍÕ—Pü§’>N𠁥dúƒtõ?§Éùê|SèfMÁ¶3͈åhSPcƒIÚœØE|JÈJ% ÙAL/\0P áL*ì<^Ô\\ÄŲ¶ TCP£15&Âù!›ÁB_-êQå(³³@³U•c8íÌ¢ÎïaÆR·ÀìK”®ûéü Ó¤7È`AC¯L(„À@«à =‘Ô#J¯ÙÐi\nàœHaãN)˜¸Æ‚ÍŒ1!É@€<h‚¬‘=ŠìžWºüè@3³5(„ =K*ÐL½o»(S- wt3AζGE)]”h1h×6S(´. ­uz_>ÝâœæT¹\rÓZ#Nœñ§Ý2•5oûYWX^0\no°6¼\$Ck~:‡j‰ëÄñž¤3@Ùö]B6a\r±‘>Û8LB F áyFëö“K®°RÉK-‚î5§h՝Ͱ…B4”¹º:VÈèS¶ìVñ@¬nøÜÓj3‡|_-÷¥¶®)õ„ܳ\\Ü¢u-ãT*üòÖÅ42Æݧµj–ºmZY¶Øö QÒáåñI„±'IóÝOwÇ] Ð†¶â:¿Dk&(¢ŠˆŠV‚U¤`L®‘t\nÀƪ §̪΃joNéÌui\r&X®IffÔ,½ÛrH‘·üÍo.2ƒ.JŠµœ^/øãÙ7x´d’Ou¯Ü¤Â¥c§ÍÔQ…*</·©í7· (Ž7X«.*^¹È,-_©ñ3oåû§z¡ÈÄšñ}ãÑ‹ÇHÒš¤˜\0";break;case"bs":$g="D0ˆ\r†‘Ìèe‚šLçS‘¸Ò? EÃ34S6MƨAÂt7ÁÍpˆtp@u9œ ¦Ãx¸N0šŽÆV\"d7žŽÆódpÝ™À؈ÓLüAH¡a)Ì….€RL¦¸ ºp7Áæ£L¸X\n FC1 Ôl7AG‘„ôn7‚ç(UÂlŒ§¡ÐÂb•˜eÄ“Ñ´Ó>4‚Š¦Ó)Òy½ˆFYÁÛ\n,›Î¢A†f ¸-†“±¤Øe3™NwÓ|œáH„\r]øŧ—Ì43®XÕÝ£w³ÏA!“D‰–6eào7ÜY>9Ž‚àqÃ\$ÑÐÝiMÆpVÅtb¨q\$«Ù¤Ö\n%Üö‡LITÜk¸ÍÂ)È乪úþ0ŽhèÞÕ4 \n\n:Ž\nÀä:4P æ;®c\"\\&§ƒHÚ\ro’ 4 á¸xÈÐ@‹ó,ª\nl©E‰šjÑ+)¸—\nŠš øCÈr†5 ¢°Ò¯/û~¨Ž°Ú;.ˆã¼®Èjâ&²f)|0B8Ê7±ƒ¤›,¢þÓÅ­Zæþ'íº¦Ä£”Êþ8Ü9#|æ— › *²f!\"Ò81âè9ÇÄl:âÉâbr¢ª€P¡/²ÀP¨¶J3F53ÒÀœ7²È,UF„±8ĘŽ€MBTcRýSTU%9,#ÀR¬¨\\u¸b—QìjÚ3ËLÖŒã\"9G.nbc,­¨pÇ,#XÆÃË \"þþ±\"(ØFJü ã\"_%ƒµº%ƒÓ(\rïJî®\"1<:ʼn]¸¬[ÊZ®¬£+ð]VFƒ•è„^ÖéCŽlÚ°í#ã-ÿSÞw­·ƒD)6~¥ Pæ0ÜB@ ¢ht)Š`PÉ \r£h\\-9hò.°cÕ®ºFŠBF\r’ó0Í 'ŒÃ2«7/êf9\\53I\ríhڍ)<æ:ŒcT9ŒÃ¨Ø\rã:Š9…‹è娌6Šâ¿u; 7¨8P9…)pœ2²Ò³¼‚b˜¤#C‘5¹Gߌ;)_k‚v ˘Ú:¥ÂªR2½*4ML2ÑÃ:ûµ|LÜ”(£8@ Œ›[û°Œs´èîÍÁâ42c0z\r è8aÐ^ŽýÈ]ŽtC\\¹Œá{œ§ ûé;á}â£üèxŒ!ò\\+ 7r\nÕZ‘=\rhÎÃK¹8G Nc\"lRþÂ#œ'\n΀ÒÉÂÁTÎu½cÙö½¿r;÷}\nŠ]ørx/ 2§œ@\") ø\$†ÐàiÌ`n=è¦ôº1¬\r<‘œT Jƒ“O*ÐI —6‰Ck]¤ÕB°‘é\rfm™=tèG± !ãŸ°îišÙ€4GõÍÄNC1MÌ%ªµv²ÖÉc^‡È€4ÐÐBÙŒøãè]Ù./Eðœ€Â£Bs‚#Çî Âøb•ÈtU\n (tL€‘a%@Ä¢\\Ó±V‡Žv\r3JiÍJò.aÐÕ›D„ ¹,æQ¹7Gª/Žò'Dñ‡)(®Ïäq%0íퟳe)Cƒm}/¬9\"pîlÃU0ÁØªƒcâØa%u^´óÒsžÔŒéѧ†Âª4v“dô瘪V é‚`¡³zw•\"kŒ'”Š‡–xJ'.A†äNl¤q“!ÔÕ!\0ÌÐÛ w±Z`2Xb´Ž\r–^2‚{ˆ P áL*3Xð·ÁmD\$x‚Â\"¸ˆa|x8¤\r#\"lªˆBLEÀƒ7Ð܈Q ‡iÔ«wÞTÏ¡ŸEÌìͬóöƒ cgª …\0¦Bcˆ4Ôd4Œ#©Dèi!@â'ƒ×MÜ©òIƒHz<鈟ÔÓ<‹*…pG>ª‘zœ›É4£—õuSœ€íV!ÒV!¼&Y ë gµ¨º,Ö[Ôù\$Ò^µ¬Ö2Òðlot÷\"€AFŽåBÖ¨cœã\0PF§pl”!„Ù¨TÀ´&‡K8.TïÂ`Ívì˜z'~ˆÍÚi1UXðUö”™Úv2ÜàÜ*(䨳0ʆͱ+§”“ã çÙ\rP¬ï´š8blm[1'ÅAŸK^᥼«DøÍ©Ê2“L¥Š+¦(¡¢2†ÃRí4¿(ЫyQPa\rµyf¥†/FÔÀ\nilÉ]†rG׍ý –ÄÊeV«2<äh¸„Ja[\rù„'aèÅa5ί¤¼.ŽáÒ™»‚FZz’Zäd#(«ÀPA®˜@¾†à";break;case"ca":$g="E9j˜€æe3NCðP”\\33AD“iÀÞs9šLFÃ(€Âd5MÇC È@e6 Æ“¡àÊr‰†´Òdš`gƒI¶hp—›L§9¡’Q*–K¤Ì5LŒ œÈS,¦W-—ˆ\rÆù<òe4ž&\"ÀPÀb2£a¸àr\n1e€£yÈÒg4›Œ&ÀQ:¸h4ˆ\rC„à ’M†¡’Xa‰› ç+âûÀàÄ\\>RñÊLK&ó®ÂvŽÖÄ ±ØÓ3ÐñéÂptŽ0Y\$lË1\"Pò ƒ„ådøé\$ŒÄš`o9>UÃ^yÅ==äÎ\n)ínÔ+ OoŸŠ§M|°õ*›u³¹ºNr9]xé† ƒ{d­Žˆ3j‹P(àÿcºê2&\"›: £ƒ:…\0êö\rrh‘(¨ê8‚Œ£ÃpÉ\r#{\$¨j¢¬¤«#Ri*ú˜ˆhû´¡B Ò8BDƒªJ4²ãhÄÊn{øè°K« !/28,\$£Ã #Œ¯@Ê:.Îj0·Ñ`@º¤ëÔʨÌé4ÙÄèÌU¦Pê¿&ˆ®bë\$À ç#.ÀP‡Ló´<²HÜ4ŒcJhÅ Ê2a–o\$4ҍZ‚0ÎÐèË´©@Ê¡9Á(È CËpÔÕEU1ⶁ¨^u¸cA%ì(š20؃ŽÃzR6\rƒxÆ ã’Œ½&FZ›SâÇFÒ”²9kÅ6…ü µ\r·0e•e¸ P‚Œ¨«qu\$ 9B(Ü×2˜NÍ;WÄ VŒk«)q £ÉsQp}0oµûG_õ>pH5 9\\·<è’²@ ¢ht)Š`PÈ2ãhÚ‹c\\0‹¶Ö y¯Pu&“\0Ñ´©*:7ŒÃ4;NÂ){]\0ŽNz‡€Ôî È\nƒz¸Ÿ\rÃÌ4ɶ½\$31A’¼2PÌÁ« #8¼¸ÏµZ›\rÐØÊaJc¨nÐ@!Šb´ŽÈ;ˆåšÆw½“(ã2ê6±R;¥ÅTêyLâl¦Ÿ¹á£Z Å\$У¼#&Ø—Ã:b2£\$Áâh42ƒ0z\r è8aÐ^ŽýÈ\\ôi‚ê3…îÐ_\0¯OdT„A÷ˆþ;Áà^0‡ÉŠgH£ÁfÓ+£€Ò9?›ëÂm4gÓº» ¯óp“AhÄg{>ØËÀuL[×ö=ŸkÛ÷#¿vè‹É/Îýà†ç‚‰ŽÒr€Àˆ¨ƒâ(…•žyÏA3#tÕ8tja…ºœd¦Ôé#Gì,:PÏa 0%\09¡PACb~HOR'@¨èa`Ëts^JC…Žp¡*pŸZkDa®,pÞØ!é,\r\"`ÂPŒÙ”Yç°½§DraÓ„ zÆ\\Á“a¡š#+©ÅnP \rè!'”b\n\n\nˆ)@Ô‹(³|Ž‹=¸3›3VkMy~f¬º‡B\nJÐo@¥íd‡wæŽ\"ÑÚQ±u¾7âo\r¡Á”8Äš4Èëh7R¤7\$ƒz§æ\0001Å2lÝŠ¨71T¡C~xÙ4A‹–rRVÒT¢'B€žØfaHª-\n(1™EHIa1 \$D<šHö©Ð\"‘\rÐdÝ‚) ˆ *?39лب݃É?æêH ³bô‘8ŽÀ€(ð¦2”>ÄøŒ@Î÷ .Iù‡S•§Ñ²+…æjÁF£Ê+ò‡aÙ™´TJÈKÜ[\\¨š)¼aO±µY\$|*‚î˜Q … Žð0TŽ*qS“ԁf(fjD9‚a0 Ò5‹Q¯uE5ÐŒÁ#Ìa!ä jzžª&hé’òIUêqšô–¤˜0IY…b3‹FÃá5¬õ¤þOVItÆÈ‘7tÀ\\ñQ”¶¾ÑÅ’û\nÈm®j0’‚Õ’LB4‰&¨QÄÒ¨TÀ´&–c¤%[:\$VF×UZg‘ª`7ì.`Ÿj}ik]¨4mZGª™H:Ûf„•¯CbßEs,™¥¨¶¨a‹f‰5ù˜óÔ‡õM;K 0Œ1NŸnm#SDšÅêèIƒ è@¶ý ßK,T¢6æ@&^{@w‹Záp=Ä{\$‘\"ÜŠÅUô›iÈE©2Š±SÛ+T“B›7‘A,• CÅ?Q6‘™\0†¯J+7M-xÙ[ôx VE¯S˜Ahh+h:\0";break;case"cs":$g="O8Œ'c!Ô~\n‹†faÌN2œ\ræC 2i6á¦Q¸Âh90Ô'Hi¼êb7œ…À¢i„ði6ȍ†æ´A;͆Y¢„@v2›\r&³yÎHs“JGQª8%9¥e:L¦:e2ËèÇZt¬@\n FC1 Ôl7APèÉ4TÚتù;j\nb¯dWeH€èa1M†³Ì¬«šN€¢´eŠ¾Å^/Jà‚-{ÂJâpßlPÌDÜÒle2bçc èu:F¯ø×\rŽÈbÊ»ŒP€Ã77šàLDn¯[?j1F¤»7ã÷»ó¶òI61T7r©¬Ù{‘FÁE3i„õ­¼Ç“^0òbbâ©îp@c4{Ì2²&·\0¶£ƒr\"‰¢JZœ\r(挥b€ä¢¦£k€:ºCPèŽ)Ëz˜=\n Ü1µc(Ö*\nšª99*Ó^®¯ÀÊ:4ƒÐÆ2¹î“Y ƒ˜Öa¯£ ò8 QˆF&°XÂ?­|\$߸ƒ\n!\r)èäÓ<i©ŠRB8Ê7±xä4Æ‚ÐÂ5¢¥ô/jºPà'#dάÂãpô§Í0×¼c+è0²ŠÔ¶#”jÈFê\$AHÈ(\"ÃHÐï”#›z9Æ‚ äÖ;ëèáFÑé´ž.âsVð¢MÄÈ„ \0Ä0ÂÀHKTÕp°óWV`蹁CÜ7PÁpHXA‹ÝGµ@Ö2DIÐÒ;O(°Ã@Bb`Ȉ#\\f÷›Ð\"…¯*0 ö`暍m\rF-@ÚÒ1weÐ7¿7%Ít±bò6‘\rÑ%R2Ü#\n07ÐØ<ß·¾†UîN\nŒ0¸Mö_Ð^\0b8%Äì•é\\.bô8 ¢ht)Š`PÈ\r¡p¶9fƒ»n[λüMÔ”£3Ã0Ì¡@J˜ËKè÷µ;H²7‘Z¡;A\0Û]Ò\$5Ž£šç~¦ôå!O´Á`@=kü>\\6ßâ#l¢Ø6ÀN¨'ڝé«8:η«kÔñCP»ɬÌíŽÇ]ŽÛ^©mñö¹:Žíª¸.÷®¢ú^Àšð[/ ´qVÛƳHðš»8Öž¦)ÁpArŒ®Òw3ŒÉHÚÁSÄϵ%w/5¿´É¼14”z4;8 »)¬?‰« ±·è”(ܦ¡\0‚2mЗ±ú@2ŒÁèD4ƒ¥ºáxï÷…ÖŸ»£…ÉHÎŒc˜^2\rèðè_è/@ùM‘pæ\r\"  ð†|GN Ã¤ä54`椟é?GáÉO®–ÅTré;IJ<d +P“iq(5Ó”RH£È¦rˆ%#A¢OØ |( 9>GÌúPs}¹ø?\$¢ý³øIÀžA€Ý\0Š€> !´8´º‘Z9©\"ò&S\nƒb0 2*šÒ0FŠ12 °Z'BeÞiKƒRk/d1A\"HN Ò \$­l£5TVd&( 0\0@0ÅÔ4‡h¸!(@ðÜ!¨\\5:†Üæ! '1¡Ó!ÅÑ\rA¤•—’÷Pxz;IYv¥B ñ_á[ÄÇÊtxØÎ\0d@§Ô€@@P¦UŠÒ-\$AAP(5F‘ ԨŠÅDdg‘€Êåä‘Ä¥[Šô\$€ž,x'jíÒÆPéd|\"“f²N“i(£Z‹xêe ÒæcÈäu¡Ñ±O‚šGaç\"’5(’8—S™%l)Ì\"\$qaå%æp™½™Ä¨I¢ܝWdƒ°y„dp€Ât\$žƒyU!©³' DŒzÓ hˆ«‘\$ŒP¥ÃÛ~d ±ôFkÜ1F\$3E¬=@í1мÌ+¡È“â€`ÏP áL*(_èüWSéž«›ôìÚ)\r#AM]šô:ÿC0i áÔáˆÙ`aèkô…4°¬PQÛ©\naD&RNU§°¯Ÿ œEGho €#I„oÉ‚6(Þ±¶28¥AKA¤èè‹äȪ—Ù¿g”=0ö¢ìᏳáŠÐ›êäC BS@YµLJ… ]\$üÜËOC\rYB4F‘€±J(SÛ1bÌ-~UžhÍ+U7ä±VÆ.uÃ4¬ré–Ò=`IXCÈ6³¼Pî…„z´tVœBˆØ«“G–çá¦põÃqŠDÕý;µÎM§Ñ\$yˆìY¿ÀìÀÈU\nƒŠ¾Á‘›–ÑÅÝK¾ÂS ÂAÊÉ°ü+w“åÖbøF*a<4nãcÄ€‡ 2(£HÌ’¤+tã›3Ö\0PZ¿EJK+ cÑ^¡ÔÄc\"Èå÷¸†¿#Ç ÕKxoGÈM\n¦r&™æD Y:¢?PÙÑÙ;dÚ®ü¾H±9â\nw€*zlNË°­A  Á\"Y¨DJ ËT³(ˆ•¦}3\n͈¼àÈÕÀOOt@¸\0 –F\\BßHE=(ƒÊȪõXÿŒmT øAPÀctŽ1DÁ˜W§%Szƒ€";break;case"da":$g="E9 ‡QÌÒk5™NCðP”\\33AAD³©¸ÜeAá\"©ÀØo0™#cI°\\\n&˜MpciÔÚ :IM’¤ŽJs:0×#‘”ØsŒB„S™\nNF’™MÂ,¬Ó8…P£FY8€0Œ†cA¨Øn8‚Ž†óh(Þr4™Í&ã °I7éS Š|l…IÊFS%¦o7l51Ór¥œ°‹È(‰6˜n7ˆ ôé13š/”)‰°@a:0˜ì\n•º]—ƒtœŽe²ëåæó8€Íg:`ð¢ íöåh¸‚¶B\r¤gºÐ›°•ÀÛ)Þ0Å3Ëh\n!Ž¦pQTÜk7Îô¸WXå'\"h.¦Þe9ˆ<:œtá¸=‡3½œÈ“».Ø@;)CbÒœ)ŠXˆ¤bDŸ¡MBˆ£©*ZHÀ¾ 8¦:'«ˆÊì;Møè<Ž øœ—9ã“Ð\rî#j˜ŒŽÂÖÂEBpÊ:Ñ Ö欑ºÐÇ)ëªð¡¾+<!#\n#ˆ€ÉC(ðšÈ0ß(¤âbžšÅKÛ|…-näß­ƒ°Ü‰éü Ž*׊S\"‹Í\n>µLbpòжº2î2!,ù?&£˜5 R.5A l„ @ P¦;ƒ@쳎k#4ŸºmÂÿ+\r£K \$2C\$ àŠÌ Øî¡k\"’B0åDŠ•2|\nËàÐ Κ•ÐJefÏ( èP3ã`0¦è-‡eÑC¨\$ К&‡B˜¦ z^-˜e-Ës”¢íyW6£#Ô\rà,è Âҍã0ÍUª”²ESKj:Æ\" ßÍãÊ9(Ž£Æøc0êÏNkXæ&–0Œö‚–µ¨såJ7©¨P9…)8ª3#c|Јb˜¤#«¥…¡^7MvLøÛŽN{[48°\\»,e¨*\r ’VÛHê ¸„É‘¡XÀÇ) É !\0ОŒÁèD42ã€æáxï·…É°ó¬ã8^¥ã\$¦Ð\r2˜^ÛÒؘ®!à^0‡ÐÖ!¾Î\nb‚\r‰ÒìÐç8Ž7@Ã<5£,BN”ªZ5Ì£+ýñÈåUÉFápA°l[&Í´›VÙ·n’ּݻÉêT¥ß„J |\$¨ó`¥K7„zÆ‘jcã 3íΝ4©Cè,—™Å~\nû?˜Ö¶Àq¢09ò%/PΤúb00ŒiŒ¦é”úF@9éñ¥‡Î؃b†Ñ?Ðè š ¡„ç‚\0Æo^`i-¡Ì“—ꃰiAå\0×6Œõ«^'èË™°@@P¬Â2„\n\n )u&uíŠd<æWèCJd]ü¥Ò`‹N¨i„%à¹'ÃîÉ>'ÌÏš³Ä_S,eÅø'3ŒŸy!Íž!ãΟ±¥)æ|‚Ÿ¦q ‰-aÁ’Ÿ“öC’|á 4†8 ©LÉ¡.ÑÆ ¤¿IIN%¤¼ÉG؉ðtL& 7°Õ¡¢Õ9„hP™o\"!åz(D|ƒyôXpF5“ÐâO¡ ÇX—µfçJXc#ç¶Ƴô\\œù*>!@'…0¨@S©’¤*K™µ–Ó\r(A´Ñ†rD‚ˆŠî‘Å0Õ”%0AIÉ;'¨A¤GF”É gªÝý'ÐAYK#¤|”–N0S\n!0 Ô\0F\nA—’¨žés–m„ &\0R‰8E\r¤]<àÉªÔ¢TRe ´ThÕ ©6‹¾IÖ*y€ –‡\"²ÖjÆ\"ä8RÀÓKh\nhp6°ÖƒYù\\¯AŠhò^«Ù4Pø2P–†R\ra}fz¢Æ @B F Ô2†s¾™Rí(O†(SÇRh<P¤ 1bÖC@J•iKä%™\"3Yª*¯#8ÕÀ0Ä1¤CᘶÍrD‹Ù3¥üÞ—äT—Íá|±ÀµUÔ±IM#\\‹Šª_`ér\"˜ø¢›6»Ëƒ«´‡B!öºsA>#ôú¯@ÓÙ¼1d&˜Ö⊂±m æ%‘ôÆI\\O0Ï\"å ¿6›\rH¯…Ü¿…Bê®Â”õEVÁH@";break;case"de":$g="S4›Œ‚”@s4˜ÍSü% ÌÐpQ ß\n6L†Sp€ìoŽ‘ 'C)¤@f2š\r†s)Î0a–…À¢i„ði6˜M‚ddêb’\$RCIœäÃ[0ÓðcIÌè œÈS:–y7§a”ót\$Ðt™ˆCˆÈf4†ãÈ(Øe†‰ç*,t\n%ÉMÐb¡„Äe6[æ@¢”Âr¿šd†àQfa¯&7‹Ôªn9°Ô‡CÑ–g/ÑÁ¯* )aRA`€êm+G;æ=DYÐë:¦ÖŽQÌùÂK\n†c\n|j÷']ä²C‚ÿ‡ÄâÁ\\¾<,å:ô\rÙ¨U;IzÈd£¾g#‡7%ÿ_,äaäa#‡\\ç„Î\n£pÖ7\rãº:†Cxäª\$kðÂÚ6#zZ@Šxæ:Ž„§Žxæ;ÁC\"f!1J *Ž£nªªÅ.2:¨ºÏÛ8âQZ®¦ŽŽ,…\$ ˜´î£0èí0£søÎŽHØÌ€ÇKäZõ‹C\nTõ¨m{žÇìS€³C' ¬ã¤9\r`PŽ2ãlº ±ªš¿-ê€æAIàÝ8 Ñ„ë £Ã„\$šf&GXŠÙSõ#Frð¡Dè ƒx΀TxçÃh;Úï1“\0ê†(I89¤cҁˆCÊH„µe\\–CPÂ/tÀHÁ i^†.Øêä1‹øØ­ J*å\$¯lc\n£#ÈÜÿˆ-èҐFµ2:Ψ­\">Æ¡jj4€P­l0££†3 ÀP‚7\r Õ§6ˆ#\\4!-3X„\rƝ¯Éeï|¬‚ 7\$瀥¨V™SõI‰@t&‰¡Ð¦)K\0Ú cVD5 ¶ËÝŽ°û5)±ƒeÔí«H:÷eŽ½³è`ì¸Þ³P؍±‚Ót;+SŠ3\réXØ7­.7¢² ¹pAHh0áÙ(cHÐBh\n ‰¨ øƒ@ˆRx€§#`\\èHöŠƒhúHϥ鴲¨êv«k\n¶7ë®;°N{ù²Ñ&Ò4mcvÚ™ˆb˜¤# ß}9ã;#—(¼Jƒ6H0\r£ª3\$ÛIãèþ7w¶1ßIžzÀ ÷]¤%n½@C+Z2CÈ&b ŒƒjR&2:žÑ/é@ -\rÖ„Jøè8aÐ^Žÿ\\yKÜ áz7õ\$ ®7á|î M ïr\rƒ\\Ó5\rÁx Ã>fõi‡7ˆ¨Î« 'Ä 7Õ’Ö]q{v…É;„hH“™5<ÁÈ©¥8¤8v\$²œG¦õCC×{)\rî=çÀøŸ#Ë|áÉô¾´úŸß{ñ* ø\$†Ðà[ßâ9kÁ¹ÿÀŒéŠ0 ©„4ò6kR²8ÁÈœ¬ÒžnA9X„Í\0BœdVg\$æDê…\0hS%ª\0ÌE–RÂÖ³D+d½0¨BÍØcG\$€è¿„b\"›HŠ”†Ìu:à q¬3: @ÒÚ|}ŽBIePš\0c8m“¥eZýGHÅÃüi N'K­ÊölU!á‹ÁÐÈ™ÆO£@E”gNS/2:\n\nˆ)„%8 £DýLC\$î=Ä¢dth…¼–44¤œJsB¦ìÀ Y ›ŸG\$°.ö|FÁhI\rҜǵ›ŽñLajxüÂ;%anÁ©µ\"@úømO(3•øÿ>ae&y7brMÛk®'Å\0ƒ.ðô”‰Ú) XDdKør^åѬ½'žS™ ^\"Ø…˜0®G;1t¨Aw†cï9\n高¤uä>W˜KHáy掐r0VŠS_¦F̃F©JL€O\naP™vdt\"ÁF\rå)«—rŽJ‰#”r’RÓ¥gpÒ³T“¿å¥ð6*4ÉK áÔûÎã>ÌCYH\rË5ȐjµRH Q •USh§F P4\$\\•£HxHÄ°sØF åZá >Cu„Á™uPg|#`‚…îX2§U6¥\$Ø`ʼ‘M°´Ê¥{TÝ&pe=!žØ/À‚¤ƒI¦'eýu3XåPla-c»@@nM…;ñ!:æI\$øDf(ÙÔ©°@B F àÒÄäu 3_–îÔ[ëkhf¼BRM¾ù­£2fÌí´hâÑ•·lÊC½–T¾¬dâJ S%æLaˆGêwÀQ~<Ët\0£RFgqë:æ\"î(´X«ˆ Pˆ\në¥kµ‰%*(©‰Îï’ÒgáJ¥däe )K,våánbD‘3ÐÂN¡, Et9ª¼ulŒãÉæ`Í#5ÜÊI`wel¹6ÝB@¡ƒÅù´€*æ(†°ŽDùs&ØÁ\0¬` }±Ê˜6¯À^\0";break;case"el":$g="ÎJ³•ìô=ÎZˆ &rÍœ¿g¡Yè{=; EÃ30€æ\ng%! åè‚F¯’3–,åÌ™i”¬`Ìôd’L½•I¥s…«9e'…A×ó¨›='‡‹¤\nH|™xÎVÃeH56Ï@TБ:ºhΧÏg;B¥=\\EPTD\r‘d‡.g2©MF2AÙV2iì¢q+–‰Nd*S:™d™[h÷Ú²ÒG%ˆÖÊÊ..YJ¥ #!˜Ðj6Ž2Ö>h\n¬QQ34dÎ%Y_Èìý\\RkÉ_®šU¬[\n•ÉOWÕx¤:ñ XÈ +˜\\­g´©+¶[JæÞyžó\"ŠÝô‚Eb“w1uXK;rÒÊàh›ÔÞs3ŠD6%ü±œ®…ï`þY”J¶F((zlܦ&sÒÂ’/¡œ´•Ð2®‰/%ºA¶[ï7°œ[¤ÏJXë¦ ÃÄ‘®KÚº‘¸m늕!iBdABpT 20Œ:º%±#š†ºq\\¾5)ªÂ”¢*@I¡‰âªÀ\$Ф·‘¬6ï>Îr¸™ϼŽgfyª/.JŒ®?ˆ*ÃXÜ7Žãp@2ŽCÞ9)B Â: #Â9Œ¡\0È7Œ£˜A5Žˆðê8\n8Oc˜ï9ŒŒ)A\"‰\\=.‘ÈQ®èZ䧾P侪Ú*¨Šô\0ª¹‹\\Nž—J«(ì*k[°ëbÜÆ(lŠ²Ê1Q#\nM)Æ¥™äl–Ìh¤ÊªÂFtŠ.KM@\$ºË@Jyn”ÅѼ™/Jîò`•¼ð3N¡•Š¶B¡òÛzö,/ƒƒHç<“ëNsxÝ~_ÔŒ£Àè2Ã˜Ò7á¬)6Tª¼`€8&tR®8Ø«ñ‹¦«Úg6vv+h“N…ÓXµ¸¹Gd¥,s{3Ä⾜SðÚM—‘¹Š¯š«4Lž¡Î}*gË.J2ó…:^›§Ð)þ–5\rjŽ\\A j„žÀÂp)lûÚ\\\$É'jª F©k£†¹ªý½µ\$\rm©x  ®9%NS\$¹p|¡hÚ0#dcU\$Â̧¹&v_x'úž§ª+ÿŠ ª¹-jC/Æ\r•NYt|+²j:gMÅñ½VgÖp¼-;0¤ŠRg/Ò©Rg!ѝ‰“~2DJ\$ùn¬¥à^-¤iï¬.ðJϳÏ\"\\‘±Ï¯8˜C`è9\$“ª…Ê=\n¾]Oú-g©Æeµ;·dK|JŸÜÇÜù ¯Ôó3ô¦Æ\nÉ;CnÍW:ʼnÑ)7¯h×+¶(n\nññ*Šý ˜ U #÷B\$X=óêiYʳ{ÌhºXußzÿtpLÖ; `[ºz%™%*èÊÑ‘2ÇXÔÁ¢  L7¦â³æf†á\$&AÐ¥ŠžS‡¡yùÉ×’+ *YV\$Hø£tŠII-aL)`\\ÎÏ! Kª™h¡ M\nã”\$Ñ\\”ÆUÄ-\\ô² ¢ï-ȸ¥@ÐSJ‚ Ì:°àÜÁ\0A ´4†äá CaÁ‘8\0xA\0hA”3ÐD tÌð^åÀ. 2nN§\0\\œÃ8/a€½?°0èÃÃp/@úb§y:Áà/ ø‰tA Ié/6Ą̊äS [bWAÄ­LMxX¢¦…‘`ˆˆf}‘I&,Œ¥e7² «™IìeqàAFùO*e\\­•òÆYËYo.eÜœ“ÉÒ`L)’ÂX[\r™(Áæú’‘Z¡>¥ÉgŸ¹£4Ð\nÈXú¾¶ Š’%=Åí·d+ ”†fçÙP)\"¸w\nÉÙ¥oÀÝ\$Ãq\n•>Ð6Ò\$8¯U?\rìáÔr 61\\9‚9Þ€©ŸCc˜ì@wêC} ÂI‡ ÚZ`a Ì,9(`ÆÔs ÁÕÔ†ÀÞäí]\r!Ð4\nøŸWÝgŽUÊ@Ý1ÃlfÙ›X.IŽ9~&Lü«R@± YO\\(±U ZB}I êu½‹fíOâ\\ˆ\$kºÊ+K>@P\0 Á—¾x\nCWG+¤•–“¸^YÈ·)A\rˆIêµ3ëðoÀ9ìãC(g­-E(%ô Ãz…±5Ø;Öƒ~UÌä¤eü“\$Jàâ©‘ õ-*ÈÐÐœíוÍFW\0A^ký÷\rÁÀ:¨µ£Ã“Lá 4†:û'<°i©öü†0Ã%C)…¦HîBîÚ•9Q.,U\"Ú£˜VȤ4HTÿ©C쵈¨!VHÇ·zI”™‰7eÒr¢Åàpèì1±m”’È\$@~ã’,GôÖ :`\\z³„Ó#I™yBçòF•×1GÜ/Q÷¤0Àž¸RPc…Š’@NäÉÛx\nÿ`y{\n<)…HÞÍI9ÔÊè–Sš¤UÔÞ#,EÍãhYŽHJÐ@dñsÑ–Š+=Å1+r@͏ž!É–òC‚zOÕ™WY¥S´C&èÌA•-à€)…™†J ‰*[)ƇɎMGEæ˜ãôûòZ«(O}ýšWû£*TÕ~\r+´Œµ_ÛF²‰eo›Í„Hö#Gi/ÁÌ­²‹U NÍ!?Ol¤°}á‘Ù!gà£í›¿ n’…V E¶™´æÒ>ðÚÈ•=ÒH÷\\ CÄ•©o\r½±Žäý\$\nL¹[÷¼ß8laŒ6`P×—=*U…—>—çy4ÄTù¡Z8~O\"¸*Æ& …{JƒG:UÓ¥Õ>¶¾AD¡Ý³ ª0-(4Ë*v³.³m•\r»¥Ïé»óè[‘ sRvaNý.1–è—\"…±é@{gÕb´“ŒÜ¨¤+”k™Åh)±ºŒé„9r©¡[E®\"Ä‚ *€ÇKÊ.:dSš³š…Çó›n~‘8…ª UÝ–çx9›‹\"n1Æû'î:i÷ñ›=Å (¦´­š´mÉ50w'C³,Ïxý! íCÎ%è\$Ö±#ËÐ1dº‹§zÄÕ«Ýwg©›°Êž}܈ ¬v9s{r–/½^Þž|nxg,Oz‘;/5Z\$>óØáÛîŒ.ŸxèãÂèÙÏţà Óý?IÈ©ƒ}K1ný'sö;ˆíÿ®ÄƒN:@NhÃfYCæ ";break;case"es":$g="Â_‘NgF„@s2™Î§#xü% ÌÐpQ8Þ 2œÄyÌÒb6D“lpät0œ£Á¤Æh4âàQY(6˜Xk¹¶\nx’EÌ’)tÂe Nd)¤\nˆr—Ìbæè¹–2Í\0¡€Äd3\rFÃqÀän4›¡U@Q¼äi3ÚL&È­V®t2›„‰„ç4&›Ì†“1¤Ç)Lç(N\"-»ÞDËŒMçQ Âv‘U#vó±¦BgŒÞâçSÃx½Ì#WÉ ÐŽu”ëŽ@­¾æR <ˆ fóqÒÓ¸•prƒqß¼än£3t\"O¿B7›À(§Ÿ´™æ¦É%ËvIÁ›ç ¢©ÏU7ê‡{Ñ”å 9Mšó Šü‘9ÍJ¨: íbM ðæ;­Ã\"h(-Á\0ÌÏ­Á`@:¡¸Ü0„\n@6/Ì‚ðê.#R¥)°ÊŠ©8â¬4«  †0¨pØ*\r(â4¡°«Cœ\$É\\.9¹**a—Ck쎁B0Ê—ÃŽз P„óH“”Þ ¯PÊ:F[*ˆ‘ƒú„\nPA¯3:E5B3R­£Î#0&F @æš¹ksÙ\"%20†âLúw*‰ƒzâ7:\ròTḣ• XÊ¢pê2¨òÓ+09á(È CÊðÓÕDŒCÍP¶¨^uxbPnk 4˜eç9©*‰ã”jÄOhÒîˆ#Ç\\W@SË1*rÓB ÊÄÈŽ+ž ŒƒPëmOb(ÜÒ±(Ëi¥‹ÍÈçÕ%?sŒ-25u\r1¢:š 2\$ @t&‰¡Ð¦)C ȍ£h^-Œ8hÂ.B´`Ü<ƒÓHDcKœ\r“2Í¥¬dÖ3 Ï Ü¬»Ï³Jç7bíI%HB=\\Ñ‚ ÞžŒ#sƒoÈ–R29ŒÃªX6QKHç LÂ3Þ+ÒÓ4Óö0Ü:¯@榙°ÖÉb˜¤#:ƒ²\nò]\0­Kƒ´9\\wªU¢Gmz;Œ©`Ì·\rº™å9u .X¬iR†T¨¦ø*3ÏŠ5»¥PÃÂ[š“í Rò†•àÐÆ ÁèD4ƒ à9‡Ax^;õtiË?+pί!}x×Ä£p^Ý»ŒµxÂ&‚š3f/L8È:ùC - Âi“’9Œk{ý¸QAº1¾ «òð•A#œ²€ÒÆAÁ:ÎôIÓuWX;õÃ'`v]§tœËÊuw@ˆ¥à’II\nJ8¯ᦒ4’ƒ¢SSî(–¶HÐAö',œâŸ ÊŒ‘%¨Ï#L±ÜDi™;’2ÖCAD gâ\0îi‰d #gÙÈ\$¥>C3ã@¬ùó4†ÑKÔ7‚&Å_”pŸaÜ^¡°Ìó<p`\$f„Tð­ô8‡¡Z\"€0¸\08o@𤂔\nJA Æ 9‘ÂÐHBµdðÍÉÁ@ài\r1 9Dl·B4Œèo@…Í¢s”MjE\"áä‘pÆö2 dd‹–“†}Òy(†Ø‘H„9C ›:‘0ê¨FÐR XPؘø*\\\" \$PD‘t0Ê(x“f ×!÷ÎN1®j\$ü’Eù{‘Ô;Kd¯p@„ SÑB!„:À£`Š\0PI\"aåLIAÍ62 Æ.@Б \r®Qý“íKp—fÊX„˜TC§ñº’<½‹g% ´òÃчHDàÄÖKféÜ\$H¾¹BLfqÂ8†…)%–Í q43Fp×£XÑ¡-TÀ0¢h\\€€#HÑBÉ%°bxž¢ʏ±4SI䆳ʆ×`\n©fXž˜#a—µJ!507¦¦Œ}‰EQ\\Ð\$îx(jÊî%kž²‘ªÏ ×±˜i€6¹.a£HbdMÔ6¦ˆù J.9d¥¢@ `ª@é§…P¨h8#¸á˜2ÔM)”«•5®ÊÕfª¤‡¨G]“CjQÑM ¬§roèá´J¦Á†`òÁHÌ›VÔj©7YS\0PmªÆÛ°ªq\$ª¯…åJ¤<r•½(A*HɆRæX²‰Ð™{€¥Ln\"5Ä¢ïôhx@PP ª-*¤†:PmêDc´ áÀ„¾§Tý S–~­ÚSkKÀdV\r›¹ƒÏ=£„iY \\Zâ—™z¶Iì*&t«TÔâá°d©Å#ð";break;case"et":$g="K0œÄóa”È 5šMÆC)°~\n‹†faÌF0šM†‘\ry9› &!¤Û\n2ˆIIÙ†µ“cf±p(ša5œæ3#t¤ÍœÎ§S‘Ö%9¦±ˆÔpË‚šN‡S\$ÔX\n FC1 Ôl7AGHñ Ò\n7œ&xTŒØ\n*LPÚ|ž ¨Ôê³jÂ\n)šNfS™Òÿ9àÍf\\U}:¤“Rɼê 4NÒ“q¾Uj;FŒ¦| €éž:œ/ÇIIÒÍà³RœË7…Ãí°˜a¨Ã½a©˜±¶†t“áp­Æ÷Aßš¸'#<ž{ËЛŒà¢]§†îa½È ×ÀU7ó§sp€Êr9Zf¤CÆ)2ô¹Ó¤WR•ŽOèà€ŽcºÒ½Š êö±jx²¿©Ò2¡nóv)\nZ€ÞŽ£~2§,X÷#j*D (Ò2<pÂß,…â<1E`Pœ:£Ô  Îâ†88#(ìç!jD0´`P„¶Œ#+%ãÖ èéJAH#Œ£xÚñ‹Rþ\"0K’ KKÜ7LÉJŽSCÜ<5ƒrt7Îɨ™F¢’ œ4òr7ÃrL³Á/Š ƒzØŠ°L%8-㬃ËèjFL¨@Ò9\rC* ƒÃʐÔˆÈ賏, ΁A l¥hBxèLÐ2ÀIc\0´ÄkP(\r4úÿ4ƒ²2@PŠ¥nP—#!£¥Ž2¦HMŒ›Ê4zÚ¤ÊI`*”õ@:‡PÂö7#ÈôX\$ К&‡B˜¦*£h\\-8ò.ÉéxÆ ’üj6L S*ËÉ©HÞ3 ÈÚzÚ=ìܝFÑéqH67Ë€ÞÏ\r¬`òAjÆ1°ƒ˜Ì:‹Å…acL9dãÎŒ½¨UÜâ¡O0ÊaKh7Æ™*¦b˜¤#fÐÙ¥C|TÃ4\0촍¹@êݍ)¬¡·Ãffë%)xÜž°ª4N̽(Í5(ÈPÎ8JP9fÃð!“ˆxߍÊ3¡Ð:ƒ€æáxïÉ…É&Ð9ËH΁{ó6UsÀ^Üû뻁xÂc HÓ‘½³ÀA\$ ðZ©¨ÁOn̶k*ÁH1#*j›°¯zUK °ð8Sè0\\plÇ\rÄq\\gÈr\\§-½ó.§87s“¤);ü #hà‚ËãpéÔõs”¾×\rè;N⧠J¤•=ù*zûjwO­þ¢H@ßaÏC§Ôª6òRC¡=¡Ü3æÿ“sI|ƒ†Ìk‹*e†%—³vÏ ¡®4ÊüŠ†¾†!¸4“ æMB)P)åè¼”(ñ€c(´Î„\r4ëp „=BhUâ˜T¨R0\niàžÁìiŒðp4ˆÒt\0®Á‚ñÙ†ÆÌÞrÒCÁ¬´¸`Ö®Ìsƒ9ÃF’oÚe‘¤öšçôƒæxæ%ä‚\0îYƒhhÅ‚/!¡€a\\O œ¦JO iÁd Ù‡\$†Gˆ)†/O=µ3ÚPŠ\$?gIº€ ’EÉ–”ƒÆÃBá\\jpÁůÅ`Ì|Zëyrð­\nCÌ`æ E–dÔ(ð¦lzX¥’ÉWdFá« ?ÅV;–´pUù –nÌ…°¢K‰„ãpÓ©¬¦ðà€-0kœ:ItÌc(}a¾›ôhݘQ €€3&µ\rA\0F\n‘E„F—Ô±#Iý˜éxŠÄ70›i†mtZ¶³vÛ€PUk󪑶¦ØTå¨KSê…7»\" L\\â:¬›ðÔy¢jêT(­vª†ÄpN0›‡䢖˜˜C`+\rdÌŽ8ÜCJ]8ÑZ ³àª0- ­¿S´M_J\0\$ª­Ÿ–¢ü‰Ë‘\r#†HÒ0ʇ©u'\"Á5ú†Ì@Q‹n ™- ¦—L,8ÅP¿¶:’¸Ž-L0U9Ô \"yŽK!)ê‚)‚Ò~©Q¤‘»(ÀʯÃ\\¨;f„˜p¨pP™3]%Mö.\$Xªn0åңЖٓÂÒ'5¨³Ö”YÕÑ:!\n9ˆNÚîHÉÑÊ.%Ì·…\$VKåŒ!¼4";break;case"fa":$g="ÙB¶ð™²†6Pí…›aTÛF6í„ø(J.™„0SeØSÄ› aQ\n’ª\$6ÔMa+XÄ!(A²„„¡¢Ètí^.§2•[\"S¶•-…\\ŽJ§ƒÒ )Cfh§›!(iª2o D6›\n¾sRXĨ\0Sm`Û˜¬›k6ÚѶµm­›kvÚᶹ6Ò ¼C!ZáQ˜dJÉŠ°X¬‘+<NCiWÇQ»Mb\"´ÀÄí*Ì 5o#™dìv\\¬Â%ZAôüö#—°g+­…¥>m±c‘ùƒ[—ŸPõvræsö\r¦ZUÍÄs³½/ÒêH´r–Âæ%†)˜NÆ“qŸGXU°+)6\r‡ž*«’<ª7\rcpÞ;Á\0Ê9Cxä ƒè0ŒCæ2„ Þ2Ža:#c¨à8APàá c¼2+d\"ý„‚”™%e’_!Œy Ç!m›‹*¹TÚ¤%BrÙ ©ò„9«jº²„­S&³%hiTå-%¢ªÇ,:ɤ%È@¥5ÉQbü<̳^‡& Ù\\𪈠zÐÉë\" Ã7‰2”ç¡JŠ&Y¹â Ò9Âd(¡„T 7P43CPƒ(ð: £pæ4ô”RÊHR@Í7Lóx–¤hìn¨²ú–˾©‹;Ž»¦ò¤ÌœÇYIìÒG'¤³2 B°%výT® ^Ÿ\"Ã#ÉO@HKc>¶C“Õ¤;æ»@PH…¡ gl†¬còÉêXÌ iNŽ +L!L Ât\n;ú²×ì r됉ÚBUKQô€“#±¤¤§¦ó~XÆÑqRŽ¦‹M3¿¶“®°–Ì›\0l—ɲÁÓW;\\†ª%Šß+Ä,—°‰ÄêŸÙVc<€dõF@âJÉû;Ñ°\$ К&‡B˜¦ cÎŒ<‹¡hÚ6…£ É~Í ƒ\\¥xˆ9ƒc`Ù\$¥¬›«¨<™%I\nìˆæÉæ°Ìm®Ö±VÛ~\"®¬õ#@£ÉK¸ÚFWŠDF(VcúA&ÄPó‘•I+Å[4‡7N{@\\Ö‹.:ÔÔxž¾AoLþø£oü\rrp¼=‡Ä´I+õÆ·œzºäB¦)Á\0è7tŽê‚<×Z(¡ÁwF°ìµ½^†—)–qØY²fïÒ\"%RK©8¥bKšö Ð0ÀÈÍC´›Ú# Úö@á`@1Ò´˜É„àÂ\rÊ3¡Ð:ƒ€æx/ð ÌúZ\n à½H‚ô,¢¢”\rÀ¼èƒ`g€¼0ƒâ¶Ò³FŠy¢ÓnWÑ p\r€•w†³^1‘U @؝’Ô`XAo¦ ÈCÊ™«‡\$)Iá+rÂoT\";~/Íú¿wòþßëÿ€0 ;ÀX8.P2 ¨å ¤ ”(`ùŒ/¤pIYS\"nªcŠÄ]QÆ\rxàÖ¨HUÚ0%ÉÉ0êCÈ‹e èÀ£\"£HrÇSØ™«B—Í\"fÏi\nÇT¨ á¤6À@ p@ï|9ÐʱƒfRɆ0Ɔ˜f²x6ðÎ{\$Ði¡Û„( %3ë~ϼ7AÂD~O‡\rˆ;²ïUJâEÄ!0eƒ!X!4*“1,7@ ‚3äîA§\0ÊÉ@((`¥çVeÛ&œïر€Ô¬X’ðeÛð@i=j3ÊyþˆPÊCA½Lyjå9ÊK©¡â¸´øÅc˜0“>Š2%° ¡OÌ9¢9_H,»B‡°8TD‰0rXÁÜ4Ç/8gr}\nR§Ö_e9KȐ&šâÑúej¤Ì¬£†èA1S6‰Yâ¥æVð¡b,‰1ØÂM£voQð \$h<†ðê…CJÆCdmH¬iwBŸ°q¨ad_\$W~©†9j„åí\nDt¡™%‚™£ƒ(d-â‹\"Zm\"# ,vª’„ÀT]`b)²BcŒuÈúf\$•n9:˜ÊâJYi\$ìBBÃ觬Ñ\ny†Å769Î~‹\n=³‰(¯€¦Be’&Ë®M‚j\nóœÁRpÃÈDí}È<7µÇ¨ŒS’äouÆyæ+ç¢@ñ/^Ç5xI“o¬8û#jP\"MÞJöPñÕvGy®ú¥ ˆüÔ{ÈË[]¼÷è€ß˜ïïzÏGf¦·<ªI-Õ…i6Г֐luú›µM ãé\\‡2\$ý²vÊ‘‚¨TÀ´,sxì0 <4ä’왋þäñ‰¦»æí_b<Õ]ù'Uèõ¨’´„°Œy8Äåb'#µWÕSÉ)ÐΟRtØêœÉöÀüHeòW„1J79m½ªšŸƒjû\$lV€´Y®Uã;ˏ·9P]Tm!ù+<ËíÎÇõBxÎ—A4˜±°bI ­9ñÍ·dò“rÂþSÆ“ÜqbËcF–jýêdx‚´ˆuF3‡á)6âVi1©”]¦8ûœJjÑ…ˆtÎüƯ2n·µ³\"ÆOMäìç’Ùa ";break;case"fi":$g="O6N†³x€ìa9L#ðP”\\33`¢¡¤Êd7œÎ†ó€ÊiƒÍ&Hé°Ã\$:GNaØÊl4›eðp(¦u:œ&蔲`t:DH´b4o‚Aùà”æBšÅbñ˜Üv?Kš…€¡€Äd3\rFÃqÀät<š\rL5 *Xk:œ §+dìÊnd“©°êj0ÍI§ZA¬Âa\r';e²ó K­jI©Nw}“G¤ø\r,Òk2h«©ØÓ@Æ©(vÃ¥²†a¾p1IõÜ݈*mMÛqzaÇM¸C^ÂmÅÊv†Èî;¾˜cšãž„凃òù¦èðP‘F±¸´ÀK¶u¶Ò©¸Ön7ç—3‘¼å5\"p &#T@Œ £˜@øˆ’â8>Ð*V9Žc»ì2&¯AHõ5ÃPÞ”§aœ¤ÃÔÛ£Xæä¶j’Œ©iã82¡Pcf&®n(Ó @;ÒÔŒšx´#ƒN êdúŽ€P Ò½0|0³ì@„µ)Ó¸¼\nÑŠã(Þ™‰Ó\"1oÛ:§)c’<ÛŒSûCPÊ<‹¼F¦i¨˜: SˆÙ ¯##Nû\r1´'GI)¥èÂÛ¼ãHäÀ£ ê cdžÈæ<µÃ]H(.âîÄ\n£¬F¡¢ÊʆŒxì:!-Z”Õì@Ö<¹Œr>¨\\uøcJ 5[ ÏÓÉc”&CÍ<õUŠPóp‘&Ct|2Ub²XÓº©°[#T˜¶\rÊØɁBÓr±#Mœ2 LMȁ1Á*%r\rfmp(4¢5Ãeç8¨È]XÞå Ñ|ßj Ó\\8<àÀPÜõR‚@t&‰¡Ð¦)C€à8¡p¶;e°º[Iûü”1dº –3 Ƀ¸¨‰4\\šŠ b]Q´{aI ê3v4X@6©‰J<8-Š`Ü䎣sE©Dn’Ø÷Sí‚‚äSiÒЍ-`@¤£ìêql<Zue§²í2¸/Êeƒ±Zjy¨\rڐ˪š¶±­4h“Ôì3E!1cÎÍM={VØ4íԍþïCUk‘­nÉæñ­ïyer¦k²x!ŠbŒ ï‡ÁÇ…^Tö…4O4æ^rj*Ïc=Çl}TS«£C¨Ò¨\\D ÓeLŒá\0‚2sëžÔ1ΉæˆèÐ9 £0z\r\n\0à9‡Ax^;þrOî¾ï°Î®áz0mÊ!Làˆ?ó€öà/ øš„—šàH)\rË•Àµ“Då›\n‘(M¼™¼Sˆr¡ÍDÂCxUÑZg5\$„˜ŸØHí_( |ï¥õ¾Ðèûß‹ó~¯Ü»?äþßêoN!¹9†èSðTBæ„”À˜›Aj\\\réø‰r†Md‹\nL©°ì[ÏP9P‘²‚§‘IXV†éŠEre¢å„1ÀxÜÀlˆ2‚äž© \"ñÌ3B Ãa˜¾‚öÐÌx ¡Ç(HL\0c} aÀ´Ð؝L|Ž0è|ݪc”M;Œ(ià ¢@@@PC’FÄAN&h¬GÕò ×0¤4È0¶P†Õƒ,u{ ‚‡\"æ(gh 9DbÐŽg0ø‘rj:ð9†-›<u@ä S@¹ÇÙ°GC™+‘  É9ܵ~…È89*ÐîHc’‡ 3¾Ø÷g´™6U—r€E‰ä\$œmé3“Ú]C¥ÐÕ+ƒNŨK?¤©€ìGi5 Fp€ VîÃ@§®Gàò\\\nú{Or¢FÔËê5b’š¢5^—sN¨ä\0ž -fh¶QÇj(¶5ÌÀŽ¡†×HÏÔsTœŽ¦Bƒ0i ää‘IÒˆTÊ;?e„Š—zÃRßA<\naD&3ŠU\n` ÁP(§DØš‘¾(1NxEdFP\"±+%¤¼˜’òRTUJxÇ…‚BwfšpŒ>Ðû>E,ÈeL‡DÖYç„yÃxhOÏ47:Þª !.ØÛ9ZçUE¡^T»ÌdºY·}툎ÒjPpÚÙ‡DH1\"k\0ŽÑ½7+d*…G^\"‰„(нV Ÿ*кîxJÅVÌó]bíqQ6ø«\nNiÊ'æ Áš#K ¸ev%›WÚ¼)Ã0¦A!CU‚Ž)‡C„íë hÃ\rÓTç¬õÖ*ȝÑ%qq´ÿâ]‰J‹&Ì=Išk*ꭁJ(/òÌûÙy­!Že·á\"„´öS0dà¡Ê*I:±#í\\5æÅCb‚–9-·õ©#ÆDK`";break;case"fr":$g="ÃE §1iØÞu9ˆ fS‘ÐÂi7\n ¢‘\0ü% ̘(’m8Îg3IˆØe晾 IÄcIŒÐi† DÂi6L¦Ä°Ã22@æsY¼2:JeS™\ntL”M&Óƒ‚  ˆPs±†Le CˆÈf4†ãÈ(ìi¤‚¥Æ“<BŽ\n LgSt¢gMæCLÒ7Øj“–?ƒ7Y3™ÔÙ:NŠÐxI¸Na;OB†'„™,f“¤&Bu®›L§K¡†  õØ^ó\rf“Έ¦ì­ôç½9¹g!uz¢c7›Ž‘¬Ã'Œíöz\\ήîÁ‘Éåk§ ÚnñóM<ü®ëµÒ3Œ0¾ŒðÜ3» Pªí›*ÃXÜ7Žìʱº€Pˆ0°írP2\rêT¨³£‚B†µpæ;¥Ã#D2ŽªNÕŽ°\$ ®; ©C(ð2#K²„ªŠº²¦+ŠòŠç­\0P†4 &\\£¢ ò8)Qj€ù‘C¢'\rãhÄÊ£°šëD¬2Bü4Ë€P¤Î £ê윲ɬIÄ%*,á¨%ÊðÜä*hLû=ÆÑÂIªïšŽ˜dKÁ+@Qpç*·\0S¨©1\nG20#¤Äí1©¬)>í>í«U²Ö!Š\níL’Àêԍ&62o°è‹Œ“àƁ€HK^õûvŽ ãH¾ j„ ÍC*l†Zî‹L–CòøÞa— P¨9+‰ÚXÚS•ýH\nu½¬ðÌ+¢!¸w Ê6BS ¦:MØ(\r&P…¡.¼h0òÇØat‘Œ#:PžÎŒœý…2au…^áôž%A;U±R:bÃ(ÝŒ#št¡àóûî\$ К&‡B˜¦\rCP^6¡x¶0èºÀ?*b`Ø%.ÈÜÉá û¢Ñ¡±UEÌ)s^¾0©Ð¦†54¨ˆÉ»ŒmuÜcxà©!ZVÇäI²¦ab½ˆam[~AuœÚ:¥# #=cŽâl»=3°°ª.Ù°\ryRîH'ºÖÎòÔÍÛîÿ†¼\nƒxד¦)Ï:Ë©.¨­EMS5“aZ:²—\r¬òʧLfƒM\0CqIJ3O¨B 3„ÉÎÞ[–Â’)*èxž ¨Ì„CCx8aÐ^Žÿ(\\0ùè‚r— á~LÃýà„A÷ãQ¿áà^0‡Ú×\$©pM\r1¹5×bjÈ3QMÊy“*„‚ÝÜ»{GÌ87©‚PkTØ '¨Ú±Ru^ºa{OqïGÀøŸ#æ}Aõ‡'ÚûÔ+&Pá¹ú@|G¸*èÕ?§øLIèmNŽ5L§°ÂM Ê™&FT7(.«[ô\rD褠»#övÍJ0)AÍÿ¨‡ˆÄ×R«è¨(žž@r7Jö#\"ºgCa˜ÏÞ_LÌcSÄù1ÀÂnˆQ•)*€£²£¤á”\0,%Y¨\0`‘™R)ò!¶À ¨x—2GBAAT\"†˜¯˜ÀæHCq%9)µ.£þOƒy¬\\…Ü“±%z·HIóoV\rQ4ŠT¯ÚãC«Lt ˆÊ–Oe9û%B>M0ÜjšDh”rnM˜q|{Ñ”ÃGÐÆ›¢äAijf”2ŠîCkh=Ä€§œòRdàÁ’ƒà×ÅDWƒ¨g‡…u®ÀÒ I¥4æ¤ÕÁ†.ÃË8©|ʇ’ÔѤؗO:&äQÚ±3U®Ê‰Áv\"‘B#Jn\0€(ð¦ ñcláœ97â’ʁk!‘ÅÃV é?Š²I¤¯VA聮ʠP‚Ž•›B{ øדÖÂM5˜ÊfK…Di\radvRl6÷ÐL ¦„ˆ¥•²`ˆLD%t#I2y¡’)KèÅnIÒ`Rhѯ%p95Ô\":·W06\r2)=&òäˆP|Ø‘S•Õb¢¦\nÂhÆl­Š‡p6#Xæ,D'Ô'L6ÑY–(ÈØ°m1j…Œ±¶Ef k *6nÎÛFRN‚b\r€¬1 Z,ìŒé]’.®¨tam™Ž°å(­ÐälCxi5,„aµ9šÉŽÀd3‰øP¨h8µjõ†s f­…œ¯¤6e[kÚ“åܾ%€–ßI>N¡Á\"\$‰åLÏ¢O[Ï'Ò8ÅYåD¼\0Uâ!ŒÙ±î—ºª2 *Ù`䤪a(@®aÕBCa7öé£v—îa¸¸ \"rÔTËñir}#cF\$®—ý'Â\$2T°#*šŒáž4 øí°ËØÖ-öÊuvÙuÞ©1Øe̤jʼ¤:Ý1ø—0¶VËš°D\$ÛÅ#‚fSAZ§â³ZWp‘úE ";break;case"gl":$g="E9jÌÊg:œãðP”\\33AADãy¸@ÃTˆó™¤Äl2ˆ\r&ØÙÈèa9\râ1¤Æh2šaBàQ<A'6˜XkY¶x‘ÊÌ’l¾c\nNFÓIÐÒd•Æ1\0”æBšM¨³ ”¬Ýh,Ð@\n FC1 Ôl7AF# ‚º\n7œ4uÖ&e7B\rƃ Þb7˜f„S%6P\n\$› ×£•ÿÃ]EŽFS™ÔÙ'¨M\"‘c¦r5z;däjQ…0˜Î‡[©¤õ(°Àp°% Â\n#Ê ˜þ ˇ)ƒA`çY•‡'7T8N6âBiÉR¹°hGcKÀáz&ðQ\nòrÇ“;ùTç*›uó¼Z•\n9M†=Ó’¨4Êøè‚Ž£‚KŽæ9ŽëÈÈš\n ÊX0ŽÐê䎬\náŽkðÒ²CI†Y²J¨æ¬¥‰r¸¤ *Ä4¬‰ †0¨mø¨4£pꆖÊ{Z‰\\.ê\r/ œÌ\rªR8?i:Â\r Ë~!; DŠ\nC*† (ß\$Žƒ‘†V·â\$`0£é\n¬•%,АDÓdâ±Dê+OSt9Lbš¼Otˆòh¬ÃJ£`BÃ+dÇŠ\nRsFŒjP@1¢´sA#\rðªÂI#pèò£ @1-(RÔõK8# R¾7A j„p¼°¸ÆÇ¢ª¢\r¦®4Üʉ“˜ïˆ#ÇD€P¦2¤tŠ¾²¢*rÕIƒ( ³µÈ ŒƒÄ3QÏ‚(ÜÔ±õ`Ëm‹\rÖ4ƃx]UÔ×xÂÕC¬بOÏ)B@ ¢ht)Š`PÈ2ãhÚ‹c,0‹¶•©GYè«páÝ\0S>Ê´i»MLQªGZZc“R¨2´Š^Ü ÈîWn§(íë»ÌЩ¤9D_•…‰EŸ *B¯ÓÌ«S)ƒpëQ\"%õ`4AŸªšUh¹íE¤è˜•éÕf£©Éb Þ5é¦)Ú0쁍‘ð\\][¹Zª›:U?j –/#k=+^ÀVe(Âé šÚ¶P‹•*Fš\nŒ#åŒÐ²:À„&¢¥h¹B:¡¥!ã\n43c0z\r è8aÐ^Žýè]tïÊò3…ì\0^¨/ªr*„A÷þ=aà^0‡Ñ”h:Ó¨Aɳœ®Š’ÂpªRØÒ®˳ÅEÑ®­;±gÁ7~2{xë½õÒ‡cÙö½¿rîÝèwwá‘à‚ç†ñCsÅCæ;@DUðI\$Š¤='¨J>*Ã¦´zš•H%\$¥ž&|YVúrŒ­PÄÓŒá'%&1£‡á0{fÉk‚\0îj—Œ/„Ž„¥¥§¶)È{\nU†c<g;ø¦†‚ozIRæl¡ª%èÃ%Dy:¹R&zÐÉ„*h*2@Ç*‡B€H\n7 tiAV&äÞ4`FÉÙ\$ÈŠ©Bœéî5\$€3ÄdÏê{a± ‡t´Œ¢á€Yëí‚„†ã /~Ê]C‡Ø#ÙØnâ…¼°rRŽºrh%J´h®uÃppjf¹ ÓƒB*ƒ!¤3»UNHC¤:WîD҇ÊSÌ)^I * “ò‚ÙUù\$GêH¦£äN‰) ÈQ ê¨M*&&‹M³ü½\n2ý7E\$§,öVЉ!%n˜ì)f}=ÂŽPć ¬_Rc…Ž<)…F€ÎW£‡ ç¢|Íô²ý\r»ƒlþQÎiÐä£ñ›‡Ù\r´*KHAèžÈ’u8àÞPáPu†¤¥ ¢’ŒWA\0S\n!1²Ñ3ÄMà 9'd­¿PŒ#™×›D˜º´©ó ›/P¼µìr[D\\DÐ&ÒðÒQj¼úS뽟8Ó\"dÓ‘ƒ ntò¬MuZ‘!„3)¥ê½ëd\\Rʺ¨ù\\¢Óla¼†8èŒÜ¤‰”Áô\\sêj(+e•Æ0âI\r%*`Æ”Uë)°U\nƒ‚©‰hl0¤Ž;:ñj\rTlµ…äÐ £DTHÊ9D„ƒ-V:¶Ù†7¦\$UÛ:KŒ}0R³å£¥…¨lNÂ|KF8Êžê@ÞC8aSܪ]:VE¬t«Öy6–@AbËËÖWd”“áBŒ(ÚKFw¬ñ ¡AÍù˜3åçÓ?gÔÄ ªŽÓ¢›T¾02\ncVú34‚¶èxŽÆV a5zÕù)dµ§Ã|Ÿ¡‡¸اÄf‹@";break;case"he":$g="×J5Ò\rtè‚×U@ ɺa®•k¥Çà¡(¸ffÁPº‰®œƒª Ð<=¯ RÁ”\rtÛ]S€FÒRdœ~ žkÉT-tË^q ¦`Ò z\0§2nI&”A¨-yZV\r%žÏS ¡`(`1 ƃQ°Üp9ª'“˜ÜâKµ&cu4ü £ÄQ¸õª š§K*u\rÎ×u—I¯ÐŒ4÷ MHã–©|õ’œBjsŒ¼Â=5–â.ó¤-ËóuF¦}ŠƒD 3‰~G=¬“`1:µFÆ9´kí¨˜)\\÷ ‰ˆN5ºô½³¤˜Ç%ð (ªn5›çsp€Êr9ÎBàQÂt0˜Œ'3(€Èo2œÄ£¤dêp8x¾§YÌîñ \"O¤©{Jé!\ryR… îi&›£ˆJ º\nÒ”'*®”Ã*ʶ¢- ӯHÚvˆ&j¸\nÔA\n7t®. |—£Ä¢6†'©\\hž-,JökÅ(;’†Æ)ˆˆ4ŽoHØö©aÄï\rÒt ùJrˆÊ<ƒ(Ü9#|¿2‹[W!£Ëƒ‚× ±[¨—DËZvœGPŒB†1r„¹³Â†k”Íz{ 1†»¡“48£\$„ÆM\n6 A b„0£nk TÇl9-ðýð)šðºJaÀnk–š¢€D­¡Ò6ª±\$‚6’¡” ,×Ð3T+S%é.ŠQÈâ šÕɯZ U½FÁÙ1 *¥¨òö\$ К&‡B˜¦ cÍÔ<‹¡hÚ6…£ ÉPÖITˆ8°øä:\rŒ {&…H“\"û\\µOPJV„”èÚz½5‚zšÅIZw‡°lê[|§p:V–Û\$¨X©0xŽ ÕtF É­K!ä ´¡ˆs›iai5òNälM”»\$΁Bƒ%è\"ÀÏs¼D„2T\n@ž¹³­šÀð4…!ahÂ2\r£HÜïä‘ö‰ ¢x0„@ä2ŒÁèD4ƒ à9‡Ax^;ïv·®ëïÄ3…òð^÷Ê£¤Â7á|˜!,Y:ã}!3kNœ1\nV´™ê±NÓî\"ä\$ó‹Œ×ÚMš¡Íí\r\"![>Óµí»~ã¹î»¾ó½ëÎø]¿ð<D·.Ëü?¥ñzJJÄP‰ÙGÈrYNdœasÿ6Üä–“O¤~' [P¸Žs‰í¯ï0P:¥ø0¨4=£ÇÃLA\0î4ƒ`@1=£ƒ¾m ª80†dº°c gÄ9†`êþƒ`o íyûè=©6\0ÆÚÃ\"^pÁ„64]3ÍâŒ×Û\n… \n (\0PRÁI¦Tì!¦&¾üÚðgƒ!¼\0äC³ø ¡žÄSô|’aó\rçÖAï\0ЇI©¤º\$òØÉ™CÅm÷óÛ[@s?,AH5Cpp§ìþŸð䣃¸h\r!Ž 5ÐÎÜÙíáŒ0‡SØ€ˆ 3[Éüœ#\\@IzÔu&¼µ#À\\ƒb!Dp™“U®@ÉK0É´ =™6¶Yº “Op„¸ï`A_æØž’ÖÊŸÉÜatg40XtIÃßDN’e¯0V™<^Ò¡¬…\0ž¤—#„”‡‰@öLÁkZIZ™)Š÷fÄœ™1|€ÙD`Ô×1äuW´Ä2°KZm ´#HjIˆ–‘ŽÛd›S¡‰a-Õ`ÉÁÍa¯‘\$ÐvT`˜5 Q^n\rsNbaiÈ…2Ç^¢'%îqm“šJ_˜r@­?œÒz V‘%©øÛ˜³l_XÛ/ŒÈ§´d6õ‹Y“3hšæh8Y5Ö0C ²ô-l É2ˆ½™‰D§tÙ8“YëËù“HÔ­Îʸ‚z @…­¢º2Š’Ikê1(ñ™^¯”×#”àÝâ<bÊø¤,dÂ:ôdCˆ…§f¬I˜edI¨‰-Zí\$ˆ(ü^èõmO*íX¤šÊKÉiÐŒ9@+IT믭S\"m :¬‘”-¯N¶h“\$:\\éˆ";break;case"hu":$g="B4žŽ†ó˜€Äe7Œ£ðP”\\33\r¬5 ÌÞd8NF0Q8Êm¦C|€Ìe6kiL Ò 0ˆ ÑCT¤\\\n ÄŒ'ƒLMBl4Áfj¬MRr2X)\no9¡ÍD©±†©:OF“\\Ü@\n FC1 Ôl7AL5å æ\nL”“LtÒn1ÁeJ°Ã7)ž£F³)Î\n!aOL5ÑÊíx‚›L¦sT¢ÃV\r–*DAq2QÇ™¹dÞu 'c-LÞ 8'cI³'…ëΧ!†³!4Pd&é–nM„J•6þA»•«ÁpØ<W>do6N›è¡ÌÂ\næõº\" a«}Åc1Å=]ÜÎ\n*JÎUn\\tó(;‰1º(6B¨Ü5Ãxî73ãä7ŽI¸ˆß8ãZ’7*”9·c„¥àæ;Áƒ\"ný¿¯û̘ÐR¥ £XÒ¬ŽL« 玊zdš\r謫jèÀ¥mcÞ#%\rTJŸ˜eš^•£€ê·ÈÚˆ¢D<cHÈα º(Ù-âCÿ\$Mð#Œ©*’Ù;â\"‚â6Ñ`A3ãtàÖ©“˜å9 £Â²7cHß@&âb‚íÇìäÂFräˆ6HÃÓý\$`P””0ÒK”*モ£kèÂCÐ@9\"’™†M\rI\n®¬À(ȃ&ƒ YVŠ%m\\ U¨û­ð(ÁpHXÁˆ%®#?^”#ÐìGð`Ę©r枣\\«#£Àb–-cmq m›þþ Ní@£ jQãÉM>6ˆÎ<B¼‰óGe­ƒeîú×-áyG)@ׂŒ`][ÖxUâÚ³ãf^`Ø–(Ïáxƈb@PÚ‚\\RL’€t6ÊbØó™\"è\\6…Ã#à0ŽNØØ’IKÓ5ãZ7ŒÃ2€…0SXÇ]/¥<úŠƒ{_x´a\0ë@£ÆÂŽc0ëçã:î9…‰ä<¦=å.ê]f6®ãª²aJna‘#ì«´u‚b˜¤#&Õ‚3 Qf^!Y¼£’b0Ô×#æ0ÃQ¬~®Y¡]©:)¸¨Õ@jé'½Á\0‚ЮèÖÒ1Ðt\nç=‡‰ˆÐ¤ ÁèD4ƒ à9‡Ax^;ùuíº!Pl3…è@^’NÃ¥7á}ê7ÏpxŒ!󏭍c \$…)M°Õ/Ž›K*Û9Õ%Lƒ¼…ÐÕË8ïä`ØCÑ\0äÅCÀp\r%!rj]ã¾x â<gÞS°y ¹ç½°ŸSúPod¦à’C¶|áÑï¾ädŒÑ7\$èÂ^lÓX9(Ø6¾GÌB\nHe@è7†ÀõÑY åÈ«’´k(l„ 7“Œ| Ù0 oYA‚\0îmQËô#!È3 Ã\$¬Ãfha¯6ÄÙ{fA\\ÍZwŒ p䆐™7 Åܼº\$^F‘’í>±ìÈõöÆJºÒ3†x½²vÜ@Þ \n (Gäa N°()ˆ¬9‘ònÔ\nŠn´›dm\r´CVhižS„…‰€lgáܹ7¶úßÅK2È!{àޏ9q…ʇ4:×ár3F´»¤ä8ÿQ V8!Œ4 ÒÞèÑÈ0¤øžNW‰<'Å\0È•£:¦Ro)Jp£•˜\n’ (nfLϘ#Ò,&á\$ˆ‡“N\"Z5È\\„+34pŠ@q¦¥dH{Ì#Q¹6'NÂC±\rÓÄrEƒY0’A<)…B`oC !p‹8[³sƒœ`TÒô¥brŸh Á†CŸál¹£r çü«“ºçš\$ÜAퟯjD¦¸ \naD&#jkM¡1ÁRJ†µ ¡…Ô6‡‚ :߈Ò6§¡W ePK)9­h懜fY*y®g¡L˜ÚvMÕÅ{‘%ܬ¼'`U}l°g8¤£V?`Š=„±²|:0WEƒHc¤1T˜Ó°ÙBá[' !™¶\"ònª¹Iå)ú7ª0- ÕÚPÜì³\"ÉìžÊÂö+û·u‚ßû‚®.½Cw¿‘Ò>HI%ÍüŸ®Ã·i{/©XðpÓi\0Qy%t¸„%À¤§c\r*h騳ª~—b“`ÔŠö¨ÉAN\r;‹xÅ‘YÖ`D‰9T„‰‹2I]ËÚÎ+L=(PßS™9H @ÌmyØ7¨»…œ¥F–gL‚šDv­QÛÁ'~ä Ë…‹±ië2ÑL¹,²¬,Ð(zT\r€¨?qRAYk4ñ“´¸Z×\rÇÀŠÓ¾Ì3?¯bJÌ¢¯±Ï  ";break;case"id":$g="A7 \"É„Öi7ÁBQpÌÌ 9‚Š†˜¬A8N‚i”Üg:ÇÌæ@€Äe9Ì'1p(„e9˜NRiD¨ç0Çâæ“Iê*7 0#d@%9¥²ùL¬@tŠA¨P)l´`1 ƃQ°Üp9Íç3||+6bUµt0ÉÍ’Òœ†¡f)šNf“…שÀÌS+Ô´²o:ˆ\r±”@n7ˆ#IØÒl2™æü‰Ôá:cŽ†‹Õ>㘺M±“p*ó«œÅö4Sq¨ëŽ›7hAŸ]ªÖl¨7»Ý÷c'Êöû£»½ '¬D…\$•óHò4äU7òz  äo9KH‘«Œ¯d7æò³žxáèÆNg3¿ È–ºC“¦\$sºáŒ**J˜ŽŒHÊ5Žmܽ¨éb\\š©Ïª’­Ë èÊ,ÂR<ÒŽðϹ¨\0Ε\"IÌO¸A\0îƒA©rÂBS»Â8Ê7£°úÔ\"/M;¤@@HЬ’™É(ñ /k,,õŒË€ä£ Ò:=\0P¡Erµ ©Xê5SKê‹D£Úœ£ÒàÝ!\$ɐꅌ‰4¾æ)€ÈA b„Bq/#‰Êê5¢¨äÛ¯Îºàˆ¢h 12ãHÐ×£Ê6O[)Ž£ ëT ƒ V4ÀMh—Z5Sâ!RÔé äůcbvƒ²ƒjZñº\"@t&‰¡Ð¦)BØói\"èZ6¡hÈ2T JJÐ9£d>0ìJdÇ\rã0Ì´Ã*è”1²Ø—SŽ©’\$7²3›t\$/¨Æ1¦˜ÍW„`Þ3¡˜X§ŽCÊ„‘¡\"Ï£jÛŒ¡@楢 Þ5£Á\0†)ŠB2ž¶\" \\Vö-øÚ á\0Ìô\rµ}h¥¥.deêô¢L[›æi›ªÞ„É‹]£–1ÊÈ¢PˆÑS ÁèD4ƒ à9‡Ax^;ìr‡¦%sÐ3…èð^ø@Ê‚Ê„Aöà7¡à^0‡×|(ÅŒKÖ`ÀôŒß‚Œ8B[74)›ôþ?ÒXð8Vƒ+ÿªjÚƵ®kÛŲû6–„m;^Ú7m²š=*õ -[0ÜŽ›Öù'H#@ß>ÌŽA‰?)EôT֐¤n`4±SÒo\r#6:41Ãǹ(#»/a\$ì’Q¢£³èÃ,êwö\0ýàv\r„{2úJѱɊ: u0Éâ\r0L,\"§˜T nKõÕ¼À 8'IyW¢t\n\n@)dðª(ÒÊ»^»Hw¦LÊ™s2匑ø&æ”ù” ØÁƒ»–%¡¸\0T‰ˆhzd ÇRÈË\0bEøC³¨~I[Iô;š@ÆIX°gk„Ч½GèNªîTˆm‚†W·Ã¨mA@K”äæ„\rTYLÅ/Ò~NYZ@h4†²€…IhI!áäÄ´û C™w†›ª`âI Çœ6´—FÓbk! l<ÄÔHâb‘ë.\0€(ð¦\ny((¬øšÒË*.y‹€¡œI<ž'j˜5•Xƒpf\r\$!Ba£¨c6&yƒ2„Ÿ™ˆS\n!1™Aà@eˆF\n\$œ§Ó€~2„Ax6”ìžC:XIxŝGöÌ¢¾›DîT' ÒKB,à\r)\"l’¶v—Ž!|(µŠ\$¹Õ&C’%GŠ^(Ô>\\‹\r!Œ‹Y~L€3„qݽ—ÉhF˜ÌÕÄÆ\"B F â{5¼Gç¢}0fP›ÎÕ‚Næ{@î%Ö,·1rM´43nU)!AISÎà}S¹Ð;h7™5\$QUÝAG…»&²8‰ƒ©ƒ\$¡¸Ë†˜B'8\n ¾_ÓÐ{ÏeZ«”|ß\"Š¾€S Æ‘-…5é?jÁWTŒ½åN^»–T­Oçù ±>émGNHQ•1T趙zHwê \rHŒ9€";break;case"it":$g="S4˜Î§#xü% ̘(†a9@L&Ó)¸èo ¦Á˜Òl2ˆ\rÆóp‚\"u9˜Í1qp(˜aŒšb†ã™¦I!6˜NsYÌf7ÈXj\0”æB–’c‘éŠH 2ÍNgC,¶Z0Œ†cA¨Øn8‚ŽÇS|\\oˆ™Í&ã €NŒ &(Ü‚ZM7™\r1ã„Išb2“M¾¢s:Û\$Æ“9†ZY7Dƒ ÚC#\"'j ž¢ ‹ˆ§!†© 4Nz ØS¶¯ÛfÊ  1É–³®Ïc0ÚÎx-T«E%¶ šü­¬Î\n\"›&V»ñ3½Nw⩸×#;ÉpPC”´‰¦¹Î¤&C~~Ft†hΏÂts;Ú ’ÞÔØ#Cbš¨ª‰¢l7\r*(椩j\n ©4ëQ†P%¢›”ç\r(*\r#„#ÐCvŒ­£`N:Àª¢Þ:¢ˆˆó®MºÐ¿N¤\\) ±PŽ2è¤.¿SZ¨ÁШ-ƒ›\"Èò(Ê<@©ªI¥ÍTT\"¯H¸äìÅ0Рû¿#È1B*ݯ£Ô\r ƒzÔ’Ž r7LðÐœ²ÈÂ62¦k0J2òª3ýAª PóD¤`PH…á gH†(s¾¬ëÜ8Ž°ÐŸ1:’¨Ú•ÃB Ô›µóÝN¶:jrÅëðž3³Ã¢Ì ÀC+ݯãs8¿PÃ-\\0£á×_®Au @XUz9c-2ª (Òv7B@ ¢ht)Š`PÈ2ãhÚ‹cÍÔ<‹ P¬Õ7®ô=@\r3\n69@S É\" Þ3 Δé\n°L´¶\"°ØÞŒNcËŽÄ c3¨àÙ78Ac@9aà µØÉ-\rQÓ0P9…)h¨7h¨@!ŠbŒ§\$­“¤öÁqh&b`ˆŒmLÇ;,\$b2àÈèÞÆ-ÊKˆbV¾TÊ;ÍXÍ#¥p@ Œ™#iɪ49â`4Z@z\r°à9‡Ax^;îu«¯<«@΢¡{ض7i ^Ûýì7 áà^0‡Ø\"w5¡‹èÉ 8ÐÃ3\"Ȑ䚦)ð7®éÒ©²>ÉÜÃföÒýì»>Ò3m{hé·î;žë»­l]½oƒvù(\"²—|(Áð’6Ž ûÅqPA\r ËA† 9mŒúÎC è‹%¢bBáñé\$>2Ï,ÃÁ\$+š>•ÚZŸÒ1ð)(‹£2Ájã’)@ #7F|X‹b ‹¦ð@üàh5|‰’ÆêÓ:Ñ\r‰Q„%‚Ipm'\r̘bvÉò¹AðYñ\0 ñÌ9#N\n\n0)&!Ìù €ÄPIhC\$‰Ñø5£BfƒIœ\$y@BÀèjÍQN>”7‡pÊ~Èt\rɨ¶Á‚žÍƒI}Í¥c²a\r d0-‡PfSú€æ¥ ¼óÛT !09Ëœ6TA!Z /¯ 4³ `ˆé•-¥&uú‚ŠI &D˜¨ÞCª€1%´©ÄGH mkmuܶHæIC8f¢\$Ÿc=Ã|yDˆ_Â`ž£9\nQdÅÄ>½’0 réöC³âbÚU´A@è’àÎ@Ã\n«H‰Q}›‡´hžHoZ²é@˜À@ˆL(6V„`©\n^Ò€&QëÉ„{\$“%§E>&tôt™!¦tAåNét­ °rpÎv'ÐÞ‘NÄ%…üŽ6+ ˆÃaJÇ‘,ÉêE\0 )F,Ä/‰än Œk‡›²Z–#/9A°ÊωÇ ÚA¿vÈKÉ{sL^ àÚJƒödT*`ZA¹/N –¨bÒL'ô= *£Fó‚ò*QT`„‚eB|\\‹¢&dÅ’‚T\\€Qx/A˜<®#‹\$S¨\nG ùU˜ZaXÈ“E© XµÒŠßL‹í.yôľHy,TÈÅ,m/vi(\na\r-`M«Tç\0¤¾›Ëõ&EøÀ:21A¨²~Pe˜°Î†UI ~<‡1uXÂ\"5”ª´¿5/Vˬr.vÅ\rÛ:µZªua¯„HÐ\"‚.";break;case"ja":$g="åW'Ý\nc—ƒ/ É˜2-Þ¼O‚„¢á™˜@çS¤N4UÆ‚PÇÔ‘Å\\}%QGqÈB\r[^G0e< ƒ&ãé0S™8€r©&±Øü…#AÉPKY}t œÈQº\$‚›Iƒ+ܪÔÕ8¨ƒB0¤ é<†Ìh5\rǐSRº9P¨:¢aKI ÐT\n\n>ŠœYgn4\nê·T:Shiê1zR‚ xL&ˆ±Îg`¢É¼ê 4NÆQ¸Þ 8'cI°Êg2œÄMyÔàd05‡CA§tt0˜¶ÂàS‘~­¦9¼þ† ¦s­“=”×O¡\\‡£Ý õë• ït\\‹…måŠt¦T™¥BЪOsW«÷:QP\n£pÖ×ãp@2ŽCÞ99‚#‚äŒ#›X2\ríËZ7Ž\0æß\\28B#˜ïŒŽb B ÄÒ>Âh1\\se Ê^§1ReêLr?h1Fë Äz P ÈñB*š¨*Ê;@‘‡1.”%[¢¯,;L§¤±­’ç)Kª…2þAÉ‚\0MåñRr“ÄZzJ–zK”§12Ç#„‚®ÄeR¨›iYD#…|έN(Ù\\#åR8ÐèáU8NB#Œä¶ÒHAÀãu8Ö*4øåO £Ã„7cHßVDÔ\n>\\£„E°d:?EüË3–Ç) Fª„gD¯äª%ä`«–ié`\\;‡95J¨å›gÉÄ¢t”)ÎM•ÑtxNÄA ‰ ú«ÖÊÌNÈñ:\r[ˆ\\wØjž”„áÎZNiv]œÄ!GGDcC¯\$Am‹ÉJÜàQÒ@—1üÒvIV¼–åqÊC—G!t¼(%…bŹvrdÂ9&(ÊFFt œPÝ—qJaêQ%žgÅúC-4:b\"s‘åô±JSÌöžÏaÔÄCHÂ4-;ò.…ÃhÚ ƒ\"©]aÈý|6ƒ“HÓäÖ\rã0Ì6\r#pË)vM×m#öâRALØ€¨7µãhÂ7!\0ëV£ÆÜŽc0ê6`Þ3XÝŽ\\ˆÂ3Œ;èAÕ·hÛ¾Ž®P9….cÖFœÅl~@•B¦)Õ­ŽlarÄn‘ŸºÄ Ì@ÈD ˆ@Èد g%ÿ[\nLÝ Õ\0ëVÃ8@ Œ~ü9tc_VŒ@@ -Fî3¡Ð:ƒ€æx/ð ÒßP@.Aaœ†PÜ Ð¢¢Šº‚ }N } àð†|àÙ*#âÜŽ7Š QxœçÄH&%t ˆ)zëp¤Bq.¸Å£ÍyïEé½PP‰ÂTè€9¢\$HÃÀp\r-Ý¿7ê»ùoõÿÀà,}p(9@ÈUTUª¼‚\"¢‚HmØ6Ààé òž§7®Óxpk5¥ ‡߃pt„ˆABA ‰1>'™Z-–™ÒE^otÖÇÕx æÕÎ#XCáQµv†ÍÓ•rñÍ9Ç<è4›8†ì4Àæch q27Â™ÌFÉ#dpŽ’3Æ€²bx@PjˆÅ£Tn:ÉD‡“9’ ¡\n…xB”Î!X’a„yëbfš0†«Ûô—ƒFì×›fmM¸e]¨t9Ctqº—îx;ϧl.ú ÊH—8U ¤£wuféú‡4@åÝZ8‘ì7bl\n#K´;œPÆ#Ài ïìIéhka|mü¼ŠäØ›‡(óbd\n¢|P\n7Wlˆ™dèI‡@¶4\n!¦–!>ñ•)&¢ˆ„%°X¤ƒÒ’KÔÆ€ ’EƒËt ¥všä2„ƒtv8¦é»‡ênPÈfAAµóŧåFÐ0csÈJZP@n`P áL*ÆØLUéƒ(\$Ô@“qCŽKoÃ&q~GÊbNBê© ¢‘ž‰ H´@ˆµ<:@­MuJ ØÔƒ­}Zz‹ÌÒšzbóž€ÍÖ–Ò @ˆLš|hýB0T\n\rÖ´º¸Ô‡]q®hi´Æ—\nã\\¢ISÞ|IL,•:ì.%É\"DØ´ÂYgÞ'šDJŠà¼×lIc,fmã ×ÁvÞ‹Õ{/ÍïA\r¸†ÀW^ƒHc\rj}?Pí/ë|ôÔ4†g#`F¸¡µñ¡š\\ꂨTÀ´*ÝXß)Ìu €Í’e GêÉ©…Šý\"G ómf¬]Æ6ÇXù4&Æ&g4^î˜Ð™yB€Ê‘,(ŽqŽæ@ÉE,ñúŠ»™LÈ™2GÓ‘ÜÈwpû’ñ/Ç@¾&9œÍ\n¬Íš3Qç¬ö‘ÄTÛTy='ãœZ˜âô*3àÂxN46ƘãØ\\/¢¨n:Z\$|°hõŽ ñŽ:ÑÐ×c&×e¤K`iRÑ',p²qã#3uX'qDšÇ(€€";break;case"ka":$g="áA§ n\0“€%` ˆj‚„¢á™˜@s@ô1Žˆ#Š  €(¡0¸‚\0—ÉT0¤¶Vƒš åÈ4´Ð]AÆäÒÈýC%ƒPÐjXÎPƒ¤Éä\n9´†=A§`³h€Js!Oã”éÌ­AŽG¤ ‰,žI#¦Í itA¨gâ\0PÀb2£a¸às@U\\)ó›]'V@ôh]ñ'¬IÕ¹.%®ªÚ³˜©:BăÍÎ èUM@TØëzøÆ•¥duS­*w¥ÓÉÓy؃yOµÓd©(æâOƐNoê<©h×t¦2>\\r˜ƒÖ¥ôú™Ï;‹7HP<6Ñ%„I¸žm£s£wi\\Î:®äì¿\r£Pÿ½®3ZH>Úòó¾Š{ªA¶É:œ¨½P\"9 jtÍ>°Ë ±M²s¨»<Ü.ΚJõlóâ»*-;.«£JØÒAJKŒ· èáZÿ§mÎO1K²ÖÓ¿Žê¢2mÛp²¤©ÊvK…²^ÞÉ(Ó³.ÎÓ䯴êO!Fä®L¦ä¢Úª¬ R¦´íkÿºj“AŠŠ«/9+Êe ¿ó|Ï#Êw/\n❓°Kå+·Ê!LÊÉn=,ÔJ\0ïÍ­u4A¿‰ÌðÝ¥N:<ô ÉL a.¯sZ’Â*ªÍ(+õ‘9X?I<Å[R²óLÇ(•CŽœ¾);¿R®Ò íJÇMœxݯš: H”Š³ÓñbœÖ¤2œê%/üõ¬öJ«=‘•Û•£šŽ7R“*Œ‰,f§Ô´üÑk´€PH…Á g‚†*ýj]°Ÿ\0ÜŠ‚‰)VO‹ù!BTR9pÕ3¥Ü¬Rpm§OÎôÛgdcЧvdJ\$ªì§T¶2NÖٍt Vö•ž§Üïå\0ºë^b´Ã´BU?ŒÊnçizEA)Mkœ¯_(êÐÛŽ pØ•Xu­%ûÝxÑI…ÔƒÄ-ì›>âV ªVÿă`è9nÉm{Ž©÷Š—ÖYÅ+ ê‰=´ôêw94:Š•oö6©puœª¥|¿õ\r[£•{gQ¸×>†»¿ú4{Gvͧ#!y‚㣏q¬îS5!4î¾J¥äý}!Šb*yÉÃèïlìY­›¨’ßè÷t„Ê6ÜÝ“[þ¦ž#š·ÉIVß¿Èmj'MÁ×+v¤ûNkOs¾) ?HóŒ|TÀ !6†ÜC“Ì€.Ýiº'Xk”»·,Æ´êÇĺžû(7o¼¼–Šràa 9PÌAhÐ80t Áxw†@¸0ÀH\rpoAœ†PÜ Ã o\rÁ„:˜„ Á>toÍJ›¢<Nàûê2àð†|ãOúã?.“1#vöà{×uê1Y<2<nŽ¹¿‚Î1˜¤ ƒ±Ït…›¿'ªSÚs¸)ë €0¸žûÉ%vEUÚ'ãÐëÐDl:ÄÝú’faa%„ð¦ÂØ_ aœ5€°9C˜waøeÒ8Á_‰Oô—b<“^‰eŠ‘X¤ô¸ëËa_g“–iƒ¥«¾}±xAGļ&v<FÁ-ȵ<IN¹¸Y\$–W©T§bÔŽgåØ4°»)ÑAÆ/5Å&“Ô-\$ö€SëïCeUsªT½S,uy®¢G—0\"Y9)1€I\$‚8¯Î<·aŽÁišVúqÅSÝ¡&õh­¨0ÍÛˆ™ò(ì-:8ä\\)ì-/5pPWÁI§[4j\n4™Ó;à{ESò}ª³šIMÑ­EëIGs®j_bÕ[?uÓ+⮩”­iò{)šÚ¢b•\$T:••Aê©á¼ê‚@åÚ,#Ì,ûÀù~NP|Ýa±‰ØÈI๋÷RMĜτ*)Ÿ•öVS¦r§sÄ~ys•3BIMú•Œ¡\0‰ vª£É;Œ\n½02ë¦R .Ï™Øc¾ûڐueñ1wlämUp\nIÈ\"d»ƒ4Ëj\$ƒèA¸sËhÓð ˜T->¢v¹çü¿rõ Û¨é©Þš,}3ýÕ¾ò°¨åù'´2±Ä•XÀQíýÁ¸fá™OB9?ëeק„AËÇ‹M]]˜wiXx.9JL“A†Í28©iiÇyʼ#@ óÍ=œ4 ד‘\$ø“<¶R¯¾Â^Êh¿SýM-rùžÃN­n!¹JÅžy”óRæ&ѵ^x‹\ruTg-DB¬Èb10®qQJ·k\$ñŸò<k#š_ ÈÛ¯Lmgç&õ•Ž6·ÅŒ’ƒ`€!·°Ø\nԁ'?˜²0@ÊajNºaM\$5_R_åÚû¬{Ë`U\n,_f¤RVÌwT³O!áÆ.iÌñÆ£Iö ]²=y)¥ÈXµñÏÒ,žSJ7y\0×,eÿ_Ê•¾B]½â<½©´R]ή ,²‰|Wq˜&àWœBµ Œ†]£% Ü™ hæPrÁ†Æø—ˆÂah³J.„.ë’¤7ºâÇ}Sëf ÀH\"LrIö™OJg¡É>Ë\$¥ |…­†rQ½gƒgIw”i‹ÐòvË'Á@ÒêWVS/e¬NÒ paZÛqŸ’ŸÐ8sL.„ËI P5h3Aî\rÙ¸Ù™";break;case"ko":$g="ìE©©dHÚ•L@Ž¥’ØŠZºÑh‡Rå? EÃ30Ø´D¨Äc±:¼“!#Ét+­Bœu¤Ódª‚<ˆLJÐÐøŒN\$¤H¤’iBvrìZ̈2Xê\\,S™\n…%“É–‘å\nÑØžVAá*zc±*ŠžD‘ú°0Œ†cA¨Øn8È¡´R`ìM¤iëóµ XZ:× JÔêÓ>€Ð]¨åñN‘¿ —µô,Š v%çq U°Y7Dƒ ØÊ 7Ä‘¤ìi6LæS˜€é²:œ †¦¼èh4ïN†æ‚ìP +ê[ÿG§bu,æÝ”#± êô“Ê^ÇhA?“IRéòÙ(êX E=i¤ÜgÌ«z Ëú[*KŒÉXvEH*Ã[b;Á\0Ê9Cxä ˆŽ#˜0ŽmxÈ7·€Þ:›‚8BQ\0á c¼\$22KÙ„¨È12Jºa X/…*RP\n± ÑN„ÁH©ŽjºˆÐ¬I^\\#ÄñÇ­lˆu•Œ©<H40 ÙÀ…J¾ö:¤bv“ªþDsÿ!¾\"ÿ&²Ó‘ÖB DS*M‘‡jœƒM Tn±PPˆä¹ÌBPpÝDµê¥9Qc(ðâÃ˜Ò7Ó* ÖU)q:¿½gY(J¤!aL3´u”Ó±rBo‰ÖYAq+¥çQnÊ“µÜŠ@E¬P'a8^%ɝ›_XÚVÓåKÎS‘‰‰I£##ÎX1’iÛ=CËx6 PH…¡ gv†´dédL®U ‰@ê’§Y@V:²!*^Í运…ÚAÔgYSp—’¹fĐR„¾V0dfj¯å•ò[)‰±ˆx™ÖA–àKoaØ„w’±\$¦Ò2\nDL;«=8’e±#é¶<éȺ£hZ2 ’¹X+UMV6ƒ“NÔ„ä׍ã0Ì6>Ã+žB&”í^×ë3ºM`P¨7¶ChÂ7!\0ëLŽ£ÆÞc0ê6`Þ3¾Ã˜Xß[ÈÂ3Œ/°AÉea\0Úû®(P9….{ O—gY ™ˆb˜¤# Ä6@–s΀¡O>M”…PEÈR\$OmŒ©+·î\"£Y·£5:ÓO¸@ Œœ¸Ýñc9M x@ -^¾3¡Ð:ƒ€æáxïó…Û²ÂpÎŒ£p_\rÑã¥7ùA÷èâ>Ã8x Ã>læTB“‘Ö¶X£Ž¸ô\$3ÎïI0¸Hà…\$VlPÁÅRˆœ9¢”VƒƒÀp\r-}=w²ÛÝ{ï…ñ¾WÎßKëyï´9>÷âü»ñSJp‚\"¨‚Hmä6¿èÿà\n‹ˆ§7­ã~åƒk5ᥠöìóÃpt€c²£¶.˜`›¹‚ÅáðÂß²œÜÜ8@ÄkÂxÁÊ\"­à Ò!o­þ¸'áœB\r‡ßƒ^à EŽD`ÒC`s2HÍ£trh\rT4Á@\$d PŸÊž`¹ˆ„ ¢”Ë!,òi+58óãCý7ÆÈÚcpnƒ*ÞDÈ:Ó’‡‘pÁÞ`¹éV* £ä-¶¬å!šû“7¯d9¢vþäÐiÇŠa¸89“fŠPr[ÁÜä0ÐåƒHg{à‚7ÈS^à ÈlËð“™LŽH93))»òc@‰Àë¢ð²/3'©T \$ŠC ä«È\n\$8Æ‚I-p2•¼lQ\rÑ8äÖ¾C©¼D™†×— ž´âA¡Ã!™ 1Ñ9»(!@'…0¨yÚ›UUR˜óˆBÖ+\nÚ~¦”ÈÔ†¨¸•QM)åF‹‘áHwRhê(ᨱÙ*f%TeXQÈÄîÚÙªŸ4à¸gÔ×g¤ñL(„À@¥ø 6ïd#I<ÝÖðiˆH•ÉÓ:jˆPy®Beéj*¼ Ð ”FZ3e¦µQÙð\$… j%U²’³öXN’¤¾fÄð…³ŒÒŠWWm¤¶tLÓ6²]<\r!Œ5¨ÄöC´¦2íËDÐÒ›ÌT(!À†×ˆ'«’\n¡P#Ðp£ž•%>öÙo1hO‰ÐbÂdÆ[CLaŒAŠ\\6¹„°±:AÉ°ì':÷%`›s®‚¤?B þ¡h á\"2†XÌ@qŸ…aÁf\\Àß]ÃjCH[\ná{Ä~ š0+Å‘+Šy` :öSëäI±d,(zÝ Ì)†Ss& §í+²†`ÉÙIQPW¤P1dŒ·]I«H†/Eí|y‹3Ø©|/¬\$eL¸";break;case"lt":$g="T4šÎFHü% ̘(œe8NÇ“Y¼@ÄWšÌ¦Ã¡¤@f‚\râàQ4Âk9šM¦aÔçÅŒ‡“!¦^- Nd)!Ba—›Œ¦S9êlt:›ÍF €0Œ†cA¨Øn8‚© U i0‚ç#IœÒn–P!ÌD¼ @l2›Ž‘³Kg\$)L†=&:\nb+ uÃÍül·F0j´²o:ˆ\r#(€Ý8YÆ›œË/:EŽ§ ÝÌ@t4M´æÂHI®Ì'S9¾ÿ°P춛hñ¤å§b&NqÑÊõ|‰J˜ˆPVãuµâo¢êü^<k49`¢Ÿ\$Üg,—#H(—,1XIÛ3&ðU7òçsp€Êr9Xä„C ÓX 2¯k>Ë6ÈcF8,c @ˆŽc˜î±Œ‰#Ö:½®ÃLÍ®.X@º”0Xض#£rêY§#šzŸ¥ê\"Œá©*ZH* ©Cü†ŠÃäд#RìӍ(‹Ê)h\"¼°<¯ãý\r·ãb ¡¢ ì2C+ü³¦Ï\nÎ5ÉHhŽ2ãl¤²)`Pˆ›5‹„J,o²ÐÖ²©ÔÐßÍÃ(ð¹ÉHß:¤‚›–Å €Rò½m\nÈ—Q¬nÛ)KP§%ñŠ_\réª(,‰HÔ:»ëø  4#²]Ò£M.ï¥KT&¥¥ìP®-A(È=.Ê€ÕÕ‚3 •¥_XŽ‹°<³àS.ˆZv8j挪â*¿³c˜ê9OÈÒ¿<¢bUYFƒ*9¥hh‚:<t Ê\"tU”1š¤B\näÅ»D¸J\r.<¸o+~FiÍ_%C’`\\ßëµû-è%œ‚`øIfáŒ8f g1 RöôÚ‚@ ¢ht)Š`P¶<åȺ£hZ2 —É+¸ƒ\"“/DHj9j1ìŒlʍã0Ì6,ã,òûÉô®eKS:þ*\rè²V7!1i c>9ŒÃ¨Ø·ë4ê4ã–ªä,ðÛëZ«8ê¹…˜S JVòRï¨\0†)ŠB3N7£KDLCÜ™Â̪S…8ƒ2Æ6é~m.®-RößÈ1»–’ F)V—¿ºc¿2£r’†(ã/!<,›â—ñÍú\\³Œá\0‚2mªå² sºR2>á\0yŠ0Ì„C@è:˜t…㿤 =ÆŠ9Ëή!{Ú´#³¸^ÞûûځxÂhô·\"W\"•R¥õˆÎ¶%7UñÑq0Ú¸e˜j\$d•N<ƒöÀߥÔðÌ“Æy)æ<ç ôƒ»ÔzÎéì‡'¶÷S’tNÁ¹ñ“ |Chp. à:>—Ö™Òñ¨R-ü²4†ÐPp>íL¸‡GÚ¨‘Ù`¬<®N´ÈðbsÇŒ*6œPxh2¡„1¾êÌã_ FV'b—•xa ÅÌßµ†´ƒZë_\$MˆEƒPiâ‘ )x3Œð!,u†¶±XTˆHi\rå®>™e¼Á—Èv!\$´ºŽÂ€H\nz@\"\$v\n ÓsA\r;”(ªí!¡™\r&lΗ¤‚Iyª2è(– ïˆsu&ÎЏJ'DYœ€ rlà<ºÀ©Ž2t0ˆµ¦Õ ©g\r½u Ô•xw5!Œ4CRÊò••5T1›0æÑ”)¾0Œ’VKIyp\r!‘G–\0ÚŽÑ`l‡M„bMŸÓ՝i\\ì¦×XHXy2êu D7Ü<p5G8‡S>‚ƒ1ù\r®Ú\r¼¶}C\"›ô(—‘<IƒÁ/fÐ\0ž¤ºfåÄÆ‚\0¦I\\í>3ö•9@Ý=WÈk#\0•ÖMI­34ÄT7bÊçˆcTO½Ó1@éPÑ:1ÔnŸSFHž­<V–—˜GÌá•3lT#I&á•y*AÞú\$CA÷\$†>J’¸ÌË”P0 v7’\"FŠ=z®•ô9¦å¤Öš3¤»0jª•b&*nÀ0»u+èi`öRÆ·›.bØÈC\\°ѐÒÃZh>¬T;Ê\r5 ÍTì“ÚÃ\rIr\n‹s*…@Œ AÂjwµ3’K?a™#…1]4øGˆÅÊ#¬ã•ÄwtHÙþn„a©¥Ö*W)Ä.ȍ¿‚J¤CM³TÄ_ÀÔJˆ°tµ¡É §àòW \nŽåñlâÆ[ Ûm8§¾›Ì@Jàm80\n8\ni~ÕÁ›—.˜±©6‚`o«.B`šRÆgÑß^ä¹F%Tb\nU\nɐ—œ`ô׏ò…Yã5sŒÕðS#a–*—£ÌH°¡¤¢µ®èQ‘KPIY¢…g‘éwK%ã.h|KÍü1o*ö°j°ò„»Gˆèp9`";break;case"ms":$g="A7 \"„æt4ÁBQpÌÌ 9‚‰§S Ð@n0šMb4dØ 3˜d&Áp(§=G#Âi„Ös4›N¦ÑäÂn3ˆ †“–0r5ÍÄ°Âh Nd))WFÎçSQÔÉ%†Ìh5\rǐQ¬Þs7ÎPca¤T4Ñ fª\$RH\n*˜¨ñ(1Ô×A7[î0!èäi9É`J„ºXe6œ¦é±¤@k2â!Ó)ÜÃBɝ/ØùÆB k4›²×C%ØA©4ÉJs.g‘¡@Ñ ´Å“œoF‰6ÓsB–œï؁”èe9NyC J|yã`J#h(…GƒuHù>©TÜk7Îû¾ÈÞr’‘\"¦ÑÌË:7™Nqs|[”8z,‚Žc˜î÷ªî*Œ<âŒ¤h¨êÞ7΄¥)©Z¦ªÁ\"˜èíBR|Ä ‰ðÎ3¼€Pœ7·ÏzÞ0°ãZÝ% ¼ÔÆ p¤›Œê\nâÀˆã,Xç0àPˆÄ>ƒcî¥x@ŸI2[÷'Iƒ(ðçÉ‚ÒĤҀ䌁B*v:EÂszŽ4PŒB[æ(Ãb(À‰ƒzrä¯ÀTë;¯¨Û0 €P’禌0ê…ŒŒ(òç!-1QoЛLhցˆZtØjqȝƨÀZ–Í‚›¤ÉBBˆ)zÜ(\r+kˆ\"³” å\"ÕCÔ2Òâcz8\r2ûW\räaDIõÈ@çÁéÐÒ4&öSà>Ê\rŒ3Õ¢@t&‰¡Ð¦)BØós\"íN6…£ ÈV•²tùCd?X (ìÝ'#xÌ3-£pÊ’Š*Œ›N“³/ƒ\"ƒ’ÞèN0šôê#sHä1¸Lûv6aSÂ7„')\nF\"ªŒ/S‚DË(­ìk©4HÚ؉(¨7³\r؆)ŠB5ž4ª-àÐ\rœjY1ƒ\n÷ÇŽm\0Ë(Ã;c=aLÄå¥'£’è›f΂b¨)‚ÌXÈ8œMir„ Œ™ž9d˜³7‰Ç­’чˆÐ9 £0z\r è8aÐ^ŽüH\\¢m΀\\÷Œáz|Œ‹J*4­!xDlã# –‡xÂ6OÓ-h(ó€êÉ™\"aã“ã•?2 ÒÚ’ÍÖVU«·c­”–Ùø7S9uš&òo{îÿÀð|/ÄŽü^ÚÔñ܇\$7rRº}-{”<hÃÐôa\0Ç rcBÑìã=€0Œ¨Ùg JBݾɄJ9NV’\\B1€fÁ û†ÆB H êԏ“×öyœQ!„3ðäD¨c gè9†`êG݉©A¤:ˆJ}Љœ|ÍñÏ,’âáp.HPß“‚nIì5~à€(€ MZh()@¥i‚ÌNûACeY‚xr…Ù˜ ˆ\n Dƒ4LLéRËHž“ø¬ yú‰&9´2ßá¯?kè‚Á³^ná<ou„ƒ dƒ@i e!™†waO¼q|çI£r\rÜ(N¢>0`Ê–™–ZŠ%EĽ\0š+&gäà ‡C˜†\0PJ#D ›˜Æ€cŸkHZÏí·,¢„l™‡\r±ÆÁw_ó«yÁ3›³`|SxP áL*<øü‘úF\r%†PÆ­NawGÍ ‰8ENaÏYFÔ¤¥Ã@ÃoIQðŠb0F‰Rµh¡D&ERrOPŒW3 Ë`©Ñ¡´Š“Í9dÒÁɹ%PfAà­vAHm‹ô šHŤfI¨5T B\$ÊNØô_QƽBPWS•ùtK\r†ÀVËhcb°ÌÕc,úÈÙœmÄ Î£8AÙd¼&‰¤Ò–dhB F à’ѳ ‰(¸iŸAÉš¯ ­V™B5†º-µ–¶uU¢ùMœ:Žp¢€\nc'ð¦€ÂïÃÀÇÓ2KHÌojiÔ¢' ´×šÊj…Ô­Å\\Q•AkFK6†WXtŠ˜>ÉÈè´…™QȈT: [&Ö8`B)/@51A¨Íy l´šU7á(K­§;戗—R¯ÍPs";break;case"nl":$g="W2™N‚¨€ÑŒ¦³)È~\n‹†faÌO7Mæs)°Òj5ˆ FS™ÐÂn2†X!ÀØo0™ ¦áp(ša<M§Sl¨ÞeŽ 2³tŠI&”Ìç#y¼é+Nb)Ì…5!Qäò“q¦;å9¬Ô`1 ƃQ°Üp9 &pQ¼äi3šMÐ`(¢É¤fË”ÐY;ÃM`¢¤þÃ@™ß° ¹ªÈ\n,›à¦ƒ ÚXn7ˆs±¦å©4'S’‡,:*R£ Šå5'œt)<_u¼¢ÌÄã”ÈåFÄœ¡†íöìÃ'5Æ‘¸Ã>2ããœÂžvõt+CNñþ6D©Ï¾ßÌG#©§U7ô~ ʘrš‘({S ÎX2'ê›@Žm`à» cƒú9Žë°Èš½OcÜ.Náãc¶™(ð¢jðæ*ƒš°­%\n2Jç c’2DÌb’²O[Ú†JPÊ™ ËÐÒa•hl8:#‚HÉ\$Ì#\"ý‰ä:À¼Œ:ô01p@Ž, š,' NK¿ãj»Œ Pˆ©6«”J.Ò|Ò–*³c8ÃÑ\0Ò±F\"b>’²\"(È4µC”k G›¬0 P®0Œc@éÁÀP’7%ã;¶Ã£ÃR(çÈäÄ6 €Pœ¯£º¢•Ñ!*R1)XU\$UlŽ<Èí\0¡hH×Aˆ-'îZêâ +è§!¬Š³#9@P‚1Ž‘%ÚB(Z6Ê‹è¬Þ£3’8JCR…K¼#’±¹•€ËkÛ.=,I’iW¥7]°Ó*n%át&£pê @t&‰¡Ð¦)C Ék¡h¶5bPºÉK#r¦ÿ.V…’æ\rƒ¥Ì ®¢X7ŒÃ2<½¦¢šâB­JÒìkCl\rÃÊ ‹£Æ’c0ê6ªô9º8öl0Œò¢Š½*‰HÚ½©XP9…-Å:ŽÏã8@!ŠbŒŸ9apAr¤£¨êã èÌ»'hò6\nèËR¦¹pé˜8MCx3Áìc8øª{[Ž:Ä4è@ Œšzö9:#ð4¸Á\0xëpÌ„TpèÝAx^;ôrcÅ!¡rì3…é˜_\0:ÖŠÄ„A÷X¡»áà^0‡Û­Lÿq\nXÙ¸‰|Œš þÜÏn•J¨°)fðÃ&óãw°k‹„«ì\\š\rËs×9Ït¿Eį]/OԍÝL?-NÿhDª‡ÂHÚ— ³Ü:vÝÄÖ˜ˆo%&¨-‚©Í\rf„Ì:2–xˆ )?(‰\\2¨Å¢g’ #æ*pAŸˆ <f£@äà“) !˜•œt\nΙã>h\r¢ž3bJ ðsQ°1¢åä´V*1/ç :¿ËÊ)Ak\$°(€ ö±\$EJ4÷#žqÁAUj (!–\"ö´ù>4FÓRÃt*fÍÁóÌK}#(¼<â6ẃžbÄÖ¬’¢TθsALíæC‡~ƒƒQ4H-ëîl”l/\n:›x\\ e&¤Üœ“²z§JîT‘¢ãÝ[\r\r5­RjH y3GIÈÚ‘I±6h¸8‡RŽ1L'®!Òy,QC/?ÐàÙ ¢8MB€O\naPšâMÉQ,)e6T.PÖ\\šb•gd¾yk5Ž»\$]ÁÊU‘³¤œ\n›Ž\rÈô3¶wi&ŒÄ³ h\\ÖòcÉxL(„ɁNi:á*Dò¶T_º0‘VVéT’¨gŒ5fúhÒœ#RÑ—òœMTy'íðš«\0þ`ù'¤gö¯ENþd2 ´š„6<\\ßBa¼8!ӄ⺢¤È…M“bŒ¸F¡ì’ÂV˜B F á'¸äþ§ii)2°Š ‘Á†+èŒi 'Sc+QÒy µž´’´„ÕˆÑA#ä„ÁÚœÆ+EÇ0&À ÒƒÊÎdÕ™ª¤Gg¹\$iyA£yÞÐKÑ!VLÅ\$ØOja,©Q!Ú\">£©† „Á§cþ~ÀU«&'|”ËŠ,O€(+!’äÖL¡\$g䘡‘\nÄGëq2,©Œ’µB'èigd4W²²,’®¬m_¬…8OÜV?Æ0ڑЮQÌ)(©ÙÔLÀ";break;case"no":$g="E9 ‡QÌÒk5™NCðP”\\33AAD³©¸ÜeAá\"a„ætŒÎ˜Òl‰¦\\Úu6ˆ’xéÒA%“ÇØkƒ‘ÈÊl9Æ!B)Ì…)#I̦á–ZiÂ¨q£,¤@\n FC1 Ôl7AGCy´o9Læ“q„Ø\n\$›Œô¹‘„Å?6B¥%#)’Õ\n̳hÌZárºŒ&KÐ(‰6˜nW˜ úmj4`éqƒ–e>¹䶁\rKM7'Ð*\\^ëw6^MÒ’a„Ï>mvò>Œät á4 õúç¸ÝjÍûÞ Ó L‹Ôw;iñËy›`N-1¬B9{ÅSq¬Üo;Ó!G+D¤ˆa:]£Ñƒ!¼Ë¢óóŽgY£œ8#Ã˜î´ ‰H¬Ö‹R> OÖÔìœ6Lb€Í¨ƒš¥)‰2,û¥\"˜èÐ8îü…ƒÈàÀ É€ÚÀ=ë @å¦CHÈï­†LÜ Ìè;!NðŽ2¬¬ÒÇ* ²ó Æh\n—%#\n,›& £Â@7 Ã|°Ú* ¬¾8ÈRØ3Ä϶ŽÃp(@0#rå·«dÔ(!LŠ.79Ãc–¶Bpòâ1hhÉ)\0Ðc\nûCPÂ\"ãHÁxH bÀ§nðÐ;- èŲ́£ÿ0˜ÖÅ<£(\$2C\$¹P8Ù2¡hà7£àPŒÅB Ò›'õªú¼Œó#ÔÐJmw¨-HèPôËgËÈ*–2ZtƒMW‰К&‡B˜¦ zb-´×iJÓ ¶5n>|,Dc(Z™hН-À²7 ƒ ”3 ÕšªÀ¡R¬&N\0ëS\nƒxÞNÓú*ýŒcî9ŒÃ¨ØŽOrÀXÏÏí°Â¶0ª%6­˜˜ÊaJR*ŒãÈØ¿.A\0†)ŠB5ö7¡*`ZYt䂍cPÊÈ°hÈϧ6`Pª:OVLÆH\rˆò„0iH¨42Ik}‰ Ùè‚2f¸å“ŒrÒ Æ !àÂ\r ðÌ„CBl8aÐ^Žü(\\Åí«ÒÐ3…êX^ú­©œ´„A÷ øLaà^0‡ÉI†L\rnv&6'cƒ£Þãt3ÁzÌ⋃†7P¶êV¨ŽUÔÚ9ZÈGÒÚaí¼o[æü:p Ãq g9qœt«+Ë#w(¢‡ÂHÚ8/1|ð…s\\ä!¬ŒfÏ) Í#‡©§m[ÿά’—nóýZ&0áŽÑÓVÕXu Š\rÙ\nVÄfPˆcrE0;“DFXr}!ɨ0–ËcÁ͐2&HZàbÃ\rÊ0‹Á\0c8¯Ì4–ä4aË™LbaÙòƒ ¢5„:µˆù‚€H\n\0¶ÃT.kAE%4€¯Æ¦RË›«aa\r-xÖÑ‘Û\r0Ñd×bPå›Ð_Y»9gmm9:äÆÚ`™‘a©-@r¤FMwh2Ðé `pbnÅ\0 7x¸h\r!Ž³\0Îß |\$#Œ0‡R‚JIYO%äÄÉbIIøtM07°è\nÝ;\\)n­©Ô2JBI,#hÆÏÒÛ„‘ˆŸê}Îpf=„ŵ¸˜šfJ`cOE]š\$\0\\ÊA¤#æ2/W¼ß0ii9¨<Á%ŠÕ>3\\ÆæN^\n®öH\n†AhkKD˜3‡SÛ‘~'Ά-¶AY’#„x›’\"H]&™\naD&ÒLÈá£wÁP(#4âöÕCî.“\n=0Ò¤ÕB‘‹.… 9‚@·i 剈̑Î\$P^ÌZR¤‡Àç'\"R¢4ÐÐ9•¦µiÉC€´òŸ†ˆÃ`+\rh\$„;†]q~lõ<ÔѦªRM“û4ïõ‘‰´B F ì2†sÊÙàg¦ê Å;Ò3F\rý/¨´¡•:à—–èK ERU+r0|M²AªªæÚÑL`\n/„v|6àqKùÖ<ˆâÛ\" M”Ø#LÒšu·Uüªw¤¥›JÆ'\nõ:nàÀÃPAŽH'ä`Ÿ°Ø|i:Í­µÎ‘`¬[ƒ:¦ ié5RZ®Íùp®ê¦WN&ï6¬è:ÁP»‹ol…&H¨2€";break;case"pl":$g="C=D£)Ìèeb¦Ä)ÜÒe7ÁBQpÌÌ 9‚Šæs‘„Ý…›\r&³¨€Äyb âù”Úob¯\$Gs(¸M0šÎg“i„Øn0ˆ!ÆSa®`›b!ä29)ÒV%9¦Å ®Y 4Á¥°I°€0Œ†cA¨Øn8‚ŽX1”b2ž„£i¦<\n!GjÇC\rÀÙ6\"™'C©¨D7™ 8kÌä@r2ÑŽFFÌï6ÆÕŽ§éÞZÅB ’³.Æj4ˆ æ­UöˆiŒ'\nÍÊév7v;=¨ƒSF7&ã®A¥<é؉ÞÐçrÔèñZÊ–pÜók'“¼z\n*œÎº\0Q+—5Ə&(yÈõà7ÍÆü÷är7œ¦ÄC\rðÄ0Žc+D7 ©`Þ:# ØàüÁ„\09ŽïÈÈ©¿{–<eàò¤ m(Ü2ŒéZäüNxÊ÷! t*\nšªÃ-ò´‡«€P¨È Ï¢Ü*#‚ °j3<‘Œ Pœ:±;’=Cì;ú µ#õ\0/J€9I¢š¤B8Ê7É# ä»0êÊú6@J€@ü¸ê\0Å4EƒœÖ9N.8ðƒÃ˜Ò7Ï)°˜¬¸@SÁ¿/c ¾ˆûÒ\$@ HÞݍƒxÎãON[š0®®ZøÖ@#˜ÕK Ï¢È2C\"&2\$ÌX脵Cþ58Ue]U2£¸¾=)hÁpHWÁˆ)C¨ÖŁC8È=!ê0Ø¡½\"œSúê:H†ù¡2äc¦4Zž#dŒ0±C¸Ç\"Æéí°Ù%&! )QM€®”i\r{ŽiJ<§Õ-Æ0Ü¡p~_ÏœY€àw*kƒ7éán>‘&È::÷‰@t&‰¡Ð¦)P˜Ú o»î.B€ßp<·\r“Ê‚ èLÖ3 É>›\nq:h9=T&Ã6M2•¥£«ÜŒcB92£A£>ŽðÂ# æªãAoœ‡JxªêâŽ^\r¤ŒšZ®2éÈó“©kÅž­¬;¨þ·®ê›¶Á>Q)ËV„8êámjÚ˜éˆ~ã¨n›îïIk;Ö¸9î£ÿ±%«šƒÂpâl'!ìà‡ ”pî)ÃZ b˜¤#Á\0§Ì¸Ý^\$0Ã3ò6Ž£`Â÷!|Æ›^ûÆ)·Â~‡¿vc–’ žo= PûÊ@ Œ›<O½ÄŽêc©ð±2ŠÐÈ ÁèD4ƒ à9‡Ax^;ÿuÑï?OÈΠÀl挠Döx\"ÆŒ¾¡2xaÍ\0‚†¢‚êÃ:bmq)´e(P»ap\$ԍb·\nAJ\rh †rR­Pú!(Aæ »·júAë ¯µ÷¿æý_»ùiY‚çý\0 eNäA='ÈTñ²\r!¶\0’â aT‚E 0ܼœ(e)Á‘ •¸_Qùtð€¥BXPcQ)„‹ÜžÁ’€‡H2k LH:Á’1MHw@\$lB !Ž'„¹Ca&@D09;àä’U@a Ìi†0ÆAC˜fx-]I%i”¨@AÍL Æd\$W.Á°9™‚ôcÃz%Hž]· 1EÚèCåÎ\\K©xŠd…C¼˜“2ì§×›sx«ÅyËÒ@¥_9r?áê04ù¤\n\n€)mñá3¬&NÄ\$¢y%\" H\rÅAÑZ¡ƒ8@Hrh\rNViHòKMzB*EŸ¤gJgCK©%DÑ™L7”Þ¤<‰2ÈG'Íðn5R&Œ–´ƒÐ‰“(A 4µ\nC;ð’TnWÙ ‚(\rgá)8\nNIÙ='ñ€‘% ÅL©h‡=3žœI°J!ð×Î7V„WôrgF¬Œ&\$ø@‹“܍í)†ÓäMaNMgÈ7¡IvîØPz\$ó•·Mæ¢íBÐm+u7†%>&JrÝ)U¹©ÀêÕ¨ \$èÛR!Ä( 8š”R:ÃÈj± X+ \$Ê©©\naD&8RaS*8w#Žð¥GtšÅžåÄ`¨œ»U N) ¹æåH{'AHÈ¡\"æùKá)Cˆ© òM­â¥·ñÄA9àÖa ðiSòä[Ó&š®Ì@sx›WG鳄TˆIµØkÀ¯Ö0W–ïÀv\0cïRµ&Á\r1ÀVÊ©5‡vÛרÎIÈ`98î”’lÌM¸³1–ÃRIÐál/„9> (îB F à›^›•vn\rͶ‘Q]Ee|-X¸˜AU† ‰-»yaøy O\\A‹/¶Ø¹Vú €›ŠŽ# â†\":‡+äÄ?ƼØØcÉNƒ,Ð j>Þ<#N[°Ô\nªÖ3âHqÍ1¨¢¸\0ÛÎô8Ú_=ü¯0¥ä%#bäyË“æ²¾¬ÜpžÑn\nuX \0¬Vùê=’ð¡ö\"YßƆOÞ3&tmñ2Æí&H»¦“B!›*«P\"“¬v‚N0[ ñb¬{ö€ƒ¾† Ú&“d¼¬±®xKV’Ö¢ƒ£Œ¦“»Ó á\0";break;case"pt":$g="T2›DŒÊr:OFø(J.™„0Q9†£7ˆj‘ÀÞs9°Õ§c)°@e7&‚2f4˜ÍSIÈÞ. &Ó ¸Ñ6°Ô'ƒI¶2d—ÌfsXÌl@%9§jTÒl 7Eã&Z!Î8†Ìh5\rǐQØÂz4›ÁFó‘¤Îi7M‘ZÔž»  &))„ç8&›Ì†™ŽX\n\$›Žpy­ò1~4× \"‘–ï^Î &ó¨€Ða’V#' ¬¨Ùž2œÄHÉÔàd0ÂvfŒÎϯœβÍÁÈÂâK\$ðSy¸éxáË`†\\[\rOZãôx¼»ÆNë-Ò&À¢ž¢ðgM”[Æ<“‹7ÏESž<ªn5›çstœä›IÀˆÜ°l0Ê)\r‹T:\"m²<„#¬0æ;®ƒ\"p(.\0ÌÔC#«&©äÃ/ÈK\$a–°R ©ªª`@5(LÃ4œcÈš )Èҏ6Qº`7\r*Cd8\$­«žõ¡jCŒ‹CjPå§ã”r!/\nê¹\nN Ê㌯ˆÊñ%r‹2ßÀê‚\\–¥BžÙC3R¹k‹\$œ ŒËŠ¬[i%ÌPD:ÈãL’º<‰CNô¹Ò³Œ& +¥ å Œš}‰ÃxìŒË¬ûh‡ \0Ä<¡ HKPÔhJ(<¶ Sô¨^u˜b\n °Æ:ÑÀPâፕú\rƒ{½‰ã”n¼¸ÓÈÚ4¡ P‚ë;šJ2Œs³\"…©àÒ½ˆ’ø‚®rä Êä \"¥)[S¤öòL”%Q²oST(Ão¶W¢W!'κG\"@ ¢ht)Š`PÈ2ãhÚ‹c,0‹´K_l¹®Sq!CcÄ4m*Yã0ÌõÝ)Ŭ9%RRrƒÙöb&ؤ(Âr7¨ èó2C¨Æƒ\$0ê“X«»\$6c–_oêð§Ô9­2…˜Rœ\nƒxÖ”¦)Áð;(OZeêðCK Û£¥‹‹T·IÎpË—g ê9f±²1¾0nˆ9¦éËNü6C4;:Ã8@ Œ™ª¦pŒ”ƒa‡ˆ ÐÎŒÁèD4ƒ à9‡Ax^;õtmË@+ Î¥z¼¹îh^Ý»ró‡xÂo‰ú® ¯¦AðÔ96Q°<o»ñ\"k\r¿Â))e/ÞK; ëMÐt]'MÔu]`ï×r«Âv] ÝÚ¤íݪð’6Ž\r~ò ÃMà'B~¨M¤ -}³ Ĉà é(„áq³wŒŠQèe\$„ؘ#¤sËq‡qH0†7rCºß\$ÆŽwà¡ Ï`9´'Ñš@oi@‚ÀcvÏªN ¯~ °Ùˆ±—\rÅ9’†r\\‚rŠD\$Ü/×ë‘B\n\n ( Ô`¢¨ @’r¼ŒLXs#É\0’ÄhsWL&<æÌÕšÕ¾l _6Fôý Âô±C¹Ô'¾\"˜Ðµ »gm)0µÂfg[1²R¡Â v§¤°n\nì¡4+\rá2€…ÙÒ*\$&(aCÍì†s¤cÓ(% ¢ÅDcŸá…®h\$tW1‹`\0 Ô6¦Î’!‚I¦’\$M\"H(-›†èo\r‘XEy\rbå„??¡b¡ø od g•@'…0¨ˆÒš7'‰Õ{\0Ε¦³{ t2RKñ<'Äfhʧÿ &‘„Øæâ`Õä‡:æ]²I¢cé¶X¨Øª\"ì˜Q ˆj;‚ê0T‹¤õP”X¿fë…;Ä‘\0€¥:žŠÙëp-®›êq QŒ&+ØœSs@šŽé”§‹Áh°Â“D_6'C*¢À\0PC<A°Î@Ò°©1\nAN 1I2[–)-’‰X“§à V*,5ð ÈXÔ¨TÀ´pÜá [‘' ÀΩâ3K‹¤`^öŸ÷.HBö‰ô§#ÄëY»H£ɉ1a˜<°å°gC™oTöÐ-H0Š5£¨g*¨PôÊ!x\ruÙêÔK!zoä±<ú8Q¤¸0@(&\\kzBiHäa‹¦DQRá±hö(æ?Ã^§ìe†ªvœE¬ÆÈHd«+fñÏuƒÊàØ«ôÎKXüº/&ÊÏR)m=°Éð9¬\$E\"… j&à";break;case"pt-br":$g="V7˜Øj¡ÐÊm̧(1èÂ? EÃ30€æ\n'0Ôfñ\rR 8Îg6´ìe6 ¦ã±¤ÂrG%穤ìoŠ†i„ÜhŽXjÁ¤Û2LŽSI´pá 6šN†šLv>%9§\$\\Ön 7F£†Z)Î\r9†Ìh5\rǐQØÂz4›ÁFó‘¤Îi7M‘‹ªË„ &)A„ç9\"™*RðQ\$Üs…šNXHÞÓfƒˆF[ý˜å\"œ–MçQ Ã'°S¯²ÓfÊs‚ǧ!†\r4g฽¬ä§‚»føæÎLªo7TÍÇY|«%Š7RA\\¾i”A€Ì_f³¦Ÿ·¯ÀÁDIA—›\$äóÐQTç”*›fãyÜÜ•M8䜈óÇ;ÊKnØŽˆ³v¡‰9ŽëàÈœŠ à@35ðÐê̪z7­Âȃ2æk«\nÚº¦„R†Ï4 Ȇ0Œ‰X\r) qŒÌ¨‘\$ Ct9Žªú½#%ÐÚ…¤O\\ ç(”v!0Rò\nC,rã+æ÷/±ØˆÏ¸Žò°˜¦ÐÄÚ„\\55ÄéXæ¼²éȘϱH»\"©/¬‘-/BšV×B+£+3b`Þ¿¿êx䞍ÉZ Œ\rêüºÒ¼«ÐJ2òƒ4ýCQ¶àPóT¿€PH…á gX† P ÓŒc­&Œh…„bÁBxå°4jŒ©  P‚a”ë¶öŒsÃ(\"…©èÒÁ½–rF:º+ЃJ–²•20ÛpØÞ4¥Ib\\¤…Õ-AuÛmÀ̾'—Ð¤±àPÂ3߀P\$Bhš\nb˜2 xÚ6…âØËŒ\"í¦ÚÚ®ƒªÞà\0PØòMSX—»ÃxÌ3\rŒ\0Êã!ij’å]ŒØ¨7¨)ðó²ã¨Æ…\$c0ê”ØT€æ £–wÝû8Ô\n‹¦ƒ˜RœæãZVb˜¤#;éb‡–ށΗ<wu'¡¥ëËb»IîŽ^ó¤­íBÐÉS\$Þë\rsõ}CÓ¸Ü3„É©!z@ÆèNñÊ` -kF3¡Ð:ƒ€æáxïÏ…Ñǯƒ8^•…êK©ºxDuMóÒã}˜\$l*È83QÀäBÜ:˜h£¨ÊÄæáKnbkƒ&„'\nØì7xÑÂá!É ¼§-Ìs\\ç=ÐtYwH9tÝDêËÏr° #hàÚî#§iÛN-Äž:(\0èÎZÑßAªIJ)cŒnËá¿r&aÜ¢´~M·=æ´Å­³&½ Ðh;Á„1ºÃþÖÙ)1‰9/µ&—\0a ÏA3ónÚDQí>?ÀwºO!/aKàØÀHɝ\rÍõ§s F:\"r(”Ã\"‚I\0P A!AX\$¨³#3\$Én&Ä¡+OI¹\$Ím›eAÁÂ?ˆ4Á, î—‰Éñ‡©1† aL\0vleP0·ÒwŽ zD)°Ãv¬zhXs‚Ã@ *!Ë·yPûs\n'PèÈDs&ŠEDrž>¿\$‰\n’CDÁá½K ]PÒ&äÀ0¢'˜þcÉ&­DE‰[þ8&àÑ«ò̆Í9pÎŽŸðÆ°‘ü8OH3·0 ˜TD‰M“ÔîŽàgJÇe—‚º©&'\rJbÉåór…3Ñ•2ì‰ó‹\rÉ3«¨ü´Lê-d³>Ÿóv°‘Äû Eø0¢Üm  `© ò (ÑZMç2‘'@kwDøi×rðG&Ö+“ŠX¦éy_kÀßFZC ÀO¥ªpÓ¦ºvØO\nC'*™fŠ\ntè^µ2'6¥ûT)«g”6¹®Uù\ráˆÑÏ2ì°ž‰/r)xÉ‚Õ„NB5\r¨}Â6žB F áx¸³\$àêZ 4u.ó¿+ˆeR^ÆŠ—d‰ —í#3¢ R<H w\$ä¤Ì1Å­/;1±„ÐÞdƒ0yaá”1š0æB›’\\1±þ\0ªØ{Ï©S§ì¥`˜\0ÖuŒiJÒjÓ†˜øu`‘Þ¬åñ=ú\"Që)½1@)G#ƒÒ­ŠGc ]22Œ^’êHds ç¿*h§¬S¶.ÁÓ’.¡˜á €(!¬%’¢CÄV2Æý°„‡ãé0d À›‹DcH¾´–ÊÂ'àæ¯ÑkÐ";break;case"ro":$g="S:›Ž†VBlÒ 9šLçS¡ˆƒÁBQpÌÍŽ¢ ´@p:\$\"¸Üc‡œŒf˜ÒÈLšL§#©²>e„LÎÓ1p(/˜Ìæ¢i„ðiL†ÓIÌ@- NdùéÆe9%´ ‘È@n™hõ˜|ôX\n FC1 Ôl7AFsy°o9B&ã\rÙ†Ž7 FÔ°É82`uøÙÎZ:LFSa–zE2`xHx(’n9Ì̹Äg’IŽf;ÌÌÓ=,›ãfƒ î¾oÞNÆœ©ž° :n§ N,èh¦ð2YYéNû;Ò¹Æ΁ê ˜AÌføìë×2ær'-KŸ£ë û!†{Ðù:<íÙ¸Î\nd& g-ð(˜¤0`P‚ÞŒ Pª7\rcpÞ;°)˜ä¼'¢#É -@2\ríü­1Àà¼+C„*9ŽëÀÈžˆË¨Þ„ ¨:Ã/a6¡îÂò2¡ā´J©E\nâ„›,Jhèë°ãPž¿#Jh¼ÂéÂV9 #÷ŠƒJA(0ñèÞ\r,+‚¼´Ñ¡9P“\"õ òøڐ.ÒÈàÁ/q¸) „ÛÊ#Œ£xÚ2ŽlÒ¦¹i¤/Òø1G4=CÇc,zîiëþ¬À¬Ã4¼L¬BpÌ8(Fë¨ÂÏ C“:&\rã<nœ šŠ7RR;J¿´\rbºœANûJŒ”D­@6„Å Pò¬PP¡pHÚAˆ!¡é\r^»¯( éDÛþ¦Ç 0(¦Ê ¶¢(\ré„×vJÐxÜ4¥\r(ˆœ\r•8¡Z¦‰ô„ò#ŒŠ`ÅK ÍɈ)lVÈaNMŒ¢·p £c6àb0¶&÷\rjׁR¨ê6B@ ¢ht)Š`Pɍ£h\\-9Èò.ºW£6ôCe6(Ý_D Ã0ؽ²ÙèäÍJ˜¼€P¨7·˜ó4¨Æ«Žc˜Ì¡•kàcšØÃWF1Ž&ï a@槢¦)Î\0Þ5ÒA‘¡#*O\nÍ'Ð䢪±ný©³A\0ÆÓëêÂz*6BÅFHKì*^˜9mÜzëÁâX4<ƒ0z\r è8aÐ^ŽýÈ\\¥)• ä/8_IðÂù/»xDxÌRö3‡xÂrûú†Ð¡( |ŽGCÀá'1[D3¡¸ìëô×n ƒBñzž‰°«öÄq(å`¬^ûÉ„P@ë+®vÉÚ;gpîã£xñá†ç†á y ˆ©à’›Ìª OEé•œŸÎ8oX'ö·ÆüˆUaV„æ•€Òö‘ʁ ¡ˆ:“'Êz‰r°/ ܁¹pÐN«È0!ÜÞc&MÓŠOë0†gæcœ«aldÙ²†tc9À‡ä Ž¥'ö­CI}R¦™)‡»I”d+,Úƺ÷ dÜ)zNêáVÀ€&èµÎâ´JÏ=½ÒnÐ\"ÁCáÈ:ã’†Èàll¡Üð“Ò4ŸÑÊ]T\r-QàæHÚ\"Aëö2˜°Îyʶ‡Æ‰¿âXÑWoÆã“‚öH õDÀ€;œ€Æ\n!\nv&œKW%(\r –d䤡”RŽG’é%W&µ.Ô>½ã|@aÅe‚Ÿ\0\\ˆj/…Ç\$<EÃɲ}«HÝÎAN<Ä:ƲZƒÈó¡w¤Î-7ÐÆÙP±Ç9(ˆß?°CQC\n<)…IJ¬‘í<“|*1û¡¨µZ!vÚf/.:QEÕPÝ1.!iQ†RfO\$ƒ'hþ1´YŽ`Ne)OqÁ>@¦Ba[G&ì–`¨äïoɽByËO'€)\\H¬VR£%Œjn/#Fƒ™eª†«\$j³6ªáZšH(ÍV*ªjºUá…CÕ¶6| ™Š¬L6´”HDIq+ki¹¨e˜»ca¶¿Ø?a\rRº5ÍÕ@†ÀW?×Àk&ê búÚ:±U-ÎXÃ3c’\n9\r¡ÖnDtbB F áE³2}‰êÆSI`·øôÅ­Õ¼du.E™{í\$HqŸj?mÎQ“.Á6Ƈ–dV\reØFªq</ÔZ@Qá3Kl+YûCh Y.¯Ö|W£ÔäÈå LeÀ!¨ B®ÓXðCÆ»Rց`ØÆqU:¬)O<*H¬_\0Q5Mʝ«•£È°‘Š&¤M`Ø[\$y.²3Rð.³*°Ã\"×lªÐè„W¼ˆ õL‘†t!Ê÷4®ŠìjÆHÊV9¦Wošgç\\à‡@";break;case"ru":$g="ÐI4QbŠ\r ²h-Z(KA{‚„¢á™˜@s4°˜\$hÐX4móEÑF yAg ‚ÊÚ †Š\nQBKW2)RöA@Âapz\0]NKWRi›Ay-]Ê!Ð&‚æ ­èp¤CE#©¢êµyl²Ÿ\n@N'R)û‰\0” Nd*;AEJ’K¤–© îF°žÇ\$ÐVŠ&…'AAæ0¤@\n FC1 Ôl7c+ü&\"IšIз˜ü>ĹŒ¤¥K,q¡Ï´Í.ÄÈu’9¢ê †ì¼LÒ¾¢,&²NsDšM‘‘˜ÞÞe!_Ìé‹Z­ÕG*„r;i¬«9Xƒàpdû‘‘÷'ËŒ6ky«}÷VÍì\nêP¤¢†Ø»N’3\0\$¤,°:)ºfó(nB>ä\$e´\n›«mz”û¸ËËÃ!0<=›–”ÁìS<¡lP…*ôEÁió䦖°;î´(P1 W¥j¡tæ¬EŒB¨Ü5Ãxî7(ä9\rã’Ž\" # Â1 #˜Ê ƒxÊ9„hè‹Ž£€á*Ìㄺ9Žò¨Èº“\nc³\n*JÒ \\ÇiT\$°ÉSè[ ³ŠÚ,¢D;Hdnú*Ë’êR-eÚ:hBŪ€Â0ÈS<Y1i«þå¸îfŒ®ï£8šºE<ÃÉv¶;A S»J\nþŒ’•“sA<Éxh‘õâˆä&„:±ÕlDÆ9†&†¹ =HíX¢ Ò9Ëcd¾¹¬¢7[¶üÉq\\(ð: £pæ4÷sÿV×51pŒ¸ã„â@\$2L)Ö#̼ª\$bd÷×Èj£bšýeRà­Kñ#\$󜖼1;G¼\nsY¬î¥båcŽ½èй(ÈÕ§I¨•e‹ëõ—åfƒY™1/}ŒXdL`¡pHèAŠ3‡Y\nd†ôÕävl¼—‰U¬ÏG&„˜Põ.3jjžèØÕ®/Ä(©#+A V¤Av’ïÖ*šÕjŸžaªè¥Ñ×¢¢¯¶J¥4h§+í^Eèð\ru_Z\$Š¨‘Ð0 óã¥\0¸æ®ÎQƒ)åð\\šrÅÈOÏ¿)rÏw1ójrAÏô<z÷ÉU°[à†õY†Ní©Ê?y>YO3\\áÑ ¤“ž4\0P£(ùhuÅà\\-¯EŸª.È™´\rƒ å\"6Ö\nÅW\$o›ù`´p•ç! G³>8±yEÔÖ®¥@/\\Œl˜¶”lͪô9\n¬ûœtú\r#¯%M!ÚªTŒžÓéL=Ç\$‚,¤xw#ºkåLAœ±ìóQ‚é¨?x&õŸÑB#ÊÉÿ%\0¨‹€§'ñ`Û˜iyr‡\"•X\"P`™á‚¥†Á–kÈ|&Â.Çé ³®„îÍý³• a”UÐœÃCúPÔ7p齨 b\\@dq ’·V돤ITLõ\r6%>XQR4ÅŒ!…0¤l3„‡Ê1g&í£Ãƒ'\$”†,1J‘^Q\$¬ºgW¡\\rðÂGboó( € ¨\nKL™qUÞƒ8 !6†Ü”` kÅw†D¤àa 9PÌAhÐ80t Áxwš@¸0ËIl”rU à½v‚ô¹¢ð\rÀ¼é¾–e°g€¼0ƒåF©`<u‡ÑÜš1ö`Ê ô\nçã‡.`â˜rðJ5¬x|qXéL”MØ‚—R’¢£A «Ðå1(§ðºmÓaÌY2f\\Í™óFiÍYk-Ò´Ú›“u.ÅÝ8§!rÃA|•šž¨9 sµû˜ÃH\\Cœ¹ÐÍ#Ir‚GÎáDòAü¶ö.IDy`oIgÏ‚›>ÐÒ F˜ÕÂã¤x1QÏùÜéLøa s…x‚\0îC`l‰/‡¥+m ¬¬0†eØ“@c iŒ9†`ë\\ƒ`o òÚ·èKër½K©‹/ƒtá !°9—SªyR9'QˆuG•Xè„çé;.©'ä5Ô\r¡~–‘0*nÛÐÕH(hXú!ó¸°âÈ È”p†¼e½k6D7‚\0àƒHv®”3×»œ›\"ÛL¡½3Ù»ëÝž!®œè*ö\rÔÓ^¶Ï‘X0ƒ•(ØZ‚|ôR2°R)Ò’_»S9¦ë,e’À¸8TÚ›ÓˆreaÜ4Çd%¨g™UÍ/à Æepe.ªô’™ãèõ£“9~䄥ϗ\\HX+ø½\$°ŸEwpŽ TP‰ÐY±“ú³jW¤\0·Äî’¡FQ*IÚn\"1>©\"2%Jd 1J±TâNèé´û*É¢Xv‰&¾JYÒyq•Ú¥~Ö)²l‰NІ¡¯ÈíB8JÓÓÆDQ‡ «Á¢\"›° \n<)…J&pœ Y‡\r!ú?8ÑOJžr)¹ÖgyüÔc\rR…ÐúJbûq™(O·Ðô-lÏŒKÉ'8|Â6‘ SNA²?¨ÛEùoH@’ºÅ×…3¦òº¦Å×½Ìâý3  \naD&H\nUIä*€uÙò)éݬ(ÖGRÈl(( yöDHnFD¹-sF ”¿ÊlöøÐÜ'a¢ˆxþ¾è.»­Ý’q¸ÖP=j”Ly‹K«¢-‡­Aºäoº#~¹Ü{ÙØp,•ÁK9`>ZÅÝp¥ê.8k²r<C£uÅwõVºÍñ°Kk¡ÂÞ\r€¬h\n˜ò² 3R…Åw\"æߘ1mdQãDGT&ãj-LÛT߃rrP¤Ô®¬äÊd‡UØeWÚf2Õ±”„H0@B¤€ Ñ×mA\0‡:¡-Å®®~Ï^èÓ_½­v\"öÌ;)y“®Ã´À-ª‡os—î\"2Ѧz¥ÎÜ˜ìÂ,¤]Ґ\${½* ÜÓwšHÿ&\\E#äî¥ê)ɶ¢9¹˜“Üý9ÚÅC+ï¶mt|À 6/ðùNóˆYês«eï-C:at×6ŸÊN‚„*ú'”Bâ0a ½æKI_ ijÔ\$b\$|F’,MWz|’bK!#x+]Ò@fÜS–4«b1%<†í8`§éºwµ¯‰4ÌÝô™ÿ.ãžËhíÞ(Œ‰¢ØÕ-¬½ÆÔmŒJîξO\$íInˆri\"‚ž!dñ£ö~mN9A\nn°&Í/¾jÏÞ8dˆ¬ƒB‰Ã¤";break;case"sk":$g="N0›ÏFPü% ̘(¦Ã]ç(a„@n2œ\ræC ÈÒl7ÅÌ&ƒ‘…Š¥‰¦Á¤ÚÃP›\rÑhÑØÞl2›¦±•ˆ¾5›ÎrxdB\$r:ˆ\rFQ\0”æB”Ãâ18¹”Ë-9´¹H€0Œ†cA¨Øn8‚Ž)èÉDÍ&sLêb\nb¯M&}0èa1gæ³Ì¤«k02pQZ@Å_bÔ·‹Õò0 _0’’ɾ’hÄÓ\rÒY§83™Nb¤„êpŽ/ƃN®þbœa±ùaWw’M\ræ¹+o;I”³ÁCv˜Í\0­ñ¿!À‹·ôF\"<Âlb¨XjØv&êg¦0•ì<šñ§“—zn5èÎæá”ä9\"iHˆ0¶ãæ¦ ƒ{T‹ã¢×£C”8@Ø‰H¡\0oÚž>ód¥ «z’=\nÜ1¹HÊ5©£š¢£*Š»j­+€P¤2¤ï`Æ2ºŒƒÆä¶Iøæ5˜eKX<ŽÈbæ6 Pˆ˜+Pú,ã@ÀP„º¦’à)ÅÌ`Ž2ãhÊ:32³jÀ'ˆA¦m˜§Nh¤ð«¶Cpæ4óòR- I˜Û'£ ÒÖŽ@P ÏHElˆŸÀPÕ\$r<4\r‰„þ¢r¨¨994ì”ÒÓ”òsBs£MØ×*„£ @1 ƒ ZÖõÈó]ÖÕÀÔÖŽÀPòÕMÁpHYÁ‹æ4'ëã”\rc\$^7§éëåBM‘uÆ ‰u#Xƽ¾c„¥kˆ¡k֏B|?Œ²¤‹JÃq,Ô:SO@4Iײ…*1‚o9Þò¢t^©µ°Ëy (ø\\áC`Ó†`ã\nu%W˜æ60¸Ân£xîéb/î(¹ Kd’T° ¢ht)Š`T26…ÂÛþÿ‹·mÞ¢ ’Ī6M€S:¤£ª`Þ3 ØÒ0¨¿Éí{U%\r>ÉŠƒzBõÃÈ@:ÏèÇŽc˜Ì:@ºOÁcX9lÃÏŠ¿‹®Z6®£«daJR'#7ÖÖ8iÈ@!ŠbŒ3ÍDc2&6î@=4nJS®SºõV¦-c(Ä2Ó‰ìB+ØÈ5Ž©H¨Ð?\r_4Š³øÜ3„ÉÀ#–íOÃM´Šˆ²H2ŒÁèD4ƒ à9‡Ax^;ûrùâ?Ár&3…éÈ_¦c¥\0007á}ô@8xŒ!ö±¶ýqÖð»ãìª)Y)Š…Ø!Ä<çÝa%\$®D(ÛP¸rbAà8ä‰\\£Í=è½7ªõÞËÛ{¯|º¾Æù_b|')ý@¾Òœ‚Hmá5àèüߪr_᠍¸À@zÃYLQnÀÿ6Br¼,?Ž¦±ø~ïKÚ·%š“rr’]°h)„1¾¥¹n.®\"'vš•°a ÌͶ³TÛ›ƒr\ríÒ0(°Ðk\"ÑM@€1Áuµ\r‹ØlFFQÙt\0 ã‚á¹Vä\\‰÷+AÂ's,SA ˆDä1á†/Yd‡‘\"¶Ež0@\n\ns†A\r@‘ˆºyáñ¥4á”Ô«d\"\rYµAˆ8ï’\0ïk‰@‘:\0 i:ºÊa#ˆåÛŸè„jÈ°sBˆü7àéK¨ppNÁ\nÁlÍ£,pê+sfSaw¡””±˜\n‹ÐÆŠì@õ’Ò^L[+°[‚55Ï¢lN\\wV'Ê£ /O\n#-e\n”âRHXy3ÒEåK²NU´×—P\\8‡STƒƒ2\0Cï ðI®ãƒ @ñâ]!CR†‹`­cG„ž)D’‚€O\naRH´ª \rO\n‹A\r(à“‚\$çè= )ð· Ò’Šƒ1s§~ª)ÃXtHmš‡4ê':Oá¯\$ðà«ræ˜Q €‚¨§E‚0T\n7+b]-æ­ ¤T]R>ÉÌ‚³VäÜ쇓Ö@˲°\0‹\$¨pjÈu;á¤=IÛ_ՐaO8웸®(IJ¼V'XÈ¢ûH˜v†aä;ŠJBl\r€¬5±£óP‰úS¢´ãíVHšI¡¢0õ\rL‘)Ä|¦9³9¦©ü\n¡P#ÐpQY<óµ…×r&±\$óWè¶¨f.ÆXÝÞBVZá^;ÊT=çdóV]ûÙ(#½î.‚ø3 ‚(&‰4GYƒúhæL&Ý Ì“¬©Y5åÀ+HJHÒq¯\$¦(Æ/×?\rJI²Xd†¦0èÙˆÐu:茍«4Q†1'%!07Ö@ÚDÐBJ¸Ð¾r› øJ¤i)¢V*×ÌŸ'’\" “ä¯ ÎNXaÙL§”J\nÅ\nkä2ÅÔJ‚Y &0\"ÁK¾¡Œ·ZkTŽ4Šˆë;I„é_ü`Ò¨RÊ©8Ãá³€\nk( ";break;case"sl":$g="S:D‘–ib#L&ãHü% ̘(6›à¦Ñ¸Âl7±WÆ“¡¤@d0\rðY”]0šŽÆXI¨Â ™›\r&³yÌé'”Ê̲Ѫ%9¥äJ ²nnÌS鉆^  #!˜Ðj6Ž ¨!„ôn7‚£F“9¦<l‹IŽ†”Ù/*ÁL†QZ¨v¾¤Çc”øÒc—–MçQ Ã3Ž›àg#N\0Øe3™Nb P€êp”@s†ƒNnæbËËÊfƒ”.ù«ÖÃèé†Pl5MBÖz 67Q ­†»fnœ_îT9÷n3‚‰'£QŠ¡¾Œ§©Ø(ªp]/…Sq®ÐwäNG(Õ.St0œàFC~k#?9çü)ùÃâ9ŽèÐÈ—Š`æ4¡c<ý¼Mʨ é¸Þ2\$ðšRžÁ÷%Jp@©*‰²^Á;Žô1!Ž¸Ö¹\r#‚øb” ,0J`è:£¢øBÜ0ŽH`& ©„#Œ£xÚ2Žƒ’!*èËÃLÚ4Aòš+R¬°< #t7ÌMS¶\r¯~2ŽÈú5ÄÏ P4ÅL”2R@æP(Ò›0¤ð*5£R<ÉÏì|h'\rðÊ2Œ’Xè‡Âƒb:!-+KŒ4Í65\$´ðAKTh<³@RЁ°\\•xbé:èJø5¨Ã’x8ˆÒKBBd’F‚ Êà(Γ¨õ/‚(Z6Œ#Jà'Œ€P´ÛM‘¤üð<³À ”-ÂùoÏhZŠ£Âƒ-Ÿh®àMÈ6!iº©\r]7]¤«]ÉíàÙl•5,^ÉÐ]|ܨ`ÑsÞ˜¡iQ©xô”\r@P\$Bhš\nb˜¡p¶õ½b픺²ˆ,:% PÙ&LS *#0̝*\rTš2ÈÎí©@\$ϐ*\rì• 7,ôÄ:Œc49ŒÃ¨Ø\$ lÅIº(ö¥ÿ4ÃªaLG6.ÔÎ\rék!ŠbŒû¯q4C246éÒ\0@ë PxÖÖŽ#)@&ã¨æ8g\n<—ŠŒsÊÍîÒï è\r\"·=PPÇ2@ã#Ô‰»X2ŒÁèD4ƒ à9‡Ax^;ösm®=Ar43…ðx^ú#É,È„A÷x”ºà^0‡Ó2m„< eá¸@©ì7ÁVå´PTFx€¥âkâ€Ë¯ðç\0@Rü\\½n ‚ô½?SÕõ½cÙó—l9wÐË0AóÜð\n@> !´8t–ƒ£Æy yI„&ÚÐ(„ž¦†ƒÜ\n}Bh0Þ/%ŽF\n£\$„™%ðÎÈJYq ÆïŽ@wZM<ºÁPääRZ !™ðFÒŸMiíDÚC èÁâ9a…%‚\0Æ^ Ài#áÌ—„\"\noO¡¡CX©6xx!\$¬,¡u[ˆH\n\0€€RGI2‡Á¼Üò^Ó!P…îPΐs,fƒ&?†lÒŸp@GÉ\0wR\rŒœ¨ dÎ{J…g¨HUäšQÇ4rT7¼@ÏúHP;š@ÆÁÓHgu\nŒD˜œ\\1.&ÈšÒŒÞÅ\n2aˆV9›„X9à—Ï0‚Ÿ\"Dƒã³q@ÏMê¨Ùj¥ÒÙ/ \$L<˜²NP¡h?=\nDy\nACˆu3Dü3Â8坢]‰' 1’ähä)þ3. ²¢xÉ¢ÔgDÜ(ð¦€Zha¨ëÍ q.‰øŒÈd’cÀLÑÚ  Dxå#(ІÙlÖ k˜Ï’m!ágL(„À@–‘0Ü#HÖBТ?dþ\nNT” ƒ‘3~Éô½)&N¡”‰aºz)˜ó ê*Rú¢SÅ ¤ŠCÅþ¦¥Ê1È–ëýGÔgBWAõey6WT’ø¬\$n±Ëò(¿¥hI¥Ö°ËV%û«uÆž¤Æ‚M\r€¬5ÏcjN Ñh'Ñ :›òQ‰xF¥0EÃøjm¨TÀ´%€ÜæËØn åâ9Ìu^ìA†£l *ÚQ}[—šÿ0–ªº\0›ZHm|_¬&Ù’Y%m­uyaÈÂÛæÇHÕw6uâÂè]“ÀMBa¤3’Èm‰Œ(©à)h\\ŸÃš+V5H4NIäY\n‡³@§Ùªåºõ™ÊUbIé%%á07Ñò2AJsX7öН\0lV±¶8(Ð!—`@kCÓN.jNâZ¥;…mðiTVôÆ\\7qL9ĺ½H\0 –HbÀ:qÍÛtJU­Û¡L¢ö#OwƒC?¹ëÀ¾â\0Æq+²\$¡À";break;case"sr":$g="ÐJ4‚í ¸4P-Ak @ÁÚ 6Š\r¢€h/`ãðP”\\33`¦‚† h¦¡ÐE¤¢¾†Cš ©\\fÑLJâ°¦‚þe_ ¤‰ÙDåeh¦àRÆ‚ù ·hQæ ™”jQŸÍÐñ*µ1a1˜CV³9Ôæ%9¨P u6ccšUãPùíº/œAèBÀPÀb2£a¸às\$_ÅàTù²úI0Œ.\"uÌZîH‘™-á0ÕƒAcYXZç5åV\$Q´4«YŒiq—ÌÂc9m:¡MçQ Âv2ˆ\rÆñÀäi;M†S9”æ :q§!„éÁ:\r<ó¡„Å˵ɫèx­b¾˜’xš>Dšq„M«÷|];Ù´RT‰R×Ò”=q0ø!/kVÖ è‚NÚ)\nSü)·ãHÜ3¤<ʼnӚÚƨ2EÒH•2 »è׊£pÖáŽãp@2ŽCÞ9(B#¬ï #›‚2\rîs„7Ž‰¦8FráŽc¼f2-dâš“²EâšD°ÌN·¡+1 –³¥ê§ˆ\"¬…&,ën² kBÖ€«ëÂÅ4 Š;XM ‰ò`ú& Épµ”I‘u2QÜȧsÖ²>èk%;+\ry H±SÊI6!,¥ª,RÆÕ¶ ”ÆŒ#Lq NSFl\$„šd§@ä0¼–\0Pˆí»ÎX@´œ^7V®\rq]W(ðëÃ˜Ò7Ø«Z•+-íE4ý\"M»×AJ´*´²σT‡\$ŠR&ËŠHOÕéÌÍTó¾S­ÊúÝ\n#l¥Ð…ÄŒˆ#>ó¡€Mñ}(³-ý|³Ø\n^ó\$’âH¹A jž ­w#óW# égt3ì’€‚cikühôý¼õMÖ›C\$5ÐH&fŽ] ÜЫγíc\"’¨(]:­ÄDÊ’ÒÚ†”\"*£qà =¿d©„6¯ª}þº²*â‚,eÞ¬CRÂòºNÉâ\r6 Av k/jhºkºþË¡,H‚+¶lËikµjû)­)iþå ìK6ñ¤­ªž3¥ \$ К&‡B˜¦ ’`Ú6…ÂØóϏ\"ëE›à¹Õ1FK‰ŽÞ\rƒ äÜ·a\0Â98#xÌ3\rÊð©Ää‹è’Ýa„\nƒ{ˆ6Œ#pò¶(ê1Œnpæ3£`@6\rã<\$9…Ž€ååŒ#8à %þ6ÂC«®aJÖ¢,s=O9Á\"¦)ÒœžZkø²ì‚ÒÙ7n­`Æ•…²4D#&„TµŠ2xOb+¯íá›r„\rò*9á™]UŒ„Á\0A  7#ºÖBÆ ˆÀÀÂo] f ˆ4@è˜:à¼;ÃÐ\\aºFˆÌ3‚ðʁz<WÑcÄ€D¢QÖBAœð‹[(CKЈšÂ\"Í£†Dż²6wºOWzçC-Ôž6Dž¨`1B ¨äë‡#Š’Pr_+8—h“!l/\rÆÃXoaÜ=ðþ ÂX†¢,GˆË#¬e ÁhÁ\$6‡–b8tŠ±][œù@vCzù: ä³‚R20y”7DšÉ›AtU‰<Še–LO‹¨\"ñm?ˆ2Tm'‘½€¨0pCc‰‹ s”õƒÁÂ)@¾CfŽ© è='¨õžÃÚEÓXì\0ÐpC˜a”\0€1ÇùBCle¬Ì!ò˜˜ i\\C@¢LÈ—Rú[mŒ*tºMÄ( \n (Oú™Sƒ,lsý@R|—JCY–iE3 q1È9G02¯”ˆƒ¡Ï;hý Ï—°ékï&OÉ“Sjc\n’ ‚ó½Ú>SŸ ÚGz/•™^ƒƒêŽáÍ\$¤¹ªvƒh•¤3ÃPA6gqÁ a†;¶˜lÖÙ_CÄe,“SK@¦]i\$æ¹})ß\0ZyR%P±¨j\"Ø\n¡¡ ‰8§d¢JÃô_Õ5\0 ’HC˱ ¥|œ4‚Žƒtª;G=Úês’fFA¶ÈØYS‘pc{êwS4ŽsXª¥NIADQ žÂ¥ u&p™µûºÒÅAU¼”À\"jê( 3[V…»ò•bɨ²T¤µP¨ôS…ì\"Röà38ßO‰½hOê*ÄÊR„nåcEÇMìDeWêà \naD&\0ÍJÁÉ…á*QW’¾CLH¯–ÐÚ2DŒ4=4`£µº6DŠ€±UäF‡›‚Kƒ†2Fþl,(pÁqW>ŸÛ¶ÒGWÊõ\\ø:1(Æ6LÝ}m-¯†Þݦ4ÅëC7¼h}1Z Áø¸·cH]plq”‰ ¤Äàn•hº…؆Lw†ÖÝ}€(#_€Û’\r`|T*`ZÜ(²hL¡/û§[Hyå¶oÌŒ·ÌS”¢ãwÎDË:lìl‰•?6ùÂÄg3Lâ¨%n—ÞáaÎU*R£ ä‚‘PeHi ÁäÇ—WÀeòÜ\r)§t9–\r[,Z˜N`'3£&BÚÙk¯2é”t ^©íg¸Ö¼ î’'-JÝ\\šµöØ8-Œ²¬bù6—XLªô<¢í2ÌQ¶RÞ4ÏÃqk•æ¬B˜e9sJ–©:<”.èZ ‹sQŠ}g)4Ϊy‚þËn7ÏVóJ6zÒIë84Pnf4 vxQ\$H_€";break;case"ta":$g="àW* øiÀ¯FÁ\\Hd_ †«•Ðô+ÁBQpÌÌ 9‚¢Ðt\\U„«¤êô@‚W¡à (<É\\±”@1 | @(:œ\r†ó S.WA•èhtå]†R&Êùœñ\\µÌéÓI`ºD®JÉ\$Ôé:º®TÏ X’³`«*ªÉúrj1k€,êÕ…z@%9«Ò5|–Udƒß j䦸ˆ¯ CˆÈf4†ãÍ~ùL›âg²Éù”Úp:E5ûe&­Ö@.•î¬£ƒËqu­¢»ƒW[•è¬\"¿+@ñm´î\0µ«,-ô­Ò»[Ü׋&ó¨€Ða;Dãx€àr4&Ã)œÊs<´!„éâ:\r?¡„Äö8\nRl‰¬Êüž¬Î[zR.ì<›ªË\nú¤8N\"ÀÑ0íêä†AN¬*ÚÃ…q`½Ã &°BÎá%0dB•‘ªBʳ­(BÖ¶nK‚æ*Ϊä9QÜāB›À4Ã:¾ä”ÂNr\$ƒÂÅ¢¯‘)2¬ª0©\n*Ã[È;Á\0Ê9Cx䯏³ü0ŽoÈ7½ïÞ:\$\ná5O„à9ŽóPÈàEÈŠ ˆ¯ŒR’ƒ´äZÄ©’\0éBnzÞéAêÄ¥¬J<>ãpæ4ãrŽ€K)T¶±Bð|%(D‹ëFF¸“\r,t©]T–jrõ¹° ¢«DÉø¦:=KW-D4:\0´•È©]_¢4¤bçÂ-Ê,«W¨B¾G \rÃz‹Ä6ìO&Ër̤ʲpÞÝñÕŠ€I‰´GÄÎ=´´:2½éF6Jrù ZÒ{<¹­î„CM,ös|Ÿ8Ê7£-ÕB#öÿ=‹ûá5LÃv8ñSÙ<2Ô-ERTN6ˆ¶iJéáÍ„ J5ÊR²ÚUìD”8òÚ­hg·ìl\n³ˆåe® ?XÇJRR¥BÙ² JÉd—KªÒd[aߥ¶¨ßõ‘]¬‘v¡Yß[5Õ†ÁµM)WV+„£\$e}æ N󽥘 {ìhÌ/xòA j„Ÿ «îmÛè2§,6Š›MĺÛ°\"7œ³ÓþÞý+¾Å\n^Õêܵ'R.\0§ôRŸ@Þ•*±<ºµýë[î|uhZÛn píÙ]qm0Îw \\œ7g됍ïQW¹àx^'hµÞ?º².8G±!výð÷Ñ¢àÄ>z»|÷¸úSf{ÅÅö7wÞˆ_ÀŒ8Ùï%B\0ÖQÑÍA \$ šAÐS\n`(2@^Ch/ a携åP‰¶¨y³óz¢JAJQ­\0006,€vÎèaGˆ7†`Ì@e8 (ˆ‹B¬æ×XÉœð´³<îÙó\r…«Ä@ÞyCha\rÁäUDCc=áÌ3PØ\ngIÌåg ) GFþR@u>à 9‚’¼˜RÅ Ù˜e^á_×Qnɇ›Òh璁ÈÉ„)—àÍ!£IÏL§8D¦‹Áh}hiµÉõiäbï%\$áW:D´”qH3åä·¥Âm+\"”*ˆ>U§ãNúa>™UF’A\0A ‘à7&xÚÕ*£ ‰œÀÂw¡Øf ˆ4@è˜:à¼;ÎP\\Qfbgɨ3‚öT Ó›\"Œ°‚ }<O²H àð†|€]Ø·ho¡Î­)´¢!Ëf‰V‹ùd[ÙŠ \"+vy6¸™“¡”\r]³6‡f¢(Ô§ ©Àû‡#ÌŸÔroL 8˜v æ¬×\rfmÍÙ¿8gåóžeÄ×;'pnÌ¥•ªYê`ðI4籊†àé?'ó Tü†öô|ª˜a\rgˆ4§ÔÏfmN 2@‡Ðh*“jJ¤ùõ–c0A¥ð›Q‡¼‰A^\n ñÇ<Õ( ç®3†#Ä<ÄLU½ÍISÌaŒq–3Ƙé`ÏÉñ¯„€0±P@é{*ža„68†¥ØJ ¡P‡7¤¤¥TçXÞãr\0PP @¤V‰\\UÝÍÀAî¥K6g³-9€¶g^GÕ,ͯóèøžSÎzOYí ­é=‡ è|ÚvO¡‡{¶°dµ¡&‡ ö_Z‘ HV •ô\\ËlWfg«‡Âk‡4ý£ªe?5p7õIÚ€PVý0ÑTÃHg› ‚ÃY£Äà ƈFÆد'૜䔐™ ÓZÛë}ïÔD×6D.—k‚GWi–ôk\"—œ7¦ãD™3'äÙ;Eð˜IÙ/\$£BawÙ0_”ñ/]Å9x«:¥“Ž®'-øÒâbûçH2&+Á\$‡“¸ ioG‘<'ÝUÏÑð‡aÄ:žôð“Hm™4öfÒl™CCN6jð§ãÜp!g{(Þ…h¥‰zÈÀP áL*d”C(LVšXˆé‡‹ÙÉ¡p9z·¨œ­(LiUX\nC(•y*YôÉ0z°4Ò‰ ƒ6¡Ê|ØÓî™á¶hiKÔ!’ó\ry†ùŸ &R‚PÊ( šá‹‚\0¦B` ×,tõMpŒ-äZoA¤Ó§ÈëóÉ ‰“©,;xb1\\Jl²nC´Ò#\0ñ%ARKvÂ瓈ò*ëW0FQ½|{—ÙÕqpX—U—Ӏܸ/\nÞ+¬“îmš…ÉCä>Â÷Ô‘+ÍýTníþÎõ}’!:WÜõZõ\nX/̤q\rßÇøžŽ¾”obKåà±9{ekð ˆGõ^\r!Œ5‚ 5õ¤Î·V©Õ`Ò¢å]+ÁìÕ9Œž0¬t\n¡P#ÐpÈf†iI<úiœºu+fÇÓ®qáúÅw-Þã.íGVÜcŠ±cOá²Kš-‹ÒƒÎ¥o\\ÝÇ–Öì_‡µ_©Wt:w¹ßJ~\"åç‰À“€Ž23 6ëí.BÂc»‰L0w^\\§(z*Ù™›pÉh?TÈÑ‚oVë~[Ä~é²n6’'~øہðyÚ1H2†Íz¨šbñþó¡:<\\»|‰g®üêóÝE*È„mféZ(ªê¾þÛöÇê§%É\r–øî`¯ ¯ˆރjjNI¸bŠŸF‚ÒïâmŠÞ6gª Ä\n4dt‚Fz©vZKÙFS\$ˆä\\ðâÎ: åª:eöƇ\noš ªþ»d–…'Î (išiçÉVúŽäñÍBû\n&‰Nðò£Óì²ä V…B\"z‡>,ãBˆZs Bð0ˆ\\#rup:ñ>å¼”%8AEÔd¸þiúD¢";break;case"th":$g="à\\! ˆMÀ¹@À0tD\0†Â \nX:&\0§€*à\n8Þ\0­ EÃ30‚/\0ZB  (^\0µAàK… 2\0ª•À&«‰bâ8¸KGà n‚ŒÄà I”?J\\£)«Šbå.˜®) ˆ\\ò—S§®\"•¼s\0CÙWJ¤¶_6\\+eV¸6r¸Jé5kÒá´]ë³8õÄ@%9«9ªæ4·®fv2°  #!˜Ðj6Ž5˜Æ:ïi\\ (µ zʳy¾W eÂj‡\0MLrS«‚{q\0¼×§Ú|\\Iq ¾në[­Rã|¸”馛©ž7;ZÁá4 =j„¸´Þ.óùê°Y7Dƒ ØÊ 7Ä‘¤ìi6LæS˜€èù£€È0Žxè4\r/èè0ŒOËÚ¶í‘p—²\0@«-±p¢BP¤,ã»JQpXD1’™«jCb¹2Âα;èó¤…—\$3€¸\$\rü6¹ÃмJ±¶+šçº.º6»”Q󄟨1ÚÚå`P¦ö#pά¢ª²P.åJVÝ!ëó\0ð0@Pª7\roˆî7(ä9\rã’°\"@`Â9½ã Þþ>xèpá8Ïã„î9ŽóˆÉ»iú؃+ÅÌ¿¶)äŒ6MJÔŸ¥1lY\$ºO*U @¤ÅÅ,ÇÓ£šœ8nƒx\\5²T(¢6/\n5’Œ8ç»  ©BNÍH\\I1rlãH¼àÔÄY;rò|¬¨ÕŒIMä&€‹3I £hð§¤Ë_ÈQÒB1£·,Ûnm1,µÈ;›,«dƒµE„;˜€&iüdÇà(UZÙb­§©!N’ P‰ÁÍ|N3hÝŒ½ìF89cc(ñÃ˜Ò7å0{ÉRÉIéF¬Ü6S’í¹³•wܨìqp\\NM'1ÝR²Ÿ×påapÔ:5õ…Lií`³ºIüIKH‚¿Z žc#Û‘Si©h,~­CN ³*©œ£#¸VK·™/µÛ¬Œ‰3•\r%ʈ<¿€S⁨^|8b¬ MŠ»]ß6úé;hÓ¥iõ‹³d01q¯-²ss­sòT8J+*gKn+´ê»¹£xt²ÂŐÿc9©Û*¬á±q¤»»>ê)ÖJ®ôuRáÌE¥«¼öüÏtƒ‘•L›»u_;v±üÆSÙîúº®ØÄH\$ К&‡B˜§xIÊì)c3ÕvˆP^-µeÁj]“>.))á@4Z‹Å(\n\rÐ9\0£Ðzƒr=á¼3`Ø•C)Å9¢,¡-ŤØaY{‰)Þ·®†ÈT\rçÈ6†ÜA\0ue!Ô1†3øÃ0u\r€€6ðΕC˜,?ÁÊÎR¨ ‰ •¼†ÔªP((`¦\r0FàÁÎúºVdõS0¦‚3z:¥Á뤣`m\n©{Iï,rw©¼:H±Í¶\nmÕÊ„h®%@!9¿[„ýͬ”4G: ^o|¬CØšèfc¡Õ•%`@C\$N\rɺ!6Xʃ\"n\0ð0ž¸\$è\"\rÐ:\0æx/òÌ3’q à¼2†à^ž˜øterø送¨g€¼0ƒâ°á¼ÃU-Ù­¢È¸@Þñ±ê¦?¹5 K Q-MQ³HÑL„s-ñò;£¸ò‚jw@¬‘C5¢“hx¦ (¹G)CD§•2®VÊùc,üµ–òn\\‡)w/eã'—¬©–ðDbðI\r¡Àü†Ùz&\\Ícty†öòÁ-\rg¼4¨TÝ dØn…cšƒš¶TéUhjäÁ ¡=¦\r¼0†9„Ë\0w?ì1ðà›¤r£Íä0†iæ !¤6žÐæÃØ~›*R?Õ\r@<ý£á¤0†Å~ñ'I9èj5ª×2¬á:®YY¹ºê¨Õ{pS¤ì­Æ €  ª—æ\\='mÐî.DÅO4&eT«€ †Ë\$ÝF™'øùCì~Ðeo* 9Cú‚Sê­°ô;Ú¤Qdo*ŒéFXùâÍBMÔ°þÊPæ¡¡´JMˆ–àᚇQ!ɼ‡tÃE)\r!žU‚\n›XÏxc 2R »Æº\\ë³ÊYQ±XÇUa\\éaS©dª¬DXWKav8FÁ0¹ftsNÛ®›ÁG“•¸‘ ;Žˆ]_€’ICÉé4·“âŸÓÀn¤è þÁ âOâ ÉÀ6Éz(®bl põ<V;`¡Ý·Lvåq9ët£]6jÆÉN²¶WIí:)\"à»e¹€HR©&xõcÔ–@³zHd£‚ÔE{ËžA*vp·?âÆâ³¥½JàÇž`¬VƒDŠÊ„óá+Ä› =–À‚R†+·O‚ˆLšÔï)B0T±0¹¼†š6¡\"V\"ÄŠ7ääÑÒC_V6úE¡™#ÃpCˆil¨ç:ËÜä|nš^m,^È›„×ÔDmëcS‘”Õ‘Ò1²/R•“°óÕN nG(jæ¶×fTBYžDkD‚£\nX p06¼VCkÊD\0çňq™ÉS+n4Ö•€ŸCl”O÷~\$…P¨h8cÒ{\n%b±ÑÛIªcJ=€s`,àØË:½ÙïdہA[ŽÌƒeʳ““Ìu±w9\r¹QÆ…JãîNV€ç¡Âº&¡ºg &zlRʝ<.5ê¢]²Îö™ÎgÓ¨\\iÔ\"m–âÙK/ј!-¸¿òñV+07ç0ÚœSÊu][L’²®Ñ£cKÁ²97PÜÁ;f°'x\"]攃)ù¨Ö¨¬¡GA\rˆ³+8äï»R²Ww¾;êY¬Ú8ü ˜JïÕ%¡uäó„æ7_åÜ‘¨9%p¹ò;€";break;case"tr":$g="E6šM Îi=ÁBQpÌÌ 9‚ˆ†ó™ä 3°ÖÆã!”äi6`'“yÈ\\\nb,P!Ú= 2ÀÌ‘H°€Äo<N‡XƒbnŸ§Â)Ì…'‰ÅbæÓ)ØÇ:GX‰ùœ@\n FC1 Ôl7ASv*|%4š F`(¨a1\râ !®Ã^¦2Q×|%˜O3ã¥Ðßv§‡K…Ês¼ŒfSd†˜kXjyaäÊt5ÁÏXlFó:´Ú‰i–£x½²Æ\\õFša6ˆ3ú¬²]7›ŽF ¸Óº¿™AE=é”É 4É\\¹KªK:åL&àQTÜk7Îð8ñÊKH0ã Fžºfe9ˆ<8S™Ôàp’áNÙÞJ2\$ê(@:NØèŸ\rƒ\n„ŸŒŽÚl4£î0@5»0J€Ÿ© ¢/Ž‰Š¦©ã¢„ îS°íBã†:/’B¹l-ÐPÒ45¡\n6»iA`ЍƒH ª`PŽ2ê`éƒHæƵÐJÝ\rÒ‚ˆøÊpÊ<C£r àŽi8™'C±z\$Ø/m Ò1ÈQ<,ŸEEˆ(AC|#BJÊĦ.8Ðô¨3¸³>Âq‘bÔ„£\"lÁ€ME-JšÝÏìb鄁°\\”Øc!¸`PÐÍã º#Èë– ­ƒ1 -JR²²ÎXÊͯ¡kð9±’24Ž#É‹TàŽ«ë’éˆõú:éÑã-tŠ1Œ‚7e¤x]GQC YgWvŠ3i¥ãe¬,£HÚç¹b˜t\"Ð戋cÍä<‹¡hÂ0…£8Î\nÉz![”àPÙ%F¦£÷:|²§Ãš} I8¦:ÃªŸ‚éð×…¬Ø3 Ãõ„zv9­ÈÂÍǍ°Ü‘>:,8A\"}kÑâ#ˆ4h¸æà¸a:5¸c–]58ØŒ€#È3Fb˜¤#!\0ÔÏ؁p@#\$£k2èS í\$â~O”Ñk,Ÿ9&~Ù;y±b“ˆ#\"—èФQ¹*xz|ÑÔ‰d:²ì\\ZÝZx‹Ê3¡Ð:ƒ€æáxïÍ…ÖÖîÉ(Φ!zg*ŽƒK‚„Aó×¾–+*è0Žå,×—‹+\"ȇxÂl»;r9ŹŠ£; ƒ¨X\r‹Àè3CÚŠŒO=–g‡î’¨ArŒÜsŒø…çƒx÷ë­0#dà¡ÎÑæX³,ÚYÅ„oÈò|¯/Ìóc¿:݈ tN7:D¸LRüE \"˜LÞKw®ý ¡S¶ö\0Sf¬ Ü‘ÕxJ™Ç3ç’†Äxú…‹r\$ÈùZ'–`º\\ÉÌ*`ØɁm¦¸õ¶¤ÛH»&ƒm¡•ŠvjÆŒcàh]‡#6Ø eu\$|™0×É8U@¡¹¿êDƒC\$,¼…\0Dcu(¼Ò\n\n+UTfmSô>SŠR*±º”Ëc…\n,©¡hº|Œ9ŒA(-í:ñ>…±!°—EBFyÚ\\OM:Øhƒá¼9\r\$œ*…‚fO‹>?fL̐0é)¥hp*íwŸà䢃º£ hà€†w&Mt¯5Ò\0:žÒNJIY’¤Àò6BÈȺ­|\n÷‚\0ÂÊâfà€&<ç @Ðz#ѱ ¨»# 9Š•v‚êçÐ'ËI`(tOkI&Äñ'‡–BíÙéû‹¡¸“±èj^Éx3@'…0¨kHùys,<œvD[(³*\$]&ÅBHÙD¤ Pòؤ%AGÙ³I²ÜJ ÁR4@ÙI™ b¡)´`¦BcÇ)SV„‹Ã’g¡²§7çÕŠ”ô@Õ!®8†0áÔ™6h‰9¦0„@èÉFo±…#\"ðÉHƸêÒ‡KG&¯ Ïk º41k-‰¬k+…[„uÒ¯„%O8£´zOB~)™wâghB&¸!¤°Ø\nâéPÔ‰! @B F á †ðÈ‚_sA°–“èU[”-qª1Ú©¶¹²Ü™ÂÙ¯\nÂÚº-ítÚnhÔ¸—3Úüšè‰ Ù ‚P²>H%• à.!|€O¯ë…†p\$Êè³ #Ð3\roÏÁ½&ô0Dƒ\nd ‰’L²éB‹àY¾ ôé#ü«›yn/\rb+…^T=v[F~Ô˜Emp@K\ráÀ‹'pˆÇ-tî·L”É£Žp¼.R.ÑÞêW†ƒ}`0’.ý>\"ðm¡\rØ@";break;case"uk":$g="ÐI4‚É ¿h-`­ì&ÑKÁBQpÌÌ 9‚š Ørñ ¾h-š ¸-}[´¹Zõ¢‚•H`Rø¢„˜®dbèÒrbºh d±éZí¢Œ†Gà‹Hü¢ƒ Í\rõMs6@Se+ȃE6œJçTd€Jsh\$g\$æG†­fÉj > ”žCˆÈf4†ãÌj¾¯SdRêBû\rh¡åSEÕ6\rVG!TI´ÂV±‘ÌÐÔ{Z‚L•¬éòÊ”i%QÏB×ØÜvUXh£ÚÊZ <,›Î¢A„ìeâÈÒv4› ¦s)Ì@tåNC Ӑt4zÇC ‹¥kK´4 \\L+U0\\F½>¿kCß5ˆAø™2@ƒ\$M›à¬4é‹TA¥ŠJ\\G¾ORú¾èò‚¶ ‹.©%\nKþ§B›Œ4Ã;\\’µ\r '¬²TÏSX5¢¨Ü5¹C¸Ü £ä7ŽIàˆî¼£æä ƒ{ªäã¢0íä”8HC˜ï ‹Y\"Õ–Š:’F\n*Xˆ#.h2¬B²Ù)¤7)¢ä¦©‹ŠQ\$¹¢D&jÊÆ,Úֶ¬Kzº¡%Ë»JÜ·s\$PhI*ÑS2g4MZ\rè‚\nô›BX#D£&Ï.i³%.Ô0£|LµTRöOI•@hhr@=”©\0®Á‚#ÄòºSèAGu€ä,öåa £Ã¼7cHßh-e\nO2¯‰ Ó!Q*€˜LÈÑ4ÈLí…,ɐèÑ>É«)ŒF#EThM¯…Ô˜—;ršFêöM+¡ÌÅJ´2•Ñê\n&2 Ä—!.aìö#‰á×¢_M@Uù2#Iq,¨\\y8c{±CV]#EŒ°£…´IjZÓ67Rí¤ZÐW ”ö‡Á†)^Djžd¬ß±@Š£ ¢×SE¤Ô©©#þ¦æ4áQÑVÒ8•Ë+¢….6’¼­. ŽÊºËÒ͉°÷›üª4:+KW¶);%OîX“ôËjªj<’oMÎù¿mjWÝð{Š“ðÖ¼6ßnüZÆ-iLa¦º5Z’aÑ Rõ}U¬P£Jahoà\\-«ÝÍv@ ºL]¦CJZˆC`è9N †0ŽN@Þ3 Ãd@2Ú°z²ƒVõë\nƒ{—¨ÃÈ@:Ú¨Æ1º£˜Ì:\0Ø7Œñ\0ç0øÿÂ3êQ¼A¹„l@Nð(`¤µ™§(ªË©\r`Á )… ŒgZãŸÄ±ÀtîHÊê•…rBžM„I @„¬[–²¤2%p 6§‚H¤¹6(I¡77pO¡ÅFgX3,@ê´Q !‘ÿär˜CÓZ!‘‚\0xN#Í Àô€è€s@¼‡x¼ ƒ Dzhõp^Cp/H«:-(ҁôk;¨€3ƒÀ^AóÕ`\nñƒ¦E4KŒ‘Sm ¤F&\\‚ÌSåÕ/¦,¦‰ÓoƒIŠ)8jW +¥CHPA“ÀšŽòËJÍ)%Dp€iy©V'E\0Ñ¢¤V‹j.Eàï#FŒÊ3FˆÎ³£BÑZ`¼p|Chp:A¶4HíÌ<½†‡úCYÈ\r)=¾ ›Š‰tî­•2ȘiOx-Ü”eÜçÈ„8\r 0†8Ú´Á\0w:/´1€àŽaèr™Œ00†iB’ß;é}oµ÷¿o>מd`0ÌÀ@å\\Í\r!„6'æf͹üt°\\Ù«Fñý))¾…\0m\"NÉâ’Ï6\n 8)‘Є“”ç8ÆÓ<*9ˆÂ¢#ä2rQ&!J²\\IàCZq{GC®rÎiÏ:'L2°Äšƒ¡Ö<I!%QÇÞêì!ÇíÒ&5ÞCıK&3¡\nTàSç’9›GZ(4 úû<h7\0sŠSL0;žÆèi ñXOÚ\$ra‡ïQTÔÅ,˲ü …?C6ðQJ; †ö ƒz¹¤Qþ\\È\"§“1 9 Á¾PMÈ9I ÔR`C,Èß.ôïRÑg'\$‹‡“„ ia‡)%\$0Ý5O Öy¡Ä:T”‘ØmˆRæ&Ø4nßzC¢U(CÑ\\ÛrjLD:¶èA \0±_Jˆ^\0 ˜Tf¨–\r oKA%̸ºI2›~†ü †}É›‰kn>\rKK]ѯ„®«•5!K|’™u„¤Hy8*hG8Žϳ(Üí>øÂ\"€b²@€)…˜5[B(`¨1Å×°3%'X¿xHÂ98èõ«­tÑ:\\=Lp©Ï‘ûÞžX44ô­Çüº/²þV(+&Cæ4Ä…IYqˆi+7ü+ñqp¬MÑf¡ãÛVn“Es<æwù&³h Z;fLñJóÜ}a,߀ †ñÃ`+QEßVEQ[h°C\$5LeÙÐ4iáêC:¤¢u N‰ Í\0(#d ÛÒU–aT*`Z,Iº(„ž8grn›¸ºÌM±MãîW ríóc+½ØvYJÙ®kh\"¢[—˜¹¸Úö°Ym’O¶öz»Ú*_:QöðH õ×Í¥bÕülM/ÅÃE„Ù¨C0y1ûœ¡†É| s¤Y/£tJVËV(•šÅì@ *e10Óuš·¶›ö}¦rÍ`ýW™µq6ЊMjC#©œp\n ¿†Ôx‘2æ›\r\rBšÎ…KäjÏÎnQ{ƒgÕ;6²Ž¿ { ÜU-2nŽ¢VÏVÚÝaŽ!ÐÊt§µ]\\YŒ»qe%m.ÜÝDk•ìåÈÎû2Ú ½°) „÷+ß&‰}ˆR4£p¦ú4mP(ƒy×x^À»ÝG\0";break;case"vi":$g="Bp®”&ፆ³‚š *ó(J.™„0Q,ÐÃZŒâ¤)vƒŽ@Tf™\nípj£pº*ÃV˜ÍÃC`á]¦ÌrY<•#\$b\$L2–€@%9¥ÅIÄô׌ÆΓ„œ§4Ë…€¡€Äd3\rFÃqÀät9N1 QŠE3Ú¡±hÄj [—J;±ºŠo—ç\nÓ(©Ubµ ´da¬®ÆI¾Ri¦Då\0\0A)÷XÞ8@q:žg!ÏC½_#yÃ̸™6:‚¶ë ÑÚ‹Ì.—òŠšíK;×.ð›­Àƒ}FŽÊͼ S06ÂÁ½†¡Œ÷\\ÝÅv¯ëàÄN5°ªn5›çx!”är7œ¥ÄC ÐÂ1 #˜Êõã(æ͍ã¢&:Žƒóæ;¿#\"\\! %:8!KÚHÈ+°Úœ0RÐ7±®úwC(\$F]“áÒ]“+°æ0Ž¡ÒŽ9©jjP ˜eî„Fdš²c@êœãJ*Ì#ìÓŠX„\n\npEÉš44…K\nÁd‹Âñ”È@3Êè&È!\0Úï3ZŒì0ß9ʤŒHƒLn1\r?!\0Ê7?ô wBTXÊ<”8æ4Åäø0Ë(œT43ãJV« %hàÃSï*lœ°ù‡΢mC)è Rܘ„ˆA¯°íDòƒ, ÖõÍB”Eñ*iT\$“E0Ã1 PJ2/#Í\"aHÇM¢ˆZvøkRŽ˜Öà—ìRôRÁCpTÏ&DÜ°EÑ^”­G^§ÚI `P¢Ó2´hî ¬Uk+¨i’pDÐÃhÂ4“N]Õ3;'I)ÁO<µ`Uj˜S#Y†T1B>6‡ZêmxÈO1[#P+ ¢ht)Š`P¶<èƒÈº£hZ2 €P±„½l«.́CbÐ #{40ŽPÞ3 Ãc¶2¥ÓaC3aÅÙOf;ÅèÏÎk†Z¢xš8¢¤Š|î½ C¾Íæ­[46E¡`@‹”s2:õpŠÆêÍYá8a—PPÜÊŒ;,Ûs§¦´(b¦)Û¨ÓÃq4³a¥3šH1J5—EXê—dr;¶ÁCÄP3©cE05Àã5\n:Òk°‚2\r»åà t¨Ò2>Á\0x¡èÌ„C@è:˜t…ã¿Ì >gœ?#8_C…ã\$PþÒƒp^ß•:;c8x Ã>%ÁAšªRT(™Ú)¤í \$\$:/ã¨H)™`+ƒf®‰C)W ¡Z¬ê³fê ¦\0K^³Ø{Oqï>Äù0w}¨7gØŸsðQêD7)4PýÊ@>0稃\ndQ Cÿ€,€¦u|AKTLK¡ ¢×\$‡IyUäMCâZ³a oñ\0îÅay@aÀû<`äC*Ð !™H¨ÐæCc‹¡˜:ƐØÓAŒätš 4o+]z¹þØ¥‹¡QHq^+\"ôbŒÑªu4𻊀ž…зAA@\$hº Ñäq¤\"dÑÚEÖ1¿Ò9,€r\r'i@†xâäzOÈ!Hèþã‰Ko\0½÷LðO²˜e 9¡ôÜ…›¸8T „ rZÝšÄwšÞôj›A '‚ºSTJ-w ¤4G RY ¸‡rs˜¸£AI¡~¯öãKC¥Øâ“ôòÃCD¸\"â¤â„D‰S°s®Ì€»`RK‚I-hõ½9‰s-f¨®š„ ‚ƒ1ø:o-æÃUGT9è\nS t#/ÛRlFd¡âˆKxP áL*pêßÜ!9… \rÄÄâD¹‰„GeÄÜœ“³ŠOh‰õz|Åt)eHÊd8LÎ Ú;£íÀÐÉ7J¼Y«ðeR¢ì‚¤¦9îÖù`Æ0¡\"dážÃ-PÉ3·dBA6»ã¾î,¤®uŽ®K0›N‰‰)¹È¢ÉìA i4 0Q= ±*‘Âr¤!–ˆÓ`×\\ /ñ9¿–„¯ É0ˆô“‹MS|m±h] ’•‘\n¡P#ÐqgÒœž`”õ™'P™µ’’40\0ðÔ,sS²'¤åZ^Ι”´à((‡U1 0\n¸F\"*²úåUû¸ªÖ‹_o,U¾b,Í”SjÓš…¡¾7ª+U0lÓš£t°1¤´Â“‚¡Þ·#I™ jq\"!ÈÈ\$êÇE؍\rÇ\\0Øz&¨ÂÂK¬í¾ØºÅb.•šä\\Ë£ ž{Ô!Ò•4¨ªæ*é““\0‘»¸ºöI˜ìLÕé² ";break;case"zh":$g="æA*ês•\\šr¤îõâ|% ÌÂ:\$\nr.®„ö2Šr/d²È»[8Ð S™8€r©!T ¡\\¸s¦’I4¢b§r¬ñ•Ð€Js!J¥“É:Ú2r«ST⢔\n†Ìh5\rǐSRº9QÉ÷*-Y(eÈ—B†­+²¯Î…òFZI9PªYj^F•X9‘ªê¼Pæ¸ÜÜÉÔ¥2s&Ö’Eƒ¡~™Œª®·yc‘~¨¦#}K•r¶s®Ôûkžõ|¿iµ-rÙÍ€Á)c(¸ÊC«Ý¦#*ÛJ!A–R\nõk¡P€Œ/Wît¢¢ZœU9ÓêWJQ3ÓWãq¨*é'Os%îdbʯC9Ô¿Mnr;NáPÁ)ÅÁZâ´'1Tœ¥‰*†J;’©§)nY5ªª®¨’ç9XS#%’ÊîœÄAns–%ÙÊO-ç30¥*\\OœÄ¹lt’å¢0]Œñ6r‘²Ê^’-‰8´å\0Jœ¤Ù|r—¥ÊS0Œ9„),„•ò²,‘´¯,Ápi+\r‘»F¼¯kéÊL»ÐJ[¡\$jÒü?D\nÊLÅEé*ä>’¬ù(OìáÊ]—QsÅ¡ã AR–LëI SA b8¥¤8s–’’N]œÄ\"†^‘§9zW%¤s]î‘AɱÑÊEŽtIÌE•1j¨’IW)©i:R9TŒÙÒQ5L± fœ¤y#`OA- 6U˜ŸBöí¾@?‹ÁÎG\n£¼\$ К&‡B˜¦ cÍü<‹¡pÚ6…à ÈX‰E=€PØ:Ijs”ÅÙÎ]ç!tC1¤â E3|ãAëAÏAÏɉbt‘‘X¹1 ñ˜“HdzW–ê5ÆDÇI\$¶qÒC£e|μF¬9b˜¤# 9Hs‘\$b”ÿhdm\ro\\\rÊFèêYHWdþOd¬iOE\0;nè‚2\r£HÜ2ŽY³ütÐL’*\$KÀ—e`x0„@ä2ŒÁèD4ƒ à9‡Ax^;ópúnÛÀ\\7ŽC8^2ÁxÈ7Ãè4õxD1LÁX_!„AÐE–)áÒP–§I:Q!„HxŒ!ð\\Œ„Ó¦ÔBù”g½gË9³ÐŠº3OÜ,YyÄá>¥püOÆñü'ÊòüÏ7ºîã—?Ðô}(Ê< çÖt¡Ž?ÐTƒžÅLd\\Žaf%I²  s p9È…¢0K!±~!]Ú* tî’”+Äéñ>gÔÆŠÑH9„˜WÅC/\$JÙPŸns‰±pBDa9ƒ”CŠÓØõKAABœºµfdDâÂL¨8¸(“” :@\$ÈÿÒ`ƒ‚¡Ú”w‚õˆÑ‚&¤ÜÏ áÌ#…*@\rR™AÎ*ÅzÝf4Ã\"á!ñ‹1¤¾ 3ƒ¹ù?g,¹ pxK8æñ½õº+Èà½ÊPû‹Å¢-À®Zâb@´š(趯t˜(ÄM‰Á:Cƒ˜W UÐÄ{Wg”Q åv(ºÂs á8cé‰Â\$“ˆææûÂêk¬às ô …hâBgvï]ùW\n<)…D²zÌY1DþY'A#Ê‘a†--7È%-eºc\"VªñÊ\$Hð»‘íÅ¢NyÊâ#@ GÉ 'è¬E…0¢\na>5ó—1öBœ\$©ÁCk¤çv.a©Œ/lÌ™±,,(ý!£bÈߘJDØ®BEáq5L(ñ©( Ë\nLhŒ˜‚ôG„6 \rë_I‚T ñ hG(€’ÂüMÄSL+ˆ¹Bdô[X/a™Ý\n¡P#Ðpm„²y*ôÖ\"½º2`ã#¬%aŠ“¦´ ±««P\\°2T¡išC @‰CL\\„\n•­àì·mËèébú3œ!^ÅÍwª\"ñ\rˆ¡@:ì’3LÒu« ohòañß%\"\\L -\"\0¹›'/R=l\"0´¡vrËH¤* ;‹ÈxZ+y„^FŽB*%H(­)Ò¯1EWª²ŠR,";break;case"zh-tw":$g="ä^¨ê%Ó•\\šr¥ÑÎõâ|% ÌÂ:\$\ns¡.ešUȸE9PK72©(æP¢h)Ê…@º :i %“Êcè§Je åR)Ü«{º Nd TâPˆ£\\ªÔÕ8¨ CˆÈf4†ãÌaS@/%Èäû•N‹¦¬’Ndâ%гC¹’É—B…Q+–¹Öê‡Bñ_MK,ª\$õÆçu»ÞowÔfš‚T9®WK´ÍʏW¹•ˆ§2mizX:P —*‘½_/Ùg*eSLK¶Ûˆú™Î¹^9×HÌ\rºÛÕ7ºŒZz>‹ êÔ0)È¿Nï\nÙr!U=R\n¤ôÉÖ^¯ÜéJÅÑTçO©](ōI–Ø^Ü«¥]EÌJ4\$yhr•ä2^?[ ô½eCžr‘º^[#åk¢Ö‘g1'¤)ÌT'9jB)#›,§%')n䪪»hV’èùdô=OaÐ@§IBO¤òàs¥Â¦K©¤¹Jºç12A\$±&ë8mQd€¨ÁlY»r—%ò\0J£1Ä¡ÌDÇ)*OÌŠTÍ4L°Ô9DÚB+ê°â°¥yÊL«)pYÊ@ÅÔs“%Ú^R©¥pr\$-G´ƒ˜Æ%,M•ÈxÈ CÈè2…˜R¦“Ù SA bh©¤8¡®!v]œÄ!*åíBsÄ“öGIê~ƒ¥ÄZ<^“–i\\CD=šMÑÅi te­|[:Åñ tåS¬\\Xº°ž—\\W‡)]%Ñ\\ zÞêMF¡7Ä]–̱ÎG—ʲ°\$ К&‡B˜¦ cÎ,<‹¡pÚ6…à Ék[™ü“ PØ:L¹Pt“eM…Ñ Ë…átº*T1FÞ×Å.ùÞ¥!c í7 \$  HatAWðAÇI ª—ÄaÒC‘§ARS`ÈÔ€D&± †)ŠB0@:\rãXÊ70­‘­E^5IŠür’ÅtND'äTÙž^ñ9Oa:€F¥@‚2\r£HÜ2ŽZvåg1\nW(Ù¹Hµ¤ˆx0„@ä2ŒÁèD4ƒ à9‡Ax^;öpÃÈr\\ \\7ŽC8_·…ã Þ7 # Óá…á|s¤ƒD_!„AÐEèd±sÊôé†!à^0‡Áp)Œ£˜çãÚœW¤‘ÒG-n›¶yLæ—eÅE—Ù\$0JéÝK«u®½Ø»7jíÜ‹“NíÞ»ðÜïç\rϝä\"”›’r¢ÄJ½çÀœD°¹#‚Tt\ná&AœÊ’R‚rˆÁ,eŸ#æ}\rL_£‘@ô…«MI°ö\"qZ)Ѝ \nìXv™ÜŸqˆ4s‰´„\$!6ÂH¡¡4ÏÄbõk#”O‹s(ØHÚ%éÑ¢3gð»Kçý\0‹FÊ€H\n š1!Ô?D#Ñ)Oqú•\"`L…‰ªk R¡`9ÄL\"4qpPFÆÙb˜‘´D¢s0aR™l¯ÝE!XÐ.åœs\nxӍQ¬4 A‹ÑÌ«JŽ] JˆôuW©l¢nF’ÃÄ-‘ËJ%äęɴ`9…pµHá­”X¤'% A5¨ –7#š9DP D¦ÐS!Ì'„àæ3,Í—QÊ/„ó.Q»·˜2,Dïnb\\N\$Ñ9¡ûÚ\"tQ` ˜T  \n¢€)Ì\0æl¡É\"ðlS8–Fð°ÆM‰´››)2¤„™,* ø¯WÇÈ@ §Ø‚ P'dˆYÐtz\"˜Q „àÞÎsœÍ™Â¤Á¥¿I|ןҞ‰¢¹üŽˆr„ø™</äÒšs§Tû~—Õ0ĜڡPæܾ«ü×Uu@gАˆ1Bö@‰ñ~‰Ä`‰ <!²€ØrëIÑ9ã˜O“ó]4Ò‘”:â¸ÿ‹”NI‡,5S¥AÀª0-›Eô}{R‹òøŒ‘²:ÒY #)b‡™2üu…ý|‚åf‰’¤!…P \r\$OP¡6ªÇLôçÏÏe¶ò  ȹ«Ý}?ðD¨úšÓ!⸊=\n¬Ñ@ JlÐœâ0è½¢š\"Dœ·³}jÕº(DbùK^掁HÈŽ%ÖA{Þ´ü¦IqW ‡ðs+¥xx¬é²+ReÚ D.QÒ<GÀ";break;}$tg=array();foreach(explode("\n",lzw_decompress($g))as$X)$tg[]=(strpos($X,"\t")?explode("\t",$X):$X);return$tg;}if(!$tg){$tg=get_translations($ba);$_SESSION["translations"]=$tg;}if(extension_loaded('pdo')){class
  177. Min_PDO
  178. extends
  179. PDO{var$_result,$server_info,$affected_rows,$errno,$error;function
  180. __construct(){global$b;$Ie=array_search("SQL",$b->operators);if($Ie!==false)unset($b->operators[$Ie]);}function
  181. dsn($Kb,$V,$F,$C=array()){try{parent::__construct($Kb,$V,$F,$C);}catch(Exception$Yb){auth_error(h($Yb->getMessage()));}$this->setAttribute(13,array('Min_PDOStatement'));$this->server_info=@$this->getAttribute(4);}function
  182. query($G,$Bg=false){$I=parent::query($G);$this->error="";if(!$I){list(,$this->errno,$this->error)=$this->errorInfo();if(!$this->error)$this->error=lang(21);return
  183. false;}$this->store_result($I);return$I;}function
  184. multi_query($G){return$this->_result=$this->query($G);}function
  185. store_result($I=null){if(!$I){$I=$this->_result;if(!$I)return
  186. false;}if($I->columnCount()){$I->num_rows=$I->rowCount();return$I;}$this->affected_rows=$I->rowCount();return
  187. true;}function
  188. next_result(){if(!$this->_result)return
  189. false;$this->_result->_offset=0;return@$this->_result->nextRowset();}function
  190. result($G,$p=0){$I=$this->query($G);if(!$I)return
  191. false;$K=$I->fetch();return$K[$p];}}class
  192. Min_PDOStatement
  193. extends
  194. PDOStatement{var$_offset=0,$num_rows;function
  195. fetch_assoc(){return$this->fetch(2);}function
  196. fetch_row(){return$this->fetch(3);}function
  197. fetch_field(){$K=(object)$this->getColumnMeta($this->_offset++);$K->orgtable=$K->table;$K->orgname=$K->name;$K->charsetnr=(in_array("blob",(array)$K->flags)?63:0);return$K;}}}$Hb=array();class
  198. Min_SQL{var$_conn;function
  199. __construct($h){$this->_conn=$h;}function
  200. select($R,$M,$Z,$Fc,$se=array(),$z=1,$D=0,$Ne=false){global$b,$x;$nd=(count($Fc)<count($M));$G=$b->selectQueryBuild($M,$Z,$Fc,$se,$z,$D);if(!$G)$G="SELECT".limit(($_GET["page"]!="last"&&$z!=""&&$Fc&&$nd&&$x=="sql"?"SQL_CALC_FOUND_ROWS ":"").implode(", ",$M)."\nFROM ".table($R),($Z?"\nWHERE ".implode(" AND ",$Z):"").($Fc&&$nd?"\nGROUP BY ".implode(", ",$Fc):"").($se?"\nORDER BY ".implode(", ",$se):""),($z!=""?+$z:null),($D?$z*$D:0),"\n");$Nf=microtime(true);$J=$this->_conn->query($G);if($Ne)echo$b->selectQuery($G,$Nf,!$J);return$J;}function
  201. delete($R,$H,$z=0){$G="FROM ".table($R);return
  202. queries("DELETE".($z?limit1($R,$G,$H):" $G$H"));}function
  203. update($R,$P,$H,$z=0,$N="\n"){$Pg=array();foreach($P
  204. as$y=>$X)$Pg[]="$y = $X";$G=table($R)." SET$N".implode(",$N",$Pg);return
  205. queries("UPDATE".($z?limit1($R,$G,$H,$N):" $G$H"));}function
  206. insert($R,$P){return
  207. queries("INSERT INTO ".table($R).($P?" (".implode(", ",array_keys($P)).")\nVALUES (".implode(", ",$P).")":" DEFAULT VALUES"));}function
  208. insertUpdate($R,$L,$Le){return
  209. false;}function
  210. begin(){return
  211. queries("BEGIN");}function
  212. commit(){return
  213. queries("COMMIT");}function
  214. rollback(){return
  215. queries("ROLLBACK");}function
  216. slowQuery($G,$hg){}function
  217. convertSearch($u,$X,$p){return$u;}function
  218. value($X,$p){return(method_exists($this->_conn,'value')?$this->_conn->value($X,$p):(is_resource($X)?stream_get_contents($X):$X));}function
  219. quoteBinary($nf){return
  220. q($nf);}function
  221. warnings(){return'';}function
  222. tableHelp($B){}}$Hb["sqlite"]="SQLite 3";$Hb["sqlite2"]="SQLite 2";if(isset($_GET["sqlite"])||isset($_GET["sqlite2"])){$Je=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
  223. Min_SQLite{var$extension="SQLite3",$server_info,$affected_rows,$errno,$error,$_link;function
  224. __construct($r){$this->_link=new
  225. SQLite3($r);$Rg=$this->_link->version();$this->server_info=$Rg["versionString"];}function
  226. query($G){$I=@$this->_link->query($G);$this->error="";if(!$I){$this->errno=$this->_link->lastErrorCode();$this->error=$this->_link->lastErrorMsg();return
  227. false;}elseif($I->numColumns())return
  228. new
  229. Min_Result($I);$this->affected_rows=$this->_link->changes();return
  230. true;}function
  231. quote($Q){return(is_utf8($Q)?"'".$this->_link->escapeString($Q)."'":"x'".reset(unpack('H*',$Q))."'");}function
  232. store_result(){return$this->_result;}function
  233. result($G,$p=0){$I=$this->query($G);if(!is_object($I))return
  234. false;$K=$I->_result->fetchArray();return$K[$p];}}class
  235. Min_Result{var$_result,$_offset=0,$num_rows;function
  236. __construct($I){$this->_result=$I;}function
  237. fetch_assoc(){return$this->_result->fetchArray(SQLITE3_ASSOC);}function
  238. fetch_row(){return$this->_result->fetchArray(SQLITE3_NUM);}function
  239. fetch_field(){$e=$this->_offset++;$U=$this->_result->columnType($e);return(object)array("name"=>$this->_result->columnName($e),"type"=>$U,"charsetnr"=>($U==SQLITE3_BLOB?63:0),);}function
  240. __desctruct(){return$this->_result->finalize();}}}else{class
  241. Min_SQLite{var$extension="SQLite",$server_info,$affected_rows,$error,$_link;function
  242. __construct($r){$this->server_info=sqlite_libversion();$this->_link=new
  243. SQLiteDatabase($r);}function
  244. query($G,$Bg=false){$Vd=($Bg?"unbufferedQuery":"query");$I=@$this->_link->$Vd($G,SQLITE_BOTH,$o);$this->error="";if(!$I){$this->error=$o;return
  245. false;}elseif($I===true){$this->affected_rows=$this->changes();return
  246. true;}return
  247. new
  248. Min_Result($I);}function
  249. quote($Q){return"'".sqlite_escape_string($Q)."'";}function
  250. store_result(){return$this->_result;}function
  251. result($G,$p=0){$I=$this->query($G);if(!is_object($I))return
  252. false;$K=$I->_result->fetch();return$K[$p];}}class
  253. Min_Result{var$_result,$_offset=0,$num_rows;function
  254. __construct($I){$this->_result=$I;if(method_exists($I,'numRows'))$this->num_rows=$I->numRows();}function
  255. fetch_assoc(){$K=$this->_result->fetch(SQLITE_ASSOC);if(!$K)return
  256. false;$J=array();foreach($K
  257. as$y=>$X)$J[($y[0]=='"'?idf_unescape($y):$y)]=$X;return$J;}function
  258. fetch_row(){return$this->_result->fetch(SQLITE_NUM);}function
  259. fetch_field(){$B=$this->_result->fieldName($this->_offset++);$Ee='(\[.*]|"(?:[^"]|"")*"|(.+))';if(preg_match("~^($Ee\\.)?$Ee\$~",$B,$A)){$R=($A[3]!=""?$A[3]:idf_unescape($A[2]));$B=($A[5]!=""?$A[5]:idf_unescape($A[4]));}return(object)array("name"=>$B,"orgname"=>$B,"orgtable"=>$R,);}}}}elseif(extension_loaded("pdo_sqlite")){class
  260. Min_SQLite
  261. extends
  262. Min_PDO{var$extension="PDO_SQLite";function
  263. __construct($r){$this->dsn(DRIVER.":$r","","");}}}if(class_exists("Min_SQLite")){class
  264. Min_DB
  265. extends
  266. Min_SQLite{function
  267. __construct(){parent::__construct(":memory:");$this->query("PRAGMA foreign_keys = 1");}function
  268. select_db($r){if(is_readable($r)&&$this->query("ATTACH ".$this->quote(preg_match("~(^[/\\\\]|:)~",$r)?$r:dirname($_SERVER["SCRIPT_FILENAME"])."/$r")." AS a")){parent::__construct($r);$this->query("PRAGMA foreign_keys = 1");return
  269. true;}return
  270. false;}function
  271. multi_query($G){return$this->_result=$this->query($G);}function
  272. next_result(){return
  273. false;}}}class
  274. Min_Driver
  275. extends
  276. Min_SQL{function
  277. insertUpdate($R,$L,$Le){$Pg=array();foreach($L
  278. as$P)$Pg[]="(".implode(", ",$P).")";return
  279. queries("REPLACE INTO ".table($R)." (".implode(", ",array_keys(reset($L))).") VALUES\n".implode(",\n",$Pg));}function
  280. tableHelp($B){if($B=="sqlite_sequence")return"fileformat2.html#seqtab";if($B=="sqlite_master")return"fileformat2.html#$B";}}function
  281. idf_escape($u){return'"'.str_replace('"','""',$u).'"';}function
  282. table($u){return
  283. idf_escape($u);}function
  284. connect(){global$b;list(,,$F)=$b->credentials();if($F!="")return
  285. lang(22);return
  286. new
  287. Min_DB;}function
  288. get_databases(){return
  289. array();}function
  290. limit($G,$Z,$z,$ie=0,$N=" "){return" $G$Z".($z!==null?$N."LIMIT $z".($ie?" OFFSET $ie":""):"");}function
  291. limit1($R,$G,$Z,$N="\n"){global$h;return(preg_match('~^INTO~',$G)||$h->result("SELECT sqlite_compileoption_used('ENABLE_UPDATE_DELETE_LIMIT')")?limit($G,$Z,1,0,$N):" $G WHERE rowid = (SELECT rowid FROM ".table($R).$Z.$N."LIMIT 1)");}function
  292. db_collation($m,$eb){global$h;return$h->result("PRAGMA encoding");}function
  293. engines(){return
  294. array();}function
  295. logged_user(){return
  296. get_current_user();}function
  297. tables_list(){return
  298. get_key_vals("SELECT name, type FROM sqlite_master WHERE type IN ('table', 'view') ORDER BY (name = 'sqlite_sequence'), name");}function
  299. count_tables($l){return
  300. array();}function
  301. table_status($B=""){global$h;$J=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') ".($B!=""?"AND name = ".q($B):"ORDER BY name"))as$K){$K["Rows"]=$h->result("SELECT COUNT(*) FROM ".idf_escape($K["Name"]));$J[$K["Name"]]=$K;}foreach(get_rows("SELECT * FROM sqlite_sequence",null,"")as$K)$J[$K["name"]]["Auto_increment"]=$K["seq"];return($B!=""?$J[$B]:$J);}function
  302. is_view($S){return$S["Engine"]=="view";}function
  303. fk_support($S){global$h;return!$h->result("SELECT sqlite_compileoption_used('OMIT_FOREIGN_KEY')");}function
  304. fields($R){global$h;$J=array();$Le="";foreach(get_rows("PRAGMA table_info(".table($R).")")as$K){$B=$K["name"];$U=strtolower($K["type"]);$zb=$K["dflt_value"];$J[$B]=array("field"=>$B,"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("~'(.*)'~",$zb,$A)?str_replace("''","'",$A[1]):($zb=="NULL"?null:$zb)),"null"=>!$K["notnull"],"privileges"=>array("select"=>1,"insert"=>1,"update"=>1),"primary"=>$K["pk"],);if($K["pk"]){if($Le!="")$J[$Le]["auto_increment"]=false;elseif(preg_match('~^integer$~i',$U))$J[$B]["auto_increment"]=true;$Le=$B;}}$Kf=$h->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',$Kf,$Md,PREG_SET_ORDER);foreach($Md
  305. as$A){$B=str_replace('""','"',preg_replace('~^"|"$~','',$A[1]));if($J[$B])$J[$B]["collation"]=trim($A[3],"'");}return$J;}function
  306. indexes($R,$i=null){global$h;if(!is_object($i))$i=$h;$J=array();$Kf=$i->result("SELECT sql FROM sqlite_master WHERE type = 'table' AND name = ".q($R));if(preg_match('~\bPRIMARY\s+KEY\s*\((([^)"]+|"[^"]*"|`[^`]*`)++)~i',$Kf,$A)){$J[""]=array("type"=>"PRIMARY","columns"=>array(),"lengths"=>array(),"descs"=>array());preg_match_all('~((("[^"]*+")+|(?:`[^`]*+`)+)|(\S+))(\s+(ASC|DESC))?(,\s*|$)~i',$A[1],$Md,PREG_SET_ORDER);foreach($Md
  307. as$A){$J[""]["columns"][]=idf_unescape($A[2]).$A[4];$J[""]["descs"][]=(preg_match('~DESC~i',$A[5])?'1':null);}}if(!$J){foreach(fields($R)as$B=>$p){if($p["primary"])$J[""]=array("type"=>"PRIMARY","columns"=>array($B),"lengths"=>array(),"descs"=>array(null));}}$Lf=get_key_vals("SELECT name, sql FROM sqlite_master WHERE type = 'index' AND tbl_name = ".q($R),$i);foreach(get_rows("PRAGMA index_list(".table($R).")",$i)as$K){$B=$K["name"];$v=array("type"=>($K["unique"]?"UNIQUE":"INDEX"));$v["lengths"]=array();$v["descs"]=array();foreach(get_rows("PRAGMA index_info(".idf_escape($B).")",$i)as$mf){$v["columns"][]=$mf["name"];$v["descs"][]=null;}if(preg_match('~^CREATE( UNIQUE)? INDEX '.preg_quote(idf_escape($B).' ON '.idf_escape($R),'~').' \((.*)\)$~i',$Lf[$B],$af)){preg_match_all('/("[^"]*+")+( DESC)?/',$af[2],$Md);foreach($Md[2]as$y=>$X){if($X)$v["descs"][$y]='1';}}if(!$J[""]||$v["type"]!="UNIQUE"||$v["columns"]!=$J[""]["columns"]||$v["descs"]!=$J[""]["descs"]||!preg_match("~^sqlite_~",$B))$J[$B]=$v;}return$J;}function
  308. foreign_keys($R){$J=array();foreach(get_rows("PRAGMA foreign_key_list(".table($R).")")as$K){$yc=&$J[$K["id"]];if(!$yc)$yc=$K;$yc["source"][]=$K["from"];$yc["target"][]=$K["to"];}return$J;}function
  309. view($B){global$h;return
  310. array("select"=>preg_replace('~^(?:[^`"[]+|`[^`]*`|"[^"]*")* AS\s+~iU','',$h->result("SELECT sql FROM sqlite_master WHERE name = ".q($B))));}function
  311. collations(){return(isset($_GET["create"])?get_vals("PRAGMA collation_list",1):array());}function
  312. information_schema($m){return
  313. false;}function
  314. error(){global$h;return
  315. h($h->error);}function
  316. check_sqlite_name($B){global$h;$fc="db|sdb|sqlite";if(!preg_match("~^[^\\0]*\\.($fc)\$~",$B)){$h->error=lang(23,str_replace("|",", ",$fc));return
  317. false;}return
  318. true;}function
  319. create_database($m,$d){global$h;if(file_exists($m)){$h->error=lang(24);return
  320. false;}if(!check_sqlite_name($m))return
  321. false;try{$_=new
  322. Min_SQLite($m);}catch(Exception$Yb){$h->error=$Yb->getMessage();return
  323. false;}$_->query('PRAGMA encoding = "UTF-8"');$_->query('CREATE TABLE adminer (i)');$_->query('DROP TABLE adminer');return
  324. true;}function
  325. drop_databases($l){global$h;$h->__construct(":memory:");foreach($l
  326. as$m){if(!@unlink($m)){$h->error=lang(24);return
  327. false;}}return
  328. true;}function
  329. rename_database($B,$d){global$h;if(!check_sqlite_name($B))return
  330. false;$h->__construct(":memory:");$h->error=lang(24);return@rename(DB,$B);}function
  331. auto_increment(){return" PRIMARY KEY".(DRIVER=="sqlite"?" AUTOINCREMENT":"");}function
  332. alter_table($R,$B,$q,$vc,$ib,$Tb,$d,$Fa,$Be){$Mg=($R==""||$vc);foreach($q
  333. as$p){if($p[0]!=""||!$p[1]||$p[2]){$Mg=true;break;}}$c=array();$ve=array();foreach($q
  334. as$p){if($p[1]){$c[]=($Mg?$p[1]:"ADD ".implode($p[1]));if($p[0]!="")$ve[$p[0]]=$p[1][0];}}if(!$Mg){foreach($c
  335. as$X){if(!queries("ALTER TABLE ".table($R)." $X"))return
  336. false;}if($R!=$B&&!queries("ALTER TABLE ".table($R)." RENAME TO ".table($B)))return
  337. false;}elseif(!recreate_table($R,$B,$c,$ve,$vc))return
  338. false;if($Fa)queries("UPDATE sqlite_sequence SET seq = $Fa WHERE name = ".q($B));return
  339. true;}function
  340. recreate_table($R,$B,$q,$ve,$vc,$w=array()){if($R!=""){if(!$q){foreach(fields($R)as$y=>$p){if($w)$p["auto_increment"]=0;$q[]=process_field($p,$p);$ve[$y]=idf_escape($y);}}$Me=false;foreach($q
  341. as$p){if($p[6])$Me=true;}$Jb=array();foreach($w
  342. as$y=>$X){if($X[2]=="DROP"){$Jb[$X[1]]=true;unset($w[$y]);}}foreach(indexes($R)as$sd=>$v){$f=array();foreach($v["columns"]as$y=>$e){if(!$ve[$e])continue
  343. 2;$f[]=$ve[$e].($v["descs"][$y]?" DESC":"");}if(!$Jb[$sd]){if($v["type"]!="PRIMARY"||!$Me)$w[]=array($v["type"],$sd,$f);}}foreach($w
  344. as$y=>$X){if($X[0]=="PRIMARY"){unset($w[$y]);$vc[]=" PRIMARY KEY (".implode(", ",$X[2]).")";}}foreach(foreign_keys($R)as$sd=>$yc){foreach($yc["source"]as$y=>$e){if(!$ve[$e])continue
  345. 2;$yc["source"][$y]=idf_unescape($ve[$e]);}if(!isset($vc[" $sd"]))$vc[]=" ".format_foreign_key($yc);}queries("BEGIN");}foreach($q
  346. as$y=>$p)$q[$y]=" ".implode($p);$q=array_merge($q,array_filter($vc));if(!queries("CREATE TABLE ".table($R!=""?"adminer_$B":$B)." (\n".implode(",\n",$q)."\n)"))return
  347. false;if($R!=""){if($ve&&!queries("INSERT INTO ".table("adminer_$B")." (".implode(", ",$ve).") SELECT ".implode(", ",array_map('idf_escape',array_keys($ve)))." FROM ".table($R)))return
  348. false;$zg=array();foreach(triggers($R)as$xg=>$ig){$wg=trigger($xg);$zg[]="CREATE TRIGGER ".idf_escape($xg)." ".implode(" ",$ig)." ON ".table($B)."\n$wg[Statement]";}if(!queries("DROP TABLE ".table($R)))return
  349. false;queries("ALTER TABLE ".table("adminer_$B")." RENAME TO ".table($B));if(!alter_indexes($B,$w))return
  350. false;foreach($zg
  351. as$wg){if(!queries($wg))return
  352. false;}queries("COMMIT");}return
  353. true;}function
  354. index_sql($R,$U,$B,$f){return"CREATE $U ".($U!="INDEX"?"INDEX ":"").idf_escape($B!=""?$B:uniqid($R."_"))." ON ".table($R)." $f";}function
  355. alter_indexes($R,$c){foreach($c
  356. as$Le){if($Le[0]=="PRIMARY")return
  357. 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
  358. false;}return
  359. true;}function
  360. truncate_tables($T){return
  361. apply_queries("DELETE FROM",$T);}function
  362. drop_views($Tg){return
  363. apply_queries("DROP VIEW",$Tg);}function
  364. drop_tables($T){return
  365. apply_queries("DROP TABLE",$T);}function
  366. move_tables($T,$Tg,$bg){return
  367. false;}function
  368. trigger($B){global$h;if($B=="")return
  369. array("Statement"=>"BEGIN\n\t;\nEND");$u='(?:[^`"\s]+|`[^`]*`|"[^"]*")+';$yg=trigger_options();preg_match("~^CREATE\\s+TRIGGER\\s*$u\\s*(".implode("|",$yg["Timing"]).")\\s+([a-z]+)(?:\\s+OF\\s+($u))?\\s+ON\\s*$u\\s*(?:FOR\\s+EACH\\s+ROW\\s)?(.*)~is",$h->result("SELECT sql FROM sqlite_master WHERE type = 'trigger' AND name = ".q($B)),$A);$he=$A[3];return
  370. array("Timing"=>strtoupper($A[1]),"Event"=>strtoupper($A[2]).($he?" OF":""),"Of"=>($he[0]=='`'||$he[0]=='"'?idf_unescape($he):$he),"Trigger"=>$B,"Statement"=>$A[4],);}function
  371. triggers($R){$J=array();$yg=trigger_options();foreach(get_rows("SELECT * FROM sqlite_master WHERE type = 'trigger' AND tbl_name = ".q($R))as$K){preg_match('~^CREATE\s+TRIGGER\s*(?:[^`"\s]+|`[^`]*`|"[^"]*")+\s*('.implode("|",$yg["Timing"]).')\s*(.*)\s+ON\b~iU',$K["sql"],$A);$J[$K["name"]]=array($A[1],$A[2]);}return$J;}function
  372. trigger_options(){return
  373. array("Timing"=>array("BEFORE","AFTER","INSTEAD OF"),"Event"=>array("INSERT","UPDATE","UPDATE OF","DELETE"),"Type"=>array("FOR EACH ROW"),);}function
  374. begin(){return
  375. queries("BEGIN");}function
  376. last_id(){global$h;return$h->result("SELECT LAST_INSERT_ROWID()");}function
  377. explain($h,$G){return$h->query("EXPLAIN QUERY PLAN $G");}function
  378. found_rows($S,$Z){}function
  379. types(){return
  380. array();}function
  381. schemas(){return
  382. array();}function
  383. get_schema(){return"";}function
  384. set_schema($pf){return
  385. true;}function
  386. create_sql($R,$Fa,$Sf){global$h;$J=$h->result("SELECT sql FROM sqlite_master WHERE type IN ('table', 'view') AND name = ".q($R));foreach(indexes($R)as$B=>$v){if($B=='')continue;$J.=";\n\n".index_sql($R,$v['type'],$B,"(".implode(", ",array_map('idf_escape',$v['columns'])).")");}return$J;}function
  387. truncate_sql($R){return"DELETE FROM ".table($R);}function
  388. use_sql($k){}function
  389. trigger_sql($R){return
  390. implode(get_vals("SELECT sql || ';;\n' FROM sqlite_master WHERE type = 'trigger' AND tbl_name = ".q($R)));}function
  391. show_variables(){global$h;$J=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)$J[$y]=$h->result("PRAGMA $y");return$J;}function
  392. show_status(){$J=array();foreach(get_vals("PRAGMA compile_options")as$qe){list($y,$X)=explode("=",$qe,2);$J[$y]=$X;}return$J;}function
  393. convert_field($p){}function
  394. unconvert_field($p,$J){return$J;}function
  395. support($jc){return
  396. preg_match('~^(columns|database|drop_col|dump|indexes|descidx|move_col|sql|status|table|trigger|variables|view|view_trigger)$~',$jc);}$x="sqlite";$Ag=array("integer"=>0,"real"=>0,"numeric"=>0,"text"=>0,"blob"=>0);$Rf=array_keys($Ag);$Hg=array();$pe=array("=","<",">","<=",">=","!=","LIKE","LIKE %%","IN","IS NULL","NOT LIKE","NOT IN","IS NOT NULL","SQL");$Ec=array("hex","length","lower","round","unixepoch","upper");$Ic=array("avg","count","count distinct","group_concat","max","min","sum");$Mb=array(array(),array("integer|real|numeric"=>"+/-","text"=>"||",));}$Hb["pgsql"]="PostgreSQL";if(isset($_GET["pgsql"])){$Je=array("PgSQL","PDO_PgSQL");define("DRIVER","pgsql");if(extension_loaded("pgsql")){class
  397. Min_DB{var$extension="PgSQL",$_link,$_result,$_string,$_database=true,$server_info,$affected_rows,$error,$timeout;function
  398. _error($Wb,$o){if(ini_bool("html_errors"))$o=html_entity_decode(strip_tags($o));$o=preg_replace('~^[^:]*: ~','',$o);$this->error=$o;}function
  399. connect($O,$V,$F){global$b;$m=$b->database();set_error_handler(array($this,'_error'));$this->_string="host='".str_replace(":","' port='",addcslashes($O,"'\\"))."' user='".addcslashes($V,"'\\")."' password='".addcslashes($F,"'\\")."'";$this->_link=@pg_connect("$this->_string dbname='".($m!=""?addcslashes($m,"'\\"):"postgres")."'",PGSQL_CONNECT_FORCE_NEW);if(!$this->_link&&$m!=""){$this->_database=false;$this->_link=@pg_connect("$this->_string dbname='postgres'",PGSQL_CONNECT_FORCE_NEW);}restore_error_handler();if($this->_link){$Rg=pg_version($this->_link);$this->server_info=$Rg["server"];pg_set_client_encoding($this->_link,"UTF8");}return(bool)$this->_link;}function
  400. quote($Q){return"'".pg_escape_string($this->_link,$Q)."'";}function
  401. value($X,$p){return($p["type"]=="bytea"?pg_unescape_bytea($X):$X);}function
  402. quoteBinary($Q){return"'".pg_escape_bytea($this->_link,$Q)."'";}function
  403. select_db($k){global$b;if($k==$b->database())return$this->_database;$J=@pg_connect("$this->_string dbname='".addcslashes($k,"'\\")."'",PGSQL_CONNECT_FORCE_NEW);if($J)$this->_link=$J;return$J;}function
  404. close(){$this->_link=@pg_connect("$this->_string dbname='postgres'");}function
  405. query($G,$Bg=false){$I=@pg_query($this->_link,$G);$this->error="";if(!$I){$this->error=pg_last_error($this->_link);$J=false;}elseif(!pg_num_fields($I)){$this->affected_rows=pg_affected_rows($I);$J=true;}else$J=new
  406. Min_Result($I);if($this->timeout){$this->timeout=0;$this->query("RESET statement_timeout");}return$J;}function
  407. multi_query($G){return$this->_result=$this->query($G);}function
  408. store_result(){return$this->_result;}function
  409. next_result(){return
  410. false;}function
  411. result($G,$p=0){$I=$this->query($G);if(!$I||!$I->num_rows)return
  412. false;return
  413. pg_fetch_result($I->_result,0,$p);}function
  414. warnings(){return
  415. h(pg_last_notice($this->_link));}}class
  416. Min_Result{var$_result,$_offset=0,$num_rows;function
  417. __construct($I){$this->_result=$I;$this->num_rows=pg_num_rows($I);}function
  418. fetch_assoc(){return
  419. pg_fetch_assoc($this->_result);}function
  420. fetch_row(){return
  421. pg_fetch_row($this->_result);}function
  422. fetch_field(){$e=$this->_offset++;$J=new
  423. stdClass;if(function_exists('pg_field_table'))$J->orgtable=pg_field_table($this->_result,$e);$J->name=pg_field_name($this->_result,$e);$J->orgname=$J->name;$J->type=pg_field_type($this->_result,$e);$J->charsetnr=($J->type=="bytea"?63:0);return$J;}function
  424. __destruct(){pg_free_result($this->_result);}}}elseif(extension_loaded("pdo_pgsql")){class
  425. Min_DB
  426. extends
  427. Min_PDO{var$extension="PDO_PgSQL",$timeout;function
  428. connect($O,$V,$F){global$b;$m=$b->database();$Q="pgsql:host='".str_replace(":","' port='",addcslashes($O,"'\\"))."' options='-c client_encoding=utf8'";$this->dsn("$Q dbname='".($m!=""?addcslashes($m,"'\\"):"postgres")."'",$V,$F);return
  429. true;}function
  430. select_db($k){global$b;return($b->database()==$k);}function
  431. quoteBinary($nf){return
  432. q($nf);}function
  433. query($G,$Bg=false){$J=parent::query($G,$Bg);if($this->timeout){$this->timeout=0;parent::query("RESET statement_timeout");}return$J;}function
  434. warnings(){return'';}function
  435. close(){}}}class
  436. Min_Driver
  437. extends
  438. Min_SQL{function
  439. insertUpdate($R,$L,$Le){global$h;foreach($L
  440. as$P){$Ig=array();$Z=array();foreach($P
  441. as$y=>$X){$Ig[]="$y = $X";if(isset($Le[idf_unescape($y)]))$Z[]="$y = $X";}if(!(($Z&&queries("UPDATE ".table($R)." SET ".implode(", ",$Ig)." WHERE ".implode(" AND ",$Z))&&$h->affected_rows)||queries("INSERT INTO ".table($R)." (".implode(", ",array_keys($P)).") VALUES (".implode(", ",$P).")")))return
  442. false;}return
  443. true;}function
  444. slowQuery($G,$hg){$this->_conn->query("SET statement_timeout = ".(1000*$hg));$this->_conn->timeout=1000*$hg;return$G;}function
  445. convertSearch($u,$X,$p){return(preg_match('~char|text'.(!preg_match('~LIKE~',$X["op"])?'|date|time(stamp)?|boolean|uuid|'.number_type():'').'~',$p["type"])?$u:"CAST($u AS text)");}function
  446. quoteBinary($nf){return$this->_conn->quoteBinary($nf);}function
  447. warnings(){return$this->_conn->warnings();}function
  448. tableHelp($B){$Ed=array("information_schema"=>"infoschema","pg_catalog"=>"catalog",);$_=$Ed[$_GET["ns"]];if($_)return"$_-".str_replace("_","-",$B).".html";}}function
  449. idf_escape($u){return'"'.str_replace('"','""',$u).'"';}function
  450. table($u){return
  451. idf_escape($u);}function
  452. connect(){global$b,$Ag,$Rf;$h=new
  453. Min_DB;$j=$b->credentials();if($h->connect($j[0],$j[1],$j[2])){if(min_version(9,0,$h)){$h->query("SET application_name = 'Adminer'");if(min_version(9.2,0,$h)){$Rf[lang(25)][]="json";$Ag["json"]=4294967295;if(min_version(9.4,0,$h)){$Rf[lang(25)][]="jsonb";$Ag["jsonb"]=4294967295;}}}return$h;}return$h->error;}function
  454. get_databases(){return
  455. get_vals("SELECT datname FROM pg_database WHERE has_database_privilege(datname, 'CONNECT') ORDER BY datname");}function
  456. limit($G,$Z,$z,$ie=0,$N=" "){return" $G$Z".($z!==null?$N."LIMIT $z".($ie?" OFFSET $ie":""):"");}function
  457. limit1($R,$G,$Z,$N="\n"){return(preg_match('~^INTO~',$G)?limit($G,$Z,1,0,$N):" $G".(is_view(table_status1($R))?$Z:" WHERE ctid = (SELECT ctid FROM ".table($R).$Z.$N."LIMIT 1)"));}function
  458. db_collation($m,$eb){global$h;return$h->result("SHOW LC_COLLATE");}function
  459. engines(){return
  460. array();}function
  461. logged_user(){global$h;return$h->result("SELECT user");}function
  462. tables_list(){$G="SELECT table_name, table_type FROM information_schema.tables WHERE table_schema = current_schema()";if(support('materializedview'))$G.="
  463. UNION ALL
  464. SELECT matviewname, 'MATERIALIZED VIEW'
  465. FROM pg_matviews
  466. WHERE schemaname = current_schema()";$G.="
  467. ORDER BY 1";return
  468. get_key_vals($G);}function
  469. count_tables($l){return
  470. array();}function
  471. table_status($B=""){$J=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\", ".(min_version(12)?"''":"CASE WHEN c.relhasoids THEN 'oid' ELSE '' END")." AS \"Oid\", c.reltuples as \"Rows\", n.nspname
  472. FROM pg_class c
  473. JOIN pg_namespace n ON(n.nspname = current_schema() AND n.oid = c.relnamespace)
  474. WHERE relkind IN ('r', 'm', 'v', 'f')
  475. ".($B!=""?"AND relname = ".q($B):"ORDER BY relname"))as$K)$J[$K["Name"]]=$K;return($B!=""?$J[$B]:$J);}function
  476. is_view($S){return
  477. in_array($S["Engine"],array("view","materialized view"));}function
  478. fk_support($S){return
  479. true;}function
  480. fields($R){$J=array();$xa=array('timestamp without time zone'=>'timestamp','timestamp with time zone'=>'timestamptz',);$Vc=min_version(10)?"(a.attidentity = 'd')::int":'0';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, $Vc AS identity
  481. FROM pg_class c
  482. JOIN pg_namespace n ON c.relnamespace = n.oid
  483. JOIN pg_attribute a ON c.oid = a.attrelid
  484. LEFT JOIN pg_attrdef d ON c.oid = d.adrelid AND a.attnum = d.adnum
  485. WHERE c.relname = ".q($R)."
  486. AND n.nspname = current_schema()
  487. AND NOT a.attisdropped
  488. AND a.attnum > 0
  489. ORDER BY a.attnum")as$K){preg_match('~([^([]+)(\((.*)\))?([a-z ]+)?((\[[0-9]*])*)$~',$K["full_type"],$A);list(,$U,$Bd,$K["length"],$sa,$za)=$A;$K["length"].=$za;$Va=$U.$sa;if(isset($xa[$Va])){$K["type"]=$xa[$Va];$K["full_type"]=$K["type"].$Bd.$za;}else{$K["type"]=$U;$K["full_type"]=$K["type"].$Bd.$sa.$za;}if($K['identity'])$K['default']='GENERATED BY DEFAULT AS IDENTITY';$K["null"]=!$K["attnotnull"];$K["auto_increment"]=$K['identity']||preg_match('~^nextval\(~i',$K["default"]);$K["privileges"]=array("insert"=>1,"select"=>1,"update"=>1);if(preg_match('~(.+)::[^)]+(.*)~',$K["default"],$A))$K["default"]=($A[1]=="NULL"?null:(($A[1][0]=="'"?idf_unescape($A[1]):$A[1]).$A[2]));$J[$K["field"]]=$K;}return$J;}function
  490. indexes($R,$i=null){global$h;if(!is_object($i))$i=$h;$J=array();$Zf=$i->result("SELECT oid FROM pg_class WHERE relnamespace = (SELECT oid FROM pg_namespace WHERE nspname = current_schema()) AND relname = ".q($R));$f=get_key_vals("SELECT attnum, attname FROM pg_attribute WHERE attrelid = $Zf AND attnum > 0",$i);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 = $Zf AND ci.oid = i.indexrelid",$i)as$K){$bf=$K["relname"];$J[$bf]["type"]=($K["indispartial"]?"INDEX":($K["indisprimary"]?"PRIMARY":($K["indisunique"]?"UNIQUE":"INDEX")));$J[$bf]["columns"]=array();foreach(explode(" ",$K["indkey"])as$dd)$J[$bf]["columns"][]=$f[$dd];$J[$bf]["descs"]=array();foreach(explode(" ",$K["indoption"])as$ed)$J[$bf]["descs"][]=($ed&1?'1':null);$J[$bf]["lengths"]=array();}return$J;}function
  491. foreign_keys($R){global$ke;$J=array();foreach(get_rows("SELECT conname, condeferrable::int AS deferrable, pg_get_constraintdef(oid) AS definition
  492. FROM pg_constraint
  493. 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())
  494. AND contype = 'f'::char
  495. ORDER BY conkey, conname")as$K){if(preg_match('~FOREIGN KEY\s*\((.+)\)\s*REFERENCES (.+)\((.+)\)(.*)$~iA',$K['definition'],$A)){$K['source']=array_map('trim',explode(',',$A[1]));if(preg_match('~^(("([^"]|"")+"|[^"]+)\.)?"?("([^"]|"")+"|[^"]+)$~',$A[2],$Ld)){$K['ns']=str_replace('""','"',preg_replace('~^"(.+)"$~','\1',$Ld[2]));$K['table']=str_replace('""','"',preg_replace('~^"(.+)"$~','\1',$Ld[4]));}$K['target']=array_map('trim',explode(',',$A[3]));$K['on_delete']=(preg_match("~ON DELETE ($ke)~",$A[4],$Ld)?$Ld[1]:'NO ACTION');$K['on_update']=(preg_match("~ON UPDATE ($ke)~",$A[4],$Ld)?$Ld[1]:'NO ACTION');$J[$K['conname']]=$K;}}return$J;}function
  496. view($B){global$h;return
  497. array("select"=>trim($h->result("SELECT pg_get_viewdef(".$h->result("SELECT oid FROM pg_class WHERE relname = ".q($B)).")")));}function
  498. collations(){return
  499. array();}function
  500. information_schema($m){return($m=="information_schema");}function
  501. error(){global$h;$J=h($h->error);if(preg_match('~^(.*\n)?([^\n]*)\n( *)\^(\n.*)?$~s',$J,$A))$J=$A[1].preg_replace('~((?:[^&]|&[^;]*;){'.strlen($A[3]).'})(.*)~','\1<b>\2</b>',$A[2]).$A[4];return
  502. nl_br($J);}function
  503. create_database($m,$d){return
  504. queries("CREATE DATABASE ".idf_escape($m).($d?" ENCODING ".idf_escape($d):""));}function
  505. drop_databases($l){global$h;$h->close();return
  506. apply_queries("DROP DATABASE",$l,'idf_escape');}function
  507. rename_database($B,$d){return
  508. queries("ALTER DATABASE ".idf_escape(DB)." RENAME TO ".idf_escape($B));}function
  509. auto_increment(){return"";}function
  510. alter_table($R,$B,$q,$vc,$ib,$Tb,$d,$Fa,$Be){$c=array();$Te=array();if($R!=""&&$R!=$B)$Te[]="ALTER TABLE ".table($R)." RENAME TO ".table($B);foreach($q
  511. as$p){$e=idf_escape($p[0]);$X=$p[1];if(!$X)$c[]="DROP $e";else{$Og=$X[5];unset($X[5]);if(isset($X[6])&&$p[0]=="")$X[1]=($X[1]=="bigint"?" big":" ")."serial";if($p[0]=="")$c[]=($R!=""?"ADD ":" ").implode($X);else{if($e!=$X[0])$Te[]="ALTER TABLE ".table($B)." RENAME $e TO $X[0]";$c[]="ALTER $e TYPE$X[1]";if(!$X[6]){$c[]="ALTER $e ".($X[3]?"SET$X[3]":"DROP DEFAULT");$c[]="ALTER $e ".($X[2]==" NULL"?"DROP NOT":"SET").$X[2];}}if($p[0]!=""||$Og!="")$Te[]="COMMENT ON COLUMN ".table($B).".$X[0] IS ".($Og!=""?substr($Og,9):"''");}}$c=array_merge($c,$vc);if($R=="")array_unshift($Te,"CREATE TABLE ".table($B)." (\n".implode(",\n",$c)."\n)");elseif($c)array_unshift($Te,"ALTER TABLE ".table($R)."\n".implode(",\n",$c));if($R!=""||$ib!="")$Te[]="COMMENT ON TABLE ".table($B)." IS ".q($ib);if($Fa!=""){}foreach($Te
  512. as$G){if(!queries($G))return
  513. false;}return
  514. true;}function
  515. alter_indexes($R,$c){$rb=array();$Ib=array();$Te=array();foreach($c
  516. as$X){if($X[0]!="INDEX")$rb[]=($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")$Ib[]=idf_escape($X[1]);else$Te[]="CREATE INDEX ".idf_escape($X[1]!=""?$X[1]:uniqid($R."_"))." ON ".table($R)." (".implode(", ",$X[2]).")";}if($rb)array_unshift($Te,"ALTER TABLE ".table($R).implode(",",$rb));if($Ib)array_unshift($Te,"DROP INDEX ".implode(", ",$Ib));foreach($Te
  517. as$G){if(!queries($G))return
  518. false;}return
  519. true;}function
  520. truncate_tables($T){return
  521. queries("TRUNCATE ".implode(", ",array_map('table',$T)));return
  522. true;}function
  523. drop_views($Tg){return
  524. drop_tables($Tg);}function
  525. drop_tables($T){foreach($T
  526. as$R){$Pf=table_status($R);if(!queries("DROP ".strtoupper($Pf["Engine"])." ".table($R)))return
  527. false;}return
  528. true;}function
  529. move_tables($T,$Tg,$bg){foreach(array_merge($T,$Tg)as$R){$Pf=table_status($R);if(!queries("ALTER ".strtoupper($Pf["Engine"])." ".table($R)." SET SCHEMA ".idf_escape($bg)))return
  530. false;}return
  531. true;}function
  532. trigger($B,$R=null){if($B=="")return
  533. array("Statement"=>"EXECUTE PROCEDURE ()");if($R===null)$R=$_GET['trigger'];$L=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($B));return
  534. reset($L);}function
  535. triggers($R){$J=array();foreach(get_rows("SELECT * FROM information_schema.triggers WHERE event_object_table = ".q($R))as$K)$J[$K["trigger_name"]]=array($K["action_timing"],$K["event_manipulation"]);return$J;}function
  536. trigger_options(){return
  537. array("Timing"=>array("BEFORE","AFTER"),"Event"=>array("INSERT","UPDATE","DELETE"),"Type"=>array("FOR EACH ROW","FOR EACH STATEMENT"),);}function
  538. routine($B,$U){$L=get_rows('SELECT routine_definition AS definition, LOWER(external_language) AS language, *
  539. FROM information_schema.routines
  540. WHERE routine_schema = current_schema() AND specific_name = '.q($B));$J=$L[0];$J["returns"]=array("type"=>$J["type_udt_name"]);$J["fields"]=get_rows('SELECT parameter_name AS field, data_type AS type, character_maximum_length AS length, parameter_mode AS inout
  541. FROM information_schema.parameters
  542. WHERE specific_schema = current_schema() AND specific_name = '.q($B).'
  543. ORDER BY ordinal_position');return$J;}function
  544. routines(){return
  545. get_rows('SELECT specific_name AS "SPECIFIC_NAME", routine_type AS "ROUTINE_TYPE", routine_name AS "ROUTINE_NAME", type_udt_name AS "DTD_IDENTIFIER"
  546. FROM information_schema.routines
  547. WHERE routine_schema = current_schema()
  548. ORDER BY SPECIFIC_NAME');}function
  549. routine_languages(){return
  550. get_vals("SELECT LOWER(lanname) FROM pg_catalog.pg_language");}function
  551. routine_id($B,$K){$J=array();foreach($K["fields"]as$p)$J[]=$p["type"];return
  552. idf_escape($B)."(".implode(", ",$J).")";}function
  553. last_id(){return
  554. 0;}function
  555. explain($h,$G){return$h->query("EXPLAIN $G");}function
  556. found_rows($S,$Z){global$h;if(preg_match("~ rows=([0-9]+)~",$h->result("EXPLAIN SELECT * FROM ".idf_escape($S["Name"]).($Z?" WHERE ".implode(" AND ",$Z):"")),$af))return$af[1];return
  557. false;}function
  558. types(){return
  559. get_vals("SELECT typname
  560. FROM pg_type
  561. WHERE typnamespace = (SELECT oid FROM pg_namespace WHERE nspname = current_schema())
  562. AND typtype IN ('b','d','e')
  563. AND typelem = 0");}function
  564. schemas(){return
  565. get_vals("SELECT nspname FROM pg_namespace ORDER BY nspname");}function
  566. get_schema(){global$h;return$h->result("SELECT current_schema()");}function
  567. set_schema($of){global$h,$Ag,$Rf;$J=$h->query("SET search_path TO ".idf_escape($of));foreach(types()as$U){if(!isset($Ag[$U])){$Ag[$U]=0;$Rf[lang(26)][]=$U;}}return$J;}function
  568. create_sql($R,$Fa,$Sf){global$h;$J='';$kf=array();$yf=array();$Pf=table_status($R);$q=fields($R);$w=indexes($R);ksort($w);$sc=foreign_keys($R);ksort($sc);if(!$Pf||empty($q))return
  569. false;$J="CREATE TABLE ".idf_escape($Pf['nspname']).".".idf_escape($Pf['Name'])." (\n ";foreach($q
  570. as$kc=>$p){$Ae=idf_escape($p['field']).' '.$p['full_type'].default_value($p).($p['attnotnull']?" NOT NULL":"");$kf[]=$Ae;if(preg_match('~nextval\(\'([^\']+)\'\)~',$p['default'],$Md)){$xf=$Md[1];$Jf=reset(get_rows(min_version(10)?"SELECT *, cache_size AS cache_value FROM pg_sequences WHERE schemaname = current_schema() AND sequencename = ".q($xf):"SELECT * FROM $xf"));$yf[]=($Sf=="DROP+CREATE"?"DROP SEQUENCE IF EXISTS $xf;\n":"")."CREATE SEQUENCE $xf INCREMENT $Jf[increment_by] MINVALUE $Jf[min_value] MAXVALUE $Jf[max_value] START ".($Fa?$Jf['last_value']:1)." CACHE $Jf[cache_value];";}}if(!empty($yf))$J=implode("\n\n",$yf)."\n\n$J";foreach($w
  571. as$Yc=>$v){switch($v['type']){case'UNIQUE':$kf[]="CONSTRAINT ".idf_escape($Yc)." UNIQUE (".implode(', ',array_map('idf_escape',$v['columns'])).")";break;case'PRIMARY':$kf[]="CONSTRAINT ".idf_escape($Yc)." PRIMARY KEY (".implode(', ',array_map('idf_escape',$v['columns'])).")";break;}}foreach($sc
  572. as$rc=>$qc)$kf[]="CONSTRAINT ".idf_escape($rc)." $qc[definition] ".($qc['deferrable']?'DEFERRABLE':'NOT DEFERRABLE');$J.=implode(",\n ",$kf)."\n) WITH (oids = ".($Pf['Oid']?'true':'false').");";foreach($w
  573. as$Yc=>$v){if($v['type']=='INDEX'){$f=array();foreach($v['columns']as$y=>$X)$f[]=idf_escape($X).($v['descs'][$y]?" DESC":"");$J.="\n\nCREATE INDEX ".idf_escape($Yc)." ON ".idf_escape($Pf['nspname']).".".idf_escape($Pf['Name'])." USING btree (".implode(', ',$f).");";}}if($Pf['Comment'])$J.="\n\nCOMMENT ON TABLE ".idf_escape($Pf['nspname']).".".idf_escape($Pf['Name'])." IS ".q($Pf['Comment']).";";foreach($q
  574. as$kc=>$p){if($p['comment'])$J.="\n\nCOMMENT ON COLUMN ".idf_escape($Pf['nspname']).".".idf_escape($Pf['Name']).".".idf_escape($kc)." IS ".q($p['comment']).";";}return
  575. rtrim($J,';');}function
  576. truncate_sql($R){return"TRUNCATE ".table($R);}function
  577. trigger_sql($R){$Pf=table_status($R);$J="";foreach(triggers($R)as$vg=>$ug){$wg=trigger($vg,$Pf['Name']);$J.="\nCREATE TRIGGER ".idf_escape($wg['Trigger'])." $wg[Timing] $wg[Events] ON ".idf_escape($Pf["nspname"]).".".idf_escape($Pf['Name'])." $wg[Type] $wg[Statement];;\n";}return$J;}function
  578. use_sql($k){return"\connect ".idf_escape($k);}function
  579. show_variables(){return
  580. get_key_vals("SHOW ALL");}function
  581. process_list(){return
  582. get_rows("SELECT * FROM pg_stat_activity ORDER BY ".(min_version(9.2)?"pid":"procpid"));}function
  583. show_status(){}function
  584. convert_field($p){}function
  585. unconvert_field($p,$J){return$J;}function
  586. support($jc){return
  587. preg_match('~^(database|table|columns|sql|indexes|descidx|comment|view|'.(min_version(9.3)?'materializedview|':'').'scheme|routine|processlist|sequence|trigger|type|variables|drop_col|kill|dump)$~',$jc);}function
  588. kill_process($X){return
  589. queries("SELECT pg_terminate_backend(".number($X).")");}function
  590. connection_id(){return"SELECT pg_backend_pid()";}function
  591. max_connections(){global$h;return$h->result("SHOW max_connections");}$x="pgsql";$Ag=array();$Rf=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){$Ag+=$X;$Rf[$y]=array_keys($X);}$Hg=array();$pe=array("=","<",">","<=",">=","!=","~","!~","LIKE","LIKE %%","ILIKE","ILIKE %%","IN","IS NULL","NOT LIKE","NOT IN","IS NOT NULL");$Ec=array("char_length","lower","round","to_hex","to_timestamp","upper");$Ic=array("avg","count","count distinct","max","min","sum");$Mb=array(array("char"=>"md5","date|time"=>"now",),array(number_type()=>"+/-","date|time"=>"+ interval/- interval","char|text"=>"||",));}$Hb["oracle"]="Oracle (beta)";if(isset($_GET["oracle"])){$Je=array("OCI8","PDO_OCI");define("DRIVER","oracle");if(extension_loaded("oci8")){class
  592. Min_DB{var$extension="oci8",$_link,$_result,$server_info,$affected_rows,$errno,$error;function
  593. _error($Wb,$o){if(ini_bool("html_errors"))$o=html_entity_decode(strip_tags($o));$o=preg_replace('~^[^:]*: ~','',$o);$this->error=$o;}function
  594. connect($O,$V,$F){$this->_link=@oci_new_connect($V,$F,$O,"AL32UTF8");if($this->_link){$this->server_info=oci_server_version($this->_link);return
  595. true;}$o=oci_error();$this->error=$o["message"];return
  596. false;}function
  597. quote($Q){return"'".str_replace("'","''",$Q)."'";}function
  598. select_db($k){return
  599. true;}function
  600. query($G,$Bg=false){$I=oci_parse($this->_link,$G);$this->error="";if(!$I){$o=oci_error($this->_link);$this->errno=$o["code"];$this->error=$o["message"];return
  601. false;}set_error_handler(array($this,'_error'));$J=@oci_execute($I);restore_error_handler();if($J){if(oci_num_fields($I))return
  602. new
  603. Min_Result($I);$this->affected_rows=oci_num_rows($I);}return$J;}function
  604. multi_query($G){return$this->_result=$this->query($G);}function
  605. store_result(){return$this->_result;}function
  606. next_result(){return
  607. false;}function
  608. result($G,$p=1){$I=$this->query($G);if(!is_object($I)||!oci_fetch($I->_result))return
  609. false;return
  610. oci_result($I->_result,$p);}}class
  611. Min_Result{var$_result,$_offset=1,$num_rows;function
  612. __construct($I){$this->_result=$I;}function
  613. _convert($K){foreach((array)$K
  614. as$y=>$X){if(is_a($X,'OCI-Lob'))$K[$y]=$X->load();}return$K;}function
  615. fetch_assoc(){return$this->_convert(oci_fetch_assoc($this->_result));}function
  616. fetch_row(){return$this->_convert(oci_fetch_row($this->_result));}function
  617. fetch_field(){$e=$this->_offset++;$J=new
  618. stdClass;$J->name=oci_field_name($this->_result,$e);$J->orgname=$J->name;$J->type=oci_field_type($this->_result,$e);$J->charsetnr=(preg_match("~raw|blob|bfile~",$J->type)?63:0);return$J;}function
  619. __destruct(){oci_free_statement($this->_result);}}}elseif(extension_loaded("pdo_oci")){class
  620. Min_DB
  621. extends
  622. Min_PDO{var$extension="PDO_OCI";function
  623. connect($O,$V,$F){$this->dsn("oci:dbname=//$O;charset=AL32UTF8",$V,$F);return
  624. true;}function
  625. select_db($k){return
  626. true;}}}class
  627. Min_Driver
  628. extends
  629. Min_SQL{function
  630. begin(){return
  631. true;}}function
  632. idf_escape($u){return'"'.str_replace('"','""',$u).'"';}function
  633. table($u){return
  634. idf_escape($u);}function
  635. connect(){global$b;$h=new
  636. Min_DB;$j=$b->credentials();if($h->connect($j[0],$j[1],$j[2]))return$h;return$h->error;}function
  637. get_databases(){return
  638. get_vals("SELECT tablespace_name FROM user_tablespaces");}function
  639. limit($G,$Z,$z,$ie=0,$N=" "){return($ie?" * FROM (SELECT t.*, rownum AS rnum FROM (SELECT $G$Z) t WHERE rownum <= ".($z+$ie).") WHERE rnum > $ie":($z!==null?" * FROM (SELECT $G$Z) WHERE rownum <= ".($z+$ie):" $G$Z"));}function
  640. limit1($R,$G,$Z,$N="\n"){return" $G$Z";}function
  641. db_collation($m,$eb){global$h;return$h->result("SELECT value FROM nls_database_parameters WHERE parameter = 'NLS_CHARACTERSET'");}function
  642. engines(){return
  643. array();}function
  644. logged_user(){global$h;return$h->result("SELECT USER FROM DUAL");}function
  645. tables_list(){return
  646. get_key_vals("SELECT table_name, 'table' FROM all_tables WHERE tablespace_name = ".q(DB)."
  647. UNION SELECT view_name, 'view' FROM user_views
  648. ORDER BY 1");}function
  649. count_tables($l){return
  650. array();}function
  651. table_status($B=""){$J=array();$qf=q($B);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).($B!=""?" AND table_name = $qf":"")."
  652. UNION SELECT view_name, 'view', 0, 0 FROM user_views".($B!=""?" WHERE view_name = $qf":"")."
  653. ORDER BY 1")as$K){if($B!="")return$K;$J[$K["Name"]]=$K;}return$J;}function
  654. is_view($S){return$S["Engine"]=="view";}function
  655. fk_support($S){return
  656. true;}function
  657. fields($R){$J=array();foreach(get_rows("SELECT * FROM all_tab_columns WHERE table_name = ".q($R)." ORDER BY column_id")as$K){$U=$K["DATA_TYPE"];$Bd="$K[DATA_PRECISION],$K[DATA_SCALE]";if($Bd==",")$Bd=$K["DATA_LENGTH"];$J[$K["COLUMN_NAME"]]=array("field"=>$K["COLUMN_NAME"],"full_type"=>$U.($Bd?"($Bd)":""),"type"=>strtolower($U),"length"=>$Bd,"default"=>$K["DATA_DEFAULT"],"null"=>($K["NULLABLE"]=="Y"),"privileges"=>array("insert"=>1,"select"=>1,"update"=>1),);}return$J;}function
  658. indexes($R,$i=null){$J=array();foreach(get_rows("SELECT uic.*, uc.constraint_type
  659. FROM user_ind_columns uic
  660. LEFT JOIN user_constraints uc ON uic.index_name = uc.constraint_name AND uic.table_name = uc.table_name
  661. WHERE uic.table_name = ".q($R)."
  662. ORDER BY uc.constraint_type, uic.column_position",$i)as$K){$Yc=$K["INDEX_NAME"];$J[$Yc]["type"]=($K["CONSTRAINT_TYPE"]=="P"?"PRIMARY":($K["CONSTRAINT_TYPE"]=="U"?"UNIQUE":"INDEX"));$J[$Yc]["columns"][]=$K["COLUMN_NAME"];$J[$Yc]["lengths"][]=($K["CHAR_LENGTH"]&&$K["CHAR_LENGTH"]!=$K["COLUMN_LENGTH"]?$K["CHAR_LENGTH"]:null);$J[$Yc]["descs"][]=($K["DESCEND"]?'1':null);}return$J;}function
  663. view($B){$L=get_rows('SELECT text "select" FROM user_views WHERE view_name = '.q($B));return
  664. reset($L);}function
  665. collations(){return
  666. array();}function
  667. information_schema($m){return
  668. false;}function
  669. error(){global$h;return
  670. h($h->error);}function
  671. explain($h,$G){$h->query("EXPLAIN PLAN FOR $G");return$h->query("SELECT * FROM plan_table");}function
  672. found_rows($S,$Z){}function
  673. alter_table($R,$B,$q,$vc,$ib,$Tb,$d,$Fa,$Be){$c=$Ib=array();foreach($q
  674. as$p){$X=$p[1];if($X&&$p[0]!=""&&idf_escape($p[0])!=$X[0])queries("ALTER TABLE ".table($R)." RENAME COLUMN ".idf_escape($p[0])." TO $X[0]");if($X)$c[]=($R!=""?($p[0]!=""?"MODIFY (":"ADD ("):" ").implode($X).($R!=""?")":"");else$Ib[]=idf_escape($p[0]);}if($R=="")return
  675. queries("CREATE TABLE ".table($B)." (\n".implode(",\n",$c)."\n)");return(!$c||queries("ALTER TABLE ".table($R)."\n".implode("\n",$c)))&&(!$Ib||queries("ALTER TABLE ".table($R)." DROP (".implode(", ",$Ib).")"))&&($R==$B||queries("ALTER TABLE ".table($R)." RENAME TO ".table($B)));}function
  676. foreign_keys($R){$J=array();$G="SELECT c_list.CONSTRAINT_NAME as NAME,
  677. c_src.COLUMN_NAME as SRC_COLUMN,
  678. c_dest.OWNER as DEST_DB,
  679. c_dest.TABLE_NAME as DEST_TABLE,
  680. c_dest.COLUMN_NAME as DEST_COLUMN,
  681. c_list.DELETE_RULE as ON_DELETE
  682. FROM ALL_CONSTRAINTS c_list, ALL_CONS_COLUMNS c_src, ALL_CONS_COLUMNS c_dest
  683. WHERE c_list.CONSTRAINT_NAME = c_src.CONSTRAINT_NAME
  684. AND c_list.R_CONSTRAINT_NAME = c_dest.CONSTRAINT_NAME
  685. AND c_list.CONSTRAINT_TYPE = 'R'
  686. AND c_src.TABLE_NAME = ".q($R);foreach(get_rows($G)as$K)$J[$K['NAME']]=array("db"=>$K['DEST_DB'],"table"=>$K['DEST_TABLE'],"source"=>array($K['SRC_COLUMN']),"target"=>array($K['DEST_COLUMN']),"on_delete"=>$K['ON_DELETE'],"on_update"=>null,);return$J;}function
  687. truncate_tables($T){return
  688. apply_queries("TRUNCATE TABLE",$T);}function
  689. drop_views($Tg){return
  690. apply_queries("DROP VIEW",$Tg);}function
  691. drop_tables($T){return
  692. apply_queries("DROP TABLE",$T);}function
  693. last_id(){return
  694. 0;}function
  695. schemas(){return
  696. get_vals("SELECT DISTINCT owner FROM dba_segments WHERE owner IN (SELECT username FROM dba_users WHERE default_tablespace NOT IN ('SYSTEM','SYSAUX'))");}function
  697. get_schema(){global$h;return$h->result("SELECT sys_context('USERENV', 'SESSION_USER') FROM dual");}function
  698. set_schema($pf){global$h;return$h->query("ALTER SESSION SET CURRENT_SCHEMA = ".idf_escape($pf));}function
  699. show_variables(){return
  700. get_key_vals('SELECT name, display_value FROM v$parameter');}function
  701. process_list(){return
  702. 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"
  703. FROM v$session sess LEFT OUTER JOIN v$sql sql
  704. ON sql.sql_id = sess.sql_id
  705. WHERE sess.type = \'USER\'
  706. ORDER BY PROCESS
  707. ');}function
  708. show_status(){$L=get_rows('SELECT * FROM v$instance');return
  709. reset($L);}function
  710. convert_field($p){}function
  711. unconvert_field($p,$J){return$J;}function
  712. support($jc){return
  713. preg_match('~^(columns|database|drop_col|indexes|descidx|processlist|scheme|sql|status|table|variables|view|view_trigger)$~',$jc);}$x="oracle";$Ag=array();$Rf=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){$Ag+=$X;$Rf[$y]=array_keys($X);}$Hg=array();$pe=array("=","<",">","<=",">=","!=","LIKE","LIKE %%","IN","IS NULL","NOT LIKE","NOT REGEXP","NOT IN","IS NOT NULL","SQL");$Ec=array("length","lower","round","upper");$Ic=array("avg","count","count distinct","max","min","sum");$Mb=array(array("date"=>"current_date","timestamp"=>"current_timestamp",),array("number|float|double"=>"+/-","date|timestamp"=>"+ interval/- interval","char|clob"=>"||",));}$Hb["mssql"]="MS SQL (beta)";if(isset($_GET["mssql"])){$Je=array("SQLSRV","MSSQL","PDO_DBLIB");define("DRIVER","mssql");if(extension_loaded("sqlsrv")){class
  714. Min_DB{var$extension="sqlsrv",$_link,$_result,$server_info,$affected_rows,$errno,$error;function
  715. _get_error(){$this->error="";foreach(sqlsrv_errors()as$o){$this->errno=$o["code"];$this->error.="$o[message]\n";}$this->error=rtrim($this->error);}function
  716. connect($O,$V,$F){global$b;$m=$b->database();$mb=array("UID"=>$V,"PWD"=>$F,"CharacterSet"=>"UTF-8");if($m!="")$mb["Database"]=$m;$this->_link=@sqlsrv_connect(preg_replace('~:~',',',$O),$mb);if($this->_link){$fd=sqlsrv_server_info($this->_link);$this->server_info=$fd['SQLServerVersion'];}else$this->_get_error();return(bool)$this->_link;}function
  717. quote($Q){return"'".str_replace("'","''",$Q)."'";}function
  718. select_db($k){return$this->query("USE ".idf_escape($k));}function
  719. query($G,$Bg=false){$I=sqlsrv_query($this->_link,$G);$this->error="";if(!$I){$this->_get_error();return
  720. false;}return$this->store_result($I);}function
  721. multi_query($G){$this->_result=sqlsrv_query($this->_link,$G);$this->error="";if(!$this->_result){$this->_get_error();return
  722. false;}return
  723. true;}function
  724. store_result($I=null){if(!$I)$I=$this->_result;if(!$I)return
  725. false;if(sqlsrv_field_metadata($I))return
  726. new
  727. Min_Result($I);$this->affected_rows=sqlsrv_rows_affected($I);return
  728. true;}function
  729. next_result(){return$this->_result?sqlsrv_next_result($this->_result):null;}function
  730. result($G,$p=0){$I=$this->query($G);if(!is_object($I))return
  731. false;$K=$I->fetch_row();return$K[$p];}}class
  732. Min_Result{var$_result,$_offset=0,$_fields,$num_rows;function
  733. __construct($I){$this->_result=$I;}function
  734. _convert($K){foreach((array)$K
  735. as$y=>$X){if(is_a($X,'DateTime'))$K[$y]=$X->format("Y-m-d H:i:s");}return$K;}function
  736. fetch_assoc(){return$this->_convert(sqlsrv_fetch_array($this->_result,SQLSRV_FETCH_ASSOC));}function
  737. fetch_row(){return$this->_convert(sqlsrv_fetch_array($this->_result,SQLSRV_FETCH_NUMERIC));}function
  738. fetch_field(){if(!$this->_fields)$this->_fields=sqlsrv_field_metadata($this->_result);$p=$this->_fields[$this->_offset++];$J=new
  739. stdClass;$J->name=$p["Name"];$J->orgname=$p["Name"];$J->type=($p["Type"]==1?254:0);return$J;}function
  740. seek($ie){for($s=0;$s<$ie;$s++)sqlsrv_fetch($this->_result);}function
  741. __destruct(){sqlsrv_free_stmt($this->_result);}}}elseif(extension_loaded("mssql")){class
  742. Min_DB{var$extension="MSSQL",$_link,$_result,$server_info,$affected_rows,$error;function
  743. connect($O,$V,$F){$this->_link=@mssql_connect($O,$V,$F);if($this->_link){$I=$this->query("SELECT SERVERPROPERTY('ProductLevel'), SERVERPROPERTY('Edition')");if($I){$K=$I->fetch_row();$this->server_info=$this->result("sp_server_info 2",2)." [$K[0]] $K[1]";}}else$this->error=mssql_get_last_message();return(bool)$this->_link;}function
  744. quote($Q){return"'".str_replace("'","''",$Q)."'";}function
  745. select_db($k){return
  746. mssql_select_db($k);}function
  747. query($G,$Bg=false){$I=@mssql_query($G,$this->_link);$this->error="";if(!$I){$this->error=mssql_get_last_message();return
  748. false;}if($I===true){$this->affected_rows=mssql_rows_affected($this->_link);return
  749. true;}return
  750. new
  751. Min_Result($I);}function
  752. multi_query($G){return$this->_result=$this->query($G);}function
  753. store_result(){return$this->_result;}function
  754. next_result(){return
  755. mssql_next_result($this->_result->_result);}function
  756. result($G,$p=0){$I=$this->query($G);if(!is_object($I))return
  757. false;return
  758. mssql_result($I->_result,0,$p);}}class
  759. Min_Result{var$_result,$_offset=0,$_fields,$num_rows;function
  760. __construct($I){$this->_result=$I;$this->num_rows=mssql_num_rows($I);}function
  761. fetch_assoc(){return
  762. mssql_fetch_assoc($this->_result);}function
  763. fetch_row(){return
  764. mssql_fetch_row($this->_result);}function
  765. num_rows(){return
  766. mssql_num_rows($this->_result);}function
  767. fetch_field(){$J=mssql_fetch_field($this->_result);$J->orgtable=$J->table;$J->orgname=$J->name;return$J;}function
  768. seek($ie){mssql_data_seek($this->_result,$ie);}function
  769. __destruct(){mssql_free_result($this->_result);}}}elseif(extension_loaded("pdo_dblib")){class
  770. Min_DB
  771. extends
  772. Min_PDO{var$extension="PDO_DBLIB";function
  773. connect($O,$V,$F){$this->dsn("dblib:charset=utf8;host=".str_replace(":",";unix_socket=",preg_replace('~:(\d)~',';port=\1',$O)),$V,$F);return
  774. true;}function
  775. select_db($k){return$this->query("USE ".idf_escape($k));}}}class
  776. Min_Driver
  777. extends
  778. Min_SQL{function
  779. insertUpdate($R,$L,$Le){foreach($L
  780. as$P){$Ig=array();$Z=array();foreach($P
  781. as$y=>$X){$Ig[]="$y = $X";if(isset($Le[idf_unescape($y)]))$Z[]="$y = $X";}if(!queries("MERGE ".table($R)." USING (VALUES(".implode(", ",$P).")) AS source (c".implode(", c",range(1,count($P))).") ON ".implode(" AND ",$Z)." WHEN MATCHED THEN UPDATE SET ".implode(", ",$Ig)." WHEN NOT MATCHED THEN INSERT (".implode(", ",array_keys($P)).") VALUES (".implode(", ",$P).");"))return
  782. false;}return
  783. true;}function
  784. begin(){return
  785. queries("BEGIN TRANSACTION");}}function
  786. idf_escape($u){return"[".str_replace("]","]]",$u)."]";}function
  787. table($u){return($_GET["ns"]!=""?idf_escape($_GET["ns"]).".":"").idf_escape($u);}function
  788. connect(){global$b;$h=new
  789. Min_DB;$j=$b->credentials();if($h->connect($j[0],$j[1],$j[2]))return$h;return$h->error;}function
  790. get_databases(){return
  791. get_vals("SELECT name FROM sys.databases WHERE name NOT IN ('master', 'tempdb', 'model', 'msdb')");}function
  792. limit($G,$Z,$z,$ie=0,$N=" "){return($z!==null?" TOP (".($z+$ie).")":"")." $G$Z";}function
  793. limit1($R,$G,$Z,$N="\n"){return
  794. limit($G,$Z,1,0,$N);}function
  795. db_collation($m,$eb){global$h;return$h->result("SELECT collation_name FROM sys.databases WHERE name = ".q($m));}function
  796. engines(){return
  797. array();}function
  798. logged_user(){global$h;return$h->result("SELECT SUSER_NAME()");}function
  799. tables_list(){return
  800. 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
  801. count_tables($l){global$h;$J=array();foreach($l
  802. as$m){$h->select_db($m);$J[$m]=$h->result("SELECT COUNT(*) FROM INFORMATION_SCHEMA.TABLES");}return$J;}function
  803. table_status($B=""){$J=array();foreach(get_rows("SELECT ao.name AS Name, ao.type_desc AS Engine, (SELECT value FROM fn_listextendedproperty(default, 'SCHEMA', schema_name(schema_id), 'TABLE', ao.name, null, null)) AS Comment FROM sys.all_objects AS ao WHERE schema_id = SCHEMA_ID(".q(get_schema()).") AND type IN ('S', 'U', 'V') ".($B!=""?"AND name = ".q($B):"ORDER BY name"))as$K){if($B!="")return$K;$J[$K["Name"]]=$K;}return$J;}function
  804. is_view($S){return$S["Engine"]=="VIEW";}function
  805. fk_support($S){return
  806. true;}function
  807. fields($R){$jb=get_key_vals("SELECT objname, cast(value as varchar) FROM fn_listextendedproperty('MS_DESCRIPTION', 'schema', ".q(get_schema()).", 'table', ".q($R).", 'column', NULL)");$J=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]
  808. FROM sys.all_columns c
  809. JOIN sys.all_objects o ON c.object_id = o.object_id
  810. JOIN sys.types t ON c.user_type_id = t.user_type_id
  811. LEFT JOIN sys.default_constraints d ON c.default_object_id = d.parent_column_id
  812. WHERE o.schema_id = SCHEMA_ID(".q(get_schema()).") AND o.type IN ('S', 'U', 'V') AND o.name = ".q($R))as$K){$U=$K["type"];$Bd=(preg_match("~char|binary~",$U)?$K["max_length"]:($U=="decimal"?"$K[precision],$K[scale]":""));$J[$K["name"]]=array("field"=>$K["name"],"full_type"=>$U.($Bd?"($Bd)":""),"type"=>$U,"length"=>$Bd,"default"=>$K["default"],"null"=>$K["is_nullable"],"auto_increment"=>$K["is_identity"],"collation"=>$K["collation_name"],"privileges"=>array("insert"=>1,"select"=>1,"update"=>1),"primary"=>$K["is_identity"],"comment"=>$jb[$K["name"]],);}return$J;}function
  813. indexes($R,$i=null){$J=array();foreach(get_rows("SELECT i.name, key_ordinal, is_unique, is_primary_key, c.name AS column_name, is_descending_key
  814. FROM sys.indexes i
  815. INNER JOIN sys.index_columns ic ON i.object_id = ic.object_id AND i.index_id = ic.index_id
  816. INNER JOIN sys.columns c ON ic.object_id = c.object_id AND ic.column_id = c.column_id
  817. WHERE OBJECT_NAME(i.object_id) = ".q($R),$i)as$K){$B=$K["name"];$J[$B]["type"]=($K["is_primary_key"]?"PRIMARY":($K["is_unique"]?"UNIQUE":"INDEX"));$J[$B]["lengths"]=array();$J[$B]["columns"][$K["key_ordinal"]]=$K["column_name"];$J[$B]["descs"][$K["key_ordinal"]]=($K["is_descending_key"]?'1':null);}return$J;}function
  818. view($B){global$h;return
  819. array("select"=>preg_replace('~^(?:[^[]|\[[^]]*])*\s+AS\s+~isU','',$h->result("SELECT VIEW_DEFINITION FROM INFORMATION_SCHEMA.VIEWS WHERE TABLE_SCHEMA = SCHEMA_NAME() AND TABLE_NAME = ".q($B))));}function
  820. collations(){$J=array();foreach(get_vals("SELECT name FROM fn_helpcollations()")as$d)$J[preg_replace('~_.*~','',$d)][]=$d;return$J;}function
  821. information_schema($m){return
  822. false;}function
  823. error(){global$h;return
  824. nl_br(h(preg_replace('~^(\[[^]]*])+~m','',$h->error)));}function
  825. create_database($m,$d){return
  826. queries("CREATE DATABASE ".idf_escape($m).(preg_match('~^[a-z0-9_]+$~i',$d)?" COLLATE $d":""));}function
  827. drop_databases($l){return
  828. queries("DROP DATABASE ".implode(", ",array_map('idf_escape',$l)));}function
  829. rename_database($B,$d){if(preg_match('~^[a-z0-9_]+$~i',$d))queries("ALTER DATABASE ".idf_escape(DB)." COLLATE $d");queries("ALTER DATABASE ".idf_escape(DB)." MODIFY NAME = ".idf_escape($B));return
  830. true;}function
  831. auto_increment(){return" IDENTITY".($_POST["Auto_increment"]!=""?"(".number($_POST["Auto_increment"]).",1)":"")." PRIMARY KEY";}function
  832. alter_table($R,$B,$q,$vc,$ib,$Tb,$d,$Fa,$Be){$c=array();$jb=array();foreach($q
  833. as$p){$e=idf_escape($p[0]);$X=$p[1];if(!$X)$c["DROP"][]=" COLUMN $e";else{$X[1]=preg_replace("~( COLLATE )'(\\w+)'~",'\1\2',$X[1]);$jb[$p[0]]=$X[5];unset($X[5]);if($p[0]=="")$c["ADD"][]="\n ".implode("",$X).($R==""?substr($vc[$X[0]],16+strlen($X[0])):"");else{unset($X[6]);if($e!=$X[0])queries("EXEC sp_rename ".q(table($R).".$e").", ".q(idf_unescape($X[0])).", 'COLUMN'");$c["ALTER COLUMN ".implode("",$X)][]="";}}}if($R=="")return
  834. queries("CREATE TABLE ".table($B)." (".implode(",",(array)$c["ADD"])."\n)");if($R!=$B)queries("EXEC sp_rename ".q(table($R)).", ".q($B));if($vc)$c[""]=$vc;foreach($c
  835. as$y=>$X){if(!queries("ALTER TABLE ".idf_escape($B)." $y".implode(",",$X)))return
  836. false;}foreach($jb
  837. as$y=>$X){$ib=substr($X,9);queries("EXEC sp_dropextendedproperty @name = N'MS_Description', @level0type = N'Schema', @level0name = ".q(get_schema()).", @level1type = N'Table', @level1name = ".q($B).", @level2type = N'Column', @level2name = ".q($y));queries("EXEC sp_addextendedproperty @name = N'MS_Description', @value = ".$ib.", @level0type = N'Schema', @level0name = ".q(get_schema()).", @level1type = N'Table', @level1name = ".q($B).", @level2type = N'Column', @level2name = ".q($y));}return
  838. true;}function
  839. alter_indexes($R,$c){$v=array();$Ib=array();foreach($c
  840. as$X){if($X[2]=="DROP"){if($X[0]=="PRIMARY")$Ib[]=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
  841. false;}return(!$v||queries("DROP INDEX ".implode(", ",$v)))&&(!$Ib||queries("ALTER TABLE ".table($R)." DROP ".implode(", ",$Ib)));}function
  842. last_id(){global$h;return$h->result("SELECT SCOPE_IDENTITY()");}function
  843. explain($h,$G){$h->query("SET SHOWPLAN_ALL ON");$J=$h->query($G);$h->query("SET SHOWPLAN_ALL OFF");return$J;}function
  844. found_rows($S,$Z){}function
  845. foreign_keys($R){$J=array();foreach(get_rows("EXEC sp_fkeys @fktable_name = ".q($R))as$K){$yc=&$J[$K["FK_NAME"]];$yc["table"]=$K["PKTABLE_NAME"];$yc["source"][]=$K["FKCOLUMN_NAME"];$yc["target"][]=$K["PKCOLUMN_NAME"];}return$J;}function
  846. truncate_tables($T){return
  847. apply_queries("TRUNCATE TABLE",$T);}function
  848. drop_views($Tg){return
  849. queries("DROP VIEW ".implode(", ",array_map('table',$Tg)));}function
  850. drop_tables($T){return
  851. queries("DROP TABLE ".implode(", ",array_map('table',$T)));}function
  852. move_tables($T,$Tg,$bg){return
  853. apply_queries("ALTER SCHEMA ".idf_escape($bg)." TRANSFER",array_merge($T,$Tg));}function
  854. trigger($B){if($B=="")return
  855. array();$L=get_rows("SELECT s.name [Trigger],
  856. 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],
  857. CASE WHEN OBJECTPROPERTY(s.id, 'ExecIsInsteadOfTrigger') = 1 THEN 'INSTEAD OF' ELSE 'AFTER' END [Timing],
  858. c.text
  859. FROM sysobjects s
  860. JOIN syscomments c ON s.id = c.id
  861. WHERE s.xtype = 'TR' AND s.name = ".q($B));$J=reset($L);if($J)$J["Statement"]=preg_replace('~^.+\s+AS\s+~isU','',$J["text"]);return$J;}function
  862. triggers($R){$J=array();foreach(get_rows("SELECT sys1.name,
  863. 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],
  864. CASE WHEN OBJECTPROPERTY(sys1.id, 'ExecIsInsteadOfTrigger') = 1 THEN 'INSTEAD OF' ELSE 'AFTER' END [Timing]
  865. FROM sysobjects sys1
  866. JOIN sysobjects sys2 ON sys1.parent_obj = sys2.id
  867. WHERE sys1.xtype = 'TR' AND sys2.name = ".q($R))as$K)$J[$K["name"]]=array($K["Timing"],$K["Event"]);return$J;}function
  868. trigger_options(){return
  869. array("Timing"=>array("AFTER","INSTEAD OF"),"Event"=>array("INSERT","UPDATE","DELETE"),"Type"=>array("AS"),);}function
  870. schemas(){return
  871. get_vals("SELECT name FROM sys.schemas");}function
  872. get_schema(){global$h;if($_GET["ns"]!="")return$_GET["ns"];return$h->result("SELECT SCHEMA_NAME()");}function
  873. set_schema($of){return
  874. true;}function
  875. use_sql($k){return"USE ".idf_escape($k);}function
  876. show_variables(){return
  877. array();}function
  878. show_status(){return
  879. array();}function
  880. convert_field($p){}function
  881. unconvert_field($p,$J){return$J;}function
  882. support($jc){return
  883. preg_match('~^(comment|columns|database|drop_col|indexes|descidx|scheme|sql|table|trigger|view|view_trigger)$~',$jc);}$x="mssql";$Ag=array();$Rf=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){$Ag+=$X;$Rf[$y]=array_keys($X);}$Hg=array();$pe=array("=","<",">","<=",">=","!=","LIKE","LIKE %%","IN","IS NULL","NOT LIKE","NOT IN","IS NOT NULL");$Ec=array("len","lower","round","upper");$Ic=array("avg","count","count distinct","max","min","sum");$Mb=array(array("date|time"=>"getdate",),array("int|decimal|real|float|money|datetime"=>"+/-","char|text"=>"+",));}$Hb['firebird']='Firebird (alpha)';if(isset($_GET["firebird"])){$Je=array("interbase");define("DRIVER","firebird");if(extension_loaded("interbase")){class
  884. Min_DB{var$extension="Firebird",$server_info,$affected_rows,$errno,$error,$_link,$_result;function
  885. connect($O,$V,$F){$this->_link=ibase_connect($O,$V,$F);if($this->_link){$Lg=explode(':',$O);$this->service_link=ibase_service_attach($Lg[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
  886. quote($Q){return"'".str_replace("'","''",$Q)."'";}function
  887. select_db($k){return($k=="domain");}function
  888. query($G,$Bg=false){$I=ibase_query($G,$this->_link);if(!$I){$this->errno=ibase_errcode();$this->error=ibase_errmsg();return
  889. false;}$this->error="";if($I===true){$this->affected_rows=ibase_affected_rows($this->_link);return
  890. true;}return
  891. new
  892. Min_Result($I);}function
  893. multi_query($G){return$this->_result=$this->query($G);}function
  894. store_result(){return$this->_result;}function
  895. next_result(){return
  896. false;}function
  897. result($G,$p=0){$I=$this->query($G);if(!$I||!$I->num_rows)return
  898. false;$K=$I->fetch_row();return$K[$p];}}class
  899. Min_Result{var$num_rows,$_result,$_offset=0;function
  900. __construct($I){$this->_result=$I;}function
  901. fetch_assoc(){return
  902. ibase_fetch_assoc($this->_result);}function
  903. fetch_row(){return
  904. ibase_fetch_row($this->_result);}function
  905. fetch_field(){$p=ibase_field_info($this->_result,$this->_offset++);return(object)array('name'=>$p['name'],'orgname'=>$p['name'],'type'=>$p['type'],'charsetnr'=>$p['length'],);}function
  906. __destruct(){ibase_free_result($this->_result);}}}class
  907. Min_Driver
  908. extends
  909. Min_SQL{}function
  910. idf_escape($u){return'"'.str_replace('"','""',$u).'"';}function
  911. table($u){return
  912. idf_escape($u);}function
  913. connect(){global$b;$h=new
  914. Min_DB;$j=$b->credentials();if($h->connect($j[0],$j[1],$j[2]))return$h;return$h->error;}function
  915. get_databases($tc){return
  916. array("domain");}function
  917. limit($G,$Z,$z,$ie=0,$N=" "){$J='';$J.=($z!==null?$N."FIRST $z".($ie?" SKIP $ie":""):"");$J.=" $G$Z";return$J;}function
  918. limit1($R,$G,$Z,$N="\n"){return
  919. limit($G,$Z,1,0,$N);}function
  920. db_collation($m,$eb){}function
  921. engines(){return
  922. array();}function
  923. logged_user(){global$b;$j=$b->credentials();return$j[1];}function
  924. tables_list(){global$h;$G='SELECT RDB$RELATION_NAME FROM rdb$relations WHERE rdb$system_flag = 0';$I=ibase_query($h->_link,$G);$J=array();while($K=ibase_fetch_assoc($I))$J[$K['RDB$RELATION_NAME']]='table';ksort($J);return$J;}function
  925. count_tables($l){return
  926. array();}function
  927. table_status($B="",$ic=false){global$h;$J=array();$vb=tables_list();foreach($vb
  928. as$v=>$X){$v=trim($v);$J[$v]=array('Name'=>$v,'Engine'=>'standard',);if($B==$v)return$J[$v];}return$J;}function
  929. is_view($S){return
  930. false;}function
  931. fk_support($S){return
  932. preg_match('~InnoDB|IBMDB2I~i',$S["Engine"]);}function
  933. fields($R){global$h;$J=array();$G='SELECT r.RDB$FIELD_NAME AS field_name,
  934. r.RDB$DESCRIPTION AS field_description,
  935. r.RDB$DEFAULT_VALUE AS field_default_value,
  936. r.RDB$NULL_FLAG AS field_not_null_constraint,
  937. f.RDB$FIELD_LENGTH AS field_length,
  938. f.RDB$FIELD_PRECISION AS field_precision,
  939. f.RDB$FIELD_SCALE AS field_scale,
  940. CASE f.RDB$FIELD_TYPE
  941. WHEN 261 THEN \'BLOB\'
  942. WHEN 14 THEN \'CHAR\'
  943. WHEN 40 THEN \'CSTRING\'
  944. WHEN 11 THEN \'D_FLOAT\'
  945. WHEN 27 THEN \'DOUBLE\'
  946. WHEN 10 THEN \'FLOAT\'
  947. WHEN 16 THEN \'INT64\'
  948. WHEN 8 THEN \'INTEGER\'
  949. WHEN 9 THEN \'QUAD\'
  950. WHEN 7 THEN \'SMALLINT\'
  951. WHEN 12 THEN \'DATE\'
  952. WHEN 13 THEN \'TIME\'
  953. WHEN 35 THEN \'TIMESTAMP\'
  954. WHEN 37 THEN \'VARCHAR\'
  955. ELSE \'UNKNOWN\'
  956. END AS field_type,
  957. f.RDB$FIELD_SUB_TYPE AS field_subtype,
  958. coll.RDB$COLLATION_NAME AS field_collation,
  959. cset.RDB$CHARACTER_SET_NAME AS field_charset
  960. FROM RDB$RELATION_FIELDS r
  961. LEFT JOIN RDB$FIELDS f ON r.RDB$FIELD_SOURCE = f.RDB$FIELD_NAME
  962. LEFT JOIN RDB$COLLATIONS coll ON f.RDB$COLLATION_ID = coll.RDB$COLLATION_ID
  963. LEFT JOIN RDB$CHARACTER_SETS cset ON f.RDB$CHARACTER_SET_ID = cset.RDB$CHARACTER_SET_ID
  964. WHERE r.RDB$RELATION_NAME = '.q($R).'
  965. ORDER BY r.RDB$FIELD_POSITION';$I=ibase_query($h->_link,$G);while($K=ibase_fetch_assoc($I))$J[trim($K['FIELD_NAME'])]=array("field"=>trim($K["FIELD_NAME"]),"full_type"=>trim($K["FIELD_TYPE"]),"type"=>trim($K["FIELD_SUB_TYPE"]),"default"=>trim($K['FIELD_DEFAULT_VALUE']),"null"=>(trim($K["FIELD_NOT_NULL_CONSTRAINT"])=="YES"),"auto_increment"=>'0',"collation"=>trim($K["FIELD_COLLATION"]),"privileges"=>array("insert"=>1,"select"=>1,"update"=>1),"comment"=>trim($K["FIELD_DESCRIPTION"]),);return$J;}function
  966. indexes($R,$i=null){$J=array();return$J;}function
  967. foreign_keys($R){return
  968. array();}function
  969. collations(){return
  970. array();}function
  971. information_schema($m){return
  972. false;}function
  973. error(){global$h;return
  974. h($h->error);}function
  975. types(){return
  976. array();}function
  977. schemas(){return
  978. array();}function
  979. get_schema(){return"";}function
  980. set_schema($of){return
  981. true;}function
  982. support($jc){return
  983. preg_match("~^(columns|sql|status|table)$~",$jc);}$x="firebird";$pe=array("=");$Ec=array();$Ic=array();$Mb=array();}$Hb["simpledb"]="SimpleDB";if(isset($_GET["simpledb"])){$Je=array("SimpleXML + allow_url_fopen");define("DRIVER","simpledb");if(class_exists('SimpleXMLElement')&&ini_bool('allow_url_fopen')){class
  984. Min_DB{var$extension="SimpleXML",$server_info='2009-04-15',$error,$timeout,$next,$affected_rows,$_result;function
  985. select_db($k){return($k=="domain");}function
  986. query($G,$Bg=false){$E=array('SelectExpression'=>$G,'ConsistentRead'=>'true');if($this->next)$E['NextToken']=$this->next;$I=sdb_request_all('Select','Item',$E,$this->timeout);$this->timeout=0;if($I===false)return$I;if(preg_match('~^\s*SELECT\s+COUNT\(~i',$G)){$Vf=0;foreach($I
  987. as$od)$Vf+=$od->Attribute->Value;$I=array((object)array('Attribute'=>array((object)array('Name'=>'Count','Value'=>$Vf,))));}return
  988. new
  989. Min_Result($I);}function
  990. multi_query($G){return$this->_result=$this->query($G);}function
  991. store_result(){return$this->_result;}function
  992. next_result(){return
  993. false;}function
  994. quote($Q){return"'".str_replace("'","''",$Q)."'";}}class
  995. Min_Result{var$num_rows,$_rows=array(),$_offset=0;function
  996. __construct($I){foreach($I
  997. as$od){$K=array();if($od->Name!='')$K['itemName()']=(string)$od->Name;foreach($od->Attribute
  998. as$Ca){$B=$this->_processValue($Ca->Name);$Y=$this->_processValue($Ca->Value);if(isset($K[$B])){$K[$B]=(array)$K[$B];$K[$B][]=$Y;}else$K[$B]=$Y;}$this->_rows[]=$K;foreach($K
  999. as$y=>$X){if(!isset($this->_rows[0][$y]))$this->_rows[0][$y]=null;}}$this->num_rows=count($this->_rows);}function
  1000. _processValue($Ob){return(is_object($Ob)&&$Ob['encoding']=='base64'?base64_decode($Ob):(string)$Ob);}function
  1001. fetch_assoc(){$K=current($this->_rows);if(!$K)return$K;$J=array();foreach($this->_rows[0]as$y=>$X)$J[$y]=$K[$y];next($this->_rows);return$J;}function
  1002. fetch_row(){$J=$this->fetch_assoc();if(!$J)return$J;return
  1003. array_values($J);}function
  1004. fetch_field(){$td=array_keys($this->_rows[0]);return(object)array('name'=>$td[$this->_offset++]);}}}class
  1005. Min_Driver
  1006. extends
  1007. Min_SQL{public$Le="itemName()";function
  1008. _chunkRequest($Wc,$ra,$E,$bc=array()){global$h;foreach(array_chunk($Wc,25)as$Ya){$_e=$E;foreach($Ya
  1009. as$s=>$t){$_e["Item.$s.ItemName"]=$t;foreach($bc
  1010. as$y=>$X)$_e["Item.$s.$y"]=$X;}if(!sdb_request($ra,$_e))return
  1011. false;}$h->affected_rows=count($Wc);return
  1012. true;}function
  1013. _extractIds($R,$H,$z){$J=array();if(preg_match_all("~itemName\(\) = (('[^']*+')+)~",$H,$Md))$J=array_map('idf_unescape',$Md[1]);else{foreach(sdb_request_all('Select','Item',array('SelectExpression'=>'SELECT itemName() FROM '.table($R).$H.($z?" LIMIT 1":"")))as$od)$J[]=$od->Name;}return$J;}function
  1014. select($R,$M,$Z,$Fc,$se=array(),$z=1,$D=0,$Ne=false){global$h;$h->next=$_GET["next"];$J=parent::select($R,$M,$Z,$Fc,$se,$z,$D,$Ne);$h->next=0;return$J;}function
  1015. delete($R,$H,$z=0){return$this->_chunkRequest($this->_extractIds($R,$H,$z),'BatchDeleteAttributes',array('DomainName'=>$R));}function
  1016. update($R,$P,$H,$z=0,$N="\n"){$_b=array();$jd=array();$s=0;$Wc=$this->_extractIds($R,$H,$z);$t=idf_unescape($P["`itemName()`"]);unset($P["`itemName()`"]);foreach($P
  1017. as$y=>$X){$y=idf_unescape($y);if($X=="NULL"||($t!=""&&array($t)!=$Wc))$_b["Attribute.".count($_b).".Name"]=$y;if($X!="NULL"){foreach((array)$X
  1018. as$pd=>$W){$jd["Attribute.$s.Name"]=$y;$jd["Attribute.$s.Value"]=(is_array($X)?$W:idf_unescape($W));if(!$pd)$jd["Attribute.$s.Replace"]="true";$s++;}}}$E=array('DomainName'=>$R);return(!$jd||$this->_chunkRequest(($t!=""?array($t):$Wc),'BatchPutAttributes',$E,$jd))&&(!$_b||$this->_chunkRequest($Wc,'BatchDeleteAttributes',$E,$_b));}function
  1019. insert($R,$P){$E=array("DomainName"=>$R);$s=0;foreach($P
  1020. as$B=>$Y){if($Y!="NULL"){$B=idf_unescape($B);if($B=="itemName()")$E["ItemName"]=idf_unescape($Y);else{foreach((array)$Y
  1021. as$X){$E["Attribute.$s.Name"]=$B;$E["Attribute.$s.Value"]=(is_array($Y)?$X:idf_unescape($Y));$s++;}}}}return
  1022. sdb_request('PutAttributes',$E);}function
  1023. insertUpdate($R,$L,$Le){foreach($L
  1024. as$P){if(!$this->update($R,$P,"WHERE `itemName()` = ".q($P["`itemName()`"])))return
  1025. false;}return
  1026. true;}function
  1027. begin(){return
  1028. false;}function
  1029. commit(){return
  1030. false;}function
  1031. rollback(){return
  1032. false;}function
  1033. slowQuery($G,$hg){$this->_conn->timeout=$hg;return$G;}}function
  1034. connect(){global$b;list(,,$F)=$b->credentials();if($F!="")return
  1035. lang(22);return
  1036. new
  1037. Min_DB;}function
  1038. support($jc){return
  1039. preg_match('~sql~',$jc);}function
  1040. logged_user(){global$b;$j=$b->credentials();return$j[1];}function
  1041. get_databases(){return
  1042. array("domain");}function
  1043. collations(){return
  1044. array();}function
  1045. db_collation($m,$eb){}function
  1046. tables_list(){global$h;$J=array();foreach(sdb_request_all('ListDomains','DomainName')as$R)$J[(string)$R]='table';if($h->error&&defined("PAGE_HEADER"))echo"<p class='error'>".error()."\n";return$J;}function
  1047. table_status($B="",$ic=false){$J=array();foreach(($B!=""?array($B=>true):tables_list())as$R=>$U){$K=array("Name"=>$R,"Auto_increment"=>"");if(!$ic){$Ud=sdb_request('DomainMetadata',array('DomainName'=>$R));if($Ud){foreach(array("Rows"=>"ItemCount","Data_length"=>"ItemNamesSizeBytes","Index_length"=>"AttributeValuesSizeBytes","Data_free"=>"AttributeNamesSizeBytes",)as$y=>$X)$K[$y]=(string)$Ud->$X;}}if($B!="")return$K;$J[$R]=$K;}return$J;}function
  1048. explain($h,$G){}function
  1049. error(){global$h;return
  1050. h($h->error);}function
  1051. information_schema(){}function
  1052. is_view($S){}function
  1053. indexes($R,$i=null){return
  1054. array(array("type"=>"PRIMARY","columns"=>array("itemName()")),);}function
  1055. fields($R){return
  1056. fields_from_edit();}function
  1057. foreign_keys($R){return
  1058. array();}function
  1059. table($u){return
  1060. idf_escape($u);}function
  1061. idf_escape($u){return"`".str_replace("`","``",$u)."`";}function
  1062. limit($G,$Z,$z,$ie=0,$N=" "){return" $G$Z".($z!==null?$N."LIMIT $z":"");}function
  1063. unconvert_field($p,$J){return$J;}function
  1064. fk_support($S){}function
  1065. engines(){return
  1066. array();}function
  1067. alter_table($R,$B,$q,$vc,$ib,$Tb,$d,$Fa,$Be){return($R==""&&sdb_request('CreateDomain',array('DomainName'=>$B)));}function
  1068. drop_tables($T){foreach($T
  1069. as$R){if(!sdb_request('DeleteDomain',array('DomainName'=>$R)))return
  1070. false;}return
  1071. true;}function
  1072. count_tables($l){foreach($l
  1073. as$m)return
  1074. array($m=>count(tables_list()));}function
  1075. found_rows($S,$Z){return($Z?null:$S["Rows"]);}function
  1076. last_id(){}function
  1077. hmac($wa,$vb,$y,$Xe=false){$Oa=64;if(strlen($y)>$Oa)$y=pack("H*",$wa($y));$y=str_pad($y,$Oa,"\0");$qd=$y^str_repeat("\x36",$Oa);$rd=$y^str_repeat("\x5C",$Oa);$J=$wa($rd.pack("H*",$wa($qd.$vb)));if($Xe)$J=pack("H*",$J);return$J;}function
  1078. sdb_request($ra,$E=array()){global$b,$h;list($Sc,$E['AWSAccessKeyId'],$rf)=$b->credentials();$E['Action']=$ra;$E['Timestamp']=gmdate('Y-m-d\TH:i:s+00:00');$E['Version']='2009-04-15';$E['SignatureVersion']=2;$E['SignatureMethod']='HmacSHA1';ksort($E);$G='';foreach($E
  1079. 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?://~','',$Sc)."\n/\n$G",$rf,true)));@ini_set('track_errors',1);$mc=@file_get_contents((preg_match('~^https?://~',$Sc)?$Sc:"http://$Sc"),false,stream_context_create(array('http'=>array('method'=>'POST','content'=>$G,'ignore_errors'=>1,))));if(!$mc){$h->error=$php_errormsg;return
  1080. false;}libxml_use_internal_errors(true);$eh=simplexml_load_string($mc);if(!$eh){$o=libxml_get_last_error();$h->error=$o->message;return
  1081. false;}if($eh->Errors){$o=$eh->Errors->Error;$h->error="$o->Message ($o->Code)";return
  1082. false;}$h->error='';$ag=$ra."Result";return($eh->$ag?$eh->$ag:true);}function
  1083. sdb_request_all($ra,$ag,$E=array(),$hg=0){$J=array();$Nf=($hg?microtime(true):0);$z=(preg_match('~LIMIT\s+(\d+)\s*$~i',$E['SelectExpression'],$A)?$A[1]:0);do{$eh=sdb_request($ra,$E);if(!$eh)break;foreach($eh->$ag
  1084. as$Ob)$J[]=$Ob;if($z&&count($J)>=$z){$_GET["next"]=$eh->NextToken;break;}if($hg&&microtime(true)-$Nf>$hg)return
  1085. false;$E['NextToken']=$eh->NextToken;if($z)$E['SelectExpression']=preg_replace('~\d+\s*$~',$z-count($J),$E['SelectExpression']);}while($eh->NextToken);return$J;}$x="simpledb";$pe=array("=","<",">","<=",">=","!=","LIKE","LIKE %%","IN","IS NULL","NOT LIKE","IS NOT NULL");$Ec=array();$Ic=array("count");$Mb=array(array("json"));}$Hb["mongo"]="MongoDB";if(isset($_GET["mongo"])){$Je=array("mongo","mongodb");define("DRIVER","mongo");if(class_exists('MongoDB')){class
  1086. Min_DB{var$extension="Mongo",$server_info=MongoClient::VERSION,$error,$last_id,$_link,$_db;function
  1087. connect($Jg,$C){return@new
  1088. MongoClient($Jg,$C);}function
  1089. query($G){return
  1090. false;}function
  1091. select_db($k){try{$this->_db=$this->_link->selectDB($k);return
  1092. true;}catch(Exception$Yb){$this->error=$Yb->getMessage();return
  1093. false;}}function
  1094. quote($Q){return$Q;}}class
  1095. Min_Result{var$num_rows,$_rows=array(),$_offset=0,$_charset=array();function
  1096. __construct($I){foreach($I
  1097. as$od){$K=array();foreach($od
  1098. as$y=>$X){if(is_a($X,'MongoBinData'))$this->_charset[$y]=63;$K[$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[]=$K;foreach($K
  1099. as$y=>$X){if(!isset($this->_rows[0][$y]))$this->_rows[0][$y]=null;}}$this->num_rows=count($this->_rows);}function
  1100. fetch_assoc(){$K=current($this->_rows);if(!$K)return$K;$J=array();foreach($this->_rows[0]as$y=>$X)$J[$y]=$K[$y];next($this->_rows);return$J;}function
  1101. fetch_row(){$J=$this->fetch_assoc();if(!$J)return$J;return
  1102. array_values($J);}function
  1103. fetch_field(){$td=array_keys($this->_rows[0]);$B=$td[$this->_offset++];return(object)array('name'=>$B,'charsetnr'=>$this->_charset[$B],);}}class
  1104. Min_Driver
  1105. extends
  1106. Min_SQL{public$Le="_id";function
  1107. select($R,$M,$Z,$Fc,$se=array(),$z=1,$D=0,$Ne=false){$M=($M==array("*")?array():array_fill_keys($M,true));$Gf=array();foreach($se
  1108. as$X){$X=preg_replace('~ DESC$~','',$X,1,$qb);$Gf[$X]=($qb?-1:1);}return
  1109. new
  1110. Min_Result($this->_conn->_db->selectCollection($R)->find(array(),$M)->sort($Gf)->limit($z!=""?+$z:0)->skip($D*$z));}function
  1111. insert($R,$P){try{$J=$this->_conn->_db->selectCollection($R)->insert($P);$this->_conn->errno=$J['code'];$this->_conn->error=$J['err'];$this->_conn->last_id=$P['_id'];return!$J['err'];}catch(Exception$Yb){$this->_conn->error=$Yb->getMessage();return
  1112. false;}}}function
  1113. get_databases($tc){global$h;$J=array();$xb=$h->_link->listDBs();foreach($xb['databases']as$m)$J[]=$m['name'];return$J;}function
  1114. count_tables($l){global$h;$J=array();foreach($l
  1115. as$m)$J[$m]=count($h->_link->selectDB($m)->getCollectionNames(true));return$J;}function
  1116. tables_list(){global$h;return
  1117. array_fill_keys($h->_db->getCollectionNames(true),'table');}function
  1118. drop_databases($l){global$h;foreach($l
  1119. as$m){$gf=$h->_link->selectDB($m)->drop();if(!$gf['ok'])return
  1120. false;}return
  1121. true;}function
  1122. indexes($R,$i=null){global$h;$J=array();foreach($h->_db->selectCollection($R)->getIndexInfo()as$v){$Cb=array();foreach($v["key"]as$e=>$U)$Cb[]=($U==-1?'1':null);$J[$v["name"]]=array("type"=>($v["name"]=="_id_"?"PRIMARY":($v["unique"]?"UNIQUE":"INDEX")),"columns"=>array_keys($v["key"]),"lengths"=>array(),"descs"=>$Cb,);}return$J;}function
  1123. fields($R){return
  1124. fields_from_edit();}function
  1125. found_rows($S,$Z){global$h;return$h->_db->selectCollection($_GET["select"])->count($Z);}$pe=array("=");}elseif(class_exists('MongoDB\Driver\Manager')){class
  1126. Min_DB{var$extension="MongoDB",$server_info=MONGODB_VERSION,$error,$last_id;var$_link;var$_db,$_db_name;function
  1127. connect($Jg,$C){$ab='MongoDB\Driver\Manager';return
  1128. new$ab($Jg,$C);}function
  1129. query($G){return
  1130. false;}function
  1131. select_db($k){$this->_db_name=$k;return
  1132. true;}function
  1133. quote($Q){return$Q;}}class
  1134. Min_Result{var$num_rows,$_rows=array(),$_offset=0,$_charset=array();function
  1135. __construct($I){foreach($I
  1136. as$od){$K=array();foreach($od
  1137. as$y=>$X){if(is_a($X,'MongoDB\BSON\Binary'))$this->_charset[$y]=63;$K[$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[]=$K;foreach($K
  1138. as$y=>$X){if(!isset($this->_rows[0][$y]))$this->_rows[0][$y]=null;}}$this->num_rows=$I->count;}function
  1139. fetch_assoc(){$K=current($this->_rows);if(!$K)return$K;$J=array();foreach($this->_rows[0]as$y=>$X)$J[$y]=$K[$y];next($this->_rows);return$J;}function
  1140. fetch_row(){$J=$this->fetch_assoc();if(!$J)return$J;return
  1141. array_values($J);}function
  1142. fetch_field(){$td=array_keys($this->_rows[0]);$B=$td[$this->_offset++];return(object)array('name'=>$B,'charsetnr'=>$this->_charset[$B],);}}class
  1143. Min_Driver
  1144. extends
  1145. Min_SQL{public$Le="_id";function
  1146. select($R,$M,$Z,$Fc,$se=array(),$z=1,$D=0,$Ne=false){global$h;$M=($M==array("*")?array():array_fill_keys($M,1));if(count($M)&&!isset($M['_id']))$M['_id']=0;$Z=where_to_query($Z);$Gf=array();foreach($se
  1147. as$X){$X=preg_replace('~ DESC$~','',$X,1,$qb);$Gf[$X]=($qb?-1:1);}if(isset($_GET['limit'])&&is_numeric($_GET['limit'])&&$_GET['limit']>0)$z=$_GET['limit'];$z=min(200,max(1,(int)$z));$Df=$D*$z;$ab='MongoDB\Driver\Query';$G=new$ab($Z,array('projection'=>$M,'limit'=>$z,'skip'=>$Df,'sort'=>$Gf));$jf=$h->_link->executeQuery("$h->_db_name.$R",$G);return
  1148. new
  1149. Min_Result($jf);}function
  1150. update($R,$P,$H,$z=0,$N="\n"){global$h;$m=$h->_db_name;$Z=sql_query_where_parser($H);$ab='MongoDB\Driver\BulkWrite';$Sa=new$ab(array());if(isset($P['_id']))unset($P['_id']);$cf=array();foreach($P
  1151. as$y=>$Y){if($Y=='NULL'){$cf[$y]=1;unset($P[$y]);}}$Ig=array('$set'=>$P);if(count($cf))$Ig['$unset']=$cf;$Sa->update($Z,$Ig,array('upsert'=>false));$jf=$h->_link->executeBulkWrite("$m.$R",$Sa);$h->affected_rows=$jf->getModifiedCount();return
  1152. true;}function
  1153. delete($R,$H,$z=0){global$h;$m=$h->_db_name;$Z=sql_query_where_parser($H);$ab='MongoDB\Driver\BulkWrite';$Sa=new$ab(array());$Sa->delete($Z,array('limit'=>$z));$jf=$h->_link->executeBulkWrite("$m.$R",$Sa);$h->affected_rows=$jf->getDeletedCount();return
  1154. true;}function
  1155. insert($R,$P){global$h;$m=$h->_db_name;$ab='MongoDB\Driver\BulkWrite';$Sa=new$ab(array());if(isset($P['_id'])&&empty($P['_id']))unset($P['_id']);$Sa->insert($P);$jf=$h->_link->executeBulkWrite("$m.$R",$Sa);$h->affected_rows=$jf->getInsertedCount();return
  1156. true;}}function
  1157. get_databases($tc){global$h;$J=array();$ab='MongoDB\Driver\Command';$hb=new$ab(array('listDatabases'=>1));$jf=$h->_link->executeCommand('admin',$hb);foreach($jf
  1158. as$xb){foreach($xb->databases
  1159. as$m)$J[]=$m->name;}return$J;}function
  1160. count_tables($l){$J=array();return$J;}function
  1161. tables_list(){global$h;$ab='MongoDB\Driver\Command';$hb=new$ab(array('listCollections'=>1));$jf=$h->_link->executeCommand($h->_db_name,$hb);$fb=array();foreach($jf
  1162. as$I)$fb[$I->name]='table';return$fb;}function
  1163. drop_databases($l){return
  1164. false;}function
  1165. indexes($R,$i=null){global$h;$J=array();$ab='MongoDB\Driver\Command';$hb=new$ab(array('listIndexes'=>$R));$jf=$h->_link->executeCommand($h->_db_name,$hb);foreach($jf
  1166. as$v){$Cb=array();$f=array();foreach(get_object_vars($v->key)as$e=>$U){$Cb[]=($U==-1?'1':null);$f[]=$e;}$J[$v->name]=array("type"=>($v->name=="_id_"?"PRIMARY":(isset($v->unique)?"UNIQUE":"INDEX")),"columns"=>$f,"lengths"=>array(),"descs"=>$Cb,);}return$J;}function
  1167. fields($R){$q=fields_from_edit();if(!count($q)){global$n;$I=$n->select($R,array("*"),null,null,array(),10);while($K=$I->fetch_assoc()){foreach($K
  1168. as$y=>$X){$K[$y]=null;$q[$y]=array("field"=>$y,"type"=>"string","null"=>($y!=$n->primary),"auto_increment"=>($y==$n->primary),"privileges"=>array("insert"=>1,"select"=>1,"update"=>1,),);}}}return$q;}function
  1169. found_rows($S,$Z){global$h;$Z=where_to_query($Z);$ab='MongoDB\Driver\Command';$hb=new$ab(array('count'=>$S['Name'],'query'=>$Z));$jf=$h->_link->executeCommand($h->_db_name,$hb);$og=$jf->toArray();return$og[0]->n;}function
  1170. sql_query_where_parser($H){$H=trim(preg_replace('/WHERE[\s]?[(]?\(?/','',$H));$H=preg_replace('/\)\)\)$/',')',$H);$bh=explode(' AND ',$H);$ch=explode(') OR (',$H);$Z=array();foreach($bh
  1171. as$Zg)$Z[]=trim($Zg);if(count($ch)==1)$ch=array();elseif(count($ch)>1)$Z=array();return
  1172. where_to_query($Z,$ch);}function
  1173. where_to_query($Xg=array(),$Yg=array()){global$b;$vb=array();foreach(array('and'=>$Xg,'or'=>$Yg)as$U=>$Z){if(is_array($Z)){foreach($Z
  1174. as$cc){list($db,$ne,$X)=explode(" ",$cc,3);if($db=="_id"){$X=str_replace('MongoDB\BSON\ObjectID("',"",$X);$X=str_replace('")',"",$X);$ab='MongoDB\BSON\ObjectID';$X=new$ab($X);}if(!in_array($ne,$b->operators))continue;if(preg_match('~^\(f\)(.+)~',$ne,$A)){$X=(float)$X;$ne=$A[1];}elseif(preg_match('~^\(date\)(.+)~',$ne,$A)){$wb=new
  1175. DateTime($X);$ab='MongoDB\BSON\UTCDatetime';$X=new$ab($wb->getTimestamp()*1000);$ne=$A[1];}switch($ne){case'=':$ne='$eq';break;case'!=':$ne='$ne';break;case'>':$ne='$gt';break;case'<':$ne='$lt';break;case'>=':$ne='$gte';break;case'<=':$ne='$lte';break;case'regex':$ne='$regex';break;default:continue
  1176. 2;}if($U=='and')$vb['$and'][]=array($db=>array($ne=>$X));elseif($U=='or')$vb['$or'][]=array($db=>array($ne=>$X));}}}return$vb;}$pe=array("=","!=",">","<",">=","<=","regex","(f)=","(f)!=","(f)>","(f)<","(f)>=","(f)<=","(date)=","(date)!=","(date)>","(date)<","(date)>=","(date)<=",);}function
  1177. table($u){return$u;}function
  1178. idf_escape($u){return$u;}function
  1179. table_status($B="",$ic=false){$J=array();foreach(tables_list()as$R=>$U){$J[$R]=array("Name"=>$R);if($B==$R)return$J[$R];}return$J;}function
  1180. create_database($m,$d){return
  1181. true;}function
  1182. last_id(){global$h;return$h->last_id;}function
  1183. error(){global$h;return
  1184. h($h->error);}function
  1185. collations(){return
  1186. array();}function
  1187. logged_user(){global$b;$j=$b->credentials();return$j[1];}function
  1188. connect(){global$b;$h=new
  1189. Min_DB;list($O,$V,$F)=$b->credentials();$C=array();if($V.$F!=""){$C["username"]=$V;$C["password"]=$F;}$m=$b->database();if($m!="")$C["db"]=$m;try{$h->_link=$h->connect("mongodb://$O",$C);if($F!=""){$C["password"]="";try{$h->connect("mongodb://$O",$C);return
  1190. lang(22);}catch(Exception$Yb){}}return$h;}catch(Exception$Yb){return$Yb->getMessage();}}function
  1191. alter_indexes($R,$c){global$h;foreach($c
  1192. as$X){list($U,$B,$P)=$X;if($P=="DROP")$J=$h->_db->command(array("deleteIndexes"=>$R,"index"=>$B));else{$f=array();foreach($P
  1193. as$e){$e=preg_replace('~ DESC$~','',$e,1,$qb);$f[$e]=($qb?-1:1);}$J=$h->_db->selectCollection($R)->ensureIndex($f,array("unique"=>($U=="UNIQUE"),"name"=>$B,));}if($J['errmsg']){$h->error=$J['errmsg'];return
  1194. false;}}return
  1195. true;}function
  1196. support($jc){return
  1197. preg_match("~database|indexes|descidx~",$jc);}function
  1198. db_collation($m,$eb){}function
  1199. information_schema(){}function
  1200. is_view($S){}function
  1201. convert_field($p){}function
  1202. unconvert_field($p,$J){return$J;}function
  1203. foreign_keys($R){return
  1204. array();}function
  1205. fk_support($S){}function
  1206. engines(){return
  1207. array();}function
  1208. alter_table($R,$B,$q,$vc,$ib,$Tb,$d,$Fa,$Be){global$h;if($R==""){$h->_db->createCollection($B);return
  1209. true;}}function
  1210. drop_tables($T){global$h;foreach($T
  1211. as$R){$gf=$h->_db->selectCollection($R)->drop();if(!$gf['ok'])return
  1212. false;}return
  1213. true;}function
  1214. truncate_tables($T){global$h;foreach($T
  1215. as$R){$gf=$h->_db->selectCollection($R)->remove();if(!$gf['ok'])return
  1216. false;}return
  1217. true;}$x="mongo";$Ec=array();$Ic=array();$Mb=array(array("json"));}$Hb["elastic"]="Elasticsearch (beta)";if(isset($_GET["elastic"])){$Je=array("json + allow_url_fopen");define("DRIVER","elastic");if(function_exists('json_decode')&&ini_bool('allow_url_fopen')){class
  1218. Min_DB{var$extension="JSON",$server_info,$errno,$error,$_url;function
  1219. rootQuery($De,$ob=array(),$Vd='GET'){@ini_set('track_errors',1);$mc=@file_get_contents("$this->_url/".ltrim($De,'/'),false,stream_context_create(array('http'=>array('method'=>$Vd,'content'=>$ob===null?$ob:json_encode($ob),'header'=>'Content-Type: application/json','ignore_errors'=>1,))));if(!$mc){$this->error=$php_errormsg;return$mc;}if(!preg_match('~^HTTP/[0-9.]+ 2~i',$http_response_header[0])){$this->error=$mc;return
  1220. false;}$J=json_decode($mc,true);if($J===null){$this->errno=json_last_error();if(function_exists('json_last_error_msg'))$this->error=json_last_error_msg();else{$nb=get_defined_constants(true);foreach($nb['json']as$B=>$Y){if($Y==$this->errno&&preg_match('~^JSON_ERROR_~',$B)){$this->error=$B;break;}}}}return$J;}function
  1221. query($De,$ob=array(),$Vd='GET'){return$this->rootQuery(($this->_db!=""?"$this->_db/":"/").ltrim($De,'/'),$ob,$Vd);}function
  1222. connect($O,$V,$F){preg_match('~^(https?://)?(.*)~',$O,$A);$this->_url=($A[1]?$A[1]:"http://")."$V:$F@$A[2]";$J=$this->query('');if($J)$this->server_info=$J['version']['number'];return(bool)$J;}function
  1223. select_db($k){$this->_db=$k;return
  1224. true;}function
  1225. quote($Q){return$Q;}}class
  1226. Min_Result{var$num_rows,$_rows;function
  1227. __construct($L){$this->num_rows=count($L);$this->_rows=$L;reset($this->_rows);}function
  1228. fetch_assoc(){$J=current($this->_rows);next($this->_rows);return$J;}function
  1229. fetch_row(){return
  1230. array_values($this->fetch_assoc());}}}class
  1231. Min_Driver
  1232. extends
  1233. Min_SQL{function
  1234. select($R,$M,$Z,$Fc,$se=array(),$z=1,$D=0,$Ne=false){global$b;$vb=array();$G="$R/_search";if($M!=array("*"))$vb["fields"]=$M;if($se){$Gf=array();foreach($se
  1235. as$db){$db=preg_replace('~ DESC$~','',$db,1,$qb);$Gf[]=($qb?array($db=>"desc"):$db);}$vb["sort"]=$Gf;}if($z){$vb["size"]=+$z;if($D)$vb["from"]=($D*$z);}foreach($Z
  1236. as$X){list($db,$ne,$X)=explode(" ",$X,3);if($db=="_id")$vb["query"]["ids"]["values"][]=$X;elseif($db.$X!=""){$cg=array("term"=>array(($db!=""?$db:"_all")=>$X));if($ne=="=")$vb["query"]["filtered"]["filter"]["and"][]=$cg;else$vb["query"]["filtered"]["query"]["bool"]["must"][]=$cg;}}if($vb["query"]&&!$vb["query"]["filtered"]["query"]&&!$vb["query"]["ids"])$vb["query"]["filtered"]["query"]=array("match_all"=>array());$Nf=microtime(true);$qf=$this->_conn->query($G,$vb);if($Ne)echo$b->selectQuery("$G: ".json_encode($vb),$Nf,!$qf);if(!$qf)return
  1237. false;$J=array();foreach($qf['hits']['hits']as$Rc){$K=array();if($M==array("*"))$K["_id"]=$Rc["_id"];$q=$Rc['_source'];if($M!=array("*")){$q=array();foreach($M
  1238. as$y)$q[$y]=$Rc['fields'][$y];}foreach($q
  1239. as$y=>$X){if($vb["fields"])$X=$X[0];$K[$y]=(is_array($X)?json_encode($X):$X);}$J[]=$K;}return
  1240. new
  1241. Min_Result($J);}function
  1242. update($U,$Ye,$H,$z=0,$N="\n"){$Ce=preg_split('~ *= *~',$H);if(count($Ce)==2){$t=trim($Ce[1]);$G="$U/$t";return$this->_conn->query($G,$Ye,'POST');}return
  1243. false;}function
  1244. insert($U,$Ye){$t="";$G="$U/$t";$gf=$this->_conn->query($G,$Ye,'POST');$this->_conn->last_id=$gf['_id'];return$gf['created'];}function
  1245. delete($U,$H,$z=0){$Wc=array();if(is_array($_GET["where"])&&$_GET["where"]["_id"])$Wc[]=$_GET["where"]["_id"];if(is_array($_POST['check'])){foreach($_POST['check']as$Ua){$Ce=preg_split('~ *= *~',$Ua);if(count($Ce)==2)$Wc[]=trim($Ce[1]);}}$this->_conn->affected_rows=0;foreach($Wc
  1246. as$t){$G="{$U}/{$t}";$gf=$this->_conn->query($G,'{}','DELETE');if(is_array($gf)&&$gf['found']==true)$this->_conn->affected_rows++;}return$this->_conn->affected_rows;}}function
  1247. connect(){global$b;$h=new
  1248. Min_DB;list($O,$V,$F)=$b->credentials();if($F!=""&&$h->connect($O,$V,""))return
  1249. lang(22);if($h->connect($O,$V,$F))return$h;return$h->error;}function
  1250. support($jc){return
  1251. preg_match("~database|table|columns~",$jc);}function
  1252. logged_user(){global$b;$j=$b->credentials();return$j[1];}function
  1253. get_databases(){global$h;$J=$h->rootQuery('_aliases');if($J){$J=array_keys($J);sort($J,SORT_STRING);}return$J;}function
  1254. collations(){return
  1255. array();}function
  1256. db_collation($m,$eb){}function
  1257. engines(){return
  1258. array();}function
  1259. count_tables($l){global$h;$J=array();$I=$h->query('_stats');if($I&&$I['indices']){$cd=$I['indices'];foreach($cd
  1260. as$bd=>$Of){$ad=$Of['total']['indexing'];$J[$bd]=$ad['index_total'];}}return$J;}function
  1261. tables_list(){global$h;$J=$h->query('_mapping');if($J)$J=array_fill_keys(array_keys($J[$h->_db]["mappings"]),'table');return$J;}function
  1262. table_status($B="",$ic=false){global$h;$qf=$h->query("_search",array("size"=>0,"aggregations"=>array("count_by_type"=>array("terms"=>array("field"=>"_type")))),"POST");$J=array();if($qf){$T=$qf["aggregations"]["count_by_type"]["buckets"];foreach($T
  1263. as$R){$J[$R["key"]]=array("Name"=>$R["key"],"Engine"=>"table","Rows"=>$R["doc_count"],);if($B!=""&&$B==$R["key"])return$J[$B];}}return$J;}function
  1264. error(){global$h;return
  1265. h($h->error);}function
  1266. information_schema(){}function
  1267. is_view($S){}function
  1268. indexes($R,$i=null){return
  1269. array(array("type"=>"PRIMARY","columns"=>array("_id")),);}function
  1270. fields($R){global$h;$I=$h->query("$R/_mapping");$J=array();if($I){$Id=$I[$R]['properties'];if(!$Id)$Id=$I[$h->_db]['mappings'][$R]['properties'];if($Id){foreach($Id
  1271. as$B=>$p){$J[$B]=array("field"=>$B,"full_type"=>$p["type"],"type"=>$p["type"],"privileges"=>array("insert"=>1,"select"=>1,"update"=>1),);if($p["properties"]){unset($J[$B]["privileges"]["insert"]);unset($J[$B]["privileges"]["update"]);}}}}return$J;}function
  1272. foreign_keys($R){return
  1273. array();}function
  1274. table($u){return$u;}function
  1275. idf_escape($u){return$u;}function
  1276. convert_field($p){}function
  1277. unconvert_field($p,$J){return$J;}function
  1278. fk_support($S){}function
  1279. found_rows($S,$Z){return
  1280. null;}function
  1281. create_database($m){global$h;return$h->rootQuery(urlencode($m),null,'PUT');}function
  1282. drop_databases($l){global$h;return$h->rootQuery(urlencode(implode(',',$l)),array(),'DELETE');}function
  1283. alter_table($R,$B,$q,$vc,$ib,$Tb,$d,$Fa,$Be){global$h;$Qe=array();foreach($q
  1284. as$gc){$kc=trim($gc[1][0]);$lc=trim($gc[1][1]?$gc[1][1]:"text");$Qe[$kc]=array('type'=>$lc);}if(!empty($Qe))$Qe=array('properties'=>$Qe);return$h->query("_mapping/{$B}",$Qe,'PUT');}function
  1285. drop_tables($T){global$h;$J=true;foreach($T
  1286. as$R)$J=$J&&$h->query(urlencode($R),array(),'DELETE');return$J;}function
  1287. last_id(){global$h;return$h->last_id;}$x="elastic";$pe=array("=","query");$Ec=array();$Ic=array();$Mb=array(array("json"));$Ag=array();$Rf=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){$Ag+=$X;$Rf[$y]=array_keys($X);}}$Hb["clickhouse"]="ClickHouse (alpha)";if(isset($_GET["clickhouse"])){define("DRIVER","clickhouse");class
  1288. Min_DB{var$extension="JSON",$server_info,$errno,$_result,$error,$_url;var$_db='default';function
  1289. rootQuery($m,$G){@ini_set('track_errors',1);$mc=@file_get_contents("$this->_url/?database=$m",false,stream_context_create(array('http'=>array('method'=>'POST','content'=>$this->isQuerySelectLike($G)?"$G FORMAT JSONCompact":$G,'header'=>'Content-type: application/x-www-form-urlencoded','ignore_errors'=>1,))));if($mc===false){$this->error=$php_errormsg;return$mc;}if(!preg_match('~^HTTP/[0-9.]+ 2~i',$http_response_header[0])){$this->error=$mc;return
  1290. false;}$J=json_decode($mc,true);if($J===null){$this->errno=json_last_error();if(function_exists('json_last_error_msg'))$this->error=json_last_error_msg();else{$nb=get_defined_constants(true);foreach($nb['json']as$B=>$Y){if($Y==$this->errno&&preg_match('~^JSON_ERROR_~',$B)){$this->error=$B;break;}}}}return
  1291. new
  1292. Min_Result($J);}function
  1293. isQuerySelectLike($G){return(bool)preg_match('~^(select|show)~i',$G);}function
  1294. query($G){return$this->rootQuery($this->_db,$G);}function
  1295. connect($O,$V,$F){preg_match('~^(https?://)?(.*)~',$O,$A);$this->_url=($A[1]?$A[1]:"http://")."$V:$F@$A[2]";$J=$this->query('SELECT 1');return(bool)$J;}function
  1296. select_db($k){$this->_db=$k;return
  1297. true;}function
  1298. quote($Q){return"'".addcslashes($Q,"\\'")."'";}function
  1299. multi_query($G){return$this->_result=$this->query($G);}function
  1300. store_result(){return$this->_result;}function
  1301. next_result(){return
  1302. false;}function
  1303. result($G,$p=0){$I=$this->query($G);return$I['data'];}}class
  1304. Min_Result{var$num_rows,$_rows,$columns,$meta,$_offset=0;function
  1305. __construct($I){$this->num_rows=$I['rows'];$this->_rows=$I['data'];$this->meta=$I['meta'];$this->columns=array_column($this->meta,'name');reset($this->_rows);}function
  1306. fetch_assoc(){$K=current($this->_rows);next($this->_rows);return$K===false?false:array_combine($this->columns,$K);}function
  1307. fetch_row(){$K=current($this->_rows);next($this->_rows);return$K;}function
  1308. fetch_field(){$e=$this->_offset++;$J=new
  1309. stdClass;if($e<count($this->columns)){$J->name=$this->meta[$e]['name'];$J->orgname=$J->name;$J->type=$this->meta[$e]['type'];}return$J;}}class
  1310. Min_Driver
  1311. extends
  1312. Min_SQL{function
  1313. delete($R,$H,$z=0){return
  1314. queries("ALTER TABLE ".table($R)." DELETE $H");}function
  1315. update($R,$P,$H,$z=0,$N="\n"){$Pg=array();foreach($P
  1316. as$y=>$X)$Pg[]="$y = $X";$G=$N.implode(",$N",$Pg);return
  1317. queries("ALTER TABLE ".table($R)." UPDATE $G$H");}}function
  1318. idf_escape($u){return"`".str_replace("`","``",$u)."`";}function
  1319. table($u){return
  1320. idf_escape($u);}function
  1321. explain($h,$G){return'';}function
  1322. found_rows($S,$Z){$L=get_vals("SELECT COUNT(*) FROM ".idf_escape($S["Name"]).($Z?" WHERE ".implode(" AND ",$Z):""));return
  1323. empty($L)?false:$L[0];}function
  1324. alter_table($R,$B,$q,$vc,$ib,$Tb,$d,$Fa,$Be){foreach($q
  1325. as$p){if($p[1][2]===" NULL")$p[1][1]=" Nullable({$p[1][1]})";unset($p[1][2]);}}function
  1326. truncate_tables($T){return
  1327. apply_queries("TRUNCATE TABLE",$T);}function
  1328. drop_views($Tg){return
  1329. drop_tables($Tg);}function
  1330. drop_tables($T){return
  1331. apply_queries("DROP TABLE",$T);}function
  1332. connect(){global$b;$h=new
  1333. Min_DB;$j=$b->credentials();if($h->connect($j[0],$j[1],$j[2]))return$h;return$h->error;}function
  1334. get_databases($tc){global$h;$I=get_rows('SHOW DATABASES');$J=array();foreach($I
  1335. as$K)$J[]=$K['name'];sort($J);return$J;}function
  1336. limit($G,$Z,$z,$ie=0,$N=" "){return" $G$Z".($z!==null?$N."LIMIT $z".($ie?", $ie":""):"");}function
  1337. limit1($R,$G,$Z,$N="\n"){return
  1338. limit($G,$Z,1,0,$N);}function
  1339. db_collation($m,$eb){}function
  1340. engines(){return
  1341. array('MergeTree');}function
  1342. logged_user(){global$b;$j=$b->credentials();return$j[1];}function
  1343. tables_list(){$I=get_rows('SHOW TABLES');$J=array();foreach($I
  1344. as$K)$J[$K['name']]='table';ksort($J);return$J;}function
  1345. count_tables($l){return
  1346. array();}function
  1347. table_status($B="",$ic=false){global$h;$J=array();$T=get_rows("SELECT name, engine FROM system.tables WHERE database = ".q($h->_db));foreach($T
  1348. as$R){$J[$R['name']]=array('Name'=>$R['name'],'Engine'=>$R['engine'],);if($B===$R['name'])return$J[$R['name']];}return$J;}function
  1349. is_view($S){return
  1350. false;}function
  1351. fk_support($S){return
  1352. false;}function
  1353. convert_field($p){}function
  1354. unconvert_field($p,$J){if(in_array($p['type'],array("Int8","Int16","Int32","Int64","UInt8","UInt16","UInt32","UInt64","Float32","Float64")))return"to$p[type]($J)";return$J;}function
  1355. fields($R){$J=array();$I=get_rows("SELECT name, type, default_expression FROM system.columns WHERE ".idf_escape('table')." = ".q($R));foreach($I
  1356. as$K){$U=trim($K['type']);$ee=strpos($U,'Nullable(')===0;$J[trim($K['name'])]=array("field"=>trim($K['name']),"full_type"=>$U,"type"=>$U,"default"=>trim($K['default_expression']),"null"=>$ee,"auto_increment"=>'0',"privileges"=>array("insert"=>1,"select"=>1,"update"=>0),);}return$J;}function
  1357. indexes($R,$i=null){return
  1358. array();}function
  1359. foreign_keys($R){return
  1360. array();}function
  1361. collations(){return
  1362. array();}function
  1363. information_schema($m){return
  1364. false;}function
  1365. error(){global$h;return
  1366. h($h->error);}function
  1367. types(){return
  1368. array();}function
  1369. schemas(){return
  1370. array();}function
  1371. get_schema(){return"";}function
  1372. set_schema($of){return
  1373. true;}function
  1374. auto_increment(){return'';}function
  1375. last_id(){return
  1376. 0;}function
  1377. support($jc){return
  1378. preg_match("~^(columns|sql|status|table)$~",$jc);}$x="clickhouse";$Ag=array();$Rf=array();foreach(array(lang(27)=>array("Int8"=>3,"Int16"=>5,"Int32"=>10,"Int64"=>19,"UInt8"=>3,"UInt16"=>5,"UInt32"=>10,"UInt64"=>20,"Float32"=>7,"Float64"=>16,'Decimal'=>38,'Decimal32'=>9,'Decimal64'=>18,'Decimal128'=>38),lang(28)=>array("Date"=>13,"DateTime"=>20),lang(25)=>array("String"=>0),lang(29)=>array("FixedString"=>0),)as$y=>$X){$Ag+=$X;$Rf[$y]=array_keys($X);}$Hg=array();$pe=array("=","<",">","<=",">=","!=","~","!~","LIKE","LIKE %%","IN","IS NULL","NOT LIKE","NOT IN","IS NOT NULL","SQL");$Ec=array();$Ic=array("avg","count","count distinct","max","min","sum");$Mb=array();}$Hb=array("server"=>"MySQL")+$Hb;if(!defined("DRIVER")){$Je=array("MySQLi","MySQL","PDO_MySQL");define("DRIVER","server");if(extension_loaded("mysqli")){class
  1379. Min_DB
  1380. extends
  1381. MySQLi{var$extension="MySQLi";function
  1382. __construct(){parent::init();}function
  1383. connect($O="",$V="",$F="",$k=null,$He=null,$Ff=null){global$b;mysqli_report(MYSQLI_REPORT_OFF);list($Sc,$He)=explode(":",$O,2);$Mf=$b->connectSsl();if($Mf)$this->ssl_set($Mf['key'],$Mf['cert'],$Mf['ca'],'','');$J=@$this->real_connect(($O!=""?$Sc:ini_get("mysqli.default_host")),($O.$V!=""?$V:ini_get("mysqli.default_user")),($O.$V.$F!=""?$F:ini_get("mysqli.default_pw")),$k,(is_numeric($He)?$He:ini_get("mysqli.default_port")),(!is_numeric($He)?$He:$Ff),($Mf?64:0));$this->options(MYSQLI_OPT_LOCAL_INFILE,false);return$J;}function
  1384. set_charset($Ta){if(parent::set_charset($Ta))return
  1385. true;parent::set_charset('utf8');return$this->query("SET NAMES $Ta");}function
  1386. result($G,$p=0){$I=$this->query($G);if(!$I)return
  1387. false;$K=$I->fetch_array();return$K[$p];}function
  1388. 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
  1389. Min_DB{var$extension="MySQL",$server_info,$affected_rows,$errno,$error,$_link,$_result;function
  1390. connect($O,$V,$F){if(ini_bool("mysql.allow_local_infile")){$this->error=lang(32,"'mysql.allow_local_infile'","MySQLi","PDO_MySQL");return
  1391. false;}$this->_link=@mysql_connect(($O!=""?$O:ini_get("mysql.default_host")),("$O$V"!=""?$V:ini_get("mysql.default_user")),("$O$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
  1392. set_charset($Ta){if(function_exists('mysql_set_charset')){if(mysql_set_charset($Ta,$this->_link))return
  1393. true;mysql_set_charset('utf8',$this->_link);}return$this->query("SET NAMES $Ta");}function
  1394. quote($Q){return"'".mysql_real_escape_string($Q,$this->_link)."'";}function
  1395. select_db($k){return
  1396. mysql_select_db($k,$this->_link);}function
  1397. query($G,$Bg=false){$I=@($Bg?mysql_unbuffered_query($G,$this->_link):mysql_query($G,$this->_link));$this->error="";if(!$I){$this->errno=mysql_errno($this->_link);$this->error=mysql_error($this->_link);return
  1398. false;}if($I===true){$this->affected_rows=mysql_affected_rows($this->_link);$this->info=mysql_info($this->_link);return
  1399. true;}return
  1400. new
  1401. Min_Result($I);}function
  1402. multi_query($G){return$this->_result=$this->query($G);}function
  1403. store_result(){return$this->_result;}function
  1404. next_result(){return
  1405. false;}function
  1406. result($G,$p=0){$I=$this->query($G);if(!$I||!$I->num_rows)return
  1407. false;return
  1408. mysql_result($I->_result,0,$p);}}class
  1409. Min_Result{var$num_rows,$_result,$_offset=0;function
  1410. __construct($I){$this->_result=$I;$this->num_rows=mysql_num_rows($I);}function
  1411. fetch_assoc(){return
  1412. mysql_fetch_assoc($this->_result);}function
  1413. fetch_row(){return
  1414. mysql_fetch_row($this->_result);}function
  1415. fetch_field(){$J=mysql_fetch_field($this->_result,$this->_offset++);$J->orgtable=$J->table;$J->orgname=$J->name;$J->charsetnr=($J->blob?63:0);return$J;}function
  1416. __destruct(){mysql_free_result($this->_result);}}}elseif(extension_loaded("pdo_mysql")){class
  1417. Min_DB
  1418. extends
  1419. Min_PDO{var$extension="PDO_MySQL";function
  1420. connect($O,$V,$F){global$b;$C=array(PDO::MYSQL_ATTR_LOCAL_INFILE=>false);$Mf=$b->connectSsl();if($Mf){if(!empty($Mf['key']))$C[PDO::MYSQL_ATTR_SSL_KEY]=$Mf['key'];if(!empty($Mf['cert']))$C[PDO::MYSQL_ATTR_SSL_CERT]=$Mf['cert'];if(!empty($Mf['ca']))$C[PDO::MYSQL_ATTR_SSL_CA]=$Mf['ca'];}$this->dsn("mysql:charset=utf8;host=".str_replace(":",";unix_socket=",preg_replace('~:(\d)~',';port=\1',$O)),$V,$F,$C);return
  1421. true;}function
  1422. set_charset($Ta){$this->query("SET NAMES $Ta");}function
  1423. select_db($k){return$this->query("USE ".idf_escape($k));}function
  1424. query($G,$Bg=false){$this->setAttribute(1000,!$Bg);return
  1425. parent::query($G,$Bg);}}}class
  1426. Min_Driver
  1427. extends
  1428. Min_SQL{function
  1429. insert($R,$P){return($P?parent::insert($R,$P):queries("INSERT INTO ".table($R)." ()\nVALUES ()"));}function
  1430. insertUpdate($R,$L,$Le){$f=array_keys(reset($L));$Ke="INSERT INTO ".table($R)." (".implode(", ",$f).") VALUES\n";$Pg=array();foreach($f
  1431. as$y)$Pg[$y]="$y = VALUES($y)";$Uf="\nON DUPLICATE KEY UPDATE ".implode(", ",$Pg);$Pg=array();$Bd=0;foreach($L
  1432. as$P){$Y="(".implode(", ",$P).")";if($Pg&&(strlen($Ke)+$Bd+strlen($Y)+strlen($Uf)>1e6)){if(!queries($Ke.implode(",\n",$Pg).$Uf))return
  1433. false;$Pg=array();$Bd=0;}$Pg[]=$Y;$Bd+=strlen($Y)+2;}return
  1434. queries($Ke.implode(",\n",$Pg).$Uf);}function
  1435. slowQuery($G,$hg){if(min_version('5.7.8','10.1.2')){if(preg_match('~MariaDB~',$this->_conn->server_info))return"SET STATEMENT max_statement_time=$hg FOR $G";elseif(preg_match('~^(SELECT\b)(.+)~is',$G,$A))return"$A[1] /*+ MAX_EXECUTION_TIME(".($hg*1000).") */ $A[2]";}}function
  1436. convertSearch($u,$X,$p){return(preg_match('~char|text|enum|set~',$p["type"])&&!preg_match("~^utf8~",$p["collation"])&&preg_match('~[\x80-\xFF]~',$X['val'])?"CONVERT($u USING ".charset($this->_conn).")":$u);}function
  1437. warnings(){$I=$this->_conn->query("SHOW WARNINGS");if($I&&$I->num_rows){ob_start();select($I);return
  1438. ob_get_clean();}}function
  1439. tableHelp($B){$Jd=preg_match('~MariaDB~',$this->_conn->server_info);if(information_schema(DB))return
  1440. strtolower(($Jd?"information-schema-$B-table/":str_replace("_","-",$B)."-table.html"));if(DB=="mysql")return($Jd?"mysql$B-table/":"system-database.html");}}function
  1441. idf_escape($u){return"`".str_replace("`","``",$u)."`";}function
  1442. table($u){return
  1443. idf_escape($u);}function
  1444. connect(){global$b,$Ag,$Rf;$h=new
  1445. Min_DB;$j=$b->credentials();if($h->connect($j[0],$j[1],$j[2])){$h->set_charset(charset($h));$h->query("SET sql_quote_show_create = 1, autocommit = 1");if(min_version('5.7.8',10.2,$h)){$Rf[lang(25)][]="json";$Ag["json"]=4294967295;}return$h;}$J=$h->error;if(function_exists('iconv')&&!is_utf8($J)&&strlen($nf=iconv("windows-1250","utf-8",$J))>strlen($J))$J=$nf;return$J;}function
  1446. get_databases($tc){$J=get_session("dbs");if($J===null){$G=(min_version(5)?"SELECT SCHEMA_NAME FROM information_schema.SCHEMATA ORDER BY SCHEMA_NAME":"SHOW DATABASES");$J=($tc?slow_query($G):get_vals($G));restart_session();set_session("dbs",$J);stop_session();}return$J;}function
  1447. limit($G,$Z,$z,$ie=0,$N=" "){return" $G$Z".($z!==null?$N."LIMIT $z".($ie?" OFFSET $ie":""):"");}function
  1448. limit1($R,$G,$Z,$N="\n"){return
  1449. limit($G,$Z,1,0,$N);}function
  1450. db_collation($m,$eb){global$h;$J=null;$rb=$h->result("SHOW CREATE DATABASE ".idf_escape($m),1);if(preg_match('~ COLLATE ([^ ]+)~',$rb,$A))$J=$A[1];elseif(preg_match('~ CHARACTER SET ([^ ]+)~',$rb,$A))$J=$eb[$A[1]][-1];return$J;}function
  1451. engines(){$J=array();foreach(get_rows("SHOW ENGINES")as$K){if(preg_match("~YES|DEFAULT~",$K["Support"]))$J[]=$K["Engine"];}return$J;}function
  1452. logged_user(){global$h;return$h->result("SELECT USER()");}function
  1453. tables_list(){return
  1454. 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
  1455. count_tables($l){$J=array();foreach($l
  1456. as$m)$J[$m]=count(get_vals("SHOW TABLES IN ".idf_escape($m)));return$J;}function
  1457. table_status($B="",$ic=false){$J=array();foreach(get_rows($ic&&min_version(5)?"SELECT TABLE_NAME AS Name, ENGINE AS Engine, TABLE_COMMENT AS Comment FROM information_schema.TABLES WHERE TABLE_SCHEMA = DATABASE() ".($B!=""?"AND TABLE_NAME = ".q($B):"ORDER BY Name"):"SHOW TABLE STATUS".($B!=""?" LIKE ".q(addcslashes($B,"%_\\")):""))as$K){if($K["Engine"]=="InnoDB")$K["Comment"]=preg_replace('~(?:(.+); )?InnoDB free: .*~','\1',$K["Comment"]);if(!isset($K["Engine"]))$K["Comment"]="";if($B!="")return$K;$J[$K["Name"]]=$K;}return$J;}function
  1458. is_view($S){return$S["Engine"]===null;}function
  1459. fk_support($S){return
  1460. preg_match('~InnoDB|IBMDB2I~i',$S["Engine"])||(preg_match('~NDB~i',$S["Engine"])&&min_version(5.6));}function
  1461. fields($R){$J=array();foreach(get_rows("SHOW FULL COLUMNS FROM ".table($R))as$K){preg_match('~^([^( ]+)(?:\((.+)\))?( unsigned)?( zerofill)?$~',$K["Type"],$A);$J[$K["Field"]]=array("field"=>$K["Field"],"full_type"=>$K["Type"],"type"=>$A[1],"length"=>$A[2],"unsigned"=>ltrim($A[3].$A[4]),"default"=>($K["Default"]!=""||preg_match("~char|set~",$A[1])?$K["Default"]:null),"null"=>($K["Null"]=="YES"),"auto_increment"=>($K["Extra"]=="auto_increment"),"on_update"=>(preg_match('~^on update (.+)~i',$K["Extra"],$A)?$A[1]:""),"collation"=>$K["Collation"],"privileges"=>array_flip(preg_split('~, *~',$K["Privileges"])),"comment"=>$K["Comment"],"primary"=>($K["Key"]=="PRI"),);}return$J;}function
  1462. indexes($R,$i=null){$J=array();foreach(get_rows("SHOW INDEX FROM ".table($R),$i)as$K){$B=$K["Key_name"];$J[$B]["type"]=($B=="PRIMARY"?"PRIMARY":($K["Index_type"]=="FULLTEXT"?"FULLTEXT":($K["Non_unique"]?($K["Index_type"]=="SPATIAL"?"SPATIAL":"INDEX"):"UNIQUE")));$J[$B]["columns"][]=$K["Column_name"];$J[$B]["lengths"][]=($K["Index_type"]=="SPATIAL"?null:$K["Sub_part"]);$J[$B]["descs"][]=null;}return$J;}function
  1463. foreign_keys($R){$J=array();foreach(get_rows("SELECT * FROM information_schema.REFERENTIAL_CONSTRAINTS WHERE CONSTRAINT_SCHEMA = DATABASE() AND TABLE_NAME = ".q($R))as$K){$f=get_key_vals("SELECT COLUMN_NAME, REFERENCED_COLUMN_NAME FROM information_schema.KEY_COLUMN_USAGE WHERE CONSTRAINT_SCHEMA = DATABASE() AND CONSTRAINT_NAME = ".q($K["CONSTRAINT_NAME"])." ORDER BY ORDINAL_POSITION");$m=$K["UNIQUE_CONSTRAINT_SCHEMA"];$J[$K["CONSTRAINT_NAME"]]=array("db"=>($m==DB?"":$m),"table"=>$K["REFERENCED_TABLE_NAME"],"source"=>array_keys($f),"target"=>array_values($f),"on_delete"=>$K["DELETE_RULE"],"on_update"=>$K["UPDATE_RULE"],);}return$J;}function
  1464. view($B){global$h;return
  1465. array("select"=>preg_replace('~^(?:[^`]|`[^`]*`)*\s+AS\s+~isU','',$h->result("SHOW CREATE VIEW ".table($B),1)));}function
  1466. collations(){$J=array();foreach(get_rows("SHOW COLLATION")as$K){if($K["Default"])$J[$K["Charset"]][-1]=$K["Collation"];else$J[$K["Charset"]][]=$K["Collation"];}ksort($J);foreach($J
  1467. as$y=>$X)asort($J[$y]);return$J;}function
  1468. information_schema($m){return(min_version(5)&&$m=="information_schema")||(min_version(5.5)&&$m=="performance_schema");}function
  1469. error(){global$h;return
  1470. h(preg_replace('~^You have an error.*syntax to use~U',"Syntax error",$h->error));}function
  1471. create_database($m,$d){return
  1472. queries("CREATE DATABASE ".idf_escape($m).($d?" COLLATE ".q($d):""));}function
  1473. drop_databases($l){$J=apply_queries("DROP DATABASE",$l,'idf_escape');restart_session();set_session("dbs",null);return$J;}function
  1474. rename_database($B,$d){$J=false;if(create_database($B,$d)){$df=array();foreach(tables_list()as$R=>$U)$df[]=table($R)." TO ".idf_escape($B).".".table($R);$J=(!$df||queries("RENAME TABLE ".implode(", ",$df)));if($J)queries("DROP DATABASE ".idf_escape(DB));restart_session();set_session("dbs",null);}return$J;}function
  1475. auto_increment(){$Ga=" 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)){$Ga="";break;}if($v["type"]=="PRIMARY")$Ga=" UNIQUE";}}return" AUTO_INCREMENT$Ga";}function
  1476. alter_table($R,$B,$q,$vc,$ib,$Tb,$d,$Fa,$Be){$c=array();foreach($q
  1477. as$p)$c[]=($p[1]?($R!=""?($p[0]!=""?"CHANGE ".idf_escape($p[0]):"ADD"):" ")." ".implode($p[1]).($R!=""?$p[2]:""):"DROP ".idf_escape($p[0]));$c=array_merge($c,$vc);$Pf=($ib!==null?" COMMENT=".q($ib):"").($Tb?" ENGINE=".q($Tb):"").($d?" COLLATE ".q($d):"").($Fa!=""?" AUTO_INCREMENT=$Fa":"");if($R=="")return
  1478. queries("CREATE TABLE ".table($B)." (\n".implode(",\n",$c)."\n)$Pf$Be");if($R!=$B)$c[]="RENAME TO ".table($B);if($Pf)$c[]=ltrim($Pf);return($c||$Be?queries("ALTER TABLE ".table($R)."\n".implode(",\n",$c).$Be):true);}function
  1479. alter_indexes($R,$c){foreach($c
  1480. 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
  1481. queries("ALTER TABLE ".table($R).implode(",",$c));}function
  1482. truncate_tables($T){return
  1483. apply_queries("TRUNCATE TABLE",$T);}function
  1484. drop_views($Tg){return
  1485. queries("DROP VIEW ".implode(", ",array_map('table',$Tg)));}function
  1486. drop_tables($T){return
  1487. queries("DROP TABLE ".implode(", ",array_map('table',$T)));}function
  1488. move_tables($T,$Tg,$bg){$df=array();foreach(array_merge($T,$Tg)as$R)$df[]=table($R)." TO ".idf_escape($bg).".".table($R);return
  1489. queries("RENAME TABLE ".implode(", ",$df));}function
  1490. copy_tables($T,$Tg,$bg){queries("SET sql_mode = 'NO_AUTO_VALUE_ON_ZERO'");foreach($T
  1491. as$R){$B=($bg==DB?table("copy_$R"):idf_escape($bg).".".table($R));if(($_POST["overwrite"]&&!queries("\nDROP TABLE IF EXISTS $B"))||!queries("CREATE TABLE $B LIKE ".table($R))||!queries("INSERT INTO $B SELECT * FROM ".table($R)))return
  1492. false;foreach(get_rows("SHOW TRIGGERS LIKE ".q(addcslashes($R,"%_\\")))as$K){$wg=$K["Trigger"];if(!queries("CREATE TRIGGER ".($bg==DB?idf_escape("copy_$wg"):idf_escape($bg).".".idf_escape($wg))." $K[Timing] $K[Event] ON $B FOR EACH ROW\n$K[Statement];"))return
  1493. false;}}foreach($Tg
  1494. as$R){$B=($bg==DB?table("copy_$R"):idf_escape($bg).".".table($R));$Sg=view($R);if(($_POST["overwrite"]&&!queries("DROP VIEW IF EXISTS $B"))||!queries("CREATE VIEW $B AS $Sg[select]"))return
  1495. false;}return
  1496. true;}function
  1497. trigger($B){if($B=="")return
  1498. array();$L=get_rows("SHOW TRIGGERS WHERE `Trigger` = ".q($B));return
  1499. reset($L);}function
  1500. triggers($R){$J=array();foreach(get_rows("SHOW TRIGGERS LIKE ".q(addcslashes($R,"%_\\")))as$K)$J[$K["Trigger"]]=array($K["Timing"],$K["Event"]);return$J;}function
  1501. trigger_options(){return
  1502. array("Timing"=>array("BEFORE","AFTER"),"Event"=>array("INSERT","UPDATE","DELETE"),"Type"=>array("FOR EACH ROW"),);}function
  1503. routine($B,$U){global$h,$Ub,$hd,$Ag;$xa=array("bool","boolean","integer","double precision","real","dec","numeric","fixed","national char","national varchar");$If="(?:\\s|/\\*[\s\S]*?\\*/|(?:#|-- )[^\n]*\n?|--\r?\n)";$_g="((".implode("|",array_merge(array_keys($Ag),$xa)).")\\b(?:\\s*\\(((?:[^'\")]|$Ub)++)\\))?\\s*(zerofill\\s*)?(unsigned(?:\\s+zerofill)?)?)(?:\\s*(?:CHARSET|CHARACTER\\s+SET)\\s*['\"]?([^'\"\\s,]+)['\"]?)?";$Ee="$If*(".($U=="FUNCTION"?"":$hd).")?\\s*(?:`((?:[^`]|``)*)`\\s*|\\b(\\S+)\\s+)$_g";$rb=$h->result("SHOW CREATE $U ".idf_escape($B),2);preg_match("~\\(((?:$Ee\\s*,?)*)\\)\\s*".($U=="FUNCTION"?"RETURNS\\s+$_g\\s+":"")."(.*)~is",$rb,$A);$q=array();preg_match_all("~$Ee\\s*,?~is",$A[1],$Md,PREG_SET_ORDER);foreach($Md
  1504. as$ze){$B=str_replace("``","`",$ze[2]).$ze[3];$q[]=array("field"=>$B,"type"=>strtolower($ze[5]),"length"=>preg_replace_callback("~$Ub~s",'normalize_enum',$ze[6]),"unsigned"=>strtolower(preg_replace('~\s+~',' ',trim("$ze[8] $ze[7]"))),"null"=>1,"full_type"=>$ze[4],"inout"=>strtoupper($ze[1]),"collation"=>strtolower($ze[9]),);}if($U!="FUNCTION")return
  1505. array("fields"=>$q,"definition"=>$A[11]);return
  1506. array("fields"=>$q,"returns"=>array("type"=>$A[12],"length"=>$A[13],"unsigned"=>$A[15],"collation"=>$A[16]),"definition"=>$A[17],"language"=>"SQL",);}function
  1507. routines(){return
  1508. get_rows("SELECT ROUTINE_NAME AS SPECIFIC_NAME, ROUTINE_NAME, ROUTINE_TYPE, DTD_IDENTIFIER FROM information_schema.ROUTINES WHERE ROUTINE_SCHEMA = ".q(DB));}function
  1509. routine_languages(){return
  1510. array();}function
  1511. routine_id($B,$K){return
  1512. idf_escape($B);}function
  1513. last_id(){global$h;return$h->result("SELECT LAST_INSERT_ID()");}function
  1514. explain($h,$G){return$h->query("EXPLAIN ".(min_version(5.1)?"PARTITIONS ":"").$G);}function
  1515. found_rows($S,$Z){return($Z||$S["Engine"]!="InnoDB"?null:$S["Rows"]);}function
  1516. types(){return
  1517. array();}function
  1518. schemas(){return
  1519. array();}function
  1520. get_schema(){return"";}function
  1521. set_schema($of){return
  1522. true;}function
  1523. create_sql($R,$Fa,$Sf){global$h;$J=$h->result("SHOW CREATE TABLE ".table($R),1);if(!$Fa)$J=preg_replace('~ AUTO_INCREMENT=\d+~','',$J);return$J;}function
  1524. truncate_sql($R){return"TRUNCATE ".table($R);}function
  1525. use_sql($k){return"USE ".idf_escape($k);}function
  1526. trigger_sql($R){$J="";foreach(get_rows("SHOW TRIGGERS LIKE ".q(addcslashes($R,"%_\\")),null,"-- ")as$K)$J.="\nCREATE TRIGGER ".idf_escape($K["Trigger"])." $K[Timing] $K[Event] ON ".table($K["Table"])." FOR EACH ROW\n$K[Statement];;\n";return$J;}function
  1527. show_variables(){return
  1528. get_key_vals("SHOW VARIABLES");}function
  1529. process_list(){return
  1530. get_rows("SHOW FULL PROCESSLIST");}function
  1531. show_status(){return
  1532. get_key_vals("SHOW STATUS");}function
  1533. convert_field($p){if(preg_match("~binary~",$p["type"]))return"HEX(".idf_escape($p["field"]).")";if($p["type"]=="bit")return"BIN(".idf_escape($p["field"])." + 0)";if(preg_match("~geometry|point|linestring|polygon~",$p["type"]))return(min_version(8)?"ST_":"")."AsWKT(".idf_escape($p["field"]).")";}function
  1534. unconvert_field($p,$J){if(preg_match("~binary~",$p["type"]))$J="UNHEX($J)";if($p["type"]=="bit")$J="CONV($J, 2, 10) + 0";if(preg_match("~geometry|point|linestring|polygon~",$p["type"]))$J=(min_version(8)?"ST_":"")."GeomFromText($J, SRID($p[field]))";return$J;}function
  1535. support($jc){return!preg_match("~scheme|sequence|type|view_trigger|materializedview".(min_version(8)?"":"|descidx".(min_version(5.1)?"":"|event|partitioning".(min_version(5)?"":"|routine|trigger|view")))."~",$jc);}function
  1536. kill_process($X){return
  1537. queries("KILL ".number($X));}function
  1538. connection_id(){return"SELECT CONNECTION_ID()";}function
  1539. max_connections(){global$h;return$h->result("SELECT @@max_connections");}$x="sql";$Ag=array();$Rf=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){$Ag+=$X;$Rf[$y]=array_keys($X);}$Hg=array("unsigned","zerofill","unsigned zerofill");$pe=array("=","<",">","<=",">=","!=","LIKE","LIKE %%","REGEXP","IN","FIND_IN_SET","IS NULL","NOT LIKE","NOT REGEXP","NOT IN","IS NOT NULL","SQL");$Ec=array("char_length","date","from_unixtime","lower","round","floor","ceil","sec_to_time","time_to_sec","upper");$Ic=array("avg","count","count distinct","group_concat","max","min","sum");$Mb=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"])."&":""):''));$ca="4.7.2";class
  1540. Adminer{var$operators=array("<=",">=");var$_values=array();function
  1541. name(){return"<a href='https://www.adminer.org/editor/'".target_blank()." id='h1'>".lang(34)."</a>";}function
  1542. credentials(){return
  1543. array(SERVER,$_GET["username"],get_password());}function
  1544. connectSsl(){}function
  1545. permanentLogin($rb=false){return
  1546. password_file($rb);}function
  1547. bruteForceKey(){return$_SERVER["REMOTE_ADDR"];}function
  1548. serverName($O){}function
  1549. database(){global$h;if($h){$l=$this->databases(false);return(!$l?$h->result("SELECT SUBSTRING_INDEX(CURRENT_USER, '@', 1)"):$l[(information_schema($l[0])?1:0)]);}}function
  1550. schemas(){return
  1551. schemas();}function
  1552. databases($tc=true){return
  1553. get_databases($tc);}function
  1554. queryTimeout(){return
  1555. 5;}function
  1556. headers(){}function
  1557. csp(){return
  1558. csp();}function
  1559. head(){return
  1560. true;}function
  1561. css(){$J=array();$r="adminer.css";if(file_exists($r))$J[]=$r;return$J;}function
  1562. loginForm(){echo"<table cellspacing='0' class='layout'>\n",$this->loginFormField('username','<tr><th>'.lang(35).'<td>','<input type="hidden" name="auth[driver]" value="server"><input name="auth[username]" id="username" value="'.h($_GET["username"]).'" autocomplete="username" autocapitalize="off">'.script("focus(qs('#username'));")),$this->loginFormField('password','<tr><th>'.lang(36).'<td>','<input type="password" name="auth[password]" autocomplete="current-password">'."\n"),"</table>\n","<p><input type='submit' value='".lang(37)."'>\n",checkbox("auth[permanent]",1,$_COOKIE["adminer_permanent"],lang(38))."\n";}function
  1563. loginFormField($B,$Pc,$Y){return$Pc.$Y;}function
  1564. login($Gd,$F){return
  1565. true;}function
  1566. tableName($Xf){return
  1567. h($Xf["Comment"]!=""?$Xf["Comment"]:$Xf["Name"]);}function
  1568. fieldName($p,$se=0){return
  1569. h(preg_replace('~\s+\[.*\]$~','',($p["comment"]!=""?$p["comment"]:$p["field"])));}function
  1570. selectLinks($Xf,$P=""){$a=$Xf["Name"];if($P!==null)echo'<p class="tabs"><a href="'.h(ME.'edit='.urlencode($a).$P).'">'.lang(39)."</a>\n";}function
  1571. foreignKeys($R){return
  1572. foreign_keys($R);}function
  1573. backwardKeys($R,$Wf){$J=array();foreach(get_rows("SELECT TABLE_NAME, CONSTRAINT_NAME, COLUMN_NAME, REFERENCED_COLUMN_NAME
  1574. FROM information_schema.KEY_COLUMN_USAGE
  1575. WHERE TABLE_SCHEMA = ".q($this->database())."
  1576. AND REFERENCED_TABLE_SCHEMA = ".q($this->database())."
  1577. AND REFERENCED_TABLE_NAME = ".q($R)."
  1578. ORDER BY ORDINAL_POSITION",null,"")as$K)$J[$K["TABLE_NAME"]]["keys"][$K["CONSTRAINT_NAME"]][$K["COLUMN_NAME"]]=$K["REFERENCED_COLUMN_NAME"];foreach($J
  1579. as$y=>$X){$B=$this->tableName(table_status($y,true));if($B!=""){$qf=preg_quote($Wf);$N="(:|\\s*-)?\\s+";$J[$y]["name"]=(preg_match("(^$qf$N(.+)|^(.+?)$N$qf\$)iu",$B,$A)?$A[2].$A[3]:$B);}else
  1580. unset($J[$y]);}return$J;}function
  1581. backwardKeysPrint($Ja,$K){foreach($Ja
  1582. as$R=>$Ia){foreach($Ia["keys"]as$gb){$_=ME.'select='.urlencode($R);$s=0;foreach($gb
  1583. as$e=>$X)$_.=where_link($s++,$e,$K[$X]);echo"<a href='".h($_)."'>".h($Ia["name"])."</a>";$_=ME.'edit='.urlencode($R);foreach($gb
  1584. as$e=>$X)$_.="&set".urlencode("[".bracket_escape($e)."]")."=".urlencode($K[$X]);echo"<a href='".h($_)."' title='".lang(39)."'>+</a> ";}}}function
  1585. selectQuery($G,$Nf,$hc=false){return"<!--\n".str_replace("--","--><!-- ",$G)."\n(".format_time($Nf).")\n-->\n";}function
  1586. rowDescription($R){foreach(fields($R)as$p){if(preg_match("~varchar|character varying~",$p["type"]))return
  1587. idf_escape($p["field"]);}return"";}function
  1588. rowDescriptions($L,$xc){$J=$L;foreach($L[0]as$y=>$X){if(list($R,$t,$B)=$this->_foreignColumn($xc,$y)){$Wc=array();foreach($L
  1589. as$K)$Wc[$K[$y]]=q($K[$y]);$Bb=$this->_values[$R];if(!$Bb)$Bb=get_key_vals("SELECT $t, $B FROM ".table($R)." WHERE $t IN (".implode(", ",$Wc).")");foreach($L
  1590. as$Zd=>$K){if(isset($K[$y]))$J[$Zd][$y]=(string)$Bb[$K[$y]];}}}return$J;}function
  1591. selectLink($X,$p){}function
  1592. selectVal($X,$_,$p,$ue){$J=$X;$_=h($_);if(preg_match('~blob|bytea~',$p["type"])&&!is_utf8($X)){$J=lang(40,strlen($ue));if(preg_match("~^(GIF|\xFF\xD8\xFF|\x89PNG\x0D\x0A\x1A\x0A)~",$ue))$J="<img src='$_' alt='$J'>";}if(like_bool($p)&&$J!="")$J=(preg_match('~^(1|t|true|y|yes|on)$~i',$X)?lang(41):lang(42));if($_)$J="<a href='$_'".(is_url($_)?target_blank():"").">$J</a>";if(!$_&&!like_bool($p)&&preg_match(number_type(),$p["type"]))$J="<div class='number'>$J</div>";elseif(preg_match('~date~',$p["type"]))$J="<div class='datetime'>$J</div>";return$J;}function
  1593. editVal($X,$p){if(preg_match('~date|timestamp~',$p["type"])&&$X!==null)return
  1594. preg_replace('~^(\d{2}(\d+))-(0?(\d+))-(0?(\d+))~',lang(43),$X);return$X;}function
  1595. selectColumnsPrint($M,$f){}function
  1596. selectSearchPrint($Z,$f,$w){$Z=(array)$_GET["where"];echo'<fieldset id="fieldset-search"><legend>'.lang(44)."</legend><div>\n";$td=array();foreach($Z
  1597. as$y=>$X)$td[$X["col"]]=$y;$s=0;$q=fields($_GET["select"]);foreach($f
  1598. as$B=>$Ab){$p=$q[$B];if(preg_match("~enum~",$p["type"])||like_bool($p)){$y=$td[$B];$s--;echo"<div>".h($Ab)."<input type='hidden' name='where[$s][col]' value='".h($B)."'>:",(like_bool($p)?" <select name='where[$s][val]'>".optionlist(array(""=>"",lang(42),lang(41)),$Z[$y]["val"],true)."</select>":enum_input("checkbox"," name='where[$s][val][]'",$p,(array)$Z[$y]["val"],($p["null"]?0:null))),"</div>\n";unset($f[$B]);}elseif(is_array($C=$this->_foreignKeyOptions($_GET["select"],$B))){if($q[$B]["null"])$C[0]='('.lang(7).')';$y=$td[$B];$s--;echo"<div>".h($Ab)."<input type='hidden' name='where[$s][col]' value='".h($B)."'><input type='hidden' name='where[$s][op]' value='='>: <select name='where[$s][val]'>".optionlist($C,$Z[$y]["val"],true)."</select></div>\n";unset($f[$B]);}}$s=0;foreach($Z
  1599. as$X){if(($X["col"]==""||$f[$X["col"]])&&"$X[col]$X[val]"!=""){echo"<div><select name='where[$s][col]'><option value=''>(".lang(45).")".optionlist($f,$X["col"],true)."</select>",html_select("where[$s][op]",array(-1=>"")+$this->operators,$X["op"]),"<input type='search' name='where[$s][val]' value='".h($X["val"])."'>".script("mixin(qsl('input'), {onkeydown: selectSearchKeydown, onsearch: selectSearchSearch});","")."</div>\n";$s++;}}echo"<div><select name='where[$s][col]'><option value=''>(".lang(45).")".optionlist($f,null,true)."</select>",script("qsl('select').onchange = selectAddRow;",""),html_select("where[$s][op]",array(-1=>"")+$this->operators),"<input type='search' name='where[$s][val]'></div>",script("mixin(qsl('input'), {onchange: function () { this.parentNode.firstChild.onchange(); }, onsearch: selectSearchSearch});"),"</div></fieldset>\n";}function
  1600. selectOrderPrint($se,$f,$w){$te=array();foreach($w
  1601. as$y=>$v){$se=array();foreach($v["columns"]as$X)$se[]=$f[$X];if(count(array_filter($se,'strlen'))>1&&$y!="PRIMARY")$te[$y]=implode(", ",$se);}if($te){echo'<fieldset><legend>'.lang(46)."</legend><div>","<select name='index_order'>".optionlist(array(""=>"")+$te,($_GET["order"][0]!=""?"":$_GET["index_order"]),true)."</select>","</div></fieldset>\n";}if($_GET["order"])echo"<div style='display: none;'>".hidden_fields(array("order"=>array(1=>reset($_GET["order"])),"desc"=>($_GET["desc"]?array(1=>1):array()),))."</div>\n";}function
  1602. selectLimitPrint($z){echo"<fieldset><legend>".lang(47)."</legend><div>";echo
  1603. html_select("limit",array("","50","100"),$z),"</div></fieldset>\n";}function
  1604. selectLengthPrint($eg){}function
  1605. selectActionPrint($w){echo"<fieldset><legend>".lang(48)."</legend><div>","<input type='submit' value='".lang(49)."'>","</div></fieldset>\n";}function
  1606. selectCommandPrint(){return
  1607. true;}function
  1608. selectImportPrint(){return
  1609. true;}function
  1610. selectEmailPrint($Qb,$f){if($Qb){print_fieldset("email",lang(50),$_POST["email_append"]);echo"<div>",script("qsl('div').onkeydown = partialArg(bodyKeydown, 'email');"),"<p>".lang(51).": <input name='email_from' value='".h($_POST?$_POST["email_from"]:$_COOKIE["adminer_email"])."'>\n",lang(52).": <input name='email_subject' value='".h($_POST["email_subject"])."'>\n","<p><textarea name='email_message' rows='15' cols='75'>".h($_POST["email_message"].($_POST["email_append"]?'{$'."$_POST[email_addition]}":""))."</textarea>\n","<p>".script("qsl('p').onkeydown = partialArg(bodyKeydown, 'email_append');","").html_select("email_addition",$f,$_POST["email_addition"])."<input type='submit' name='email_append' value='".lang(11)."'>\n";echo"<p>".lang(53).": <input type='file' name='email_files[]'>".script("qsl('input').onchange = emailFileChange;"),"<p>".(count($Qb)==1?'<input type="hidden" name="email_field" value="'.h(key($Qb)).'">':html_select("email_field",$Qb)),"<input type='submit' name='email' value='".lang(54)."'>".confirm(),"</div>\n","</div></fieldset>\n";}}function
  1611. selectColumnsProcess($f,$w){return
  1612. array(array(),array());}function
  1613. selectSearchProcess($q,$w){$J=array();foreach((array)$_GET["where"]as$y=>$Z){$db=$Z["col"];$ne=$Z["op"];$X=$Z["val"];if(($y<0?"":$db).$X!=""){$kb=array();foreach(($db!=""?array($db=>$q[$db]):$q)as$B=>$p){if($db!=""||is_numeric($X)||!preg_match(number_type(),$p["type"])){$B=idf_escape($B);if($db!=""&&$p["type"]=="enum")$kb[]=(in_array(0,$X)?"$B IS NULL OR ":"")."$B IN (".implode(", ",array_map('intval',$X)).")";else{$fg=preg_match('~char|text|enum|set~',$p["type"]);$Y=$this->processInput($p,(!$ne&&$fg&&preg_match('~^[^%]+$~',$X)?"%$X%":$X));$kb[]=$B.($Y=="NULL"?" IS".($ne==">="?" NOT":"")." $Y":(in_array($ne,$this->operators)||$ne=="="?" $ne $Y":($fg?" LIKE $Y":" IN (".str_replace(",","', '",$Y).")")));if($y<0&&$X=="0")$kb[]="$B IS NULL";}}}$J[]=($kb?"(".implode(" OR ",$kb).")":"1 = 0");}}return$J;}function
  1614. selectOrderProcess($q,$w){$Zc=$_GET["index_order"];if($Zc!="")unset($_GET["order"][1]);if($_GET["order"])return
  1615. array(idf_escape(reset($_GET["order"])).($_GET["desc"]?" DESC":""));foreach(($Zc!=""?array($w[$Zc]):$w)as$v){if($Zc!=""||$v["type"]=="INDEX"){$Kc=array_filter($v["descs"]);$Ab=false;foreach($v["columns"]as$X){if(preg_match('~date|timestamp~',$q[$X]["type"])){$Ab=true;break;}}$J=array();foreach($v["columns"]as$y=>$X)$J[]=idf_escape($X).(($Kc?$v["descs"][$y]:$Ab)?" DESC":"");return$J;}}return
  1616. array();}function
  1617. selectLimitProcess(){return(isset($_GET["limit"])?$_GET["limit"]:"50");}function
  1618. selectLengthProcess(){return"100";}function
  1619. selectEmailProcess($Z,$xc){if($_POST["email_append"])return
  1620. true;if($_POST["email"]){$vf=0;if($_POST["all"]||$_POST["check"]){$p=idf_escape($_POST["email_field"]);$Tf=$_POST["email_subject"];$Sd=$_POST["email_message"];preg_match_all('~\{\$([a-z0-9_]+)\}~i',"$Tf.$Sd",$Md);$L=get_rows("SELECT DISTINCT $p".($Md[1]?", ".implode(", ",array_map('idf_escape',array_unique($Md[1]))):"")." FROM ".table($_GET["select"])." WHERE $p IS NOT NULL AND $p != ''".($Z?" AND ".implode(" AND ",$Z):"").($_POST["all"]?"":" AND ((".implode(") OR (",array_map('where_check',(array)$_POST["check"]))."))"));$q=fields($_GET["select"]);foreach($this->rowDescriptions($L,$xc)as$K){$ef=array('{\\'=>'{');foreach($Md[1]as$X)$ef['{$'."$X}"]=$this->editVal($K[$X],$q[$X]);$Pb=$K[$_POST["email_field"]];if(is_mail($Pb)&&send_mail($Pb,strtr($Tf,$ef),strtr($Sd,$ef),$_POST["email_from"],$_FILES["email_files"]))$vf++;}}cookie("adminer_email",$_POST["email_from"]);redirect(remove_from_uri(),lang(55,$vf));}return
  1621. false;}function
  1622. selectQueryBuild($M,$Z,$Fc,$se,$z,$D){return"";}function
  1623. messageQuery($G,$gg,$hc=false){return" <span class='time'>".@date("H:i:s")."</span><!--\n".str_replace("--","--><!-- ",$G)."\n".($gg?"($gg)\n":"")."-->";}function
  1624. editFunctions($p){$J=array();if($p["null"]&&preg_match('~blob~',$p["type"]))$J["NULL"]=lang(7);$J[""]=($p["null"]||$p["auto_increment"]||like_bool($p)?"":"*");if(preg_match('~date|time~',$p["type"]))$J["now"]=lang(56);if(preg_match('~_(md5|sha1)$~i',$p["field"],$A))$J[]=strtolower($A[1]);return$J;}function
  1625. editInput($R,$p,$Da,$Y){if($p["type"]=="enum")return(isset($_GET["select"])?"<label><input type='radio'$Da value='-1' checked><i>".lang(8)."</i></label> ":"").enum_input("radio",$Da,$p,($Y||isset($_GET["select"])?$Y:0),($p["null"]?"":null));$C=$this->_foreignKeyOptions($R,$p["field"],$Y);if($C!==null)return(is_array($C)?"<select$Da>".optionlist($C,$Y,true)."</select>":"<input value='".h($Y)."'$Da class='hidden'>"."<input value='".h($C)."' class='jsonly'>"."<div></div>".script("qsl('input').oninput = partial(whisper, '".ME."script=complete&source=".urlencode($R)."&field=".urlencode($p["field"])."&value=');
  1626. qsl('div').onclick = whisperClick;",""));if(like_bool($p))return'<input type="checkbox" value="1"'.(preg_match('~^(1|t|true|y|yes|on)$~i',$Y)?' checked':'')."$Da>";$Qc="";if(preg_match('~time~',$p["type"]))$Qc=lang(57);if(preg_match('~date|timestamp~',$p["type"]))$Qc=lang(58).($Qc?" [$Qc]":"");if($Qc)return"<input value='".h($Y)."'$Da> ($Qc)";if(preg_match('~_(md5|sha1)$~i',$p["field"]))return"<input type='password' value='".h($Y)."'$Da>";return'';}function
  1627. editHint($R,$p,$Y){return(preg_match('~\s+(\[.*\])$~',($p["comment"]!=""?$p["comment"]:$p["field"]),$A)?h(" $A[1]"):'');}function
  1628. processInput($p,$Y,$Dc=""){if($Dc=="now")return"$Dc()";$J=$Y;if(preg_match('~date|timestamp~',$p["type"])&&preg_match('(^'.str_replace('\$1','(?P<p1>\d*)',preg_replace('~(\\\\\\$([2-6]))~','(?P<p\2>\d{1,2})',preg_quote(lang(43)))).'(.*))',$Y,$A))$J=($A["p1"]!=""?$A["p1"]:($A["p2"]!=""?($A["p2"]<70?20:19).$A["p2"]:gmdate("Y")))."-$A[p3]$A[p4]-$A[p5]$A[p6]".end($A);$J=($p["type"]=="bit"&&preg_match('~^[0-9]+$~',$Y)?$J:q($J));if($Y==""&&like_bool($p))$J="'0'";elseif($Y==""&&($p["null"]||!preg_match('~char|text~',$p["type"])))$J="NULL";elseif(preg_match('~^(md5|sha1)$~',$Dc))$J="$Dc($J)";return
  1629. unconvert_field($p,$J);}function
  1630. dumpOutput(){return
  1631. array();}function
  1632. dumpFormat(){return
  1633. array('csv'=>'CSV,','csv;'=>'CSV;','tsv'=>'TSV');}function
  1634. dumpDatabase($m){}function
  1635. dumpTable(){echo"\xef\xbb\xbf";}function
  1636. dumpData($R,$Sf,$G){global$h;$I=$h->query($G,1);if($I){while($K=$I->fetch_assoc()){if($Sf=="table"){dump_csv(array_keys($K));$Sf="INSERT";}dump_csv($K);}}}function
  1637. dumpFilename($Uc){return
  1638. friendly_url($Uc);}function
  1639. dumpHeaders($Uc,$Xd=false){$dc="csv";header("Content-Type: text/csv; charset=utf-8");return$dc;}function
  1640. importServerPath(){}function
  1641. homepage(){return
  1642. true;}function
  1643. navigation($Wd){global$ca;echo'<h1>
  1644. ',$this->name(),' <span class="version">',$ca,'</span>
  1645. <a href="https://www.adminer.org/editor/#download"',target_blank(),' id="version">',(version_compare($ca,$_COOKIE["adminer_version"])<0?h($_COOKIE["adminer_version"]):""),'</a>
  1646. </h1>
  1647. ';if($Wd=="auth"){$pc=true;foreach((array)$_SESSION["pwds"]as$Qg=>$_f){foreach($_f[""]as$V=>$F){if($F!==null){if($pc){echo"<ul id='logins'>",script("mixin(qs('#logins'), {onmouseover: menuOver, onmouseout: menuOut});");$pc=false;}echo"<li><a href='".h(auth_url($Qg,"",$V))."'>".($V!=""?h($V):"<i>".lang(7)."</i>")."</a>\n";}}}}else{$this->databasesPrint($Wd);if($Wd!="db"&&$Wd!="ns"){$S=table_status('',true);if(!$S)echo"<p class='message'>".lang(9)."\n";else$this->tablesPrint($S);}}}function
  1648. databasesPrint($Wd){}function
  1649. tablesPrint($T){echo"<ul id='tables'>",script("mixin(qs('#tables'), {onmouseover: menuOver, onmouseout: menuOut});");foreach($T
  1650. as$K){echo'<li>';$B=$this->tableName($K);if(isset($K["Engine"])&&$B!="")echo"<a href='".h(ME).'select='.urlencode($K["Name"])."'".bold($_GET["select"]==$K["Name"]||$_GET["edit"]==$K["Name"],"select")." title='".lang(59)."'>$B</a>\n";}echo"</ul>\n";}function
  1651. _foreignColumn($xc,$e){foreach((array)$xc[$e]as$wc){if(count($wc["source"])==1){$B=$this->rowDescription($wc["table"]);if($B!=""){$t=idf_escape($wc["target"][0]);return
  1652. array($wc["table"],$t,$B);}}}}function
  1653. _foreignKeyOptions($R,$e,$Y=null){global$h;if(list($bg,$t,$B)=$this->_foreignColumn(column_foreign_keys($R),$e)){$J=&$this->_values[$bg];if($J===null){$S=table_status($bg);$J=($S["Rows"]>1000?"":array(""=>"")+get_key_vals("SELECT $t, $B FROM ".table($bg)." ORDER BY 2"));}if(!$J&&$Y!==null)return$h->result("SELECT $B FROM ".table($bg)." WHERE $t = ".q($Y));return$J;}}}$b=(function_exists('adminer_object')?adminer_object():new
  1654. Adminer);function
  1655. page_header($jg,$o="",$Ra=array(),$kg=""){global$ba,$ca,$b,$Hb,$x;page_headers();if(is_ajax()&&$o){page_messages($o);exit;}$lg=$jg.($kg!=""?": $kg":"");$mg=strip_tags($lg.(SERVER!=""&&SERVER!="localhost"?h(" - ".SERVER):"")." - ".$b->name());echo'<!DOCTYPE html>
  1656. <html lang="',$ba,'" dir="',lang(60),'">
  1657. <meta http-equiv="Content-Type" content="text/html; charset=utf-8">
  1658. <meta name="robots" content="noindex">
  1659. <title>',$mg,'</title>
  1660. <link rel="stylesheet" type="text/css" href="',h(preg_replace("~\\?.*~","",ME)."?file=default.css&version=4.7.2"),'">
  1661. ',script_src(preg_replace("~\\?.*~","",ME)."?file=functions.js&version=4.7.2");if($b->head()){echo'<link rel="shortcut icon" type="image/x-icon" href="',h(preg_replace("~\\?.*~","",ME)."?file=favicon.ico&version=4.7.2"),'">
  1662. <link rel="apple-touch-icon" href="',h(preg_replace("~\\?.*~","",ME)."?file=favicon.ico&version=4.7.2"),'">
  1663. ';foreach($b->css()as$tb){echo'<link rel="stylesheet" type="text/css" href="',h($tb),'">
  1664. ';}}echo'
  1665. <body class="',lang(60),' nojs">
  1666. ';$r=get_temp_dir()."/adminer.version";if(!$_COOKIE["adminer_version"]&&function_exists('openssl_verify')&&file_exists($r)&&filemtime($r)+86400>time()){$Rg=unserialize(file_get_contents($r));$Re="-----BEGIN PUBLIC KEY-----
  1667. MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAwqWOVuF5uw7/+Z70djoK
  1668. RlHIZFZPO0uYRezq90+7Amk+FDNd7KkL5eDve+vHRJBLAszF/7XKXe11xwliIsFs
  1669. DFWQlsABVZB3oisKCBEuI71J4kPH8dKGEWR9jDHFw3cWmoH3PmqImX6FISWbG3B8
  1670. h7FIx3jEaw5ckVPVTeo5JRm/1DZzJxjyDenXvBQ/6o9DgZKeNDgxwKzH+sw9/YCO
  1671. jHnq1cFpOIISzARlrHMa/43YfeNRAm/tsBXjSxembBPo7aQZLAWHmaj5+K19H10B
  1672. nCpz9Y++cipkVEiKRGih4ZEvjoFysEOdRLj6WiD/uUNky4xGeA6LaJqh5XpkFkcQ
  1673. fQIDAQAB
  1674. -----END PUBLIC KEY-----
  1675. ";if(openssl_verify($Rg["version"],base64_decode($Rg["signature"]),$Re)==1)$_COOKIE["adminer_version"]=$Rg["version"];}echo'<script',nonce(),'>
  1676. mixin(document.body, {onkeydown: bodyKeydown, onclick: bodyClick',(isset($_COOKIE["adminer_version"])?"":", onload: partial(verifyVersion, '$ca', '".js_escape(ME)."', '".get_token()."')");?>});
  1677. document.body.className = document.body.className.replace(/ nojs/, ' js');
  1678. var offlineMessage = '<?php echo
  1679. js_escape(lang(61)),'\';
  1680. var thousandsSeparator = \'',js_escape(lang(5)),'\';
  1681. </script>
  1682.  
  1683. <div id="help" class="jush-',$x,' jsonly hidden"></div>
  1684. ',script("mixin(qs('#help'), {onmouseover: function () { helpOpen = 1; }, onmouseout: helpMouseout});"),'
  1685. <div id="content">
  1686. ';if($Ra!==null){$_=substr(preg_replace('~\b(username|db|ns)=[^&]*&~','',ME),0,-1);echo'<p id="breadcrumb"><a href="'.h($_?$_:".").'">'.$Hb[DRIVER].'</a> &raquo; ';$_=substr(preg_replace('~\b(db|ns)=[^&]*&~','',ME),0,-1);$O=$b->serverName(SERVER);$O=($O!=""?$O:lang(62));if($Ra===false)echo"$O\n";else{echo"<a href='".($_?h($_):".")."' accesskey='1' title='Alt+Shift+1'>$O</a> &raquo; ";if($_GET["ns"]!=""||(DB!=""&&is_array($Ra)))echo'<a href="'.h($_."&db=".urlencode(DB).(support("scheme")?"&ns=":"")).'">'.h(DB).'</a> &raquo; ';if(is_array($Ra)){if($_GET["ns"]!="")echo'<a href="'.h(substr(ME,0,-1)).'">'.h($_GET["ns"]).'</a> &raquo; ';foreach($Ra
  1687. as$y=>$X){$Ab=(is_array($X)?$X[1]:h($X));if($Ab!="")echo"<a href='".h(ME."$y=").urlencode(is_array($X)?$X[0]:$X)."'>$Ab</a> &raquo; ";}}echo"$jg\n";}}echo"<h2>$lg</h2>\n","<div id='ajaxstatus' class='jsonly hidden'></div>\n";restart_session();page_messages($o);$l=&get_session("dbs");if(DB!=""&&$l&&!in_array(DB,$l,true))$l=null;stop_session();define("PAGE_HEADER",1);}function
  1688. 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$sb){$Nc=array();foreach($sb
  1689. as$y=>$X)$Nc[]="$y $X";header("Content-Security-Policy: ".implode("; ",$Nc));}$b->headers();}function
  1690. csp(){return
  1691. 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
  1692. get_nonce(){static$de;if(!$de)$de=base64_encode(rand_string());return$de;}function
  1693. page_messages($o){$Jg=preg_replace('~^[^?]*~','',$_SERVER["REQUEST_URI"]);$Td=$_SESSION["messages"][$Jg];if($Td){echo"<div class='message'>".implode("</div>\n<div class='message'>",$Td)."</div>".script("messagesPrint();");unset($_SESSION["messages"][$Jg]);}if($o)echo"<div class='error'>$o</div>\n";}function
  1694. page_footer($Wd=""){global$b,$pg;echo'</div>
  1695.  
  1696. ';switch_lang();if($Wd!="auth"){echo'<form action="" method="post">
  1697. <p class="logout">
  1698. <input type="submit" name="logout" value="',lang(63),'" id="logout">
  1699. <input type="hidden" name="token" value="',$pg,'">
  1700. </p>
  1701. </form>
  1702. ';}echo'<div id="menu">
  1703. ';$b->navigation($Wd);echo'</div>
  1704. ',script("setupSubmitHighlight(document);");}function
  1705. int32($Zd){while($Zd>=2147483648)$Zd-=4294967296;while($Zd<=-2147483649)$Zd+=4294967296;return(int)$Zd;}function
  1706. long2str($W,$Vg){$nf='';foreach($W
  1707. as$X)$nf.=pack('V',$X);if($Vg)return
  1708. substr($nf,0,end($W));return$nf;}function
  1709. str2long($nf,$Vg){$W=array_values(unpack('V*',str_pad($nf,4*ceil(strlen($nf)/4),"\0")));if($Vg)$W[]=strlen($nf);return$W;}function
  1710. xxtea_mx($gh,$fh,$Vf,$pd){return
  1711. int32((($gh>>5&0x7FFFFFF)^$fh<<2)+(($fh>>3&0x1FFFFFFF)^$gh<<4))^int32(($Vf^$fh)+($pd^$gh));}function
  1712. encrypt_string($Qf,$y){if($Qf=="")return"";$y=array_values(unpack("V*",pack("H*",md5($y))));$W=str2long($Qf,true);$Zd=count($W)-1;$gh=$W[$Zd];$fh=$W[0];$Se=floor(6+52/($Zd+1));$Vf=0;while($Se-->0){$Vf=int32($Vf+0x9E3779B9);$Lb=$Vf>>2&3;for($xe=0;$xe<$Zd;$xe++){$fh=$W[$xe+1];$Yd=xxtea_mx($gh,$fh,$Vf,$y[$xe&3^$Lb]);$gh=int32($W[$xe]+$Yd);$W[$xe]=$gh;}$fh=$W[0];$Yd=xxtea_mx($gh,$fh,$Vf,$y[$xe&3^$Lb]);$gh=int32($W[$Zd]+$Yd);$W[$Zd]=$gh;}return
  1713. long2str($W,false);}function
  1714. decrypt_string($Qf,$y){if($Qf=="")return"";if(!$y)return
  1715. false;$y=array_values(unpack("V*",pack("H*",md5($y))));$W=str2long($Qf,false);$Zd=count($W)-1;$gh=$W[$Zd];$fh=$W[0];$Se=floor(6+52/($Zd+1));$Vf=int32($Se*0x9E3779B9);while($Vf){$Lb=$Vf>>2&3;for($xe=$Zd;$xe>0;$xe--){$gh=$W[$xe-1];$Yd=xxtea_mx($gh,$fh,$Vf,$y[$xe&3^$Lb]);$fh=int32($W[$xe]-$Yd);$W[$xe]=$fh;}$gh=$W[$Zd];$Yd=xxtea_mx($gh,$fh,$Vf,$y[$xe&3^$Lb]);$fh=int32($W[0]-$Yd);$W[0]=$fh;$Vf=int32($Vf-0x9E3779B9);}return
  1716. long2str($W,true);}$h='';$Mc=$_SESSION["token"];if(!$Mc)$_SESSION["token"]=rand(1,1e6);$pg=get_token();$Fe=array();if($_COOKIE["adminer_permanent"]){foreach(explode(" ",$_COOKIE["adminer_permanent"])as$X){list($y)=explode(":",$X);$Fe[$y]=$X;}}function
  1717. add_invalid_login(){global$b;$Bc=file_open_lock(get_temp_dir()."/adminer.invalid");if(!$Bc)return;$ld=unserialize(stream_get_contents($Bc));$gg=time();if($ld){foreach($ld
  1718. as$md=>$X){if($X[0]<$gg)unset($ld[$md]);}}$kd=&$ld[$b->bruteForceKey()];if(!$kd)$kd=array($gg+30*60,0);$kd[1]++;file_write_unlock($Bc,serialize($ld));}function
  1719. check_invalid_login(){global$b;$ld=unserialize(@file_get_contents(get_temp_dir()."/adminer.invalid"));$kd=$ld[$b->bruteForceKey()];$ce=($kd[1]>29?$kd[0]-time():0);if($ce>0)auth_error(lang(64,ceil($ce/60)));}$Ea=$_POST["auth"];if($Ea){session_regenerate_id();$Qg=$Ea["driver"];$O=$Ea["server"];$V=$Ea["username"];$F=(string)$Ea["password"];$m=$Ea["db"];set_password($Qg,$O,$V,$F);$_SESSION["db"][$Qg][$O][$V][$m]=true;if($Ea["permanent"]){$y=base64_encode($Qg)."-".base64_encode($O)."-".base64_encode($V)."-".base64_encode($m);$Oe=$b->permanentLogin(true);$Fe[$y]="$y:".base64_encode($Oe?encrypt_string($F,$Oe):"");cookie("adminer_permanent",implode(" ",$Fe));}if(count($_POST)==1||DRIVER!=$Qg||SERVER!=$O||$_GET["username"]!==$V||DB!=$m)redirect(auth_url($Qg,$O,$V,$m));}elseif($_POST["logout"]){if($Mc&&!verify_token()){page_header(lang(63),lang(65));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(66).' '.lang(67));}}elseif($Fe&&!$_SESSION["pwds"]){session_regenerate_id();$Oe=$b->permanentLogin();foreach($Fe
  1720. as$y=>$X){list(,$Za)=explode(":",$X);list($Qg,$O,$V,$m)=array_map('base64_decode',explode("-",$y));set_password($Qg,$O,$V,decrypt_string(base64_decode($Za),$Oe));$_SESSION["db"][$Qg][$O][$V][$m]=true;}}function
  1721. unset_permanent(){global$Fe;foreach($Fe
  1722. as$y=>$X){list($Qg,$O,$V,$m)=array_map('base64_decode',explode("-",$y));if($Qg==DRIVER&&$O==SERVER&&$V==$_GET["username"]&&$m==DB)unset($Fe[$y]);}cookie("adminer_permanent",implode(" ",$Fe));}function
  1723. auth_error($o){global$b,$Mc;$Af=session_name();if(isset($_GET["username"])){header("HTTP/1.1 403 Forbidden");if(($_COOKIE[$Af]||$_GET[$Af])&&!$Mc)$o=lang(68);else{restart_session();add_invalid_login();$F=get_password();if($F!==null){if($F===false)$o.='<br>'.lang(69,target_blank(),'<code>permanentLogin()</code>');set_password(DRIVER,SERVER,$_GET["username"],null);}unset_permanent();}}if(!$_COOKIE[$Af]&&$_GET[$Af]&&ini_bool("session.use_only_cookies"))$o=lang(70);$E=session_get_cookie_params();cookie("adminer_key",($_COOKIE["adminer_key"]?$_COOKIE["adminer_key"]:rand_string()),$E["lifetime"]);page_header(lang(37),$o,null);echo"<form action='' method='post'>\n","<div>";if(hidden_fields($_POST,array("auth")))echo"<p class='message'>".lang(71)."\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(72),lang(73,implode(", ",$Je)),false);page_footer("auth");exit;}stop_session(true);if(isset($_GET["username"])&&is_string(get_password())){list($Sc,$He)=explode(":",SERVER,2);if(is_numeric($He)&&$He<1024)auth_error(lang(74));check_invalid_login();$h=connect();$n=new
  1724. Min_Driver($h);}$Gd=null;if(!is_object($h)||($Gd=$b->login($_GET["username"],get_password()))!==true){$o=(is_string($h)?h($h):(is_string($Gd)?$Gd:lang(75)));auth_error($o.(preg_match('~^ | $~',get_password())?'<br>'.lang(76):''));}if($Ea&&$_POST["token"])$_POST["token"]=$pg;$o='';if($_POST){if(!verify_token()){$gd="max_input_vars";$Qd=ini_get($gd);if(extension_loaded("suhosin")){foreach(array("suhosin.request.max_vars","suhosin.post.max_vars")as$y){$X=ini_get($y);if($X&&(!$Qd||$X<$Qd)){$gd=$y;$Qd=$X;}}}$o=(!$_POST["token"]&&$Qd?lang(77,"'$gd'"):lang(65).' '.lang(78));}}elseif($_SERVER["REQUEST_METHOD"]=="POST"){$o=lang(79,"'post_max_size'");if(isset($_GET["sql"]))$o.=' '.lang(80);}function
  1725. email_header($Nc){return"=?UTF-8?B?".base64_encode($Nc)."?=";}function
  1726. send_mail($Pb,$Tf,$Sd,$Cc="",$nc=array()){$Vb=(DIRECTORY_SEPARATOR=="/"?"\n":"\r\n");$Sd=str_replace("\n",$Vb,wordwrap(str_replace("\r","","$Sd\n")));$Qa=uniqid("boundary");$Ba="";foreach((array)$nc["error"]as$y=>$X){if(!$X)$Ba.="--$Qa$Vb"."Content-Type: ".str_replace("\n","",$nc["type"][$y]).$Vb."Content-Disposition: attachment; filename=\"".preg_replace('~["\n]~','',$nc["name"][$y])."\"$Vb"."Content-Transfer-Encoding: base64$Vb$Vb".chunk_split(base64_encode(file_get_contents($nc["tmp_name"][$y])),76,$Vb).$Vb;}$La="";$Oc="Content-Type: text/plain; charset=utf-8$Vb"."Content-Transfer-Encoding: 8bit";if($Ba){$Ba.="--$Qa--$Vb";$La="--$Qa$Vb$Oc$Vb$Vb";$Oc="Content-Type: multipart/mixed; boundary=\"$Qa\"";}$Oc.=$Vb."MIME-Version: 1.0$Vb"."X-Mailer: Adminer Editor".($Cc?$Vb."From: ".str_replace("\n","",$Cc):"");return
  1727. mail($Pb,email_header($Tf),$La.$Sd.$Ba,$Oc);}function
  1728. like_bool($p){return
  1729. preg_match("~bool|(tinyint|bit)\\(1\\)~",$p["full_type"]);}$h->select_db($b->database());$ke="RESTRICT|NO ACTION|CASCADE|SET NULL|SET DEFAULT";$Hb[DRIVER]=lang(37);if(isset($_GET["select"])&&($_POST["edit"]||$_POST["clone"])&&!$_POST["save"])$_GET["edit"]=$_GET["select"];if(isset($_GET["download"])){$a=$_GET["download"];$q=fields($a);header("Content-Type: application/octet-stream");header("Content-Disposition: attachment; filename=".friendly_url("$a-".implode("_",$_GET["where"])).".".friendly_url($_GET["field"]));$M=array(idf_escape($_GET["field"]));$I=$n->select($a,$M,array(where($_GET,$q)),$M);$K=($I?$I->fetch_row():array());echo$n->value($K[0],$q[$_GET["field"]]);exit;}elseif(isset($_GET["edit"])){$a=$_GET["edit"];$q=fields($a);$Z=(isset($_GET["select"])?($_POST["check"]&&count($_POST["check"])==1?where_check($_POST["check"][0],$q):""):where($_GET,$q));$Ig=(isset($_GET["select"])?$_POST["edit"]:$Z);foreach($q
  1730. as$B=>$p){if(!isset($p["privileges"][$Ig?"update":"insert"])||$b->fieldName($p)=="")unset($q[$B]);}if($_POST&&!$o&&!isset($_GET["select"])){$Fd=$_POST["referer"];if($_POST["insert"])$Fd=($Ig?null:$_SERVER["REQUEST_URI"]);elseif(!preg_match('~^.+&select=.+$~',$Fd))$Fd=ME."select=".urlencode($a);$w=indexes($a);$Dg=unique_array($_GET["where"],$w);$Ue="\nWHERE $Z";if(isset($_POST["delete"]))queries_redirect($Fd,lang(81),$n->delete($a,$Ue,!$Dg));else{$P=array();foreach($q
  1731. as$B=>$p){$X=process_input($p);if($X!==false&&$X!==null)$P[idf_escape($B)]=$X;}if($Ig){if(!$P)redirect($Fd);queries_redirect($Fd,lang(82),$n->update($a,$P,$Ue,!$Dg));if(is_ajax()){page_headers();page_messages($o);exit;}}else{$I=$n->insert($a,$P);$_d=($I?last_id():0);queries_redirect($Fd,lang(83,($_d?" $_d":"")),$I);}}}$K=null;if($_POST["save"])$K=(array)$_POST["fields"];elseif($Z){$M=array();foreach($q
  1732. as$B=>$p){if(isset($p["privileges"]["select"])){$_a=convert_field($p);if($_POST["clone"]&&$p["auto_increment"])$_a="''";if($x=="sql"&&preg_match("~enum|set~",$p["type"]))$_a="1*".idf_escape($B);$M[]=($_a?"$_a AS ":"").idf_escape($B);}}$K=array();if(!support("table"))$M=array("*");if($M){$I=$n->select($a,$M,array($Z),$M,array(),(isset($_GET["select"])?2:1));if(!$I)$o=error();else{$K=$I->fetch_assoc();if(!$K)$K=false;}if(isset($_GET["select"])&&(!$K||$I->fetch_assoc()))$K=null;}}if(!support("table")&&!$q){if(!$Z){$I=$n->select($a,array("*"),$Z,array("*"));$K=($I?$I->fetch_assoc():false);if(!$K)$K=array($n->primary=>"");}if($K){foreach($K
  1733. as$y=>$X){if(!$Z)$K[$y]=null;$q[$y]=array("field"=>$y,"null"=>($y!=$n->primary),"auto_increment"=>($y==$n->primary));}}}edit_form($a,$q,$K,$Ig);}elseif(isset($_GET["select"])){$a=$_GET["select"];$S=table_status1($a);$w=indexes($a);$q=fields($a);$zc=column_foreign_keys($a);$je=$S["Oid"];parse_str($_COOKIE["adminer_import"],$ta);$lf=array();$f=array();$eg=null;foreach($q
  1734. as$y=>$p){$B=$b->fieldName($p);if(isset($p["privileges"]["select"])&&$B!=""){$f[$y]=html_entity_decode(strip_tags($B),ENT_QUOTES);if(is_shortable($p))$eg=$b->selectLengthProcess();}$lf+=$p["privileges"];}list($M,$Fc)=$b->selectColumnsProcess($f,$w);$nd=count($Fc)<count($M);$Z=$b->selectSearchProcess($q,$w);$se=$b->selectOrderProcess($q,$w);$z=$b->selectLimitProcess();if($_GET["val"]&&is_ajax()){header("Content-Type: text/plain; charset=utf-8");foreach($_GET["val"]as$Eg=>$K){$_a=convert_field($q[key($K)]);$M=array($_a?$_a:idf_escape(key($K)));$Z[]=where_check($Eg,$q);$J=$n->select($a,$M,$Z,$M);if($J)echo
  1735. reset($J->fetch_row());}exit;}$Le=$Gg=null;foreach($w
  1736. as$v){if($v["type"]=="PRIMARY"){$Le=array_flip($v["columns"]);$Gg=($M?$Le:array());foreach($Gg
  1737. as$y=>$X){if(in_array(idf_escape($y),$M))unset($Gg[$y]);}break;}}if($je&&!$Le){$Le=$Gg=array($je=>0);$w[]=array("type"=>"PRIMARY","columns"=>array($je));}if($_POST&&!$o){$ah=$Z;if(!$_POST["all"]&&is_array($_POST["check"])){$Xa=array();foreach($_POST["check"]as$Ua)$Xa[]=where_check($Ua,$q);$ah[]="((".implode(") OR (",$Xa)."))";}$ah=($ah?"\nWHERE ".implode(" AND ",$ah):"");if($_POST["export"]){cookie("adminer_import","output=".urlencode($_POST["output"])."&format=".urlencode($_POST["format"]));dump_headers($a);$b->dumpTable($a,"");$Cc=($M?implode(", ",$M):"*").convert_fields($f,$q,$M)."\nFROM ".table($a);$Hc=($Fc&&$nd?"\nGROUP BY ".implode(", ",$Fc):"").($se?"\nORDER BY ".implode(", ",$se):"");if(!is_array($_POST["check"])||$Le)$G="SELECT $Cc$ah$Hc";else{$Cg=array();foreach($_POST["check"]as$X)$Cg[]="(SELECT".limit($Cc,"\nWHERE ".($Z?implode(" AND ",$Z)." AND ":"").where_check($X,$q).$Hc,1).")";$G=implode(" UNION ALL ",$Cg);}$b->dumpData($a,"table",$G);exit;}if(!$b->selectEmailProcess($Z,$zc)){if($_POST["save"]||$_POST["delete"]){$I=true;$ua=0;$P=array();if(!$_POST["delete"]){foreach($f
  1738. as$B=>$X){$X=process_input($q[$B]);if($X!==null&&($_POST["clone"]||$X!==false))$P[idf_escape($B)]=($X!==false?$X:idf_escape($B));}}if($_POST["delete"]||$P){if($_POST["clone"])$G="INTO ".table($a)." (".implode(", ",array_keys($P)).")\nSELECT ".implode(", ",$P)."\nFROM ".table($a);if($_POST["all"]||($Le&&is_array($_POST["check"]))||$nd){$I=($_POST["delete"]?$n->delete($a,$ah):($_POST["clone"]?queries("INSERT $G$ah"):$n->update($a,$P,$ah)));$ua=$h->affected_rows;}else{foreach((array)$_POST["check"]as$X){$Wg="\nWHERE ".($Z?implode(" AND ",$Z)." AND ":"").where_check($X,$q);$I=($_POST["delete"]?$n->delete($a,$Wg,1):($_POST["clone"]?queries("INSERT".limit1($a,$G,$Wg)):$n->update($a,$P,$Wg,1)));if(!$I)break;$ua+=$h->affected_rows;}}}$Sd=lang(84,$ua);if($_POST["clone"]&&$I&&$ua==1){$_d=last_id();if($_d)$Sd=lang(83," $_d");}queries_redirect(remove_from_uri($_POST["all"]&&$_POST["delete"]?"page":""),$Sd,$I);if(!$_POST["delete"]){edit_form($a,$q,(array)$_POST["fields"],!$_POST["clone"]);page_footer();exit;}}elseif(!$_POST["import"]){if(!$_POST["val"])$o=lang(85);else{$I=true;$ua=0;foreach($_POST["val"]as$Eg=>$K){$P=array();foreach($K
  1739. as$y=>$X){$y=bracket_escape($y,1);$P[idf_escape($y)]=(preg_match('~char|text~',$q[$y]["type"])||$X!=""?$b->processInput($q[$y],$X):"NULL");}$I=$n->update($a,$P," WHERE ".($Z?implode(" AND ",$Z)." AND ":"").where_check($Eg,$q),!$nd&&!$Le," ");if(!$I)break;$ua+=$h->affected_rows;}queries_redirect(remove_from_uri(),lang(84,$ua),$I);}}elseif(!is_string($mc=get_file("csv_file",true)))$o=upload_error($mc);elseif(!preg_match('~~u',$mc))$o=lang(86);else{cookie("adminer_import","output=".urlencode($ta["output"])."&format=".urlencode($_POST["separator"]));$I=true;$gb=array_keys($q);preg_match_all('~(?>"[^"]*"|[^"\r\n]+)+~',$mc,$Md);$ua=count($Md[0]);$n->begin();$N=($_POST["separator"]=="csv"?",":($_POST["separator"]=="tsv"?"\t":";"));$L=array();foreach($Md[0]as$y=>$X){preg_match_all("~((?>\"[^\"]*\")+|[^$N]*)$N~",$X.$N,$Nd);if(!$y&&!array_diff($Nd[1],$gb)){$gb=$Nd[1];$ua--;}else{$P=array();foreach($Nd[1]as$s=>$db)$P[idf_escape($gb[$s])]=($db==""&&$q[$gb[$s]]["null"]?"NULL":q(str_replace('""','"',preg_replace('~^"|"$~','',$db))));$L[]=$P;}}$I=(!$L||$n->insertUpdate($a,$L,$Le));if($I)$I=$n->commit();queries_redirect(remove_from_uri("page"),lang(87,$ua),$I);$n->rollback();}}}$Yf=$b->tableName($S);if(is_ajax()){page_headers();ob_start();}else
  1740. page_header(lang(49).": $Yf",$o);$P=null;if(isset($lf["insert"])||!support("table")){$P="";foreach((array)$_GET["where"]as$X){if($zc[$X["col"]]&&count($zc[$X["col"]])==1&&($X["op"]=="="||(!$X["op"]&&!preg_match('~[_%]~',$X["val"]))))$P.="&set".urlencode("[".bracket_escape($X["col"])."]")."=".urlencode($X["val"]);}}$b->selectLinks($S,$P);if(!$f&&support("table"))echo"<p class='error'>".lang(88).($q?".":": ".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($M,$f);$b->selectSearchPrint($Z,$f,$w);$b->selectOrderPrint($se,$f,$w);$b->selectLimitPrint($z);$b->selectLengthPrint($eg);$b->selectActionPrint($w);echo"</form>\n";$D=$_GET["page"];if($D=="last"){$Ac=$h->result(count_rows($a,$Z,$nd,$Fc));$D=floor(max(0,$Ac-1)/$z);}$sf=$M;$Gc=$Fc;if(!$sf){$sf[]="*";$pb=convert_fields($f,$q,$M);if($pb)$sf[]=substr($pb,2);}foreach($M
  1741. as$y=>$X){$p=$q[idf_unescape($X)];if($p&&($_a=convert_field($p)))$sf[$y]="$_a AS $X";}if(!$nd&&$Gg){foreach($Gg
  1742. as$y=>$X){$sf[]=idf_escape($y);if($Gc)$Gc[]=idf_escape($y);}}$I=$n->select($a,$sf,$Z,$Gc,$se,$z,$D,true);if(!$I)echo"<p class='error'>".error()."\n";else{if($x=="mssql"&&$D)$I->seek($z*$D);$Rb=array();echo"<form action='' method='post' enctype='multipart/form-data'>\n";$L=array();while($K=$I->fetch_assoc()){if($D&&$x=="oracle")unset($K["RNUM"]);$L[]=$K;}if($_GET["page"]!="last"&&$z!=""&&$Fc&&$nd&&$x=="sql")$Ac=$h->result(" SELECT FOUND_ROWS()");if(!$L)echo"<p class='message'>".lang(12)."\n";else{$Ka=$b->backwardKeys($a,$Yf);echo"<div class='scrollable'>","<table id='table' cellspacing='0' class='nowrap checkable'>",script("mixin(qs('#table'), {onclick: tableClick, ondblclick: partialArg(tableClick, true), onkeydown: editingKeydown});"),"<thead><tr>".(!$Fc&&$M?"":"<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(89)."</a>");$ae=array();$Ec=array();reset($M);$We=1;foreach($L[0]as$y=>$X){if(!isset($Gg[$y])){$X=$_GET["columns"][key($M)];$p=$q[$M?($X?$X["col"]:current($M)):$y];$B=($p?$b->fieldName($p,$We):($X["fun"]?"*":$y));if($B!=""){$We++;$ae[$y]=$B;$e=idf_escape($y);$Tc=remove_from_uri('(order|desc)[^=]*|page').'&order%5B0%5D='.urlencode($y);$Ab="&desc%5B0%5D=1";echo"<th>".script("mixin(qsl('th'), {onmouseover: partial(columnMouse), onmouseout: partial(columnMouse, ' hidden')});",""),'<a href="'.h($Tc.($se[0]==$e||$se[0]==$y||(!$se&&$nd&&$Fc[0]==$e)?$Ab:'')).'">';echo
  1743. apply_sql_function($X["fun"],$B)."</a>";echo"<span class='column hidden'>","<a href='".h($Tc.$Ab)."' title='".lang(90)."' class='text'> ↓</a>";if(!$X["fun"]){echo'<a href="#fieldset-search" title="'.lang(44).'" class="text jsonly"> =</a>',script("qsl('a').onclick = partial(selectSearch, '".js_escape($y)."');");}echo"</span>";}$Ec[$y]=$X["fun"];next($M);}}$Cd=array();if($_GET["modify"]){foreach($L
  1744. as$K){foreach($K
  1745. as$y=>$X)$Cd[$y]=max($Cd[$y],min(40,strlen(utf8_decode($X))));}}echo($Ka?"<th>".lang(91):"")."</thead>\n";if(is_ajax()){if($z%2==1&&$D%2==1)odd();ob_end_clean();}foreach($b->rowDescriptions($L,$zc)as$Zd=>$K){$Dg=unique_array($L[$Zd],$w);if(!$Dg){$Dg=array();foreach($L[$Zd]as$y=>$X){if(!preg_match('~^(COUNT\((\*|(DISTINCT )?`(?:[^`]|``)+`)\)|(AVG|GROUP_CONCAT|MAX|MIN|SUM)\(`(?:[^`]|``)+`\))$~',$y))$Dg[$y]=$X;}}$Eg="";foreach($Dg
  1746. as$y=>$X){if(($x=="sql"||$x=="pgsql")&&preg_match('~char|text|enum|set~',$q[$y]["type"])&&strlen($X)>64){$y=(strpos($y,'(')?$y:idf_escape($y));$y="MD5(".($x!='sql'||preg_match("~^utf8~",$q[$y]["collation"])?$y:"CONVERT($y USING ".charset($h).")").")";$X=md5($X);}$Eg.="&".($X!==null?urlencode("where[".bracket_escape($y)."]")."=".urlencode($X):"null%5B%5D=".urlencode($y));}echo"<tr".odd().">".(!$Fc&&$M?"":"<td>".checkbox("check[]",substr($Eg,1),in_array(substr($Eg,1),(array)$_POST["check"])).($nd||information_schema(DB)?"":" <a href='".h(ME."edit=".urlencode($a).$Eg)."' class='edit'>".lang(92)."</a>"));foreach($K
  1747. as$y=>$X){if(isset($ae[$y])){$p=$q[$y];$X=$n->value($X,$p);if($X!=""&&(!isset($Rb[$y])||$Rb[$y]!=""))$Rb[$y]=(is_mail($X)?$ae[$y]:"");$_="";if(preg_match('~blob|bytea|raw|file~',$p["type"])&&$X!="")$_=ME.'download='.urlencode($a).'&field='.urlencode($y).$Eg;if(!$_&&$X!==null){foreach((array)$zc[$y]as$yc){if(count($zc[$y])==1||end($yc["source"])==$y){$_="";foreach($yc["source"]as$s=>$Hf)$_.=where_link($s,$yc["target"][$s],$L[$Zd][$Hf]);$_=($yc["db"]!=""?preg_replace('~([?&]db=)[^&]+~','\1'.urlencode($yc["db"]),ME):ME).'select='.urlencode($yc["table"]).$_;if($yc["ns"])$_=preg_replace('~([?&]ns=)[^&]+~','\1'.urlencode($yc["ns"]),$_);if(count($yc["source"])==1)break;}}}if($y=="COUNT(*)"){$_=ME."select=".urlencode($a);$s=0;foreach((array)$_GET["where"]as$W){if(!array_key_exists($W["col"],$Dg))$_.=where_link($s++,$W["col"],$W["val"],$W["op"]);}foreach($Dg
  1748. as$pd=>$W)$_.=where_link($s++,$pd,$W);}$X=select_value($X,$_,$p,$eg);$t=h("val[$Eg][".bracket_escape($y)."]");$Y=$_POST["val"][$Eg][bracket_escape($y)];$Nb=!is_array($K[$y])&&is_utf8($X)&&$L[$Zd][$y]==$K[$y]&&!$Ec[$y];$dg=preg_match('~text|lob~',$p["type"]);if(($_GET["modify"]&&$Nb)||$Y!==null){$Jc=h($Y!==null?$Y:$K[$y]);echo"<td>".($dg?"<textarea name='$t' cols='30' rows='".(substr_count($K[$y],"\n")+1)."'>$Jc</textarea>":"<input name='$t' value='$Jc' size='$Cd[$y]'>");}else{$Hd=strpos($X,"<i>…</i>");echo"<td id='$t' data-text='".($Hd?2:($dg?1:0))."'".($Nb?"":" data-warning='".h(lang(93))."'").">$X</td>";}}}if($Ka)echo"<td>";$b->backwardKeysPrint($Ka,$L[$Zd]);echo"</tr>\n";}if(is_ajax())exit;echo"</table>\n","</div>\n";}if(!is_ajax()){if($L||$D){$Zb=true;if($_GET["page"]!="last"){if($z==""||(count($L)<$z&&($L||!$D)))$Ac=($D?$D*$z:0)+count($L);elseif($x!="sql"||!$nd){$Ac=($nd?false:found_rows($S,$Z));if($Ac<max(1e4,2*($D+1)*$z))$Ac=reset(slow_query(count_rows($a,$Z,$nd,$Fc)));else$Zb=false;}}$ye=($z!=""&&($Ac===false||$Ac>$z||$D));if($ye){echo(($Ac===false?count($L)+1:$Ac-$D*$z)>$z?'<p><a href="'.h(remove_from_uri("page")."&page=".($D+1)).'" class="loadmore">'.lang(94).'</a>'.script("qsl('a').onclick = partial(selectLoadMore, ".(+$z).", '".lang(95)."…');",""):''),"\n";}}echo"<div class='footer'><div>\n";if($L||$D){if($ye){$Od=($Ac===false?$D+(count($L)>=$z?2:1):floor(($Ac-1)/$z));echo"<fieldset>";if($x!="simpledb"){echo"<legend><a href='".h(remove_from_uri("page"))."'>".lang(96)."</a></legend>",script("qsl('a').onclick = function () { pageClick(this.href, +prompt('".lang(96)."', '".($D+1)."')); return false; };"),pagination(0,$D).($D>5?" …":"");for($s=max(1,$D-4);$s<min($Od,$D+5);$s++)echo
  1749. pagination($s,$D);if($Od>0){echo($D+5<$Od?" …":""),($Zb&&$Ac!==false?pagination($Od,$D):" <a href='".h(remove_from_uri("page")."&page=last")."' title='~$Od'>".lang(97)."</a>");}}else{echo"<legend>".lang(96)."</legend>",pagination(0,$D).($D>1?" …":""),($D?pagination($D,$D):""),($Od>$D?pagination($D+1,$D).($Od>$D+1?" …":""):"");}echo"</fieldset>\n";}echo"<fieldset>","<legend>".lang(98)."</legend>";$Fb=($Zb?"":"~ ").$Ac;echo
  1750. checkbox("all",1,0,($Ac!==false?($Zb?"":"~ ").lang(99,$Ac):""),"var checked = formChecked(this, /check/); selectCount('selected', this.checked ? '$Fb' : checked); selectCount('selected2', this.checked || !checked ? '$Fb' : checked);")."\n","</fieldset>\n";if($b->selectCommandPrint()){echo'<fieldset',($_GET["modify"]?'':' class="jsonly"'),'><legend>',lang(89),'</legend><div>
  1751. <input type="submit" value="',lang(14),'"',($_GET["modify"]?'':' title="'.lang(85).'"'),'>
  1752. </div></fieldset>
  1753. <fieldset><legend>',lang(100),' <span id="selected"></span></legend><div>
  1754. <input type="submit" name="edit" value="',lang(10),'">
  1755. <input type="submit" name="clone" value="',lang(101),'">
  1756. <input type="submit" name="delete" value="',lang(18),'">',confirm(),'</div></fieldset>
  1757. ';}$_c=$b->dumpFormat();foreach((array)$_GET["columns"]as$e){if($e["fun"]){unset($_c['sql']);break;}}if($_c){print_fieldset("export",lang(102)." <span id='selected2'></span>");$we=$b->dumpOutput();echo($we?html_select("output",$we,$ta["output"])." ":""),html_select("format",$_c,$ta["format"])," <input type='submit' name='export' value='".lang(102)."'>\n","</div></fieldset>\n";}$b->selectEmailPrint(array_filter($Rb,'strlen'),$f);}echo"</div></div>\n";if($b->selectImportPrint()){echo"<div>","<a href='#import'>".lang(103)."</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"),$ta["format"],1);echo" <input type='submit' name='import' value='".lang(103)."'>","</span>","</div>";}echo"<input type='hidden' name='token' value='$pg'>\n","</form>\n",(!$Fc&&$M?"":script("tableCheck();"));}}}if(is_ajax()){ob_end_clean();exit;}}elseif(isset($_GET["script"])){if($_GET["script"]=="kill")$h->query("KILL ".number($_POST["kill"]));elseif(list($R,$t,$B)=$b->_foreignColumn(column_foreign_keys($_GET["source"]),$_GET["field"])){$z=11;$I=$h->query("SELECT $t, $B FROM ".table($R)." WHERE ".(preg_match('~^[0-9]+$~',$_GET["value"])?"$t = $_GET[value] OR ":"")."$B LIKE ".q("$_GET[value]%")." ORDER BY 2 LIMIT $z");for($s=1;($K=$I->fetch_row())&&$s<$z;$s++)echo"<a href='".h(ME."edit=".urlencode($R)."&where".urlencode("[".bracket_escape(idf_unescape($t))."]")."=".urlencode($K[0]))."'>".h($K[1])."</a><br>\n";if($K)echo"...\n";}exit;}else{page_header(lang(62),"",false);if($b->homepage()){echo"<form action='' method='post'>\n","<p>".lang(104).": <input type='search' name='query' value='".h($_POST["query"])."'> <input type='submit' value='".lang(44)."'>\n";if($_POST["query"]!="")search_tables();echo"<div class='scrollable'>\n","<table cellspacing='0' class='nowrap checkable'>\n",script("mixin(qsl('table'), {onclick: tableClick, ondblclick: partialArg(tableClick, true)});"),'<thead><tr class="wrap">','<td><input id="check-all" type="checkbox" class="jsonly">'.script("qs('#check-all').onclick = partial(formCheck, /^tables\[/);",""),'<th>'.lang(105),'<td>'.lang(106),"</thead>\n";foreach(table_status()as$R=>$K){$B=$b->tableName($K);if(isset($K["Engine"])&&$B!=""){echo'<tr'.odd().'><td>'.checkbox("tables[]",$R,in_array($R,(array)$_POST["tables"],true)),"<th><a href='".h(ME).'select='.urlencode($R)."'>$B</a>";$X=format_number($K["Rows"]);echo"<td align='right'><a href='".h(ME."edit=").urlencode($R)."'>".($K["Engine"]=="InnoDB"&&$X?"~ $X":$X)."</a>";}}echo"</table>\n","</div>\n","</form>\n",script("tableCheck();");}}page_footer();
Add Comment
Please, Sign In to add comment