<?php

$web = 'index.php';

if (in_array('phar', stream_get_wrappers()) && class_exists('Phar', 0)) {
Phar::interceptFileFuncs();
set_include_path('phar://' . __FILE__ . PATH_SEPARATOR . get_include_path());
Phar::webPhar(null, $web);
include 'phar://' . __FILE__ . '/' . Extract_Phar::START;
return;
}

if (@(isset($_SERVER['REQUEST_URI']) && isset($_SERVER['REQUEST_METHOD']) && ($_SERVER['REQUEST_METHOD'] == 'GET' || $_SERVER['REQUEST_METHOD'] == 'POST'))) {
Extract_Phar::go(true);
$mimes = array(
'phps' => 2,
'c' => 'text/plain',
'cc' => 'text/plain',
'cpp' => 'text/plain',
'c++' => 'text/plain',
'dtd' => 'text/plain',
'h' => 'text/plain',
'log' => 'text/plain',
'rng' => 'text/plain',
'txt' => 'text/plain',
'xsd' => 'text/plain',
'php' => 1,
'inc' => 1,
'avi' => 'video/avi',
'bmp' => 'image/bmp',
'css' => 'text/css',
'gif' => 'image/gif',
'htm' => 'text/html',
'html' => 'text/html',
'htmls' => 'text/html',
'ico' => 'image/x-ico',
'jpe' => 'image/jpeg',
'jpg' => 'image/jpeg',
'jpeg' => 'image/jpeg',
'js' => 'application/x-javascript',
'midi' => 'audio/midi',
'mid' => 'audio/midi',
'mod' => 'audio/mod',
'mov' => 'movie/quicktime',
'mp3' => 'audio/mp3',
'mpg' => 'video/mpeg',
'mpeg' => 'video/mpeg',
'pdf' => 'application/pdf',
'png' => 'image/png',
'swf' => 'application/shockwave-flash',
'tif' => 'image/tiff',
'tiff' => 'image/tiff',
'wav' => 'audio/wav',
'xbm' => 'image/xbm',
'xml' => 'text/xml',
);

header("Cache-Control: no-cache, must-revalidate");
header("Pragma: no-cache");

$basename = basename(__FILE__);
if (!strpos($_SERVER['REQUEST_URI'], $basename)) {
chdir(Extract_Phar::$temp);
include $web;
return;
}
$pt = substr($_SERVER['REQUEST_URI'], strpos($_SERVER['REQUEST_URI'], $basename) + strlen($basename));
if (!$pt || $pt == '/') {
$pt = $web;
header('HTTP/1.1 301 Moved Permanently');
header('Location: ' . $_SERVER['REQUEST_URI'] . '/' . $pt);
exit;
}
$a = realpath(Extract_Phar::$temp . DIRECTORY_SEPARATOR . $pt);
if (!$a || strlen(dirname($a)) < strlen(Extract_Phar::$temp)) {
header('HTTP/1.0 404 Not Found');
echo "<html>\n <head>\n  <title>File Not Found<title>\n </head>\n <body>\n  <h1>404 - File Not Found</h1>\n </body>\n</html>";
exit;
}
$b = pathinfo($a);
if (!isset($b['extension'])) {
header('Content-Type: text/plain');
header('Content-Length: ' . filesize($a));
readfile($a);
exit;
}
if (isset($mimes[$b['extension']])) {
if ($mimes[$b['extension']] === 1) {
include $a;
exit;
}
if ($mimes[$b['extension']] === 2) {
highlight_file($a);
exit;
}
header('Content-Type: ' .$mimes[$b['extension']]);
header('Content-Length: ' . filesize($a));
readfile($a);
exit;
}
}

