· 8 years ago · Mar 31, 2018, 12:06 PM
1\0\0\0` \0
2\0\n @\0
3\0`E
4tvM'
5b0\0
6\0");}elseif($_GET["file"]=="default.css"){header("Content-Type: text/css; charset=utf-8");echo
7lzw_decompress("\n1
84vb0
9:6T\rc
10VNFS%~
114'7k
12'g\rFB\ry
13T7SS
14>!\0Z
15\"*nS
16\0@P\"
173\$4
18C YA
19}UaHV%G
20<A\0\\
21w0t6
22%MR%
23Q<P<:
24QH\n
25\"+z
264lK{
27\na@
28
29ov0
30zAYO(
31@x&n
32{GEb
33{\$**
34YHZI
35.*9t
36c=
37 a
38[\rX
39\n+E
40@g\"
41CI\$
42*vuD
43&\r\"
44S\$)e
45\$]Z
467E1k
47\$tx\rB
48{gi/\"
49a|#,Z
50\ro=
51rO-^
52rnO\r
53
54\rc
55
56i\0-\n
57J|\r
581>
59 h
60k\rQ*
61(3 \n
62!1&7
63rU&2f
64*Ra%
65\\
66 i
67&Pu*
68\$p&
69;\rn
70pL\nt
713;6r
72'h35
732q+6
74O7sC\"pm8
75m\n@e0
76\"11
77");}elseif($_GET["file"]=="functions.js"){header("Content-Type: text/javascript; charset=utf-8");echo
78lzw_decompress("f:
79At^ s
80tf6e
81q]\"
82Pi2IN
83*(=2
84]`pX9
85 \\8
86w\"'
87X9ES|
88Xa=No4t7
89\r)8H
9044Pc=\n
91QN\r
92j:9^
93!x]\0
94HX:W
95cbf6I
96`NoK
97zWXd
983&\0
99t{mY
100@t\r
101I'KT
102I\$q%
103[R\0n
104Jy\r
105p\\H
106aejk
107B1\"
108@G 9
1094KIl
110)-'#
111@jO!
112)E`\0\n
113T']W
114Dh\n
115\r]9
116a2Lm
117
118\"]8
119\\K/
120e}\rjC
121y%
122 H
123\$sE
124\r@&\r
125@h'A
1260YDh'
127W:[=
128
129.YI
130\nWp
131h\nF
132mb\$
133VHpn
134%l]'
135\0k
136{\roL
137`O q
138gk lv
139.i~4
140
141|u2N;Bn<
142J1b%
1437D\0^
144
145
146p\n
147+ Xr
1482G\\{
149.#%\$K
150\$Cr
151--H|
1521/
153 d\"
154\0O6R8|S|+
155\re(
156\r\"8
157mNTQ
158]jk+1
159S\r1@vo.t
160TUFq
161;g\\
162\"DQ
163@\r&+
164Db\r1
165PL\0
166\"O>
167C<tJ
168\"V]`
169w<1f
170nl\0
171'\$^S
172f.eP\r
173s)Uj
174uT
175 5G0
1765r<vzl
177YiqMD
178`{\0r
179
180\n\0
181, u;
182Q|e/|
183HbQs
1844\0z
185<2\"
18624\"qX
187\n\0
188'1f<m
189pPD>!
190G\0[a
191\0ZK
192\$w/
193<'%x
194h`Ev\\
195<xY~
196Fq9Tl
197V#q-
198+rTtg
199n}BXZw<,
200^\r1
201@ly B
202\$=}
203[~ Y
204Yi2s
205Y~'Amq
206=G4vG\0R
207|L\$
208 D
209GRb!r
2101Ki,|
211
212\"q^
213\0dO
214\nFg
215LZny<
216T\$c
217_')j
218Nr\0
219\$oj7Z&
220Fnh\"
221\nFl
222a@#d
223\$+Q5\n
2248\$-
225'FI+
226\"\$9
227!4=`
228T(}S
229*C5oZ^O
230n=
231 \"
232RGKe
233C\0D+(
2347Qra
235`548
236D1@\\
2376!^9@c
238%@/@m
239*\$&?!
240n\nHCH{I\"
2411O9R
242>)=\$Z'
243a!#U
244e^ia
245`fd0
246P\"(
247(r1j\rX1i
248\0p2
249-,@%Z
250XRCiJ
251!3#Y
252 nc|@
253
254`cC}(
255_2 8M
256<
257 fm
2580yS<
259:\0-
260I2\0
261sb\",
262w4\$(
263o\r8
264 =@7
265\$bc\n\\
266\".h
267\0@9
268ogv3
269\$1I
2705lkg
271@d,\n@
272eVAr
273eQ\"
274yR%eJ\"4%[
275V\"[
276ui%<
277Q`T&
278\0\n%a\\
279!\$L
280[:HD\0
281Vu0a
2829\n`
283+Ldl
284ogIu1
285\$2{
286 @D&
28741\$
288&ze)
289Y;z]
290T\0.
291M_\n
292/S\"
293 Sm=\\K
294\"7Q
295\$aE
296>MiV
297DA^d
298fQ\n
299r:s)1
300S+dF
301k^6\0
302fi&V>L
303la|@
304\n:X
305\nL&
3066|Pe
307\"f(l
308kP\n
309&Nzb\r3
310LeoP
311ut!^
312\"U]
313\0\"
314\"vF
315lq2K
316'0um
317#N\$0
318{\0)
319g0a~
320I#\0v
321\nx<
322sd3|
323c\">A
324}p
325 z
326\0Z5
327TU\"
328?h6m
329kGr'z
330Kq\\*_gW2
331");}elseif($_GET["file"]=="jush.js"){header("Content-Type: text/javascript; charset=utf-8");echo
332lzw_decompress("v0
333J(:=
334x8EN
335GFmY
3368o7\n\r
3374\r#`
338\r.D`
3391(W0
340E:68n+
3414Z{p\\AU
342L7
343 U
344wuYh
345\r#0P
346\\jF
347h{\"s\n
348pdW
349\0)\"
350O\nR8!
351\"Q|9
352:z1Uf
353e5#U@iUG
354;gxL
3559\n\nAl~H
356\r}b/
357j!\r
358)TZ0E9M
3598PE5-
360psK0\r
361'\$cL
362MpY&
363`83B-9F@
364\r.y
365\\\n
3669`G[
367~xsL
368Xwy\n
369!4\"
370BhA0
371J2P@
372oq\0/Q\0of*
373Y\0p\\
374y\no\0
375\rog
37615\r
377\$M\r
378=\n0
379x\"p
380Zelf\0
381Z), ,^
3828%2>
383NxK:\n
384&W/>
385h6
386 @
387O:Yh^
388j>7`z
389j\rg
390i2I\$\"@
391ys\$
392\$\0
393QOf1
394\"~0
395\"@Z
396e3Cu6
397Cq#C
398DT_D
39927#w7
400l-1cP
4015\0P!`\\\r@
402-\0RR
403tFH8
404kMKCRf@w4B
4052
406 ,\"
407-WX\r
408t&7@
4090o<>
4105<52B
411k!>\r
412(#mJ
413]3ohuJ
414@iUzM
415H*BD.7
416XCV
417X\0Q_D]}t
418ZR\0
419V2O-
420\\\0
421\rwe
422cRIdBOk
423+L
424
425OXpf
426\n\r
427npY;
428i2,q
429/}{4J
430
431Kuz @
432\$\n
433J{w8
434<i-u
435l<o=-
436%C=]
437\\+>)3
4383qmu2
439S%6\"IT5
440
441Tuv
442\"&Vi
443\"uiT
444
445?\r
446\"T{[
447\nlh@l
448{ZVF
449p9zK
450O9di
451==\r.
452Zi%P
453L`pR0
454P+\"
455L\nbS
456QD(V`.1
457\0Q\$
458jkzM
4591- 3h
460<JB[
4618\n\0U
462\$i#
463Ts#]
464lo#}
4658\nr
466:)DY\n*D
4672{dZ)A
468\$r#
469\"P'
470i\"p
471)\0.
472R\0L
473VO3o
474iR\n
475\0\\
4761P30(\r
477))\0
478e7\0
479,#\0vU@9
480m`\\
481']=I
482a<RP
483\0E@i
484\$
485 B
486hO\0
487BcCi
488l.C\$
489&Cj3
490z9Gp
491\0i
492 \$D
493zt[')
494h{&Jz
495^Y\\Rmn
496 Nn*g
497\$z4
49832\0S
499U\$E
500<UH
501
502UJuS
503g)XDZK
504x@d&
505
506U\$
507wKDR
508X\0+
509+QIj\n
510v@{c
511U5 s
512 Jv]
513,/+:
514iKA
515
516#CK`
517lM_^z
518@>NB
519Z l\r(
520\\bD
521Z-wo
522-UMJc*
523\\Q8
524\" p
525i.Joc
526O\\\0
527:F\"8
528i,Pc
5291\0(
5300<1\r
5312d\"
532B\rr
533\"?v
534.\".\0?w
535+\0y
536 8@/
537g\n8
538\n`S
539:\0N
540Vg(1
541\\s
542
543~hBW
544c[ys
545NcCX
546\0^os
547B\\QkO[:
5482=k`
549lHiA
550`Gby
551;[*_
552lH{(;Uo
553rpc,
554aZCk
555\nQQ
556p2mP+ d
557aX8&,=
558\$\r
559n`H\\t\"
5600@6l
56171ym
562&~r
563 (
564/Fz@8
565&Rh4
566\n\0[
567p*}Q
5681o8Z
569HzW{
570}D\$
571?xw}
572v3R=
573m\n\\
574H\n^
575}\0#
576L\n9
577#|F8
578&{VN
579@\nO
580H\nh
581r\$/
582)<#P
583p)?#
584\niL
585N@\$
586\$B?0
587pe#7
588AV?h
589\\Au
590\"\0
591\0ps
592DPvA\\
593 #
594@A\0
595\$\0
596T+I8
597\0\nO
598\$!h
599|*1\0
600dAov
601BO\n
602q\r?m
603Eq\n
604\\\$
6051
606 B;c
607o?;\0K
608\$>l
609\nT^pg
610\0*C
6114d@(D
612@>\$
613Av?lnos3
614|\"pU
615,\\0
616qgA6>
617SE@#
618*\0i\n\\-`*\0q\n\\e
619@`>D
620*\0e!
6213EIL
622Gg\n
623\"#7
624?
625 m\r
626\\KJ8\r
627-2
628 4U
629
630C(\$
631:NI(J\0
632\"w\0
633\r[;
634\nQ5
635+`a+
636O.\"J
637!\"J
638\n`+Aw*
639Lg1h[
6409Lz?
641h>\0>
642<:C+
643ja+\0
644%Qf ;K
645MPn3I:f
646D <L
647^fqd
648s7(|
649tM.]HS
650;7yC
651~\rl
652XY9A
653=4K\n
654*sI&
655>\rX\r!\0\n
656BsVM63
657Q9z%`
658=CRr
659\"KB3
660)`Oj+
661
662(
663 &v9
664[.pGc K#?
6652\0k6)
666GmOFV
667UB`JsV
6680
669 _B
670)A
671 ~\r
672Q\\`rX
673\ra\"
674&bUQ
6758\0E
676\0<\0
677\0,J
678?B.<
679,O\r,
680@1\0
681/]04
682K\nC
6839/:WR
684Sv^ 0
685MD%3
6863Id\n
687#tPq5h{
688\"1M'
689hQEN
690Qe@\0;
691\r<e
692eS}Om
6934U\rR==
694J`P!t8
6955\"S
696
6975qS
698\0006K
699ua .
700X\rF
701<mXj
702\00074
703&83&a+
704+8+Uz
705Z\0D5F
706U\rTMZ
707}V7T0B
708U`4\n
709\rw+
710T.\$m
711;@7m
712\ri0
713a[x9
714 H
715HT!X
716X\ry
7173N=5
7188<IGPB
719;+\"C
720UUo[i`
721Yg^5
722\">\ra
723?:\r
724M[7;[v{
725yh\0h@
7261T0m
727Tmq\$
728\rTr
729^d!5`7
730PsN6
731MXQ 5
732YKqs
733s-\0
734oM@w\0QyoK
735Puo5
736\n(%
737@>
738 R
739=E\0
740+
741 Uj
742s]h't
743QUUuD
744l]AAf
745zPTuUQY
746Jen5
747s=Hu
748uuH5n
749UPZMN
750QmobF
751]i\\
752G\rT
753z\n=:
754\rh*s
7557(K&
756\\\rX
7578\$m
758WHVC\\5@
759P\0\"F
760sk(7
761Uc}A
762C8^!P}
763\\-\rSlX{s
764ATAW\r
7656-_1O
766o?7>\n
767]E\"JVJe~
768\0V
769 .\n
770S/Dk
771");}else{header("Content-Type: image/gif");switch($_GET["file"]){case"plus.gif":echo"GIF89a
772\0001
773\0\0
774\0\0\0!
775\0\0
776\0,\0\0\0\0
777\0;";break;case"cross.gif":echo"GIF89a
778\0001
779\0\0
780\0\0\0!
781\0\0
782\0,\0\0\0\0
783#\na
784Fo~y
7856]\0\0;";break;case"up.gif":echo"GIF89a
786\0001
787\0\0
788\0\0\0!
789\0\0
790\0,\0\0\0\0
791QN\n
792\0;";break;case"down.gif":echo"GIF89a
793\0001
794\0\0
795\0\0\0!
796\0\0
797\0,\0\0\0\0
798\0;";break;case"arrow.gif":echo"GIF89a
799\0\n\0
800\0\0
801\0\0
802\0,\0\0\0\0
803\0\n\0\0
804\0\0;";break;}}exit;}function
805connection(){global$g;return$g;}function
806adminer(){global$c;return$c;}function
807idf_unescape($Kc){$id=substr($Kc,-1);return
808str_replace($id.$id,$id,substr($Kc,1,-1));}function
809escape_string($X){return
810substr(q($X),1,-1);}function
811number($X){return
812preg_replace('~[^0-9]+~','',$X);}function
813remove_slashes($Qe,$oc=false){if(get_magic_quotes_gpc()){while(list($z,$X)=each($Qe)){foreach($X
814as$bd=>$W){unset($Qe[$z][$bd]);if(is_array($W)){$Qe[$z][stripslashes($bd)]=$W;$Qe[]=&$Qe[$z][stripslashes($bd)];}else$Qe[$z][stripslashes($bd)]=($oc?$W:stripslashes($W));}}}}function
815bracket_escape($Kc,$_a=false){static$pg=array(':'=>':1',']'=>':2','['=>':3');return
816strtr($Kc,($_a?array_flip($pg):$pg));}function
817charset($g){return(version_compare($g->server_info,"5.5.3")>=0?"utf8mb4":"utf8");}function
818h($Jf){return
819str_replace("\0","�",htmlspecialchars($Jf,ENT_QUOTES,'utf-8'));}function
820nbsp($Jf){return(trim($Jf)!=""?h($Jf):" ");}function
821nl_br($Jf){return
822str_replace("\n","<br>",$Jf);}function
823checkbox($F,$Y,$Na,$fd="",$be="",$Ra=""){$K="<input type='checkbox' name='$F' value='".h($Y)."'".($Na?" checked":"").($be?' onclick="'.h($be).'"':'').">";return($fd!=""||$Ra?"<label".($Ra?" class='$Ra'":"").">$K".h($fd)."</label>":$K);}function
824optionlist($fe,$uf=null,$Hg=false){$K="";foreach($fe
825as$bd=>$W){$ge=array($bd=>$W);if(is_array($W)){$K.='<optgroup label="'.h($bd).'">';$ge=$W;}foreach($ge
826as$z=>$X)$K.='<option'.($Hg||is_string($z)?' value="'.h($z).'"':'').(($Hg||is_string($z)?(string)$z:$X)===$uf?' selected':'').'>'.h($X);if(is_array($W))$K.='</optgroup>';}return$K;}function
827html_select($F,$fe,$Y="",$ae=true){if($ae)return"<select name='".h($F)."'".(is_string($ae)?' onchange="'.h($ae).'"':"").">".optionlist($fe,$Y)."</select>";$K="";foreach($fe
828as$z=>$X)$K.="<label><input type='radio' name='".h($F)."' value='".h($z)."'".($z==$Y?" checked":"").">".h($X)."</label>";return$K;}function
829select_input($wa,$fe,$Y="",$De=""){return($fe?"<select$wa><option value=''>$De".optionlist($fe,$Y,true)."</select>":"<input$wa size='10' value='".h($Y)."' placeholder='$De'>");}function
830confirm(){return" onclick=\"return confirm('".lang(0)."');\"";}function
831print_fieldset($Ic,$nd,$Pg=false,$be=""){echo"<fieldset><legend><a href='#fieldset-$Ic' onclick=\"".h($be)."return !toggle('fieldset-$Ic');\">$nd</a></legend><div id='fieldset-$Ic'".($Pg?"":" class='hidden'").">\n";}function
832bold($Ga,$Ra=""){return($Ga?" class='active $Ra'":($Ra?" class='$Ra'":""));}function
833odd($K=' class="odd"'){static$v=0;if(!$K)$v=-1;return($v++%2?$K:'');}function
834js_escape($Jf){return
835addcslashes($Jf,"\r\n'\\/");}function
836json_row($z,$X=null){static$pc=true;if($pc)echo"{";if($z!=""){echo($pc?"":",")."\n\t\"".addcslashes($z,"\r\n\"\\/").'": '.($X!==null?'"'.addcslashes($X,"\r\n\"\\/").'"':'undefined');$pc=false;}else{echo"\n}\n";$pc=true;}}function
837ini_bool($Oc){$X=ini_get($Oc);return(preg_match('~^(on|true|yes)$~i',$X)||(int)$X);}function
838sid(){static$K;if($K===null)$K=(SID&&!($_COOKIE&&ini_bool("session.use_cookies")));return$K;}function
839set_password($Mg,$O,$V,$_e){$_SESSION["pwds"][$Mg][$O][$V]=($_COOKIE["adminer_key"]&&is_string($_e)?array(encrypt_string($_e,$_COOKIE["adminer_key"])):$_e);}function
840get_password(){$K=get_session("pwds");if(is_array($K))$K=($_COOKIE["adminer_key"]?decrypt_string($K[0],$_COOKIE["adminer_key"]):false);return$K;}function
841q($Jf){global$g;return$g->quote($Jf);}function
842get_vals($I,$d=0){global$g;$K=array();$J=$g->query($I);if(is_object($J)){while($L=$J->fetch_row())$K[]=$L[$d];}return$K;}function
843get_key_vals($I,$h=null,$fg=0){global$g;if(!is_object($h))$h=$g;$K=array();$h->timeout=$fg;$J=$h->query($I);$h->timeout=0;if(is_object($J)){while($L=$J->fetch_row())$K[$L[0]]=$L[1];}return$K;}function
844get_rows($I,$h=null,$m="<p class='error'>"){global$g;$eb=(is_object($h)?$h:$g);$K=array();$J=$eb->query($I);if(is_object($J)){while($L=$J->fetch_assoc())$K[]=$L;}elseif(!$J&&!is_object($h)&&$m&&defined("PAGE_HEADER"))echo$m.error()."\n";return$K;}function
845unique_array($L,$x){foreach($x
846as$w){if(preg_match("~PRIMARY|UNIQUE~",$w["type"])){$K=array();foreach($w["columns"]as$z){if(!isset($L[$z]))continue
8472;$K[$z]=$L[$z];}return$K;}}}function
848escape_key($z){if(preg_match('(^([\w(]+)('.str_replace("_",".*",preg_quote(idf_escape("_"))).')([ \w)]+)$)',$z,$C))return$C[1].idf_escape(idf_unescape($C[2])).$C[3];return
849idf_escape($z);}function
850where($Z,$o=array()){global$g,$y;$K=array();foreach((array)$Z["where"]as$z=>$X){$z=bracket_escape($z,1);$d=escape_key($z);$K[]=$d.(($y=="sql"&&preg_match('~^[0-9]*\\.[0-9]*$~',$X))||$y=="mssql"?" LIKE ".q(addcslashes($X,"%_\\")):" = ".unconvert_field($o[$z],q($X)));if($y=="sql"&&preg_match('~char|text~',$o[$z]["type"])&&preg_match("~[^ -@]~",$X))$K[]="$d = ".q($X)." COLLATE ".charset($g)."_bin";}foreach((array)$Z["null"]as$z)$K[]=escape_key($z)." IS NULL";return
851implode(" AND ",$K);}function
852where_check($X,$o=array()){parse_str($X,$Ma);remove_slashes(array(&$Ma));return
853where($Ma,$o);}function
854where_link($v,$d,$Y,$ce="="){return"&where%5B$v%5D%5Bcol%5D=".urlencode($d)."&where%5B$v%5D%5Bop%5D=".urlencode(($Y!==null?$ce:"IS NULL"))."&where%5B$v%5D%5Bval%5D=".urlencode($Y);}function
855convert_fields($e,$o,$N=array()){$K="";foreach($e
856as$z=>$X){if($N&&!in_array(idf_escape($z),$N))continue;$ua=convert_field($o[$z]);if($ua)$K.=", $ua AS ".idf_escape($z);}return$K;}function
857cookie($F,$Y,$qd=2592000){global$ba;$te=array($F,(preg_match("~\n~",$Y)?"":$Y),($qd?time()+$qd:0),preg_replace('~\\?.*~','',$_SERVER["REQUEST_URI"]),"",$ba);if(version_compare(PHP_VERSION,'5.2.0')>=0)$te[]=true;return
858call_user_func_array('setcookie',$te);}function
859restart_session(){if(!ini_bool("session.use_cookies"))session_start();}function
860stop_session(){if(!ini_bool("session.use_cookies"))session_write_close();}function&get_session($z){return$_SESSION[$z][DRIVER][SERVER][$_GET["username"]];}function
861set_session($z,$X){$_SESSION[$z][DRIVER][SERVER][$_GET["username"]]=$X;}function
862auth_url($Mg,$O,$V,$k=null){global$Eb;preg_match('~([^?]*)\\??(.*)~',remove_from_uri(implode("|",array_keys($Eb))."|username|".($k!==null?"db|":"").session_name()),$C);return"$C[1]?".(sid()?SID."&":"").($Mg!="server"||$O!=""?urlencode($Mg)."=".urlencode($O)."&":"")."username=".urlencode($V).($k!=""?"&db=".urlencode($k):"").($C[2]?"&$C[2]":"");}function
863is_ajax(){return($_SERVER["HTTP_X_REQUESTED_WITH"]=="XMLHttpRequest");}function
864redirect($B,$D=null){if($D!==null){restart_session();$_SESSION["messages"][preg_replace('~^[^?]*~','',($B!==null?$B:$_SERVER["REQUEST_URI"]))][]=$D;}if($B!==null){if($B=="")$B=".";header("Location: $B");exit;}}function
865query_redirect($I,$B,$D,$Ye=true,$cc=true,$ic=false,$eg=""){global$g,$m,$c;if($cc){$Ff=microtime(true);$ic=!$g->query($I);$eg=format_time($Ff);}$Ef="";if($I)$Ef=$c->messageQuery($I,$eg);if($ic){$m=error().$Ef;return
866false;}if($Ye)redirect($B,$D.$Ef);return
867true;}function
868queries($I){global$g;static$Te=array();static$Ff;if(!$Ff)$Ff=microtime(true);if($I===null)return
869array(implode("\n",$Te),format_time($Ff));$Te[]=(preg_match('~;$~',$I)?"DELIMITER ;;\n$I;\nDELIMITER ":$I).";";return$g->query($I);}function
870apply_queries($I,$S,$Yb='table'){foreach($S
871as$Q){if(!queries("$I ".$Yb($Q)))return
872false;}return
873true;}function
874queries_redirect($B,$D,$Ye){list($Te,$eg)=queries(null);return
875query_redirect($Te,$B,$D,$Ye,false,!$Ye,$eg);}function
876format_time($Ff){return
877lang(1,max(0,microtime(true)-$Ff));}function
878remove_from_uri($se=""){return
879substr(preg_replace("~(?<=[?&])($se".(SID?"":"|".session_name()).")=[^&]*&~",'',"$_SERVER[REQUEST_URI]&"),0,-1);}function
880pagination($G,$nb){return" ".($G==$nb?$G+1:'<a href="'.h(remove_from_uri("page").($G?"&page=$G".($_GET["next"]?"&next=".urlencode($_GET["next"]):""):"")).'">'.($G+1)."</a>");}function
881get_file($z,$ub=false){$mc=$_FILES[$z];if(!$mc)return
882null;foreach($mc
883as$z=>$X)$mc[$z]=(array)$X;$K='';foreach($mc["error"]as$z=>$m){if($m)return$m;$F=$mc["name"][$z];$mg=$mc["tmp_name"][$z];$fb=file_get_contents($ub&&preg_match('~\\.gz$~',$F)?"compress.zlib://$mg":$mg);if($ub){$Ff=substr($fb,0,3);if(function_exists("iconv")&&preg_match("~^\xFE\xFF|^\xFF\xFE~",$Ff,$ef))$fb=iconv("utf-16","utf-8",$fb);elseif($Ff=="\xEF\xBB\xBF")$fb=substr($fb,3);$K.=$fb."\n\n";}else$K.=$fb;}return$K;}function
884upload_error($m){$_d=($m==UPLOAD_ERR_INI_SIZE?ini_get("upload_max_filesize"):0);return($m?lang(2).($_d?" ".lang(3,$_d):""):lang(4));}function
885repeat_pattern($Be,$od){return
886str_repeat("$Be{0,65535}",$od/65535)."$Be{0,".($od%65535)."}";}function
887is_utf8($X){return(preg_match('~~u',$X)&&!preg_match('~[\\0-\\x8\\xB\\xC\\xE-\\x1F]~',$X));}function
888shorten_utf8($Jf,$od=80,$Nf=""){if(!preg_match("(^(".repeat_pattern("[\t\r\n -\x{FFFF}]",$od).")($)?)u",$Jf,$C))preg_match("(^(".repeat_pattern("[\t\r\n -~]",$od).")($)?)",$Jf,$C);return
889h($C[1]).$Nf.(isset($C[2])?"":"<i>...</i>");}function
890format_number($X){return
891strtr(number_format($X,0,".",lang(5)),preg_split('~~u',lang(6),-1,PREG_SPLIT_NO_EMPTY));}function
892friendly_url($X){return
893preg_replace('~[^a-z0-9_]~i','-',$X);}function
894hidden_fields($Qe,$Lc=array()){while(list($z,$X)=each($Qe)){if(!in_array($z,$Lc)){if(is_array($X)){foreach($X
895as$bd=>$W)$Qe[$z."[$bd]"]=$W;}else
896echo'<input type="hidden" name="'.h($z).'" value="'.h($X).'">';}}}function
897hidden_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
898table_status1($Q,$jc=false){$K=table_status($Q,$jc);return($K?$K:array("Name"=>$Q));}function
899column_foreign_keys($Q){global$c;$K=array();foreach($c->foreignKeys($Q)as$p){foreach($p["source"]as$X)$K[$X][]=$p;}return$K;}function
900enum_input($U,$wa,$n,$Y,$Sb=null){global$c;preg_match_all("~'((?:[^']|'')*)'~",$n["length"],$vd);$K=($Sb!==null?"<label><input type='$U'$wa value='$Sb'".((is_array($Y)?in_array($Sb,$Y):$Y===0)?" checked":"")."><i>".lang(7)."</i></label>":"");foreach($vd[1]as$v=>$X){$X=stripcslashes(str_replace("''","'",$X));$Na=(is_int($Y)?$Y==$v+1:(is_array($Y)?in_array($v+1,$Y):$Y===$X));$K.=" <label><input type='$U'$wa value='".($v+1)."'".($Na?' checked':'').'>'.h($c->editVal($X,$n)).'</label>';}return$K;}function
901input($n,$Y,$s){global$g,$wg,$c,$y;$F=h(bracket_escape($n["field"]));echo"<td class='function'>";if(is_array($Y)&&!$s){$ta=array($Y);if(version_compare(PHP_VERSION,5.4)>=0)$ta[]=JSON_PRETTY_PRINT;$Y=call_user_func_array('json_encode',$ta);$s="json";}$gf=($y=="mssql"&&$n["auto_increment"]);if($gf&&!$_POST["save"])$s=null;$xc=(isset($_GET["select"])||$gf?array("orig"=>lang(8)):array())+$c->editFunctions($n);$wa=" name='fields[$F]'";if($n["type"]=="enum")echo
902nbsp($xc[""])."<td>".$c->editInput($_GET["edit"],$n,$wa,$Y);else{$pc=0;foreach($xc
903as$z=>$X){if($z===""||!$X)break;$pc++;}$ae=($pc?" onchange=\"var f = this.form['function[".h(js_escape(bracket_escape($n["field"])))."]']; if ($pc > f.selectedIndex) f.selectedIndex = $pc;\" onkeyup='keyupChange.call(this);'":"");$wa.=$ae;$Cc=(in_array($s,$xc)||isset($xc[$s]));echo(count($xc)>1?"<select name='function[$F]' onchange='functionChange(this);'".on_help("getTarget(event).value.replace(/^SQL\$/, '')",1).">".optionlist($xc,$s===null||$Cc?$s:"")."</select>":nbsp(reset($xc))).'<td>';$Qc=$c->editInput($_GET["edit"],$n,$wa,$Y);if($Qc!="")echo$Qc;elseif($n["type"]=="set"){preg_match_all("~'((?:[^']|'')*)'~",$n["length"],$vd);foreach($vd[1]as$v=>$X){$X=stripcslashes(str_replace("''","'",$X));$Na=(is_int($Y)?($Y>>$v)&1:in_array($X,explode(",",$Y),true));echo" <label><input type='checkbox' name='fields[$F][$v]' value='".(1<<$v)."'".($Na?' checked':'')."$ae>".h($c->editVal($X,$n)).'</label>';}}elseif(preg_match('~blob|bytea|raw|file~',$n["type"])&&ini_bool("file_uploads"))echo"<input type='file' name='fields-$F'$ae>";elseif(($cg=preg_match('~text|lob~',$n["type"]))||preg_match("~\n~",$Y)){if($cg&&$y!="sqlite")$wa.=" cols='50' rows='12'";else{$M=min(12,substr_count($Y,"\n")+1);$wa.=" cols='30' rows='$M'".($M==1?" style='height: 1.2em;'":"");}echo"<textarea$wa>".h($Y).'</textarea>';}elseif($s=="json")echo"<textarea$wa cols='50' rows='12' class='jush-js'>".h($Y).'</textarea>';else{$Bd=(!preg_match('~int~',$n["type"])&&preg_match('~^(\\d+)(,(\\d+))?$~',$n["length"],$C)?((preg_match("~binary~",$n["type"])?2:1)*$C[1]+($C[3]?1:0)+($C[2]&&!$n["unsigned"]?1:0)):($wg[$n["type"]]?$wg[$n["type"]]+($n["unsigned"]?0:1):0));if($y=='sql'&&$g->server_info>=5.6&&preg_match('~time~',$n["type"]))$Bd+=7;echo"<input".((!$Cc||$s==="")&&preg_match('~(?<!o)int~',$n["type"])?" type='number'":"")." value='".h($Y)."'".($Bd?" maxlength='$Bd'":"").(preg_match('~char|binary~',$n["type"])&&$Bd>20?" size='40'":"")."$wa>";}}}function
904process_input($n){global$c;$Kc=bracket_escape($n["field"]);$s=$_POST["function"][$Kc];$Y=$_POST["fields"][$Kc];if($n["type"]=="enum"){if($Y==-1)return
905false;if($Y=="")return"NULL";return+$Y;}if($n["auto_increment"]&&$Y=="")return
906null;if($s=="orig")return($n["on_update"]=="CURRENT_TIMESTAMP"?idf_escape($n["field"]):false);if($s=="NULL")return"NULL";if($n["type"]=="set")return
907array_sum((array)$Y);if($s=="json"){$s="";$Y=json_decode($Y,true);if(!is_array($Y))return
908false;return$Y;}if(preg_match('~blob|bytea|raw|file~',$n["type"])&&ini_bool("file_uploads")){$mc=get_file("fields-$Kc");if(!is_string($mc))return
909false;return
910q($mc);}return$c->processInput($n,$Y,$s);}function
911fields_from_edit(){global$l;$K=array();foreach((array)$_POST["field_keys"]as$z=>$X){if($X!=""){$X=bracket_escape($X);$_POST["function"][$X]=$_POST["field_funs"][$z];$_POST["fields"][$X]=$_POST["field_vals"][$z];}}foreach((array)$_POST["fields"]as$z=>$X){$F=bracket_escape($z,1);$K[$F]=array("field"=>$F,"privileges"=>array("insert"=>1,"update"=>1),"null"=>1,"auto_increment"=>($z==$l->primary),);}return$K;}function
912search_tables(){global$c,$g;$_GET["where"][0]["op"]="LIKE %%";$_GET["where"][0]["val"]=$_POST["query"];$uc=false;foreach(table_status('',true)as$Q=>$R){$F=$c->tableName($R);if(isset($R["Engine"])&&$F!=""&&(!$_POST["tables"]||in_array($Q,$_POST["tables"]))){$J=$g->query("SELECT".limit("1 FROM ".table($Q)," WHERE ".implode(" AND ",$c->selectSearchProcess(fields($Q),array())),1));if(!$J||$J->fetch_row()){if(!$uc){echo"<ul>\n";$uc=true;}echo"<li>".($J?"<a href='".h(ME."select=".urlencode($Q)."&where[0][op]=".urlencode($_GET["where"][0]["op"])."&where[0][val]=".urlencode($_GET["where"][0]["val"]))."'>$F</a>\n":"$F: <span class='error'>".error()."</span>\n");}}}echo($uc?"</ul>":"<p class='message'>".lang(9))."\n";}function
913dump_headers($Jc,$Id=false){global$c;$K=$c->dumpHeaders($Jc,$Id);$qe=$_POST["output"];if($qe!="text")header("Content-Disposition: attachment; filename=".$c->dumpFilename($Jc).".$K".($qe!="file"&&!preg_match('~[^0-9a-z]~',$qe)?".$qe":""));session_write_close();ob_flush();flush();return$K;}function
914dump_csv($L){foreach($L
915as$z=>$X){if(preg_match("~[\"\n,;\t]~",$X)||$X==="")$L[$z]='"'.str_replace('"','""',$X).'"';}echo
916implode(($_POST["format"]=="csv"?",":($_POST["format"]=="tsv"?"\t":";")),$L)."\r\n";}function
917apply_sql_function($s,$d){return($s?($s=="unixepoch"?"DATETIME($d, '$s')":($s=="count distinct"?"COUNT(DISTINCT ":strtoupper("$s("))."$d)"):$d);}function
918get_temp_dir(){$K=ini_get("upload_tmp_dir");if(!$K){if(function_exists('sys_get_temp_dir'))$K=sys_get_temp_dir();else{$nc=@tempnam("","");if(!$nc)return
919false;$K=dirname($nc);unlink($nc);}}return$K;}function
920password_file($i){$nc=get_temp_dir()."/adminer.key";$K=@file_get_contents($nc);if($K||!$i)return$K;$r=@fopen($nc,"w");if($r){chmod($nc,0660);$K=rand_string();fwrite($r,$K);fclose($r);}return$K;}function
921rand_string(){return
922md5(uniqid(mt_rand(),true));}function
923select_value($X,$A,$n,$dg){global$c,$ba;if(is_array($X)){$K="";foreach($X
924as$bd=>$W)$K.="<tr>".($X!=array_values($X)?"<th>".h($bd):"")."<td>".select_value($W,$A,$n,$dg);return"<table cellspacing='0'>$K</table>";}if(!$A)$A=$c->selectLink($X,$n);if($A===null){if(is_mail($X))$A="mailto:$X";if($Se=is_url($X))$A=(($Se=="http"&&$ba)||preg_match('~WebKit~i',$_SERVER["HTTP_USER_AGENT"])?$X:"$Se://www.adminer.org/redirect/?url=".urlencode($X));}$K=$c->editVal($X,$n);if($K!==null){if($K==="")$K=" ";elseif(!is_utf8($K))$K="\0";elseif($dg!=""&&is_shortable($n))$K=shorten_utf8($K,max(0,+$dg));else$K=h($K);}return$c->selectVal($K,$A,$n,$X);}function
925is_mail($Pb){$va='[-a-z0-9!#$%&\'*+/=?^_`{|}~]';$Db='[a-z0-9]([-a-z0-9]{0,61}[a-z0-9])';$Be="$va+(\\.$va+)*@($Db?\\.)+$Db";return
926is_string($Pb)&&preg_match("(^$Be(,\\s*$Be)*\$)i",$Pb);}function
927is_url($Jf){$Db='[a-z0-9]([-a-z0-9]{0,61}[a-z0-9])';return(preg_match("~^(https?)://($Db?\\.)+$Db(:\\d+)?(/.*)?(\\?.*)?(#.*)?\$~i",$Jf,$C)?strtolower($C[1]):"");}function
928is_shortable($n){return
929preg_match('~char|text|lob|geometry|point|linestring|polygon|string~',$n["type"]);}function
930count_rows($Q,$Z,$Wc,$u){global$y;$I=" FROM ".table($Q).($Z?" WHERE ".implode(" AND ",$Z):"");return($Wc&&($y=="sql"||count($u)==1)?"SELECT COUNT(DISTINCT ".implode(", ",$u).")$I":"SELECT COUNT(*)".($Wc?" FROM (SELECT 1$I$zc) x":$I));}function
931slow_query($I){global$c,$T;$k=$c->database();$fg=$c->queryTimeout();if(support("kill")&&is_object($h=connect())&&($k==""||$h->select_db($k))){$dd=$h->result("SELECT CONNECTION_ID()");echo'<script type="text/javascript">
932var timeout = setTimeout(function () {
933ajax(\'',js_escape(ME),'script=kill\', function () {
934}, \'token=',$T,'&kill=',$dd,'\');
935}, ',1000*$fg,');
936</script>
937';}else$h=null;ob_flush();flush();$K=@get_key_vals($I,$h,$fg);if($h){echo"<script type='text/javascript'>clearTimeout(timeout);</script>\n";ob_flush();flush();}return
938array_keys($K);}function
939get_token(){$We=rand(1,1e6);return($We^$_SESSION["token"]).":$We";}function
940verify_token(){list($T,$We)=explode(":",$_POST["token"]);return($We^$_SESSION["token"])==$T;}function
941lzw_decompress($Da){$_b=256;$Ea=8;$Ta=array();$hf=0;$if=0;for($v=0;$v<strlen($Da);$v++){$hf=($hf<<8)+ord($Da[$v]);$if+=8;if($if>=$Ea){$if-=$Ea;$Ta[]=$hf>>$if;$hf&=(1<<$if)-1;$_b++;if($_b>>$Ea)$Ea++;}}$zb=range("\0","\xFF");$K="";foreach($Ta
942as$v=>$Sa){$Ob=$zb[$Sa];if(!isset($Ob))$Ob=$Tg.$Tg[0];$K.=$Ob;if($v)$zb[]=$Tg.$Ob[0];$Tg=$Ob;}return$K;}function
943on_help($Za,$Af=0){return" onmouseover='helpMouseover(this, event, ".h($Za).", $Af);' onmouseout='helpMouseout(this, event);'";}function
944edit_form($b,$o,$L,$Dg){global$c,$y,$T,$m;$Sf=$c->tableName(table_status1($b,true));page_header(($Dg?lang(10):lang(11)),$m,array("select"=>array($b,$Sf)),$Sf);if($L===false)echo"<p class='error'>".lang(12)."\n";echo'<form action="" method="post" enctype="multipart/form-data" id="form">
945';if(!$o)echo"<p class='error'>".lang(13)."\n";else{echo"<table cellspacing='0' onkeydown='return editingKeydown(event);'>\n";foreach($o
946as$F=>$n){echo"<tr><th>".$c->fieldName($n);$vb=$_GET["set"][bracket_escape($F)];if($vb===null){$vb=$n["default"];if($n["type"]=="bit"&&preg_match("~^b'([01]*)'\$~",$vb,$ef))$vb=$ef[1];}$Y=($L!==null?($L[$F]!=""&&$y=="sql"&&preg_match("~enum|set~",$n["type"])?(is_array($L[$F])?array_sum($L[$F]):+$L[$F]):$L[$F]):(!$Dg&&$n["auto_increment"]?"":(isset($_GET["select"])?false:$vb)));if(!$_POST["save"]&&is_string($Y))$Y=$c->editVal($Y,$n);$s=($_POST["save"]?(string)$_POST["function"][$F]:($Dg&&$n["on_update"]=="CURRENT_TIMESTAMP"?"now":($Y===false?null:($Y!==null?'':'NULL'))));if(preg_match("~time~",$n["type"])&&$Y=="CURRENT_TIMESTAMP"){$Y="";$s="now";}input($n,$Y,$s);echo"\n";}if(!support("table"))echo"<tr>"."<th><input name='field_keys[]' onkeyup='keyupChange.call(this);' onchange='fieldChange(this);' value=''>"."<td class='function'>".html_select("field_funs[]",$c->editFunctions(array("null"=>isset($_GET["select"]))))."<td><input name='field_vals[]'>"."\n";echo"</table>\n";}echo"<p>\n";if($o){echo"<input type='submit' value='".lang(14)."'>\n";if(!isset($_GET["select"]))echo"<input type='submit' name='insert' value='".($Dg?lang(15)."' onclick='return !ajaxForm(this.form, \"".lang(16).'...", this)':lang(17))."' title='Ctrl+Shift+Enter'>\n";}echo($Dg?"<input type='submit' name='delete' value='".lang(18)."'".confirm().">\n":($_POST||!$o?"":"<script type='text/javascript'>focus(document.getElementById('form').getElementsByTagName('td')[1].firstChild);</script>\n"));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"]),'">
947<input type="hidden" name="save" value="1">
948<input type="hidden" name="token" value="',$T,'">
949</form>
950';}global$c,$g,$Eb,$Lb,$Vb,$m,$xc,$_c,$ba,$Pc,$y,$a,$hd,$Zd,$Ce,$Kf,$Dc,$T,$rg,$wg,$Cg,$fa;if(!$_SERVER["REQUEST_URI"])$_SERVER["REQUEST_URI"]=$_SERVER["ORIG_PATH_INFO"];if(!strpos($_SERVER["REQUEST_URI"],'?')&&$_SERVER["QUERY_STRING"]!="")$_SERVER["REQUEST_URI"].="?$_SERVER[QUERY_STRING]";$ba=$_SERVER["HTTPS"]&&strcasecmp($_SERVER["HTTPS"],"off");@ini_set("session.use_trans_sid",false);session_cache_limiter("");if(!defined("SID")){session_name("adminer_sid");$te=array(0,preg_replace('~\\?.*~','',$_SERVER["REQUEST_URI"]),"",$ba);if(version_compare(PHP_VERSION,'5.2.0')>=0)$te[]=true;call_user_func_array('session_set_cookie_params',$te);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",20);$hd=array('en'=>'English','ar'=>'
951','bn'=>'
952','ca'=>'Catal
953','cs'=>'
954tina','da'=>'Dansk','de'=>'Deutsch','es'=>'Espa
955ol','et'=>'Eesti','fa'=>'
956','fr'=>'Fran
957ais','hu'=>'Magyar','id'=>'Bahasa Indonesia','it'=>'Italiano','ja'=>'
958','ko'=>'
959','lt'=>'Lietuvi
960','nl'=>'Nederlands','no'=>'Norsk','pl'=>'Polski','pt'=>'Portugu
961s','pt-br'=>'Portugu
962s (Brazil)','ro'=>'Limba Rom
963','ru'=>'
964','sk'=>'Sloven
965ina','sl'=>'Slovenski','sr'=>'
966','ta'=>'
967','th'=>'
968','tr'=>'T
969e','uk'=>'
970','vi'=>'Ti
971ng Vi
972t','zh'=>'
973','zh-tw'=>'
974',);function
975get_lang(){global$a;return$a;}function
976lang($Kc,$Qd=null){if(is_string($Kc)){$Fe=array_search($Kc,get_translations("en"));if($Fe!==false)$Kc=$Fe;}global$a,$rg;$qg=($rg[$Kc]?$rg[$Kc]:$Kc);if(is_array($qg)){$Fe=($Qd==1?0:($a=='cs'||$a=='sk'?($Qd&&$Qd<5?1:2):($a=='fr'?(!$Qd?0:1):($a=='pl'?($Qd%10>1&&$Qd%10<5&&$Qd/10%10!=1?1:2):($a=='sl'?($Qd%100==1?0:($Qd%100==2?1:($Qd%100==3||$Qd%100==4?2:3))):($a=='lt'?($Qd%10==1&&$Qd%100!=11?0:($Qd%10>1&&$Qd/10%10!=1?1:2)):($a=='ru'||$a=='sr'||$a=='uk'?($Qd%10==1&&$Qd%100!=11?0:($Qd%10>1&&$Qd%10<5&&$Qd/10%10!=1?1:2)):1)))))));$qg=$qg[$Fe];}$ta=func_get_args();array_shift($ta);$tc=str_replace("%d","%s",$qg);if($tc!=$qg)$ta[0]=format_number($Qd);return
977vsprintf($tc,$ta);}function
978switch_lang(){global$a,$hd;echo"<form action='' method='post'>\n<div id='lang'>",lang(19).": ".html_select("lang",$hd,$a,"this.form.submit();")," <input type='submit' value='".lang(20)."' class='hidden'>\n","<input type='hidden' name='token' value='".get_token()."'>\n";echo"</div>\n</form>\n";}if(isset($_POST["lang"])&&verify_token()){cookie("adminer_lang",$_POST["lang"]);$_SESSION["lang"]=$_POST["lang"];$_SESSION["translations"]=array();redirect(remove_from_uri());}$a="en";if(isset($hd[$_COOKIE["adminer_lang"]])){cookie("adminer_lang",$_COOKIE["adminer_lang"]);$a=$_COOKIE["adminer_lang"];}elseif(isset($hd[$_SESSION["lang"]]))$a=$_SESSION["lang"];else{$ka=array();preg_match_all('~([-a-z]+)(;q=([0-9.]+))?~',str_replace("_","-",strtolower($_SERVER["HTTP_ACCEPT_LANGUAGE"])),$vd,PREG_SET_ORDER);foreach($vd
979as$C)$ka[$C[1]]=(isset($C[3])?$C[3]:1);arsort($ka);foreach($ka
980as$z=>$H){if(isset($hd[$z])){$a=$z;break;}$z=preg_replace('~-.*~','',$z);if(!isset($ka[$z])&&isset($hd[$z])){$a=$z;break;}}}$rg=&$_SESSION["translations"];if($_SESSION["translations_version"]!=3589914440){$rg=array();$_SESSION["translations_version"]=3589914440;}function
981get_translations($gd){switch($gd){case"en":$f="A9
982OP#I
983r\n2
9841C`(
985S=\$A
986+N&\r
987PuWR
988\r=?X
989zE,-m
9902(A{\r
991k\$\"
992pA.7
993KJu~4
994Nt8g
995\$cB
9968_
997 mc
998KAxD
999`8Ir
1000H\nE
1001%Ib\\
1002
1003dAH
1004 \$P,3
10055
1006 I\n*0\r\$
1007GhwM
10086@~\0Q
1009a/^h
1010_,ih
10119#\rQG
1012\r\$
1013= (+
1014SZ\n?
1015,LJV
1016\"Wii2
1017n\rq}G
1018/!Im
1019\$!<%
1020\rZC
1021`
1022 lH
1023BpG!
1024e
1025 VyN
1026S/28
1027XT4WN
1028In
1029 (\nPKk
1030/|/T
1031vX\\P
1032\"kYj4
10331\nl
1034+O9i
1035;3gg
1036)1#'
1037)nU9
1038r{B{
1039*eA\\D
1040Y&\"
1041<q**
1042Hc\rv
1043E\\d
1044Q[\$
1045\neXT
1046x #N
1047%D\\
1048h(ifx
1049n2;i
1050-Jb2
1051\0\\";break;case"ar":$f="
1052,&\n
1053]6QM
1054\\\nl+[\n
1055GT\r
1056'T6U1
1057]N*PZ,
1058d!iQl(p
1059tl.n
1060P\\1q+
1061\n&T
1062RF\\
1063dE+(
10641eL0
1065k&Di
1066,o8J
1067m\rG
1068#FD
1069
1070\rc(
1071k\0*
1072Nv2p
1073Ax^;
10748\$c
1075I'+k|
1076MH
1077
1078\"r_S
1079O,pT\0
1080\0U\n
1081\"JXF
1082j`\\i(
1083V^#e,W
1084%\\K
1085BzST1:d*
1086Q\"~
1087D
1088 `V
1089s;Q*
1090[#\n*
1091gQB'x
10929t&~
1093(KYa
1094j;ki
10950U@e(o
1096\0QI
1097\0)T
1098_sV*
1099Z8xa
1100\r)eya
1101XUOw:N2
1102-&Vc
1103f\"ki\0&M
1104
1105 FHK
1106Pd\\rdPtpJ
1107
1108\"%
1109p0\$
1110H`1J\$
1111@
1112 C^m@
111361Q8
1114-0%D
11156G&.r
1116%%,\r
1117(O\r
1118+tw0
1119('r\n
1120IbUq])
1121\$?\$B
1122N}\$
1123J@l4A
1124\n`";break;case"bn":$f="
1125\nt
1126
1127]\0_
1128XD)L
1129\$:IK
1130g5U4
1131Nd!u>
1132@'Jx
1133(n+L
1134,(_)
11354]y3
1136\\U*
11372\$E
1138OSDU@
1139\"`Z
1140\neE5\\
1141Z7G5
1142A\0mF
1143 SK3S0
1144\"kd[
1145|\\O
1146(Cpt~
1147@PNS
1148\0\n
1149aQ]J&
1150TRVUi
1151wU\n
1152u>3P3
1153A\0A
1154xS\n
1155H\rE
1156\0Sm
1157{\$pF\n
1158yP(1L
1159Cerd1=
1160T<b[
1161uU S
1162i=ru\r
1163^#3;
11646XS
1165
11668\nd
1167rcZ1
1168\\{G
1169B\0^
1170\rL.
1171nKiml
1172\\&]{
1173q/I2
1174#n[j(
1175U#r_
1176rI
1177 RS
11782m\"4
1179\rLf
1180b\n\$T
11812+\$
1182Hn
1183 g
1184uR3%q
1185jh7!
1186\$o#/
1187be.k
11881Bt
1189 tm
1190=Nq<S
1191{T
1192 )
1193hpDf
1194rc@S
1195Ipg\0
1196Po+P
11976gmKR0
1198PRYUS6
1199MKS1
1200LfeR
1201r;-T-
1202QPz_
1203\r`@
1204P
1205 v6F
1206RRM,
1207'6u^6xx
1208cv;C
1209^QGB
1210L;Tw?
1211iu1%\\p
1212a1\n\n
1213Gd[)
1214IMqZ
1215'+vS
1216t\n`
1217";break;case"ca":$f="E9
1218\\33A
1219r\n1
1220\\>R
1221Y\$l
12221\"P
1223czF9
1224 (8
1225%l(A
12261,[.
1227#;<0
1228^J*;o\\
1229M\$Kl
1230&T92
1231Ax^;
1232'EB\n6C
1233,mEh
1234-rjN
1235mg\"
1236\0A
1237
1238E\$xj
1239#0@W
1240\$1h
1241\0U\n
1242xMa=2
1243\\\$
1244\0aa
1245& \$
1246}\"\n
1247#CqF
1248I4.d
1249^P\0E5
1250+\rD(
1251|wZA]
1252U1\r
1253&TMgD
1254&1\r
1255
1256\\p
1257Ahh+
1258]r&3>
1259{\\=5/vn
1260F6SIj
1261\np7*
1262=\".
1263]s?z
1264:\0f
1265\r/J
1266D&bE33%|w.
1267qdOd
12681\\86
1269/M\n
1270R\r\n
1271d2\0
1272a1\$
1273\$:J
1274TbJ2
1275-T6D
1276d0cPN
1277^G\$
1278!\0@
1279O&/D
1280\nW)
1281p{g)&J
1282t\n`
1283";break;case"cs":$f="O8
1284
1285FC1
1286j\nb
1287dWeH
1288le2b
1289?y\$
1290CJz94
12919\r0@
1292CkH77
1293LS\$
1294 @1
1295 #P
12967\rp8
1297MCCs
1298<b
1299 \\
1300`@=h
13016:^x;jm
1302I[QC'
1303Bn9K-\$z
1304e \r
1305Ax^;
1306:@dL
1307I+/%
1308\"E
13091tE\n
1310*Wpq
1311F\r-,
1312iW%\r.H
1313aR06
1314JMY=
1315:\$(P
1316V)o\\
1317;eLN
13180ugc
1319A<176iF+i
1320\\*1
1321^C\n
13224GuL
1323\"mE
1324a\"]
1325U?R{
1326Kj\r0
1327{&<
1328
1329B2fU
1330\$`u
1331J1)C
1332=\nEQ
1333\"l.
13349+
1335 %tC
13369&\"
13376Q\0
1338iB<O
1339bvQh
1340+\nMPr
1341zq\"N
1342/ M/f
1343Z(1j
13440>.
1345\$cD
1346#CVT
1347V:\"
1348p%rB
1349\r-2q.
1350\$\"
1351d% ck
1352(R\"LL2
1353*+.aE(>
1354r\$
1355 \$
1356|\$E
1357Nz\$n~(\"
13580>ss
1359/4<t\$\r4>
1360";break;case"da":$f="E9
1361\\33AAD
1362\\\n&
1363Mpci
1364 :IM
1365Js:0
1366\nNF
1367h\n!
1368pQ:]
1369.74(
13703@7-n
1371jp64c:D
13726L T
1373,J:B0
1374\r[2
1375lQ'\r
1376ab`9^c
1377.]N@
1378<\09
1379
1380!\0
1381\$8j
1382f7\ra
1383:uUW
1384Kh@;>
1385.y{Mz\$C
1386\n R
1387Uc<3'
1388;r\"
1389hE\$
1390s!@'
1391*(e>q
1392\0PP\\ih
1393R[qk
1394<S\"8`
1395{V o_!
1396MV\"
1397T(T.
1398s\"a
1399xBYmH
1400o(Nr
1401bJzCxp
1402!bOK
1403:<9'(7
1404hK\r
1405\$\\I
1406P\nXh\\f
1407MCkl}
1408VFr!
1409EEm:dR
1410j%T\r
1411_\$
1412
1413|*:K1
1414Y@!#5Z:
1415f/mm
1416Nd(T
1417Za\$
1418eC>4/
1419@?,v
1420
1421(\"
1422\"b2)
14238=\"t
1424t@";break;case"de":$f="S4
1425
1426'C)
1427\$RCI
1428t\n%
1429aRA`
1430c\n|j
1431C\nT
1432\n7?
1433.(
1434 #
1435I2<`P
1436xZ\$
1437apA\nA
1438eyn^
1439\\aA
1440B0@*\r
1441v1^HO
1442\0002?
144348c0z
1444Atr3
1445_X1hB@
14461#1(D
14470rY\$p
1448Y9[
1449(r:F(
1450H@Jq:c
1451N2&qA
1452VxnepIJ
1453(z@D
1454;q\$
1455#(f>
1456xS\n
14570o)L
1458QEK1
1459H2/%f/
1460p \n
1461Z24>
1462<8QeF
1463N?\rE
1464\r wK3
1465*W\n
1466\n\r\0
14675JX\n\rd
1468\"\n
1469Qo@R
1470RXuo\"
1471.66#
1472\"
1473 =&
1474kq*t
1475^\\E#
1476TgWqD
1477P\$X\\d
1478b6O*
1479BH`k}RC
1480hgn2
14818i\":
1482\0C~
1483p?\r
1484\re(
1485\$bNP
1486\\Tf
1487h \"f
1488j'\r
1489D?lZ
14904D\0
1491%-8ri
1492I@PJ
1493X\"H
1494\"g#
1495<a\"
1496\nfp)
14978Fvhb
14985/*C
1499
1500H2B4
1501RZ\rb\\
15029.(b
1503@\rZD
1504Y#\"84
1505 ";break;case"es":$f="E9
1506\\33AAD
1507Z0%9
1508(>\")
1509prcq
1510(!\0
1511\n0L#
1512
1513xJ2CC
1514R,<uD&
1515Cj7=
1516\n\r#M5
1517l`@7
151829FGB
1519
1520x;Am\r
1521/i;P:u
15227\ra
1523:\r
1524
1525bB:#/
1526
1527M5I
1528rpY\$
1529fq\$
1530c=r@R
1531I\"!
1532&A@'
1533WMN
1534 =
1535\rc5?
1536*#>Lu
1537\n!8l
1538m
1539 LZ#
1540P\n\n
1541\\U(\n
1542}\rrs
1543pxa2
1544t5\$
15451^L1r
1546n5=
1547
1548x*W\$U9
1549X\n)A
15509-&*
1551%PF*
1552?j\$*
1553-{.q4
1554'P^VS
1555i5!Ap
1556F#\$l
1557!@R(
1558_VhoB
1559BG7hXy
1560C5Tj
1561tk4~iO
1562*Cw%r|
1563w1\$
1564Y{NI
1565.DTO
1566ddIl
1567P^t'
1568d \r
1569Vr#
1570
1571Fj&On
1572/+h[K
1573 dr?
1574b\"~
1575:q\\
1576\$b>UNx6j
1577cJ>C
15782H*8
1579z8\$
1580T\$b
1581CcvMK`
1582nsR
1583r*1E6]B
1584c i\n
1585t\n`
1586";break;case"et":$f="K0
1587
1588FC1
1589Uj;F
1590r:\r#
1591(\\ 1\$i
1592+\$m
1593\n\"`Z(;
1594\\R\r
1595#:27
1596PA=8
1597-#8_fu
1598\08
1599D9J{
1600 ~+~6
16017\0`
16024Mz0
1603 *Gh,
1604#a0h
1605 !\"92
1606D&eP
1607z\n^
1608(RLK\0^
1609\$UAH
1610Ij\r
1611Ci/\rTX
1612CZL47
1613~E i
1614q'Kq
1615zrO!
1616s7\0q
1617kS!cl%
1618\\+L_
1619bh\0
1620\$\0
1621SE\r
1622b.A]\rD
1623Y*b8Y
1624SZSlY
1625a[4\n
1626^L\0
1627(ko-
1628^hxBM
1629|RKe
1630\\Kq
1631~1m(
1632,S\0k3\0
1633 K/\0
1634~\0P
1635rj\$\$\r
1636V\rbfM
1637oXKb
1638*B8h
1639
1640\"j
1641m0&LH%&\"
16424\"b;
1643\"6~
1644J3#6
1645\\K\n
1646Bb7!@@\n
1647(
1648 r\\
1649h\r2l4
1650*~\0
1651t\n`
1652";break;case"fa":$f="
1653aQ\n
1654Ma+X
1655[\"S
1656)Cfh
1657\0Sm`
1658+<NCiW
1659Mb\"
1660
16615o#
1662\r*F
1663B:_+
1664Q%%r
1665)=t+\$
16661@@)
1667Wb#w,
1668e\\e
1669,lh9:
1670x&\"
1671\0x0
16726
1673 #p
1674#)\\
1675}QI\n\"
1676&XMY
1677yMiiA\0%RfV`#6
1678Z.I+
16794B*f
16800r\r
1681z\r\r
1682,nQpQ
1683<x&z
1684&q6NO%
1685,4n(\$
1686 A\n
1687/DDV
1688R\0=
1689VJZD
1690(\"V
1691~aIiM
1692eh\$
1693%\nAH
1694=sXMh
1695)X\$
1696<TIQ
1697?\ne
1698\0^[
1699,4\"d
1700GAIr
1701u%\\
17027'\nuv
1703R9Vm
1704'\$bd
1705Ts9v
1706.}dc
1707M
1708 CdSM_
1709X\nv
1710/{>J
1711%~eG
1712\rC~
1713XOID
1714{;b{\n
1715`]0\rD
1716~}]f
1717fRj\n
1718QDdmm`
1719>cdS
1720/fK0\0
1721N7or
1722M*BO
1723
1724(LP
1725P,Ypf
1726c!D6
1727>@hr
1728L^-?
1729=`";break;case"fr":$f="
1730i7\n
1731
1732\ntL
1733LgSt
1734g!uz
1735,shy
17366\r#
1737Kq\0
1738MrQ
1739
1740\"P;@
1741HKJR
1742-/+\r
1743\n_J
1744/L<6
1745MK6`S
1746mH
1747 0
1748a3YS&
1749UtiR
1750C*\r
1751\rjF
1752CCx8
1753Ax^;
1754\$;
1755\0a&
1756T\0002/
1757@#\"
1758\0(*
1759T'AL4
1760\n7h@
1761\nHp
1762d\$
1763\rk.j
1764\0R;
1765BbA+
1766!\$L2
1767h'e)
1768\n\nP
1769tBJc
1770\nQlM>D
1771^tZp
1772hUA'
1773%-+cp
1774HvF&
1775%WKMR`
1776SJS !
1777rlwf\n
1778Ec9
1779 CN\"
1780ZA\\2
1781HGyE
1782^ago2
1783I+\r
1784^BP\n)
17857`aWS
1786U\"j
1787@\rN2lD
1788TlP{
1789p
1790 \n
1791REf
1792!bFy
1793n1(!
1794_#V3
1795@LZ@
1796\0E*
1797\\Xb
1798;m4)R
179913)1
1800\r\"
1801";break;case"hu":$f="B4
1802\\33
1803NF0Q8
1804kiL
1805\\\n
1806LMBl4
1807MRr2
1808X)\no9
1809
1810FC1
1811\n!aOL5
1812*DAq2Q
1813
1814'c-L
1815!4Pd&
1816<W>do6
1817c\r[
1818Un\\t
1819(6<
1820 YB6
1821B\"(
1822M\rI\n
1823;O\n\$
1824>G#P
1825r9\r
1826 2C;F4
1827Jc-C
1828\n\r
1829AuH3
1830,B\nHe\rd(5
1831&|7=
1832B4eL1
1833\0dAf
1834E\\X\nf@
1835\rVbw'
1836>m\$j2
1837\na^
1838gW<g
1839`pR\nI
1840S&eC8yUe
1841:nAYSje
1842@PV?
1843gTPI
1844%RR(
1845HzJ9w+/
1846Gy\n=
1847(0QIqx:
1848b\"n
1849e
1850 GNi
1851HizNz
1852l2Ip
1853a\"F%
1854'nU#U
1855B\"e
18560oC'
1857[oX%
1858{\$2
1859[\\=
1860
1861;}:a
1862*KDt!
18632>yl
1864'0\"ko
1865:\"^
1866\nIb?`
1867 3*y
1868\0%m2
1869~MfX
1870r\"B.\r
1871@\$BH\$\n
1872L<jE%H
1873ZD\$
18743h\"
1875\n5H&
1876Y0zT
1877CVLE
1878'GW13
1879a8+
1880";break;case"id":$f="A7
1881\r0#X
1882\"Rn
1883\"pi
1884
1885'\r
1886\0003
1887
1888&jY
18895\r#
1890B2@3
1891LC8\r-J
1892BZ:0
1893)`Tl
1894J(3,
1895*YC\r
1896J\"r3-
1897rY
1898 *
1899P\n;
1900 a@'
1901T2~
1902 Q
1903\0cN
1904@nME
1905(f
1906 +
1907SJ%<
1908
1909=+@
1910I 3,
1911\\Kb!
1912 g
1913Ic\$d
1914Ao@!
1915\\\$
1916]QSs
1917\\CA
1918J3p_-
1919)\"2K#
1920a=Gy4C
1921\ncB
1922%!MXjs
1923W,IU
1924O*4!4
1925=Q\$UMB
1926C?DM\nP4;
19275)=0
1928yea,
1929V7--
1930R:{m@V
1931b|rK7
1932j0{i
1933yB8(
1934AjOV
1935^BJf'H
1936k&NI
1937 b\\SC
1938j&x(
1939.c\n
1940Q\"`
1941=G&1
1942`";break;case"it":$f="S4
1943a9@L&
1944\"u9
19451qp(
1946NgC,
1947S|\\
1948\"'j
1949\n\"
19501'OX
1951RJ80I
1952 : k
19539/K`
1954*jR0
1955s,aY?M
1956VMj2
1957\nC*
1958Y\r43
1959z'czZ)
1960~
1961 8B,
1962Aw
1963 8~
19646_B1()m
19656(0H
1966:5-\\
1967A\0Ame
1968\nOh
1969+.\r&
1970\n7)
1971 0
1972\0U\n
1973(fh+q
1974<S_'
1975\nvR5
1976iP:L
1977:\$T
1978HT.n
1979IXxy]e
1980I0-m4
1981A[k}b1
1982(F\r,VL
1983\rWN+
1984%m*y-3
1985?-W\\~#
1986Z\\<
1987\$yVWK
1988LT?u
1989\ngt]
1990A%\r
1991wa0S
1992e#- d
1993/ViA
1994T`D\\
1995\nPt
1996Y'e*
1997p2Hp]
1998\n\$
19997`@:B
2000n\np@Y)6\r
2001:`I2
2002rSE\n
2003t\n`
2004";break;case"ja":$f="
2005\\}%
2006B\r[
2007T\n\n>
2008Ygn4
2009T:Shi
2010E:S*L
2011*8U#
2012eR6A
2013`\\;
201494B
2015j:9.
2016,\\I(\$I
201796W
2018 A *
2019Ds@@S\$CH
20209hQ9
2021 [VD\"{
2022\$Y+I
2023Q%jR
2024h1T!
2025)\r`
2026z\rci3BP
2027\0x0
2028(\\0
2029P7P,
2030a\rf
2031\$4w
2032c@PI\"
2033u70x3
2034A\0A}-
2035O\naQ|
2036I
2037 vl
2038Ho}
2039
2040\0S\\
2041Kiq*
2042:\$]M=
2043Tkp\"
2044t\ni8
2045!QYQS
2046TDdxA
2047A\$;
2048&
2049 SZ
2050\$\n
2051X'u#
2052kr3s
20531r\$
2054Ta%b
2055 \n)W
2056c,f7
2057IK\0|
2058bbtA
2059XfZ`
2060~F(u
2061tTM#h
2062>a>r
2063=\0.
2064u\nb9\n
2065
2066-\0
2067%\rL6
2068O9\r
2069\r\0
2070.<RAv
2071\r`@
2072\0@~@
2073p=\r
2074dA%\"
2075\"2b
2076IL<@
2077(\"0
2078\"\n
20797#P5CX
2080 @
2081\nB\r
2082\$";break;case"ko":$f="
2083iBvr
2084hY`B
2085X,H10J
2086\$i`
2087\"`YB
2088i0\\E1\\?
2089fZDoif@!
20909Pv'
2091TT&%
2092YNDP
2093g^7J0
2094ma-,6
20951\rO
2096
2097-^z3
2098v:y\"
2099l\ra
2100\nS@h
2101yk2 ((
2102<RGYK&
2103xz)E
2104rl\\
2105d\r*X
21060r\r
2107jrJh
2108S#(YZT)
2109\"rU!
2110\0S[`
2111(F\n
2112SrEH
2113!P\"
2114XpnVx)
2115(d?'
2116'4xl
2117@KF|Y\n
2118\"\\>48
2119A\$vwO
2120FV\n,
2121c&eL
2122&*>3bxB
2123==Dm
2124fT\\
2125kskmOq
2126.[UK
2127:;Vy~:
2128:8aE}
2129\n`&I
21304H\$*
2131d\r\0
2132NR! !.
2133i*\r
2134\r`@|
2135\0@{
2136ba@b
2137E2%Fnj
2138Zcx5cZ5
2139EZ4-
2140FY\r
2141`@\n
2142OAjN
2143\0";break;case"lt":$f="T4
2144Nd)!
2145
2146@l2
2147g\$)
2148=&:\nb+
2149@t4M
2150b&Nq
2151,1XI
2152(D#H
2153\nQ{
21542Ln<
2155hJ2F
2156\rIR,:M#
2157=e\r
2158Tl{#
2159#(P9
2160ap@!Y
2161cm'x
2162C\\6
2163\\=/
2164K-;\$i,
2165I\n\0
2166<:yB
2167[f\ra
2168 %dh
2169Hr\r_%
2170\"-,
2171j\rQ
2172P\\A\0c\$A
2173\$\n
2174xS\n
2175jM]|jq
2176
2177tpYm
2178Uih.GH
2179,'b;D
2180\rb)
2181#plW
2182 iAg
2183
2184Q@K!
2185)2\0
2186Rf\0W
2187E\\LL
21883dv/
2189_-LL~
2190,dlO
21912Q\$\n
2192vR2o
2193O7PP
2194Y\\\r
2195uGH7\\+{
2196-U\"
2197/a/S
2198GksvD
2199_v\"
2200k\$v
2201M\\x
2202s
2203 \r
2204\$LM
2205LB0L
2206fK\"
220730H6B
2208BDsC
2209P'dT\r.
2210\$nv&
2211,d^r
2212TB\n
2213zZMz
2214vHJf
2215 /J]00d
2216 )j?
2217\n2(b
2218";break;case"nl":$f="W2
2219 &pQ
2220t)<_u
2221QO;z
2222+\"!/C
22239\$S
2224k\"
2225\"`@7
2226C\0P
2227Ef3R
2228\n:2/
2229mf8+
2230Ax^;
22317?bI
2232p;!\0P
2233m\"Z
2234{ >N
2235-_gp
2236S`#B1E
2237\"
2238 c
2239\r\$
2240S2AUqE5
2241+eEv)
2242dJ|\r
2243( D6K
22443THL
2245(f
2246 ,x
2247lI:!
22483E\"
2249reK\n*^L
2250Q@PP!
2251Tg;|J
2252\n0h91S
2253{0qAu
2254b\0e
2255r,VI,k
2256+{7&
2257\$@@
2258*@(+
2259S\$g%F
2260k1!Y
2261\\:I
2262K5_o
2263PZ~\n(d
22642iFb
2265DV&\r
2266nKO:>
2267m|ef
2268>\$-
2269P 9G>
2270{c(\$
2271*c8mBF8OV'J.o
2272,QO0eMr
2273DTj\\z
2274<!BR
2275\n`";break;case"no":$f="E9
2276\\33AAD
2277
2278FC1
2279AGCy
2280\n\$
2281mj4`
2282\rKM7
2283*\\^
2284w6^M
2285\0D0
2286.7:Cc
2287Z5\r
2288:0+C
2289k,D2\r
2290x(-1
2291\r\n
2292c`Z4'c
2293ARPcx
2294DR:*9
2295#uH2
2296it\r
2297:.p88ct
2298:%)Z
2299\0x0
2300*:'i
2301F^\nA
230296Q4:z&
2303@ry%
2304p \r
2305&(\$
2306PH
2307 E~&071B
2308\"H]\"
2309\njh
2310 A\n
231171Mr
2312*eR'H;
2313\$2JV4
2314`4/t
2315Y\0B
2316\"PIv`
2317 fvgH'
2318Z[Of
2319:Z\"yi
2320m-))
2321\n\n
2322\\8+2
2323|H@a1
2324rgDR
2325 ('K
2326>_Cu
2327[s;J
2328\"|h
2329%UYo
2330Gu
2331 \"
2332V\n]]
2333|C`+\rj8
2334V\r)
2335.e&6\"
2336\$\\
2337{E;\0
2338\$Bf2%
2339#0\"
2340#\0%i4-
2341M%}
2342 q
2343
2344";break;case"pl":$f="C=
2345\$Gs(
2346<\n!Gj
2347X1
2348 (
2349\$`P
2350,Sr1
2351Tz(\r
2352({A+(
2353\$2\"c\"L
2354HK9C
23557\rm:
2356)1`P
23576(o8
23588cudC
2359#(@)
2360p@\$
2361
23621B
2363bIZZ:
2364B0]i
2365YI^86
23665(=\r
2367Ax^;
2368(*bW
2369Kl l
2370!\\-\$G
23711/\0
2372%\$
2373m\rd|
2374[Q1%n!
2375\":F
23767R\\M
2377_:bZ%
23781s,F
2379A<8)
23807AAc
2381S\rO
2382H1\0
2383\nI\r
2384D6)h
2385\"|1
2386D?2N
2387M@JHx
2388'Q*wM
2389;&\"
2390S*5O8F
2391*/es
2392a{n/
2393ZVddZG
2394F0\0j
2395LDzhLn
2396\"Z
2397 c
2398U+
2399 ZD
2400\nN^
2401\"=
2402 :
2403\$wP
2404\r2<D2@l27
2405\nN,
240620\r1\"8\r
2407Whf\$
2408PGbM
2409
2410*6c
2411\"1DZ#
2412GB=H
2413K/*b
2414tc\0
2415\nT=\r
24166Rc
2417
2418^\ng:s
2419Ck#AR/G
2420>4LLc
2421Eq0{*
242240\"";break;case"pt":$f="T2
2423l@%9
2424l 7E
2425
2426&))
2427X\n\$
2428\\[\rOZ
24292wYn
2430#\"i
2431\nD1\0
2432h\\R
24332qlC
2434\r([
2435
24361Lbb
2437PCbL
2438
2439Mz&
2440\09U2|
2441=j@\\
2442Ax^;
24432ye
2444
2445.4(K
2446\nI9^~
2447t\$@
24486FuJ
2449xS\n
2450(2P@
2451 u!d
2452>Fb3
2453d b.
2454p \n
2455EQcu
2456\$3'
2457`9PT
2458U5_`M1?R
2459\0U\rq
2460\0006
2461\0r\"
2462je!E
246384<`
2464%nC%
2465N0S4
2466e#qyo
2467j-}R
2468tQ|Q'
2469OQp8
2470s>To
2471{Ce;O
2472
2473\r\n
2474y/\\8
2475*hV'
2476<ONb6
2477J)b<
2478
2479 ZR
2480atc\"
2481j6QB6@
2482>QZ9n
24836%\"3#
2484_#d/1X
2485JCr2
2486/\$b1
2487>Pot
2488a\0@\n
2489";break;case"pt-br":$f="V7
2490\n'0
2491\rR 8
2492Lv>%9
2493n 7F
2494
2495&)A
24967RA\\yi
24979
2498 P
2499\\\n&3
2500R.!0\n
2501<pH@
2502sko
2503
2504X@6 ,
2505O#bR
2506c))J
2507(c(\"
2508\$c0
2509(S\$
2510*\$
2511 p
251283C(
2513\r\n
2514\"EC
2515C0vN
25167sNB
2517Hq18j
2518\0F\n
2519~A<'
2520 A\n
25214.tQ*
2522NQJ;
2523Lj80
2524<:aA
2525O&=\$
2526\r\$8
2527RNtO
2528fS:i
2529zoMW
25306iqS1
2531wMDSV
2532`cFb
2533xw\"
2534/<D!\\
2535NB~q
2536t0KV
2537Nn'=L
2538\\F-
2539\nf!
2540{\rEh
2541zt4z
2542}+y>
2543OG,q
2544Y+HQ
2545AUpf
2546|]l3
2547\r\0
2548!c*_
2549\n*\r*
2550\"MB
2551##:#
2552@\$Gb\$
2553\rbr\n
2554G\$\n
2555atJb
2556/DnA
2557\r#z1@
2558PB8A
2559R\0MJ
2560J\\Q
2561PC1TMB[%
2562<@jQ
2563 ";break;case"ro":$f="S:
2564\$\"
2565
2566FC1
2567AFsy
2568LFSa
2569`xHx(
2570Kk{3
2571\nB@
2572
2573N(D
25741P#?
2575oc:
2576S&6&
2577p76L
25785h||
2579lS;W
2580 nER9
2581K;\r3c
2582\$\$
2583\"cP\n
25843/\n*
25857\ra
2586**tX
2587r])/
2588sq\0^!81
2589\n\n
2590[d}
2591U\0kP
2592\r*!B
2593a\rE
2594 (
2595(N\n
2596\0DJ
2597\nD!
2598A\0v/
2599\"E=
2600,N\n(
2601@\$KR
2602e(Db[t
26036Pj'
2604_#S\r
2605HRh'rV@
2606KG\0
2607LW!?b
2608BhSz
2609b_L4
2610gvle
2611Rt)(
26121,43
2613\$g9
2614LpfAJu
2615v
2616 B5
2617 AJfT
26180L8p
2619!r.|
2620@eiO
2621
2622 4~
2623\\/K
2624f3oz
2625\n<0
26260R\$
2627p
2628 C/
2629/%\$
2630c:\n
2631Q\nK
2632\\kD\\\r
26337\nB
2634\"z'
2635XQ\0
26360I,B#
2637<#4T
2638\r\$8
2639dR=%
26409c~6
2641%%\$
2642S\"b:G>
2643(%jNNZ/
2644*Jv=
2645t\n`
2646";break;case"ru":$f="
2647I4Qb
2648h-Z(
2649BKW2)R
2650NKWRi
2651Ay-]
2652\n@N'R)
2653Tq\0(`1
2654Xi\$fi'B
2655i6FFc{Y
2656\$|~
2657(bi/M.q
2658\n\"
26596\$+N
26600\$zTY(
2661KP-[
2662D&K<e`
2663Y:!(
2664y(8(
2665\rc8j
2666!+Hn
2667\n\"bT
2668N1k\n
2669Zjn:
26706Ec*
2671G]QB
2672 FDp]
2673\nAJ8M
2674 !
2675Cpt@
2676#R>q
2677\$(8`a
2678'8^\"*
2679q-aI
2680tM\nW9
26813\n!
2682\r 2v
2683J\n&q
2684PFMy
2685%\nJP
2686K3t4a
2687c,^|
2688(!\nM
2689mS*uA
26900T=9
2691`v
2692 !
2693N\$g+
2694G92\n
2695\rU\$
2696,8Qe
2697pI1&
26989SB}
26995\nC
2700S\n-
2701>0\$
2702k)N:
2703?M#\"\\
2704.xV#
2705@\\v
2706B\"v
2707=%+\$~
2708lX Eb
2709%>D&
2710de~Bd
2711In\n'
2712I\n%=\n
2713q2g/
2714T\nR
2715jwJU
2716 A0pSq
2717,CX#
27182f\r<d
2719%rs%
2720w6sR
2721:Iy6
2722BCm|
2723 Ss6
272495T!&
2725<t48
2726nJ`C
2727lTnbKEr0
2728@*(&PX
2729i)T'J
2730L.aJ
2731r\rS
2732]#u`
2733uoH5tR
2734[DGN
2735e(3Y
2736KR\n
2737(Md60c
27388&4.
2739\0bIiEs{2
2740q=rw
2741q'gs
2742\nMj
2743k*B3
2744\r,&
2745fb&U7i
2746WL]s0M
2747^cuPSQM
2748w`@=
2749 ";break;case"sk":$f="N0
2750rxdB\$r:
2751\rFQ\0
2752b\nb
27532pQZ@
2754\$5I
2755\r,} '#L
2756\$\0
2757#CB~
2758SZ;>r
27597\rc
276022@P
2761\$6\r
27622Ie
2763
2764acX9hC
2765B0\\
27662'|G
2767\n(=4nNm
2768+j(O<
2769\"c8^
27704#{X@
2771jeu\$
2772I{.a
2773bt*_
2774uH\$X1
2775N@21GR
2776ANli
2777%!\$
2778CJ}4qa
2779L*%T
2780qDhe\rQ
2781 A-Va
2782\"qa
2783:)%!
2784 :
2785Y?\"
2786 A\n
2787WDX9!
2788\r\$
2789?E7LZ):W
2790 #ed
2791\\\0a@E
2792L`2#!
2793\r\r
279405\0
2795]xQ:+
2796y^Pff
2797N4'0J
2798(<sZP
27991&G&
2800\"\n
2801\$NfY
2802Yo6g<
2803U\nvk
2804J\n+
2805\$(IM
2806U4=l7
2807\$D\r
2808\"79
2809\"Rf
2810q\"q?T
2811*Yrf
2812EO-\\
2813tmW
2814GR\$
2815P>MpBY.
2816
2817pn<pr9n
2818'Ox nLF
2819n\"G
2820(\$J\n
2821\rn*\$#
2822L\"&I
2823#\$%
2824\\c-
2825F>tb0
2826aJ\$d\$5
2827\$.T\\f
2828q*r[P
2829VYcT
2830M0M-@
2831\0iLq
2832\nLBBBV6C2fs
28339
2834 l@
2835t\n`
2836";break;case"sl":$f="S:
2837ib#L&
2838g#N\0
2839'r<m
2840\nm*
2841\$\0P
28422cLH
2843\$.K
2844 @1&#
28457\rc
2846#I,T
2847\n22TKDh
2848}_Fvz2
2849{\$6
2850B0\\
2851 C246
2852(\n^&
28538\r+
2854#C8_drc
2855\r#x
2856!cXD
2857\n@R
2858q0&D
2859\$L<
2860xS\n
2861-<\0
2862eZsL
2863!iyK
2864&\rf
2865|Z
2866 2
2867\",]
2868c%>O
2869 _+\$
2870f~J^\$
2871\"6/
28722 ^V
2873d0\"
2874qVl\r\r/
2875\$\"
2876H*\$
2877\r>='
2878\\GK)o\0
2879Zl:;F
28803\0O
2881\r=t
2882Begq
2883 V_l
2884!*\r
2885jR\n
2886TjbT
2887Wy\0O9
2888%cdIC
2889\rFH
2890<b}63
2891#@U^
2892niOG
2893^%HK
2894j\$po
2895\$<D+
2896P,SG
2897Q
2898 3N
2899PsI2
29002Q\n
2901
2902dj8
2903\\Mq
2904<cE\"eF
2905C
2906 5D\nU
2907)c.3c
29084U-v\r
2909sJ 'Bx'
2910,\0@\n
2911zNC\r
2912b\n%\"17
2913l";break;case"sr":$f="
2914\\33
2915u6cc
2916s\$_
2917.\"u
2918AcYXZ
2919d]!HbH
2920#\n<
2921=k!|
29225Ht~
2923)ELZ
2924Kji\n
2925h3iO
2926u\r,
2927Z:2
2928!-qV
29292)!H
2930GPTU
2931U^R]m,5
2932S}[E5
2933#UCK
2934\nI6
29351kz(
2936VZ\n
2937I\$!
2938A\0A
2939gBo@s
2940GI\n]
2941\"Ij(
2942csNv#
2943\0b\r!
2944y6>(
2945\\4d
2946`\n@Ui
2947Rr}G\$H_
2948C0at
2949nQW6
2950icH5
2951q\"\r
2952\$\$
2953
2954g\\26
2955t\\!ih
2956|pY
2957
2958Ax V
2959cQn?r
2960j5\$
2961K&rV
2962-y\r
2963&\$R
2964|b%@i
2965\rmF_
2966!+X*
29672I<u
2968Vk
2969 HO
2970fnC@
2971[\rC
2972A\$,
2973BI\0%RG
2974S#3J
2975QB\$
2976.1r}
29772fS-z
2978\"(@
2979H\"k
2980oJE3ZD
2981)X|J,
2982
2983'U\"
2984\\2v
2985OP^_u
2986OX\n h
29878'3\\
2988T#QBK
2989I+7+
2990z";break;case"ta":$f="
2991S.WA
2992rj1k
29938\nRl
2994[zR.
29958N\"
2996\no\0
2997)\rkf
2998Nr\$
2999Dq
3000 M
3001A5Qt
3002,3m\0002
3003^VS*#US0
30046u+m
30056}SU
3006k|%(_
3007:\r#x
3008YMZr
3009%uo2e*
3010Uw}\"
3011oHnfo)
3012Z3=e\r
3013WA\$
30140lEa
3015\nFol
3016_c6q
3017(@_?
3018#xk<A
3019>P\n
3020\0004
3021;b,\"|
3022B\n=l[
3023\$a
3024 5
3025:xMi-e
3026%EYa
3027xS\n
3028@cmA
3029gHAh
3030u0d#yhIk0;][
30312+\n
3032\\n7)
30337|kM
30349ei]
30354{S-
3036NN:[
3037sc<&
3038}n)7
3039{{?q
3040\rn^n
3041cK2yn:
3042\"6im
30434un6
3044j0b:iXe,
3045z\rL
3046\rNk
3047\$.{
3048.1\n
3049),qe.
3050h\0\"3
30514PU%G
3052c[\"
3053\r&P
3054/>qZ!
30554'\n3
3056p3\0i
3057U\"4X
3058}\$2j
30592<NT+A
3060OARx
3061ts\r
30623\$B
3063KCPH
3064hCP:A
3065Q>+&
3066-\"U7N%
3067o;;4
3068P#9PH
3069\n\0
3070q/2nY
3071#O6'A
3072+8HMKT@
3073'69M
3074/hPJN
3075Qg*f
3076l\"6j
3077gHae
3078Ar{jVih
3079EiVwGt
3080JD?OG
3081H\rd'
3082%e\\
3083Sc\$
3084H3gZ
3085\ne2
3086\0V\$
30873[hr
3088bVPh
3089W9\\
3090/TR'C
3091W=vOP
3092'
3093 Go
3094Vg^p
30954d-C
3096Fj':
3097Oery
3098z\r
3099\0AU
3100X,R+(
3101tQ!.
3102+3\0\n
31031!]1v
3104
3105.(,
31069!4z
3107`@=[
3108\n`";break;case"th":$f="
3109\\!
3110 \nX:&\0
3111/\0ZB
3112
31132\0
3114?J\\
3115s\0C
3116_6\\+eV
3117\0MLrS
3118{q\0
3119|\\Iq
31204\r/
3121JQpXD1
3122\rto)
31233\0\\
3124\$\\#S
3125p\\T
3126*\\1
3127rz{N
3128E)\r82
3129J4`\\;.
3130J\r<
3131]O\\w
3132?!\0
3133&QRJ
3134.}|[
3135X4(L%
3136A\0u\r
3137%\$^v
313847\\
3139\$R.V
3140 \r!
31411\nw
3142M-bz
3143Chp?!
3144LzvF
3145a@\$
3146\0@\n
3147 @)y
3148\0(*
3149C
3150 |NI
3151I(y=
3152OWRX
3153p%Cif
3154F\\L
3155sN\n,S
3156l\$]2
3157EdJMl
3158W_m(
3159CU+(
3160\\\"\0
3161)%&1
3162O-\r
3163-1c1
3164hee\nQ
3165xU,Z94
3166N)qY
3167#t.J
3168[V5T
3169SuuQ
3170;TJd
3171}A\rzNahQBfvh
3172d8COF-
3173IpBN
3174fbJh
3175f\",
3176cZvNl
3177 ,4B,:{JN
3178bj\rl
3179J\n0N
3180h#Xa
3181HSN{#p
3182d\$_
3183\"Rb
3184uSNb
3185q5\"
31867\$jQO
3187>k\n
3188Re4Kp
3189eETi=25
3190w\0AG
3191QBCOI4SIo
3192?3kGEh
3193
3194tdZ
319506!f
3196k \r
3197\rkh
3198%l+\0
3199b}jgP
3200'efi
3201MCiP
3202g/d\$
3203Afdj
3204VUF
32053\\vi#
3206j3HDE
3207iURh
3208FY%fz
3209;e0:m>q
3210eq|z1qi
32115l`@>
3212\n`";break;case"tr":$f="E6
3213\\\nb,
3214
3215FC1
3216ASv*|
3217\\ 7\\
3218.\n&it2
3219\n\"d
3220c
3221 \\
3222O\$R
3223d:|5
3224)bY/
3225c/Ldy
3226UmH7
3227\"M\r)h
3228Cq
3229 e
3230\">A
3231Q<
3232 gu
32336\r!
3234-\r\$\\#
3235 A\n
3236C3GD
3237(\\+lb
3238iQ!0!fe
3239n8\n
3240X\n`
3241q/A-1
3242DJI5#\$l
3243\"hE
3244\$#h^jm
3245\r-9!]^
3246O`.+,m
3247{`m-
3248\nFS
3249i&E>.V
3250v7hp
3251)Szw
3252Zg\r)
3253\"b~
3254RDVm
3255z1.^
3256cT\r
3257(3g|
3258^`@@
3259\\0x
3260Kk~;
3261\rp,A
3262H\\I^\"
3263\n@P
3264\$\"0
3265*zSQ*
3266G)6?
3267*
3268 \"
3269\"b8\r
3270@4EK#
3271";break;case"uk":$f="
3272Ms6@Se+
3273Jsh\$g
32746\rV
3275G!TI
3276vUXh
3277\\L+U0\\F
3278J\\G
32794J2l
3280 h'L
3281BK#D
3282&&(kfB
3283z4M2\n
32847sJ!?)
3285R5hj
3286'x75C
3287!M(}
3288@*I`
3289V*cc
3290Z*\r
3291[a\0
3292)\$\$
3293p\r.
32942?0x
3295xe\r
3296a\rg 4
3297!U:4D
3298H\n\0
3299*\">
3300?'Q\rn
3301\0d\r+T
33020r\r
3303UOUX*
3304\0f:'
3305C0ae2X;
3306\n\n#M
3307I\r*
3308deuN
3309ct-/[
33109/'E
3311SWr+pe\$
3312mb\$
331324[[[
3314r-@@
3315m3-\r
3316\$~\0
3317\nWV
3318/uo=
3319\nTE
3320T5dk
3321pLs(4
3322b<D+t
3323\nB@%&
3324-R*a~
3325ny PH
3326\"E!!
3327,?\$6
33282Q\"
3329(BK%
3330k\"q
3331\$\"4
3332O\$g&
333330?\"
3334Y#O8
3335U r2
3336:Ek:
3337m61n
33382G)6
33395#aD
3340\0#DdG
3341t~LtOD
3342901-M
3343+\"*
3344=SG>
3345@
3346 I(
3347ED]4d
3348PNs@
3349BadR
3350t%\$
3351bi\$
3352t
3353 \"
3354CV
3355 s)
3356li^rF
3357#APVO
3358Nx*,
3359Q!yw
3360^v-\$Z
3361~&-P
3362~";break;case"vi":$f="Bp
3363#\$b\$L2
33648@q:
3365{\rB\n'
3366\n\npL
3367%Kr!
3368F! b
3369g\nb
3370RI)cg
3371Ccq>
3372\"\\
3373Sjw}_
3374mb895(,
3375]Tl4'
3376#{40
3377C(@7
3378|%o4
3379\nH1>
3380HPZi
3381(s}.|
3382\$H<
3383GCHs
3384(l\r
3385BVi)Y
3386CN\"
3387JK P
3388\0HH\\
3389ux)\n +
33906+P\"
3391D@Px
3392(XJ(&
3393
33944]kK
3395E(Os
3396VJ@\$
3397\0*v(
3398w!\$/uBF
3399 H!M
3400wV_=\\
34015;Vt
3402\n]]
3403Zr\r
3404&x&2h
3405NOj<
3406FXlS
3407]\n(o
34080+m\0
3409K\n+
3410NZ=l
3411\"\\
3412\"\$
3413\"@g
3414\\p&\\
3415.,@cfBd
3416O\"D
3417v'j6
3418i\n1
3419\r*N\r
3420g\"p\0
3421y'O\$'
3422h2&hF
3423,L22P#
3424";break;case"zh":$f="
3425\$\nr.
3426Js!Kd
3427t\nr
3428U:.Z
3429\rVWd^%
3430
3431'c(
3432:QQ-
3433K!f]
3434(r\\
34351G)tI
3436'<}
3437GI\0D
3438YRs0
343940_K
3440RY%I
3441RI73
3442qXsJ
3443EB\0N
3444g1LA
3445PDoqGrL
34468\r8
3447Ax^;
3448wx<5y
3449gADU
3450@8\n
3451\"[{T
34527'\"
3453a\\-S
3454\$k]
3455&+4R
3456xS\n
3457\nA,
3458\0U\n
3459C0aV
3460k\$Zb(
3461Du\\g
3462qP\"
3463u\\o
3464}[{r+
3465^%\\
3466*elX
3467&E\0(+
3468v!UBVK
3469\\?c
34704YQJ
3471xwS0
3472K3hr
3473Q\$#2]~
3474t~!j
3475K\\S6~
3476i~\"!^
3477SF3D0E\0a
34780\$8
3479J;yf
3480-;gy
3481\r,:
3482i*\r
3483R6\"Z
3484!\0.N
3485v4C\"2c*
3486 @
3487\$2-
3488\0@\n
3489&\$`
349045C*e
3491\n`";break;case"zh-tw":$f="
3492B(\\
3493neRQ
3494Sy:\"<
3495K&]\n
3496OLP\0
3497iiZK
3498ir_
3499g9f]
3500eZ.L
3501C2IBW
3502)!Dt
3503\nY N(Kq
3504q%\r
3505a_\$
3506Lu%I
35076:#+u#G
3508acR9f
3509DBhB
3510)nYIDs
3511f8\r9
3512dc0z
3513Ax^;
35142jCp
3515
3516b51
3517xS\n
3518J*>CP
3519&eV[
3520C8 \nk<
3521r3/\0
3522\"4Z
3523%!<9D
3524D(\n
3525\\\"
3526b\0s
3527!\n(
3528x\"R@
3529.h\\R
3530\"eL
3531ycU
3532
3533.kEi
3534#\0PL
3535<BN\nq
3536a'\0`
3537pMU?
3538\nO`
3539KE'QB71\n
35406E0Y;
3541 #gb#
3542ZnZS
3543G;_M.
3544JQ`I
3545Mx.x\r
3546Q\$r
3547C\\U
3548)en|
3549?hLR
3550L[pm)
35518s\n
3552f:\r
3553cbf'
3554
3555p^:Ct
3556\\#B8
3557L_\0
3558`\r\"
35594\r*
3560\ra\0
3561fa!,
3562\n`";break;}$rg=array();foreach(explode("\n",lzw_decompress($f))as$X)$rg[]=(strpos($X,"\t")?explode("\t",$X):$X);return$rg;}if(!$rg)$rg=get_translations($a);if(extension_loaded('pdo')){class
3563Min_PDO
3564extends
3565PDO{var$_result,$server_info,$affected_rows,$errno,$error;function
3566__construct(){global$c;$Fe=array_search("SQL",$c->operators);if($Fe!==false)unset($c->operators[$Fe]);}function
3567dsn($Ib,$V,$_e){try{parent::__construct($Ib,$V,$_e);}catch(Exception$ac){auth_error($ac->getMessage());}$this->setAttribute(13,array('Min_PDOStatement'));$this->server_info=$this->getAttribute(4);}function
3568query($I,$xg=false){$J=parent::query($I);$this->error="";if(!$J){list(,$this->errno,$this->error)=$this->errorInfo();return
3569false;}$this->store_result($J);return$J;}function
3570multi_query($I){return$this->_result=$this->query($I);}function
3571store_result($J=null){if(!$J){$J=$this->_result;if(!$J)return
3572false;}if($J->columnCount()){$J->num_rows=$J->rowCount();return$J;}$this->affected_rows=$J->rowCount();return
3573true;}function
3574next_result(){if(!$this->_result)return
3575false;$this->_result->_offset=0;return@$this->_result->nextRowset();}function
3576result($I,$n=0){$J=$this->query($I);if(!$J)return
3577false;$L=$J->fetch();return$L[$n];}}class
3578Min_PDOStatement
3579extends
3580PDOStatement{var$_offset=0,$num_rows;function
3581fetch_assoc(){return$this->fetch(2);}function
3582fetch_row(){return$this->fetch(3);}function
3583fetch_field(){$L=(object)$this->getColumnMeta($this->_offset++);$L->orgtable=$L->table;$L->orgname=$L->name;$L->charsetnr=(in_array("blob",(array)$L->flags)?63:0);return$L;}}}$Eb=array();class
3584Min_SQL{var$_conn;function
3585Min_SQL($g){$this->_conn=$g;}function
3586select($Q,$N,$Z,$u,$he=array(),$_=1,$G=0,$Me=false){global$c,$y;$Wc=(count($u)<count($N));$I=$c->selectQueryBuild($N,$Z,$u,$he,$_,$G);if(!$I)$I="SELECT".limit(($_GET["page"]!="last"&&+$_&&$u&&$Wc&&$y=="sql"?"SQL_CALC_FOUND_ROWS ":"").implode(", ",$N)."\nFROM ".table($Q),($Z?"\nWHERE ".implode(" AND ",$Z):"").($u&&$Wc?"\nGROUP BY ".implode(", ",$u):"").($he?"\nORDER BY ".implode(", ",$he):""),($_!=""?+$_:null),($G?$_*$G:0),"\n");$Ff=microtime(true);$K=$this->_conn->query($I);if($Me)echo$c->selectQuery($I,format_time($Ff));return$K;}function
3587delete($Q,$Ue,$_=0){$I="FROM ".table($Q);return
3588queries("DELETE".($_?limit1($I,$Ue):" $I$Ue"));}function
3589update($Q,$P,$Ue,$_=0,$wf="\n"){$Kg=array();foreach($P
3590as$z=>$X)$Kg[]="$z = $X";$I=table($Q)." SET$wf".implode(",$wf",$Kg);return
3591queries("UPDATE".($_?limit1($I,$Ue):" $I$Ue"));}function
3592insert($Q,$P){return
3593queries("INSERT INTO ".table($Q).($P?" (".implode(", ",array_keys($P)).")\nVALUES (".implode(", ",$P).")":" DEFAULT VALUES"));}function
3594insertUpdate($Q,$M,$Le){return
3595false;}function
3596begin(){return
3597queries("BEGIN");}function
3598commit(){return
3599queries("COMMIT");}function
3600rollback(){return
3601queries("ROLLBACK");}}$Eb=array("server"=>"MySQL")+$Eb;if(!defined("DRIVER")){$Ie=array("MySQLi","MySQL","PDO_MySQL");define("DRIVER","server");if(extension_loaded("mysqli")){class
3602Min_DB
3603extends
3604MySQLi{var$extension="MySQLi";function
3605Min_DB(){parent::init();}function
3606connect($O,$V,$_e){mysqli_report(MYSQLI_REPORT_OFF);list($Gc,$Ee)=explode(":",$O,2);$K=@$this->real_connect(($O!=""?$Gc:ini_get("mysqli.default_host")),($O.$V!=""?$V:ini_get("mysqli.default_user")),($O.$V.$_e!=""?$_e:ini_get("mysqli.default_pw")),null,(is_numeric($Ee)?$Ee:ini_get("mysqli.default_port")),(!is_numeric($Ee)?$Ee:null));return$K;}function
3607set_charset($La){if(parent::set_charset($La))return
3608true;parent::set_charset('utf8');return$this->query("SET NAMES $La");}function
3609result($I,$n=0){$J=$this->query($I);if(!$J)return
3610false;$L=$J->fetch_array();return$L[$n];}function
3611quote($Jf){return"'".$this->escape_string($Jf)."'";}}}elseif(extension_loaded("mysql")&&!(ini_get("sql.safe_mode")&&extension_loaded("pdo_mysql"))){class
3612Min_DB{var$extension="MySQL",$server_info,$affected_rows,$errno,$error,$_link,$_result;function
3613connect($O,$V,$_e){$this->_link=@mysql_connect(($O!=""?$O:ini_get("mysql.default_host")),("$O$V"!=""?$V:ini_get("mysql.default_user")),("$O$V$_e"!=""?$_e: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
3614set_charset($La){if(function_exists('mysql_set_charset')){if(mysql_set_charset($La,$this->_link))return
3615true;mysql_set_charset('utf8',$this->_link);}return$this->query("SET NAMES $La");}function
3616quote($Jf){return"'".mysql_real_escape_string($Jf,$this->_link)."'";}function
3617select_db($qb){return
3618mysql_select_db($qb,$this->_link);}function
3619query($I,$xg=false){$J=@($xg?mysql_unbuffered_query($I,$this->_link):mysql_query($I,$this->_link));$this->error="";if(!$J){$this->errno=mysql_errno($this->_link);$this->error=mysql_error($this->_link);return
3620false;}if($J===true){$this->affected_rows=mysql_affected_rows($this->_link);$this->info=mysql_info($this->_link);return
3621true;}return
3622Min_Result($J);}function
3623multi_query($I){return$this->_result=$this->query($I);}function
3624store_result(){return$this->_result;}function
3625next_result(){return
3626false;}function
3627result($I,$n=0){$J=$this->query($I);if(!$J||!$J->num_rows)return
3628false;return
3629mysql_result($J->_result,0,$n);}}class
3630Min_Result{var$num_rows,$_result,$_offset=0;function
3631Min_Result($J){$this->_result=$J;$this->num_rows=mysql_num_rows($J);}function
3632fetch_assoc(){return
3633mysql_fetch_assoc($this->_result);}function
3634fetch_row(){return
3635mysql_fetch_row($this->_result);}function
3636fetch_field(){$K=mysql_fetch_field($this->_result,$this->_offset++);$K->orgtable=$K->table;$K->orgname=$K->name;$K->charsetnr=($K->blob?63:0);return$K;}function
3637__destruct(){mysql_free_result($this->_result);}}}elseif(extension_loaded("pdo_mysql")){class
3638Min_DB
3639extends
3640Min_PDO{var$extension="PDO_MySQL";function
3641connect($O,$V,$_e){$this->dsn("mysql:charset=utf8;host=".str_replace(":",";unix_socket=",preg_replace('~:(\\d)~',';port=\\1',$O)),$V,$_e);return
3642true;}function
3643set_charset($La){$this->query("SET NAMES $La");}function
3644select_db($qb){return$this->query("USE ".idf_escape($qb));}function
3645query($I,$xg=false){$this->setAttribute(1000,!$xg);return
3646parent::query($I,$xg);}}}class
3647Min_Driver
3648extends
3649Min_SQL{function
3650insert($Q,$P){return($P?parent::insert($Q,$P):queries("INSERT INTO ".table($Q)." ()\nVALUES ()"));}function
3651insertUpdate($Q,$M,$Le){$e=array_keys(reset($M));$Je="INSERT INTO ".table($Q)." (".implode(", ",$e).") VALUES\n";$Kg=array();foreach($e
3652as$z)$Kg[$z]="$z = VALUES($z)";$Nf="\nON DUPLICATE KEY UPDATE ".implode(", ",$Kg);$Kg=array();$od=0;foreach($M
3653as$P){$Y="(".implode(", ",$P).")";if($Kg&&(strlen($Je)+$od+strlen($Y)+strlen($Nf)>1e6)){if(!queries($Je.implode(",\n",$Kg).$Nf))return
3654false;$Kg=array();$od=0;}$Kg[]=$Y;$od+=strlen($Y)+2;}return
3655queries($Je.implode(",\n",$Kg).$Nf);}}function
3656idf_escape($Kc){return"`".str_replace("`","``",$Kc)."`";}function
3657table($Kc){return
3658idf_escape($Kc);}function
3659connect(){global$c;$g=new
3660Min_DB;$mb=$c->credentials();if($g->connect($mb[0],$mb[1],$mb[2])){$g->set_charset(charset($g));$g->query("SET sql_quote_show_create = 1, autocommit = 1");return$g;}$K=$g->error;if(function_exists('iconv')&&!is_utf8($K)&&strlen($pf=iconv("windows-1250","utf-8",$K))>strlen($K))$K=$pf;return$K;}function
3661get_databases($qc){global$g;$K=get_session("dbs");if($K===null){$I=($g->server_info>=5?"SELECT SCHEMA_NAME FROM information_schema.SCHEMATA":"SHOW DATABASES");$K=($qc?slow_query($I):get_vals($I));restart_session();set_session("dbs",$K);stop_session();}return$K;}function
3662limit($I,$Z,$_,$Sd=0,$wf=" "){return" $I$Z".($_!==null?$wf."LIMIT $_".($Sd?" OFFSET $Sd":""):"");}function
3663limit1($I,$Z){return
3664limit($I,$Z,1);}function
3665db_collation($k,$Xa){global$g;$K=null;$i=$g->result("SHOW CREATE DATABASE ".idf_escape($k),1);if(preg_match('~ COLLATE ([^ ]+)~',$i,$C))$K=$C[1];elseif(preg_match('~ CHARACTER SET ([^ ]+)~',$i,$C))$K=$Xa[$C[1]][-1];return$K;}function
3666engines(){$K=array();foreach(get_rows("SHOW ENGINES")as$L){if(preg_match("~YES|DEFAULT~",$L["Support"]))$K[]=$L["Engine"];}return$K;}function
3667logged_user(){global$g;return$g->result("SELECT USER()");}function
3668tables_list(){global$g;return
3669get_key_vals($g->server_info>=5?"SELECT TABLE_NAME, TABLE_TYPE FROM information_schema.TABLES WHERE TABLE_SCHEMA = DATABASE() ORDER BY TABLE_NAME":"SHOW TABLES");}function
3670count_tables($j){$K=array();foreach($j
3671as$k)$K[$k]=count(get_vals("SHOW TABLES IN ".idf_escape($k)));return$K;}function
3672table_status($F="",$jc=false){global$g;$K=array();foreach(get_rows($jc&&$g->server_info>=5?"SELECT TABLE_NAME AS Name, Engine, TABLE_COMMENT AS Comment FROM information_schema.TABLES WHERE TABLE_SCHEMA = DATABASE() ".($F!=""?"AND TABLE_NAME = ".q($F):"ORDER BY Name"):"SHOW TABLE STATUS".($F!=""?" LIKE ".q(addcslashes($F,"%_\\")):""))as$L){if($L["Engine"]=="InnoDB")$L["Comment"]=preg_replace('~(?:(.+); )?InnoDB free: .*~','\\1',$L["Comment"]);if(!isset($L["Engine"]))$L["Comment"]="";if($F!="")return$L;$K[$L["Name"]]=$L;}return$K;}function
3673is_view($R){return$R["Engine"]===null;}function
3674fk_support($R){global$g;return
3675preg_match('~InnoDB|IBMDB2I~i',$R["Engine"])||(preg_match('~NDB~i',$R["Engine"])&&version_compare($g->server_info,'5.6')>=0);}function
3676fields($Q){$K=array();foreach(get_rows("SHOW FULL COLUMNS FROM ".table($Q))as$L){preg_match('~^([^( ]+)(?:\\((.+)\\))?( unsigned)?( zerofill)?$~',$L["Type"],$C);$K[$L["Field"]]=array("field"=>$L["Field"],"full_type"=>$L["Type"],"type"=>$C[1],"length"=>$C[2],"unsigned"=>ltrim($C[3].$C[4]),"default"=>($L["Default"]!=""||preg_match("~char|set~",$C[1])?$L["Default"]:null),"null"=>($L["Null"]=="YES"),"auto_increment"=>($L["Extra"]=="auto_increment"),"on_update"=>(preg_match('~^on update (.+)~i',$L["Extra"],$C)?$C[1]:""),"collation"=>$L["Collation"],"privileges"=>array_flip(preg_split('~, *~',$L["Privileges"])),"comment"=>$L["Comment"],"primary"=>($L["Key"]=="PRI"),);}return$K;}function
3677indexes($Q,$h=null){$K=array();foreach(get_rows("SHOW INDEX FROM ".table($Q),$h)as$L){$K[$L["Key_name"]]["type"]=($L["Key_name"]=="PRIMARY"?"PRIMARY":($L["Index_type"]=="FULLTEXT"?"FULLTEXT":($L["Non_unique"]?"INDEX":"UNIQUE")));$K[$L["Key_name"]]["columns"][]=$L["Column_name"];$K[$L["Key_name"]]["lengths"][]=$L["Sub_part"];$K[$L["Key_name"]]["descs"][]=null;}return$K;}function
3678foreign_keys($Q){global$g,$Zd;static$Be='`(?:[^`]|``)+`';$K=array();$kb=$g->result("SHOW CREATE TABLE ".table($Q),1);if($kb){preg_match_all("~CONSTRAINT ($Be) FOREIGN KEY ?\\(((?:$Be,? ?)+)\\) REFERENCES ($Be)(?:\\.($Be))? \\(((?:$Be,? ?)+)\\)(?: ON DELETE ($Zd))?(?: ON UPDATE ($Zd))?~",$kb,$vd,PREG_SET_ORDER);foreach($vd
3679as$C){preg_match_all("~$Be~",$C[2],$Cf);preg_match_all("~$Be~",$C[5],$Yf);$K[idf_unescape($C[1])]=array("db"=>idf_unescape($C[4]!=""?$C[3]:$C[4]),"table"=>idf_unescape($C[4]!=""?$C[4]:$C[3]),"source"=>array_map('idf_unescape',$Cf[0]),"target"=>array_map('idf_unescape',$Yf[0]),"on_delete"=>($C[6]?$C[6]:"RESTRICT"),"on_update"=>($C[7]?$C[7]:"RESTRICT"),);}}return$K;}function
3680view($F){global$g;return
3681array("select"=>preg_replace('~^(?:[^`]|`[^`]*`)*\\s+AS\\s+~isU','',$g->result("SHOW CREATE VIEW ".table($F),1)));}function
3682collations(){$K=array();foreach(get_rows("SHOW COLLATION")as$L){if($L["Default"])$K[$L["Charset"]][-1]=$L["Collation"];else$K[$L["Charset"]][]=$L["Collation"];}ksort($K);foreach($K
3683as$z=>$X)asort($K[$z]);return$K;}function
3684information_schema($k){global$g;return($g->server_info>=5&&$k=="information_schema")||($g->server_info>=5.5&&$k=="performance_schema");}function
3685error(){global$g;return
3686h(preg_replace('~^You have an error.*syntax to use~U',"Syntax error",$g->error));}function
3687error_line(){global$g;if(preg_match('~ at line ([0-9]+)$~',$g->error,$ef))return$ef[1]-1;}function
3688create_database($k,$Wa){return
3689queries("CREATE DATABASE ".idf_escape($k).($Wa?" COLLATE ".q($Wa):""));}function
3690drop_databases($j){$K=apply_queries("DROP DATABASE",$j,'idf_escape');restart_session();set_session("dbs",null);return$K;}function
3691rename_database($F,$Wa){$K=false;if(create_database($F,$Wa)){$ff=array();foreach(tables_list()as$Q=>$U)$ff[]=table($Q)." TO ".idf_escape($F).".".table($Q);$K=(!$ff||queries("RENAME TABLE ".implode(", ",$ff)));if($K)queries("DROP DATABASE ".idf_escape(DB));restart_session();set_session("dbs",null);}return$K;}function
3692auto_increment(){$za=" PRIMARY KEY";if($_GET["create"]!=""&&$_POST["auto_increment_col"]){foreach(indexes($_GET["create"])as$w){if(in_array($_POST["fields"][$_POST["auto_increment_col"]]["orig"],$w["columns"],true)){$za="";break;}if($w["type"]=="PRIMARY")$za=" UNIQUE";}}return" AUTO_INCREMENT$za";}function
3693alter_table($Q,$F,$o,$rc,$bb,$Tb,$Wa,$ya,$xe){$sa=array();foreach($o
3694as$n)$sa[]=($n[1]?($Q!=""?($n[0]!=""?"CHANGE ".idf_escape($n[0]):"ADD"):" ")." ".implode($n[1]).($Q!=""?$n[2]:""):"DROP ".idf_escape($n[0]));$sa=array_merge($sa,$rc);$Gf=($bb!==null?" COMMENT=".q($bb):"").($Tb?" ENGINE=".q($Tb):"").($Wa?" COLLATE ".q($Wa):"").($ya!=""?" AUTO_INCREMENT=$ya":"");if($Q=="")return
3695queries("CREATE TABLE ".table($F)." (\n".implode(",\n",$sa)."\n)$Gf$xe");if($Q!=$F)$sa[]="RENAME TO ".table($F);if($Gf)$sa[]=ltrim($Gf);return($sa||$xe?queries("ALTER TABLE ".table($Q)."\n".implode(",\n",$sa).$xe):true);}function
3696alter_indexes($Q,$sa){foreach($sa
3697as$z=>$X)$sa[$z]=($X[2]=="DROP"?"\nDROP INDEX ".idf_escape($X[1]):"\nADD $X[0] ".($X[0]=="PRIMARY"?"KEY ":"").($X[1]!=""?idf_escape($X[1])." ":"")."(".implode(", ",$X[2]).")");return
3698queries("ALTER TABLE ".table($Q).implode(",",$sa));}function
3699truncate_tables($S){return
3700apply_queries("TRUNCATE TABLE",$S);}function
3701drop_views($Og){return
3702queries("DROP VIEW ".implode(", ",array_map('table',$Og)));}function
3703drop_tables($S){return
3704queries("DROP TABLE ".implode(", ",array_map('table',$S)));}function
3705move_tables($S,$Og,$Yf){$ff=array();foreach(array_merge($S,$Og)as$Q)$ff[]=table($Q)." TO ".idf_escape($Yf).".".table($Q);return
3706queries("RENAME TABLE ".implode(", ",$ff));}function
3707copy_tables($S,$Og,$Yf){queries("SET sql_mode = 'NO_AUTO_VALUE_ON_ZERO'");foreach($S
3708as$Q){$F=($Yf==DB?table("copy_$Q"):idf_escape($Yf).".".table($Q));if(!queries("\nDROP TABLE IF EXISTS $F")||!queries("CREATE TABLE $F LIKE ".table($Q))||!queries("INSERT INTO $F SELECT * FROM ".table($Q)))return
3709false;}foreach($Og
3710as$Q){$F=($Yf==DB?table("copy_$Q"):idf_escape($Yf).".".table($Q));$Ng=view($Q);if(!queries("DROP VIEW IF EXISTS $F")||!queries("CREATE VIEW $F AS $Ng[select]"))return
3711false;}return
3712true;}function
3713trigger($F){if($F=="")return
3714array();$M=get_rows("SHOW TRIGGERS WHERE `Trigger` = ".q($F));return
3715reset($M);}function
3716triggers($Q){$K=array();foreach(get_rows("SHOW TRIGGERS LIKE ".q(addcslashes($Q,"%_\\")))as$L)$K[$L["Trigger"]]=array($L["Timing"],$L["Event"]);return$K;}function
3717trigger_options(){return
3718array("Timing"=>array("BEFORE","AFTER"),"Event"=>array("INSERT","UPDATE","DELETE"),"Type"=>array("FOR EACH ROW"),);}function
3719routine($F,$U){global$g,$Vb,$Pc,$wg;$qa=array("bool","boolean","integer","double precision","real","dec","numeric","fixed","national char","national varchar");$vg="((".implode("|",array_merge(array_keys($wg),$qa)).")\\b(?:\\s*\\(((?:[^'\")]|$Vb)++)\\))?\\s*(zerofill\\s*)?(unsigned(?:\\s+zerofill)?)?)(?:\\s*(?:CHARSET|CHARACTER\\s+SET)\\s*['\"]?([^'\"\\s,]+)['\"]?)?";$Be="\\s*(".($U=="FUNCTION"?"":$Pc).")?\\s*(?:`((?:[^`]|``)*)`\\s*|\\b(\\S+)\\s+)$vg";$i=$g->result("SHOW CREATE $U ".idf_escape($F),2);preg_match("~\\(((?:$Be\\s*,?)*)\\)\\s*".($U=="FUNCTION"?"RETURNS\\s+$vg\\s+":"")."(.*)~is",$i,$C);$o=array();preg_match_all("~$Be\\s*,?~is",$C[1],$vd,PREG_SET_ORDER);foreach($vd
3720as$se){$F=str_replace("``","`",$se[2]).$se[3];$o[]=array("field"=>$F,"type"=>strtolower($se[5]),"length"=>preg_replace_callback("~$Vb~s",'normalize_enum',$se[6]),"unsigned"=>strtolower(preg_replace('~\\s+~',' ',trim("$se[8] $se[7]"))),"null"=>1,"full_type"=>$se[4],"inout"=>strtoupper($se[1]),"collation"=>strtolower($se[9]),);}if($U!="FUNCTION")return
3721array("fields"=>$o,"definition"=>$C[11]);return
3722array("fields"=>$o,"returns"=>array("type"=>$C[12],"length"=>$C[13],"unsigned"=>$C[15],"collation"=>$C[16]),"definition"=>$C[17],"language"=>"SQL",);}function
3723routines(){return
3724get_rows("SELECT ROUTINE_NAME, ROUTINE_TYPE, DTD_IDENTIFIER FROM information_schema.ROUTINES WHERE ROUTINE_SCHEMA = ".q(DB));}function
3725routine_languages(){return
3726array();}function
3727last_id(){global$g;return$g->result("SELECT LAST_INSERT_ID()");}function
3728explain($g,$I){return$g->query("EXPLAIN ".($g->server_info>=5.1?"PARTITIONS ":"").$I);}function
3729found_rows($R,$Z){return($Z||$R["Engine"]!="InnoDB"?null:$R["Rows"]);}function
3730types(){return
3731array();}function
3732schemas(){return
3733array();}function
3734get_schema(){return"";}function
3735set_schema($rf){return
3736true;}function
3737create_sql($Q,$ya){global$g;$K=$g->result("SHOW CREATE TABLE ".table($Q),1);if(!$ya)$K=preg_replace('~ AUTO_INCREMENT=\\d+~','',$K);return$K;}function
3738truncate_sql($Q){return"TRUNCATE ".table($Q);}function
3739use_sql($qb){return"USE ".idf_escape($qb);}function
3740trigger_sql($Q,$Lf){$K="";foreach(get_rows("SHOW TRIGGERS LIKE ".q(addcslashes($Q,"%_\\")),null,"-- ")as$L)$K.="\n".($Lf=='CREATE+ALTER'?"DROP TRIGGER IF EXISTS ".idf_escape($L["Trigger"]).";;\n":"")."CREATE TRIGGER ".idf_escape($L["Trigger"])." $L[Timing] $L[Event] ON ".table($L["Table"])." FOR EACH ROW\n$L[Statement];;\n";return$K;}function
3741show_variables(){return
3742get_key_vals("SHOW VARIABLES");}function
3743process_list(){return
3744get_rows("SHOW FULL PROCESSLIST");}function
3745show_status(){return
3746get_key_vals("SHOW STATUS");}function
3747convert_field($n){if(preg_match("~binary~",$n["type"]))return"HEX(".idf_escape($n["field"]).")";if($n["type"]=="bit")return"BIN(".idf_escape($n["field"])." + 0)";if(preg_match("~geometry|point|linestring|polygon~",$n["type"]))return"AsWKT(".idf_escape($n["field"]).")";}function
3748unconvert_field($n,$K){if(preg_match("~binary~",$n["type"]))$K="UNHEX($K)";if($n["type"]=="bit")$K="CONV($K, 2, 10) + 0";if(preg_match("~geometry|point|linestring|polygon~",$n["type"]))$K="GeomFromText($K)";return$K;}function
3749support($kc){global$g;return!preg_match("~scheme|sequence|type|view_trigger".($g->server_info<5.1?"|event|partitioning".($g->server_info<5?"|routine|trigger|view":""):"")."~",$kc);}$y="sql";$wg=array();$Kf=array();foreach(array(lang(21)=>array("tinyint"=>3,"smallint"=>5,"mediumint"=>8,"int"=>10,"bigint"=>20,"decimal"=>66,"float"=>12,"double"=>21),lang(22)=>array("date"=>10,"datetime"=>19,"timestamp"=>19,"time"=>10,"year"=>4),lang(23)=>array("char"=>255,"varchar"=>65535,"tinytext"=>255,"text"=>65535,"mediumtext"=>16777215,"longtext"=>4294967295),lang(24)=>array("enum"=>65535,"set"=>64),lang(25)=>array("bit"=>20,"binary"=>255,"varbinary"=>65535,"tinyblob"=>255,"blob"=>65535,"mediumblob"=>16777215,"longblob"=>4294967295),lang(26)=>array("geometry"=>0,"point"=>0,"linestring"=>0,"polygon"=>0,"multipoint"=>0,"multilinestring"=>0,"multipolygon"=>0,"geometrycollection"=>0),)as$z=>$X){$wg+=$X;$Kf[$z]=array_keys($X);}$Cg=array("unsigned","zerofill","unsigned zerofill");$de=array("=","<",">","<=",">=","!=","LIKE","LIKE %%","REGEXP","IN","IS NULL","NOT LIKE","NOT REGEXP","NOT IN","IS NOT NULL","SQL");$xc=array("char_length","date","from_unixtime","lower","round","sec_to_time","time_to_sec","upper");$_c=array("avg","count","count distinct","group_concat","max","min","sum");$Lb=array(array("char"=>"md5/sha1/password/encrypt/uuid","binary"=>"md5/sha1","date|time"=>"now",),array("(^|[^o])int|float|double|decimal"=>"+/-","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"])."&":""):''));$fa="4.2.1";class
3750Adminer{var$operators;function
3751name(){return"<a href='http://www.adminer.org/' target='_blank' id='h1'>Adminer</a>";}function
3752credentials(){return
3753array(SERVER,$_GET["username"],get_password());}function
3754permanentLogin($i=false){return
3755password_file($i);}function
3756bruteForceKey(){return$_SERVER["REMOTE_ADDR"];}function
3757database(){return
3758DB;}function
3759databases($qc=true){return
3760get_databases($qc);}function
3761schemas(){return
3762schemas();}function
3763queryTimeout(){return
37645;}function
3765headers(){return
3766true;}function
3767head(){return
3768true;}function
3769loginForm(){global$Eb;echo'<table cellspacing="0">
3770<tr><th>',lang(27),'<td>',html_select("auth[driver]",$Eb,DRIVER,"loginDriver(this);"),'<tr><th>',lang(28),'<td><input name="auth[server]" value="',h(SERVER),'" title="hostname[:port]" placeholder="localhost" autocapitalize="off">
3771<tr><th>',lang(29),'<td><input name="auth[username]" id="username" value="',h($_GET["username"]),'" autocapitalize="off">
3772<tr><th>',lang(30),'<td><input type="password" name="auth[password]">
3773<tr><th>',lang(31),'<td><input name="auth[db]" value="',h($_GET["db"]);?>" autocapitalize="off">
3774</table>
3775<script type="text/javascript">
3776var username = document.getElementById('username');
3777focus(username);
3778username.form['auth[driver]'].onchange();
3779</script>
3780<?php
3781echo"<p><input type='submit' value='".lang(32)."'>\n",checkbox("auth[permanent]",1,$_COOKIE["adminer_permanent"],lang(33))."\n";}function
3782login($td,$_e){return
3783true;}function
3784tableName($Rf){return
3785h($Rf["Name"]);}function
3786fieldName($n,$he=0){return'<span title="'.h($n["full_type"]).'">'.h($n["field"]).'</span>';}function
3787selectLinks($Rf,$P=""){echo'<p class="links">';$sd=array("select"=>lang(34));if(support("table")||support("indexes"))$sd["table"]=lang(35);if(support("table")){if(is_view($Rf))$sd["view"]=lang(36);else$sd["create"]=lang(37);}if($P!==null)$sd["edit"]=lang(38);foreach($sd
3788as$z=>$X)echo" <a href='".h(ME)."$z=".urlencode($Rf["Name"]).($z=="edit"?$P:"")."'".bold(isset($_GET[$z])).">$X</a>";echo"\n";}function
3789foreignKeys($Q){return
3790foreign_keys($Q);}function
3791backwardKeys($Q,$Qf){return
3792array();}function
3793backwardKeysPrint($Aa,$L){}function
3794selectQuery($I,$eg){global$y;return"<p><code class='jush-$y'>".h(str_replace("\n"," ",$I))."</code> <span class='time'>($eg)</span>".(support("sql")?" <a href='".h(ME)."sql=".urlencode($I)."'>".lang(10)."</a>":"")."</p>";}function
3795rowDescription($Q){return"";}function
3796rowDescriptions($M,$sc){return$M;}function
3797selectLink($X,$n){}function
3798selectVal($X,$A,$n,$oe){$K=($X===null?"<i>NULL</i>":(preg_match("~char|binary~",$n["type"])&&!preg_match("~var~",$n["type"])?"<code>$X</code>":$X));if(preg_match('~blob|bytea|raw|file~',$n["type"])&&!is_utf8($X))$K=lang(39,strlen($oe));return($A?"<a href='".h($A)."'".(is_url($A)?" rel='noreferrer'":"").">$K</a>":$K);}function
3799editVal($X,$n){return$X;}function
3800selectColumnsPrint($N,$e){global$xc,$_c;print_fieldset("select",lang(40),$N);$v=0;$N[""]=array();foreach($N
3801as$z=>$X){$X=$_GET["columns"][$z];$d=select_input(" name='columns[$v][col]' onchange='".($z!==""?"selectFieldChange(this.form)":"selectAddRow(this)").";'",$e,$X["col"]);echo"<div>".($xc||$_c?"<select name='columns[$v][fun]' onchange='helpClose();".($z!==""?"":" this.nextSibling.nextSibling.onchange();")."'".on_help("getTarget(event).value && getTarget(event).value.replace(/ |\$/, '(') + ')'",1).">".optionlist(array(-1=>"")+array_filter(array(lang(41)=>$xc,lang(42)=>$_c)),$X["fun"])."</select>"."($d)":$d)."</div>\n";$v++;}echo"</div></fieldset>\n";}function
3802selectSearchPrint($Z,$e,$x){print_fieldset("search",lang(43),$Z);foreach($x
3803as$v=>$w){if($w["type"]=="FULLTEXT"){echo"(<i>".implode("</i>, <i>",array_map('h',$w["columns"]))."</i>) AGAINST"," <input type='search' name='fulltext[$v]' value='".h($_GET["fulltext"][$v])."' onchange='selectFieldChange(this.form);'>",checkbox("boolean[$v]",1,isset($_GET["boolean"][$v]),"BOOL"),"<br>\n";}}$_GET["where"]=(array)$_GET["where"];reset($_GET["where"]);$Ka="this.nextSibling.onchange();";for($v=0;$v<=count($_GET["where"]);$v++){list(,$X)=each($_GET["where"]);if(!$X||("$X[col]$X[val]"!=""&&in_array($X["op"],$this->operators))){echo"<div>".select_input(" name='where[$v][col]' onchange='$Ka'",$e,$X["col"],"(".lang(44).")"),html_select("where[$v][op]",$this->operators,$X["op"],$Ka),"<input type='search' name='where[$v][val]' value='".h($X["val"])."' onchange='".($X?"selectFieldChange(this.form)":"selectAddRow(this)").";' onkeydown='selectSearchKeydown(this, event);' onsearch='selectSearchSearch(this);'></div>\n";}}echo"</div></fieldset>\n";}function
3804selectOrderPrint($he,$e,$x){print_fieldset("sort",lang(45),$he);$v=0;foreach((array)$_GET["order"]as$z=>$X){if($X!=""){echo"<div>".select_input(" name='order[$v]' onchange='selectFieldChange(this.form);'",$e,$X),checkbox("desc[$v]",1,isset($_GET["desc"][$z]),lang(46))."</div>\n";$v++;}}echo"<div>".select_input(" name='order[$v]' onchange='selectAddRow(this);'",$e),checkbox("desc[$v]",1,false,lang(46))."</div>\n","</div></fieldset>\n";}function
3805selectLimitPrint($_){echo"<fieldset><legend>".lang(47)."</legend><div>";echo"<input type='number' name='limit' class='size' value='".h($_)."' onchange='selectFieldChange(this.form);'>","</div></fieldset>\n";}function
3806selectLengthPrint($dg){if($dg!==null){echo"<fieldset><legend>".lang(48)."</legend><div>","<input type='number' name='text_length' class='size' value='".h($dg)."'>","</div></fieldset>\n";}}function
3807selectActionPrint($x){echo"<fieldset><legend>".lang(49)."</legend><div>","<input type='submit' value='".lang(40)."'>"," <span id='noindex' title='".lang(50)."'></span>","<script type='text/javascript'>\n","var indexColumns = ";$e=array();foreach($x
3808as$w){if($w["type"]!="FULLTEXT")$e[reset($w["columns"])]=1;}$e[""]=1;foreach($e
3809as$z=>$X)json_row($z);echo";\n","selectFieldChange(document.getElementById('form'));\n","</script>\n","</div></fieldset>\n";}function
3810selectCommandPrint(){return!information_schema(DB);}function
3811selectImportPrint(){return!information_schema(DB);}function
3812selectEmailPrint($Qb,$e){}function
3813selectColumnsProcess($e,$x){global$xc,$_c;$N=array();$u=array();foreach((array)$_GET["columns"]as$z=>$X){if($X["fun"]=="count"||($X["col"]!=""&&(!$X["fun"]||in_array($X["fun"],$xc)||in_array($X["fun"],$_c)))){$N[$z]=apply_sql_function($X["fun"],($X["col"]!=""?idf_escape($X["col"]):"*"));if(!in_array($X["fun"],$_c))$u[]=$N[$z];}}return
3814array($N,$u);}function
3815selectSearchProcess($o,$x){global$g,$y;$K=array();foreach($x
3816as$v=>$w){if($w["type"]=="FULLTEXT"&&$_GET["fulltext"][$v]!="")$K[]="MATCH (".implode(", ",array_map('idf_escape',$w["columns"])).") AGAINST (".q($_GET["fulltext"][$v]).(isset($_GET["boolean"][$v])?" IN BOOLEAN MODE":"").")";}foreach((array)$_GET["where"]as$X){if("$X[col]$X[val]"!=""&&in_array($X["op"],$this->operators)){$db=" $X[op]";if(preg_match('~IN$~',$X["op"])){$Mc=process_length($X["val"]);$db.=" ".($Mc!=""?$Mc:"(NULL)");}elseif($X["op"]=="SQL")$db=" $X[val]";elseif($X["op"]=="LIKE %%")$db=" LIKE ".$this->processInput($o[$X["col"]],"%$X[val]%");elseif($X["op"]=="ILIKE %%")$db=" ILIKE ".$this->processInput($o[$X["col"]],"%$X[val]%");elseif(!preg_match('~NULL$~',$X["op"]))$db.=" ".$this->processInput($o[$X["col"]],$X["val"]);if($X["col"]!="")$K[]=idf_escape($X["col"]).$db;else{$Ya=array();foreach($o
3817as$F=>$n){$Yc=preg_match('~char|text|enum|set~',$n["type"]);if((is_numeric($X["val"])||!preg_match('~(^|[^o])int|float|double|decimal|bit~',$n["type"]))&&(!preg_match("~[\x80-\xFF]~",$X["val"])||$Yc)){$F=idf_escape($F);$Ya[]=($y=="sql"&&$Yc&&!preg_match("~^utf8_~",$n["collation"])?"CONVERT($F USING ".charset($g).")":$F);}}$K[]=($Ya?"(".implode("$db OR ",$Ya)."$db)":"0");}}}return$K;}function
3818selectOrderProcess($o,$x){$K=array();foreach((array)$_GET["order"]as$z=>$X){if($X!="")$K[]=(preg_match('~^((COUNT\\(DISTINCT |[A-Z0-9_]+\\()(`(?:[^`]|``)+`|"(?:[^"]|"")+")\\)|COUNT\\(\\*\\))$~',$X)?$X:idf_escape($X)).(isset($_GET["desc"][$z])?" DESC":"");}return$K;}function
3819selectLimitProcess(){return(isset($_GET["limit"])?$_GET["limit"]:"50");}function
3820selectLengthProcess(){return(isset($_GET["text_length"])?$_GET["text_length"]:"100");}function
3821selectEmailProcess($Z,$sc){return
3822false;}function
3823selectQueryBuild($N,$Z,$u,$he,$_,$G){return"";}function
3824messageQuery($I,$eg){global$y;restart_session();$Ec=&get_session("queries");$Ic="sql-".count($Ec[$_GET["db"]]);if(strlen($I)>1e6)$I=preg_replace('~[\x80-\xFF]+$~','',substr($I,0,1e6))."\n...";$Ec[$_GET["db"]][]=array($I,time(),$eg);return" <span class='time'>".@date("H:i:s")."</span> <a href='#$Ic' onclick=\"return !toggle('$Ic');\">".lang(51)."</a>"."<div id='$Ic' class='hidden'><pre><code class='jush-$y'>".shorten_utf8($I,1000).'</code></pre>'.($eg?" <span class='time'>($eg)</span>":'').(support("sql")?'<p><a href="'.h(str_replace("db=".urlencode(DB),"db=".urlencode($_GET["db"]),ME).'sql=&history='.(count($Ec[$_GET["db"]])-1)).'">'.lang(10).'</a>':'').'</div>';}function
3825editFunctions($n){global$Lb;$K=($n["null"]?"NULL/":"");foreach($Lb
3826as$z=>$xc){if(!$z||(!isset($_GET["call"])&&(isset($_GET["select"])||where($_GET)))){foreach($xc
3827as$Be=>$X){if(!$Be||preg_match("~$Be~",$n["type"]))$K.="/$X";}if($z&&!preg_match('~set|blob|bytea|raw|file~',$n["type"]))$K.="/SQL";}}if($n["auto_increment"]&&!isset($_GET["select"])&&!where($_GET))$K=lang(52);return
3828explode("/",$K);}function
3829editInput($Q,$n,$wa,$Y){if($n["type"]=="enum")return(isset($_GET["select"])?"<label><input type='radio'$wa value='-1' checked><i>".lang(8)."</i></label> ":"").($n["null"]?"<label><input type='radio'$wa value=''".($Y!==null||isset($_GET["select"])?"":" checked")."><i>NULL</i></label> ":"").enum_input("radio",$wa,$n,$Y,0);return"";}function
3830processInput($n,$Y,$s=""){if($s=="SQL")return$Y;$F=$n["field"];$K=q($Y);if(preg_match('~^(now|getdate|uuid)$~',$s))$K="$s()";elseif(preg_match('~^current_(date|timestamp)$~',$s))$K=$s;elseif(preg_match('~^([+-]|\\|\\|)$~',$s))$K=idf_escape($F)." $s $K";elseif(preg_match('~^[+-] interval$~',$s))$K=idf_escape($F)." $s ".(preg_match("~^(\\d+|'[0-9.: -]') [A-Z_]+$~i",$Y)?$Y:$K);elseif(preg_match('~^(addtime|subtime|concat)$~',$s))$K="$s(".idf_escape($F).", $K)";elseif(preg_match('~^(md5|sha1|password|encrypt)$~',$s))$K="$s($K)";return
3831unconvert_field($n,$K);}function
3832dumpOutput(){$K=array('text'=>lang(53),'file'=>lang(54));if(function_exists('gzencode'))$K['gz']='gzip';return$K;}function
3833dumpFormat(){return
3834array('sql'=>'SQL','csv'=>'CSV,','csv;'=>'CSV;','tsv'=>'TSV');}function
3835dumpDatabase($k){}function
3836dumpTable($Q,$Lf,$Zc=0){if($_POST["format"]!="sql"){echo"\xef\xbb\xbf";if($Lf)dump_csv(array_keys(fields($Q)));}else{if($Zc==2){$o=array();foreach(fields($Q)as$F=>$n)$o[]=idf_escape($F)." $n[full_type]";$i="CREATE TABLE ".table($Q)." (".implode(", ",$o).")";}else$i=create_sql($Q,$_POST["auto_increment"]);set_utf8mb4($i);if($Lf&&$i){if($Lf=="DROP+CREATE"||$Zc==1)echo"DROP ".($Zc==2?"VIEW":"TABLE")." IF EXISTS ".table($Q).";\n";if($Zc==1)$i=remove_definer($i);echo"$i;\n\n";}}}function
3837dumpData($Q,$Lf,$I){global$g,$y;$xd=($y=="sqlite"?0:1048576);if($Lf){if($_POST["format"]=="sql"){if($Lf=="TRUNCATE+INSERT")echo
3838truncate_sql($Q).";\n";$o=fields($Q);}$J=$g->query($I,1);if($J){$Rc="";$Ia="";$cd=array();$Nf="";$lc=($Q!=''?'fetch_assoc':'fetch_row');while($L=$J->$lc()){if(!$cd){$Kg=array();foreach($L
3839as$X){$n=$J->fetch_field();$cd[]=$n->name;$z=idf_escape($n->name);$Kg[]="$z = VALUES($z)";}$Nf=($Lf=="INSERT+UPDATE"?"\nON DUPLICATE KEY UPDATE ".implode(", ",$Kg):"").";\n";}if($_POST["format"]!="sql"){if($Lf=="table"){dump_csv($cd);$Lf="INSERT";}dump_csv($L);}else{if(!$Rc)$Rc="INSERT INTO ".table($Q)." (".implode(", ",array_map('idf_escape',$cd)).") VALUES";foreach($L
3840as$z=>$X){$n=$o[$z];$L[$z]=($X!==null?unconvert_field($n,preg_match('~(^|[^o])int|float|double|decimal~',$n["type"])&&$X!=''?$X:q($X)):"NULL");}$pf=($xd?"\n":" ")."(".implode(",\t",$L).")";if(!$Ia)$Ia=$Rc.$pf;elseif(strlen($Ia)+4+strlen($pf)+strlen($Nf)<$xd)$Ia.=",$pf";else{echo$Ia.$Nf;$Ia=$Rc.$pf;}}}if($Ia)echo$Ia.$Nf;}elseif($_POST["format"]=="sql")echo"-- ".str_replace("\n"," ",$g->error)."\n";}}function
3841dumpFilename($Jc){return
3842friendly_url($Jc!=""?$Jc:(SERVER!=""?SERVER:"localhost"));}function
3843dumpHeaders($Jc,$Id=false){$qe=$_POST["output"];$gc=(preg_match('~sql~',$_POST["format"])?"sql":($Id?"tar":"csv"));header("Content-Type: ".($qe=="gz"?"application/x-gzip":($gc=="tar"?"application/x-tar":($gc=="sql"||$qe!="file"?"text/plain":"text/csv")."; charset=utf-8")));if($qe=="gz")ob_start('ob_gzencode',1e6);return$gc;}function
3844homepage(){echo'<p class="links">'.($_GET["ns"]==""&&support("database")?'<a href="'.h(ME).'database=">'.lang(55)."</a>\n":""),(support("scheme")?"<a href='".h(ME)."scheme='>".($_GET["ns"]!=""?lang(56):lang(57))."</a>\n":""),($_GET["ns"]!==""?'<a href="'.h(ME).'schema=">'.lang(58)."</a>\n":""),(support("privileges")?"<a href='".h(ME)."privileges='>".lang(59)."</a>\n":"");return
3845true;}function
3846navigation($Hd){global$fa,$y,$Eb,$g;echo'<h1>
3847',$this->name(),' <span class="version">',$fa,'</span>
3848<a href="http://www.adminer.org/#download" target="_blank" id="version">',(version_compare($fa,$_COOKIE["adminer_version"])<0?h($_COOKIE["adminer_version"]):""),'</a>
3849</h1>
3850';if($Hd=="auth"){$pc=true;foreach((array)$_SESSION["pwds"]as$Mg=>$zf){foreach($zf
3851as$O=>$Ig){foreach($Ig
3852as$V=>$_e){if($_e!==null){if($pc){echo"<p id='logins' onmouseover='menuOver(this, event);' onmouseout='menuOut(this);'>\n";$pc=false;}$tb=$_SESSION["db"][$Mg][$O][$V];foreach(($tb?array_keys($tb):array(""))as$k)echo"<a href='".h(auth_url($Mg,$O,$V,$k))."'>($Eb[$Mg]) ".h($V.($O!=""?"@$O":"").($k!=""?" - $k":""))."</a><br>\n";}}}}}else{if($_GET["ns"]!==""&&!$Hd&&DB!=""){$g->select_db(DB);$S=table_status('',true);}if(support("sql")){echo'<script type="text/javascript" src="',h(preg_replace("~\\?.*~","",ME))."?file=jush.js&version=4.2.1&driver=mysql",'"></script>
3853<script type="text/javascript">
3854';if($S){$sd=array();foreach($S
3855as$Q=>$U)$sd[]=preg_quote($Q,'/');echo"var jushLinks = { $y: [ '".js_escape(ME).(support("table")?"table=":"select=")."\$&', /\\b(".implode("|",$sd).")\\b/g ] };\n";foreach(array("bac","bra","sqlite_quo","mssql_bra")as$X)echo"jushLinks.$X = jushLinks.$y;\n";}echo'bodyLoad(\'',(is_object($g)?substr($g->server_info,0,3):""),'\');
3856</script>
3857';}$this->databasesPrint($Hd);if(DB==""||!$Hd){echo"<p class='links'>".(support("sql")?"<a href='".h(ME)."sql='".bold(isset($_GET["sql"])&&!isset($_GET["import"])).">".lang(51)."</a>\n<a href='".h(ME)."import='".bold(isset($_GET["import"])).">".lang(60)."</a>\n":"")."";if(support("dump"))echo"<a href='".h(ME)."dump=".urlencode(isset($_GET["table"])?$_GET["table"]:$_GET["select"])."' id='dump'".bold(isset($_GET["dump"])).">".lang(61)."</a>\n";}if($_GET["ns"]!==""&&!$Hd&&DB!=""){echo'<a href="'.h(ME).'create="'.bold($_GET["create"]==="").">".lang(62)."</a>\n";if(!$S)echo"<p class='message'>".lang(9)."\n";else$this->tablesPrint($S);}}}function
3858databasesPrint($Hd){global$c,$g;$j=$this->databases();echo'<form action="">
3859<p id="dbs">
3860';hidden_fields_get();$rb=" onmousedown='dbMouseDown(event, this);' onchange='dbChange(this);'";echo"<span title='".lang(63)."'>DB</span>: ".($j?"<select name='db'$rb>".optionlist(array(""=>"")+$j,DB)."</select>":'<input name="db" value="'.h(DB).'" autocapitalize="off">'),"<input type='submit' value='".lang(20)."'".($j?" class='hidden'":"").">\n";if($Hd!="db"&&DB!=""&&$g->select_db(DB)){}echo(isset($_GET["sql"])?'<input type="hidden" name="sql" value="">':(isset($_GET["schema"])?'<input type="hidden" name="schema" value="">':(isset($_GET["dump"])?'<input type="hidden" name="dump" value="">':(isset($_GET["privileges"])?'<input type="hidden" name="privileges" value="">':"")))),"</p></form>\n";}function
3861tablesPrint($S){echo"<p id='tables' onmouseover='menuOver(this, event);' onmouseout='menuOut(this);'>\n";foreach($S
3862as$Q=>$Gf){echo'<a href="'.h(ME).'select='.urlencode($Q).'"'.bold($_GET["select"]==$Q||$_GET["edit"]==$Q,"select").">".lang(64)."</a> ";$F=$this->tableName($Gf);echo(support("table")||support("indexes")?'<a href="'.h(ME).'table='.urlencode($Q).'"'.bold(in_array($Q,array($_GET["table"],$_GET["create"],$_GET["indexes"],$_GET["foreign"],$_GET["trigger"])),(is_view($Gf)?"view":""),"structure")." title='".lang(35)."'>$F</a>":"<span>$F</span>")."<br>\n";}}}$c=(function_exists('adminer_object')?adminer_object():new
3863Adminer);if($c->operators===null)$c->operators=$de;function
3864page_header($hg,$m="",$Ha=array(),$ig=""){global$a,$fa,$c,$Eb,$y;page_headers();if(is_ajax()&&$m){page_messages($m);exit;}$jg=$hg.($ig!=""?": $ig":"");$kg=strip_tags($jg.(SERVER!=""&&SERVER!="localhost"?h(" - ".SERVER):"")." - ".$c->name());echo'<!DOCTYPE html>
3865<html lang="',$a,'" dir="',lang(65),'">
3866<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
3867<meta http-equiv="Content-Script-Type" content="text/javascript">
3868<meta name="robots" content="noindex">
3869<meta name="referrer" content="origin-when-crossorigin">
3870<title>',$kg,'</title>
3871<link rel="stylesheet" type="text/css" href="',h(preg_replace("~\\?.*~","",ME))."?file=default.css&version=4.2.1&driver=mysql",'">
3872<script type="text/javascript" src="',h(preg_replace("~\\?.*~","",ME))."?file=functions.js&version=4.2.1&driver=mysql",'"></script>
3873';if($c->head()){echo'<link rel="shortcut icon" type="image/x-icon" href="',h(preg_replace("~\\?.*~","",ME))."?file=favicon.ico&version=4.2.1&driver=mysql",'">
3874<link rel="apple-touch-icon" href="',h(preg_replace("~\\?.*~","",ME))."?file=favicon.ico&version=4.2.1&driver=mysql",'">
3875';if(file_exists("adminer.css")){echo'<link rel="stylesheet" type="text/css" href="adminer.css">
3876';}}echo'
3877<body class="',lang(65),' nojs" onkeydown="bodyKeydown(event);" onclick="bodyClick(event);"',(isset($_COOKIE["adminer_version"])?"":" onload=\"verifyVersion('$fa');\"");?>>
3878<script type="text/javascript">
3879document.body.className = document.body.className.replace(/ nojs/, ' js');
3880var offlineMessage = '<?php echo
3881js_escape(lang(66)),'\';
3882</script>
3883<div id="help" class="jush-',$y,' jsonly hidden" onmouseover="helpOpen = 1;" onmouseout="helpMouseout(this, event);"></div>
3884<div id="content">
3885';if($Ha!==null){$A=substr(preg_replace('~\b(username|db|ns)=[^&]*&~','',ME),0,-1);echo'<p id="breadcrumb"><a href="'.h($A?$A:".").'">'.$Eb[DRIVER].'</a> » ';$A=substr(preg_replace('~\b(db|ns)=[^&]*&~','',ME),0,-1);$O=(SERVER!=""?h(SERVER):lang(28));if($Ha===false)echo"$O\n";else{echo"<a href='".($A?h($A):".")."' accesskey='1' title='Alt+Shift+1'>$O</a> » ";if($_GET["ns"]!=""||(DB!=""&&is_array($Ha)))echo'<a href="'.h($A."&db=".urlencode(DB).(support("scheme")?"&ns=":"")).'">'.h(DB).'</a> » ';if(is_array($Ha)){if($_GET["ns"]!="")echo'<a href="'.h(substr(ME,0,-1)).'">'.h($_GET["ns"]).'</a> » ';foreach($Ha
3886as$z=>$X){$xb=(is_array($X)?$X[1]:h($X));if($xb!="")echo"<a href='".h(ME."$z=").urlencode(is_array($X)?$X[0]:$X)."'>$xb</a> » ";}}echo"$hg\n";}}echo"<h2>$jg</h2>\n","<div id='ajaxstatus' class='jsonly hidden'></div>\n";restart_session();page_messages($m);$j=&get_session("dbs");if(DB!=""&&$j&&!in_array(DB,$j,true))$j=null;stop_session();define("PAGE_HEADER",1);}function
3887page_headers(){global$c;header("Content-Type: text/html; charset=utf-8");header("Cache-Control: no-cache");if($c->headers()){header("X-Frame-Options: deny");header("X-XSS-Protection: 0");}}function
3888page_messages($m){$Eg=preg_replace('~^[^?]*~','',$_SERVER["REQUEST_URI"]);$Fd=$_SESSION["messages"][$Eg];if($Fd){echo"<div class='message'>".implode("</div>\n<div class='message'>",$Fd)."</div>\n";unset($_SESSION["messages"][$Eg]);}if($m)echo"<div class='error'>$m</div>\n";}function
3889page_footer($Hd=""){global$c,$T;echo'</div>
3890';switch_lang();if($Hd!="auth"){echo'<form action="" method="post">
3891<p class="logout">
3892<input type="submit" name="logout" value="',lang(67),'" id="logout">
3893<input type="hidden" name="token" value="',$T,'">
3894</p>
3895</form>
3896';}echo'<div id="menu">
3897';$c->navigation($Hd);echo'</div>
3898<script type="text/javascript">setupSubmitHighlight(document);</script>
3899';}function
3900int32($E){while($E>=2147483648)$E-=4294967296;while($E<=-2147483649)$E+=4294967296;return(int)$E;}function
3901long2str($W,$Qg){$pf='';foreach($W
3902as$X)$pf.=pack('V',$X);if($Qg)return
3903substr($pf,0,end($W));return$pf;}function
3904str2long($pf,$Qg){$W=array_values(unpack('V*',str_pad($pf,4*ceil(strlen($pf)/4),"\0")));if($Qg)$W[]=strlen($pf);return$W;}function
3905xxtea_mx($Vg,$Ug,$Of,$bd){return
3906int32((($Vg>>5&0x7FFFFFF)^$Ug<<2)+(($Ug>>3&0x1FFFFFFF)^$Vg<<4))^int32(($Of^$Ug)+($bd^$Vg));}function
3907encrypt_string($If,$z){if($If=="")return"";$z=array_values(unpack("V*",pack("H*",md5($z))));$W=str2long($If,true);$E=count($W)-1;$Vg=$W[$E];$Ug=$W[0];$H=floor(6+52/($E+1));$Of=0;while($H-->0){$Of=int32($Of+0x9E3779B9);$Kb=$Of>>2&3;for($re=0;$re<$E;$re++){$Ug=$W[$re+1];$Jd=xxtea_mx($Vg,$Ug,$Of,$z[$re&3^$Kb]);$Vg=int32($W[$re]+$Jd);$W[$re]=$Vg;}$Ug=$W[0];$Jd=xxtea_mx($Vg,$Ug,$Of,$z[$re&3^$Kb]);$Vg=int32($W[$E]+$Jd);$W[$E]=$Vg;}return
3908long2str($W,false);}function
3909decrypt_string($If,$z){if($If=="")return"";if(!$z)return
3910false;$z=array_values(unpack("V*",pack("H*",md5($z))));$W=str2long($If,false);$E=count($W)-1;$Vg=$W[$E];$Ug=$W[0];$H=floor(6+52/($E+1));$Of=int32($H*0x9E3779B9);while($Of){$Kb=$Of>>2&3;for($re=$E;$re>0;$re--){$Vg=$W[$re-1];$Jd=xxtea_mx($Vg,$Ug,$Of,$z[$re&3^$Kb]);$Ug=int32($W[$re]-$Jd);$W[$re]=$Ug;}$Vg=$W[$E];$Jd=xxtea_mx($Vg,$Ug,$Of,$z[$re&3^$Kb]);$Ug=int32($W[0]-$Jd);$W[0]=$Ug;$Of=int32($Of-0x9E3779B9);}return
3911long2str($W,true);}$g='';$Dc=$_SESSION["token"];if(!$Dc)$_SESSION["token"]=rand(1,1e6);$T=get_token();$Ce=array();if($_COOKIE["adminer_permanent"]){foreach(explode(" ",$_COOKIE["adminer_permanent"])as$X){list($z)=explode(":",$X);$Ce[$z]=$X;}}function
3912add_invalid_login(){global$c;$nc=get_temp_dir()."/adminer.invalid";$r=@fopen($nc,"r+");if(!$r){$r=@fopen($nc,"w");if(!$r)return;}flock($r,LOCK_EX);$Uc=unserialize(stream_get_contents($r));$eg=time();if($Uc){foreach($Uc
3913as$Vc=>$X){if($X[0]<$eg)unset($Uc[$Vc]);}}$Tc=&$Uc[$c->bruteForceKey()];if(!$Tc)$Tc=array($eg+30*60,0);$Tc[1]++;$xf=serialize($Uc);rewind($r);fwrite($r,$xf);ftruncate($r,strlen($xf));flock($r,LOCK_UN);fclose($r);}$xa=$_POST["auth"];if($xa){$Uc=unserialize(@file_get_contents(get_temp_dir()."/adminer.invalid"));$Tc=$Uc[$c->bruteForceKey()];$Od=($Tc[1]>30?$Tc[0]-time():0);if($Od>0)auth_error(lang(68,ceil($Od/60)));session_regenerate_id();$Mg=$xa["driver"];$O=$xa["server"];$V=$xa["username"];$_e=(string)$xa["password"];$k=$xa["db"];set_password($Mg,$O,$V,$_e);$_SESSION["db"][$Mg][$O][$V][$k]=true;if($xa["permanent"]){$z=base64_encode($Mg)."-".base64_encode($O)."-".base64_encode($V)."-".base64_encode($k);$Ne=$c->permanentLogin(true);$Ce[$z]="$z:".base64_encode($Ne?encrypt_string($_e,$Ne):"");cookie("adminer_permanent",implode(" ",$Ce));}if(count($_POST)==1||DRIVER!=$Mg||SERVER!=$O||$_GET["username"]!==$V||DB!=$k)redirect(auth_url($Mg,$O,$V,$k));}elseif($_POST["logout"]){if($Dc&&!verify_token()){page_header(lang(67),lang(69));page_footer("db");exit;}else{foreach(array("pwds","db","dbs","queries")as$z)set_session($z,null);unset_permanent();redirect(substr(preg_replace('~\b(username|db|ns)=[^&]*&~','',ME),0,-1),lang(70));}}elseif($Ce&&!$_SESSION["pwds"]){session_regenerate_id();$Ne=$c->permanentLogin();foreach($Ce
3914as$z=>$X){list(,$Qa)=explode(":",$X);list($Mg,$O,$V,$k)=array_map('base64_decode',explode("-",$z));set_password($Mg,$O,$V,decrypt_string(base64_decode($Qa),$Ne));$_SESSION["db"][$Mg][$O][$V][$k]=true;}}function
3915unset_permanent(){global$Ce;foreach($Ce
3916as$z=>$X){list($Mg,$O,$V,$k)=array_map('base64_decode',explode("-",$z));if($Mg==DRIVER&&$O==SERVER&&$V==$_GET["username"]&&$k==DB)unset($Ce[$z]);}cookie("adminer_permanent",implode(" ",$Ce));}function
3917auth_error($m){global$c,$Dc;$m=h($m);$_f=session_name();if(isset($_GET["username"])){header("HTTP/1.1 403 Forbidden");if(($_COOKIE[$_f]||$_GET[$_f])&&!$Dc)$m=lang(71);else{add_invalid_login();$_e=get_password();if($_e!==null){if($_e===false)$m.='<br>'.lang(72,'<code>permanentLogin()</code>');set_password(DRIVER,SERVER,$_GET["username"],null);}unset_permanent();}}if(!$_COOKIE[$_f]&&$_GET[$_f]&&ini_bool("session.use_only_cookies"))$m=lang(73);$te=session_get_cookie_params();cookie("adminer_key",($_COOKIE["adminer_key"]?$_COOKIE["adminer_key"]:rand_string()),$te["lifetime"]);page_header(lang(32),$m,null);echo"<form action='' method='post'>\n";$c->loginForm();echo"<div>";hidden_fields($_POST,array("auth"));echo"</div>\n","</form>\n";page_footer("auth");exit;}if(isset($_GET["username"])){if(!class_exists("Min_DB")){unset($_SESSION["pwds"][DRIVER]);unset_permanent();page_header(lang(74),lang(75,implode(", ",$Ie)),false);page_footer("auth");exit;}$g=connect();}$l=new
3918Min_Driver($g);if(!is_object($g)||!$c->login($_GET["username"],get_password()))auth_error((is_string($g)?$g:lang(76)));if($xa&&$_POST["token"])$_POST["token"]=$T;$m='';if($_POST){if(!verify_token()){$Oc="max_input_vars";$Ad=ini_get($Oc);if(extension_loaded("suhosin")){foreach(array("suhosin.request.max_vars","suhosin.post.max_vars")as$z){$X=ini_get($z);if($X&&(!$Ad||$X<$Ad)){$Oc=$z;$Ad=$X;}}}$m=(!$_POST["token"]&&$Ad?lang(77,"'$Oc'"):lang(69).' '.lang(78));}}elseif($_SERVER["REQUEST_METHOD"]=="POST"){$m=lang(79,"'post_max_size'");if(isset($_GET["sql"]))$m.=' '.lang(80);}if(!ini_bool("session.use_cookies")||@ini_set("session.use_cookies",false)!==false)session_write_close();function
3919select($J,$h=null,$ke=array(),$_=0){global$y;$sd=array();$x=array();$e=array();$Fa=array();$wg=array();$K=array();odd('');for($v=0;(!$_||$v<$_)&&($L=$J->fetch_row());$v++){if(!$v){echo"<table cellspacing='0' class='nowrap'>\n","<thead><tr>";for($ad=0;$ad<count($L);$ad++){$n=$J->fetch_field();$F=$n->name;$je=$n->orgtable;$ie=$n->orgname;$K[$n->table]=$je;if($ke&&$y=="sql")$sd[$ad]=($F=="table"?"table=":($F=="possible_keys"?"indexes=":null));elseif($je!=""){if(!isset($x[$je])){$x[$je]=array();foreach(indexes($je,$h)as$w){if($w["type"]=="PRIMARY"){$x[$je]=array_flip($w["columns"]);break;}}$e[$je]=$x[$je];}if(isset($e[$je][$ie])){unset($e[$je][$ie]);$x[$je][$ie]=$ad;$sd[$ad]=$je;}}if($n->charsetnr==63)$Fa[$ad]=true;$wg[$ad]=$n->type;echo"<th".($je!=""||$n->name!=$ie?" title='".h(($je!=""?"$je.":"").$ie)."'":"").">".h($F).($ke?doc_link(array('sql'=>"explain-output.html#explain_".strtolower($F))):"");}echo"</thead>\n";}echo"<tr".odd().">";foreach($L
3920as$z=>$X){if($X===null)$X="<i>NULL</i>";elseif($Fa[$z]&&!is_utf8($X))$X="<i>".lang(39,strlen($X))."</i>";elseif(!strlen($X))$X=" ";else{$X=h($X);if($wg[$z]==254)$X="<code>$X</code>";}if(isset($sd[$z])&&!$e[$sd[$z]]){if($ke&&$y=="sql"){$Q=$L[array_search("table=",$sd)];$A=$sd[$z].urlencode($ke[$Q]!=""?$ke[$Q]:$Q);}else{$A="edit=".urlencode($sd[$z]);foreach($x[$sd[$z]]as$Ua=>$ad)$A.="&where".urlencode("[".bracket_escape($Ua)."]")."=".urlencode($L[$ad]);}$X="<a href='".h(ME.$A)."'>$X</a>";}echo"<td>$X";}}echo($v?"</table>":"<p class='message'>".lang(12))."\n";return$K;}function
3921referencable_primary($vf){$K=array();foreach(table_status('',true)as$Sf=>$Q){if($Sf!=$vf&&fk_support($Q)){foreach(fields($Sf)as$n){if($n["primary"]){if($K[$Sf]){unset($K[$Sf]);break;}$K[$Sf]=$n;}}}}return$K;}function
3922textarea($F,$Y,$M=10,$Ya=80){global$y;echo"<textarea name='$F' rows='$M' cols='$Ya' class='sqlarea jush-$y' spellcheck='false' wrap='off'>";if(is_array($Y)){foreach($Y
3923as$X)echo
3924h($X[0])."\n\n\n";}else
3925echo
3926h($Y);echo"</textarea>";}function
3927edit_type($z,$n,$Xa,$q=array()){global$Kf,$wg,$Cg,$Zd;$U=$n["type"];echo'<td><select name="',$z,'[type]" class="type" onfocus="lastType = selectValue(this);" onchange="editingTypeChange(this);"',on_help("getTarget(event).value",1),'>';if($U&&!isset($wg[$U])&&!isset($q[$U]))array_unshift($Kf,$U);if($q)$Kf[lang(81)]=$q;echo
3928optionlist($Kf,$U),'</select>
3929<td><input name="',$z,'[length]" value="',h($n["length"]),'" size="3" onfocus="editingLengthFocus(this);"',(!$n["length"]&&preg_match('~var(char|binary)$~',$U)?" class='required'":""),' onchange="editingLengthChange(this);" onkeyup="this.onchange();"><td class="options">';echo"<select name='$z"."[collation]'".(preg_match('~(char|text|enum|set)$~',$U)?"":" class='hidden'").'><option value="">('.lang(82).')'.optionlist($Xa,$n["collation"]).'</select>',($Cg?"<select name='$z"."[unsigned]'".(!$U||preg_match('~((^|[^o])int|float|double|decimal)$~',$U)?"":" class='hidden'").'><option>'.optionlist($Cg,$n["unsigned"]).'</select>':''),(isset($n['on_update'])?"<select name='$z"."[on_update]'".(preg_match('~timestamp|datetime~',$U)?"":" class='hidden'").'>'.optionlist(array(""=>"(".lang(83).")","CURRENT_TIMESTAMP"),$n["on_update"]).'</select>':''),($q?"<select name='$z"."[on_delete]'".(preg_match("~`~",$U)?"":" class='hidden'")."><option value=''>(".lang(84).")".optionlist(explode("|",$Zd),$n["on_delete"])."</select> ":" ");}function
3930process_length($od){global$Vb;return(preg_match("~^\\s*\\(?\\s*$Vb(?:\\s*,\\s*$Vb)*+\\s*\\)?\\s*\$~",$od)&&preg_match_all("~$Vb~",$od,$vd)?"(".implode(",",$vd[0]).")":preg_replace('~^[0-9].*~','(\0)',preg_replace('~[^-0-9,+()[\]]~','',$od)));}function
3931process_type($n,$Va="COLLATE"){global$Cg;return" $n[type]".process_length($n["length"]).(preg_match('~(^|[^o])int|float|double|decimal~',$n["type"])&&in_array($n["unsigned"],$Cg)?" $n[unsigned]":"").(preg_match('~char|text|enum|set~',$n["type"])&&$n["collation"]?" $Va ".q($n["collation"]):"");}function
3932process_field($n,$ug){global$y;$vb=$n["default"];return
3933array(idf_escape(trim($n["field"])),process_type($ug),($n["null"]?" NULL":" NOT NULL"),(isset($vb)?" DEFAULT ".((preg_match('~time~',$n["type"])&&preg_match('~^CURRENT_TIMESTAMP$~i',$vb))||($y=="sqlite"&&preg_match('~^CURRENT_(TIME|TIMESTAMP|DATE)$~i',$vb))||($n["type"]=="bit"&&preg_match("~^([0-9]+|b'[0-1]+')\$~",$vb))||($y=="pgsql"&&preg_match("~^[a-z]+\\(('[^']*')+\\)\$~",$vb))?$vb:q($vb)):""),(preg_match('~timestamp|datetime~',$n["type"])&&$n["on_update"]?" ON UPDATE $n[on_update]":""),(support("comment")&&$n["comment"]!=""?" COMMENT ".q($n["comment"]):""),($n["auto_increment"]?auto_increment():null),);}function
3934type_class($U){foreach(array('char'=>'text','date'=>'time|year','binary'=>'blob','enum'=>'set',)as$z=>$X){if(preg_match("~$z|$X~",$U))return" class='$z'";}}function
3935edit_fields($o,$Xa,$U="TABLE",$q=array(),$cb=false){global$g,$Pc;echo'<thead><tr class="wrap">
3936';if($U=="PROCEDURE"){echo'<td> ';}echo'<th>',($U=="TABLE"?lang(85):lang(86)),'<td>',lang(87),'<textarea id="enum-edit" rows="4" cols="12" wrap="off" style="display: none;" onblur="editingLengthBlur(this);"></textarea>
3937<td>',lang(88),'<td>',lang(89);if($U=="TABLE"){echo'<td>NULL
3938<td><input type="radio" name="auto_increment_col" value=""><acronym title="',lang(52),'">AI</acronym>',doc_link(array('sql'=>"example-auto-increment.html",'sqlite'=>"autoinc.html",'pgsql'=>"datatype.html#DATATYPE-SERIAL",'mssql'=>"ms186775.aspx",)),'<td>',lang(90),(support("comment")?"<td".($cb?"":" class='hidden'").">".lang(91):"");}echo'<td>',"<input type='image' class='icon' name='add[".(support("move_col")?0:count($o))."]' src='".h(preg_replace("~\\?.*~","",ME))."?file=plus.gif&version=4.2.1&driver=mysql' alt='+' title='".lang(92)."'>",'<script type="text/javascript">row_count = ',count($o),';</script>
3939</thead>
3940<tbody onkeydown="return editingKeydown(event);">
3941';foreach($o
3942as$v=>$n){$v++;$le=$n[($_POST?"orig":"field")];$Ab=(isset($_POST["add"][$v-1])||(isset($n["field"])&&!$_POST["drop_col"][$v]))&&(support("drop_col")||$le=="");echo'<tr',($Ab?"":" style='display: none;'"),'>
3943',($U=="PROCEDURE"?"<td>".html_select("fields[$v][inout]",explode("|",$Pc),$n["inout"]):""),'<th>';if($Ab){echo'<input name="fields[',$v,'][field]" value="',h($n["field"]),'" onchange="editingNameChange(this);',($n["field"]!=""||count($o)>1?'':' editingAddRow(this);" onkeyup="if (this.value) editingAddRow(this);'),'" maxlength="64" autocapitalize="off">';}echo'<input type="hidden" name="fields[',$v,'][orig]" value="',h($le),'">
3944';edit_type("fields[$v]",$n,$Xa,$q);if($U=="TABLE"){echo'<td>',checkbox("fields[$v][null]",1,$n["null"],"","","block"),'<td><label class="block"><input type="radio" name="auto_increment_col" value="',$v,'"';if($n["auto_increment"]){echo' checked';}?> onclick="var field = this.form['fields[' + this.value + '][field]']; if (!field.value) { field.value = 'id'; field.onchange(); }"></label><td><?php
3945echo
3946checkbox("fields[$v][has_default]",1,$n["has_default"]),'<input name="fields[',$v,'][default]" value="',h($n["default"]),'" onkeyup="keyupChange.call(this);" onchange="this.previousSibling.checked = true;">
3947',(support("comment")?"<td".($cb?"":" class='hidden'")."><input name='fields[$v][comment]' value='".h($n["comment"])."' maxlength='".($g->server_info>=5.5?1024:255)."'>":"");}echo"<td>",(support("move_col")?"<input type='image' class='icon' name='add[$v]' src='".h(preg_replace("~\\?.*~","",ME))."?file=plus.gif&version=4.2.1&driver=mysql' alt='+' title='".lang(92)."' onclick='return !editingAddRow(this, 1);'> "."<input type='image' class='icon' name='up[$v]' src='".h(preg_replace("~\\?.*~","",ME))."?file=up.gif&version=4.2.1&driver=mysql' alt='^' title='".lang(93)."'> "."<input type='image' class='icon' name='down[$v]' src='".h(preg_replace("~\\?.*~","",ME))."?file=down.gif&version=4.2.1&driver=mysql' alt='v' title='".lang(94)."'> ":""),($le==""||support("drop_col")?"<input type='image' class='icon' name='drop_col[$v]' src='".h(preg_replace("~\\?.*~","",ME))."?file=cross.gif&version=4.2.1&driver=mysql' alt='x' title='".lang(95)."' onclick=\"return !editingRemoveRow(this, 'fields\$1[field]');\">":""),"\n";}}function
3948process_fields(&$o){ksort($o);$Sd=0;if($_POST["up"]){$id=0;foreach($o
3949as$z=>$n){if(key($_POST["up"])==$z){unset($o[$z]);array_splice($o,$id,0,array($n));break;}if(isset($n["field"]))$id=$Sd;$Sd++;}}elseif($_POST["down"]){$uc=false;foreach($o
3950as$z=>$n){if(isset($n["field"])&&$uc){unset($o[key($_POST["down"])]);array_splice($o,$Sd,0,array($uc));break;}if(key($_POST["down"])==$z)$uc=$n;$Sd++;}}elseif($_POST["add"]){$o=array_values($o);array_splice($o,key($_POST["add"]),0,array(array()));}elseif(!$_POST["drop_col"])return
3951false;return
3952true;}function
3953normalize_enum($C){return"'".str_replace("'","''",addcslashes(stripcslashes(str_replace($C[0][0].$C[0][0],$C[0][0],substr($C[0],1,-1))),'\\'))."'";}function
3954grant($t,$Pe,$e,$Yd){if(!$Pe)return
3955true;if($Pe==array("ALL PRIVILEGES","GRANT OPTION"))return($t=="GRANT"?queries("$t ALL PRIVILEGES$Yd WITH GRANT OPTION"):queries("$t ALL PRIVILEGES$Yd")&&queries("$t GRANT OPTION$Yd"));return
3956queries("$t ".preg_replace('~(GRANT OPTION)\\([^)]*\\)~','\\1',implode("$e, ",$Pe).$e).$Yd);}function
3957drop_create($Fb,$i,$Gb,$bg,$Hb,$B,$Ed,$Cd,$Dd,$Vd,$Md){if($_POST["drop"])query_redirect($Fb,$B,$Ed);elseif($Vd=="")query_redirect($i,$B,$Dd);elseif($Vd!=$Md){$lb=queries($i);queries_redirect($B,$Cd,$lb&&queries($Fb));if($lb)queries($Gb);}else
3958queries_redirect($B,$Cd,queries($bg)&&queries($Hb)&&queries($Fb)&&queries($i));}function
3959create_trigger($Yd,$L){global$y;$gg=" $L[Timing] $L[Event]".($L["Event"]=="UPDATE OF"?" ".idf_escape($L["Of"]):"");return"CREATE TRIGGER ".idf_escape($L["Trigger"]).($y=="mssql"?$Yd.$gg:$gg.$Yd).rtrim(" $L[Type]\n$L[Statement]",";").";";}function
3960create_routine($mf,$L){global$Pc;$P=array();$o=(array)$L["fields"];ksort($o);foreach($o
3961as$n){if($n["field"]!="")$P[]=(preg_match("~^($Pc)\$~",$n["inout"])?"$n[inout] ":"").idf_escape($n["field"]).process_type($n,"CHARACTER SET");}return"CREATE $mf ".idf_escape(trim($L["name"]))." (".implode(", ",$P).")".(isset($_GET["function"])?" RETURNS".process_type($L["returns"],"CHARACTER SET"):"").($L["language"]?" LANGUAGE $L[language]":"").rtrim("\n$L[definition]",";").";";}function
3962remove_definer($I){return
3963preg_replace('~^([A-Z =]+) DEFINER=`'.preg_replace('~@(.*)~','`@`(%|\\1)',logged_user()).'`~','\\1',$I);}function
3964format_foreign_key($p){global$Zd;return" FOREIGN KEY (".implode(", ",array_map('idf_escape',$p["source"])).") REFERENCES ".table($p["table"])." (".implode(", ",array_map('idf_escape',$p["target"])).")".(preg_match("~^($Zd)\$~",$p["on_delete"])?" ON DELETE $p[on_delete]":"").(preg_match("~^($Zd)\$~",$p["on_update"])?" ON UPDATE $p[on_update]":"");}function
3965tar_file($nc,$lg){$K=pack("a100a8a8a8a12a12",$nc,644,0,0,decoct($lg->size),decoct(time()));$Pa=8*32;for($v=0;$v<strlen($K);$v++)$Pa+=ord($K[$v]);$K.=sprintf("%06o",$Pa)."\0 ";echo$K,str_repeat("\0",512-strlen($K));$lg->send();echo
3966str_repeat("\0",511-($lg->size+511)%512);}function
3967ini_bytes($Oc){$X=ini_get($Oc);switch(strtolower(substr($X,-1))){case'g':$X*=1024;case'm':$X*=1024;case'k':$X*=1024;}return$X;}function
3968doc_link($Ae){global$y,$g;$Fg=array('sql'=>"http://dev.mysql.com/doc/refman/".substr($g->server_info,0,3)."/en/",'sqlite'=>"http://www.sqlite.org/",'pgsql'=>"http://www.postgresql.org/docs/".substr($g->server_info,0,3)."/static/",'mssql'=>"http://msdn.microsoft.com/library/",'oracle'=>"http://download.oracle.com/docs/cd/B19306_01/server.102/b14200/",);return($Ae[$y]?"<a href='$Fg[$y]$Ae[$y]' target='_blank' rel='noreferrer'><sup>?</sup></a>":"");}function
3969ob_gzencode($Jf){return
3970gzencode($Jf);}function
3971db_size($k){global$g;if(!$g->select_db($k))return"?";$K=0;foreach(table_status()as$R)$K+=$R["Data_length"]+$R["Index_length"];return
3972format_number($K);}function
3973set_utf8mb4($i){global$g;static$P=false;if(!$P&&preg_match('~\butf8mb4~i',$i)){$P=true;echo"SET NAMES ".charset($g).";\n\n";}}function
3974connect_error(){global$c,$g,$T,$m,$Eb;if(DB!=""){header("HTTP/1.1 404 Not Found");page_header(lang(31).": ".h(DB),lang(96),true);}else{if($_POST["db"]&&!$m)queries_redirect(substr(ME,0,-1),lang(97),drop_databases($_POST["db"]));page_header(lang(98),$m,false);echo"<p class='links'>\n";foreach(array('database'=>lang(99),'privileges'=>lang(59),'processlist'=>lang(100),'variables'=>lang(101),'status'=>lang(102),)as$z=>$X){if(support($z))echo"<a href='".h(ME)."$z='>$X</a>\n";}echo"<p>".lang(103,$Eb[DRIVER],"<b>".h($g->server_info)."</b>","<b>$g->extension</b>")."\n","<p>".lang(104,"<b>".h(logged_user())."</b>")."\n";$j=$c->databases();if($j){$sf=support("scheme");$Xa=collations();echo"<form action='' method='post'>\n","<table cellspacing='0' class='checkable' onclick='tableClick(event);' ondblclick='tableClick(event, true);'>\n","<thead><tr>".(support("database")?"<td> ":"")."<th>".lang(31)." - <a href='".h(ME)."refresh=1'>".lang(105)."</a>"."<td>".lang(106)."<td>".lang(107)."<td>".lang(108)." - <a href='".h(ME)."dbsize=1' onclick=\"return !ajaxSetHtml('".js_escape(ME)."script=connect');\">".lang(109)."</a>"."</thead>\n";$j=($_GET["dbsize"]?count_tables($j):array_flip($j));foreach($j
3975as$k=>$S){$lf=h(ME)."db=".urlencode($k);echo"<tr".odd().">".(support("database")?"<td>".checkbox("db[]",$k,in_array($k,(array)$_POST["db"])):""),"<th><a href='$lf'>".h($k)."</a>";$Wa=nbsp(db_collation($k,$Xa));echo"<td>".(support("database")?"<a href='$lf".($sf?"&ns=":"")."&database=' title='".lang(55)."'>$Wa</a>":$Wa),"<td align='right'><a href='$lf&schema=' id='tables-".h($k)."' title='".lang(58)."'>".($_GET["dbsize"]?$S:"?")."</a>","<td align='right' id='size-".h($k)."'>".($_GET["dbsize"]?db_size($k):"?"),"\n";}echo"</table>\n",(support("database")?"<fieldset><legend>".lang(110)." <span id='selected'></span></legend><div>\n"."<input type='hidden' name='all' value='' onclick=\"selectCount('selected', formChecked(this, /^db/));\">\n"."<input type='submit' name='drop' value='".lang(111)."'".confirm().">\n"."</div></fieldset>\n":""),"<script type='text/javascript'>tableCheck();</script>\n","<input type='hidden' name='token' value='$T'>\n","</form>\n";}}page_footer("db");}if(isset($_GET["status"]))$_GET["variables"]=$_GET["status"];if(isset($_GET["import"]))$_GET["sql"]=$_GET["import"];if(!(DB!=""?$g->select_db(DB):isset($_GET["sql"])||isset($_GET["dump"])||isset($_GET["database"])||isset($_GET["processlist"])||isset($_GET["privileges"])||isset($_GET["user"])||isset($_GET["variables"])||$_GET["script"]=="connect"||$_GET["script"]=="kill")){if(DB!=""||$_GET["refresh"]){restart_session();set_session("dbs",null);}connect_error();exit;}$Zd="RESTRICT|NO ACTION|CASCADE|SET NULL|SET DEFAULT";class
3976TmpFile{var$handler;var$size;function
3977TmpFile(){$this->handler=tmpfile();}function
3978write($gb){$this->size+=strlen($gb);fwrite($this->handler,$gb);}function
3979send(){fseek($this->handler,0);fpassthru($this->handler);fclose($this->handler);}}$Vb="'(?:''|[^'\\\\]|\\\\.)*'";$Pc="IN|OUT|INOUT";if(isset($_GET["select"])&&($_POST["edit"]||$_POST["clone"])&&!$_POST["save"])$_GET["edit"]=$_GET["select"];if(isset($_GET["callf"]))$_GET["call"]=$_GET["callf"];if(isset($_GET["function"]))$_GET["procedure"]=$_GET["function"];if(isset($_GET["download"])){$b=$_GET["download"];$o=fields($b);header("Content-Type: application/octet-stream");header("Content-Disposition: attachment; filename=".friendly_url("$b-".implode("_",$_GET["where"])).".".friendly_url($_GET["field"]));$N=array(idf_escape($_GET["field"]));$J=$l->select($b,$N,array(where($_GET,$o)),$N);$L=($J?$J->fetch_row():array());echo$L[0];exit;}elseif(isset($_GET["table"])){$b=$_GET["table"];$o=fields($b);if(!$o)$m=error();$R=table_status1($b,true);page_header(($o&&is_view($R)?lang(112):lang(113)).": ".h($b),$m);$c->selectLinks($R);$bb=$R["Comment"];if($bb!="")echo"<p>".lang(91).": ".h($bb)."\n";if($o){echo"<table cellspacing='0'>\n","<thead><tr><th>".lang(114)."<td>".lang(87).(support("comment")?"<td>".lang(91):"")."</thead>\n";foreach($o
3980as$n){echo"<tr".odd()."><th>".h($n["field"]),"<td><span title='".h($n["collation"])."'>".h($n["full_type"])."</span>",($n["null"]?" <i>NULL</i>":""),($n["auto_increment"]?" <i>".lang(52)."</i>":""),(isset($n["default"])?" <span title='".lang(90)."'>[<b>".h($n["default"])."</b>]</span>":""),(support("comment")?"<td>".nbsp($n["comment"]):""),"\n";}echo"</table>\n";}if(!is_view($R)){if(support("indexes")){echo"<h3 id='indexes'>".lang(115)."</h3>\n";$x=indexes($b);if($x){echo"<table cellspacing='0'>\n";foreach($x
3981as$F=>$w){ksort($w["columns"]);$Me=array();foreach($w["columns"]as$z=>$X)$Me[]="<i>".h($X)."</i>".($w["lengths"][$z]?"(".$w["lengths"][$z].")":"").($w["descs"][$z]?" DESC":"");echo"<tr title='".h($F)."'><th>$w[type]<td>".implode(", ",$Me)."\n";}echo"</table>\n";}echo'<p class="links"><a href="'.h(ME).'indexes='.urlencode($b).'">'.lang(116)."</a>\n";}if(fk_support($R)){echo"<h3 id='foreign-keys'>".lang(81)."</h3>\n";$q=foreign_keys($b);if($q){echo"<table cellspacing='0'>\n","<thead><tr><th>".lang(117)."<td>".lang(118)."<td>".lang(84)."<td>".lang(83)."<td> </thead>\n";foreach($q
3982as$F=>$p){echo"<tr title='".h($F)."'>","<th><i>".implode("</i>, <i>",array_map('h',$p["source"]))."</i>","<td><a href='".h($p["db"]!=""?preg_replace('~db=[^&]*~',"db=".urlencode($p["db"]),ME):($p["ns"]!=""?preg_replace('~ns=[^&]*~',"ns=".urlencode($p["ns"]),ME):ME))."table=".urlencode($p["table"])."'>".($p["db"]!=""?"<b>".h($p["db"])."</b>.":"").($p["ns"]!=""?"<b>".h($p["ns"])."</b>.":"").h($p["table"])."</a>","(<i>".implode("</i>, <i>",array_map('h',$p["target"]))."</i>)","<td>".nbsp($p["on_delete"])."\n","<td>".nbsp($p["on_update"])."\n",'<td><a href="'.h(ME.'foreign='.urlencode($b).'&name='.urlencode($F)).'">'.lang(119).'</a>';}echo"</table>\n";}echo'<p class="links"><a href="'.h(ME).'foreign='.urlencode($b).'">'.lang(120)."</a>\n";}}if(support(is_view($R)?"view_trigger":"trigger")){echo"<h3 id='triggers'>".lang(121)."</h3>\n";$tg=triggers($b);if($tg){echo"<table cellspacing='0'>\n";foreach($tg
3983as$z=>$X)echo"<tr valign='top'><td>".h($X[0])."<td>".h($X[1])."<th>".h($z)."<td><a href='".h(ME.'trigger='.urlencode($b).'&name='.urlencode($z))."'>".lang(119)."</a>\n";echo"</table>\n";}echo'<p class="links"><a href="'.h(ME).'trigger='.urlencode($b).'">'.lang(122)."</a>\n";}}elseif(isset($_GET["schema"])){page_header(lang(58),"",array(),h(DB.($_GET["ns"]?".$_GET[ns]":"")));$Tf=array();$Uf=array();$da=($_GET["schema"]?$_GET["schema"]:$_COOKIE["adminer_schema-".str_replace(".","_",DB)]);preg_match_all('~([^:]+):([-0-9.]+)x([-0-9.]+)(_|$)~',$da,$vd,PREG_SET_ORDER);foreach($vd
3984as$v=>$C){$Tf[$C[1]]=array($C[2],$C[3]);$Uf[]="\n\t'".js_escape($C[1])."': [ $C[2], $C[3] ]";}$ng=0;$Ca=-1;$rf=array();$cf=array();$md=array();foreach(table_status('',true)as$Q=>$R){if(is_view($R))continue;$Fe=0;$rf[$Q]["fields"]=array();foreach(fields($Q)as$F=>$n){$Fe+=1.25;$n["pos"]=$Fe;$rf[$Q]["fields"][$F]=$n;}$rf[$Q]["pos"]=($Tf[$Q]?$Tf[$Q]:array($ng,0));foreach($c->foreignKeys($Q)as$X){if(!$X["db"]){$kd=$Ca;if($Tf[$Q][1]||$Tf[$X["table"]][1])$kd=min(floatval($Tf[$Q][1]),floatval($Tf[$X["table"]][1]))-1;else$Ca-=.1;while($md[(string)$kd])$kd-=.0001;$rf[$Q]["references"][$X["table"]][(string)$kd]=array($X["source"],$X["target"]);$cf[$X["table"]][$Q][(string)$kd]=$X["target"];$md[(string)$kd]=true;}}$ng=max($ng,$rf[$Q]["pos"][0]+2.5+$Fe);}echo'<div id="schema" style="height: ',$ng,'em;" onselectstart="return false;">
3985<script type="text/javascript">
3986var tablePos = {',implode(",",$Uf)."\n",'};
3987var em = document.getElementById(\'schema\').offsetHeight / ',$ng,';
3988document.onmousemove = schemaMousemove;
3989document.onmouseup = function (ev) {
3990schemaMouseup(ev, \'',js_escape(DB),'\');
3991</script>
3992';foreach($rf
3993as$F=>$Q){echo"<div class='table' style='top: ".$Q["pos"][0]."em; left: ".$Q["pos"][1]."em;' onmousedown='schemaMousedown(this, event);'>",'<a href="'.h(ME).'table='.urlencode($F).'"><b>'.h($F)."</b></a>";foreach($Q["fields"]as$n){$X='<span'.type_class($n["type"]).' title="'.h($n["full_type"].($n["null"]?" NULL":'')).'">'.h($n["field"]).'</span>';echo"<br>".($n["primary"]?"<i>$X</i>":$X);}foreach((array)$Q["references"]as$Zf=>$df){foreach($df
3994as$kd=>$Ze){$ld=$kd-$Tf[$F][1];$v=0;foreach($Ze[0]as$Cf)echo"\n<div class='references' title='".h($Zf)."' id='refs$kd-".($v++)."' style='left: $ld"."em; top: ".$Q["fields"][$Cf]["pos"]."em; padding-top: .5em;'><div style='border-top: 1px solid Gray; width: ".(-$ld)."em;'></div></div>";}}foreach((array)$cf[$F]as$Zf=>$df){foreach($df
3995as$kd=>$e){$ld=$kd-$Tf[$F][1];$v=0;foreach($e
3996as$Yf)echo"\n<div class='references' title='".h($Zf)."' id='refd$kd-".($v++)."' style='left: $ld"."em; top: ".$Q["fields"][$Yf]["pos"]."em; height: 1.25em; background: url(".h(preg_replace("~\\?.*~","",ME))."?file=arrow.gif) no-repeat right center;&version=4.2.1&driver=mysql'><div style='height: .5em; border-bottom: 1px solid Gray; width: ".(-$ld)."em;'></div></div>";}}echo"\n</div>\n";}foreach($rf
3997as$F=>$Q){foreach((array)$Q["references"]as$Zf=>$df){foreach($df
3998as$kd=>$Ze){$Gd=$ng;$zd=-10;foreach($Ze[0]as$z=>$Cf){$Ge=$Q["pos"][0]+$Q["fields"][$Cf]["pos"];$He=$rf[$Zf]["pos"][0]+$rf[$Zf]["fields"][$Ze[1][$z]]["pos"];$Gd=min($Gd,$Ge,$He);$zd=max($zd,$Ge,$He);}echo"<div class='references' id='refl$kd' style='left: $kd"."em; top: $Gd"."em; padding: .5em 0;'><div style='border-right: 1px solid Gray; margin-top: 1px; height: ".($zd-$Gd)."em;'></div></div>\n";}}}echo'</div>
3999<p class="links"><a href="',h(ME."schema=".urlencode($da)),'" id="schema-link">',lang(123),'</a>
4000';}elseif(isset($_GET["dump"])){$b=$_GET["dump"];if($_POST&&!$m){$jb="";foreach(array("output","format","db_style","routines","events","table_style","auto_increment","triggers","data_style")as$z)$jb.="&$z=".urlencode($_POST[$z]);cookie("adminer_export",substr($jb,1));$S=array_flip((array)$_POST["tables"])+array_flip((array)$_POST["data"]);$gc=dump_headers((count($S)==1?key($S):DB),(DB==""||count($S)>1));$Xc=preg_match('~sql~',$_POST["format"]);if($Xc){echo"-- Adminer $fa ".$Eb[DRIVER]." dump\n\n";if($y=="sql"){echo"SET NAMES utf8;
4001SET time_zone = '+00:00';
4002".($_POST["data_style"]?"SET foreign_key_checks = 0;
4003SET sql_mode = 'NO_AUTO_VALUE_ON_ZERO';
4004":"")."
4005";$g->query("SET time_zone = '+00:00';");}}$Lf=$_POST["db_style"];$j=array(DB);if(DB==""){$j=$_POST["databases"];if(is_string($j))$j=explode("\n",rtrim(str_replace("\r","",$j),"\n"));}foreach((array)$j
4006as$k){$c->dumpDatabase($k);if($g->select_db($k)){if($Xc&&preg_match('~CREATE~',$Lf)&&($i=$g->result("SHOW CREATE DATABASE ".idf_escape($k),1))){set_utf8mb4($i);if($Lf=="DROP+CREATE")echo"DROP DATABASE IF EXISTS ".idf_escape($k).";\n";echo"$i;\n";}if($Xc){if($Lf)echo
4007use_sql($k).";\n\n";$pe="";if($_POST["routines"]){foreach(array("FUNCTION","PROCEDURE")as$mf){foreach(get_rows("SHOW $mf STATUS WHERE Db = ".q($k),null,"-- ")as$L){$i=remove_definer($g->result("SHOW CREATE $mf ".idf_escape($L["Name"]),2));set_utf8mb4($i);$pe.=($Lf!='DROP+CREATE'?"DROP $mf IF EXISTS ".idf_escape($L["Name"]).";;\n":"")."$i;;\n\n";}}}if($_POST["events"]){foreach(get_rows("SHOW EVENTS",null,"-- ")as$L){$i=remove_definer($g->result("SHOW CREATE EVENT ".idf_escape($L["Name"]),3));set_utf8mb4($i);$pe.=($Lf!='DROP+CREATE'?"DROP EVENT IF EXISTS ".idf_escape($L["Name"]).";;\n":"")."$i;;\n\n";}}if($pe)echo"DELIMITER ;;\n\n$pe"."DELIMITER ;\n\n";}if($_POST["table_style"]||$_POST["data_style"]){$Og=array();foreach(table_status('',true)as$F=>$R){$Q=(DB==""||in_array($F,(array)$_POST["tables"]));$ob=(DB==""||in_array($F,(array)$_POST["data"]));if($Q||$ob){if($gc=="tar"){$lg=new
4008TmpFile;ob_start(array($lg,'write'),1e5);}$c->dumpTable($F,($Q?$_POST["table_style"]:""),(is_view($R)?2:0));if(is_view($R))$Og[]=$F;elseif($ob){$o=fields($F);$c->dumpData($F,$_POST["data_style"],"SELECT *".convert_fields($o,$o)." FROM ".table($F));}if($Xc&&$_POST["triggers"]&&$Q&&($tg=trigger_sql($F,$_POST["table_style"])))echo"\nDELIMITER ;;\n$tg\nDELIMITER ;\n";if($gc=="tar"){ob_end_flush();tar_file((DB!=""?"":"$k/")."$F.csv",$lg);}elseif($Xc)echo"\n";}}foreach($Og
4009as$Ng)$c->dumpTable($Ng,$_POST["table_style"],1);if($gc=="tar")echo
4010pack("x512");}}}if($Xc)echo"-- ".$g->result("SELECT NOW()")."\n";exit;}page_header(lang(61),$m,($_GET["export"]!=""?array("table"=>$_GET["export"]):array()),h(DB));echo'
4011<form action="" method="post">
4012<table cellspacing="0">
4013';$sb=array('','USE','DROP+CREATE','CREATE');$Vf=array('','DROP+CREATE','CREATE');$pb=array('','TRUNCATE+INSERT','INSERT');if($y=="sql")$pb[]='INSERT+UPDATE';parse_str($_COOKIE["adminer_export"],$L);if(!$L)$L=array("output"=>"text","format"=>"sql","db_style"=>(DB!=""?"":"CREATE"),"table_style"=>"DROP+CREATE","data_style"=>"INSERT");if(!isset($L["events"])){$L["routines"]=$L["events"]=($_GET["dump"]=="");$L["triggers"]=$L["table_style"];}echo"<tr><th>".lang(124)."<td>".html_select("output",$c->dumpOutput(),$L["output"],0)."\n";echo"<tr><th>".lang(125)."<td>".html_select("format",$c->dumpFormat(),$L["format"],0)."\n";echo($y=="sqlite"?"":"<tr><th>".lang(31)."<td>".html_select('db_style',$sb,$L["db_style"]).(support("routine")?checkbox("routines",1,$L["routines"],lang(126)):"").(support("event")?checkbox("events",1,$L["events"],lang(127)):"")),"<tr><th>".lang(107)."<td>".html_select('table_style',$Vf,$L["table_style"]).checkbox("auto_increment",1,$L["auto_increment"],lang(52)).(support("trigger")?checkbox("triggers",1,$L["triggers"],lang(121)):""),"<tr><th>".lang(128)."<td>".html_select('data_style',$pb,$L["data_style"]),'</table>
4014<p><input type="submit" value="',lang(61),'">
4015<input type="hidden" name="token" value="',$T,'">
4016<table cellspacing="0">
4017';$Ke=array();if(DB!=""){$Na=($b!=""?"":" checked");echo"<thead><tr>","<th style='text-align: left;'><label class='block'><input type='checkbox' id='check-tables'$Na onclick='formCheck(this, /^tables\\[/);'>".lang(107)."</label>","<th style='text-align: right;'><label class='block'>".lang(128)."<input type='checkbox' id='check-data'$Na onclick='formCheck(this, /^data\\[/);'></label>","</thead>\n";$Og="";$Wf=tables_list();foreach($Wf
4018as$F=>$U){$Je=preg_replace('~_.*~','',$F);$Na=($b==""||$b==(substr($b,-1)=="%"?"$Je%":$F));$Me="<tr><td>".checkbox("tables[]",$F,$Na,$F,"checkboxClick(event, this); formUncheck('check-tables');","block");if($U!==null&&!preg_match('~table~i',$U))$Og.="$Me\n";else
4019echo"$Me<td align='right'><label class='block'><span id='Rows-".h($F)."'></span>".checkbox("data[]",$F,$Na,"","checkboxClick(event, this); formUncheck('check-data');")."</label>\n";$Ke[$Je]++;}echo$Og;if($Wf)echo"<script type='text/javascript'>ajaxSetHtml('".js_escape(ME)."script=db');</script>\n";}else{echo"<thead><tr><th style='text-align: left;'><label class='block'><input type='checkbox' id='check-databases'".($b==""?" checked":"")." onclick='formCheck(this, /^databases\\[/);'>".lang(31)."</label></thead>\n";$j=$c->databases();if($j){foreach($j
4020as$k){if(!information_schema($k)){$Je=preg_replace('~_.*~','',$k);echo"<tr><td>".checkbox("databases[]",$k,$b==""||$b=="$Je%",$k,"formUncheck('check-databases');","block")."\n";$Ke[$Je]++;}}}else
4021echo"<tr><td><textarea name='databases' rows='10' cols='20'></textarea>";}echo'</table>
4022</form>
4023';$pc=true;foreach($Ke
4024as$z=>$X){if($z!=""&&$X>1){echo($pc?"<p>":" ")."<a href='".h(ME)."dump=".urlencode("$z%")."'>".h($z)."</a>";$pc=false;}}}elseif(isset($_GET["privileges"])){page_header(lang(59));$J=$g->query("SELECT User, Host FROM mysql.".(DB==""?"user":"db WHERE ".q(DB)." LIKE Db")." ORDER BY Host, User");$t=$J;if(!$J)$J=$g->query("SELECT SUBSTRING_INDEX(CURRENT_USER, '@', 1) AS User, SUBSTRING_INDEX(CURRENT_USER, '@', -1) AS Host");echo"<form action=''><p>\n";hidden_fields_get();echo"<input type='hidden' name='db' value='".h(DB)."'>\n",($t?"":"<input type='hidden' name='grant' value=''>\n"),"<table cellspacing='0'>\n","<thead><tr><th>".lang(29)."<th>".lang(28)."<th> </thead>\n";while($L=$J->fetch_assoc())echo'<tr'.odd().'><td>'.h($L["User"])."<td>".h($L["Host"]).'<td><a href="'.h(ME.'user='.urlencode($L["User"]).'&host='.urlencode($L["Host"])).'">'.lang(10)."</a>\n";if(!$t||DB!="")echo"<tr".odd()."><td><input name='user' autocapitalize='off'><td><input name='host' value='localhost' autocapitalize='off'><td><input type='submit' value='".lang(10)."'>\n";echo"</table>\n","</form>\n",'<p class="links"><a href="'.h(ME).'user=">'.lang(129)."</a>";}elseif(isset($_GET["sql"])){if(!$m&&$_POST["export"]){dump_headers("sql");$c->dumpTable("","");$c->dumpData("","table",$_POST["query"]);exit;}restart_session();$Fc=&get_session("queries");$Ec=&$Fc[DB];if(!$m&&$_POST["clear"]){$Ec=array();redirect(remove_from_uri("history"));}page_header((isset($_GET["import"])?lang(60):lang(51)),$m);if(!$m&&$_POST){$r=false;if(!isset($_GET["import"]))$I=$_POST["query"];elseif($_POST["webfile"]){$r=@fopen((file_exists("adminer.sql")?"adminer.sql":"compress.zlib://adminer.sql.gz"),"rb");$I=($r?fread($r,1e6):false);}else$I=get_file("sql_file",true);if(is_string($I)){if(function_exists('memory_get_usage'))@ini_set("memory_limit",max(ini_bytes("memory_limit"),2*strlen($I)+memory_get_usage()+8e6));if($I!=""&&strlen($I)<1e6){$H=$I.(preg_match("~;[ \t\r\n]*\$~",$I)?"":";");if(!$Ec||reset(end($Ec))!=$H){restart_session();$Ec[]=array($H,time());set_session("queries",$Fc);stop_session();}}$Df="(?:\\s|/\\*.*\\*/|(?:#|-- )[^\n]*\n|--\r?\n)";$wb=";";$Sd=0;$Sb=true;$h=connect();if(is_object($h)&&DB!="")$h->select_db(DB);$ab=0;$Xb=array();$rd=0;$ue='[\'"'.($y=="sql"?'`#':($y=="sqlite"?'`[':($y=="mssql"?'[':''))).']|/\\*|-- |$'.($y=="pgsql"?'|\\$[^$]*\\$':'');$og=microtime(true);parse_str($_COOKIE["adminer_export"],$la);$Jb=$c->dumpFormat();unset($Jb["sql"]);while($I!=""){if(!$Sd&&preg_match("~^$Df*DELIMITER\\s+(\\S+)~i",$I,$C)){$wb=$C[1];$I=substr($I,strlen($C[0]));}else{preg_match('('.preg_quote($wb)."\\s*|$ue)",$I,$C,PREG_OFFSET_CAPTURE,$Sd);list($uc,$Fe)=$C[0];if(!$uc&&$r&&!feof($r))$I.=fread($r,1e5);else{if(!$uc&&rtrim($I)=="")break;$Sd=$Fe+strlen($uc);if($uc&&rtrim($uc)!=$wb){while(preg_match('('.($uc=='/*'?'\\*/':($uc=='['?']':(preg_match('~^-- |^#~',$uc)?"\n":preg_quote($uc)."|\\\\."))).'|$)s',$I,$C,PREG_OFFSET_CAPTURE,$Sd)){$pf=$C[0][0];if(!$pf&&$r&&!feof($r))$I.=fread($r,1e5);else{$Sd=$C[0][1]+strlen($pf);if($pf[0]!="\\")break;}}}else{$Sb=false;$H=substr($I,0,$Fe);$ab++;$Me="<pre id='sql-$ab'><code class='jush-$y'>".shorten_utf8(trim($H),1000)."</code></pre>\n";if(!$_POST["only_errors"]){echo$Me;ob_flush();flush();}$Ff=microtime(true);if($g->multi_query($H)&&is_object($h)&&preg_match("~^$Df*USE\\b~isU",$H))$h->query($H);do{$J=$g->store_result();$eg=" <span class='time'>(".format_time($Ff).")</span>".(strlen($H)<1000?" <a href='".h(ME)."sql=".urlencode(trim($H))."'>".lang(10)."</a>":"");if($g->error){echo($_POST["only_errors"]?$Me:""),"<p class='error'>".lang(130).($g->errno?" ($g->errno)":"").": ".error()."\n";$Xb[]=" <a href='#sql-$ab'>$ab</a>";if($_POST["error_stops"])break
40252;}elseif(is_object($J)){$_=$_POST["limit"];$ke=select($J,$h,array(),$_);if(!$_POST["only_errors"]){echo"<form action='' method='post'>\n";$Pd=$J->num_rows;echo"<p>".($Pd?($_&&$Pd>$_?lang(131,$_):"").lang(132,$Pd):""),$eg;$Ic="export-$ab";$fc=", <a href='#$Ic' onclick=\"return !toggle('$Ic');\">".lang(61)."</a><span id='$Ic' class='hidden'>: ".html_select("output",$c->dumpOutput(),$la["output"])." ".html_select("format",$Jb,$la["format"])."<input type='hidden' name='query' value='".h($H)."'>"." <input type='submit' name='export' value='".lang(61)."'><input type='hidden' name='token' value='$T'></span>\n";if($h&&preg_match("~^($Df|\\()*SELECT\\b~isU",$H)&&($ec=explain($h,$H))){$Ic="explain-$ab";echo", <a href='#$Ic' onclick=\"return !toggle('$Ic');\">EXPLAIN</a>$fc","<div id='$Ic' class='hidden'>\n";select($ec,$h,$ke);echo"</div>\n";}else
4026echo$fc;echo"</form>\n";}}else{if(preg_match("~^$Df*(CREATE|DROP|ALTER)$Df+(DATABASE|SCHEMA)\\b~isU",$H)){restart_session();set_session("dbs",null);stop_session();}if(!$_POST["only_errors"])echo"<p class='message' title='".h($g->info)."'>".lang(133,$g->affected_rows)."$eg\n";}$Ff=microtime(true);}while($g->next_result());$rd+=substr_count($H.$uc,"\n");$I=substr($I,$Sd);$Sd=0;}}}}if($Sb)echo"<p class='message'>".lang(134)."\n";elseif($_POST["only_errors"]){echo"<p class='message'>".lang(135,$ab-count($Xb))," <span class='time'>(".format_time($og).")</span>\n";}elseif($Xb&&$ab>1)echo"<p class='error'>".lang(130).": ".implode("",$Xb)."\n";}else
4027echo"<p class='error'>".upload_error($I)."\n";}echo'
4028<form action="" method="post" enctype="multipart/form-data" id="form">
4029';$cc="<input type='submit' value='".lang(136)."' title='Ctrl+Enter'>";if(!isset($_GET["import"])){$H=$_GET["sql"];if($_POST)$H=$_POST["query"];elseif($_GET["history"]=="all")$H=$Ec;elseif($_GET["history"]!="")$H=$Ec[$_GET["history"]][0];echo"<p>";textarea("query",$H,20);echo($_POST?"":"<script type='text/javascript'>focus(document.getElementsByTagName('textarea')[0]);</script>\n"),"<p>$cc\n",lang(137).": <input type='number' name='limit' class='size' value='".h($_POST?$_POST["limit"]:$_GET["limit"])."'>\n";}else{echo"<fieldset><legend>".lang(138)."</legend><div>",(ini_bool("file_uploads")?"SQL (< ".ini_get("upload_max_filesize")."B): <input type='file' name='sql_file[]' multiple>\n$cc":lang(139)),"</div></fieldset>\n","<fieldset><legend>".lang(140)."</legend><div>",lang(141,"<code>adminer.sql".(extension_loaded("zlib")?"[.gz]":"")."</code>"),' <input type="submit" name="webfile" value="'.lang(142).'">',"</div></fieldset>\n","<p>";}echo
4030checkbox("error_stops",1,($_POST?$_POST["error_stops"]:isset($_GET["import"])),lang(143))."\n",checkbox("only_errors",1,($_POST?$_POST["only_errors"]:isset($_GET["import"])),lang(144))."\n","<input type='hidden' name='token' value='$T'>\n";if(!isset($_GET["import"])&&$Ec){print_fieldset("history",lang(145),$_GET["history"]!="");for($X=end($Ec);$X;$X=prev($Ec)){$z=key($Ec);list($H,$eg,$Nb)=$X;echo'<a href="'.h(ME."sql=&history=$z").'">'.lang(10)."</a>"." <span class='time' title='".@date('Y-m-d',$eg)."'>".@date("H:i:s",$eg)."</span>"." <code class='jush-$y'>".shorten_utf8(ltrim(str_replace("\n"," ",str_replace("\r","",preg_replace('~^(#|-- ).*~m','',$H)))),80,"</code>").($Nb?" <span class='time'>($Nb)</span>":"")."<br>\n";}echo"<input type='submit' name='clear' value='".lang(146)."'>\n","<a href='".h(ME."sql=&history=all")."'>".lang(147)."</a>\n","</div></fieldset>\n";}echo'</form>
4031';}elseif(isset($_GET["edit"])){$b=$_GET["edit"];$o=fields($b);$Z=(isset($_GET["select"])?(count($_POST["check"])==1?where_check($_POST["check"][0],$o):""):where($_GET,$o));$Dg=(isset($_GET["select"])?$_POST["edit"]:$Z);foreach($o
4032as$F=>$n){if(!isset($n["privileges"][$Dg?"update":"insert"])||$c->fieldName($n)=="")unset($o[$F]);}if($_POST&&!$m&&!isset($_GET["select"])){$B=$_POST["referer"];if($_POST["insert"])$B=($Dg?null:$_SERVER["REQUEST_URI"]);elseif(!preg_match('~^.+&select=.+$~',$B))$B=ME."select=".urlencode($b);$x=indexes($b);$zg=unique_array($_GET["where"],$x);$Ve="\nWHERE $Z";if(isset($_POST["delete"]))queries_redirect($B,lang(148),$l->delete($b,$Ve,!$zg));else{$P=array();foreach($o
4033as$F=>$n){$X=process_input($n);if($X!==false&&$X!==null)$P[idf_escape($F)]=$X;}if($Dg){if(!$P)redirect($B);queries_redirect($B,lang(149),$l->update($b,$P,$Ve,!$zg));if(is_ajax()){page_headers();page_messages($m);exit;}}else{$J=$l->insert($b,$P);$jd=($J?last_id():0);queries_redirect($B,lang(150,($jd?" $jd":"")),$J);}}}$L=null;if($_POST["save"])$L=(array)$_POST["fields"];elseif($Z){$N=array();foreach($o
4034as$F=>$n){if(isset($n["privileges"]["select"])){$ua=convert_field($n);if($_POST["clone"]&&$n["auto_increment"])$ua="''";if($y=="sql"&&preg_match("~enum|set~",$n["type"]))$ua="1*".idf_escape($F);$N[]=($ua?"$ua AS ":"").idf_escape($F);}}$L=array();if(!support("table"))$N=array("*");if($N){$J=$l->select($b,$N,array($Z),$N,array(),(isset($_GET["select"])?2:1));$L=$J->fetch_assoc();if(!$L)$L=false;if(isset($_GET["select"])&&(!$L||$J->fetch_assoc()))$L=null;}}if(!support("table")&&!$o){if(!$Z){$J=$l->select($b,array("*"),$Z,array("*"));$L=($J?$J->fetch_assoc():false);if(!$L)$L=array($l->primary=>"");}if($L){foreach($L
4035as$z=>$X){if(!$Z)$L[$z]=null;$o[$z]=array("field"=>$z,"null"=>($z!=$l->primary),"auto_increment"=>($z==$l->primary));}}}edit_form($b,$o,$L,$Dg);}elseif(isset($_GET["create"])){$b=$_GET["create"];$ve=array();foreach(array('HASH','LINEAR HASH','KEY','LINEAR KEY','RANGE','LIST')as$z)$ve[$z]=$z;$bf=referencable_primary($b);$q=array();foreach($bf
4036as$Sf=>$n)$q[str_replace("`","``",$Sf)."`".str_replace("`","``",$n["field"])]=$Sf;$ne=array();$R=array();if($b!=""){$ne=fields($b);$R=table_status($b);if(!$R)$m=lang(9);}$L=$_POST;$L["fields"]=(array)$L["fields"];if($L["auto_increment_col"])$L["fields"][$L["auto_increment_col"]]["auto_increment"]=true;if($_POST&&!process_fields($L["fields"])&&!$m){if($_POST["drop"])queries_redirect(substr(ME,0,-1),lang(151),drop_tables(array($b)));else{$o=array();$ra=array();$Gg=false;$rc=array();ksort($L["fields"]);$me=reset($ne);$pa=" FIRST";foreach($L["fields"]as$z=>$n){$p=$q[$n["type"]];$ug=($p!==null?$bf[$p]:$n);if($n["field"]!=""){if(!$n["has_default"])$n["default"]=null;if($z==$L["auto_increment_col"])$n["auto_increment"]=true;$Re=process_field($n,$ug);$ra[]=array($n["orig"],$Re,$pa);if($Re!=process_field($me,$me)){$o[]=array($n["orig"],$Re,$pa);if($n["orig"]!=""||$pa)$Gg=true;}if($p!==null)$rc[idf_escape($n["field"])]=($b!=""&&$y!="sqlite"?"ADD":" ").format_foreign_key(array('table'=>$q[$n["type"]],'source'=>array($n["field"]),'target'=>array($ug["field"]),'on_delete'=>$n["on_delete"],));$pa=" AFTER ".idf_escape($n["field"]);}elseif($n["orig"]!=""){$Gg=true;$o[]=array($n["orig"]);}if($n["orig"]!=""){$me=next($ne);if(!$me)$pa="";}}$xe="";if($ve[$L["partition_by"]]){$ye=array();if($L["partition_by"]=='RANGE'||$L["partition_by"]=='LIST'){foreach(array_filter($L["partition_names"])as$z=>$X){$Y=$L["partition_values"][$z];$ye[]="\n PARTITION ".idf_escape($X)." VALUES ".($L["partition_by"]=='RANGE'?"LESS THAN":"IN").($Y!=""?" ($Y)":" MAXVALUE");}}$xe.="\nPARTITION BY $L[partition_by]($L[partition])".($ye?" (".implode(",",$ye)."\n)":($L["partitions"]?" PARTITIONS ".(+$L["partitions"]):""));}elseif(support("partitioning")&&preg_match("~partitioned~",$R["Create_options"]))$xe.="\nREMOVE PARTITIONING";$D=lang(152);if($b==""){cookie("adminer_engine",$L["Engine"]);$D=lang(153);}$F=trim($L["name"]);queries_redirect(ME.(support("table")?"table=":"select=").urlencode($F),$D,alter_table($b,$F,($y=="sqlite"&&($Gg||$rc)?$ra:$o),$rc,($L["Comment"]!=$R["Comment"]?$L["Comment"]:null),($L["Engine"]&&$L["Engine"]!=$R["Engine"]?$L["Engine"]:""),($L["Collation"]&&$L["Collation"]!=$R["Collation"]?$L["Collation"]:""),($L["Auto_increment"]!=""?number($L["Auto_increment"]):""),$xe));}}page_header(($b!=""?lang(37):lang(62)),$m,array("table"=>$b),h($b));if(!$_POST){$L=array("Engine"=>$_COOKIE["adminer_engine"],"fields"=>array(array("field"=>"","type"=>(isset($wg["int"])?"int":(isset($wg["integer"])?"integer":"")))),"partition_names"=>array(""),);if($b!=""){$L=$R;$L["name"]=$b;$L["fields"]=array();if(!$_GET["auto_increment"])$L["Auto_increment"]="";foreach($ne
4037as$n){$n["has_default"]=isset($n["default"]);$L["fields"][]=$n;}if(support("partitioning")){$wc="FROM information_schema.PARTITIONS WHERE TABLE_SCHEMA = ".q(DB)." AND TABLE_NAME = ".q($b);$J=$g->query("SELECT PARTITION_METHOD, PARTITION_ORDINAL_POSITION, PARTITION_EXPRESSION $wc ORDER BY PARTITION_ORDINAL_POSITION DESC LIMIT 1");list($L["partition_by"],$L["partitions"],$L["partition"])=$J->fetch_row();$ye=get_key_vals("SELECT PARTITION_NAME, PARTITION_DESCRIPTION $wc AND PARTITION_NAME != '' ORDER BY PARTITION_ORDINAL_POSITION");$ye[""]="";$L["partition_names"]=array_keys($ye);$L["partition_values"]=array_values($ye);}}}$Xa=collations();$Ub=engines();foreach($Ub
4038as$Tb){if(!strcasecmp($Tb,$L["Engine"])){$L["Engine"]=$Tb;break;}}echo'
4039<form action="" method="post" id="form">
4040';if(support("columns")||$b==""){echo
4041lang(154),': <input name="name" maxlength="64" value="',h($L["name"]),'" autocapitalize="off">
4042';if($b==""&&!$_POST){?><script type='text/javascript'>focus(document.getElementById('form')['name']);</script><?php }echo($Ub?"<select name='Engine' onchange='helpClose();'".on_help("getTarget(event).value",1).">".optionlist(array(""=>"(".lang(155).")")+$Ub,$L["Engine"])."</select>":""),' ',($Xa&&!preg_match("~sqlite|mssql~",$y)?html_select("Collation",array(""=>"(".lang(82).")")+$Xa,$L["Collation"]):""),' <input type="submit" value="',lang(14),'">
4043';}echo'
4044';if(support("columns")){echo'<table cellspacing="0" id="edit-fields" class="nowrap">
4045';$cb=($_POST?$_POST["comments"]:$L["Comment"]!="");if(!$_POST&&!$cb){foreach($L["fields"]as$n){if($n["comment"]!=""){$cb=true;break;}}}edit_fields($L["fields"],$Xa,"TABLE",$q,$cb);echo'</table>
4046',lang(52),': <input type="number" name="Auto_increment" size="6" value="',h($L["Auto_increment"]),'">
4047',checkbox("defaults",1,true,lang(156),"columnShow(this.checked, 5)","jsonly");if(!$_POST["defaults"]){echo'<script type="text/javascript">editingHideDefaults()</script>';}echo(support("comment")?"<label><input type='checkbox' name='comments' value='1' class='jsonly' onclick=\"columnShow(this.checked, 6); toggle('Comment'); if (this.checked) this.form['Comment'].focus();\"".($cb?" checked":"").">".lang(91)."</label>".' <input name="Comment" id="Comment" value="'.h($L["Comment"]).'" maxlength="'.($g->server_info>=5.5?2048:60).'"'.($cb?'':' class="hidden"').'>':''),'<p>
4048<input type="submit" value="',lang(14),'">
4049';}echo'
4050';if($b!=""){echo'<input type="submit" name="drop" value="',lang(111),'"',confirm(),'>';}if(support("partitioning")){$we=preg_match('~RANGE|LIST~',$L["partition_by"]);print_fieldset("partition",lang(157),$L["partition_by"]);echo'<p>
4051',"<select name='partition_by' onchange='partitionByChange(this);'".on_help("getTarget(event).value.replace(/./, 'PARTITION BY \$&')",1).">".optionlist(array(""=>"")+$ve,$L["partition_by"])."</select>",'(<input name="partition" value="',h($L["partition"]),'">)
4052',lang(158),': <input type="number" name="partitions" class="size',($we||!$L["partition_by"]?" hidden":""),'" value="',h($L["partitions"]),'">
4053<table cellspacing="0" id="partition-table"',($we?"":" class='hidden'"),'>
4054<thead><tr><th>',lang(159),'<th>',lang(160),'</thead>
4055';foreach($L["partition_names"]as$z=>$X){echo'<tr>','<td><input name="partition_names[]" value="'.h($X).'"'.($z==count($L["partition_names"])-1?' onchange="partitionNameChange(this);"':'').' autocapitalize="off">','<td><input name="partition_values[]" value="'.h($L["partition_values"][$z]).'">';}echo'</table>
4056</div></fieldset>
4057';}echo'<input type="hidden" name="token" value="',$T,'">
4058</form>
4059';}elseif(isset($_GET["indexes"])){$b=$_GET["indexes"];$Nc=array("PRIMARY","UNIQUE","INDEX");$R=table_status($b,true);if(preg_match('~MyISAM|M?aria'.($g->server_info>=5.6?'|InnoDB':'').'~i',$R["Engine"]))$Nc[]="FULLTEXT";$x=indexes($b);$Le=array();if($y=="mongo"){$Le=$x["_id_"];unset($Nc[0]);unset($x["_id_"]);}$L=$_POST;if($_POST&&!$m&&!$_POST["add"]&&!$_POST["drop_col"]){$sa=array();foreach($L["indexes"]as$w){$F=$w["name"];if(in_array($w["type"],$Nc)){$e=array();$pd=array();$yb=array();$P=array();ksort($w["columns"]);foreach($w["columns"]as$z=>$d){if($d!=""){$od=$w["lengths"][$z];$xb=$w["descs"][$z];$P[]=idf_escape($d).($od?"(".(+$od).")":"").($xb?" DESC":"");$e[]=$d;$pd[]=($od?$od:null);$yb[]=$xb;}}if($e){$dc=$x[$F];if($dc){ksort($dc["columns"]);ksort($dc["lengths"]);ksort($dc["descs"]);if($w["type"]==$dc["type"]&&array_values($dc["columns"])===$e&&(!$dc["lengths"]||array_values($dc["lengths"])===$pd)&&array_values($dc["descs"])===$yb){unset($x[$F]);continue;}}$sa[]=array($w["type"],$F,$P);}}}foreach($x
4060as$F=>$dc)$sa[]=array($dc["type"],$F,"DROP");if(!$sa)redirect(ME."table=".urlencode($b));queries_redirect(ME."table=".urlencode($b),lang(161),alter_indexes($b,$sa));}page_header(lang(115),$m,array("table"=>$b),h($b));$o=array_keys(fields($b));if($_POST["add"]){foreach($L["indexes"]as$z=>$w){if($w["columns"][count($w["columns"])]!="")$L["indexes"][$z]["columns"][]="";}$w=end($L["indexes"]);if($w["type"]||array_filter($w["columns"],'strlen'))$L["indexes"][]=array("columns"=>array(1=>""));}if(!$L){foreach($x
4061as$z=>$w){$x[$z]["name"]=$z;$x[$z]["columns"][]="";}$x[]=array("columns"=>array(1=>""));$L["indexes"]=$x;}echo'
4062<form action="" method="post">
4063<table cellspacing="0" class="nowrap">
4064<thead><tr>
4065<th>',lang(162),'<th><input type="submit" style="left: -1000px; position: absolute;">',lang(163),'<th>',lang(164);?>
4066<th><noscript><input type='image' class='icon' name='add[0]' src='" . h(preg_replace("~\\?.*~", "", ME)) . "?file=plus.gif&version=4.2.1&driver=mysql' alt='+' title='<?php echo
4067lang(92),'\'></noscript>
4068</thead>
4069';if($Le){echo"<tr><td>PRIMARY<td>";foreach($Le["columns"]as$z=>$d){echo
4070select_input(" disabled",$o,$d),"<label><input disabled type='checkbox'>".lang(46)."</label> ";}echo"<td><td>\n";}$ad=1;foreach($L["indexes"]as$w){if(!$_POST["drop_col"]||$ad!=key($_POST["drop_col"])){echo"<tr><td>".html_select("indexes[$ad][type]",array(-1=>"")+$Nc,$w["type"],($ad==count($L["indexes"])?"indexesAddRow(this);":1)),"<td>";ksort($w["columns"]);$v=1;foreach($w["columns"]as$z=>$d){echo"<span>".select_input(" name='indexes[$ad][columns][$v]' onchange=\"".($v==count($w["columns"])?"indexesAddColumn":"indexesChangeColumn")."(this, '".js_escape($y=="sql"?"":$_GET["indexes"]."_")."');\"",($o?array_combine($o,$o):$o),$d),($y=="sql"||$y=="mssql"?"<input type='number' name='indexes[$ad][lengths][$v]' class='size' value='".h($w["lengths"][$z])."'>":""),($y!="sql"?checkbox("indexes[$ad][descs][$v]",1,$w["descs"][$z],lang(46)):"")," </span>";$v++;}echo"<td><input name='indexes[$ad][name]' value='".h($w["name"])."' autocapitalize='off'>\n","<td><input type='image' class='icon' name='drop_col[$ad]' src='".h(preg_replace("~\\?.*~","",ME))."?file=cross.gif&version=4.2.1&driver=mysql' alt='x' title='".lang(95)."' onclick=\"return !editingRemoveRow(this, 'indexes\$1[type]');\">\n";}$ad++;}echo'</table>
4071<input type="submit" value="',lang(14),'">
4072<input type="hidden" name="token" value="',$T,'">
4073</form>
4074';}elseif(isset($_GET["database"])){$L=$_POST;if($_POST&&!$m&&!isset($_POST["add_x"])){$F=trim($L["name"]);if($_POST["drop"]){$_GET["db"]="";queries_redirect(remove_from_uri("db|database"),lang(165),drop_databases(array(DB)));}elseif(DB!==$F){if(DB!=""){$_GET["db"]=$F;queries_redirect(preg_replace('~\bdb=[^&]*&~','',ME)."db=".urlencode($F),lang(166),rename_database($F,$L["collation"]));}else{$j=explode("\n",str_replace("\r","",$F));$Mf=true;$id="";foreach($j
4075as$k){if(count($j)==1||$k!=""){if(!create_database($k,$L["collation"]))$Mf=false;$id=$k;}}restart_session();set_session("dbs",null);queries_redirect(ME."db=".urlencode($id),lang(167),$Mf);}}else{if(!$L["collation"])redirect(substr(ME,0,-1));query_redirect("ALTER DATABASE ".idf_escape($F).(preg_match('~^[a-z0-9_]+$~i',$L["collation"])?" COLLATE $L[collation]":""),substr(ME,0,-1),lang(168));}}page_header(DB!=""?lang(55):lang(169),$m,array(),h(DB));$Xa=collations();$F=DB;if($_POST)$F=$L["name"];elseif(DB!="")$L["collation"]=db_collation(DB,$Xa);elseif($y=="sql"){foreach(get_vals("SHOW GRANTS")as$t){if(preg_match('~ ON (`(([^\\\\`]|``|\\\\.)*)%`\\.\\*)?~',$t,$C)&&$C[1]){$F=stripcslashes(idf_unescape("`$C[2]`"));break;}}}echo'
4076<form action="" method="post">
4077',($_POST["add_x"]||strpos($F,"\n")?'<textarea id="name" name="name" rows="10" cols="40">'.h($F).'</textarea><br>':'<input name="name" id="name" value="'.h($F).'" maxlength="64" autocapitalize="off">')."\n".($Xa?html_select("collation",array(""=>"(".lang(82).")")+$Xa,$L["collation"]).doc_link(array('sql'=>"charset-charsets.html",'mssql'=>"ms187963.aspx",)):"");?>
4078<script type='text/javascript'>focus(document.getElementById('name'));</script>
4079<input type="submit" value="<?php echo
4080lang(14),'">
4081';if(DB!="")echo"<input type='submit' name='drop' value='".lang(111)."'".confirm().">\n";elseif(!$_POST["add_x"]&&$_GET["db"]=="")echo"<input type='image' class='icon' name='add' src='".h(preg_replace("~\\?.*~","",ME))."?file=plus.gif&version=4.2.1&driver=mysql' alt='+' title='".lang(92)."'>\n";echo'<input type="hidden" name="token" value="',$T,'">
4082</form>
4083';}elseif(isset($_GET["call"])){$ca=$_GET["call"];page_header(lang(170).": ".h($ca),$m);$mf=routine($ca,(isset($_GET["callf"])?"FUNCTION":"PROCEDURE"));$Mc=array();$pe=array();foreach($mf["fields"]as$v=>$n){if(substr($n["inout"],-3)=="OUT")$pe[$v]="@".idf_escape($n["field"])." AS ".idf_escape($n["field"]);if(!$n["inout"]||substr($n["inout"],0,2)=="IN")$Mc[]=$v;}if(!$m&&$_POST){$Ja=array();foreach($mf["fields"]as$z=>$n){if(in_array($z,$Mc)){$X=process_input($n);if($X===false)$X="''";if(isset($pe[$z]))$g->query("SET @".idf_escape($n["field"])." = $X");}$Ja[]=(isset($pe[$z])?"@".idf_escape($n["field"]):$X);}$I=(isset($_GET["callf"])?"SELECT":"CALL")." ".idf_escape($ca)."(".implode(", ",$Ja).")";echo"<p><code class='jush-$y'>".h($I)."</code> <a href='".h(ME)."sql=".urlencode($I)."'>".lang(10)."</a>\n";if(!$g->multi_query($I))echo"<p class='error'>".error()."\n";else{$h=connect();if(is_object($h))$h->select_db(DB);do{$J=$g->store_result();if(is_object($J))select($J,$h);else
4084echo"<p class='message'>".lang(171,$g->affected_rows)."\n";}while($g->next_result());if($pe)select($g->query("SELECT ".implode(", ",$pe)));}}echo'
4085<form action="" method="post">
4086';if($Mc){echo"<table cellspacing='0'>\n";foreach($Mc
4087as$z){$n=$mf["fields"][$z];$F=$n["field"];echo"<tr><th>".$c->fieldName($n);$Y=$_POST["fields"][$F];if($Y!=""){if($n["type"]=="enum")$Y=+$Y;if($n["type"]=="set")$Y=array_sum($Y);}input($n,$Y,(string)$_POST["function"][$F]);echo"\n";}echo"</table>\n";}echo'<p>
4088<input type="submit" value="',lang(170),'">
4089<input type="hidden" name="token" value="',$T,'">
4090</form>
4091';}elseif(isset($_GET["foreign"])){$b=$_GET["foreign"];$F=$_GET["name"];$L=$_POST;if($_POST&&!$m&&!$_POST["add"]&&!$_POST["change"]&&!$_POST["change-js"]){$D=($_POST["drop"]?lang(172):($F!=""?lang(173):lang(174)));$B=ME."table=".urlencode($b);$L["source"]=array_filter($L["source"],'strlen');ksort($L["source"]);$Yf=array();foreach($L["source"]as$z=>$X)$Yf[$z]=$L["target"][$z];$L["target"]=$Yf;if($y=="sqlite")queries_redirect($B,$D,recreate_table($b,$b,array(),array(),array(" $F"=>($_POST["drop"]?"":" ".format_foreign_key($L)))));else{$sa="ALTER TABLE ".table($b);$Fb="\nDROP ".($y=="sql"?"FOREIGN KEY ":"CONSTRAINT ").idf_escape($F);if($_POST["drop"])query_redirect($sa.$Fb,$B,$D);else{query_redirect($sa.($F!=""?"$Fb,":"")."\nADD".format_foreign_key($L),$B,$D);$m=lang(175)."<br>$m";}}}page_header(lang(176),$m,array("table"=>$b),h($b));if($_POST){ksort($L["source"]);if($_POST["add"])$L["source"][]="";elseif($_POST["change"]||$_POST["change-js"])$L["target"]=array();}elseif($F!=""){$q=foreign_keys($b);$L=$q[$F];$L["source"][]="";}else{$L["table"]=$b;$L["source"]=array("");}$Cf=array_keys(fields($b));$Yf=($b===$L["table"]?$Cf:array_keys(fields($L["table"])));$af=array_keys(array_filter(table_status('',true),'fk_support'));echo'
4092<form action="" method="post">
4093';if($L["db"]==""&&$L["ns"]==""){echo
4094lang(177),':
4095',html_select("table",$af,$L["table"],"this.form['change-js'].value = '1'; this.form.submit();"),'<input type="hidden" name="change-js" value="">
4096<noscript><p><input type="submit" name="change" value="',lang(178),'"></noscript>
4097<table cellspacing="0">
4098<thead><tr><th>',lang(117),'<th>',lang(118),'</thead>
4099';$ad=0;foreach($L["source"]as$z=>$X){echo"<tr>","<td>".html_select("source[".(+$z)."]",array(-1=>"")+$Cf,$X,($ad==count($L["source"])-1?"foreignAddRow(this);":1)),"<td>".html_select("target[".(+$z)."]",$Yf,$L["target"][$z]);$ad++;}echo'</table>
4100',lang(84),': ',html_select("on_delete",array(-1=>"")+explode("|",$Zd),$L["on_delete"]),' ',lang(83),': ',html_select("on_update",array(-1=>"")+explode("|",$Zd),$L["on_update"]),doc_link(array('sql'=>"innodb-foreign-key-constraints.html",'pgsql'=>"sql-createtable.html#SQL-CREATETABLE-REFERENCES",'mssql'=>"ms174979.aspx",'oracle'=>"clauses002.htm#sthref2903",)),'<p>
4101<input type="submit" value="',lang(14),'">
4102<noscript><p><input type="submit" name="add" value="',lang(179),'"></noscript>
4103';}if($F!=""){echo'<input type="submit" name="drop" value="',lang(111),'"',confirm(),'>';}echo'<input type="hidden" name="token" value="',$T,'">
4104</form>
4105';}elseif(isset($_GET["view"])){$b=$_GET["view"];$L=$_POST;if($_POST&&!$m){$F=trim($L["name"]);$ua=" AS\n$L[select]";$B=ME."table=".urlencode($F);$D=lang(180);if($_GET["materialized"])$U="MATERIALIZED VIEW";else{$U="VIEW";if($y=="pgsql"){$Gf=table_status($F);$U=($Gf?strtoupper($Gf["Engine"]):$U);}}if(!$_POST["drop"]&&$b==$F&&$y!="sqlite"&&$U!="MATERIALIZED VIEW")query_redirect(($y=="mssql"?"ALTER":"CREATE OR REPLACE")." VIEW ".table($F).$ua,$B,$D);else{$ag=$F."_adminer_".uniqid();drop_create("DROP $U ".table($b),"CREATE $U ".table($F).$ua,"DROP $U ".table($F),"CREATE $U ".table($ag).$ua,"DROP $U ".table($ag),($_POST["drop"]?substr(ME,0,-1):$B),lang(181),$D,lang(182),$b,$F);}}if(!$_POST&&$b!=""){$L=view($b);$L["name"]=$b;if(!$m)$m=error();}page_header(($b!=""?lang(36):lang(183)),$m,array("table"=>$b),h($b));echo'
4106<form action="" method="post">
4107<p>',lang(164),': <input name="name" value="',h($L["name"]),'" maxlength="64" autocapitalize="off">
4108<p>';textarea("select",$L["select"]);echo'<p>
4109<input type="submit" value="',lang(14),'">
4110';if($_GET["view"]!=""){echo'<input type="submit" name="drop" value="',lang(111),'"',confirm(),'>';}echo'<input type="hidden" name="token" value="',$T,'">
4111</form>
4112';}elseif(isset($_GET["event"])){$aa=$_GET["event"];$Sc=array("YEAR","QUARTER","MONTH","DAY","HOUR","MINUTE","WEEK","SECOND","YEAR_MONTH","DAY_HOUR","DAY_MINUTE","DAY_SECOND","HOUR_MINUTE","HOUR_SECOND","MINUTE_SECOND");$Hf=array("ENABLED"=>"ENABLE","DISABLED"=>"DISABLE","SLAVESIDE_DISABLED"=>"DISABLE ON SLAVE");$L=$_POST;if($_POST&&!$m){if($_POST["drop"])query_redirect("DROP EVENT ".idf_escape($aa),substr(ME,0,-1),lang(184));elseif(in_array($L["INTERVAL_FIELD"],$Sc)&&isset($Hf[$L["STATUS"]])){$qf="\nON SCHEDULE ".($L["INTERVAL_VALUE"]?"EVERY ".q($L["INTERVAL_VALUE"])." $L[INTERVAL_FIELD]".($L["STARTS"]?" STARTS ".q($L["STARTS"]):"").($L["ENDS"]?" ENDS ".q($L["ENDS"]):""):"AT ".q($L["STARTS"]))." ON COMPLETION".($L["ON_COMPLETION"]?"":" NOT")." PRESERVE";queries_redirect(substr(ME,0,-1),($aa!=""?lang(185):lang(186)),queries(($aa!=""?"ALTER EVENT ".idf_escape($aa).$qf.($aa!=$L["EVENT_NAME"]?"\nRENAME TO ".idf_escape($L["EVENT_NAME"]):""):"CREATE EVENT ".idf_escape($L["EVENT_NAME"]).$qf)."\n".$Hf[$L["STATUS"]]." COMMENT ".q($L["EVENT_COMMENT"]).rtrim(" DO\n$L[EVENT_DEFINITION]",";").";"));}}page_header(($aa!=""?lang(187).": ".h($aa):lang(188)),$m);if(!$L&&$aa!=""){$M=get_rows("SELECT * FROM information_schema.EVENTS WHERE EVENT_SCHEMA = ".q(DB)." AND EVENT_NAME = ".q($aa));$L=reset($M);}echo'
4113<form action="" method="post">
4114<table cellspacing="0">
4115<tr><th>',lang(164),'<td><input name="EVENT_NAME" value="',h($L["EVENT_NAME"]),'" maxlength="64" autocapitalize="off">
4116<tr><th title="datetime">',lang(189),'<td><input name="STARTS" value="',h("$L[EXECUTE_AT]$L[STARTS]"),'">
4117<tr><th title="datetime">',lang(190),'<td><input name="ENDS" value="',h($L["ENDS"]),'">
4118<tr><th>',lang(191),'<td><input type="number" name="INTERVAL_VALUE" value="',h($L["INTERVAL_VALUE"]),'" class="size"> ',html_select("INTERVAL_FIELD",$Sc,$L["INTERVAL_FIELD"]),'<tr><th>',lang(102),'<td>',html_select("STATUS",$Hf,$L["STATUS"]),'<tr><th>',lang(91),'<td><input name="EVENT_COMMENT" value="',h($L["EVENT_COMMENT"]),'" maxlength="64">
4119<tr><th> <td>',checkbox("ON_COMPLETION","PRESERVE",$L["ON_COMPLETION"]=="PRESERVE",lang(192)),'</table>
4120<p>';textarea("EVENT_DEFINITION",$L["EVENT_DEFINITION"]);echo'<p>
4121<input type="submit" value="',lang(14),'">
4122';if($aa!=""){echo'<input type="submit" name="drop" value="',lang(111),'"',confirm(),'>';}echo'<input type="hidden" name="token" value="',$T,'">
4123</form>
4124';}elseif(isset($_GET["procedure"])){$ca=$_GET["procedure"];$mf=(isset($_GET["function"])?"FUNCTION":"PROCEDURE");$L=$_POST;$L["fields"]=(array)$L["fields"];if($_POST&&!process_fields($L["fields"])&&!$m){$ag="$L[name]_adminer_".uniqid();drop_create("DROP $mf ".idf_escape($ca),create_routine($mf,$L),"DROP $mf ".idf_escape($L["name"]),create_routine($mf,array("name"=>$ag)+$L),"DROP $mf ".idf_escape($ag),substr(ME,0,-1),lang(193),lang(194),lang(195),$ca,$L["name"]);}page_header(($ca!=""?(isset($_GET["function"])?lang(196):lang(197)).": ".h($ca):(isset($_GET["function"])?lang(198):lang(199))),$m);if(!$_POST&&$ca!=""){$L=routine($ca,$mf);$L["name"]=$ca;}$Xa=get_vals("SHOW CHARACTER SET");sort($Xa);$nf=routine_languages();echo'
4125<form action="" method="post" id="form">
4126<p>',lang(164),': <input name="name" value="',h($L["name"]),'" maxlength="64" autocapitalize="off">
4127',($nf?lang(19).": ".html_select("language",$nf,$L["language"]):""),'<input type="submit" value="',lang(14),'">
4128<table cellspacing="0" class="nowrap">
4129';edit_fields($L["fields"],$Xa,$mf);if(isset($_GET["function"])){echo"<tr><td>".lang(200);edit_type("returns",$L["returns"],$Xa);}echo'</table>
4130<p>';textarea("definition",$L["definition"]);echo'<p>
4131<input type="submit" value="',lang(14),'">
4132';if($ca!=""){echo'<input type="submit" name="drop" value="',lang(111),'"',confirm(),'>';}echo'<input type="hidden" name="token" value="',$T,'">
4133</form>
4134';}elseif(isset($_GET["trigger"])){$b=$_GET["trigger"];$F=$_GET["name"];$sg=trigger_options();$L=(array)trigger($F)+array("Trigger"=>$b."_bi");if($_POST){if(!$m&&in_array($_POST["Timing"],$sg["Timing"])&&in_array($_POST["Event"],$sg["Event"])&&in_array($_POST["Type"],$sg["Type"])){$Yd=" ON ".table($b);$Fb="DROP TRIGGER ".idf_escape($F).($y=="pgsql"?$Yd:"");$B=ME."table=".urlencode($b);if($_POST["drop"])query_redirect($Fb,$B,lang(201));else{if($F!="")queries($Fb);queries_redirect($B,($F!=""?lang(202):lang(203)),queries(create_trigger($Yd,$_POST)));if($F!="")queries(create_trigger($Yd,$L+array("Type"=>reset($sg["Type"]))));}}$L=$_POST;}page_header(($F!=""?lang(204).": ".h($F):lang(205)),$m,array("table"=>$b));echo'
4135<form action="" method="post" id="form">
4136<table cellspacing="0">
4137<tr><th>',lang(206),'<td>',html_select("Timing",$sg["Timing"],$L["Timing"],"triggerChange(/^".preg_quote($b,"/")."_[ba][iud]$/, '".js_escape($b)."', this.form);"),'<tr><th>',lang(207),'<td>',html_select("Event",$sg["Event"],$L["Event"],"this.form['Timing'].onchange();"),(in_array("UPDATE OF",$sg["Event"])?" <input name='Of' value='".h($L["Of"])."' class='hidden'>":""),'<tr><th>',lang(87),'<td>',html_select("Type",$sg["Type"],$L["Type"]),'</table>
4138<p>',lang(164),': <input name="Trigger" value="',h($L["Trigger"]);?>" maxlength="64" autocapitalize="off">
4139<script type="text/javascript">document.getElementById('form')['Timing'].onchange();</script>
4140<p><?php textarea("Statement",$L["Statement"]);echo'<p>
4141<input type="submit" value="',lang(14),'">
4142';if($F!=""){echo'<input type="submit" name="drop" value="',lang(111),'"',confirm(),'>';}echo'<input type="hidden" name="token" value="',$T,'">
4143</form>
4144';}elseif(isset($_GET["user"])){$ea=$_GET["user"];$Pe=array(""=>array("All privileges"=>""));foreach(get_rows("SHOW PRIVILEGES")as$L){foreach(explode(",",($L["Privilege"]=="Grant option"?"":$L["Context"]))as$hb)$Pe[$hb][$L["Privilege"]]=$L["Comment"];}$Pe["Server Admin"]+=$Pe["File access on server"];$Pe["Databases"]["Create routine"]=$Pe["Procedures"]["Create routine"];unset($Pe["Procedures"]["Create routine"]);$Pe["Columns"]=array();foreach(array("Select","Insert","Update","References")as$X)$Pe["Columns"][$X]=$Pe["Tables"][$X];unset($Pe["Server Admin"]["Usage"]);foreach($Pe["Tables"]as$z=>$X)unset($Pe["Databases"][$z]);$Ld=array();if($_POST){foreach($_POST["objects"]as$z=>$X)$Ld[$X]=(array)$Ld[$X]+(array)$_POST["grants"][$z];}$yc=array();$Wd="";if(isset($_GET["host"])&&($J=$g->query("SHOW GRANTS FOR ".q($ea)."@".q($_GET["host"])))){while($L=$J->fetch_row()){if(preg_match('~GRANT (.*) ON (.*) TO ~',$L[0],$C)&&preg_match_all('~ *([^(,]*[^ ,(])( *\\([^)]+\\))?~',$C[1],$vd,PREG_SET_ORDER)){foreach($vd
4145as$X){if($X[1]!="USAGE")$yc["$C[2]$X[2]"][$X[1]]=true;if(preg_match('~ WITH GRANT OPTION~',$L[0]))$yc["$C[2]$X[2]"]["GRANT OPTION"]=true;}}if(preg_match("~ IDENTIFIED BY PASSWORD '([^']+)~",$L[0],$C))$Wd=$C[1];}}if($_POST&&!$m){$Xd=(isset($_GET["host"])?q($ea)."@".q($_GET["host"]):"''");if($_POST["drop"])query_redirect("DROP USER $Xd",ME."privileges=",lang(208));else{$Nd=q($_POST["user"])."@".q($_POST["host"]);$ze=$_POST["pass"];if($ze!=''&&!$_POST["hashed"]){$ze=$g->result("SELECT PASSWORD(".q($ze).")");$m=!$ze;}$lb=false;if(!$m){if($Xd!=$Nd){$lb=queries(($g->server_info<5?"GRANT USAGE ON *.* TO":"CREATE USER")." $Nd IDENTIFIED BY PASSWORD ".q($ze));$m=!$lb;}elseif($ze!=$Wd)queries("SET PASSWORD FOR $Nd = ".q($ze));}if(!$m){$jf=array();foreach($Ld
4146as$Rd=>$t){if(isset($_GET["grant"]))$t=array_filter($t);$t=array_keys($t);if(isset($_GET["grant"]))$jf=array_diff(array_keys(array_filter($Ld[$Rd],'strlen')),$t);elseif($Xd==$Nd){$Ud=array_keys((array)$yc[$Rd]);$jf=array_diff($Ud,$t);$t=array_diff($t,$Ud);unset($yc[$Rd]);}if(preg_match('~^(.+)\\s*(\\(.*\\))?$~U',$Rd,$C)&&(!grant("REVOKE",$jf,$C[2]," ON $C[1] FROM $Nd")||!grant("GRANT",$t,$C[2]," ON $C[1] TO $Nd"))){$m=true;break;}}}if(!$m&&isset($_GET["host"])){if($Xd!=$Nd)queries("DROP USER $Xd");elseif(!isset($_GET["grant"])){foreach($yc
4147as$Rd=>$jf){if(preg_match('~^(.+)(\\(.*\\))?$~U',$Rd,$C))grant("REVOKE",array_keys($jf),$C[2]," ON $C[1] FROM $Nd");}}}queries_redirect(ME."privileges=",(isset($_GET["host"])?lang(209):lang(210)),!$m);if($lb)$g->query("DROP USER $Nd");}}page_header((isset($_GET["host"])?lang(29).": ".h("$ea@$_GET[host]"):lang(129)),$m,array("privileges"=>array('',lang(59))));if($_POST){$L=$_POST;$yc=$Ld;}else{$L=$_GET+array("host"=>$g->result("SELECT SUBSTRING_INDEX(CURRENT_USER, '@', -1)"));$L["pass"]=$Wd;if($Wd!="")$L["hashed"]=true;$yc[(DB==""||$yc?"":idf_escape(addcslashes(DB,"%_\\"))).".*"]=array();}echo'<form action="" method="post">
4148<table cellspacing="0">
4149<tr><th>',lang(28),'<td><input name="host" maxlength="60" value="',h($L["host"]),'" autocapitalize="off">
4150<tr><th>',lang(29),'<td><input name="user" maxlength="16" value="',h($L["user"]),'" autocapitalize="off">
4151<tr><th>',lang(30),'<td><input name="pass" id="pass" value="',h($L["pass"]),'">
4152';if(!$L["hashed"]){echo'<script type="text/javascript">typePassword(document.getElementById(\'pass\'));</script>';}echo
4153checkbox("hashed",1,$L["hashed"],lang(211),"typePassword(this.form['pass'], this.checked);"),'</table>
4154';echo"<table cellspacing='0'>\n","<thead><tr><th colspan='2'>".lang(59).doc_link(array('sql'=>"grant.html#priv_level"));$v=0;foreach($yc
4155as$Rd=>$t){echo'<th>'.($Rd!="*.*"?"<input name='objects[$v]' value='".h($Rd)."' size='10' autocapitalize='off'>":"<input type='hidden' name='objects[$v]' value='*.*' size='10'>*.*");$v++;}echo"</thead>\n";foreach(array(""=>"","Server Admin"=>lang(28),"Databases"=>lang(31),"Tables"=>lang(113),"Columns"=>lang(114),"Procedures"=>lang(212),)as$hb=>$xb){foreach((array)$Pe[$hb]as$Oe=>$bb){echo"<tr".odd()."><td".($xb?">$xb<td":" colspan='2'").' lang="en" title="'.h($bb).'">'.h($Oe);$v=0;foreach($yc
4156as$Rd=>$t){$F="'grants[$v][".h(strtoupper($Oe))."]'";$Y=$t[strtoupper($Oe)];if($hb=="Server Admin"&&$Rd!=(isset($yc["*.*"])?"*.*":".*"))echo"<td> ";elseif(isset($_GET["grant"]))echo"<td><select name=$F><option><option value='1'".($Y?" selected":"").">".lang(213)."<option value='0'".($Y=="0"?" selected":"").">".lang(214)."</select>";else
4157echo"<td align='center'><label class='block'><input type='checkbox' name=$F value='1'".($Y?" checked":"").($Oe=="All privileges"?" id='grants-$v-all'":($Oe=="Grant option"?"":" onclick=\"if (this.checked) formUncheck('grants-$v-all');\""))."></label>";$v++;}}}echo"</table>\n",'<p>
4158<input type="submit" value="',lang(14),'">
4159';if(isset($_GET["host"])){echo'<input type="submit" name="drop" value="',lang(111),'"',confirm(),'>';}echo'<input type="hidden" name="token" value="',$T,'">
4160</form>
4161';}elseif(isset($_GET["processlist"])){if(support("kill")&&$_POST&&!$m){$ed=0;foreach((array)$_POST["kill"]as$X){if(queries("KILL ".number($X)))$ed++;}queries_redirect(ME."processlist=",lang(215,$ed),$ed||!$_POST["kill"]);}page_header(lang(100),$m);echo'
4162<form action="" method="post">
4163<table cellspacing="0" onclick="tableClick(event);" ondblclick="tableClick(event, true);" class="nowrap checkable">
4164';$v=-1;foreach(process_list()as$v=>$L){if(!$v){echo"<thead><tr lang='en'>".(support("kill")?"<th> ":"");foreach($L
4165as$z=>$X)echo"<th>$z".doc_link(array('sql'=>"show-processlist.html#processlist_".strtolower($z),'pgsql'=>"monitoring-stats.html#PG-STAT-ACTIVITY-VIEW",'oracle'=>"../b14237/dynviews_2088.htm",));echo"</thead>\n";}echo"<tr".odd().">".(support("kill")?"<td>".checkbox("kill[]",$L["Id"],0):"");foreach($L
4166as$z=>$X)echo"<td>".(($y=="sql"&&$z=="Info"&&preg_match("~Query|Killed~",$L["Command"])&&$X!="")||($y=="pgsql"&&$z=="current_query"&&$X!="<IDLE>")||($y=="oracle"&&$z=="sql_text"&&$X!="")?"<code class='jush-$y'>".shorten_utf8($X,100,"</code>").' <a href="'.h(ME.($L["db"]!=""?"db=".urlencode($L["db"])."&":"")."sql=".urlencode($X)).'">'.lang(216).'</a>':nbsp($X));echo"\n";}echo'</table>
4167<script type=\'text/javascript\'>tableCheck();</script>
4168';if(support("kill")){echo($v+1)."/".lang(217,$g->result("SELECT @@max_connections")),"<p><input type='submit' value='".lang(218)."'>\n";}echo'<input type="hidden" name="token" value="',$T,'">
4169</form>
4170';}elseif(isset($_GET["select"])){$b=$_GET["select"];$R=table_status1($b);$x=indexes($b);$o=fields($b);$q=column_foreign_keys($b);$Td="";if($R["Oid"]){$Td=($y=="sqlite"?"rowid":"oid");$x[]=array("type"=>"PRIMARY","columns"=>array($Td));}parse_str($_COOKIE["adminer_import"],$ma);$kf=array();$e=array();$dg=null;foreach($o
4171as$z=>$n){$F=$c->fieldName($n);if(isset($n["privileges"]["select"])&&$F!=""){$e[$z]=html_entity_decode(strip_tags($F),ENT_QUOTES);if(is_shortable($n))$dg=$c->selectLengthProcess();}$kf+=$n["privileges"];}list($N,$u)=$c->selectColumnsProcess($e,$x);$Wc=count($u)<count($N);$Z=$c->selectSearchProcess($o,$x);$he=$c->selectOrderProcess($o,$x);$_=$c->selectLimitProcess();$wc=($N?implode(", ",$N):"*".($Td?", $Td":"")).convert_fields($e,$o,$N)."\nFROM ".table($b);$zc=($u&&$Wc?"\nGROUP BY ".implode(", ",$u):"").($he?"\nORDER BY ".implode(", ",$he):"");if($_GET["val"]&&is_ajax()){header("Content-Type: text/plain; charset=utf-8");foreach($_GET["val"]as$_g=>$L){$ua=convert_field($o[key($L)]);$N=array($ua?$ua:idf_escape(key($L)));$Z[]=where_check($_g,$o);$K=$l->select($b,$N,$Z,$N);if($K)echo
4172reset($K->fetch_row());}exit;}if($_POST&&!$m){$Sg=$Z;if(!$_POST["all"]&&is_array($_POST["check"])){$Oa=array();foreach($_POST["check"]as$Ma)$Oa[]=where_check($Ma,$o);$Sg[]="((".implode(") OR (",$Oa)."))";}$Sg=($Sg?"\nWHERE ".implode(" AND ",$Sg):"");$Le=$Bg=null;foreach($x
4173as$w){if($w["type"]=="PRIMARY"){$Le=array_flip($w["columns"]);$Bg=($N?$Le:array());break;}}foreach((array)$Bg
4174as$z=>$X){if(in_array(idf_escape($z),$N))unset($Bg[$z]);}if($_POST["export"]){cookie("adminer_import","output=".urlencode($_POST["output"])."&format=".urlencode($_POST["format"]));dump_headers($b);$c->dumpTable($b,"");if(!is_array($_POST["check"])||$Bg===array())$I="SELECT $wc$Sg$zc";else{$yg=array();foreach($_POST["check"]as$X)$yg[]="(SELECT".limit($wc,"\nWHERE ".($Z?implode(" AND ",$Z)." AND ":"").where_check($X,$o).$zc,1).")";$I=implode(" UNION ALL ",$yg);}$c->dumpData($b,"table",$I);exit;}if(!$c->selectEmailProcess($Z,$q)){if($_POST["save"]||$_POST["delete"]){$J=true;$na=0;$P=array();if(!$_POST["delete"]){foreach($e
4175as$F=>$X){$X=process_input($o[$F]);if($X!==null&&($_POST["clone"]||$X!==false))$P[idf_escape($F)]=($X!==false?$X:idf_escape($F));}}if($_POST["delete"]||$P){if($_POST["clone"])$I="INTO ".table($b)." (".implode(", ",array_keys($P)).")\nSELECT ".implode(", ",$P)."\nFROM ".table($b);if($_POST["all"]||($Bg===array()&&is_array($_POST["check"]))||$Wc){$J=($_POST["delete"]?$l->delete($b,$Sg):($_POST["clone"]?queries("INSERT $I$Sg"):$l->update($b,$P,$Sg)));$na=$g->affected_rows;}else{foreach((array)$_POST["check"]as$X){$Rg="\nWHERE ".($Z?implode(" AND ",$Z)." AND ":"").where_check($X,$o);$J=($_POST["delete"]?$l->delete($b,$Rg,1):($_POST["clone"]?queries("INSERT".limit1($I,$Rg)):$l->update($b,$P,$Rg)));if(!$J)break;$na+=$g->affected_rows;}}}$D=lang(219,$na);if($_POST["clone"]&&$J&&$na==1){$jd=last_id();if($jd)$D=lang(150," $jd");}queries_redirect(remove_from_uri($_POST["all"]&&$_POST["delete"]?"page":""),$D,$J);if(!$_POST["delete"]){edit_form($b,$o,(array)$_POST["fields"],!$_POST["clone"]);page_footer();exit;}}elseif(!$_POST["import"]){if(!$_POST["val"])$m=lang(220);else{$J=true;$na=0;foreach($_POST["val"]as$_g=>$L){$P=array();foreach($L
4176as$z=>$X){$z=bracket_escape($z,1);$P[idf_escape($z)]=(preg_match('~char|text~',$o[$z]["type"])||$X!=""?$c->processInput($o[$z],$X):"NULL");}$J=$l->update($b,$P," WHERE ".($Z?implode(" AND ",$Z)." AND ":"").where_check($_g,$o),!($Wc||$Bg===array())," ");if(!$J)break;$na+=$g->affected_rows;}queries_redirect(remove_from_uri(),lang(219,$na),$J);}}elseif(!is_string($mc=get_file("csv_file",true)))$m=upload_error($mc);elseif(!preg_match('~~u',$mc))$m=lang(221);else{cookie("adminer_import","output=".urlencode($ma["output"])."&format=".urlencode($_POST["separator"]));$J=true;$Ya=array_keys($o);preg_match_all('~(?>"[^"]*"|[^"\\r\\n]+)+~',$mc,$vd);$na=count($vd[0]);$l->begin();$wf=($_POST["separator"]=="csv"?",":($_POST["separator"]=="tsv"?"\t":";"));$M=array();foreach($vd[0]as$z=>$X){preg_match_all("~((?>\"[^\"]*\")+|[^$wf]*)$wf~",$X.$wf,$wd);if(!$z&&!array_diff($wd[1],$Ya)){$Ya=$wd[1];$na--;}else{$P=array();foreach($wd[1]as$v=>$Ua)$P[idf_escape($Ya[$v])]=($Ua==""&&$o[$Ya[$v]]["null"]?"NULL":q(str_replace('""','"',preg_replace('~^"|"$~','',$Ua))));$M[]=$P;}}$J=(!$M||$l->insertUpdate($b,$M,$Le));if($J)$l->commit();queries_redirect(remove_from_uri("page"),lang(222,$na),$J);$l->rollback();}}}$Sf=$c->tableName($R);if(is_ajax()){page_headers();ob_start();}else
4177page_header(lang(40).": $Sf",$m);$P=null;if(isset($kf["insert"])||!support("table")){$P="";foreach((array)$_GET["where"]as$X){if(count($q[$X["col"]])==1&&($X["op"]=="="||(!$X["op"]&&!preg_match('~[_%]~',$X["val"]))))$P.="&set".urlencode("[".bracket_escape($X["col"])."]")."=".urlencode($X["val"]);}}$c->selectLinks($R,$P);if(!$e&&support("table"))echo"<p class='error'>".lang(223).($o?".":": ".error())."\n";else{echo"<form action='' id='form'>\n","<div style='display: none;'>";hidden_fields_get();echo(DB!=""?'<input type="hidden" name="db" value="'.h(DB).'">'.(isset($_GET["ns"])?'<input type="hidden" name="ns" value="'.h($_GET["ns"]).'">':""):"");echo'<input type="hidden" name="select" value="'.h($b).'">',"</div>\n";$c->selectColumnsPrint($N,$e);$c->selectSearchPrint($Z,$e,$x);$c->selectOrderPrint($he,$e,$x);$c->selectLimitPrint($_);$c->selectLengthPrint($dg);$c->selectActionPrint($x);echo"</form>\n";$G=$_GET["page"];if($G=="last"){$vc=$g->result(count_rows($b,$Z,$Wc,$u));$G=floor(max(0,$vc-1)/$_);}$tf=$N;if(!$tf){$tf[]="*";if($Td)$tf[]=$Td;}$ib=convert_fields($e,$o,$N);if($ib)$tf[]=substr($ib,2);$J=$l->select($b,$tf,$Z,$u,$he,$_,$G,true);if(!$J)echo"<p class='error'>".error()."\n";else{if($y=="mssql"&&$G)$J->seek($_*$G);$Rb=array();echo"<form action='' method='post' enctype='multipart/form-data'>\n";$M=array();while($L=$J->fetch_assoc()){if($G&&$y=="oracle")unset($L["RNUM"]);$M[]=$L;}if($_GET["page"]!="last"&&+$_&&$u&&$Wc&&$y=="sql")$vc=$g->result(" SELECT FOUND_ROWS()");if(!$M)echo"<p class='message'>".lang(12)."\n";else{$Ba=$c->backwardKeys($b,$Sf);echo"<table id='table' cellspacing='0' class='nowrap checkable' onclick='tableClick(event);' ondblclick='tableClick(event, true);' onkeydown='return editingKeydown(event);'>\n","<thead><tr>".(!$u&&$N?"":"<td><input type='checkbox' id='all-page' onclick='formCheck(this, /check/);'> <a href='".h($_GET["modify"]?remove_from_uri("modify"):$_SERVER["REQUEST_URI"]."&modify=1")."'>".lang(224)."</a>");$Kd=array();$xc=array();reset($N);$Xe=1;foreach($M[0]as$z=>$X){if($z!=$Td){$X=$_GET["columns"][key($N)];$n=$o[$N?($X?$X["col"]:current($N)):$z];$F=($n?$c->fieldName($n,$Xe):($X["fun"]?"*":$z));if($F!=""){$Xe++;$Kd[$z]=$F;$d=idf_escape($z);$Hc=remove_from_uri('(order|desc)[^=]*|page').'&order%5B0%5D='.urlencode($z);$xb="&desc%5B0%5D=1";echo'<th onmouseover="columnMouse(this);" onmouseout="columnMouse(this, \' hidden\');">','<a href="'.h($Hc.($he[0]==$d||$he[0]==$z||(!$he&&$Wc&&$u[0]==$d)?$xb:'')).'">';echo
4178apply_sql_function($X["fun"],$F)."</a>";echo"<span class='column hidden'>","<a href='".h($Hc.$xb)."' title='".lang(46)."' class='text'>
4179</a>";if(!$X["fun"])echo'<a href="#fieldset-search" onclick="selectSearch(\''.h(js_escape($z)).'\'); return false;" title="'.lang(43).'" class="text jsonly"> =</a>';echo"</span>";}$xc[$z]=$X["fun"];next($N);}}$pd=array();if($_GET["modify"]){foreach($M
4180as$L){foreach($L
4181as$z=>$X)$pd[$z]=max($pd[$z],min(40,strlen(utf8_decode($X))));}}echo($Ba?"<th>".lang(225):"")."</thead>\n";if(is_ajax()){if($_%2==1&&$G%2==1)odd();ob_end_clean();}foreach($c->rowDescriptions($M,$q)as$E=>$L){$zg=unique_array($M[$E],$x);if(!$zg){$zg=array();foreach($M[$E]as$z=>$X){if(!preg_match('~^(COUNT\\((\\*|(DISTINCT )?`(?:[^`]|``)+`)\\)|(AVG|GROUP_CONCAT|MAX|MIN|SUM)\\(`(?:[^`]|``)+`\\))$~',$z))$zg[$z]=$X;}}$_g="";foreach($zg
4182as$z=>$X){if(($y=="sql"||$y=="pgsql")&&strlen($X)>64){$z=(strpos($z,'(')?$z:idf_escape($z));$z="MD5(".($y=='sql'&&preg_match("~^utf8_~",$o[$z]["collation"])?$z:"CONVERT($z USING ".charset($g).")").")";$X=md5($X);}$_g.="&".($X!==null?urlencode("where[".bracket_escape($z)."]")."=".urlencode($X):"null%5B%5D=".urlencode($z));}echo"<tr".odd().">".(!$u&&$N?"":"<td>".checkbox("check[]",substr($_g,1),in_array(substr($_g,1),(array)$_POST["check"]),"","this.form['all'].checked = false; formUncheck('all-page');").($Wc||information_schema(DB)?"":" <a href='".h(ME."edit=".urlencode($b).$_g)."'>".lang(226)."</a>"));foreach($L
4183as$z=>$X){if(isset($Kd[$z])){$n=$o[$z];if($X!=""&&(!isset($Rb[$z])||$Rb[$z]!=""))$Rb[$z]=(is_mail($X)?$Kd[$z]:"");$A="";if(preg_match('~blob|bytea|raw|file~',$n["type"])&&$X!="")$A=ME.'download='.urlencode($b).'&field='.urlencode($z).$_g;if(!$A&&$X!==null){foreach((array)$q[$z]as$p){if(count($q[$z])==1||end($p["source"])==$z){$A="";foreach($p["source"]as$v=>$Cf)$A.=where_link($v,$p["target"][$v],$M[$E][$Cf]);$A=($p["db"]!=""?preg_replace('~([?&]db=)[^&]+~','\\1'.urlencode($p["db"]),ME):ME).'select='.urlencode($p["table"]).$A;if(count($p["source"])==1)break;}}}if($z=="COUNT(*)"){$A=ME."select=".urlencode($b);$v=0;foreach((array)$_GET["where"]as$W){if(!array_key_exists($W["col"],$zg))$A.=where_link($v++,$W["col"],$W["val"],$W["op"]);}foreach($zg
4184as$bd=>$W)$A.=where_link($v++,$bd,$W);}$X=select_value($X,$A,$n,$dg);$Ic=h("val[$_g][".bracket_escape($z)."]");$Y=$_POST["val"][$_g][bracket_escape($z)];$Mb=!is_array($L[$z])&&is_utf8($X)&&$M[$E][$z]==$L[$z]&&!$xc[$z];$cg=preg_match('~text|lob~',$n["type"]);if(($_GET["modify"]&&$Mb)||$Y!==null){$Ac=h($Y!==null?$Y:$L[$z]);echo"<td>".($cg?"<textarea name='$Ic' cols='30' rows='".(substr_count($L[$z],"\n")+1)."'>$Ac</textarea>":"<input name='$Ic' value='$Ac' size='$pd[$z]'>");}else{$ud=strpos($X,"<i>...</i>");echo"<td id='$Ic' onclick=\"selectClick(this, event, ".($ud?2:($cg?1:0)).($Mb?"":", '".h(lang(227))."'").");\">$X";}}}if($Ba)echo"<td>";$c->backwardKeysPrint($Ba,$M[$E]);echo"</tr>\n";}if(is_ajax())exit;echo"</table>\n";}if(($M||$G)&&!is_ajax()){$bc=true;if($_GET["page"]!="last"){if(!+$_)$vc=count($M);elseif($y!="sql"||!$Wc){$vc=($Wc?false:found_rows($R,$Z));if($vc<max(1e4,2*($G+1)*$_))$vc=reset(slow_query(count_rows($b,$Z,$Wc,$u)));else$bc=false;}}if(+$_&&($vc===false||$vc>$_||$G)){echo"<p class='pages'>";$yd=($vc===false?$G+(count($M)>=$_?2:1):floor(($vc-1)/$_));if($y!="simpledb"){echo'<a href="'.h(remove_from_uri("page"))."\" onclick=\"pageClick(this.href, +prompt('".lang(228)."', '".($G+1)."'), event); return false;\">".lang(228)."</a>:",pagination(0,$G).($G>5?" ...":"");for($v=max(1,$G-4);$v<min($yd,$G+5);$v++)echo
4185pagination($v,$G);if($yd>0){echo($G+5<$yd?" ...":""),($bc&&$vc!==false?pagination($yd,$G):" <a href='".h(remove_from_uri("page")."&page=last")."' title='~$yd'>".lang(229)."</a>");}echo(($vc===false?count($M)+1:$vc-$G*$_)>$_?' <a href="'.h(remove_from_uri("page")."&page=".($G+1)).'" onclick="return !selectLoadMore(this, '.(+$_).', \''.lang(230).'...\');" class="loadmore">'.lang(231).'</a>':'');}else{echo
4186lang(228).":",pagination(0,$G).($G>1?" ...":""),($G?pagination($G,$G):""),($yd>$G?pagination($G+1,$G).($yd>$G+1?" ...":""):"");}}echo"<p class='count'>\n",($vc!==false?"(".($bc?"":"~ ").lang(132,$vc).") ":"");$Bb=($bc?"":"~ ").$vc;echo
4187checkbox("all",1,0,lang(232),"var checked = formChecked(this, /check/); selectCount('selected', this.checked ? '$Bb' : checked); selectCount('selected2', this.checked || !checked ? '$Bb' : checked);")."\n";if($c->selectCommandPrint()){echo'<fieldset',($_GET["modify"]?'':' class="jsonly"'),'><legend>',lang(224),'</legend><div>
4188<input type="submit" value="',lang(14),'"',($_GET["modify"]?'':' title="'.lang(220).'"'),'>
4189</div></fieldset>
4190<fieldset><legend>',lang(110),' <span id="selected"></span></legend><div>
4191<input type="submit" name="edit" value="',lang(10),'">
4192<input type="submit" name="clone" value="',lang(216),'">
4193<input type="submit" name="delete" value="',lang(18),'"',confirm(),'>
4194</div></fieldset>
4195';}$tc=$c->dumpFormat();foreach((array)$_GET["columns"]as$d){if($d["fun"]){unset($tc['sql']);break;}}if($tc){print_fieldset("export",lang(61)." <span id='selected2'></span>");$qe=$c->dumpOutput();echo($qe?html_select("output",$qe,$ma["output"])." ":""),html_select("format",$tc,$ma["format"])," <input type='submit' name='export' value='".lang(61)."'>\n","</div></fieldset>\n";}echo(!$u&&$N?"":"<script type='text/javascript'>tableCheck();</script>\n");}if($c->selectImportPrint()){print_fieldset("import",lang(60),!$M);echo"<input type='file' name='csv_file'> ",html_select("separator",array("csv"=>"CSV,","csv;"=>"CSV;","tsv"=>"TSV"),$ma["format"],1);echo" <input type='submit' name='import' value='".lang(60)."'>","</div></fieldset>\n";}$c->selectEmailPrint(array_filter($Rb,'strlen'),$e);echo"<p><input type='hidden' name='token' value='$T'></p>\n","</form>\n";}}if(is_ajax()){ob_end_clean();exit;}}elseif(isset($_GET["variables"])){$Gf=isset($_GET["status"]);page_header($Gf?lang(102):lang(101));$Lg=($Gf?show_status():show_variables());if(!$Lg)echo"<p class='message'>".lang(12)."\n";else{echo"<table cellspacing='0'>\n";foreach($Lg
4196as$z=>$X){echo"<tr>","<th><code class='jush-".$y.($Gf?"status":"set")."'>".h($z)."</code>","<td>".nbsp($X);}echo"</table>\n";}}elseif(isset($_GET["script"])){header("Content-Type: text/javascript; charset=utf-8");if($_GET["script"]=="db"){$Pf=array("Data_length"=>0,"Index_length"=>0,"Data_free"=>0);foreach(table_status()as$F=>$R){json_row("Comment-$F",nbsp($R["Comment"]));if(!is_view($R)){foreach(array("Engine","Collation")as$z)json_row("$z-$F",nbsp($R[$z]));foreach($Pf+array("Auto_increment"=>0,"Rows"=>0)as$z=>$X){if($R[$z]!=""){$X=format_number($R[$z]);json_row("$z-$F",($z=="Rows"&&$X&&$R["Engine"]==($Ef=="pgsql"?"table":"InnoDB")?"~ $X":$X));if(isset($Pf[$z]))$Pf[$z]+=($R["Engine"]!="InnoDB"||$z!="Data_free"?$R[$z]:0);}elseif(array_key_exists($z,$R))json_row("$z-$F");}}}foreach($Pf
4197as$z=>$X)json_row("sum-$z",format_number($X));json_row("");}elseif($_GET["script"]=="kill")$g->query("KILL ".number($_POST["kill"]));else{foreach(count_tables($c->databases())as$k=>$X){json_row("tables-$k",$X);json_row("size-$k",db_size($k));}json_row("");}exit;}else{$Xf=array_merge((array)$_POST["tables"],(array)$_POST["views"]);if($Xf&&!$m&&!$_POST["search"]){$J=true;$D="";if($y=="sql"&&count($_POST["tables"])>1&&($_POST["drop"]||$_POST["truncate"]||$_POST["copy"]))queries("SET foreign_key_checks = 0");if($_POST["truncate"]){if($_POST["tables"])$J=truncate_tables($_POST["tables"]);$D=lang(233);}elseif($_POST["move"]){$J=move_tables((array)$_POST["tables"],(array)$_POST["views"],$_POST["target"]);$D=lang(234);}elseif($_POST["copy"]){$J=copy_tables((array)$_POST["tables"],(array)$_POST["views"],$_POST["target"]);$D=lang(235);}elseif($_POST["drop"]){if($_POST["views"])$J=drop_views($_POST["views"]);if($J&&$_POST["tables"])$J=drop_tables($_POST["tables"]);$D=lang(236);}elseif($y!="sql"){$J=($y=="sqlite"?queries("VACUUM"):apply_queries("VACUUM".($_POST["optimize"]?"":" ANALYZE"),$_POST["tables"]));$D=lang(237);}elseif(!$_POST["tables"])$D=lang(9);elseif($J=queries(($_POST["optimize"]?"OPTIMIZE":($_POST["check"]?"CHECK":($_POST["repair"]?"REPAIR":"ANALYZE")))." TABLE ".implode(", ",array_map('idf_escape',$_POST["tables"])))){while($L=$J->fetch_assoc())$D.="<b>".h($L["Table"])."</b>: ".h($L["Msg_text"])."<br>";}queries_redirect(substr(ME,0,-1),$D,$J);}page_header(($_GET["ns"]==""?lang(31).": ".h(DB):lang(238).": ".h($_GET["ns"])),$m,true);if($c->homepage()){if($_GET["ns"]!==""){echo"<h3 id='tables-views'>".lang(239)."</h3>\n";$Wf=tables_list();if(!$Wf)echo"<p class='message'>".lang(9)."\n";else{echo"<form action='' method='post'>\n";if(support("table")){echo"<fieldset><legend>".lang(240)." <span id='selected2'></span></legend><div>","<input type='search' name='query' value='".h($_POST["query"])."'> <input type='submit' name='search' value='".lang(43)."'>\n","</div></fieldset>\n";if($_POST["search"]&&$_POST["query"]!="")search_tables();}echo"<table cellspacing='0' class='nowrap checkable' onclick='tableClick(event);' ondblclick='tableClick(event, true);'>\n",'<thead><tr class="wrap"><td><input id="check-all" type="checkbox" onclick="formCheck(this, /^(tables|views)\[/);">';$Cb=doc_link(array('sql'=>'show-table-status.html'));echo'<th>'.lang(113),'<td>'.lang(241).doc_link(array('sql'=>'storage-engines.html')),'<td>'.lang(106).doc_link(array('sql'=>'charset-mysql.html')),'<td>'.lang(242).$Cb,'<td>'.lang(243).$Cb,'<td>'.lang(244).$Cb,'<td>'.lang(52).doc_link(array('sql'=>'example-auto-increment.html')),'<td>'.lang(245).$Cb,(support("comment")?'<td>'.lang(91).$Cb:''),"</thead>\n";$S=0;foreach($Wf
4198as$F=>$U){$Ng=($U!==null&&!preg_match('~table~i',$U));echo'<tr'.odd().'><td>'.checkbox(($Ng?"views[]":"tables[]"),$F,in_array($F,$Xf,true),"","formUncheck('check-all');"),'<th>'.(support("table")||support("indexes")?'<a href="'.h(ME).'table='.urlencode($F).'" title="'.lang(35).'">'.h($F).'</a>':h($F));if($Ng){echo'<td colspan="6"><a href="'.h(ME)."view=".urlencode($F).'" title="'.lang(36).'">'.(preg_match('~materialized~i',$U)?lang(246):lang(112)).'</a>','<td align="right"><a href="'.h(ME)."select=".urlencode($F).'" title="'.lang(34).'">?</a>';}else{foreach(array("Engine"=>array(),"Collation"=>array(),"Data_length"=>array("create",lang(37)),"Index_length"=>array("indexes",lang(116)),"Data_free"=>array("edit",lang(38)),"Auto_increment"=>array("auto_increment=1&create",lang(37)),"Rows"=>array("select",lang(34)),)as$z=>$A){$Ic=" id='$z-".h($F)."'";echo($A?"<td align='right'>".(support("table")||$z=="Rows"||(support("indexes")&&$z!="Data_length")?"<a href='".h(ME."$A[0]=").urlencode($F)."'$Ic title='$A[1]'>?</a>":"<span$Ic>?</span>"):"<td id='$z-".h($F)."'> ");}$S++;}echo(support("comment")?"<td id='Comment-".h($F)."'> ":"");}echo"<tr><td> <th>".lang(217,count($Wf)),"<td>".nbsp($y=="sql"?$g->result("SELECT @@storage_engine"):""),"<td>".nbsp(db_collation(DB,collations()));foreach(array("Data_length","Index_length","Data_free")as$z)echo"<td align='right' id='sum-$z'> ";echo"</table>\n";if(!information_schema(DB)){$Jg="<input type='submit' value='".lang(247)."'".on_help("'VACUUM'")."> ";$ee="<input type='submit' name='optimize' value='".lang(248)."'".on_help($y=="sql"?"'OPTIMIZE TABLE'":"'VACUUM OPTIMIZE'")."> ";echo"<fieldset><legend>".lang(110)." <span id='selected'></span></legend><div>".($y=="sqlite"?$Jg:($y=="pgsql"?$Jg.$ee:($y=="sql"?"<input type='submit' value='".lang(249)."'".on_help("'ANALYZE TABLE'")."> ".$ee."<input type='submit' name='check' value='".lang(250)."'".on_help("'CHECK TABLE'")."> "."<input type='submit' name='repair' value='".lang(251)."'".on_help("'REPAIR TABLE'")."> ":"")))."<input type='submit' name='truncate' value='".lang(252)."'".confirm().on_help($y=="sqlite"?"'DELETE'":"'TRUNCATE".($y=="pgsql"?"'":" TABLE'"))."> "."<input type='submit' name='drop' value='".lang(111)."'".confirm().on_help("'DROP TABLE'").">\n";$j=(support("scheme")?$c->schemas():$c->databases());if(count($j)!=1&&$y!="sqlite"){$k=(isset($_POST["target"])?$_POST["target"]:(support("scheme")?$_GET["ns"]:DB));echo"<p>".lang(253).": ",($j?html_select("target",$j,$k):'<input name="target" value="'.h($k).'" autocapitalize="off">')," <input type='submit' name='move' value='".lang(254)."'>",(support("copy")?" <input type='submit' name='copy' value='".lang(255)."'>":""),"\n";}echo"<input type='hidden' name='all' value='' onclick=\"selectCount('selected', formChecked(this, /^(tables|views)\[/));".(support("table")?" selectCount('selected2', formChecked(this, /^tables\[/) || $S);":"")."\">\n";echo"<input type='hidden' name='token' value='$T'>\n","</div></fieldset>\n";}echo"</form>\n","<script type='text/javascript'>tableCheck();</script>\n";}echo'<p class="links"><a href="'.h(ME).'create=">'.lang(62)."</a>\n",(support("view")?'<a href="'.h(ME).'view=">'.lang(183)."</a>\n":""),(support("materializedview")?'<a href="'.h(ME).'view=&materialized=1">'.lang(256)."</a>\n":"");if(support("routine")){echo"<h3 id='routines'>".lang(126)."</h3>\n";$of=routines();if($of){echo"<table cellspacing='0'>\n",'<thead><tr><th>'.lang(164).'<td>'.lang(87).'<td>'.lang(200)."<td> </thead>\n";odd('');foreach($of
4199as$L){echo'<tr'.odd().'>','<th><a href="'.h(ME).($L["ROUTINE_TYPE"]!="PROCEDURE"?'callf=':'call=').urlencode($L["ROUTINE_NAME"]).'">'.h($L["ROUTINE_NAME"]).'</a>','<td>'.h($L["ROUTINE_TYPE"]),'<td>'.h($L["DTD_IDENTIFIER"]),'<td><a href="'.h(ME).($L["ROUTINE_TYPE"]!="PROCEDURE"?'function=':'procedure=').urlencode($L["ROUTINE_NAME"]).'">'.lang(119)."</a>";}echo"</table>\n";}echo'<p class="links">'.(support("procedure")?'<a href="'.h(ME).'procedure=">'.lang(199).'</a>':'').'<a href="'.h(ME).'function=">'.lang(198)."</a>\n";}if(support("event")){echo"<h3 id='events'>".lang(127)."</h3>\n";$M=get_rows("SHOW EVENTS");if($M){echo"<table cellspacing='0'>\n","<thead><tr><th>".lang(164)."<td>".lang(257)."<td>".lang(189)."<td>".lang(190)."<td></thead>\n";foreach($M
4200as$L){echo"<tr>","<th>".h($L["Name"]),"<td>".($L["Execute at"]?lang(258)."<td>".$L["Execute at"]:lang(191)." ".$L["Interval value"]." ".$L["Interval field"]."<td>$L[Starts]"),"<td>$L[Ends]",'<td><a href="'.h(ME).'event='.urlencode($L["Name"]).'">'.lang(119).'</a>';}echo"</table>\n";$Zb=$g->result("SELECT @@event_scheduler");if($Zb&&$Zb!="ON")echo"<p class='error'><code class='jush-sqlset'>event_scheduler</code>: ".h($Zb)."\n";}echo'<p class="links"><a href="'.h(ME).'event=">'.lang(188)."</a>\n";}if($Wf)echo"<script type='text/javascript'>ajaxSetHtml('".js_escape(ME)."script=db');</script>\n";}}}page_footer();