$children) { if ($pattern == NULL || preg_match($pattern, $useragent)) { return $children == NULL || fiftyone_degrees_IsMatchPatterns($children, $useragent); } } return FALSE; } /** * Checks an array of regular expressions for at least one match of an empty array. * * @param array $segments * Array of patterns to check. * @param string $useragent * The useragent to compare the regular expressions against. * @return bool * TRUE if at least one pattern matches or the $segments array is empty, * otherwise FALSE. */ function fiftyone_degrees_IsMatchSegments($segments, $useragent) { // If there aren't any segments return TRUE. if ($segments == NULL) { return TRUE; } // There are segments and at least one of them has to match. foreach ($segments as $segment) { if (preg_match($segment, $useragent)) { return TRUE; } } return FALSE; } /** * Finds the handlers that are capable of determining results for the useragent provided. * * @param string $useragent * A useragent to find handlers for. * @return array * An array of handlers to try. */ function fiftyone_degrees_DetectHandlers($useragent) { $h = array(); if (fiftyone_degrees_CheckHandler( array('#(?i)bot|spider|crawler|slurp#' => NULL), NULL, $useragent, array('#(?i)bot|spider|crawler|slurp|[^\\s]+(?=bot|spider|crawler|slurp)[^\\s]+#', '#.+#'))) { $h[37] = 10; } if (fiftyone_degrees_CheckHandler( array('#W3C_Validator#' => NULL), NULL, $useragent, NULL)) { $h[95] = 10; } if (fiftyone_degrees_CheckHandler( array('#^Opera/#' => array('#Windows NT 6\\.0#' => array('#Windows NT 6\\.1#' => NULL))), array('#Opera Mini|Opera Mobi#' => NULL, '#MIDP|CLDC#' => NULL), $useragent, array('#(?<=Opera/)[\\d+.]+#', '#(?<=Version/)\\d+\\.\\d+#', '#(?<=\\()[^;]+#', '#(?<=Opera/\\d\\.\\d \\()[^;\\)]+#'))) { $h[119] = 10; } if (count($h) > 0) { return $h; } if (fiftyone_degrees_CheckHandler( array('#Android( |)2\\.2\\.1#' => NULL), NULL, $useragent, array('#(?<=;)([^;\\)]+)(?=Build/)#', '#(?<=\\w\\w(_|-)\\w\\w;)[^;\\)]+#', '#(?<=;\\sAndroid)[\\d\\s][^;\\)]+#', '#(?<=UCWEB)\\d+\\.\\d+|(?<=UCWEB/)\\d+\\.\\d+#', '#(?<=UC Browser)\\d+\\.\\d+#', '#(?<=UP\\.Browser)[\\d\\.]+#', '#(?<=Opera/)\\d+\\.\\d+|(?<=Opera )\\d+\\.\\d+#', '#(?<=Opera Mini/)\\d+\\.\\d+#', '#(?<=Opera Mobi/)\\d+\\.\\d+#', '#(?<=Version/)\\d+\\.\\d+#', '#(?<=Ninesky-android-mobile/)\\d+\\.\\d+#', '#(?<=CrMo/)\\d+#', '#(?<=Chrome/)\\d+#', '#(?<=AppleWebKit/)[\\d\\.\\+]+#', '#(?<=Mobile Safari/)[\\d\\.]+#', '#(?<=Flipboard/)\\d+\\.\\d+#', '#MQQBrowser/(\\d+\\.\\d|\\d+ )#', '#Maxthon#', '#UCBrowser/\\d+\\.\\d#', '#iBrowser/\\d+\\.\\d#', '#TeamStream#', '#Maxthon/\\d+\\.\\d#', '#Ninesky/\\d+\\.\\d#', '#OPR/\\d+\\.\\d+#'))) { $h[7] = 9; } if (fiftyone_degrees_CheckHandler( array('#Android( |)2\\.2\\.2#' => NULL), NULL, $useragent, array('#(?<=;)([^;\\)]+)(?=Build/)#', '#(?<=\\w\\w(_|-)\\w\\w;)[^;\\)]+#', '#(?<=;\\sAndroid)[\\d\\s][^;\\)]+#', '#(?<=UCWEB)\\d+\\.\\d+|(?<=UCWEB/)\\d+\\.\\d+#', '#(?<=UC Browser)\\d+\\.\\d+#', '#(?<=UP\\.Browser)[\\d\\.]+#', '#(?<=Opera/)\\d+\\.\\d+|(?<=Opera )\\d+\\.\\d+#', '#(?<=Opera Mini/)\\d+\\.\\d+#', '#(?<=Opera Mobi/)\\d+\\.\\d+#', '#(?<=Version/)\\d+\\.\\d+#', '#(?<=Ninesky-android-mobile/)\\d+\\.\\d+#', '#(?<=CrMo/)\\d+#', '#(?<=Chrome/)\\d+#', '#(?<=AppleWebKit/)[\\d\\.\\+]+#', '#(?<=Mobile Safari/)[\\d\\.]+#', '#(?<=Flipboard/)\\d+\\.\\d+#', '#MQQBrowser/\\d+\\.\\d#', '#UCBrowser/\\d+\\.\\d#', '#OPR/\\d+\\.\\d+#'))) { $h[8] = 9; } if (fiftyone_degrees_CheckHandler( array('#Android( |)2\\.2\\.3#' => NULL), NULL, $useragent, array('#(?<=;)([^;\\)]+)(?=Build/)#', '#(?<=\\w\\w(_|-)\\w\\w;)[^;\\)]+#', '#(?<=;\\sAndroid)[\\d\\s][^;\\)]+#', '#(?<=UCWEB)\\d+\\.\\d+|(?<=UCWEB/)\\d+\\.\\d+#', '#(?<=UC Browser)\\d+\\.\\d+#', '#(?<=UP\\.Browser)[\\d\\.]+#', '#(?<=Opera/)\\d+\\.\\d+|(?<=Opera )\\d+\\.\\d+#', '#(?<=Opera Mini/)\\d+\\.\\d+#', '#(?<=Opera Mobi/)\\d+\\.\\d+#', '#(?<=Version/)\\d+\\.\\d+#', '#(?<=Ninesky-android-mobile/)\\d+\\.\\d+#', '#(?<=CrMo/)\\d+#', '#(?<=Chrome/)\\d+#', '#(?<=AppleWebKit/)[\\d\\.\\+]+#', '#(?<=Mobile Safari/)[\\d\\.]+#', '#(?<=Flipboard/)\\d+\\.\\d+#', '#OPR/\\d+\\.\\d+#'))) { $h[9] = 9; } if (fiftyone_degrees_CheckHandler( array('#Android( |)2\\.3\\.1#' => NULL), NULL, $useragent, array('#(?<=;)([^;\\)]+)(?=Build/)#', '#(?<=\\w\\w(_|-)\\w\\w;)[^;\\)]+#', '#(?<=;\\sAndroid)[\\d\\s][^;\\)]+#', '#(?<=UCWEB)\\d+\\.\\d+|(?<=UCWEB/)\\d+\\.\\d+#', '#(?<=UC Browser)\\d+\\.\\d+#', '#(?<=UP\\.Browser)[\\d\\.]+#', '#(?<=Opera/)\\d+\\.\\d+|(?<=Opera )\\d+\\.\\d+#', '#(?<=Opera Mini/)\\d+\\.\\d+#', '#(?<=Opera Mobi/)\\d+\\.\\d+#', '#(?<=Version/)\\d+\\.\\d+#', '#(?<=Ninesky-android-mobile/)\\d+\\.\\d+#', '#(?<=CrMo/)\\d+#', '#(?<=Chrome/)\\d+#', '#(?<=AppleWebKit/)[\\d\\.\\+]+#', '#(?<=Mobile Safari/)[\\d\\.]+#', '#(?<=Flipboard/)\\d+\\.\\d+#', '#OPR/\\d+\\.\\d+#'))) { $h[11] = 9; } if (fiftyone_degrees_CheckHandler( array('#Android( |)2\\.3\\.2#' => NULL), NULL, $useragent, array('#(?<=;)([^;\\)]+)(?=Build/)#', '#(?<=\\w\\w(_|-)\\w\\w;)[^;\\)]+#', '#(?<=;\\sAndroid)[\\d\\s][^;\\)]+#', '#(?<=UCWEB)\\d+\\.\\d+|(?<=UCWEB/)\\d+\\.\\d+#', '#(?<=UC Browser)\\d+\\.\\d+#', '#(?<=UP\\.Browser)[\\d\\.]+#', '#(?<=Opera/)\\d+\\.\\d+|(?<=Opera )\\d+\\.\\d+#', '#(?<=Opera Mini/)\\d+\\.\\d+#', '#(?<=Opera Mobi/)\\d+\\.\\d+#', '#(?<=Version/)\\d+\\.\\d+#', '#(?<=Ninesky-android-mobile/)\\d+\\.\\d+#', '#(?<=CrMo/)\\d+#', '#(?<=Chrome/)\\d+#', '#(?<=AppleWebKit/)[\\d\\.\\+]+#', '#(?<=Mobile Safari/)[\\d\\.]+#', '#(?<=Flipboard/)\\d+\\.\\d+#', '#OPR/\\d+\\.\\d+#'))) { $h[12] = 9; } if (fiftyone_degrees_CheckHandler( array('#Android( |)2\\.3\\.3#' => NULL), NULL, $useragent, array('#(?<=;)([^;\\)]+)(?=Build/)#', '#(?<=\\w\\w(_|-)\\w\\w;)[^;\\)]+#', '#(?<=;\\sAndroid)[\\d\\s][^;\\)]+#', '#(?<=UCWEB)\\d+\\.\\d+|(?<=UCWEB/)\\d+\\.\\d+#', '#(?<=UC Browser)\\d+\\.\\d+#', '#(?<=UP\\.Browser)[\\d\\.]+#', '#(?<=Opera/)\\d+\\.\\d+|(?<=Opera )\\d+\\.\\d+#', '#(?<=Opera Mini/)\\d+\\.\\d+#', '#(?<=Opera Mobi/)\\d+\\.\\d+#', '#(?<=Version/)\\d+\\.\\d+#', '#(?<=Ninesky-android-mobile/)\\d+\\.\\d+#', '#(?<=CrMo/)\\d+#', '#(?<=Chrome/)\\d+#', '#(?<=AppleWebKit/)[\\d\\.\\+]+#', '#(?<=Mobile Safari/)[\\d\\.]+#', '#(?<=UCBrowser)\\d+\\.\\d+#', '#(?<=UCBrowser/)\\d+\\.\\d+#', '#(?<=Flipboard/)\\d+\\.\\d+#', '#TeamStream#', '#Maxthon/\\d+\\.\\d#', '#MQQBrowser/\\d+\\.\\d#', '#^(One|i)Browser/(\\d+|\\d+\\.\\d)#', '#Mobile Maxthon#', '#\\)Maxthon|Maxthon$#', '#Ninesky/\\d\\.\\d#', '#^YahooMobile/\\d+\\.\\d#', '#OPR/\\d+\\.\\d+#'))) { $h[13] = 9; } if (fiftyone_degrees_CheckHandler( array('#Android( |)2\\.3\\.4#' => NULL), NULL, $useragent, array('#(?<=;)([^;\\)]+)(?=Build/)#', '#(?<=\\w\\w(_|-)\\w\\w;)[^;\\)]+#', '#(?<=;\\sAndroid)[\\d\\s][^;\\)]+#', '#(?<=UCWEB)\\d+\\.\\d+|(?<=UCWEB/)\\d+\\.\\d+#', '#(?<=UC Browser)\\d+\\.\\d+#', '#(?<=UP\\.Browser)[\\d\\.]+#', '#(?<=Opera/)\\d+\\.\\d+|(?<=Opera )\\d+\\.\\d+#', '#(?<=Opera Mini/)\\d+\\.\\d+#', '#(?<=Opera Mobi/)\\d+\\.\\d+#', '#(?<=Version/)\\d+\\.\\d+#', '#(?<=Ninesky-android-mobile/)\\d+\\.\\d+#', '#(?<=CrMo/)\\d+#', '#(?<=Chrome/)\\d+#', '#(?<=AppleWebKit/)[\\d\\.\\+]+#', '#(?<=Mobile Safari/)[\\d\\.]+#', '#(?<=Flipboard/)\\d+\\.\\d+#', '#MQQBrowser/\\d+\\.\\d#', '#Maxthon/\\d+\\.\\d#', '#UCBrowser/\\d+\\.\\d#', '#Mobile Maxthon#', '#\\)Maxthon#', '#Cyanogen#', '#Ninesky/\\d+\\.\\d#', '#Maxthon$#', '#(One|i)Browser/\\d\\.\\d#', '#TeamStream#', '#OPR/\\d+\\.\\d+#'))) { $h[14] = 9; } if (fiftyone_degrees_CheckHandler( array('#Android( |)2\\.3\\.5#' => NULL), NULL, $useragent, array('#(?<=;)([^;\\)]+)(?=Build/)#', '#(?<=\\w\\w(_|-)\\w\\w;)[^;\\)]+#', '#(?<=;\\sAndroid)[\\d\\s][^;\\)]+#', '#(?<=UCWEB)\\d+\\.\\d+|(?<=UCWEB/)\\d+\\.\\d+#', '#(?<=UC Browser)\\d+\\.\\d+#', '#(?<=UP\\.Browser)[\\d\\.]+#', '#(?<=Opera/)\\d+\\.\\d+|(?<=Opera )\\d+\\.\\d+#', '#(?<=Opera Mini/)\\d+\\.\\d+#', '#(?<=Opera Mobi/)\\d+\\.\\d+#', '#(?<=Version/)\\d+\\.\\d+#', '#(?<=Ninesky-android-mobile/)\\d+\\.\\d+#', '#(?<=CrMo/)\\d+#', '#(?<=Chrome/)\\d+#', '#(?<=AppleWebKit/)[\\d\\.\\+]+#', '#(?<=Mobile Safari/)[\\d\\.]+#', '#(?<=Flipboard/)\\d+\\.\\d+#', '#OneBrowser/\\d+\\.\\d#', '#Maxthon(/\\d+\\.\\d+|$)#', '#UCBrowser/\\d+\\.\\d+#', '#MQQBrowser/\\d+\\.\\d#', '#TeamStream#', '#Mobile Maxthon#', '#^iBrowser/(\\d+\\.\\d|\\d+ )#', '#\\)Maxthon#', '#OPR/\\d+\\.\\d+#'))) { $h[15] = 9; } if (fiftyone_degrees_CheckHandler( array('#Android( |)2\\.3\\.6#' => NULL), NULL, $useragent, array('#(?<=;)([^;\\)]+)(?=Build/)#', '#(?<=\\w\\w(_|-)\\w\\w;)[^;\\)]+#', '#(?<=;\\sAndroid)[\\d\\s][^;\\)]+#', '#(?<=UCWEB)\\d+\\.\\d+|(?<=UCWEB/)\\d+\\.\\d+#', '#(?<=UC Browser)\\d+\\.\\d+#', '#(?<=UP\\.Browser)[\\d\\.]+#', '#(?<=Opera/)\\d+\\.\\d+|(?<=Opera )\\d+\\.\\d+#', '#(?<=Opera Mini/)\\d+\\.\\d+#', '#(?<=Opera Mobi/)\\d+\\.\\d+#', '#(?<=Version/)\\d+\\.\\d+#', '#(?<=Ninesky-android-mobile/)\\d+\\.\\d+#', '#(?<=CrMo/)\\d+#', '#(?<=Chrome/)\\d+#', '#(?<=AppleWebKit/)[\\d\\.\\+]+#', '#(?<=Mobile Safari/)[\\d\\.]+#', '#(?<=Flipboard/)\\d+\\.\\d+#', '#Maxthon(/\\d+\\.\\d+|$)#', '#UCBrowser/\\d+\\.\\d+#', '#MQQBrowser/(\\d+\\.\\d|\\d+ )#', '#TeamStream#', '#\\)Maxthon#', '#^iBrowser/(\\d+\\.\\d|\\d+ )#', '#OneBrowser/\\d\\.\\d#', '#OPR/\\d+\\.\\d+#'))) { $h[16] = 9; } if (fiftyone_degrees_CheckHandler( array('#Android( |)2\\.3\\.7#' => NULL), NULL, $useragent, array('#(?<=;)([^;\\)]+)(?=Build/)#', '#(?<=\\w\\w(_|-)\\w\\w;)[^;\\)]+#', '#(?<=;\\sAndroid)[\\d\\s][^;\\)]+#', '#(?<=UCWEB)\\d+\\.\\d+|(?<=UCWEB/)\\d+\\.\\d+#', '#(?<=UC Browser)\\d+\\.\\d+#', '#(?<=UP\\.Browser)[\\d\\.]+#', '#(?<=Opera/)\\d+\\.\\d+|(?<=Opera )\\d+\\.\\d+#', '#(?<=Opera Mini/)\\d+\\.\\d+#', '#(?<=Opera Mobi/)\\d+\\.\\d+#', '#(?<=Version/)\\d+\\.\\d+#', '#(?<=Ninesky-android-mobile/)\\d+\\.\\d+#', '#(?<=CrMo/)\\d+#', '#(?<=Chrome/)\\d+#', '#(?<=AppleWebKit/)[\\d\\.\\+]+#', '#(?<=Mobile Safari/)[\\d\\.]+#', '#(?<=CyanogenMod-)\\d#', '#(?<=CyanogenMod)\\d#', '#CyanogenMod#', '#\\)Maxthon#', '#Maxthon$#', '#Maxthon/\\d+\\.\\d#', '#OneBrowser/\\d+\\.\\d#', '#CM7#', '#UCBrowser/\\d+\\.\\d#', '#MQQBrowser/\\d\\.\\d#', '#OPR/\\d+\\.\\d+#'))) { $h[17] = 9; } if (fiftyone_degrees_CheckHandler( array('#Chrome/[0-9][^\\d]#' => NULL), array('#Android#' => NULL), $useragent, array('#(?<=Chrome/)\\d+\\.\\d+#', '#(?<=\\(|;|,)[^\\);]+#', '#(?<=RockMelt/)\\d+\\.\\d+#', '#Ubuntu/\\d+\\.\\d+#', '#Sleipnir/\\d+\\.\\d+#', '#Nutch-\\d+\\.\\d+#', '#Comodo_Dragon/\\d+\\.\\d+#', '#Iron/\\d+\\.\\d#', '#Maxthon/\\d+\\.\\d#', '#GoogleTV#', '#chromeframe/\\d+\\.\\d#', '#Flock/\\d+\\.\\d#'))) { $h[43] = 9; } if (fiftyone_degrees_CheckHandler( array('#Chrome/1[0-9]#' => NULL), array('#Android#' => NULL), $useragent, array('#(?<=Chrome/)\\d+\\.\\d+#', '#(?<=\\(|;|,)[^\\);]+#', '#(?<=RockMelt/)\\d+\\.\\d+#', '#Ubuntu/\\d+\\.\\d+#', '#Sleipnir/\\d+\\.\\d+#', '#Nutch-\\d+\\.\\d+#', '#GoogleTV#', '#Comodo_Dragon/\\d+\\.\\d+#', '#Iron/\\d+\\.\\d#', '#Maxthon/\\d+\\.\\d#', '#chromeframe/\\d+\\.\\d#', '#(?<=^).+(?=Mozilla)#', '#Puffin/\\d+\\.\\d#', '#(?<=QQBrowser/)\\d+\\.\\d+#', '#AvantBrowser/Tri-Core#'))) { $h[44] = 9; } if (fiftyone_degrees_CheckHandler( array('#Chrome/2[0-9]#' => NULL), array('#Android#' => NULL), $useragent, array('#(?<=Chrome/)\\d+\\.\\d+#', '#(?<=\\(|;|,)[^\\);]+#', '#(?<=RockMelt/)\\d+\\.\\d+#', '#Ubuntu/\\d+\\.\\d+#', '#Sleipnir/\\d+\\.\\d+#', '#Nutch-\\d+\\.\\d+#', '#Comodo_Dragon/\\d+\\.\\d+#', '#Iron/\\d+\\.\\d#', '#Maxthon/\\d+\\.\\d#', '#Ubuntu Chromium#', '#OPR/\\d+\\.\\d+#', '#(?<=QQBrowser/)\\d+\\.\\d+#', '#AvantBrowser/Tri-Core#'))) { $h[45] = 9; } if (fiftyone_degrees_CheckHandler( array('#Chrome/3[0-9]#' => NULL), array('#Android#' => NULL), $useragent, array('#(?<=Chrome/)\\d+\\.\\d+#', '#(?<=\\(|;|,)[^\\);]+#', '#(?<=RockMelt/)\\d+\\.\\d+#', '#Ubuntu/\\d+\\.\\d+#', '#Sleipnir/\\d+\\.\\d+#', '#Nutch-\\d+\\.\\d+#', '#Comodo_Dragon/\\d+\\.\\d+#', '#Iron/\\d+\\.\\d#', '#Maxthon/\\d+\\.\\d#', '#Ubuntu Chromium#', '#OPR/\\d+\\.\\d+#'))) { $h[46] = 9; } if (fiftyone_degrees_CheckHandler( array('#^Opera/#' => NULL), array('#Opera Mini|Opera Mobi#' => NULL, '#MIDP|CLDC#' => NULL), $useragent, array('#(?<=Opera/)[\\d+.]+#', '#(?<=Version/)\\d+\\.\\d+#', '#(?<=\\()[^;]+#', '#(?<=Opera/\\d\\.\\d \\()[^;\\)]+#', '#Linux Mint#', '#Ubuntu;#', '#ASUS\\)#', '#Mac OS X \\d+(\\.|_)\\d#', '#Windows NT \\d\\.\\d#'))) { $h[69] = 9; } if (fiftyone_degrees_CheckHandler( array('#SonyEricsson#' => NULL), NULL, $useragent, array('#(?<=SonyEricsson)[^/]+#', '#(?<=NetFront/)[\\d\\.]+#', '#(?<=Opera )[^\\s]+#', '#(?<=SEMC-Browser/)[^\\s]+#', '#(?<=TelecaBrowser/)[^\\s]+#', '#(?<=SymbianOS/)[^;]+ #', '#(?<=Series60/)[^\\s]+#', '#(?<=U(C|P)\\.Browser/)\\d+\\.\\d+#', '#(?<=UCBrowser)(|/)\\d+\\.\\d+#', '#(?<=UC Browser)\\d+\\.\\d+#', '#UCWEB/\\d\\.\\d#'))) { $h[89] = 9; } if (fiftyone_degrees_CheckHandler( array('#Silk-Accelerated#' => NULL), NULL, $useragent, array('#(?<=Silk/)\\d+\\.\\d+#', '#(?<=;)([^;\\)]+)(?=Build/)#', '#(?<=;\\sAndroid)[\\d\\s][^;\\)]+#', '#(?<=Accelerated=)(true|false)#', '#\\)Maxthon#'))) { $h[103] = 9; } if (count($h) > 0) { return $h; } if (fiftyone_degrees_CheckHandler( array('#Android#' => NULL), array('#Android \\d|Android\\d#' => NULL), $useragent, array('#(?<=;)([^;\\)]+)(?=Build/)#', '#(?<=\\w\\w(_|-)\\w\\w;)[^;\\)]+#', '#(?<=;\\sAndroid)[\\d\\s][^;\\)]+#', '#(?<=UCWEB)\\d+\\.\\d+|(?<=UCWEB/)\\d+\\.\\d+#', '#(?<=UC Browser)\\d+\\.\\d+#', '#(?<=UP\\.Browser)[\\d\\.]+#', '#(?<=Opera/)\\d+\\.\\d+|(?<=Opera )\\d+\\.\\d+#', '#(?<=Opera Mini/)\\d+\\.\\d+#', '#(?<=Version/)\\d+\\.\\d+#', '#(?<=Opera Mobi/)\\d+\\.\\d+#', '#(?<=Ninesky-android-mobile/)\\d+\\.\\d+#', '#(?<=AppleWebKit/)[\\d\\.\\+]+#', '#(?<=Mobile Safari/)[\\d\\.]+#', '#GT-\\w\\d+#', '#2\\.2/FROYO#', '#theScore/\\d\\.\\d#', '#^Instagram \\d\\.\\d#', '#UCBrowser/\\d+\\.\\d#', '#^WhatsApp/2\\.7#', '#(FROYO|GINGERBREAD)\\)$#'))) { $h[2] = 8; } if (fiftyone_degrees_CheckHandler( array('#Android 1|Android1#' => NULL), NULL, $useragent, array('#(?<=;)([^;\\)]+)(?=Build/)#', '#(?<=\\w\\w(_|-)\\w\\w;)[^;\\)]+#', '#(?<=;\\sAndroid)[\\d\\s][^;\\)]+#', '#(?<=UCWEB)\\d+\\.\\d+|(?<=UCWEB/)\\d+\\.\\d+#', '#(?<=UC Browser)\\d+\\.\\d+#', '#(?<=UP\\.Browser)[\\d\\.]+#', '#(?<=Opera/)\\d+\\.\\d+|(?<=Opera )\\d+\\.\\d+#', '#(?<=Opera Mini/)\\d+\\.\\d+#', '#(?<=Opera Mobi/)\\d+\\.\\d+#', '#(?<=Version/)\\d+\\.\\d+#', '#(?<=Ninesky-android-mobile/)\\d+\\.\\d+#', '#(?<=CrMo/)\\d+#', '#(?<=Chrome/)\\d+#', '#(?<=AppleWebKit/)[\\d\\.\\+]+#', '#(?<=Mobile Safari/)[\\d\\.]+#'))) { $h[3] = 8; } if (fiftyone_degrees_CheckHandler( array('#Android 2\\.0|Android2\\.0#' => NULL), NULL, $useragent, array('#(?<=;)([^;\\)]+)(?=Build/)#', '#(?<=\\w\\w(_|-)\\w\\w;)[^;\\)]+#', '#(?<=;\\sAndroid)[\\d\\s][^;\\)]+#', '#(?<=UCWEB)\\d+\\.\\d+|(?<=UCWEB/)\\d+\\.\\d+#', '#(?<=UC Browser)\\d+\\.\\d+#', '#(?<=UP\\.Browser)[\\d\\.]+#', '#(?<=Opera/)\\d+\\.\\d+|(?<=Opera )\\d+\\.\\d+#', '#(?<=Opera Mini/)\\d+\\.\\d+#', '#(?<=Opera Mobi/)\\d+\\.\\d+#', '#(?<=Version/)\\d+\\.\\d+#', '#(?<=Ninesky-android-mobile/)\\d+\\.\\d+#', '#(?<=CrMo/)\\d+#', '#(?<=Chrome/)\\d+#', '#(?<=AppleWebKit/)[\\d\\.\\+]+#', '#(?<=Mobile Safari/)[\\d\\.]+#', '#(?<=Flipboard/)\\d+\\.\\d+#'))) { $h[4] = 8; } if (fiftyone_degrees_CheckHandler( array('#Android 2\\.1|Android2\\.1#' => NULL), NULL, $useragent, array('#(?<=;)([^;\\)]+)(?=Build/)#', '#(?<=\\w\\w(_|-)\\w\\w;)[^;\\)]+#', '#(?<=;\\sAndroid)[\\d\\s][^;\\)]+#', '#(?<=UCWEB)\\d+\\.\\d+|(?<=UCWEB/)\\d+\\.\\d+#', '#(?<=UC Browser)\\d+\\.\\d+#', '#(?<=UP\\.Browser)[\\d\\.]+#', '#(?<=Opera/)\\d+\\.\\d+|(?<=Opera )\\d+\\.\\d+#', '#(?<=Opera Mini/)\\d+\\.\\d+#', '#(?<=Opera Mobi/)\\d+\\.\\d+#', '#(?<=Version/)\\d+\\.\\d+#', '#(?<=CrMo/)\\d+#', '#(?<=Ninesky-android-mobile/)\\d+\\.\\d+#', '#(?<=Chrome/)\\d+#', '#(?<=AppleWebKit/)[\\d\\.\\+]+#', '#(?<=Mobile Safari/)[\\d\\.]+#', '#(?<=Flipboard/)\\d+\\.\\d+#', '#\\)Maxthon#', '#UCBrowser/\\d+\\.\\d#', '#Ninesky/\\d+\\.\\d#'))) { $h[5] = 8; } if (fiftyone_degrees_CheckHandler( array('#Android 2\\.2|Android2\\.2#' => NULL), NULL, $useragent, array('#(?<=;)([^;\\)]+)(?=Build/)#', '#(?<=\\w\\w(_|-)\\w\\w;)[^;\\)]+#', '#(?<=;\\sAndroid)[\\d\\s][^;\\)]+#', '#(?<=UCWEB)\\d+\\.\\d+|(?<=UCWEB/)\\d+\\.\\d+#', '#(?<=UC Browser)\\d+\\.\\d+#', '#(?<=UP\\.Browser)[\\d\\.]+#', '#(?<=Opera/)\\d+\\.\\d+|(?<=Opera )\\d+\\.\\d+#', '#(?<=Opera Mini/)\\d+\\.\\d+#', '#(?<=Opera Mobi/)\\d+\\.\\d+#', '#(?<=Version/)\\d+\\.\\d+#', '#(?<=Ninesky-android-mobile/)\\d+\\.\\d+#', '#(?<=CrMo/)\\d+#', '#(?<=Chrome/)\\d+#', '#(?<=AppleWebKit/)[\\d\\.\\+]+#', '#(?<=Mobile Safari/)[\\d\\.]+#', '#(?<=Flipboard/)\\d+\\.\\d+#', '#Maxthon/\\d+\\.\\d|Maxthon#', '#TeamStream#', '#MQQBrowser/\\d+\\.\\d#', '#OneBrowser/\\d+\\.\\d#', '#UCBrowser/\\d+\\.\\d#', '#^iBrowser/\\d+#', '#Ninesky/\\d+\\.\\d#'))) { $h[6] = 8; } if (fiftyone_degrees_CheckHandler( array('#Android 2\\.3|Android2\\.3#' => NULL), NULL, $useragent, array('#(?<=;)([^;\\)]+)(?=Build/)#', '#(?<=\\w\\w(_|-)\\w\\w;)[^;\\)]+#', '#(?<=;\\sAndroid)[\\d\\s][^;\\)]+#', '#(?<=UCWEB)\\d+\\.\\d+|(?<=UCWEB/)\\d+\\.\\d+#', '#(?<=UC Browser)\\d+\\.\\d+#', '#(?<=UP\\.Browser)[\\d\\.]+#', '#(?<=Opera/)\\d+\\.\\d+|(?<=Opera )\\d+\\.\\d+#', '#(?<=Opera Mini/)\\d+\\.\\d+#', '#(?<=Opera Mobi/)\\d+\\.\\d+#', '#(?<=Version/)\\d+\\.\\d+#', '#(?<=Ninesky-android-mobile/)\\d+\\.\\d+#', '#(?<=CrMo/)\\d+#', '#(?<=Chrome/)\\d+#', '#(?<=AppleWebKit/)[\\d\\.\\+]+#', '#(?<=Mobile Safari/)[\\d\\.]+#', '#(?<=Flipboard/)\\d+\\.\\d+#', '#OPR/\\d+\\.\\d+#'))) { $h[10] = 8; } if (fiftyone_degrees_CheckHandler( array('#Android 2\\.4|Android2\\.4#' => NULL), NULL, $useragent, array('#(?<=;)([^;\\)]+)(?=Build/)#', '#(?<=\\w\\w(_|-)\\w\\w;)[^;\\)]+#', '#(?<=;\\sAndroid)[\\d\\s][^;\\)]+#', '#(?<=UCWEB)\\d+\\.\\d+|(?<=UCWEB/)\\d+\\.\\d+#', '#(?<=UC Browser)\\d+\\.\\d+#', '#(?<=UP\\.Browser)[\\d\\.]+#', '#(?<=Opera/)\\d+\\.\\d+|(?<=Opera )\\d+\\.\\d+#', '#(?<=Opera Mini/)\\d+\\.\\d+#', '#(?<=Opera Mobi/)\\d+\\.\\d+#', '#(?<=Version/)\\d+\\.\\d+#', '#(?<=Ninesky-android-mobile/)\\d+\\.\\d+#', '#(?<=CrMo/)\\d+#', '#(?<=Chrome/)\\d+#', '#(?<=AppleWebKit/)[\\d\\.\\+]+#', '#(?<=Mobile Safari/)[\\d\\.]+#', '#(?<=Flipboard/)\\d+\\.\\d+#', '#OPR/\\d+\\.\\d+#'))) { $h[18] = 8; } if (fiftyone_degrees_CheckHandler( array('#Android 3|Android3#' => NULL), NULL, $useragent, array('#(?<=;)([^;\\)]+)(?=Build/)#', '#(?<=\\w\\w(_|-)\\w\\w;)[^;\\)]+#', '#(?<=;\\sAndroid)[\\d\\s][^;\\)]+#', '#(?<=UCWEB)\\d+\\.\\d+|(?<=UCWEB/)\\d+\\.\\d+#', '#(?<=UC Browser)\\d+\\.\\d+#', '#(?<=UP\\.Browser)[\\d\\.]+#', '#(?<=Opera/)\\d+\\.\\d+|(?<=Opera )\\d+\\.\\d+#', '#(?<=Opera Mini/)\\d+\\.\\d+#', '#(?<=Opera Mobi/)\\d+\\.\\d+#', '#(?<=Version/)\\d+\\.\\d+#', '#(?<=Ninesky-android-mobile/)\\d+\\.\\d+#', '#(?<=CrMo/)\\d+#', '#(?<=Chrome/)\\d+#', '#(?<=AppleWebKit/)[\\d\\.\\+]+#', '#(?<=Mobile Safari/)[\\d\\.]+#', '#Maxthon/\\d+\\.\\d#', '#UCBrowser/\\d+\\.\\d#', '#TeamStream#', '#Flipboard/\\d+\\.\\d#', '#\\[operamini\\]#', '#\\)Maxthon#', '#MQQBrowser/\\d+\\.\\d#', '#Maxthon$#', '#^(One|i)Browser/(\\d+\\.\\d|\\d+ )#', '#OPR/\\d+\\.\\d+#'))) { $h[19] = 8; } if (fiftyone_degrees_CheckHandler( array('#Android( |)4\\.0#' => NULL), array('#Android( |)4\\.0\\.\\d+#' => NULL), $useragent, array('#(?<=;)([^;\\)]+)(?=Build/)#', '#(?<=\\w\\w(_|-)\\w\\w;)[^;\\)]+#', '#(?<=;\\sAndroid)[\\d\\s][^;\\)]+#', '#(?<=UCWEB)\\d+\\.\\d+|(?<=UCWEB/)\\d+\\.\\d+#', '#(?<=UC Browser)\\d+\\.\\d+#', '#(?<=UP\\.Browser)[\\d\\.]+#', '#(?<=Opera/)\\d+\\.\\d+|(?<=Opera )\\d+\\.\\d+#', '#(?<=Opera Mini/)\\d+\\.\\d+#', '#(?<=Opera Mobi/)\\d+\\.\\d+#', '#(?<=Version/)\\d+\\.\\d+#', '#(?<=Ninesky-android-mobile/)\\d+\\.\\d+#', '#(?<=CrMo/)\\d+#', '#Chrome/\\d+#', '#(?<=AppleWebKit/)[\\d\\.\\+]+#', '#(?<=Mobile Safari/)[\\d\\.]+#', '#(?<=Flipboard/)\\d+\\.\\d+#', '#OPR/\\d+\\.\\d+#'))) { $h[20] = 8; } if (fiftyone_degrees_CheckHandler( array('#Android 4\\.0\\.1|Android4\\.0\\.1#' => NULL), NULL, $useragent, array('#(?<=;)([^;\\)]+)(?=Build/)#', '#(?<=\\w\\w(_|-)\\w\\w;)[^;\\)]+#', '#(?<=;\\sAndroid)[\\d\\s][^;\\)]+#', '#(?<=UCWEB)\\d+\\.\\d+|(?<=UCWEB/)\\d+\\.\\d+#', '#(?<=UC Browser)\\d+\\.\\d+#', '#(?<=UP\\.Browser)[\\d\\.]+#', '#(?<=Opera/)\\d+\\.\\d+|(?<=Opera )\\d+\\.\\d+#', '#(?<=Opera Mini/)\\d+\\.\\d+#', '#(?<=Opera Mobi/)\\d+\\.\\d+#', '#(?<=Version/)\\d+\\.\\d+#', '#(?<=Ninesky-android-mobile/)\\d+\\.\\d+#', '#(?<=CrMo/)\\d+#', '#Chrome/\\d+#', '#(?<=AppleWebKit/)[\\d\\.\\+]+#', '#(?<=Mobile Safari/)[\\d\\.]+#', '#(?<=Flipboard/)\\d+\\.\\d+#', '#(?<=^).+(?=Linux)#', '#OPR/\\d+\\.\\d+#'))) { $h[21] = 8; } if (fiftyone_degrees_CheckHandler( array('#Android 4\\.0\\.2|Android4\\.0\\.2#' => NULL), NULL, $useragent, array('#(?<=;)([^;\\)]+)(?=Build/)#', '#(?<=\\w\\w(_|-)\\w\\w;)[^;\\)]+#', '#(?<=;\\sAndroid)[\\d\\s][^;\\)]+#', '#(?<=UCWEB)\\d+\\.\\d+|(?<=UCWEB/)\\d+\\.\\d+#', '#(?<=UC Browser)\\d+\\.\\d+#', '#(?<=UP\\.Browser)[\\d\\.]+#', '#(?<=Opera/)\\d+\\.\\d+|(?<=Opera )\\d+\\.\\d+#', '#(?<=Opera Mini/)\\d+\\.\\d+#', '#(?<=Opera Mobi/)\\d+\\.\\d+#', '#(?<=Version/)\\d+\\.\\d+#', '#(?<=Ninesky-android-mobile/)\\d+\\.\\d+#', '#(?<=CrMo/)\\d+#', '#Chrome/\\d+#', '#(?<=AppleWebKit/)[\\d\\.\\+]+#', '#(?<=Mobile Safari/)[\\d\\.]+#', '#(?<=Flipboard/)\\d+\\.\\d+#', '#OPR/\\d+\\.\\d+#'))) { $h[22] = 8; } if (fiftyone_degrees_CheckHandler( array('#Android 4\\.0\\.3|Android4\\.0\\.3#' => NULL), NULL, $useragent, array('#(?<=;)([^;\\)]+)(?=Build/)#', '#(?<=\\w\\w(_|-)\\w\\w;)[^;\\)]+#', '#(?<=;\\sAndroid)[\\d\\s][^;\\)]+#', '#(?<=UCWEB)\\d+\\.\\d+|(?<=UCWEB/)\\d+\\.\\d+#', '#(?<=UC Browser)\\d+\\.\\d+#', '#(?<=UP\\.Browser)[\\d\\.]+#', '#(?<=Opera/)\\d+\\.\\d+|(?<=Opera )\\d+\\.\\d+#', '#(?<=Opera Mini/)\\d+\\.\\d+#', '#(?<=Opera Mobi/)\\d+\\.\\d+#', '#(?<=Version/)\\d+\\.\\d+#', '#(?<=Ninesky-android-mobile/)\\d+\\.\\d+#', '#(?<=CrMo/)\\d+#', '#Chrome/\\d+#', '#(?<=AppleWebKit/)[\\d\\.\\+]+#', '#(?<=Mobile Safari/)[\\d\\.]+#', '#(?<=Flipboard/)\\d+\\.\\d+#', '#Maxthon(/| \\()\\d+\\.\\d#', '#UCBrowser/\\d+\\.\\d#', '#TeamStream#', '#\\[operamini\\]#', '#MQQBrowser/(\\d+\\.\\d|\\d+ )#', '#\\)Maxthon#', '#^(One|i)Browser/\\d+\\.\\d#', '#Maxthon$#', '#OPR/\\d+\\.\\d+#'))) { $h[23] = 8; } if (fiftyone_degrees_CheckHandler( array('#Android 4\\.0\\.4|Android4\\.0\\.4#' => NULL), NULL, $useragent, array('#(?<=;)([^;\\)]+)(?=Build/)#', '#(?<=\\w\\w(_|-)\\w\\w;)[^;\\)]+#', '#(?<=;\\sAndroid)[\\d\\s][^;\\)]+#', '#(?<=UCWEB)\\d+\\.\\d+|(?<=UCWEB/)\\d+\\.\\d+#', '#(?<=UC Browser)\\d+\\.\\d+#', '#(?<=UP\\.Browser)[\\d\\.]+#', '#(?<=Opera/)\\d+\\.\\d+|(?<=Opera )\\d+\\.\\d+#', '#(?<=Opera Mini/)\\d+\\.\\d+#', '#(?<=Opera Mobi/)\\d+\\.\\d+#', '#(?<=Version/)\\d+\\.\\d+#', '#(?<=Ninesky-android-mobile/)\\d+\\.\\d+#', '#(?<=CrMo/)\\d+#', '#Chrome/\\d+#', '#(?<=AppleWebKit/)[\\d\\.\\+]+#', '#(?<=Mobile Safari/)[\\d\\.]+#', '#(?<=Flipboard/)\\d+\\.\\d+#', '#TeamStream#', '#Maxthon/\\d+\\.\\d#', '#UCBrowser/\\d+\\.\\d#', '#\\[operamini\\]#', '#Cyanogen#', '#Mobile Maxthon#', '#\\)Maxthon#', '#Maxthon$#', '#(One|i)Browser/(\\d+\\.\\d|\\d+ )#', '#MQQBrowser/\\d+\\.\\d#', '#OPR/\\d+\\.\\d+#', '#Maxthon \\(\\d\\.\\d#'))) { $h[24] = 8; } if (fiftyone_degrees_CheckHandler( array('#Android 4\\.0\\.(5|6|8|9)#' => NULL), NULL, $useragent, array('#(?<=;)([^;\\)]+)(?=Build/)#', '#(?<=\\w\\w(_|-)\\w\\w;)[^;\\)]+#', '#(?<=;\\sAndroid)[\\d\\s][^;\\)]+#', '#(?<=Version/)\\d+\\.\\d+#', '#(?<=AppleWebKit/)[\\d\\.\\+]+#', '#(?<=Mobile Safari/)[\\d\\.]+#', '#OPR/\\d+\\.\\d+#'))) { $h[25] = 8; } if (fiftyone_degrees_CheckHandler( array('#Android 4\\.1|Android4\\.1#' => NULL), array('#Android( |)4\\.1\\.\\d+#' => NULL), $useragent, array('#(?<=;)([^;\\)]+)(?=Build/)#', '#(?<=\\w\\w(_|-)\\w\\w;)[^;\\)]+#', '#(?<=;\\sAndroid)[\\d\\s][^;\\)]+#', '#(?<=UCWEB)\\d+\\.\\d+|(?<=UCWEB/)\\d+\\.\\d+#', '#(?<=UC Browser)\\d+\\.\\d+#', '#(?<=UP\\.Browser)[\\d\\.]+#', '#(?<=Opera/)\\d+\\.\\d+|(?<=Opera )\\d+\\.\\d+#', '#(?<=Opera Mini/)\\d+\\.\\d+#', '#(?<=Opera Mobi/)\\d+\\.\\d+#', '#(?<=Version/)\\d+\\.\\d+#', '#(?<=Ninesky-android-mobile/)\\d+\\.\\d+#', '#(?<=CrMo/)\\d+#', '#Chrome/\\d+#', '#(?<=AppleWebKit/)[\\d\\.\\+]+#', '#(?<=Mobile Safari/)[\\d\\.]+#', '#(?<=Flipboard/)\\d+\\.\\d+#', '#OPR/\\d+\\.\\d+#'))) { $h[26] = 8; } if (fiftyone_degrees_CheckHandler( array('#Android 4\\.1\\.1|Android4\\.1\\.1#' => NULL), NULL, $useragent, array('#(?<=;)([^;\\)]+)(?=Build/)#', '#(?<=\\w\\w(_|-)\\w\\w;)[^;\\)]+#', '#(?<=;\\sAndroid)[\\d\\s][^;\\)]+#', '#(?<=UCWEB)\\d+\\.\\d+|(?<=UCWEB/)\\d+\\.\\d+#', '#(?<=UC Browser)\\d+\\.\\d+#', '#(?<=UP\\.Browser)[\\d\\.]+#', '#(?<=Opera/)\\d+\\.\\d+|(?<=Opera )\\d+\\.\\d+#', '#(?<=Opera Mini/)\\d+\\.\\d+#', '#(?<=Opera Mobi/)\\d+\\.\\d+#', '#(?<=Version/)\\d+\\.\\d+#', '#(?<=Ninesky-android-mobile/)\\d+\\.\\d+#', '#(?<=CrMo/)\\d+#', '#Chrome/\\d+#', '#(?<=AppleWebKit/)[\\d\\.\\+]+#', '#(?<=Mobile Safari/)[\\d\\.]+#', '#(?<=Flipboard/)\\d+\\.\\d+#', '#Maxthon(/| \\()\\d+\\.\\d#', '#UCBrowser/\\d+\\.\\d#', '#\\[operamini\\]#', '#TeamStream#', '#Cyanogen#', '#Maxthon$|\\)Maxthon#', '#^OneBrowser/\\d+\\.\\d#', '#MQQBrowser/\\d+\\.\\d#', '#MiuiBrowser/\\d\\.\\d#', '#OPR/\\d+\\.\\d+#', '#PARANOIDANDROID#'))) { $h[27] = 8; } if (fiftyone_degrees_CheckHandler( array('#Android 4\\.1\\.2|Android4\\.1\\.2#' => NULL), NULL, $useragent, array('#(?<=;)([^;\\)]+)(?=Build/)#', '#(?<=\\w\\w(_|-)\\w\\w;)[^;\\)]+#', '#(?<=;\\sAndroid)[\\d\\s][^;\\)]+#', '#(?<=UCWEB)\\d+\\.\\d+|(?<=UCWEB/)\\d+\\.\\d+#', '#(?<=UC Browser)\\d+\\.\\d+#', '#(?<=UP\\.Browser)[\\d\\.]+#', '#(?<=Opera/)\\d+\\.\\d+|(?<=Opera )\\d+\\.\\d+#', '#(?<=Opera Mini/)\\d+\\.\\d+#', '#(?<=Opera Mobi/)\\d+\\.\\d+#', '#(?<=Version/)\\d+\\.\\d+#', '#(?<=Ninesky-android-mobile/)\\d+\\.\\d+#', '#(?<=CrMo/)\\d+#', '#Chrome/\\d+#', '#(?<=AppleWebKit/)[\\d\\.\\+]+#', '#(?<=Mobile Safari/)[\\d\\.]+#', '#(?<=Flipboard/)\\d+\\.\\d+#', '#Cyanogen#', '#Maxthon/\\d+\\.\\d#', '#Maxthon$#', '#UCBrowser/\\d+\\.\\d#', '#TeamStream#', '#MiuiBrowser/\\d\\.\\d#', '#MQQBrowser/\\d+\\.\\d#', '#OPR/\\d+\\.\\d+#', '#Maxthon \\(\\d\\.\\d#'))) { $h[28] = 8; } if (fiftyone_degrees_CheckHandler( array('#Android 4\\.2|Android4\\.2#' => NULL), array('#Android( |)4\\.2\\.\\d+#' => NULL), $useragent, array('#(?<=;)([^;\\)]+)(?=Build/)#', '#(?<=\\w\\w(_|-)\\w\\w;)[^;\\)]+#', '#(?<=;\\sAndroid)[\\d\\s][^;\\)]+#', '#(?<=UCWEB)\\d+\\.\\d+|(?<=UCWEB/)\\d+\\.\\d+#', '#(?<=UC Browser)\\d+\\.\\d+#', '#(?<=UP\\.Browser)[\\d\\.]+#', '#(?<=Opera/)\\d+\\.\\d+|(?<=Opera )\\d+\\.\\d+#', '#(?<=Opera Mini/)\\d+\\.\\d+#', '#(?<=Opera Mobi/)\\d+\\.\\d+#', '#(?<=Version/)\\d+\\.\\d+#', '#(?<=Ninesky-android-mobile/)\\d+\\.\\d+#', '#(?<=CrMo/)\\d+#', '#Chrome/\\d+#', '#(?<=AppleWebKit/)[\\d\\.\\+]+#', '#(?<=Mobile Safari/)[\\d\\.]+#', '#(?<=Flipboard/)\\d+\\.\\d+#', '#OPR/\\d+\\.\\d+#'))) { $h[29] = 8; } if (fiftyone_degrees_CheckHandler( array('#Android 4\\.2\\.1|Android4\\.2\\.1#' => NULL), NULL, $useragent, array('#(?<=;)([^;\\)]+)(?=Build/)#', '#(?<=\\w\\w(_|-)\\w\\w;)[^;\\)]+#', '#(?<=;\\sAndroid)[\\d\\s][^;\\)]+#', '#(?<=UCWEB)\\d+\\.\\d+|(?<=UCWEB/)\\d+\\.\\d+#', '#(?<=UC Browser)\\d+\\.\\d+#', '#(?<=UP\\.Browser)[\\d\\.]+#', '#(?<=Opera/)\\d+\\.\\d+|(?<=Opera )\\d+\\.\\d+#', '#(?<=Opera Mini/)\\d+\\.\\d+#', '#(?<=Opera Mobi/)\\d+\\.\\d+#', '#(?<=Version/)\\d+\\.\\d+#', '#(?<=Ninesky-android-mobile/)\\d+\\.\\d+#', '#(?<=CrMo/)\\d+#', '#Chrome/\\d+#', '#(?<=AppleWebKit/)[\\d\\.\\+]+#', '#(?<=Mobile Safari/)[\\d\\.]+#', '#(?<=Flipboard/)\\d+\\.\\d+#', '#Cyanogen#', '#Maxthon(/\\d+\\.\\d|$)#', '#TeamStream#', '#OPR/\\d+\\.\\d+#'))) { $h[30] = 8; } if (fiftyone_degrees_CheckHandler( array('#Android 4\\.2\\.2|Android4\\.2\\.2#' => NULL), NULL, $useragent, array('#(?<=;)([^;\\)]+)(?=Build/)#', '#(?<=\\w\\w(_|-)\\w\\w;)[^;\\)]+#', '#(?<=;\\sAndroid)[\\d\\s][^;\\)]+#', '#(?<=UCWEB)\\d+\\.\\d+|(?<=UCWEB/)\\d+\\.\\d+#', '#(?<=UC Browser)\\d+\\.\\d+#', '#(?<=UP\\.Browser)[\\d\\.]+#', '#(?<=Opera/)\\d+\\.\\d+|(?<=Opera )\\d+\\.\\d+#', '#(?<=Opera Mini/)\\d+\\.\\d+#', '#(?<=Opera Mobi/)\\d+\\.\\d+#', '#(?<=Version/)\\d+\\.\\d+#', '#(?<=Ninesky-android-mobile/)\\d+\\.\\d+#', '#(?<=CrMo/)\\d+#', '#Chrome/\\d+#', '#(?<=AppleWebKit/)[\\d\\.\\+]+#', '#(?<=Mobile Safari/)[\\d\\.]+#', '#(?<=Flipboard/)\\d+\\.\\d+#', '#Cyanogen#', '#Maxthon(/\\d+\\.\\d|$)#', '#Maxthon \\(\\d+\\.\\d#', '#TeamStream#', '#UCBrowser/\\d+\\.\\d#', '#MiuiBrowser/\\d\\.\\d#', '#OPR/\\d+\\.\\d+#', '#Carbon#'))) { $h[31] = 8; } if (fiftyone_degrees_CheckHandler( array('#\\((iPhone|iPad|iPod)#' => NULL), array('#Flipboard#' => NULL, '#Nokia|nokia#' => NULL, '#Android#' => NULL, '#webOS|hpwOS#' => NULL), $useragent, array('#(?<=\\()iPhone|iPad|iPod#', '#(?<=Version/)[\\d\\.]+#', '#(?<=OS )[\\d(_|\\.)\\d]+#', '#(?<=Sleipnir/)[\\d\\.]+#', '#(?<=AppleWebKit/)[\\d\\.]+#', '#(?<=Mobile/)[\\d\\w]+#', '#(?<=Safari/)[\\d\\.]+#', '#(?<=Dolphin )[\\d\\.]+#', '#(?<=Dolphin HD )[\\d\\.]+#', '#Twitter#', '#Miu Ptt#', '#Incredimail/\\d+\\.\\d#', '#UCBrowser/\\d+\\.\\d#', '#PhantomJS/\\d+\\.\\d#', '#MQQBrowser/(\\d+\\.\\d|\\d+ )#', '#UP\\.Browser/(\\d+\\.\\d|\\d+ )#'))) { $h[33] = 8; } if (fiftyone_degrees_CheckHandler( array('#BOLT#' => NULL), array('#mac#' => NULL, '#win#' => NULL), $useragent, array('#(?<=BOLT/)[\\d\\.]+#'))) { $h[36] = 8; } if (fiftyone_degrees_CheckHandler( array('#(F|f)ire(F|f)o(X|x)|(I|i)ceweasel|BonEcho#' => array('#\\(Macintosh;|\\(Win|\\(X1\\d;|WOW64#' => NULL)), array('#Fennec|Linux Mint|Thunderbird#' => NULL), $useragent, array('#(?<=X11;)\\w+#', '#(?<=Firefox)/\\d+\\.\\d+#', '#(?<=Iceweasel)/\\d+\\.\\d+#', '#(?<=Mozilla/)\\d\\.\\d#', '#(?<=Mozilla/\\d\\.\\d \\()[^;\\)]+#', '#Windows NT \\d\\.\\d(?=;)|Mac OS X [^\\s]+(?=;)|Ubuntu|X11|SunOS|OpenBSD|FreeBSD#', '#Fedora/\\d+\\.\\d+#', '#Nutch#', '#Debian-\\d\\.\\d#', '#\\w(U|u)buntu/\\d+\\.\\d+#', '#X Ubuntu/\\d+\\.\\d+#', '#(?<=\\((U|u)buntu-)[^\\)]+#', '#(?<=Firefox)[^\\d]+#', '#(?<=Win)[^;]+#', '#Fedora/#', '#Pale(M|m)oon/\\d+\\.\\d#', '#(E|e)pic/\\d+\\.\\d|Epic/#', '#Comet(Bird|Browser)/\\d+\\.\\d#', '#Flock/\\d+\\.\\d#', '#Kylo/\\d+\\.\\d#', '#Wyzo/\\d+\\.\\d#', '#Camino/\\d+\\.\\d#', '#Minefield/\\d+\\.\\d#', '#Navigator/\\d+\\.\\d#', '#IceDragon/\\d+\\.\\d#', '#Opera \\d+\\.\\d\\d$#', '#lolifox/\\d\\.\\d#', '#Avant TriCore#', '#Midori/(|\\")\\d+(|\\")\\.(|\\")\\d(|\\")#', '#SeaMonkey/\\d\\.\\d#', '#firefox/\\d\\.\\d#', '#BonEcho/\\d\\.\\d#', '#Maemo Browser \\d\\.\\d#', '#Linux mips#'))) { $h[48] = 8; } if (fiftyone_degrees_CheckHandler( array('#Firefox/#' => array('#Fennec/|\\(Mobile; rv#' => NULL)), NULL, $useragent, array('#(?<=Mozilla/)[\\d\\.]+#', '#(?<=Fennec/)[\\d\\.]+#', '#Fennec#', '#(?<=\\()[^\\)]+#', '#(?<=Gecko/)[\\d]+#', '#(?<=Firefox/)[\\d\\.]+#', '#(?<=;\\sAndroid)[\\d\\s][^;\\)]+#'))) { $h[49] = 8; } if (fiftyone_degrees_CheckHandler( array('#MSIE#' => array('#compatible#' => NULL, '#Windows XP#' => NULL, '#Windows NT#' => NULL, '#Windows ME#' => NULL, '#Win32#' => NULL, '#Windows [\\d\\.]+#' => NULL, '#Windows NT [\\d\\.]+#' => NULL, '#Mac_PowerPC#' => NULL, '#PPC Mac OS#' => NULL)), array('#Mobile#' => NULL, '#Windows CE#' => NULL, '#Phone#' => NULL, '#UC(\\.| ||)Browser#' => NULL, '#MIDP|CLDC#' => NULL, '#Opera#' => NULL, '#(?i)LG-|LG_|SC-|Toshiba|XV\\d+|Nokia|LGE|PalmOS|POLARIS|PalmSource|Nutch|NetFront|Samsung|HTC#' => NULL), $useragent, array('#(?<=MSIE\\s)[\\d\\.]+#', '#(?<=Outlook )[\\d\\.]+#', '#(?<=Mozilla/)\\d\\.\\d#', '#(?<=Mozilla/\\d\\.\\d \\()[^;\\)]+#', '#(?<=Windows)[\\s\\w\\d\\.]+#', '#Windows NT \\d\\.\\d(?=;)|Mac OS X [^\\s]+(?=;)|Ubuntu|X11#', '#chromeframe#', '#Media Center PC#', '#(?<=Sleipnir/)[\\d\\.]+#', '#Linux#', '#Zune#', '#ARM#', '#Touch#', '#WOW64;#', '#(?<=heritrix/)[\\d\\.]+#', '#Maxthon|MAXTHON#', '#SlimBrowser/\\d+\\.\\d#', '#Avant(| )Browser#', '#Xbox#', '#chromeframe/\\d+\\.\\d#', '#Midori/\\d+\\.\\d#', '#(?<=Maxthon)(/| )\\d+\\.\\d#', '#(?<=MAXTHON) \\d\\.\\d#', '#Win(95|32|98|NT4\\.0|64|3\\.\\d)#', '#PPC#', '#Tablet PC#', '#SV1#', '#(?<=QQBrowser/)\\d+\\.\\d+#'))) { $h[62] = 8; } if (fiftyone_degrees_CheckHandler( array('#Nokia#' => array('#Series40#' => NULL)), NULL, $useragent, array('#(?<=Nokia)[^/]+#', '#(?<=Series40)[^;]+#', '#(?<=U(C|P)\\.Browser/)\\d+\\.\\d+#', '#(?<=UC Browser)\\d+\\.\\d+#', '#(?<=UCWEB)\\d+\\.\\d+|(?<=UCWEB/)\\d+\\.\\d+#', '#(?<=Opera/)\\d+\\.\\d+|(?<=Opera )\\d+\\.\\d+#', '#(?<=Opera Mini/)\\d+\\.\\d+#', '#(?<=S40OviBrowser/)\\d+\\.\\d+\\.\\d+#', '#iBrowser/Mini\\d+\\.\\d#'))) { $h[66] = 8; } if (fiftyone_degrees_CheckHandler( array('#Nokia#' => array('#Series60#' => NULL)), NULL, $useragent, array('#(?<=Nokia)[^/]+#', '#(?<=Series60/)[\\w\\d\\.]+#', '#(?<=U(C|P)\\.Browser/)\\d+\\.\\d+#', '#(?<=UC Browser)\\d+\\.\\d+#', '#(?<=UCWEB)\\d+\\.\\d+|(?<=UCWEB/)\\d+\\.\\d+#', '#(?<=Opera/)\\d+\\.\\d+|(?<=Opera )\\d+\\.\\d+#', '#(?<=Opera Mini/)\\d+\\.\\d+#', '#MQQBrowser/Mini\\d\\.\\d#'))) { $h[67] = 8; } if (fiftyone_degrees_CheckHandler( array('#^Mozilla#' => array('#Safari#' => array('#Windows|Macintosh|X11#' => NULL))), array('#Chrome/#' => NULL, '#Silk-Accelerated#' => NULL), $useragent, array('#(?<=Safari/)\\d+\\.\\d+#', '#(?<=Mozilla/)\\d\\.\\d#', '#(?<=Mozilla/\\d\\.\\d \\()[^;\\)]+#', '#Windows NT \\d\\.\\d(?=;)|Mac OS X [^\\s]+(?=;)|Ubuntu( |(/|)\\d+\\.\\d+)|X11#', '#(?<=Version/)\\d\\.\\d#', '#(?<=Mac OS X 10_\\d_\\d;)[^;\\)]+#', '#Mac OS X 10_\\d#', '#(?<=PhantomJS/)\\d\\.\\d#', '#SecondLife/\\d+\\.\\d#', '#Google Earth/\\d+\\.\\d#', '#rekonq(/\\d+\\.\\d| )#', '#Skyfire/\\d+\\.\\d#', '#Sleipnir/\\d+\\.\\d#', '#QupZilla/\\d+\\.\\d#', '#konqueror/\\d+\\.\\d#', '#Google Earth Pro/\\d+\\.\\d#', '#Maxthon#', '#OmniWeb/.+\\.\\d+#', '#Qt/\\d\\.\\d#', '#kded/\\d\\.\\d#', '#Midori/\\d\\.\\d#', '#iCab/\\d\\.\\d#'))) { $h[79] = 8; } if (fiftyone_degrees_CheckHandler( array('#Skyfire/#' => NULL), NULL, $useragent, array('#(?<=Mozilla/)[\\d\\.]+#', '#(?<=Skyfire/)[\\d\\.]+#', '#(?<=AppleWebKit/)[\\d\\.]+#', '#(?<=Safari/)[\\d\\.]+#', '#(?<=Version/)[\\d\\.]+#'))) { $h[87] = 8; } if (fiftyone_degrees_CheckHandler( array('#MSIE#' => array('#Windows Phone OS#' => NULL)), array('#Windows NT#' => NULL), $useragent, NULL)) { $h[97] = 8; } if (fiftyone_degrees_CheckHandler( array('#^WordPress/#' => NULL), NULL, $useragent, array('#(?<=http://)\\w+#'))) { $h[98] = 8; } if (fiftyone_degrees_CheckHandler( array('#Thunderbird#' => array('#\\(Macintosh;|\\(Windows|\\(X11;#' => NULL)), array('#Firefox|Iceweasel|Fennec|Linux Mint|Ubuntu#' => NULL), $useragent, array('#(?<=Thunderbird/)\\d+\\.\\d+#', '#(?<=Mozilla/)\\d\\.\\d#', '#(?<=Mozilla/\\d\\.\\d \\()[^;\\)]+#', '#Windows NT \\d\\.\\d(?=;)|Mac OS X [^\\s]+(?=;)|Ubuntu|X11#', '#(?<=(Fedora)/)\\d+\\.\\d+#'))) { $h[102] = 8; } if (fiftyone_degrees_CheckHandler( array('#Darwin#' => array('#CFNetwork#' => NULL)), array('#iPhone#' => NULL), $useragent, array('#^[^/]+#', '#(i)?Mac([^\\d]+)?#', '#(?<=Darwin/)\\d+\\.\\d+#', '#^Dolphin/\\d+\\.\\d#'))) { $h[104] = 8; } if (count($h) > 0) { return $h; } if (fiftyone_degrees_CheckHandler( array('#(?i)alcatel#' => NULL), NULL, $useragent, array('#(?<=Alcatel-)[^/\\s]+#', '#.+#'))) { $h[0] = 7; } if (fiftyone_degrees_CheckHandler( array('#^Amoi#' => NULL), NULL, $useragent, NULL)) { $h[1] = 7; } if (fiftyone_degrees_CheckHandler( array('#^Apple#' => array('#CoreMedia#' => NULL)), NULL, $useragent, NULL)) { $h[32] = 7; } if (fiftyone_degrees_CheckHandler( array('#^AUDIOVOX#' => NULL), NULL, $useragent, NULL)) { $h[34] = 7; } if (fiftyone_degrees_CheckHandler( array('#BenQ#' => NULL, '#BENQ#' => NULL), NULL, $useragent, NULL)) { $h[35] = 7; } if (fiftyone_degrees_CheckHandler( array('#^BIRD#' => NULL), NULL, $useragent, NULL)) { $h[38] = 7; } if (fiftyone_degrees_CheckHandler( array('#Black[B|b]erry#' => NULL), array('#^Mozilla/#' => array('#BlackBerry#' => array('#Version/\\d+#' => NULL))), $useragent, array('#(?<=Black[B|b]erry)[^/]+#', '#(?<=Black[B|b]erry\\w{4}/)\\d+\\.\\d+\\.\\d+|(?<=Black[B|b]erry\\w{5}/)\\d+\\.\\d+\\.\\d+#', '#(?<=UP.Browser/)\\d+\\.\\d+#', '#UC Browser\\d+\\.\\d+#'))) { $h[39] = 7; } if (fiftyone_degrees_CheckHandler( array('#^Mozilla/#' => array('#BlackBerry#' => array('#Version/\\d+#' => NULL))), NULL, $useragent, array('#(?<=BlackBerry)[^;]+#', '#(?<=Version/)\\d+\\.\\d+\\.\\d+#'))) { $h[40] = 7; } if (fiftyone_degrees_CheckHandler( array('#^DoCoMo#' => NULL), NULL, $useragent, array('#(?<=DoCoMo/)\\d+\\.\\d+#', '#(?<=DoCoMo/\\d\\.\\d[\\s|/])[\\w\\d]+#'))) { $h[47] = 7; } if (fiftyone_degrees_CheckHandler( array('#^Fly|^FLY#' => NULL), NULL, $useragent, NULL)) { $h[50] = 7; } if (fiftyone_degrees_CheckHandler( array('#^HD2|HTC#' => NULL), NULL, $useragent, array('#(?<=\\sHTC[\\s|_])[^;\\s]+#', '#.+#'))) { $h[51] = 7; } if (fiftyone_degrees_CheckHandler( array('#(?i)Huawei#' => NULL), NULL, $useragent, NULL)) { $h[52] = 7; } if (fiftyone_degrees_CheckHandler( array('#^KDDI#' => NULL), NULL, $useragent, array('#KDDI-\\w+#'))) { $h[53] = 7; } if (fiftyone_degrees_CheckHandler( array('#^kyocera|^QC-|^KWC-#' => NULL), NULL, $useragent, NULL)) { $h[54] = 7; } if (fiftyone_degrees_CheckHandler( array('#^LCT#' => NULL), NULL, $useragent, NULL)) { $h[55] = 7; } if (fiftyone_degrees_CheckHandler( array('#^Lenovo#' => NULL), NULL, $useragent, array('#(?<=^Lenovo[-_])[\\w\\d]+#', '#.+#'))) { $h[56] = 7; } if (fiftyone_degrees_CheckHandler( array('#^LG/#' => NULL), NULL, $useragent, array('#(?<=^LG/)[\\w\\d]+#', '#(?<=^LG(-|/))[^\\s/]+#', '#(?<=NovarraVision)\\d\\.\\d#', '#(?<=Browser/Teleca-)[^\\s]+#', '#(?<=UCBrowser)\\d\\.\\d#', '#(?<=Browser/Obigo-)[^/]+/[\\d\\.]+#', '#(?<=Opera Mini/)[^\\);]+#'))) { $h[57] = 7; } if (fiftyone_degrees_CheckHandler( array('#^LG-#' => NULL), NULL, $useragent, array('#(?<=^LG-)[\\w\\d]+#', '#(?<=^LG(-|/))[^\\s/]+#', '#(?<=Browser/Obigo-)[^/]+/[\\d\\.]+#', '#(?<=Browser/Teleca-)[^\\s]+#', '#(?<=UP.Browser/)\\d+\\.\\d+#', '#(?<=Opera Mini/)[^\\);]+#', '#UC( |)Browser(|/)\\d+\\.\\d#'))) { $h[58] = 7; } if (fiftyone_degrees_CheckHandler( array('#^LGE-#' => NULL), NULL, $useragent, array('#(?<=^LGE-)[\\w\\d]+#', '#(?<=^LGE-)[^\\s/]+#', '#(?<=Browser/Obigo-)[^/]+/[\\d\\.]+#', '#(?<=Browser/Teleca-)[^\\s]+#', '#(?<=UP.Browser/)\\d+\\.\\d+#', '#(?<=Opera Mini/)[^\\);]+#'))) { $h[60] = 7; } if (fiftyone_degrees_CheckHandler( array('#^MOT-#' => NULL), NULL, $useragent, array('#(?<=^MOT-)[^/]+#', '#(?<=UP\\.Browser/)[\\d\\.]+#', '#\\([^\\)]+\\)#'))) { $h[61] = 7; } if (fiftyone_degrees_CheckHandler( array('#^NEC|KGT#' => NULL), NULL, $useragent, NULL)) { $h[63] = 7; } if (fiftyone_degrees_CheckHandler( array('#^Nexian|^NEXIAN#' => NULL), NULL, $useragent, NULL)) { $h[64] = 7; } if (fiftyone_degrees_CheckHandler( array('#(?i)nokia#' => NULL), array('#Series(40|60)#' => NULL), $useragent, array('#(?i)(?<=Nokia)[^/\\)]+#', '#(?<=U(C|P)\\.Browser/)\\d+\\.\\d+#', '#(?<=UC Browser)\\d+\\.\\d+#', '#(?<=UCWEB)\\d+\\.\\d+|(?<=UCWEB/)\\d+\\.\\d+#', '#(?<=Opera/)\\d+\\.\\d+|(?<=Opera )\\d+\\.\\d+#', '#(?<=Opera Mini/)[^\\);]+#', '#(?<=S40OviBrowser/)\\d+\\.\\d+.\\d+#', '#(?<=UCBrowser)\\d+\\.\\d+#', '#(?<=UCBrowser/)\\d+\\.\\d+#', '#^iBrowser/Mini\\d+\\.\\d+#', '#^OneBrowser/\\d+\\.\\d+#', '#^MQQBrowser/Mini\\d+\\.\\d+#'))) { $h[65] = 7; } if (fiftyone_degrees_CheckHandler( array('#Palm#' => NULL, '#Palm(S|s)ource#' => NULL), NULL, $useragent, NULL)) { $h[72] = 7; } if (fiftyone_degrees_CheckHandler( array('#^Panasonic#' => NULL), NULL, $useragent, NULL)) { $h[73] = 7; } if (fiftyone_degrees_CheckHandler( array('#^Pantech|^PT-|^PANTECH|^PG-#' => NULL), NULL, $useragent, NULL)) { $h[74] = 7; } if (fiftyone_degrees_CheckHandler( array('#^Philips|^PHILIPS#' => NULL), NULL, $useragent, NULL)) { $h[75] = 7; } if (fiftyone_degrees_CheckHandler( array('#^Qtek#' => NULL), NULL, $useragent, NULL)) { $h[77] = 7; } if (fiftyone_degrees_CheckHandler( array('#^Mozilla#' => array('#Safari#' => NULL)), array('#iPhone|iPod|iPad|Nokia|BlackBerry|Android|Skyfire#' => NULL, '#Silk-Accelerated#' => NULL), $useragent, array('#(?<=Mozilla/\\d\\.\\d \\()[^)]+#', '#(?<=AppleWebKit/)[\\d\\.]+#', '#(?<=Version/)[\\d\\.]+#', '#(?<=Safari/)[\\d\\.]+#', '#Phantomjs/\\d\\.\\d#', '#LG Browser/\\d\\.\\d#'))) { $h[78] = 7; } if (fiftyone_degrees_CheckHandler( array('#^Sagem|^SAGEM#' => NULL), NULL, $useragent, NULL)) { $h[80] = 7; } if (fiftyone_degrees_CheckHandler( array('#(?i)SAMSUNG|SEC-|SCH-#' => NULL), array('#Series60/#' => array('#Samsung/#' => NULL), '#SAMSUNG-GT-#' => NULL), $useragent, array('#(?i)(?<=SAMSUNG)-?[^/]+#', '#(?i)(?<=SEC|SCH)-?[^/]+#', '#(?<=Bada/)\\d+\\.\\d+#', '#(?<=Dolfin/)\\d+\\.\\d+#', '#(?<=Jasmine/)\\d+\\.\\d+#', '#(?<=NetFront/)[\\d\\.]+#', '#UC(\\.|)Browser/\\d+\\.\\d+#', '#(?<=UP.Browser/)\\d+\\.\\d+#', '#(?<=Opera/)\\d+\\.\\d+|(?<=Opera )\\d+\\.\\d+#', '#(?<=Opera Mini/)\\d+\\.\\d+#', '#(?<=Windows)\\w+;#', '#Android \\d\\.\\d#', '#UCWEB\\d\\.\\d#'))) { $h[81] = 7; } if (fiftyone_degrees_CheckHandler( array('#SAMSUNG-GT-#' => NULL), array('#Series60/#' => array('#Samsung/#' => NULL)), $useragent, array('#(?<=SAMSUNG-GT-)[^/-]+#', '#(?<=Bada/)\\d+\\.\\d+#', '#(?<=Jasmine/)\\d+\\.\\d+#', '#(?<=Dolfin/)\\d+\\.\\d+#', '#(?<=UC\\.Browser/)\\d+\\.\\d+#', '#(?<=NetFront/)[\\d\\.]+#', '#(?<=UP.Browser/)\\d+\\.\\d+#', '#(?<=Opera/)\\d+\\.\\d+|(?<=Opera )\\d+\\.\\d+#', '#(?<=Opera Mini/)\\d+\\.\\d+#', '#(?<=MSIEMobile )\\d+\\.\\d+#'))) { $h[82] = 7; } if (fiftyone_degrees_CheckHandler( array('#Series60/#' => array('#Samsung/#' => NULL)), NULL, $useragent, array('#(?<=Samsung/)[^/]+#', '#(?<=Series60/)[\\d\\.]+#', '#(?<=SymbianOS/)[\\d\\.]+#', '#(?<=Opera/)\\d+\\.\\d+|(?<=Opera )\\d+\\.\\d+#', '#(?<=Opera Mini/)\\d+\\.\\d+#', '#(?<=\\()[^\\)]+#'))) { $h[83] = 7; } if (fiftyone_degrees_CheckHandler( array('#^Sanyo|^SANYO#' => NULL, '#Sanyo#' => NULL, '#SCP#' => NULL), NULL, $useragent, NULL)) { $h[84] = 7; } if (fiftyone_degrees_CheckHandler( array('#^Sharp|^SHARP#' => NULL), NULL, $useragent, NULL)) { $h[85] = 7; } if (fiftyone_degrees_CheckHandler( array('#^SIE-#' => NULL), NULL, $useragent, NULL)) { $h[86] = 7; } if (fiftyone_degrees_CheckHandler( array('#^SoftBank|^Vodafone|^J-PHONE#' => NULL), NULL, $useragent, array('#(SoftBank|Vodafone|J-PHONE)\\/\\d\\.\\d\\/\\w+#'))) { $h[88] = 7; } if (fiftyone_degrees_CheckHandler( array('#Spice#' => NULL), NULL, $useragent, NULL)) { $h[90] = 7; } if (fiftyone_degrees_CheckHandler( array('#^TIANYU-KTOUCH#' => NULL), NULL, $useragent, array('#(?<=TIANYU-KTOUCH/)[^/]+#', '#.+#'))) { $h[91] = 7; } if (fiftyone_degrees_CheckHandler( array('#Toshiba#' => NULL), NULL, $useragent, NULL)) { $h[92] = 7; } if (fiftyone_degrees_CheckHandler( array('#^Vodafone#' => NULL), NULL, $useragent, NULL)) { $h[93] = 7; } if (fiftyone_degrees_CheckHandler( array('#webOS#' => NULL), NULL, $useragent, NULL)) { $h[94] = 7; } if (fiftyone_degrees_CheckHandler( array('#^Mozilla/#' => array('#Windows CE#' => NULL)), array('#HTC#' => NULL), $useragent, array('#(?<=\\(|;|\\))[^;\\)]+#'))) { $h[96] = 7; } if (fiftyone_degrees_CheckHandler( array('#^ZTE#' => NULL), NULL, $useragent, NULL)) { $h[99] = 7; } if (fiftyone_degrees_CheckHandler( array('#^Mozilla#' => array('#(?i)Webkit#' => array('#Windows|Macintosh|X11#' => NULL))), array('#Chrome|Safari|Android|Nokia|BlackBerry#' => NULL), $useragent, array('#(?<=Mozilla/)\\d\\.\\d#', '#(?<=Mozilla/\\d\\.\\d \\()[^;\\)]+#', '#Windows NT \\d\\.\\d(?=;)|Mac OS X [^\\s]+(?=;)|Ubuntu|X11#', '#(?<=\\(KHTML, like Gecko\\))[^\\(\\)]+#'))) { $h[100] = 7; } if (fiftyone_degrees_CheckHandler( array('#Gecko#' => array('#\\(Macintosh;|\\(Windows|\\(X11;#' => NULL)), array('#Fennec|Linux Mint|Firefox|IceWeasel|Thunderbird|WebKit|BonEcho#' => NULL), $useragent, array('#(?<=Mozilla/)\\d\\.\\d#', '#(?<=Mozilla/\\d\\.\\d \\()[^;\\)]+#', '#Windows NT \\d\\.\\d(?=;)|Mac OS X [^\\s]+(?=;)|Ubuntu|X11|Linux i686#', '#Win\\d(\\d|x)#', '#Fedora#', '#(?<=StumbleUpon/)\\d\\.\\d#', '#Postbox/\\d+\\.\\d#', '#Minefield/\\d\\.\\d#', '#Netscape(\\d|)/\\d\\.\\d#', '#Camino/\\d+\\.\\d#', '#lolifox/\\d+\\.\\d#', '#Icedove/\\d+\\.\\d#', '#Flock/\\d+\\.\\d#', '#zdesktop/\\d+\\.\\d#', '#Abrowser/\\d+\\.\\d#', '#Mnenhy/\\d+\\.\\d#', '#Konqueror/\\d+\\.\\d#', '#Ubuntu/\\d+\\.\\d#', '#Palemoon/\\d+\\.\\d#', '#SeaMonkey(/\\d\\.\\d+|$)#', '#GranParadiso/\\d\\.\\d#', '#K9Browser/\\d+\\.\\d#', '#Touch#'))) { $h[101] = 7; } if (fiftyone_degrees_CheckHandler( array('#iTunes#' => NULL), NULL, $useragent, array('#(?<=\\()[^\\)]+#', '#iPod/\\d\\.\\d#'))) { $h[105] = 7; } if (count($h) > 0) { return $h; } if (fiftyone_degrees_CheckHandler( array('#Opera#' => NULL), array('#Opera Mini|Opera Mobi#' => NULL), $useragent, array('#(?<=Opera/)[\\d+.]+|(?<=Opera )[\\d\\.]+#', '#(?<=\\()[^;]+#', '#(?<=Presto/)\\d+\\.\\d+#', '#(?<=Version/)\\d+\\.\\d+#'))) { $h[68] = 6; } if (fiftyone_degrees_CheckHandler( array('#Opera Mini#' => NULL), NULL, $useragent, array('#(?<=Opera Mini/att/)\\d(/|\\.)\\d#', '#^[^;]+#', '#(?<=Opera Mini/)\\d(/|\\.)\\d#', '#(?<= \\d\\d\\dX\\d\\d\\d).+#', '#(?<=Windows NT )\\d\\.\\d#', '#Opera Mini//\\d+#', '#Version/\\d+\\.\\d+#'))) { $h[70] = 6; } if (fiftyone_degrees_CheckHandler( array('#Opera Mobi#' => NULL), NULL, $useragent, array('#(?<=Version/)\\d+\\.\\d+#', '#(?<=\\()[^;]+#'))) { $h[71] = 6; } if (count($h) > 0) { return $h; } if (fiftyone_degrees_CheckHandler( array('#^portalmmm#' => NULL), NULL, $useragent, NULL)) { $h[76] = 5; } if (fiftyone_degrees_CheckHandler( array('#Outlook#' => NULL), NULL, $useragent, array('#(?<=Microsoft Outlook )[\\d\\.]+#', '#(?<=Outlook 20\\d\\d)[\\d\\.]+#'))) { $h[118] = 5; } if (count($h) > 0) { return $h; } if (fiftyone_degrees_CheckHandler( array('#Profile/MIDP-\\d\\.\\d Configuration/CLDC-\\d\\.\\d#' => NULL), NULL, $useragent, array('#.+(?=Profile/MIDP-\\d\\.\\d Configuration/CLDC-\\d\\.\\d)#'))) { $h[59] = 3; } if (count($h) > 0) { return $h; } if (fiftyone_degrees_CheckHandler( array('#WAP|MIDP|CLDC|Teleca-|Screen-|mobile#' => NULL), NULL, $useragent, NULL)) { $h[42] = 2; } if (fiftyone_degrees_CheckHandler( array('#^iOS/.+dataaccessd#' => NULL), NULL, $useragent, NULL)) { $h[106] = 2; } if (fiftyone_degrees_CheckHandler( array('#^Podcasts#' => NULL), NULL, $useragent, NULL)) { $h[107] = 2; } if (fiftyone_degrees_CheckHandler( array('#^Tiny Tiny RSS#' => NULL), NULL, $useragent, NULL)) { $h[108] = 2; } if (fiftyone_degrees_CheckHandler( array('#^Amazon CloudFront#' => NULL), NULL, $useragent, NULL)) { $h[109] = 2; } if (fiftyone_degrees_CheckHandler( array('#^Wada\\.vn#' => NULL), NULL, $useragent, NULL)) { $h[110] = 2; } if (fiftyone_degrees_CheckHandler( array('#^FeedDemon#' => NULL), NULL, $useragent, NULL)) { $h[111] = 2; } if (fiftyone_degrees_CheckHandler( array('#^python-requests#' => NULL), NULL, $useragent, NULL)) { $h[112] = 2; } if (fiftyone_degrees_CheckHandler( array('#^RSSInclude#' => NULL), NULL, $useragent, NULL)) { $h[113] = 2; } if (fiftyone_degrees_CheckHandler( array('#^curl#' => NULL), NULL, $useragent, NULL)) { $h[114] = 2; } if (fiftyone_degrees_CheckHandler( array('#^Pulp/#' => NULL), NULL, $useragent, NULL)) { $h[115] = 2; } if (fiftyone_degrees_CheckHandler( array('#Win98#' => NULL), NULL, $useragent, NULL)) { $h[116] = 2; } if (fiftyone_degrees_CheckHandler( array('#AppEngine#' => NULL), NULL, $useragent, array('#^[^\\(]+#', '#darwin#'))) { $h[117] = 2; } if (fiftyone_degrees_CheckHandler( array('#^(I|J)UC#' => NULL), NULL, $useragent, array('#^(J|I)UC#', '#UCWEB\\d+\\.\\d#', '#(?<=(Z|z)h(-|_)cn;)[^;]+#', '#Linux;\\sU;\\s\\d\\.\\d#', '#iOS \\d\\.\\d#'))) { $h[120] = 2; } if (fiftyone_degrees_CheckHandler( array('#^server-bag#' => NULL), NULL, $useragent, array('#iPhone OS,\\d\\.\\d#', '#,iPhone|,iPod|,iPad#'))) { $h[121] = 2; } if (fiftyone_degrees_CheckHandler( array('#^-1#' => NULL), NULL, $useragent, NULL)) { $h[122] = 2; } if (fiftyone_degrees_CheckHandler( array('#^MicroMax#' => NULL), NULL, $useragent, NULL)) { $h[123] = 2; } if (fiftyone_degrees_CheckHandler( array('#jig browser#' => NULL), NULL, $useragent, array('#1.0.4; .+\\)$#'))) { $h[124] = 2; } if (fiftyone_degrees_CheckHandler( array('#Konqueror#' => NULL), NULL, $useragent, array('#Konqueror/\\d\\.\\d#'))) { $h[125] = 2; } if (fiftyone_degrees_CheckHandler( array('#heritrix#' => NULL), NULL, $useragent, array('#heritrix/\\d\\.\\d#'))) { $h[126] = 2; } if (fiftyone_degrees_CheckHandler( array('#Java/\\d\\.\\d#' => NULL), NULL, $useragent, array('#(?<=Java/)\\d\\.\\d#', '#Windows .+\\)#', '#Max OS X \\d+\\.\\d#'))) { $h[127] = 2; } if (fiftyone_degrees_CheckHandler( array('#UCWEB#' => NULL), NULL, $useragent, array('#UCBrowser\\d\\.\\d#', '#(?<=\\w\\w-\\w\\w;)[^\\)]+#'))) { $h[128] = 2; } if (count($h) > 0) { return $h; } if (fiftyone_degrees_CheckHandler( array('#\\w+#' => NULL), NULL, $useragent, NULL)) { $h[41] = 1; } if (count($h) > 0) { return $h; } }