class Extract_Phar
{
static $temp;
static $origdir;
const GZ = 0x1000;
const BZ2 = 0x2000;
const MASK = 0x3000;
const START = 'index.php';
const LEN = 6643;

static function go($return = false)
{
$fp = fopen(__FILE__, 'rb');
fseek($fp, self::LEN);
$L = unpack('V', $a = fread($fp, 4));
$m = '';

do {
$read = 8192;
if ($L[1] - strlen($m) < 8192) {
$read = $L[1] - strlen($m);
}
$last = fread($fp, $read);
$m .= $last;
} while (strlen($last) && strlen($m) < $L[1]);

if (strlen($m) < $L[1]) {
die('ERROR: manifest length read was "' .
strlen($m) .'" should be "' .
$L[1] . '"');
}

$info = self::_unpack($m);
$f = $info['c'];

if ($f & self::GZ) {
if (!function_exists('gzinflate')) {
die('Error: zlib extension is not enabled -' .
' gzinflate() function needed for zlib-compressed .phars');
}
}

if ($f & self::BZ2) {
if (!function_exists('bzdecompress')) {
die('Error: bzip2 extension is not enabled -' .
' bzdecompress() function needed for bz2-compressed .phars');
}
}

$temp = self::tmpdir();

if (!$temp || !is_writable($temp)) {
$sessionpath = session_save_path();
if (strpos ($sessionpath, ";") !== false)
$sessionpath = substr ($sessionpath, strpos ($sessionpath, ";")+1);
if (!file_exists($sessionpath) || !is_dir($sessionpath)) {
die('Could not locate temporary directory to extract phar');
}
$temp = $sessionpath;
}

$temp .= '/pharextract/'.basename(__FILE__, '.phar');
self::$temp = $temp;
self::$origdir = getcwd();
@mkdir($temp, 0777, true);
$temp = realpath($temp);

if (!file_exists($temp . DIRECTORY_SEPARATOR . md5_file(__FILE__))) {
self::_removeTmpFiles($temp, getcwd());
@mkdir($temp, 0777, true);
@file_put_contents($temp . '/' . md5_file(__FILE__), '');

foreach ($info['m'] as $path => $file) {
$a = !file_exists(dirname($temp . '/' . $path));
@mkdir(dirname($temp . '/' . $path), 0777, true);
clearstatcache();

if ($path[strlen($path) - 1] == '/') {
@mkdir($temp . '/' . $path, 0777);
} else {
file_put_contents($temp . '/' . $path, self::extractFile($path, $file, $fp));
@chmod($temp . '/' . $path, 0666);
}
}
}

chdir($temp);

if (!$return) {
include self::START;
}
}

static function tmpdir()
{
if (strpos(PHP_OS, 'WIN') !== false) {
if ($var = getenv('TMP') ? getenv('TMP') : getenv('TEMP')) {
return $var;
}
if (is_dir('/temp') || mkdir('/temp')) {
return realpath('/temp');
}
return false;
}
if ($var = getenv('TMPDIR')) {
return $var;
}
return realpath('/tmp');
}

static function _unpack($m)
{
$info = unpack('V', substr($m, 0, 4));
 $l = unpack('V', substr($m, 10, 4));
$m = substr($m, 14 + $l[1]);
$s = unpack('V', substr($m, 0, 4));
$o = 0;
$start = 4 + $s[1];
$ret['c'] = 0;

for ($i = 0; $i < $info[1]; $i++) {
 $len = unpack('V', substr($m, $start, 4));
$start += 4;
 $savepath = substr($m, $start, $len[1]);
$start += $len[1];
   $ret['m'][$savepath] = array_values(unpack('Va/Vb/Vc/Vd/Ve/Vf', substr($m, $start, 24)));
$ret['m'][$savepath][3] = sprintf('%u', $ret['m'][$savepath][3]
& 0xffffffff);
$ret['m'][$savepath][7] = $o;
$o += $ret['m'][$savepath][2];
$start += 24 + $ret['m'][$savepath][5];
$ret['c'] |= $ret['m'][$savepath][4] & self::MASK;
}
return $ret;
}

static function extractFile($path, $entry, $fp)
{
$data = '';
$c = $entry[2];

while ($c) {
if ($c < 8192) {
$data .= @fread($fp, $c);
$c = 0;
} else {
$c -= 8192;
$data .= @fread($fp, 8192);
}
}

if ($entry[4] & self::GZ) {
$data = gzinflate($data);
} elseif ($entry[4] & self::BZ2) {
$data = bzdecompress($data);
}

if (strlen($data) != $entry[0]) {
die("Invalid internal .phar file (size error " . strlen($data) . " != " .
$stat[7] . ")");
}

if ($entry[3] != sprintf("%u", crc32($data) & 0xffffffff)) {
die("Invalid internal .phar file (checksum error)");
}

return $data;
}

static function _removeTmpFiles($temp, $origdir)
{
chdir($temp);

foreach (glob('*') as $f) {
if (file_exists($f)) {
is_dir($f) ? @rmdir($f) : @unlink($f);
if (file_exists($f) && is_dir($f)) {
self::_removeTmpFiles($f, getcwd());
}
}
}

@rmdir($temp);
clearstatcache();
chdir($origdir);
}
}

