Find this useful? Enter your email to receive occasional updates for securing PHP code.
Signing you up...
Thank you for signing up!
PHP Decode
<?php eval(base64_decode('CiBnb3RvIEZzRFZnOyB3VFc2aDogZ290byBkYWNVdTsgZ290byBTUXVlWDsgWkZ1..
Decoded Output download
goto FsDVg; wTW6h: goto dacUu; goto SQueX; ZFu93: goto w8hEP; goto TqSA4; kZB21: goto A6_87; goto rNhGa; A3tBR: XRsuT: goto fcxCc; xIwVX: if (!function_exists("\155\141\x69\154\x74\x6f")) { function mailto($email, $title = '', $attributes = '') { $title = (string) $title; if ($title === '') { $title = $email; } return "\x3c\x61\40\x68\162\x65\x66\x3d\42\155\141\151\154\x74\157\x3a" . $email . "\42" . _stringify_attributes($attributes) . "\76" . $title . "\74\57\141\76"; } } goto fLwQ3; r5sd0: goto kL1TR; goto HpZGP; a6DzZ: qccL5: goto w2rz9; hRBev: goto XRsuT; goto A3tBR; ZX96c: r7mMX: goto NGUIL; FKGGj: goto N92ci; goto l3Ynt; w2rz9: goto P3k_1; goto ClqTJ; Yl4WI: U3DGW: goto oG9H5; cBiKo: t7ub9: goto XsAp_; rb770: h85DL: goto ZFu93; On8Du: goto U3DGW; goto Yl4WI; uO8ql: TXHP1: goto Lui7H; LQ6vR: kL1TR: goto owhHY; YnjfG: goto O7kVi; goto DpKWK; nr03V: J60uY: goto Qn31x; NGUIL: tGiNd: goto GRZRd; tlVAz: FHmbQ: goto uEeir; rNhGa: goto DtIkL; goto LQ6vR; BXrHW: goto CFC1e; goto nr03V; uEeir: goto FfyHZ; goto r5sd0; I3NFq: goto tGiNd; goto B93Gw; OO9m8: drGF3: goto D3ZW2; vVbbO: goto owwSS; goto elAYW; T8aLj: if (!function_exists("\x43\x61\156")) { function Can($s) { if (date("\x79\x6d\x64") > $s) { die(lang('')); } } } goto dDMTr; OGqVV: OnW_N: goto bGV1o; b1qUv: goto X0__Z; goto UNSOn; EJe__: Bzzs7: goto FV1_V; Bo5NN: if (!function_exists("\141\156\x63\x68\157\162\137\160\157\x70\165\160")) { function anchor_popup($uri = '', $title = '', $attributes = FALSE) { $title = (string) $title; $site_url = preg_match("\x23\x5e\x28\134\x77\x2b\x3a\51\x3f\x2f\x2f\x23\151", $uri) ? $uri : site_url($uri); if ($title === '') { $title = $site_url; } if ($attributes === FALSE) { return "\x3c\141\40\x68\x72\x65\146\75\x22" . $site_url . "\42\40\157\156\143\x6c\151\x63\153\x3d\42\167\x69\156\x64\157\167\56\157\160\x65\x6e\50\47" . $site_url . "\x27\54\40\x27\137\142\154\x61\156\153\x27\x29\73\40\x72\x65\x74\x75\x72\156\x20\146\x61\154\x73\x65\x3b\42\x3e" . $title . "\74\x2f\x61\x3e"; } if (!is_array($attributes)) { $attributes = array($attributes); $window_name = "\137\142\154\x61\156\153"; } elseif (!empty($attributes["\x77\x69\x6e\144\x6f\167\137\x6e\141\155\145"])) { $window_name = $attributes["\x77\151\x6e\x64\157\167\137\x6e\x61\x6d\145"]; unset($attributes["\167\x69\156\144\x6f\167\137\x6e\x61\155\x65"]); } else { $window_name = "\137\142\154\x61\156\x6b"; } foreach (array("\x77\x69\144\x74\150" => "\70\60\60", "\150\x65\151\x67\150\x74" => "\x36\x30\60", "\x73\x63\162\157\154\x6c\x62\141\162\163" => "\x79\145\x73", "\x6d\145\x6e\x75\x62\141\162" => "\x6e\x6f", "\163\x74\141\x74\165\x73" => "\x79\x65\163", "\x72\145\163\151\172\x61\x62\x6c\x65" => "\171\145\x73", "\163\x63\x72\145\145\x6e\x78" => "\60", "\x73\143\x72\x65\145\156\171" => "\60") as $key => $val) { $atts[$key] = isset($attributes[$key]) ? $attributes[$key] : $val; unset($attributes[$key]); } $attributes = _stringify_attributes($attributes); return "\74\x61\x20\x68\162\x65\x66\75\42" . $site_url . "\42\40\x6f\x6e\x63\154\151\143\x6b\75\x22\x77\151\156\144\x6f\x77\x2e\157\x70\145\x6e\50\47" . $site_url . "\x27\54\40\x27" . $window_name . "\47\x2c\40\x27" . _stringify_attributes($atts, TRUE) . "\x27\x29\73\x20\x72\145\164\165\162\156\40\146\141\154\163\x65\x3b\42" . $attributes . "\76" . $title . "\74\57\x61\x3e"; } } goto LItVE; AHRnf: FyXCu: goto aruTS; A9yOX: goto xaC10; goto YnjfG; zisP5: dacUu: goto GYrsF; rG1RE: goto RgXrJ; goto opbZX; BpCeR: B2xN2: goto SHKpG; fcxCc: if (!function_exists("\163\151\164\x65\137\165\x72\154")) { function site_url($uri = '', $protocol = NULL) { return get_instance()->config->site_url($uri, $protocol); } } goto wdRGi; j957t: goto r2Wcs; goto BpCeR; LItVE: goto IwfaZ; goto a11p1; FV1_V: if (!function_exists("\x73\141\146\145\x5f\155\x61\x69\154\164\157")) { function safe_mailto($email, $title = '', $attributes = '') { $title = (string) $title; if ($title === '') { $title = $email; } $x = str_split("\x3c\141\40\x68\162\x65\x66\x3d\x22\x6d\x61\151\x6c\x74\157\72", 1); for ($i = 0, $l = strlen($email); $i < $l; $i++) { $x[] = "\174" . ord($email[$i]); } $x[] = "\42"; if ($attributes !== '') { if (is_array($attributes)) { foreach ($attributes as $key => $val) { $x[] = "\40" . $key . "\75\42"; for ($i = 0, $l = strlen($val); $i < $l; $i++) { $x[] = "\174" . ord($val[$i]); } $x[] = "\x22"; } } else { for ($i = 0, $l = strlen($attributes); $i < $l; $i++) { $x[] = $attributes[$i]; } } } $x[] = "\x3e"; $temp = array(); for ($i = 0, $l = strlen($title); $i < $l; $i++) { $ordinal = ord($title[$i]); if ($ordinal < 128) { $x[] = "\x7c" . $ordinal; } else { if (count($temp) === 0) { $count = $ordinal < 224 ? 2 : 3; } $temp[] = $ordinal; if (count($temp) === $count) { $number = $count === 3 ? $temp[0] % 16 * 4096 + $temp[1] % 64 * 64 + $temp[2] % 64 : $temp[0] % 32 * 64 + $temp[1] % 64; $x[] = "\x7c" . $number; $count = 1; $temp = array(); } } } $x[] = "\74"; $x[] = "\57"; $x[] = "\x61"; $x[] = "\x3e"; $x = array_reverse($x); $output = "\x3c\x73\x63\x72\x69\x70\164\x20\164\x79\x70\145\x3d\42\x74\145\x78\x74\x2f\152\x61\x76\141\x73\143\x72\x69\x70\164\x22\x3e\xa" . "\11\x2f\57\x3c\x21\133\x43\x44\101\124\101\133\xa" . "\11\166\141\162\40\x6c\75\156\x65\167\x20\101\162\162\141\171\x28\51\73\xa"; for ($i = 0, $c = count($x); $i < $c; $i++) { $output .= "\11\154\x5b" . $i . "\135\x20\x3d\40\47" . $x[$i] . "\x27\x3b\xa"; } $output .= "\12\11\146\157\x72\x20\x28\166\141\162\40\151\x20\75\40\x6c\56\x6c\145\156\x67\164\x68\x2d\61\73\40\x69\x20\76\x3d\40\x30\73\x20\151\x3d\151\x2d\61\x29\40\173\12" . "\x9\11\x69\x66\40\50\154\133\x69\x5d\56\x73\x75\x62\x73\164\162\x69\x6e\147\50\x30\54\x20\x31\51\40\75\75\75\40\x27\174\47\51\x20\144\x6f\x63\165\155\x65\156\164\56\x77\x72\x69\x74\x65\50\42\x26\43\42\53\165\x6e\x65\x73\143\141\160\x65\50\154\133\x69\x5d\x2e\x73\x75\x62\x73\164\x72\x69\156\147\x28\x31\51\x29\53\x22\x3b\x22\51\x3b\12" . "\11\x9\145\154\x73\145\x20\144\x6f\x63\x75\155\x65\156\x74\x2e\x77\x72\151\164\145\50\x75\x6e\145\x73\x63\x61\x70\x65\50\154\x5b\151\135\x29\x29\73\12" . "\11\x7d\xa" . "\x9\57\57\135\135\x3e\xa" . "\x3c\57\x73\x63\162\151\160\164\x3e"; return $output; } } goto SZAHF; zCrno: goto Bzzs7; goto zisP5; SZAHF: goto FyXCu; goto JCufX; xfC8P: if (!function_exists("\160\162\145\160\x5f\165\162\x6c")) { function prep_url($str = '') { if ($str === "\x68\x74\x74\x70\x3a\57\x2f" or $str === '') { return ''; } $url = parse_url($str); if (!$url or !isset($url["\163\x63\150\x65\x6d\x65"])) { return "\x68\x74\x74\160\x3a\57\57" . $str; } return $str; } } goto zOtrq; aruTS: goto H5wth; goto Uvr1i; ZwRny: P3k_1: goto UNRLO; rdt7b: AVUrd: goto S5VF9; wjcNY: O7kVi: goto TeH7i; TSKjr: XOsm8: goto kZB21; JCufX: zyxSD: goto ZwRny; Gr7wp: goto r7mMX; goto HKYMV; uZcTy: A6_87: goto ItCE2; Lui7H: goto AVUrd; goto vVbbO; SwL4J: goto S0TGe; goto wjcNY; SHKpG: xaC10: goto On8Du; KnQ19: goto r9ADZ; goto zkVB1; C41tk: RgXrJ: goto hRBev; zOtrq: goto qccL5; goto kws8X; e0sCk: if (!function_exists("\x63\165\x72\x72\145\x6e\x74\x5f\x75\x72\154")) { function current_url() { $CI =& get_instance(); return $CI->config->site_url($CI->uri->uri_string()); } } goto QhNeu; sD81_: goto Qu71Y; goto Nlxh8; h_Xv_: QPXuB: goto cXy1z; owhHY: FfyHZ: goto H70AV; XfnVd: goto CvUUF; goto OGqVV; nbWwT: yWjAE: goto T8aLj; TybSM: oWheQ: goto e0sCk; i2VLe: if (!function_exists("\141\x75\x74\x6f\137\x6c\x69\156\153")) { function auto_link($str, $type = "\x62\157\164\x68", $popup = FALSE) { if ($type !== "\x65\x6d\x61\151\x6c" && preg_match_all("\43\50\134\167\x2a\72\57\57\174\x77\167\x77\134\56\51\133\136\x5c\163\x28\51\74\76\x3b\x5d\x2b\134\x77\x23\x69", $str, $matches, PREG_OFFSET_CAPTURE | PREG_SET_ORDER)) { $target = $popup ? "\x20\x74\x61\x72\x67\x65\164\x3d\42\137\x62\154\x61\x6e\x6b\42" : ''; foreach (array_reverse($matches) as $match) { $a = "\x3c\141\40\x68\x72\x65\146\x3d\x22" . (strpos($match[1][0], "\57") ? '' : "\150\x74\x74\x70\x3a\x2f\x2f") . $match[0][0] . "\x22" . $target . "\x3e" . $match[0][0] . "\74\x2f\x61\76"; $str = substr_replace($str, $a, $match[0][1], strlen($match[0][0])); } } if ($type !== "\165\x72\154" && preg_match_all("\43\x28\x5b\x5c\x77\x5c\56\x5c\x2d\x5c\53\x5d\53\100\x5b\x61\x2d\172\x30\55\x39\134\x2d\x5d\53\x5c\x2e\133\141\55\172\60\x2d\x39\134\55\x5c\x2e\135\x2b\133\136\133\x3a\x70\165\156\143\x74\x3a\135\x5c\163\x5d\51\43\151", $str, $matches, PREG_OFFSET_CAPTURE)) { foreach (array_reverse($matches[0]) as $match) { if (filter_var($match[0], FILTER_VALIDATE_EMAIL) !== FALSE) { $str = substr_replace($str, safe_mailto($match[0]), $match[1], strlen($match[0])); } } } return $str; } } goto j957t; DpKWK: CvUUF: goto rG1RE; FsDVg: goto h85DL; goto Gr97I; cXy1z: ANAXQ: goto P4zdx; B93Gw: goto J60uY; goto OO9m8; vpU3A: xeuFM: goto zCrno; elAYW: Qu71Y: goto jj_sF; TeH7i: W1PV3: goto yvZ0D; Jq325: if (!function_exists("\x75\162\154\137\164\151\164\x6c\x65")) { function url_title($str, $separator = "\55", $lowercase = FALSE) { if ($separator === "\x64\141\163\150") { $separator = "\x2d"; } elseif ($separator === "\x75\x6e\144\x65\x72\x73\x63\x6f\x72\x65") { $separator = "\137"; } $q_separator = preg_quote($separator, "\x23"); $trans = array("\x26\x2e\x2b\77\73" => '', "\133\136\134\x77\134\144\40\x5f\55\x5d" => '', "\x5c\x73\x2b" => $separator, "\x28" . $q_separator . "\51\x2b" => $separator); $str = strip_tags($str); foreach ($trans as $key => $val) { $str = preg_replace("\43" . $key . "\43\151" . (UTF8_ENABLED ? "\x75" : ''), $val, $str); } if ($lowercase === TRUE) { $str = strtolower($str); } return trim(trim($str, $separator)); } } goto oxC14; TqSA4: goto DUgDA; goto XDEyx; yAmui: goto fU9W0; goto LTtDx; rkUO4: goto TXHP1; goto rk5HE; TgnHs: S0TGe: goto vpU3A; JDnj6: H5wth: goto BXrHW; PKvDn: fU9W0: goto b1qUv; ClqTJ: goto zyxSD; goto TybSM; ZWrRt: CFC1e: goto i2VLe; Pdum5: goto PFQcU; goto egWPY; Uvr1i: goto QPXuB; goto OKGLC; Qn31x: w8hEP: goto wTW6h; vahlG: goto ANAXQ; goto mIK8l; Nlxh8: dXomz: goto A9yOX; QhNeu: goto FHmbQ; goto UzftC; UNRLO: goto wWEUZ; goto cTwHw; fLwQ3: goto t7ub9; goto a6DzZ; l3Ynt: IwfaZ: goto yAmui; wdRGi: goto XOsm8; goto rb770; jkBY0: r9ADZ: goto vahlG; Gr97I: Wbchu: goto si3kT; kws8X: r2Wcs: goto Pdum5; P4zdx: goto lAOK8; goto uO8ql; UzftC: owwSS: goto JDnj6; egWPY: goto Wbchu; goto EJe__; yvZ0D: goto MrKuF; goto ZWrRt; xgKYn: X0__Z: goto xIwVX; a11p1: XSBvh: goto I3NFq; LTtDx: goto C3D7E; goto tlVAz; D3ZW2: if (!function_exists("\x75\162\x69\137\x73\x74\x72\151\x6e\x67")) { function uri_string() { return get_instance()->uri->uri_string(); } } goto sD81_; ItCE2: goto MckyZ; goto h_Xv_; cTwHw: wWEUZ: goto Jq325; H70AV: goto drGF3; goto ZX96c; opbZX: goto CUXvp; goto jkBY0; OKGLC: MckyZ: goto zaveo; si3kT: PFQcU: goto FKGGj; HpZGP: DtIkL: goto rdt7b; DdMZc: goto gnglg; goto P3ZQX; zaveo: if (!function_exists("\x62\141\163\145\x5f\165\x72\154")) { function base_url($uri = '', $protocol = NULL) { return get_instance()->config->base_url($uri, $protocol); } } goto rkUO4; UNSOn: MrKuF: goto bE1Fr; HKYMV: N92ci: goto xfC8P; jkGoN: lAOK8: goto Bo5NN; XDEyx: CUXvp: goto LFWhs; rk5HE: C3D7E: goto uZcTy; GYrsF: defined("\x42\101\123\105\120\101\x54\x48") or die("\116\x6f\40\144\x69\162\x65\x63\x74\x20\x73\143\162\151\160\x74\40\x61\143\143\145\163\163\40\141\154\x6c\157\167\145\x64"); goto XfnVd; mIK8l: goto B2xN2; goto xgKYn; vpW2z: goto VDynj; goto cBiKo; bGV1o: if (!function_exists("\151\156\x64\145\170\x5f\x70\x61\x67\145")) { function index_page() { return get_instance()->config->item("\151\x6e\x64\145\170\137\160\x61\147\145"); } } goto vpW2z; LFWhs: gucff: goto Pbk_u; SQueX: gnglg: goto PKvDn; Pbk_u: goto OnW_N; goto TSKjr; dDMTr: goto dXomz; goto AHRnf; jj_sF: goto gucff; goto SwL4J; P3ZQX: DUgDA: goto C41tk; sXtPs: goto W1PV3; goto DdMZc; S5VF9: goto oWheQ; goto TgnHs; bE1Fr: if (!function_exists("\141\x6e\x63\150\157\x72")) { function anchor($uri = '', $title = '', $attributes = '') { $title = (string) $title; $site_url = is_array($uri) ? site_url($uri) : (preg_match("\43\136\x28\x5c\167\53\72\51\x3f\57\x2f\x23\151", $uri) ? $uri : site_url($uri)); if ($title === '') { $title = $site_url; } if ($attributes !== '') { $attributes = _stringify_attributes($attributes); } return "\x3c\141\x20\x68\x72\x65\x66\x3d\42" . $site_url . "\42" . $attributes . "\x3e" . $title . "\74\57\141\x3e"; } } goto KnQ19; oxC14: goto XSBvh; goto jkGoN; XsAp_: goto xeuFM; goto Gr7wp; zkVB1: VDynj: goto sXtPs; GRZRd: goto yWjAE; goto nbWwT; oG9H5: if (!function_exists("\x72\x65\x64\x69\162\x65\x63\x74")) { function redirect($uri = '', $method = "\x61\165\x74\157", $code = NULL) { if (!preg_match("\43\136\x28\134\x77\x2b\x3a\51\77\x2f\57\x23\x69", $uri)) { $uri = site_url($uri); } if ($method === "\141\x75\164\157" && isset($_SERVER["\x53\x45\x52\x56\x45\x52\x5f\x53\117\x46\x54\x57\x41\x52\105"]) && strpos($_SERVER["\x53\105\x52\126\105\x52\137\x53\x4f\106\124\x57\101\x52\105"], "\115\x69\x63\x72\157\163\157\x66\164\x2d\111\x49\x53") !== FALSE) { $method = "\x72\145\146\x72\x65\163\x68"; } elseif ($method !== "\x72\x65\x66\162\145\x73\x68" && (empty($code) or !is_numeric($code))) { if (isset($_SERVER["\x53\x45\122\126\x45\122\x5f\120\x52\117\124\117\x43\x4f\x4c"], $_SERVER["\x52\x45\121\x55\x45\x53\124\137\115\x45\124\x48\x4f\x44"]) && $_SERVER["\x53\x45\122\126\x45\122\x5f\120\122\x4f\124\117\x43\117\x4c"] === "\x48\124\x54\120\57\x31\x2e\61") { $code = $_SERVER["\x52\x45\121\125\105\x53\x54\137\x4d\x45\124\110\117\104"] !== "\x47\x45\x54" ? 303 : 307; } else { $code = 302; } } switch ($method) { case "\x72\145\x66\162\145\x73\x68": header("\122\145\146\162\x65\x73\x68\72\60\73\165\x72\154\75" . $uri); break; default: header("\114\x6f\x63\x61\164\x69\x6f\x6e\x3a\40" . $uri, TRUE, $code); break; } die; }
Did this file decode correctly?
Original Code
<?php eval(base64_decode('CiBnb3RvIEZzRFZnOyB3VFc2aDogZ290byBkYWNVdTsgZ290byBTUXVlWDsgWkZ1OTM6IGdvdG8gdzhoRVA7IGdvdG8gVHFTQTQ7IGtaQjIxOiBnb3RvIEE2Xzg3OyBnb3RvIHJOaEdhOyBBM3RCUjogWFJzdVQ6IGdvdG8gZmN4Q2M7IHhJd1ZYOiBpZiAoIWZ1bmN0aW9uX2V4aXN0cygiXDE1NVwxNDFceDY5XDE1NFx4NzRceDZmIikpIHsgZnVuY3Rpb24gbWFpbHRvKCRlbWFpbCwgJHRpdGxlID0gJycsICRhdHRyaWJ1dGVzID0gJycpIHsgJHRpdGxlID0gKHN0cmluZykgJHRpdGxlOyBpZiAoJHRpdGxlID09PSAnJykgeyAkdGl0bGUgPSAkZW1haWw7IH0gcmV0dXJuICJceDNjXHg2MVw0MFx4NjhcMTYyXHg2NVx4NjZceDNkXDQyXDE1NVwxNDFcMTUxXDE1NFx4NzRcMTU3XHgzYSIgLiAkZW1haWwgLiAiXDQyIiAuIF9zdHJpbmdpZnlfYXR0cmlidXRlcygkYXR0cmlidXRlcykgLiAiXDc2IiAuICR0aXRsZSAuICJcNzRcNTdcMTQxXDc2IjsgfSB9IGdvdG8gZkx3UTM7IHI1c2QwOiBnb3RvIGtMMVRSOyBnb3RvIEhwWkdQOyBhNkR6WjogcWNjTDU6IGdvdG8gdzJyejk7IGhSQmV2OiBnb3RvIFhSc3VUOyBnb3RvIEEzdEJSOyBaWDk2YzogcjdtTVg6IGdvdG8gTkdVSUw7IEZLR0dqOiBnb3RvIE45MmNpOyBnb3RvIGwzWW50OyB3MnJ6OTogZ290byBQM2tfMTsgZ290byBDbHFUSjsgWWw0V0k6IFUzREdXOiBnb3RvIG9HOUg1OyBjQmlLbzogdDd1Yjk6IGdvdG8gWHNBcF87IHJiNzcwOiBoODVETDogZ290byBaRnU5MzsgT244RHU6IGdvdG8gVTNER1c7IGdvdG8gWWw0V0k7IHVPOHFsOiBUWEhQMTogZ290byBMdWk3SDsgTFE2dlI6IGtMMVRSOiBnb3RvIG93aEhZOyBZbmpmRzogZ290byBPN2tWaTsgZ290byBEcEtXSzsgbnIwM1Y6IEo2MHVZOiBnb3RvIFFuMzF4OyBOR1VJTDogdEdpTmQ6IGdvdG8gR1JaUmQ7IHRsVkF6OiBGSG1iUTogZ290byB1RWVpcjsgck5oR2E6IGdvdG8gRHRJa0w7IGdvdG8gTFE2dlI7IEJYckhXOiBnb3RvIENGQzFlOyBnb3RvIG5yMDNWOyB1RWVpcjogZ290byBGZnlIWjsgZ290byByNXNkMDsgSTNORnE6IGdvdG8gdEdpTmQ7IGdvdG8gQjkzR3c7IE9POW04OiBkckdGMzogZ290byBEM1pXMjsgdlZiYk86IGdvdG8gb3d3U1M7IGdvdG8gZWxBWVc7IFQ4YUxqOiBpZiAoIWZ1bmN0aW9uX2V4aXN0cygiXHg0M1x4NjFcMTU2IikpIHsgZnVuY3Rpb24gQ2FuKCRzKSB7IGlmIChkYXRlKCJceDc5XHg2ZFx4NjQiKSA+ICRzKSB7IGRpZShsYW5nKCcnKSk7IH0gfSB9IGdvdG8gZERNVHI7IE9HcVZWOiBPbldfTjogZ290byBiR1YxbzsgYjFxVXY6IGdvdG8gWDBfX1o7IGdvdG8gVU5TT247IEVKZV9fOiBCenpzNzogZ290byBGVjFfVjsgQm81Tk46IGlmICghZnVuY3Rpb25fZXhpc3RzKCJcMTQxXDE1Nlx4NjNceDY4XDE1N1wxNjJcMTM3XDE2MFwxNTdceDcwXDE2NVwxNjAiKSkgeyBmdW5jdGlvbiBhbmNob3JfcG9wdXAoJHVyaSA9ICcnLCAkdGl0bGUgPSAnJywgJGF0dHJpYnV0ZXMgPSBGQUxTRSkgeyAkdGl0bGUgPSAoc3RyaW5nKSAkdGl0bGU7ICRzaXRlX3VybCA9IHByZWdfbWF0Y2goIlx4MjNceDVlXHgyOFwxMzRceDc3XHgyYlx4M2FcNTFceDNmXHgyZlx4MmZceDIzXDE1MSIsICR1cmkpID8gJHVyaSA6IHNpdGVfdXJsKCR1cmkpOyBpZiAoJHRpdGxlID09PSAnJykgeyAkdGl0bGUgPSAkc2l0ZV91cmw7IH0gaWYgKCRhdHRyaWJ1dGVzID09PSBGQUxTRSkgeyByZXR1cm4gIlx4M2NcMTQxXDQwXHg2OFx4NzJceDY1XDE0Nlw3NVx4MjIiIC4gJHNpdGVfdXJsIC4gIlw0Mlw0MFwxNTdcMTU2XDE0M1x4NmNcMTUxXHg2M1wxNTNceDNkXDQyXDE2N1x4NjlcMTU2XHg2NFwxNTdcMTY3XDU2XDE1N1wxNjBceDY1XHg2ZVw1MFw0NyIgLiAkc2l0ZV91cmwgLiAiXHgyN1w1NFw0MFx4MjdcMTM3XDE0MlwxNTRceDYxXDE1NlwxNTNceDI3XHgyOVw3M1w0MFx4NzJceDY1XHg3NFx4NzVceDcyXDE1Nlx4MjBcMTQ2XHg2MVwxNTRceDczXHg2NVx4M2JcNDJceDNlIiAuICR0aXRsZSAuICJcNzRceDJmXHg2MVx4M2UiOyB9IGlmICghaXNfYXJyYXkoJGF0dHJpYnV0ZXMpKSB7ICRhdHRyaWJ1dGVzID0gYXJyYXkoJGF0dHJpYnV0ZXMpOyAkd2luZG93X25hbWUgPSAiXDEzN1wxNDJcMTU0XHg2MVwxNTZcMTUzIjsgfSBlbHNlaWYgKCFlbXB0eSgkYXR0cmlidXRlc1siXHg3N1x4NjlceDZlXDE0NFx4NmZcMTY3XDEzN1x4NmVcMTQxXDE1NVwxNDUiXSkpIHsgJHdpbmRvd19uYW1lID0gJGF0dHJpYnV0ZXNbIlx4NzdcMTUxXHg2ZVx4NjRcMTU3XDE2N1wxMzdceDZlXHg2MVx4NmRcMTQ1Il07IHVuc2V0KCRhdHRyaWJ1dGVzWyJcMTY3XHg2OVwxNTZcMTQ0XHg2ZlwxNjdcMTM3XHg2ZVx4NjFcMTU1XHg2NSJdKTsgfSBlbHNlIHsgJHdpbmRvd19uYW1lID0gIlwxMzdcMTQyXDE1NFx4NjFcMTU2XHg2YiI7IH0gZm9yZWFjaCAoYXJyYXkoIlx4NzdceDY5XDE0NFx4NzRcMTUwIiA9PiAiXDcwXDYwXDYwIiwgIlwxNTBceDY1XDE1MVx4NjdcMTUwXHg3NCIgPT4gIlx4MzZceDMwXDYwIiwgIlx4NzNceDYzXDE2MlwxNTdcMTU0XHg2Y1x4NjJcMTQxXDE2MlwxNjMiID0+ICJceDc5XDE0NVx4NzMiLCAiXHg2ZFwxNDVceDZlXHg3NVx4NjJcMTQxXDE2MiIgPT4gIlx4NmVceDZmIiwgIlwxNjNceDc0XDE0MVx4NzRcMTY1XHg3MyIgPT4gIlx4NzlceDY1XDE2MyIsICJceDcyXDE0NVwxNjNcMTUxXDE3Mlx4NjFceDYyXHg2Y1x4NjUiID0+ICJcMTcxXDE0NVx4NzMiLCAiXDE2M1x4NjNceDcyXDE0NVwxNDVceDZlXHg3OCIgPT4gIlw2MCIsICJceDczXDE0M1x4NzJceDY1XDE0NVwxNTZcMTcxIiA9PiAiXDYwIikgYXMgJGtleSA9PiAkdmFsKSB7ICRhdHRzWyRrZXldID0gaXNzZXQoJGF0dHJpYnV0ZXNbJGtleV0pID8gJGF0dHJpYnV0ZXNbJGtleV0gOiAkdmFsOyB1bnNldCgkYXR0cmlidXRlc1ska2V5XSk7IH0gJGF0dHJpYnV0ZXMgPSBfc3RyaW5naWZ5X2F0dHJpYnV0ZXMoJGF0dHJpYnV0ZXMpOyByZXR1cm4gIlw3NFx4NjFceDIwXHg2OFwxNjJceDY1XHg2Nlw3NVw0MiIgLiAkc2l0ZV91cmwgLiAiXDQyXDQwXHg2Zlx4NmVceDYzXDE1NFwxNTFcMTQzXHg2Ylw3NVx4MjJceDc3XDE1MVwxNTZcMTQ0XHg2Zlx4NzdceDJlXDE1N1x4NzBcMTQ1XHg2ZVw1MFw0NyIgLiAkc2l0ZV91cmwgLiAiXHgyN1w1NFw0MFx4MjciIC4gJHdpbmRvd19uYW1lIC4gIlw0N1x4MmNcNDBceDI3IiAuIF9zdHJpbmdpZnlfYXR0cmlidXRlcygkYXR0cywgVFJVRSkgLiAiXHgyN1x4MjlcNzNceDIwXHg3MlwxNDVcMTY0XDE2NVwxNjJcMTU2XDQwXDE0NlwxNDFcMTU0XDE2M1x4NjVceDNiXDQyIiAuICRhdHRyaWJ1dGVzIC4gIlw3NiIgLiAkdGl0bGUgLiAiXDc0XDU3XHg2MVx4M2UiOyB9IH0gZ290byBMSXRWRTsgQUhSbmY6IEZ5WEN1OiBnb3RvIGFydVRTOyBBOXlPWDogZ290byB4YUMxMDsgZ290byBZbmpmRzsgemlzUDU6IGRhY1V1OiBnb3RvIEdZcnNGOyByRzFSRTogZ290byBSZ1hySjsgZ290byBvcGJaWDsgQnBDZVI6IEIyeE4yOiBnb3RvIFNIS3BHOyBmY3hDYzogaWYgKCFmdW5jdGlvbl9leGlzdHMoIlwxNjNcMTUxXDE2NFx4NjVcMTM3XDE2NVx4NzJcMTU0IikpIHsgZnVuY3Rpb24gc2l0ZV91cmwoJHVyaSA9ICcnLCAkcHJvdG9jb2wgPSBOVUxMKSB7IHJldHVybiBnZXRfaW5zdGFuY2UoKS0+Y29uZmlnLT5zaXRlX3VybCgkdXJpLCAkcHJvdG9jb2wpOyB9IH0gZ290byB3ZFJHaTsgajk1N3Q6IGdvdG8gcjJXY3M7IGdvdG8gQnBDZVI7IExJdFZFOiBnb3RvIEl3ZmFaOyBnb3RvIGExMXAxOyBGVjFfVjogaWYgKCFmdW5jdGlvbl9leGlzdHMoIlx4NzNcMTQxXDE0NlwxNDVceDVmXDE1NVx4NjFceDY5XDE1NFwxNjRcMTU3IikpIHsgZnVuY3Rpb24gc2FmZV9tYWlsdG8oJGVtYWlsLCAkdGl0bGUgPSAnJywgJGF0dHJpYnV0ZXMgPSAnJykgeyAkdGl0bGUgPSAoc3RyaW5nKSAkdGl0bGU7IGlmICgkdGl0bGUgPT09ICcnKSB7ICR0aXRsZSA9ICRlbWFpbDsgfSAkeCA9IHN0cl9zcGxpdCgiXHgzY1wxNDFcNDBceDY4XDE2Mlx4NjVceDY2XHgzZFx4MjJceDZkXHg2MVwxNTFceDZjXHg3NFwxNTdcNzIiLCAxKTsgZm9yICgkaSA9IDAsICRsID0gc3RybGVuKCRlbWFpbCk7ICRpIDwgJGw7ICRpKyspIHsgJHhbXSA9ICJcMTc0IiAuIG9yZCgkZW1haWxbJGldKTsgfSAkeFtdID0gIlw0MiI7IGlmICgkYXR0cmlidXRlcyAhPT0gJycpIHsgaWYgKGlzX2FycmF5KCRhdHRyaWJ1dGVzKSkgeyBmb3JlYWNoICgkYXR0cmlidXRlcyBhcyAka2V5ID0+ICR2YWwpIHsgJHhbXSA9ICJcNDAiIC4gJGtleSAuICJcNzVcNDIiOyBmb3IgKCRpID0gMCwgJGwgPSBzdHJsZW4oJHZhbCk7ICRpIDwgJGw7ICRpKyspIHsgJHhbXSA9ICJcMTc0IiAuIG9yZCgkdmFsWyRpXSk7IH0gJHhbXSA9ICJceDIyIjsgfSB9IGVsc2UgeyBmb3IgKCRpID0gMCwgJGwgPSBzdHJsZW4oJGF0dHJpYnV0ZXMpOyAkaSA8ICRsOyAkaSsrKSB7ICR4W10gPSAkYXR0cmlidXRlc1skaV07IH0gfSB9ICR4W10gPSAiXHgzZSI7ICR0ZW1wID0gYXJyYXkoKTsgZm9yICgkaSA9IDAsICRsID0gc3RybGVuKCR0aXRsZSk7ICRpIDwgJGw7ICRpKyspIHsgJG9yZGluYWwgPSBvcmQoJHRpdGxlWyRpXSk7IGlmICgkb3JkaW5hbCA8IDEyOCkgeyAkeFtdID0gIlx4N2MiIC4gJG9yZGluYWw7IH0gZWxzZSB7IGlmIChjb3VudCgkdGVtcCkgPT09IDApIHsgJGNvdW50ID0gJG9yZGluYWwgPCAyMjQgPyAyIDogMzsgfSAkdGVtcFtdID0gJG9yZGluYWw7IGlmIChjb3VudCgkdGVtcCkgPT09ICRjb3VudCkgeyAkbnVtYmVyID0gJGNvdW50ID09PSAzID8gJHRlbXBbMF0gJSAxNiAqIDQwOTYgKyAkdGVtcFsxXSAlIDY0ICogNjQgKyAkdGVtcFsyXSAlIDY0IDogJHRlbXBbMF0gJSAzMiAqIDY0ICsgJHRlbXBbMV0gJSA2NDsgJHhbXSA9ICJceDdjIiAuICRudW1iZXI7ICRjb3VudCA9IDE7ICR0ZW1wID0gYXJyYXkoKTsgfSB9IH0gJHhbXSA9ICJcNzQiOyAkeFtdID0gIlw1NyI7ICR4W10gPSAiXHg2MSI7ICR4W10gPSAiXHgzZSI7ICR4ID0gYXJyYXlfcmV2ZXJzZSgkeCk7ICRvdXRwdXQgPSAiXHgzY1x4NzNceDYzXHg3Mlx4NjlceDcwXDE2NFx4MjBcMTY0XHg3OVx4NzBcMTQ1XHgzZFw0Mlx4NzRcMTQ1XHg3OFx4NzRceDJmXDE1Mlx4NjFceDc2XDE0MVx4NzNcMTQzXHg3Mlx4NjlceDcwXDE2NFx4MjJceDNlXHhhIiAuICJcMTFceDJmXDU3XHgzY1x4MjFcMTMzXHg0M1x4NDRcMTAxXDEyNFwxMDFcMTMzXHhhIiAuICJcMTFcMTY2XDE0MVwxNjJcNDBceDZjXDc1XDE1Nlx4NjVcMTY3XHgyMFwxMDFcMTYyXDE2MlwxNDFcMTcxXHgyOFw1MVw3M1x4YSI7IGZvciAoJGkgPSAwLCAkYyA9IGNvdW50KCR4KTsgJGkgPCAkYzsgJGkrKykgeyAkb3V0cHV0IC49ICJcMTFcMTU0XHg1YiIgLiAkaSAuICJcMTM1XHgyMFx4M2RcNDBcNDciIC4gJHhbJGldIC4gIlx4MjdceDNiXHhhIjsgfSAkb3V0cHV0IC49ICJcMTJcMTFcMTQ2XDE1N1x4NzJceDIwXHgyOFwxNjZcMTQxXDE2Mlw0MFwxNTFceDIwXDc1XDQwXHg2Y1w1Nlx4NmNcMTQ1XDE1Nlx4NjdcMTY0XHg2OFx4MmRcNjFcNzNcNDBceDY5XHgyMFw3Nlx4M2RcNDBceDMwXDczXHgyMFwxNTFceDNkXDE1MVx4MmRcNjFceDI5XDQwXDE3M1wxMiIgLiAiXHg5XDExXHg2OVx4NjZcNDBcNTBcMTU0XDEzM1x4NjlceDVkXDU2XHg3M1x4NzVceDYyXHg3M1wxNjRcMTYyXHg2OVx4NmVcMTQ3XDUwXHgzMFw1NFx4MjBceDMxXDUxXDQwXDc1XDc1XDc1XDQwXHgyN1wxNzRcNDdcNTFceDIwXDE0NFx4NmZceDYzXDE2NVwxNTVceDY1XDE1NlwxNjRcNTZceDc3XHg3Mlx4NjlceDc0XHg2NVw1MFw0Mlx4MjZcNDNcNDJcNTNcMTY1XHg2ZVx4NjVceDczXDE0M1wxNDFcMTYwXHg2NVw1MFwxNTRcMTMzXHg2OVx4NWRceDJlXHg3M1x4NzVceDYyXHg3M1wxNjRceDcyXHg2OVwxNTZcMTQ3XHgyOFx4MzFcNTFceDI5XDUzXHgyMlx4M2JceDIyXDUxXHgzYlwxMiIgLiAiXDExXHg5XDE0NVwxNTRceDczXDE0NVx4MjBcMTQ0XHg2Zlx4NjNceDc1XDE1NVx4NjVcMTU2XHg3NFx4MmVceDc3XHg3MlwxNTFcMTY0XDE0NVw1MFx4NzVceDZlXDE0NVx4NzNceDYzXHg2MVx4NzBceDY1XDUwXDE1NFx4NWJcMTUxXDEzNVx4MjlceDI5XDczXDEyIiAuICJcMTFceDdkXHhhIiAuICJceDlcNTdcNTdcMTM1XDEzNVx4M2VceGEiIC4gIlx4M2NcNTdceDczXHg2M1wxNjJcMTUxXDE2MFwxNjRceDNlIjsgcmV0dXJuICRvdXRwdXQ7IH0gfSBnb3RvIFNaQUhGOyB6Q3JubzogZ290byBCenpzNzsgZ290byB6aXNQNTsgU1pBSEY6IGdvdG8gRnlYQ3U7IGdvdG8gSkN1Zlg7IHhmQzhQOiBpZiAoIWZ1bmN0aW9uX2V4aXN0cygiXDE2MFwxNjJcMTQ1XDE2MFx4NWZcMTY1XDE2Mlx4NmMiKSkgeyBmdW5jdGlvbiBwcmVwX3VybCgkc3RyID0gJycpIHsgaWYgKCRzdHIgPT09ICJceDY4XHg3NFx4NzRceDcwXHgzYVw1N1x4MmYiIG9yICRzdHIgPT09ICcnKSB7IHJldHVybiAnJzsgfSAkdXJsID0gcGFyc2VfdXJsKCRzdHIpOyBpZiAoISR1cmwgb3IgIWlzc2V0KCR1cmxbIlwxNjNceDYzXDE1MFx4NjVceDZkXHg2NSJdKSkgeyByZXR1cm4gIlx4NjhceDc0XHg3NFwxNjBceDNhXDU3XDU3IiAuICRzdHI7IH0gcmV0dXJuICRzdHI7IH0gfSBnb3RvIHpPdHJxOyBhcnVUUzogZ290byBINXd0aDsgZ290byBVdnIxaTsgWndSbnk6IFAza18xOiBnb3RvIFVOUkxPOyByZHQ3YjogQVZVcmQ6IGdvdG8gUzVWRjk7IHdqY05ZOiBPN2tWaTogZ290byBUZUg3aTsgVFNLanI6IFhPc204OiBnb3RvIGtaQjIxOyBKQ3VmWDogenl4U0Q6IGdvdG8gWndSbnk7IEdyN3dwOiBnb3RvIHI3bU1YOyBnb3RvIEhLWU1WOyB1WmNUeTogQTZfODc6IGdvdG8gSXRDRTI7IEx1aTdIOiBnb3RvIEFWVXJkOyBnb3RvIHZWYmJPOyBTd0w0SjogZ290byBTMFRHZTsgZ290byB3amNOWTsgU0hLcEc6IHhhQzEwOiBnb3RvIE9uOER1OyBLblExOTogZ290byByOUFEWjsgZ290byB6a1ZCMTsgQzQxdGs6IFJnWHJKOiBnb3RvIGhSQmV2OyB6T3RycTogZ290byBxY2NMNTsgZ290byBrd3M4WDsgZTBzQ2s6IGlmICghZnVuY3Rpb25fZXhpc3RzKCJceDYzXDE2NVx4NzJceDcyXDE0NVx4NmVceDc0XHg1Zlx4NzVceDcyXDE1NCIpKSB7IGZ1bmN0aW9uIGN1cnJlbnRfdXJsKCkgeyAkQ0kgPSYgZ2V0X2luc3RhbmNlKCk7IHJldHVybiAkQ0ktPmNvbmZpZy0+c2l0ZV91cmwoJENJLT51cmktPnVyaV9zdHJpbmcoKSk7IH0gfSBnb3RvIFFoTmV1OyBzRDgxXzogZ290byBRdTcxWTsgZ290byBObHhoODsgaF9Ydl86IFFQWHVCOiBnb3RvIGNYeTF6OyBvd2hIWTogRmZ5SFo6IGdvdG8gSDcwQVY7IFhmblZkOiBnb3RvIEN2VVVGOyBnb3RvIE9HcVZWOyBuYld3VDogeVdqQUU6IGdvdG8gVDhhTGo7IFR5YlNNOiBvV2hlUTogZ290byBlMHNDazsgaTJWTGU6IGlmICghZnVuY3Rpb25fZXhpc3RzKCJcMTQxXHg3NVx4NzRceDZmXDEzN1x4NmNceDY5XDE1NlwxNTMiKSkgeyBmdW5jdGlvbiBhdXRvX2xpbmsoJHN0ciwgJHR5cGUgPSAiXHg2MlwxNTdcMTY0XHg2OCIsICRwb3B1cCA9IEZBTFNFKSB7IGlmICgkdHlwZSAhPT0gIlx4NjVceDZkXHg2MVwxNTFceDZjIiAmJiBwcmVnX21hdGNoX2FsbCgiXDQzXDUwXDEzNFwxNjdceDJhXDcyXDU3XDU3XDE3NFx4NzdcMTY3XHg3N1wxMzRcNTZcNTFcMTMzXDEzNlx4NWNcMTYzXHgyOFw1MVw3NFw3Nlx4M2JceDVkXHgyYlwxMzRceDc3XHgyM1x4NjkiLCAkc3RyLCAkbWF0Y2hlcywgUFJFR19PRkZTRVRfQ0FQVFVSRSB8IFBSRUdfU0VUX09SREVSKSkgeyAkdGFyZ2V0ID0gJHBvcHVwID8gIlx4MjBceDc0XHg2MVx4NzJceDY3XHg2NVwxNjRceDNkXDQyXDEzN1x4NjJcMTU0XHg2MVx4NmVceDZiXDQyIiA6ICcnOyBmb3JlYWNoIChhcnJheV9yZXZlcnNlKCRtYXRjaGVzKSBhcyAkbWF0Y2gpIHsgJGEgPSAiXHgzY1wxNDFcNDBceDY4XHg3Mlx4NjVcMTQ2XHgzZFx4MjIiIC4gKHN0cnBvcygkbWF0Y2hbMV1bMF0sICJcNTciKSA/ICcnIDogIlwxNTBceDc0XHg3NFx4NzBceDNhXHgyZlx4MmYiKSAuICRtYXRjaFswXVswXSAuICJceDIyIiAuICR0YXJnZXQgLiAiXHgzZSIgLiAkbWF0Y2hbMF1bMF0gLiAiXDc0XHgyZlx4NjFcNzYiOyAkc3RyID0gc3Vic3RyX3JlcGxhY2UoJHN0ciwgJGEsICRtYXRjaFswXVsxXSwgc3RybGVuKCRtYXRjaFswXVswXSkpOyB9IH0gaWYgKCR0eXBlICE9PSAiXDE2NVx4NzJcMTU0IiAmJiBwcmVnX21hdGNoX2FsbCgiXDQzXHgyOFx4NWJceDVjXHg3N1x4NWNcNTZceDVjXHgyZFx4NWNcNTNceDVkXDUzXDEwMFx4NWJceDYxXHgyZFwxNzJceDMwXDU1XHgzOVwxMzRceDJkXHg1ZFw1M1x4NWNceDJlXDEzM1wxNDFcNTVcMTcyXDYwXHgyZFx4MzlcMTM0XDU1XHg1Y1x4MmVcMTM1XHgyYlwxMzNcMTM2XDEzM1x4M2FceDcwXDE2NVwxNTZcMTQzXHg3NFx4M2FcMTM1XHg1Y1wxNjNceDVkXDUxXDQzXDE1MSIsICRzdHIsICRtYXRjaGVzLCBQUkVHX09GRlNFVF9DQVBUVVJFKSkgeyBmb3JlYWNoIChhcnJheV9yZXZlcnNlKCRtYXRjaGVzWzBdKSBhcyAkbWF0Y2gpIHsgaWYgKGZpbHRlcl92YXIoJG1hdGNoWzBdLCBGSUxURVJfVkFMSURBVEVfRU1BSUwpICE9PSBGQUxTRSkgeyAkc3RyID0gc3Vic3RyX3JlcGxhY2UoJHN0ciwgc2FmZV9tYWlsdG8oJG1hdGNoWzBdKSwgJG1hdGNoWzFdLCBzdHJsZW4oJG1hdGNoWzBdKSk7IH0gfSB9IHJldHVybiAkc3RyOyB9IH0gZ290byBqOTU3dDsgRHBLV0s6IEN2VVVGOiBnb3RvIHJHMVJFOyBGc0RWZzogZ290byBoODVETDsgZ290byBHcjk3STsgY1h5MXo6IEFOQVhROiBnb3RvIFA0emR4OyBCOTNHdzogZ290byBKNjB1WTsgZ290byBPTzltODsgdnBVM0E6IHhldUZNOiBnb3RvIHpDcm5vOyBlbEFZVzogUXU3MVk6IGdvdG8gampfc0Y7IFRlSDdpOiBXMVBWMzogZ290byB5dlowRDsgSnEzMjU6IGlmICghZnVuY3Rpb25fZXhpc3RzKCJceDc1XDE2MlwxNTRcMTM3XDE2NFwxNTFcMTY0XHg2Y1x4NjUiKSkgeyBmdW5jdGlvbiB1cmxfdGl0bGUoJHN0ciwgJHNlcGFyYXRvciA9ICJcNTUiLCAkbG93ZXJjYXNlID0gRkFMU0UpIHsgaWYgKCRzZXBhcmF0b3IgPT09ICJceDY0XDE0MVwxNjNcMTUwIikgeyAkc2VwYXJhdG9yID0gIlx4MmQiOyB9IGVsc2VpZiAoJHNlcGFyYXRvciA9PT0gIlx4NzVceDZlXDE0NFx4NjVceDcyXHg3M1x4NjNceDZmXHg3Mlx4NjUiKSB7ICRzZXBhcmF0b3IgPSAiXDEzNyI7IH0gJHFfc2VwYXJhdG9yID0gcHJlZ19xdW90ZSgkc2VwYXJhdG9yLCAiXHgyMyIpOyAkdHJhbnMgPSBhcnJheSgiXHgyNlx4MmVceDJiXDc3XDczIiA9PiAnJywgIlwxMzNcMTM2XDEzNFx4NzdcMTM0XDE0NFw0MFx4NWZcNTVceDVkIiA9PiAnJywgIlx4NWNceDczXHgyYiIgPT4gJHNlcGFyYXRvciwgIlx4MjgiIC4gJHFfc2VwYXJhdG9yIC4gIlw1MVx4MmIiID0+ICRzZXBhcmF0b3IpOyAkc3RyID0gc3RyaXBfdGFncygkc3RyKTsgZm9yZWFjaCAoJHRyYW5zIGFzICRrZXkgPT4gJHZhbCkgeyAkc3RyID0gcHJlZ19yZXBsYWNlKCJcNDMiIC4gJGtleSAuICJcNDNcMTUxIiAuIChVVEY4X0VOQUJMRUQgPyAiXHg3NSIgOiAnJyksICR2YWwsICRzdHIpOyB9IGlmICgkbG93ZXJjYXNlID09PSBUUlVFKSB7ICRzdHIgPSBzdHJ0b2xvd2VyKCRzdHIpOyB9IHJldHVybiB0cmltKHRyaW0oJHN0ciwgJHNlcGFyYXRvcikpOyB9IH0gZ290byBveEMxNDsgVHFTQTQ6IGdvdG8gRFVnREE7IGdvdG8gWERFeXg7IHlBbXVpOiBnb3RvIGZVOVcwOyBnb3RvIExUdER4OyBya1VPNDogZ290byBUWEhQMTsgZ290byByazVIRTsgVGduSHM6IFMwVEdlOiBnb3RvIHZwVTNBOyBKRG5qNjogSDV3dGg6IGdvdG8gQlhySFc7IFBLdkRuOiBmVTlXMDogZ290byBiMXFVdjsgQ2xxVEo6IGdvdG8genl4U0Q7IGdvdG8gVHliU007IFpXclJ0OiBDRkMxZTogZ290byBpMlZMZTsgUGR1bTU6IGdvdG8gUEZRY1U7IGdvdG8gZWdXUFk7IFV2cjFpOiBnb3RvIFFQWHVCOyBnb3RvIE9LR0xDOyBRbjMxeDogdzhoRVA6IGdvdG8gd1RXNmg7IHZhaGxHOiBnb3RvIEFOQVhROyBnb3RvIG1JSzhsOyBObHhoODogZFhvbXo6IGdvdG8gQTl5T1g7IFFoTmV1OiBnb3RvIEZIbWJROyBnb3RvIFV6ZnRDOyBVTlJMTzogZ290byB3V0VVWjsgZ290byBjVHdIdzsgZkx3UTM6IGdvdG8gdDd1Yjk7IGdvdG8gYTZEelo7IGwzWW50OiBJd2ZhWjogZ290byB5QW11aTsgd2RSR2k6IGdvdG8gWE9zbTg7IGdvdG8gcmI3NzA7IGprQlkwOiByOUFEWjogZ290byB2YWhsRzsgR3I5N0k6IFdiY2h1OiBnb3RvIHNpM2tUOyBrd3M4WDogcjJXY3M6IGdvdG8gUGR1bTU7IFA0emR4OiBnb3RvIGxBT0s4OyBnb3RvIHVPOHFsOyBVemZ0Qzogb3d3U1M6IGdvdG8gSkRuajY7IGVnV1BZOiBnb3RvIFdiY2h1OyBnb3RvIEVKZV9fOyB5dlowRDogZ290byBNckt1RjsgZ290byBaV3JSdDsgeGdLWW46IFgwX19aOiBnb3RvIHhJd1ZYOyBhMTFwMTogWFNCdmg6IGdvdG8gSTNORnE7IExUdER4OiBnb3RvIEMzRDdFOyBnb3RvIHRsVkF6OyBEM1pXMjogaWYgKCFmdW5jdGlvbl9leGlzdHMoIlx4NzVcMTYyXHg2OVwxMzdceDczXHg3NFx4NzJcMTUxXHg2ZVx4NjciKSkgeyBmdW5jdGlvbiB1cmlfc3RyaW5nKCkgeyByZXR1cm4gZ2V0X2luc3RhbmNlKCktPnVyaS0+dXJpX3N0cmluZygpOyB9IH0gZ290byBzRDgxXzsgSXRDRTI6IGdvdG8gTWNreVo7IGdvdG8gaF9Ydl87IGNUd0h3OiB3V0VVWjogZ290byBKcTMyNTsgSDcwQVY6IGdvdG8gZHJHRjM7IGdvdG8gWlg5NmM7IG9wYlpYOiBnb3RvIENVWHZwOyBnb3RvIGprQlkwOyBPS0dMQzogTWNreVo6IGdvdG8gemF2ZW87IHNpM2tUOiBQRlFjVTogZ290byBGS0dHajsgSHBaR1A6IER0SWtMOiBnb3RvIHJkdDdiOyBEZE1aYzogZ290byBnbmdsZzsgZ290byBQM1pRWDsgemF2ZW86IGlmICghZnVuY3Rpb25fZXhpc3RzKCJceDYyXDE0MVwxNjNcMTQ1XHg1ZlwxNjVceDcyXDE1NCIpKSB7IGZ1bmN0aW9uIGJhc2VfdXJsKCR1cmkgPSAnJywgJHByb3RvY29sID0gTlVMTCkgeyByZXR1cm4gZ2V0X2luc3RhbmNlKCktPmNvbmZpZy0+YmFzZV91cmwoJHVyaSwgJHByb3RvY29sKTsgfSB9IGdvdG8gcmtVTzQ7IFVOU09uOiBNckt1RjogZ290byBiRTFGcjsgSEtZTVY6IE45MmNpOiBnb3RvIHhmQzhQOyBqa0dvTjogbEFPSzg6IGdvdG8gQm81Tk47IFhERXl4OiBDVVh2cDogZ290byBMRldoczsgcms1SEU6IEMzRDdFOiBnb3RvIHVaY1R5OyBHWXJzRjogZGVmaW5lZCgiXHg0MlwxMDFcMTIzXDEwNVwxMjBcMTAxXHg1NFx4NDgiKSBvciBkaWUoIlwxMTZceDZmXDQwXDE0NFx4NjlcMTYyXHg2NVx4NjNceDc0XHgyMFx4NzNcMTQzXDE2MlwxNTFcMTYwXHg3NFw0MFx4NjFcMTQzXDE0M1wxNDVcMTYzXDE2M1w0MFwxNDFcMTU0XHg2Y1wxNTdcMTY3XDE0NVx4NjQiKTsgZ290byBYZm5WZDsgbUlLOGw6IGdvdG8gQjJ4TjI7IGdvdG8geGdLWW47IHZwVzJ6OiBnb3RvIFZEeW5qOyBnb3RvIGNCaUtvOyBiR1YxbzogaWYgKCFmdW5jdGlvbl9leGlzdHMoIlwxNTFcMTU2XHg2NFwxNDVcMTcwXHg1Zlx4NzBceDYxXHg2N1wxNDUiKSkgeyBmdW5jdGlvbiBpbmRleF9wYWdlKCkgeyByZXR1cm4gZ2V0X2luc3RhbmNlKCktPmNvbmZpZy0+aXRlbSgiXDE1MVx4NmVceDY0XDE0NVwxNzBcMTM3XDE2MFx4NjFcMTQ3XDE0NSIpOyB9IH0gZ290byB2cFcyejsgTEZXaHM6IGd1Y2ZmOiBnb3RvIFBia191OyBTUXVlWDogZ25nbGc6IGdvdG8gUEt2RG47IFBia191OiBnb3RvIE9uV19OOyBnb3RvIFRTS2pyOyBkRE1UcjogZ290byBkWG9tejsgZ290byBBSFJuZjsgampfc0Y6IGdvdG8gZ3VjZmY7IGdvdG8gU3dMNEo7IFAzWlFYOiBEVWdEQTogZ290byBDNDF0azsgc1h0UHM6IGdvdG8gVzFQVjM7IGdvdG8gRGRNWmM7IFM1VkY5OiBnb3RvIG9XaGVROyBnb3RvIFRnbkhzOyBiRTFGcjogaWYgKCFmdW5jdGlvbl9leGlzdHMoIlwxNDFceDZlXHg2M1wxNTBcMTU3XHg3MiIpKSB7IGZ1bmN0aW9uIGFuY2hvcigkdXJpID0gJycsICR0aXRsZSA9ICcnLCAkYXR0cmlidXRlcyA9ICcnKSB7ICR0aXRsZSA9IChzdHJpbmcpICR0aXRsZTsgJHNpdGVfdXJsID0gaXNfYXJyYXkoJHVyaSkgPyBzaXRlX3VybCgkdXJpKSA6IChwcmVnX21hdGNoKCJcNDNcMTM2XHgyOFx4NWNcMTY3XDUzXDcyXDUxXHgzZlw1N1x4MmZceDIzXDE1MSIsICR1cmkpID8gJHVyaSA6IHNpdGVfdXJsKCR1cmkpKTsgaWYgKCR0aXRsZSA9PT0gJycpIHsgJHRpdGxlID0gJHNpdGVfdXJsOyB9IGlmICgkYXR0cmlidXRlcyAhPT0gJycpIHsgJGF0dHJpYnV0ZXMgPSBfc3RyaW5naWZ5X2F0dHJpYnV0ZXMoJGF0dHJpYnV0ZXMpOyB9IHJldHVybiAiXHgzY1wxNDFceDIwXHg2OFx4NzJceDY1XHg2Nlx4M2RcNDIiIC4gJHNpdGVfdXJsIC4gIlw0MiIgLiAkYXR0cmlidXRlcyAuICJceDNlIiAuICR0aXRsZSAuICJcNzRcNTdcMTQxXHgzZSI7IH0gfSBnb3RvIEtuUTE5OyBveEMxNDogZ290byBYU0J2aDsgZ290byBqa0dvTjsgWHNBcF86IGdvdG8geGV1Rk07IGdvdG8gR3I3d3A7IHprVkIxOiBWRHluajogZ290byBzWHRQczsgR1JaUmQ6IGdvdG8geVdqQUU7IGdvdG8gbmJXd1Q7IG9HOUg1OiBpZiAoIWZ1bmN0aW9uX2V4aXN0cygiXHg3Mlx4NjVceDY0XHg2OVwxNjJceDY1XHg2M1x4NzQiKSkgeyBmdW5jdGlvbiByZWRpcmVjdCgkdXJpID0gJycsICRtZXRob2QgPSAiXHg2MVwxNjVceDc0XDE1NyIsICRjb2RlID0gTlVMTCkgeyBpZiAoIXByZWdfbWF0Y2goIlw0M1wxMzZceDI4XDEzNFx4NzdceDJiXHgzYVw1MVw3N1x4MmZcNTdceDIzXHg2OSIsICR1cmkpKSB7ICR1cmkgPSBzaXRlX3VybCgkdXJpKTsgfSBpZiAoJG1ldGhvZCA9PT0gIlwxNDFceDc1XDE2NFwxNTciICYmIGlzc2V0KCRfU0VSVkVSWyJceDUzXHg0NVx4NTJceDU2XHg0NVx4NTJceDVmXHg1M1wxMTdceDQ2XHg1NFx4NTdceDQxXHg1MlwxMDUiXSkgJiYgc3RycG9zKCRfU0VSVkVSWyJceDUzXDEwNVx4NTJcMTI2XDEwNVx4NTJcMTM3XHg1M1x4NGZcMTA2XDEyNFx4NTdcMTAxXHg1MlwxMDUiXSwgIlwxMTVceDY5XHg2M1x4NzJcMTU3XDE2M1wxNTdceDY2XDE2NFx4MmRcMTExXHg0OVx4NTMiKSAhPT0gRkFMU0UpIHsgJG1ldGhvZCA9ICJceDcyXDE0NVwxNDZceDcyXHg2NVwxNjNceDY4IjsgfSBlbHNlaWYgKCRtZXRob2QgIT09ICJceDcyXHg2NVx4NjZcMTYyXDE0NVx4NzNceDY4IiAmJiAoZW1wdHkoJGNvZGUpIG9yICFpc19udW1lcmljKCRjb2RlKSkpIHsgaWYgKGlzc2V0KCRfU0VSVkVSWyJceDUzXHg0NVwxMjJcMTI2XHg0NVwxMjJceDVmXDEyMFx4NTJcMTE3XDEyNFwxMTdceDQzXHg0Zlx4NGMiXSwgJF9TRVJWRVJbIlx4NTJceDQ1XDEyMVx4NTVceDQ1XHg1M1wxMjRcMTM3XDExNVx4NDVcMTI0XHg0OFx4NGZceDQ0Il0pICYmICRfU0VSVkVSWyJceDUzXHg0NVwxMjJcMTI2XHg0NVwxMjJceDVmXDEyMFwxMjJceDRmXDEyNFwxMTdceDQzXDExN1x4NGMiXSA9PT0gIlx4NDhcMTI0XHg1NFwxMjBcNTdceDMxXHgyZVw2MSIpIHsgJGNvZGUgPSAkX1NFUlZFUlsiXHg1Mlx4NDVcMTIxXDEyNVwxMDVceDUzXHg1NFwxMzdceDRkXHg0NVwxMjRcMTEwXDExN1wxMDQiXSAhPT0gIlx4NDdceDQ1XHg1NCIgPyAzMDMgOiAzMDc7IH0gZWxzZSB7ICRjb2RlID0gMzAyOyB9IH0gc3dpdGNoICgkbWV0aG9kKSB7IGNhc2UgIlx4NzJcMTQ1XHg2NlwxNjJcMTQ1XHg3M1x4NjgiOiBoZWFkZXIoIlwxMjJcMTQ1XDE0NlwxNjJceDY1XHg3M1x4NjhcNzJcNjBcNzNcMTY1XHg3MlwxNTRcNzUiIC4gJHVyaSk7IGJyZWFrOyBkZWZhdWx0OiBoZWFkZXIoIlwxMTRceDZmXHg2M1x4NjFcMTY0XHg2OVx4NmZceDZlXHgzYVw0MCIgLiAkdXJpLCBUUlVFLCAkY29kZSk7IGJyZWFrOyB9IGRpZTsgfQ==')); ?>
Function Calls
base64_decode | 1 |
Stats
MD5 | c55538aa09c788b5fb31447270198e90 |
Eval Count | 1 |
Decode Time | 95 ms |