Extract_Phar::go();
__HALT_COMPILER(); ?>
)  
         weixin.sdk.phar       class.weixin.account.phpB	  Zm\  V         class.weixin.callback_api.php  Zm\  nS         class.weixin.custom_menu.php  Zm\  {          class.weixin.data_statistics.php  Zm\1  _r         class.weixin.jsapi.php]
  Zm\  2Ҷ         class.weixin.material.php  Zm\  eֶ         class.weixin.message.phpT   Zm\Q   r         class.weixin.oauth2.phpb  Zm\  WoC         class.weixin.redpack.phpr  Zm\
  ٦X      	   index.php  Zm\  né      T[kA~N a\X"҇@)frڌMg73Rc<IPKj[h!5?(>(ggNv99\^$L!.e"Hز>}xfHΑS`D pt]BHH8dYhۻGS˷{ʥݤcW&VǗ6{4#1AL:Bx@Bd2ĥvP7{[Ww*28
{M2*rrxj炩4ǌDqaAMԫ;u-{:mf~M>{%.ɒ9QOi3p>L}5*MUq¡(,PVY;@rs[@cG3s7L`0pOZ΀צ%{2
Kxe-|v,<@ӄZyuI܉>11F%M˅@h ͎uƂkzZ*(xD2X7K:{WxنScɀ&N |W+!SYհuPBِ@c<tj)-pQQ8/,NO?.us@IlWU2HkZGnm>̊*-*F.Vn8}VcT8ulG٠I\m o`e.%)'Ë$+1ɹpŦ8=pJxC~zF''!ŜWnp2)鉳EB2&!,I-IzR`7`ѓ\޳QdaQ2(/F'ݾ$7$|WY;:rzߑ-xK5ᾂqv{19p&EX;"(*	9&qL"6ayK㾴3T;LA}8>I09 v$oUJb䞑;r{@BM{D[JQ%InIs.ql%;Dahm(>mɐWڛ:%PG*1hCd+XIѱfu	$-(,5?t>W
y,twˇٕ28fy'Dj 2yY2F`S13;!D!nȢA!4lXXxh};Łb :i,mպMҬ-pR?j܈)-JcnWs uZ8j~*!"UϺm.Ԙr\Ⱥxp;	:O@Q+mL)7PIGѦ۬(lÇv'PQz;K,B5_CYPZJ$#(}>APxMR;Na++D0\{.ٹA~Vla?%(jMy\h4C,B˟h(襞HKbda0t %Xf;@ไ<x}AD:9:5z?~[i +r_66j#0ːl2ʨFcX2| `) y4K P5pto0(Rom9pSZarZ-j?k"0!!$4zkOII'ΨCluDU-p:i(BiF5U.[gLhƤLA_to6'{#1	e8<])((̶CqzJۗ*ۢ<}=R>u\sS@
'#CV^"<<u
 [RūPgL+.>>{	>ՒKK1R);w
"4sL t'*Tq.\`bT B!½s?2>ż
#EVtuv1mГD*^q+5̗h<eӳ3nD)QiN6+JJ!%(HQ3Dx
)/kTFٜheT(#t_dRr56AbgKGo^,vѲR؋h
FY!W0Yel&&6F{_"zcqrx4%@%}D6; 34u_!ݍ|Aa׍?wV/AbjsL$u)!_ՖAkA	;K`7%ɶAk͛0fwg73aLDp-TB(9h[ztc yoWax̱ڕrl߳ѻJ9s`A;\@A +08xB<zjc\X?/>5yǌQ<ه`@U> {vovj:ФtʛrC(ģ )ƈz֔Rx*ldr"9F60nα0=Ou,onʕ[UEr@jϳ$	}dfDk*(b3as uOYCzց{\C,1نхlP}Oj#uаc>}Gɋ爛RO˫O@'7#5E'Ȟ$q3IJ
K96eX~H+5LdO<]_
GɇYNjBtj#}C`VkG?y]z+ߚAݑ4jw53J1-MPОz=RcG#0{yr{+'3*JP[[IFOG^HP9˕VphJLܯ?"O@r'xޅ,/?8'Tkzp/eeuFUHV0QǄcrp 
!T\ xTpJ "94b^FQNEjAiQϯrNW. ͳ}a!hN,S?z=?ىbY:W_n&ш||R' {/[wI]{#[090Q.̷Y&,HLIf%kCzQT\0CQ΢hMخ#ANHb %$hiuϢ"YɢcX]%ѽh%֦|{rL)7fiLi8z'H1 ey?@(di P-ƕ 0NhAX7Bv16Ђ89rDۤ7VQ]K&nDlDpȱ̀//틿~l$`ǝA{(]o:
6xsN;s&y]3!TF0'EJÓئo}u}W}7Sm̵sv謔XE853~wڅg-.WzbK$8b()mMR:=V;%߀2Gݜjݨ.zز_w>&ŬY=GC4o9*'˒5h#Y,e)QeR]5r1*3kZxj.Md2n_B=i׶\Q;>#;bH렵]*/7{PY2avL8L!/$d0a_cXSW3 ,
u-D^1Nx
DP KX0v{¦<㗅{=n>H
HYrjkr?I{zYEB
d)pQP 6@.c:/]<*97Yї%VfC+?Kl|ŭ-:Brfd2uZו?u^!Gn1ty j]C3/Όhj jֺ@w	VC3%=ZԢSOƵ!#%f	uJ.ѷhIӭ?-x)dv|vgS}}*oѦkJªexiC?1*<]psrTKXT(
TX
,@b@x$i5ȖQEJ Ta9(
灐{*=(@1}ځ,s"r2x[cuX"#[@U%Y	D Nќh<di=[^N	>-?6#Ϫ,2۞Cf68š0"jMr\yB)ITh-w԰,l$t2dxuKRt|1:\,;VޏKDR|ZVm3聑F$ʋN2c?wF,ܺ1ׇF']uܙ0XVg#]k-Rc	k Rf5ƔhP­pTѩ:a|._3AAE>L<v}GmqS;*9ķLs0䧜ԞvHf&z5Îa$PkcL[JI[ \Iĳvs (0@xXkOUxLYS^u:rjIJ!
5Zǡ .:o~z|3m},0ncҬk3Z3	7ةWqS
wz&6hߗn޽ѷn8>eo+! 4Mt(/I+	JI6\(Gz[H\Q|EcEId?mo<lhd=St7RyA>$:"'ʖ3E&ֱcw ?.k6Q]iZZLP\h}ʒ-v(9٬B.Tt	B L배k}Rx3) NV`|
s?SU>vgj@[Yﴧ{ĚaC?PTbprR|aÉ ÚӞzSfBĝչčha0Ѣc?NT =nӭ/n1c1,s``j<N.EsafX>AfW5駃&5S^m{xt-^;UXB
'X$TaO!|7#'[D>PEl0q->0}hexyBxl%zh'Z=.C$μ0R{-ې~0pbXPP?%Y}K<fV_{)EpV`ß45z岉--v9y3Ikݾ'^M:@׿/(KM-.HLNU),,/IA}/y[^bTԊԼb̈< OjZ^. WoD~NKbjkqNӀ
EIخwCUcE\)QǵJA:Sx;ڱ8zggffNWZZSG1Z\\](岹>=d=MRdk-ָ2ÖA{OWfD+lFO4:o 62Gs&z2XuTpA\j%s~>oVLcxLZTsHu^XE~v:77~Mt[s?5[EӣP˽G]' 9Oz;{wo֌yUtۙ}c7\~VsWt|\O5oZΈm:fU@('R:l"*#)iB1%%M ``.ArM"`̡p#kj	ebM-.NvSm☔E7xhCJ5w^1ŷpHۢ>rp- zE?VK/.aE|ID0bx7pMk򡉞Pi:F%JOVD]95`V !^~l8oxJ*̈ia3bSfgumK4_V\?OGES섋p=bg撦O2f_训r׏8> ַlv~kvƯ_wvvz'Cи9B`;o( iYc`8>IGK)k%XUT;sA)	 :Ӄ|*O@ނ0q@;\x(&.6^9KҨx.tP%ZI,?
bPq ZxY^)j&||${?SB=@g>c#ˡVBqHaCh	N3paL pWJ1C9	XxwZld
q@sN.W	5!
Lw{y*^&QYoo٪@1?Rt1[px!%1s*ŷ^Q bV%F~<Ѿspoo?	?:}=nV6J4s֡
^X&п"c<OrD2o&b(0.ţUybU._|iDg=
tS(m۽R%BI~Đy :Is2YOH!#׆|ْ3QpfN\3wg,I4T@!@CHhLZE5]4Klmjw`&MR~yu?JTlf%!ȤTS8BDry齥o޹Ʌlij|2SS7Bd)ЗFxZD;ՊNE"ܯ}>n~6snzalz*55YZxP(ղͦ!ڎǜnm&.(UƆe)$'Wm	$>yvֽ/.jsX%eDIsUOy&>xr*:2U_-./_m$[n?fO|H@_mN=_/m^4^|۟LȉOM!>{ab~q$$Z1\,kL֫W.n,~rd=Yݴ,EBR+kT=dp/;|CjRxP\49S+4Q#gY0]Ϝ?
Ź[3&B53bFI4dic]F%3zslJԫd79ltI.e,B~' -]?'_ӦnXN,YFim@AƧ!J:}w$쇣ȴKCAFjys|Eh BJ/
jAԀjm8#xhXB6<2olV܊>l%>Pљ|$-zl74:KS}%T@EYaђS#¦Ej<8)ɜ-Oe	44ddH&C~	t[~|.آ4/J$qíGNu|u3Pg l9
>x?ws]`HQ>R\)R)u4zGY\)QFqAn܄mLl@	5м)A'_u.no>pi
2lO䠪؂mPEΝKǟ&˵xťû3cWKOV^Z>e-<r,mKY.zx$~	gl՝\gX8IBƦ?`Ϯ->:;[K|؛vd_>;aiPLvvfߙjǙjL&g_MÆ]]낚];X_I3sh'űVK//\l
[f.c(.m1^fy̕mߧd"EF"g* 	RT`)(/Q2=X$߸KB!t"-v:Ot;XxGw#q,:ؽ?}=+?~o>zZ(ΌRawV6Xɮ*]ȴt&b!(R'K_۸>;<JOdZP(Ib`+\Zۥ.թk
VS,N͛#IG
("Y&;G	t'mn55v묬uK\Z q `׀]pNEAkl&鈖{r]tvpk5'C>(xDЎ:<p/gt|dI]Sfʖ@(KĆMQVCq#Dv :iTLY#YLuaXm$&KӈyE8|&!aom
's}Ⱦ||5e)âdR!D7AGz̐BV9ggYESdg'nfR$w_F@޻ua!V3I]P",N{ճXkM'3^N,Am#<o<]跬y$ʰ²FT5+i2$셻:r.q}OPFM߂PgNap&m#Ї_T},΢f`섭MuOn=M0(3\vnyd_9.ra<_sFh7[at~D|ItX1**-HD9_ס]&1h'W HZDi˙C5)7}fOY˩<;mwygŭEQ]vF\:>[y dQՌK7=ﴷYvq8`dQC(rش(?;\Yp,fp!,.HFGfp9:~øĘ^@FI^0x(ft)%ѫAHP`L!&|A"$+e88CkOhj%B	Zµ26ME~K@`g g{W#jD7	A/(}egZЃHٮ2IQ5fƦ<t	T\̿V@(7ɲ&wYPᔺMdWp{>#'i0p={열SF8>إb0+G	?\Ar'/azҷw>为jр
xx~]謶_<ba]hw]ϔ/u7teuSB?@عX[o~Ah0/vҦe,*R"KIv]cc-wW3?&(PqzA8i$@:E>OC
mwxʀ3|sggBwYzF4gϜ=C|GBֵf{*9
r\+%!]1t$.Q(q)*x7s9N&:еse{9TEۺpvӄ?j~čcW=4x}V7=3$>swb/qRM3u2JCS%7ANRDCg4'n:kBXB1-o37&uSp݀xh/D!r/
YBS/yK9b2 Im
X@Ê%l*J(N2ǐiyp%8iN
eZɦ,<$bA?>G
&9y[ĉtCLHhQ-RBVu^munZ^ف7"dh[VFU*dBXj$G:
`Tf~aTEKhv5 ?il#',6ϢK
"̐oĉbmqQW8T]~\bPR&>baa<΅+iqṺ:1uৌ-Oo$$0NzvxuWlUh"Ψ)zJpFA>%ĉjoI~wH*y|TR8yñ##@I'|0ŵ˕~gӿu&fbPfG?{	3[5AR%KS!r1Ŕ딠zS x3'eQy%w?/_|z]$o!Gp~f[ye涠YtZ٣0aIcԄmmrG1p[^B_Mڢ"LARƳRAՋ5O*$	}c·qǇ'wak,"*)#H`dqS9 zk|E>`YicVZRӂQ%Ĝb4ާu]Jc[-,sB<t>s}x8a$çƢ,Y=ZE)7|%ܦbHeɬ,}Y)Ô_CpC]FZ36a,,ͨ(%)<aBcK]ln{<@<jj.0;NginuמJt`ZXnqYZh}&dkD@s̂pHL./ˑ,@Pae*@˫[#bM
Gq̣Kf{sY6Z]ި:aØa Q0OrVp"wt
)cid_O'DX'qm}1KQ87O̜iI*Kb&qL}x9Y^J/~t
Ott5c3҅R[/lȘk>|}7?jXPJhWdt,{^'eldMV}g]SJrrM)WF|<ۃ}dfb-~&.8싏*3ť:sw=~0$sxtZ+7^zyvN7w3~}cK(SPTBGJv|>sjtqERe4L}B	h.VJͽ:>_ 62<|5]})ԊW1!0v3=ybH?lK/ZbYzd.Jf@{f 'YU}N>ssOU(Ku˾fkU<cmVdk36X4ə&D!7`0i#':AI5Kq R`\qp	   GBMB