DuracellTomi's Google Tag Manager for WordPress - Version 0.8

Version Description

  • Updated: Added subtabs to the admin UI to make room for new features :-)
  • Updated: WhichBrowser library to the latest version
  • Added: You can now dismiss plugin notices permanently for each user
  • Added: weather data. See updated plugin description for details
  • Added: Enhanced E-commerce for WooCommerce (experimental!)
  • Fixed: PHP notice in frontend.php script. Credit to Daniel Sousa
Download this release

Release Info

Developer duracelltomi
Plugin Icon 128x128 DuracellTomi's Google Tag Manager for WordPress
Version 0.8
Comparing to
See all releases

Code changes from version 0.7.1 to 0.8

admin/admin.php CHANGED
@@ -12,24 +12,20 @@ define( 'GTM4WP_ADMIN_GROUP_INCLUDES', 'gtm4wp-admin-group-includes' );
12
  define( 'GTM4WP_ADMIN_GROUP_EVENTS', 'gtm4wp-admin-group-events' );
13
  define( 'GTM4WP_ADMIN_GROUP_SCROLLER', 'gtm4wp-admin-group-scroller' );
14
  define( 'GTM4WP_ADMIN_GROUP_BLACKLIST', 'gtm4wp-admin-group-blacklist-tags' );
15
- define( 'GTM4WP_ADMIN_GROUP_BLACKLISTM', 'gtm4wp-admin-group-blacklist-macro' );
16
  define( 'GTM4WP_ADMIN_GROUP_INTEGRATION', 'gtm4wp-admin-group-integration' );
17
  define( 'GTM4WP_ADMIN_GROUP_ADVANCED', 'gtm4wp-admin-group-advanced' );
18
  define( 'GTM4WP_ADMIN_GROUP_CREDITS', 'gtm4wp-admin-group-credits' );
19
 
 
 
 
 
 
 
 
 
20
  $GLOBALS["gtm4wp_includefieldtexts"] = array(
21
- GTM4WP_OPTION_INCLUDE_REMARKETING => array(
22
- "label" => __( "Remarketing variable", GTM4WP_TEXTDOMAIN ),
23
- "description" => __( "Check this option to include a dataLayer variable where all dataLayer values are stored to be included in your AdWords remarketing tag as a custom variable field", GTM4WP_TEXTDOMAIN )
24
- ),
25
- GTM4WP_OPTION_INCLUDE_LOGGEDIN => array(
26
- "label" => __( "Logged in status", GTM4WP_TEXTDOMAIN ),
27
- "description" => __( "Check this option to include whether there is a logged in user on your website.", GTM4WP_TEXTDOMAIN )
28
- ),
29
- GTM4WP_OPTION_INCLUDE_USERROLE => array(
30
- "label" => __( "Logged in user role", GTM4WP_TEXTDOMAIN ),
31
- "description" => __( "Check this option to include the role of the logged in user.", GTM4WP_TEXTDOMAIN )
32
- ),
33
  GTM4WP_OPTION_INCLUDE_POSTTYPE => array(
34
  "label" => __( "Posttype of current post/archive", GTM4WP_TEXTDOMAIN ),
35
  "description" => __( "Check this option to include the type of the current post or archive page (post, page or any custom post type).", GTM4WP_TEXTDOMAIN )
@@ -62,6 +58,18 @@ $GLOBALS["gtm4wp_includefieldtexts"] = array(
62
  "label" => __( "Search data", GTM4WP_TEXTDOMAIN ),
63
  "description" => __( "Check this option to include the search term, referring page URL and number of results on the search page.", GTM4WP_TEXTDOMAIN )
64
  ),
 
 
 
 
 
 
 
 
 
 
 
 
65
  GTM4WP_OPTION_INCLUDE_BROWSERDATA => array(
66
  "label" => __( "Browser data *", GTM4WP_TEXTDOMAIN ),
67
  "description" => __( "Check this option to include the name, version and engine data of the browser the visitor uses.", GTM4WP_TEXTDOMAIN )
@@ -73,6 +81,14 @@ $GLOBALS["gtm4wp_includefieldtexts"] = array(
73
  GTM4WP_OPTION_INCLUDE_DEVICEDATA => array(
74
  "label" => __( "Device data *", GTM4WP_TEXTDOMAIN ),
75
  "description" => __( "Check this option to include the type of device the user is currently using (desktop, tablet or mobile) including manufacturer and model data.", GTM4WP_TEXTDOMAIN )
 
 
 
 
 
 
 
 
76
  )
77
  );
78
 
@@ -266,11 +282,29 @@ $GLOBALS["gtm4wp_integratefieldtexts"] = array(
266
  "description" => __( "Check this to include a dataLayer event after a successfull form submission.", GTM4WP_TEXTDOMAIN ),
267
  "plugintocheck" => "contact-form-7/wp-contact-form-7.php"
268
  ),
 
269
  GTM4WP_OPTION_INTEGRATE_WOOCOMMERCE => array(
270
  "label" => __( "WooCommerce", GTM4WP_TEXTDOMAIN ),
271
  "description" => __( "Enable this and you will get:<br /> - Add-to-cart events<br /> - E-commerce transaction data ready to be used with Google Analytics and Universal Analytics tags<br /> - Google AdWords dynamic remarketing tags", GTM4WP_TEXTDOMAIN ),
272
  "plugintocheck" => "woocommerce/woocommerce.php"
273
  )
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
274
  );
275
 
276
  function gtm4wp_admin_output_section( $args ) {
@@ -309,13 +343,7 @@ function gtm4wp_admin_output_section( $args ) {
309
  }
310
 
311
  case GTM4WP_ADMIN_GROUP_BLACKLIST: {
312
- _e( "Here you can control which types of tags can be executed on your site regardless of what tags are included in your container on the Google Tag Manager site. Use this to increase security!", GTM4WP_TEXTDOMAIN );
313
-
314
- break;
315
- }
316
-
317
- case GTM4WP_ADMIN_GROUP_BLACKLISTM: {
318
- _e( "Here you can control which types of macros can work from your Google Tag Manager setup.", GTM4WP_TEXTDOMAIN );
319
  echo '<br />';
320
  _e( "Do not modify if you do not know what to do since it can cause issues in your tag deployment!", GTM4WP_TEXTDOMAIN );
321
  echo '<br />';
@@ -377,6 +405,15 @@ function gtm4wp_admin_output_field( $args ) {
377
  echo '<input type="radio" id="' . GTM4WP_OPTIONS . '[' . GTM4WP_OPTION_BLACKLIST_ENABLE . ']_0" name="' . GTM4WP_OPTIONS . '[' . GTM4WP_OPTION_BLACKLIST_ENABLE . ']" value="0" ' . ( $gtm4wp_options[GTM4WP_OPTION_BLACKLIST_ENABLE] == 0 ? 'checked="checked"' : '' ) . '/> ' . __( "Disable feature: control everything on Google Tag Manager interface", GTM4WP_TEXTDOMAIN ) . '<br />';
378
  echo '<input type="radio" id="' . GTM4WP_OPTIONS . '[' . GTM4WP_OPTION_BLACKLIST_ENABLE . ']_1" name="' . GTM4WP_OPTIONS . '[' . GTM4WP_OPTION_BLACKLIST_ENABLE . ']" value="1" ' . ( $gtm4wp_options[GTM4WP_OPTION_BLACKLIST_ENABLE] == 1 ? 'checked="checked"' : '' ) . '/> ' . __( "Allow all, except the checked items below (blacklist)", GTM4WP_TEXTDOMAIN ) . '<br />';
379
  echo '<input type="radio" id="' . GTM4WP_OPTIONS . '[' . GTM4WP_OPTION_BLACKLIST_ENABLE . ']_2" name="' . GTM4WP_OPTIONS . '[' . GTM4WP_OPTION_BLACKLIST_ENABLE . ']" value="2" ' . ( $gtm4wp_options[GTM4WP_OPTION_BLACKLIST_ENABLE] == 2 ? 'checked="checked"' : '' ) . '/> ' . __( "Block all, except the checked items below (whitelist)", GTM4WP_TEXTDOMAIN ) . '<br />';
 
 
 
 
 
 
 
 
 
380
 
381
  break;
382
  }
@@ -632,20 +669,13 @@ function gtm4wp_admin_init() {
632
  );
633
  }
634
 
635
- add_settings_section(
636
- GTM4WP_ADMIN_GROUP_BLACKLISTM,
637
- __( 'Blacklist macros', GTM4WP_TEXTDOMAIN ),
638
- 'gtm4wp_admin_output_section',
639
- GTM4WP_ADMINSLUG
640
- );
641
-
642
  foreach($gtm4wp_blacklistmfieldtexts as $fieldid => $fielddata) {
643
  add_settings_field(
644
  "gtm4wp-admin-" . $fieldid . "-id",
645
  $fielddata["label"],
646
  'gtm4wp_admin_output_field',
647
  GTM4WP_ADMINSLUG,
648
- GTM4WP_ADMIN_GROUP_BLACKLISTM,
649
  array(
650
  "label_for" => "gtm4wp-options[" . $fieldid . "]",
651
  "description" => $fielddata["description"],
@@ -750,6 +780,23 @@ function gtm4wp_add_admin_js($hook) {
750
  global $gtp4wp_plugin_url;
751
 
752
  if ( $hook == "settings_page_" . GTM4WP_ADMINSLUG ) {
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
753
  wp_enqueue_script( "admin-tabcreator", $gtp4wp_plugin_url . "js/admin-tabcreator.js", array( "jquery-core" ), "1.0" );
754
 
755
  wp_enqueue_style( "gtm4wp-validate", $gtp4wp_plugin_url . "css/admin-gtm4wp.css", array(), "1.0" );
@@ -796,26 +843,89 @@ function gtm4wp_admin_head() {
796
  }
797
  }
798
  });
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
799
  });
800
  </script>';
801
  }
802
 
803
  function gtm4wp_show_warning() {
804
- global $gtm4wp_options, $gtp4wp_plugin_url, $gtm4wp_integratefieldtexts;
805
-
806
- if ( trim( $gtm4wp_options[GTM4WP_OPTION_GTM_CODE] ) == "" ) {
807
- echo '<div id="message" class="error"><p><strong>' . sprintf( __( 'To start using Google Tag Manager for WordPress, please <a href="%s">enter your GTM ID</a>', GTM4WP_TEXTDOMAIN ), "options-general.php?page=" . GTM4WP_ADMINSLUG ) . '</strong></p></div>';
 
 
 
 
 
 
 
 
 
 
 
 
808
  }
809
 
810
- if ( $gtm4wp_options[GTM4WP_OPTION_INTEGRATE_WOOCOMMERCE] && is_plugin_active( $gtm4wp_integratefieldtexts[GTM4WP_OPTION_INTEGRATE_WOOCOMMERCE]["plugintocheck"] ) ) {
811
- $woo_ga_options = get_option( "woocommerce_google_analytics_settings" );
812
- if ( $woo_ga_options ) {
813
- if ( "" != $woo_ga_options["ga_id"] ) {
814
- echo '<div id="message" class="error"><p><strong>' . __( 'Possible duplacate tag issue: you should disable Google Analytics tracking <a href="admin.php?page=woocommerce_settings&tab=integration&section=google_analytics">in WooCommerce settings</a> by leaving Google Analytics ID field empty to prevent any duplicate tags being used on the frontend!', GTM4WP_TEXTDOMAIN ) . '</strong></p></div>';
 
 
 
 
 
 
815
  }
 
 
 
 
 
 
 
 
816
  }
817
  }
818
-
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
819
  }
820
 
821
  function gtm4wp_add_plugin_action_links( $links, $file ) {
@@ -837,3 +947,4 @@ add_action( 'admin_enqueue_scripts', 'gtm4wp_add_admin_js' );
837
  add_action( 'admin_notices', 'gtm4wp_show_warning' );
838
  add_action( 'admin_head', 'gtm4wp_admin_head' );
839
  add_filter( 'plugin_action_links', 'gtm4wp_add_plugin_action_links', 10, 2 );
 
12
  define( 'GTM4WP_ADMIN_GROUP_EVENTS', 'gtm4wp-admin-group-events' );
13
  define( 'GTM4WP_ADMIN_GROUP_SCROLLER', 'gtm4wp-admin-group-scroller' );
14
  define( 'GTM4WP_ADMIN_GROUP_BLACKLIST', 'gtm4wp-admin-group-blacklist-tags' );
15
+ //define( 'GTM4WP_ADMIN_GROUP_BLACKLISTM', 'gtm4wp-admin-group-blacklist-macro' );
16
  define( 'GTM4WP_ADMIN_GROUP_INTEGRATION', 'gtm4wp-admin-group-integration' );
17
  define( 'GTM4WP_ADMIN_GROUP_ADVANCED', 'gtm4wp-admin-group-advanced' );
18
  define( 'GTM4WP_ADMIN_GROUP_CREDITS', 'gtm4wp-admin-group-credits' );
19
 
20
+ define( 'GTM4WP_USER_NOTICES_KEY', 'gtm4wp_user_notices_dismisses' );
21
+
22
+ $GLOBALS["gtm4wp_def_user_notices_dismisses"] = array(
23
+ "enter-gtm-code" => false,
24
+ "wc-ga-plugin-warning" => false,
25
+ "wc-gayoast-plugin-warning" => false
26
+ );
27
+
28
  $GLOBALS["gtm4wp_includefieldtexts"] = array(
 
 
 
 
 
 
 
 
 
 
 
 
29
  GTM4WP_OPTION_INCLUDE_POSTTYPE => array(
30
  "label" => __( "Posttype of current post/archive", GTM4WP_TEXTDOMAIN ),
31
  "description" => __( "Check this option to include the type of the current post or archive page (post, page or any custom post type).", GTM4WP_TEXTDOMAIN )
58
  "label" => __( "Search data", GTM4WP_TEXTDOMAIN ),
59
  "description" => __( "Check this option to include the search term, referring page URL and number of results on the search page.", GTM4WP_TEXTDOMAIN )
60
  ),
61
+ GTM4WP_OPTION_INCLUDE_LOGGEDIN => array(
62
+ "label" => __( "Logged in status", GTM4WP_TEXTDOMAIN ),
63
+ "description" => __( "Check this option to include whether there is a logged in user on your website.", GTM4WP_TEXTDOMAIN )
64
+ ),
65
+ GTM4WP_OPTION_INCLUDE_USERROLE => array(
66
+ "label" => __( "Logged in user role", GTM4WP_TEXTDOMAIN ),
67
+ "description" => __( "Check this option to include the role of the logged in user.", GTM4WP_TEXTDOMAIN )
68
+ ),
69
+ GTM4WP_OPTION_INCLUDE_REMARKETING => array(
70
+ "label" => __( "Remarketing variable", GTM4WP_TEXTDOMAIN ),
71
+ "description" => __( "Check this option to include a dataLayer variable where all dataLayer values are stored to be included in your AdWords remarketing tag as a custom variable field", GTM4WP_TEXTDOMAIN )
72
+ ),
73
  GTM4WP_OPTION_INCLUDE_BROWSERDATA => array(
74
  "label" => __( "Browser data *", GTM4WP_TEXTDOMAIN ),
75
  "description" => __( "Check this option to include the name, version and engine data of the browser the visitor uses.", GTM4WP_TEXTDOMAIN )
81
  GTM4WP_OPTION_INCLUDE_DEVICEDATA => array(
82
  "label" => __( "Device data *", GTM4WP_TEXTDOMAIN ),
83
  "description" => __( "Check this option to include the type of device the user is currently using (desktop, tablet or mobile) including manufacturer and model data.", GTM4WP_TEXTDOMAIN )
84
+ ),
85
+ GTM4WP_OPTION_INCLUDE_WEATHER => array(
86
+ "label" => __( "Weather data", GTM4WP_TEXTDOMAIN ),
87
+ "description" => sprintf( __( "Check this option to include the current weather conditions around the current visitor.<br /><strong>Attention!</strong> This feature uses <a href=\"%s\" target=\"_blank\">geoplugin.com</a> and <a href=\"%s\" target=\"_blank\">openweathermap.org</a> to collect data.<br />Depending on your website's traffic, additional fees may apply!<br />This plugin caches weather data for 1 hour to lower the need to access those services.", GTM4WP_TEXTDOMAIN ), "http://www.geoplugin.com/premium?utm_source=gtm4wp&utm_medium=link&utm_campaign=duracelltomi-google-tag-manager-for-wordpress", "http://openweathermap.org/price?utm_source=gtm4wp&utm_medium=link&utm_campaign=duracelltomi-google-tag-manager-for-wordpress" )
88
+ ),
89
+ GTM4WP_OPTION_INCLUDE_WEATHERUNITS => array(
90
+ "label" => __( "Weather data units", GTM4WP_TEXTDOMAIN ),
91
+ "description" => __( "Select which temperature units you would like to use.", GTM4WP_TEXTDOMAIN )
92
  )
93
  );
94
 
282
  "description" => __( "Check this to include a dataLayer event after a successfull form submission.", GTM4WP_TEXTDOMAIN ),
283
  "plugintocheck" => "contact-form-7/wp-contact-form-7.php"
284
  ),
285
+ /*
286
  GTM4WP_OPTION_INTEGRATE_WOOCOMMERCE => array(
287
  "label" => __( "WooCommerce", GTM4WP_TEXTDOMAIN ),
288
  "description" => __( "Enable this and you will get:<br /> - Add-to-cart events<br /> - E-commerce transaction data ready to be used with Google Analytics and Universal Analytics tags<br /> - Google AdWords dynamic remarketing tags", GTM4WP_TEXTDOMAIN ),
289
  "plugintocheck" => "woocommerce/woocommerce.php"
290
  )
291
+ */
292
+ GTM4WP_OPTION_INTEGRATE_WCTRACKCLASSICEC => array(
293
+ "label" => __( "Track classic e-commerce", GTM4WP_TEXTDOMAIN ),
294
+ "description" => __( sprintf( __( "Choose this option if you would like to track e-commerce data using <a href=\"%s\" target=\"_blank\">classic transaction data</a>.", GTM4WP_TEXTDOMAIN ) , 'https://developers.google.com/analytics/devguides/collection/analyticsjs/ecommerce'), GTM4WP_TEXTDOMAIN ),
295
+ "plugintocheck" => "woocommerce/woocommerce.php"
296
+ ),
297
+ GTM4WP_OPTION_INTEGRATE_WCTRACKENHANCEDEC => array(
298
+ "label" => __( "Track enhanced e-commerce", GTM4WP_TEXTDOMAIN ),
299
+ "description" => __( sprintf( __( "Choose this option if you would like to track e-commerce data using <a href=\"%s\" target=\"_blank\">enhanced ecommerce tracking</a>.", GTM4WP_TEXTDOMAIN ) , 'https://developers.google.com/analytics/devguides/collection/analyticsjs/enhanced-ecommerce'), GTM4WP_TEXTDOMAIN ) .
300
+ __( '<br/>This feature is <strong>experimental</strong>. Currently it is not recommended to be used in live environments!', GTM4WP_TEXTDOMAIN ),
301
+ "plugintocheck" => "woocommerce/woocommerce.php"
302
+ ),
303
+ GTM4WP_OPTION_INTEGRATE_WCREMARKETING => array(
304
+ "label" => __( "AdWords Remarketing", GTM4WP_TEXTDOMAIN ),
305
+ "description" => __( "Enable this to add Google AdWords dynamic remarketing variables to the dataLayer", GTM4WP_TEXTDOMAIN ),
306
+ "plugintocheck" => "woocommerce/woocommerce.php"
307
+ )
308
  );
309
 
310
  function gtm4wp_admin_output_section( $args ) {
343
  }
344
 
345
  case GTM4WP_ADMIN_GROUP_BLACKLIST: {
346
+ _e( "Here you can control which types of tags and macros can be executed on your site regardless of what tags are included in your container on the Google Tag Manager site. Use this to increase security!", GTM4WP_TEXTDOMAIN );
 
 
 
 
 
 
347
  echo '<br />';
348
  _e( "Do not modify if you do not know what to do since it can cause issues in your tag deployment!", GTM4WP_TEXTDOMAIN );
349
  echo '<br />';
405
  echo '<input type="radio" id="' . GTM4WP_OPTIONS . '[' . GTM4WP_OPTION_BLACKLIST_ENABLE . ']_0" name="' . GTM4WP_OPTIONS . '[' . GTM4WP_OPTION_BLACKLIST_ENABLE . ']" value="0" ' . ( $gtm4wp_options[GTM4WP_OPTION_BLACKLIST_ENABLE] == 0 ? 'checked="checked"' : '' ) . '/> ' . __( "Disable feature: control everything on Google Tag Manager interface", GTM4WP_TEXTDOMAIN ) . '<br />';
406
  echo '<input type="radio" id="' . GTM4WP_OPTIONS . '[' . GTM4WP_OPTION_BLACKLIST_ENABLE . ']_1" name="' . GTM4WP_OPTIONS . '[' . GTM4WP_OPTION_BLACKLIST_ENABLE . ']" value="1" ' . ( $gtm4wp_options[GTM4WP_OPTION_BLACKLIST_ENABLE] == 1 ? 'checked="checked"' : '' ) . '/> ' . __( "Allow all, except the checked items below (blacklist)", GTM4WP_TEXTDOMAIN ) . '<br />';
407
  echo '<input type="radio" id="' . GTM4WP_OPTIONS . '[' . GTM4WP_OPTION_BLACKLIST_ENABLE . ']_2" name="' . GTM4WP_OPTIONS . '[' . GTM4WP_OPTION_BLACKLIST_ENABLE . ']" value="2" ' . ( $gtm4wp_options[GTM4WP_OPTION_BLACKLIST_ENABLE] == 2 ? 'checked="checked"' : '' ) . '/> ' . __( "Block all, except the checked items below (whitelist)", GTM4WP_TEXTDOMAIN ) . '<br />';
408
+ echo $args["description"];
409
+
410
+ break;
411
+ }
412
+
413
+ case GTM4WP_OPTIONS . "[" . GTM4WP_OPTION_INCLUDE_WEATHERUNITS . "]": {
414
+ echo '<input type="radio" id="' . GTM4WP_OPTIONS . '[' . GTM4WP_OPTION_INCLUDE_WEATHERUNITS . ']_0" name="' . GTM4WP_OPTIONS . '[' . GTM4WP_OPTION_INCLUDE_WEATHERUNITS . ']" value="0" ' . ( $gtm4wp_options[GTM4WP_OPTION_INCLUDE_WEATHERUNITS] == 0 ? 'checked="checked"' : '' ) . '/> ' . __( "Celsius", GTM4WP_TEXTDOMAIN ) . '<br />';
415
+ echo '<input type="radio" id="' . GTM4WP_OPTIONS . '[' . GTM4WP_OPTION_INCLUDE_WEATHERUNITS . ']_1" name="' . GTM4WP_OPTIONS . '[' . GTM4WP_OPTION_INCLUDE_WEATHERUNITS . ']" value="1" ' . ( $gtm4wp_options[GTM4WP_OPTION_INCLUDE_WEATHERUNITS] == 1 ? 'checked="checked"' : '' ) . '/> ' . __( "Fahrenheit", GTM4WP_TEXTDOMAIN ) . '<br />';
416
+ echo $args["description"];
417
 
418
  break;
419
  }
669
  );
670
  }
671
 
 
 
 
 
 
 
 
672
  foreach($gtm4wp_blacklistmfieldtexts as $fieldid => $fielddata) {
673
  add_settings_field(
674
  "gtm4wp-admin-" . $fieldid . "-id",
675
  $fielddata["label"],
676
  'gtm4wp_admin_output_field',
677
  GTM4WP_ADMINSLUG,
678
+ GTM4WP_ADMIN_GROUP_BLACKLIST,
679
  array(
680
  "label_for" => "gtm4wp-options[" . $fieldid . "]",
681
  "description" => $fielddata["description"],
780
  global $gtp4wp_plugin_url;
781
 
782
  if ( $hook == "settings_page_" . GTM4WP_ADMINSLUG ) {
783
+ wp_register_script( "admin-subtabs", $gtp4wp_plugin_url . "js/admin-subtabs.js" );
784
+
785
+ $subtabtexts = array(
786
+ "posttabtitle" => __( "Posts" , GTM4WP_TEXTDOMAIN ),
787
+ "searchtabtitle" => __( "Search" , GTM4WP_TEXTDOMAIN ),
788
+ "visitortabtitle" => __( "Visitors" , GTM4WP_TEXTDOMAIN ),
789
+ "adwordstabtitle" => __( "AdWords" , GTM4WP_TEXTDOMAIN ),
790
+ "browsertabtitle" => __( "Browser/OS/Device" , GTM4WP_TEXTDOMAIN ),
791
+ "blocktagstabtitle" => __( "Blacklist tags" , GTM4WP_TEXTDOMAIN ),
792
+ "blockmacrostabtitle" => __( "Blacklist macros" , GTM4WP_TEXTDOMAIN ),
793
+ "wpcf7tabtitle" => __( "Contact Form 7" , GTM4WP_TEXTDOMAIN ),
794
+ "wctabtitle" => __( "WooCommerce" , GTM4WP_TEXTDOMAIN ),
795
+ "weathertabtitle" => __( "Weather data" , GTM4WP_TEXTDOMAIN )
796
+ );
797
+ wp_localize_script( "admin-subtabs", 'gtm4wp', $subtabtexts );
798
+ wp_enqueue_script( "admin-subtabs" );
799
+
800
  wp_enqueue_script( "admin-tabcreator", $gtp4wp_plugin_url . "js/admin-tabcreator.js", array( "jquery-core" ), "1.0" );
801
 
802
  wp_enqueue_style( "gtm4wp-validate", $gtp4wp_plugin_url . "css/admin-gtm4wp.css", array(), "1.0" );
843
  }
844
  }
845
  });
846
+
847
+ jQuery( ".dismiss-notice" )
848
+ .bind( "click", function( e ) {
849
+ e.preventDefault();
850
+
851
+ jQuery.post(ajaxurl, {
852
+ action: "gtm4wp_dismiss_notice",
853
+ noticeid: jQuery( this )
854
+ .attr( "href" )
855
+ .substring( 1 )
856
+ }, function ( response ) {
857
+ jQuery( ".dismiss-notice" )
858
+ .parent()
859
+ .parent()
860
+ .fadeOut( "slow" );
861
+ });
862
+ });
863
  });
864
  </script>';
865
  }
866
 
867
  function gtm4wp_show_warning() {
868
+ global $gtm4wp_options, $gtp4wp_plugin_url, $gtm4wp_integratefieldtexts, $woocommerce, $current_user,
869
+ $gtm4wp_def_user_notices_dismisses;
870
+
871
+ $gtm4wp_user_notices_dismisses = get_user_meta( $current_user->ID, GTM4WP_USER_NOTICES_KEY, true );
872
+ if ( $gtm4wp_user_notices_dismisses === "" ) {
873
+ $gtm4wp_user_notices_dismisses = $gtm4wp_def_user_notices_dismisses;
874
+ } else {
875
+ $gtm4wp_user_notices_dismisses = @unserialize( $gtm4wp_user_notices_dismisses );
876
+ if ( false === $gtm4wp_user_notices_dismisses ) {
877
+ $gtm4wp_user_notices_dismisses = array();
878
+ }
879
+ }
880
+ $gtm4wp_user_notices_dismisses = array_merge( $gtm4wp_def_user_notices_dismisses, $gtm4wp_user_notices_dismisses );
881
+
882
+ if ( ( trim( $gtm4wp_options[GTM4WP_OPTION_GTM_CODE] ) == "" ) && ( false === $gtm4wp_user_notices_dismisses["enter-gtm-code"] ) ) {
883
+ echo '<div id="message" class="error"><p><strong>' . sprintf( __( 'To start using Google Tag Manager for WordPress, please <a href="%s">enter your GTM ID</a>', GTM4WP_TEXTDOMAIN ), "options-general.php?page=" . GTM4WP_ADMINSLUG ) . '</strong> | <a href="?enter-gtm-code" class="dismiss-notice">' . __( 'Dismiss', GTM4WP_TEXTDOMAIN ) . '</a></p></div>';
884
  }
885
 
886
+ if ( ( false === $gtm4wp_user_notices_dismisses["wc-ga-plugin-warning"] ) || ( false === $gtm4wp_user_notices_dismisses["wc-gayoast-plugin-warning"] ) ) {
887
+ $is_wc_active = $gtm4wp_options[ GTM4WP_OPTION_INTEGRATE_WCTRACKCLASSICEC ] ||
888
+ $gtm4wp_options[ GTM4WP_OPTION_INTEGRATE_WCTRACKENHANCEDEC ] ||
889
+ $gtm4wp_options[ GTM4WP_OPTION_INTEGRATE_WCREMARKETING ];
890
+
891
+ if ( ( false === $gtm4wp_user_notices_dismisses["wc-ga-plugin-warning"] ) && $is_wc_active && is_plugin_active( $gtm4wp_integratefieldtexts[ GTM4WP_OPTION_INTEGRATE_WCTRACKCLASSICEC ][ "plugintocheck" ] ) && ( version_compare( $woocommerce->version, "2.1" ) < 0 ) ) {
892
+ $woo_ga_options = get_option( "woocommerce_google_analytics_settings" );
893
+ if ( $woo_ga_options ) {
894
+ if ( "" != $woo_ga_options["ga_id"] ) {
895
+ echo '<div id="message" class="error"><p><strong>' . __( 'Notice: you should disable Google Analytics tracking <a href="admin.php?page=woocommerce_settings&tab=integration&section=google_analytics">in WooCommerce settings</a> by leaving Google Analytics ID field empty if you are using Google Analytics tags inside Google Tag Manager!', GTM4WP_TEXTDOMAIN ) . '</strong> | <a href="?wc-ga-plugin-warning" class="dismiss-notice">' . __( 'Dismiss', GTM4WP_TEXTDOMAIN ) . '</a></p></div>';
896
+ }
897
  }
898
+ }
899
+
900
+ if ( ( false === $gtm4wp_user_notices_dismisses["wc-ga-plugin-warning"] ) && $is_wc_active && is_plugin_active( "woocommerce-google-analytics-integration/woocommerce-google-analytics-integration.php" ) ) {
901
+ echo '<div id="message" class="error"><p><strong>' . __( 'Notice: you should deactivate the plugin "WooCommerce Google Analytics Integration" if you are using Google Analytics tags inside Google Tag Manager!', GTM4WP_TEXTDOMAIN ) . '</strong> | <a href="?wc-ga-plugin-warning" class="dismiss-notice">' . __( 'Dismiss', GTM4WP_TEXTDOMAIN ) . '</a></p></div>';
902
+ }
903
+
904
+ if ( ( false === $gtm4wp_user_notices_dismisses["wc-gayoast-plugin-warning"] ) && $is_wc_active && is_plugin_active( "google-analytics-for-wordpress/googleanalytics.php" ) ) {
905
+ echo '<div id="message" class="error"><p><strong>' . __( 'Notice: you should deactivate the plugin "Google Analytics for WordPress by Yoast" if you are using Google Analytics tags inside Google Tag Manager!', GTM4WP_TEXTDOMAIN ) . '</strong> | <a href="?wc-gayoast-plugin-warning" class="dismiss-notice">' . __( 'Dismiss', GTM4WP_TEXTDOMAIN ) . '</a></p></div>';
906
  }
907
  }
908
+ }
909
+
910
+ function gtm4wp_dismiss_notice() {
911
+ global $gtm4wp_def_user_notices_dismisses, $current_user;
912
+
913
+ $gtm4wp_user_notices_dismisses = get_user_meta( $current_user->ID, GTM4WP_USER_NOTICES_KEY, true );
914
+ if ( $gtm4wp_user_notices_dismisses === "" ) {
915
+ $gtm4wp_user_notices_dismisses = $gtm4wp_def_user_notices_dismisses;
916
+ } else {
917
+ $gtm4wp_user_notices_dismisses = @unserialize( $gtm4wp_user_notices_dismisses );
918
+ if ( false === $gtm4wp_user_notices_dismisses ) {
919
+ $gtm4wp_user_notices_dismisses = array();
920
+ }
921
+ }
922
+ $gtm4wp_user_notices_dismisses = array_merge( $gtm4wp_def_user_notices_dismisses, $gtm4wp_user_notices_dismisses );
923
+
924
+ $noticeid = trim( basename( $_POST["noticeid"] ) );
925
+ if ( array_key_exists( $noticeid, $gtm4wp_user_notices_dismisses ) ) {
926
+ $gtm4wp_user_notices_dismisses[ $noticeid ] = true;
927
+ update_user_meta( $current_user->ID, GTM4WP_USER_NOTICES_KEY, serialize( $gtm4wp_user_notices_dismisses ) );
928
+ }
929
  }
930
 
931
  function gtm4wp_add_plugin_action_links( $links, $file ) {
947
  add_action( 'admin_notices', 'gtm4wp_show_warning' );
948
  add_action( 'admin_head', 'gtm4wp_admin_head' );
949
  add_filter( 'plugin_action_links', 'gtm4wp_add_plugin_action_links', 10, 2 );
950
+ add_action( 'wp_ajax_gtm4wp_dismiss_notice', 'gtm4wp_dismiss_notice' );
common/readoptions.php CHANGED
@@ -18,6 +18,8 @@ define( 'GTM4WP_OPTION_INCLUDE_SEARCHDATA', 'include-searchdata' );
18
  define( 'GTM4WP_OPTION_INCLUDE_BROWSERDATA', 'include-browserdata' );
19
  define( 'GTM4WP_OPTION_INCLUDE_OSDATA', 'include-osdata' );
20
  define( 'GTM4WP_OPTION_INCLUDE_DEVICEDATA', 'include-devicedata' );
 
 
21
 
22
  define( 'GTM4WP_OPTION_EVENTS_OUTBOUND', 'event-outbound' );
23
  define( 'GTM4WP_OPTION_EVENTS_DOWNLOADS', 'event-downloads' );
@@ -66,9 +68,14 @@ define( 'GTM4WP_OPTION_BLACKLIST_MACRO_REFERRER', 'blacklist-macro-referrer'
66
  define( 'GTM4WP_OPTION_BLACKLIST_MACRO_URL', 'blacklist-macro-url' );
67
  define( 'GTM4WP_OPTION_BLACKLIST_MACRO_AUTOEVENT', 'blacklist-macro-autoevent-variable' );
68
 
69
- define( 'GTM4WP_OPTION_INTEGRATE_WPCF7', 'integrate-wpcf7' );
70
- define( 'GTM4WP_OPTION_INTEGRATE_WOOCOMMERCE', 'integrate-woocommerce' );
71
- define( 'GTM4WP_OPTION_INTEGRATE_WPECOMMERCE', 'integrate-wp-e-commerce' );
 
 
 
 
 
72
 
73
  define( 'GTM4WP_PLACEMENT_FOOTER', 0 );
74
  define( 'GTM4WP_PLACEMENT_BODYOPEN', 1 );
@@ -80,20 +87,22 @@ $gtm4wp_defaultoptions = array(
80
  GTM4WP_OPTION_DATALAYER_NAME => "",
81
  GTM4WP_OPTION_GTM_PLACEMENT => GTM4WP_PLACEMENT_FOOTER,
82
 
83
- GTM4WP_OPTION_INCLUDE_REMARKETING => false,
84
- GTM4WP_OPTION_INCLUDE_LOGGEDIN => false,
85
- GTM4WP_OPTION_INCLUDE_USERROLE => false,
86
- GTM4WP_OPTION_INCLUDE_POSTTYPE => true,
87
- GTM4WP_OPTION_INCLUDE_CATEGORIES => true,
88
- GTM4WP_OPTION_INCLUDE_TAGS => true,
89
- GTM4WP_OPTION_INCLUDE_AUTHOR => true,
90
- GTM4WP_OPTION_INCLUDE_POSTDATE => false,
91
- GTM4WP_OPTION_INCLUDE_POSTTITLE => false,
92
- GTM4WP_OPTION_INCLUDE_POSTCOUNT => false,
93
- GTM4WP_OPTION_INCLUDE_SEARCHDATA => false,
94
- GTM4WP_OPTION_INCLUDE_BROWSERDATA => false,
95
- GTM4WP_OPTION_INCLUDE_OSDATA => false,
96
- GTM4WP_OPTION_INCLUDE_DEVICEDATA => false,
 
 
97
 
98
  GTM4WP_OPTION_EVENTS_OUTBOUND => false,
99
  GTM4WP_OPTION_EVENTS_DOWNLOADS => false,
@@ -143,7 +152,12 @@ $gtm4wp_defaultoptions = array(
143
  GTM4WP_OPTION_BLACKLIST_MACRO_AUTOEVENT => true,
144
 
145
  GTM4WP_OPTION_INTEGRATE_WPCF7 => false,
146
- GTM4WP_OPTION_INTEGRATE_WOOCOMMERCE => false,
 
 
 
 
 
147
  GTM4WP_OPTION_INTEGRATE_WPECOMMERCE => false
148
  );
149
 
@@ -154,6 +168,15 @@ function gtm4wp_reload_options() {
154
  if ( ! is_array( $gtm4wp_defaultoptions ) ) {
155
  $gtm4wp_defaultoptions = array();
156
  }
 
 
 
 
 
 
 
 
 
157
 
158
  return array_merge( $gtm4wp_defaultoptions, $storedoptions );
159
  }
18
  define( 'GTM4WP_OPTION_INCLUDE_BROWSERDATA', 'include-browserdata' );
19
  define( 'GTM4WP_OPTION_INCLUDE_OSDATA', 'include-osdata' );
20
  define( 'GTM4WP_OPTION_INCLUDE_DEVICEDATA', 'include-devicedata' );
21
+ define( 'GTM4WP_OPTION_INCLUDE_WEATHER', 'include-weather' );
22
+ define( 'GTM4WP_OPTION_INCLUDE_WEATHERUNITS', 'include-weatherunits' );
23
 
24
  define( 'GTM4WP_OPTION_EVENTS_OUTBOUND', 'event-outbound' );
25
  define( 'GTM4WP_OPTION_EVENTS_DOWNLOADS', 'event-downloads' );
68
  define( 'GTM4WP_OPTION_BLACKLIST_MACRO_URL', 'blacklist-macro-url' );
69
  define( 'GTM4WP_OPTION_BLACKLIST_MACRO_AUTOEVENT', 'blacklist-macro-autoevent-variable' );
70
 
71
+ define( 'GTM4WP_OPTION_INTEGRATE_WPCF7', 'integrate-wpcf7' );
72
+
73
+ define( 'GTM4WP_OPTION_INTEGRATE_WOOCOMMERCE', 'integrate-woocommerce' );
74
+ define( 'GTM4WP_OPTION_INTEGRATE_WCTRACKCLASSICEC', 'integrate-woocommerce-track-classic-ecommerce' );
75
+ define( 'GTM4WP_OPTION_INTEGRATE_WCTRACKENHANCEDEC', 'integrate-woocommerce-track-enhanced-ecommerce' );
76
+ define( 'GTM4WP_OPTION_INTEGRATE_WCREMARKETING', 'integrate-woocommerce-remarketing' );
77
+
78
+ define( 'GTM4WP_OPTION_INTEGRATE_WPECOMMERCE', 'integrate-wp-e-commerce' );
79
 
80
  define( 'GTM4WP_PLACEMENT_FOOTER', 0 );
81
  define( 'GTM4WP_PLACEMENT_BODYOPEN', 1 );
87
  GTM4WP_OPTION_DATALAYER_NAME => "",
88
  GTM4WP_OPTION_GTM_PLACEMENT => GTM4WP_PLACEMENT_FOOTER,
89
 
90
+ GTM4WP_OPTION_INCLUDE_REMARKETING => false,
91
+ GTM4WP_OPTION_INCLUDE_LOGGEDIN => false,
92
+ GTM4WP_OPTION_INCLUDE_USERROLE => false,
93
+ GTM4WP_OPTION_INCLUDE_POSTTYPE => true,
94
+ GTM4WP_OPTION_INCLUDE_CATEGORIES => true,
95
+ GTM4WP_OPTION_INCLUDE_TAGS => true,
96
+ GTM4WP_OPTION_INCLUDE_AUTHOR => true,
97
+ GTM4WP_OPTION_INCLUDE_POSTDATE => false,
98
+ GTM4WP_OPTION_INCLUDE_POSTTITLE => false,
99
+ GTM4WP_OPTION_INCLUDE_POSTCOUNT => false,
100
+ GTM4WP_OPTION_INCLUDE_SEARCHDATA => false,
101
+ GTM4WP_OPTION_INCLUDE_BROWSERDATA => false,
102
+ GTM4WP_OPTION_INCLUDE_OSDATA => false,
103
+ GTM4WP_OPTION_INCLUDE_DEVICEDATA => false,
104
+ GTM4WP_OPTION_INCLUDE_WEATHER => false,
105
+ GTM4WP_OPTION_INCLUDE_WEATHERUNITS => 0,
106
 
107
  GTM4WP_OPTION_EVENTS_OUTBOUND => false,
108
  GTM4WP_OPTION_EVENTS_DOWNLOADS => false,
152
  GTM4WP_OPTION_BLACKLIST_MACRO_AUTOEVENT => true,
153
 
154
  GTM4WP_OPTION_INTEGRATE_WPCF7 => false,
155
+
156
+ // GTM4WP_OPTION_INTEGRATE_WOOCOMMERCE => false,
157
+ GTM4WP_OPTION_INTEGRATE_WCTRACKCLASSICEC => false,
158
+ GTM4WP_OPTION_INTEGRATE_WCTRACKENHANCEDEC => false,
159
+ GTM4WP_OPTION_INTEGRATE_WCREMARKETING => false,
160
+
161
  GTM4WP_OPTION_INTEGRATE_WPECOMMERCE => false
162
  );
163
 
168
  if ( ! is_array( $gtm4wp_defaultoptions ) ) {
169
  $gtm4wp_defaultoptions = array();
170
  }
171
+
172
+ // update WooCommerce settings from 0.7.x to 0.8
173
+ if ( isset( $storedoptions[ GTM4WP_OPTION_INTEGRATE_WOOCOMMERCE ] ) && ! isset( $storedoptions[ GTM4WP_OPTION_INTEGRATE_WCTRACKCLASSICEC ] ) ) {
174
+ $storedoptions[ GTM4WP_OPTION_INTEGRATE_WCTRACKCLASSICEC ] = $storedoptions[ GTM4WP_OPTION_INTEGRATE_WOOCOMMERCE ];
175
+ $storedoptions[ GTM4WP_OPTION_INTEGRATE_WCTRACKENHANCEDEC ] = false;
176
+ $storedoptions[ GTM4WP_OPTION_INTEGRATE_WCREMARKETING ] = $storedoptions[ GTM4WP_OPTION_INTEGRATE_WOOCOMMERCE ];
177
+
178
+ unset( $storedoptions[ GTM4WP_OPTION_INTEGRATE_WOOCOMMERCE ] );
179
+ }
180
 
181
  return array_merge( $gtm4wp_defaultoptions, $storedoptions );
182
  }
css/admin-gtm4wp.css CHANGED
@@ -1,5 +1,6 @@
1
  .tabinfo {
2
  display: block;
 
3
  margin: 20px 10px;
4
  }
5
 
@@ -10,3 +11,34 @@
10
  .gtm4wp-plugin-not-active {
11
  color: #c00;
12
  }
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
  .tabinfo {
2
  display: block;
3
+ clear: both;
4
  margin: 20px 10px;
5
  }
6
 
11
  .gtm4wp-plugin-not-active {
12
  color: #c00;
13
  }
14
+
15
+ .adminsubtabs {
16
+ list-style: none;
17
+ margin: 16px 0;
18
+ padding: 0;
19
+ font-size: 13px;
20
+ float: left;
21
+ color: #666;
22
+ }
23
+
24
+ .adminsubtabs li {
25
+ display: inline-block;
26
+ margin: 0;
27
+ padding: 0 10px;
28
+ white-space: nowrap;
29
+ border-right: 1px solid #666;
30
+ }
31
+
32
+ .adminsubtabs li:last-child {
33
+ border-right: 0;
34
+ }
35
+
36
+ .adminsubtabs a {
37
+ padding: .2em;
38
+ text-decoration: none;
39
+ }
40
+
41
+ .adminsubtabs a.subtab-active {
42
+ color: #000;
43
+ font-weight: bold;
44
+ }
duracelltomi-google-tag-manager-for-wordpress.php CHANGED
@@ -1,14 +1,14 @@
1
  <?php
2
  /*
3
  Plugin Name: Google Tag Manager for Wordpress
4
- Version: 0.7.1
5
  Plugin URI: http://www.duracelltomi.com/google-tag-manager-for-wordpress/
6
  Description: The first Google Tag Manager plugin for WordPress with business goals in mind
7
  Author: Thomas Geiger
8
  Author URI: http://www.duracelltomi.com/
9
  */
10
 
11
- define( 'GTM4WP_VERSION', '0.7.1' );
12
  define( 'GTM4WP_PATH', plugin_dir_path( __FILE__ ) );
13
  define( 'GTM4WP_TEXTDOMAIN', 'gtm4wp-lang' );
14
 
1
  <?php
2
  /*
3
  Plugin Name: Google Tag Manager for Wordpress
4
+ Version: 0.8
5
  Plugin URI: http://www.duracelltomi.com/google-tag-manager-for-wordpress/
6
  Description: The first Google Tag Manager plugin for WordPress with business goals in mind
7
  Author: Thomas Geiger
8
  Author URI: http://www.duracelltomi.com/
9
  */
10
 
11
+ define( 'GTM4WP_VERSION', '0.8' );
12
  define( 'GTM4WP_PATH', plugin_dir_path( __FILE__ ) );
13
  define( 'GTM4WP_TEXTDOMAIN', 'gtm4wp-lang' );
14
 
integration/woocommerce.php CHANGED
@@ -1,41 +1,113 @@
1
  <?php
 
 
2
  function gtm4wp_woocommerce_datalayer_filter_items( $dataLayer ) {
3
- global $woocommerce;
4
-
5
- if ( is_front_page() ) {
6
- $dataLayer["ecomm_prodid"] = "";
7
- $dataLayer["ecomm_pagetype"] = "home";
8
- $dataLayer["ecomm_totalvalue"] = 0;
9
- } else if ( is_product_category() || is_product_tag() ) {
10
- $sumprice = 0;
11
- $product_ids = array();
12
- foreach ( $woocommerce->query->filtered_product_ids as $oneproductid ) {
13
- $product = get_product( $oneproductid );
14
- $sumprice += $product->get_price();
15
- $product_ids[] = "'" . $oneproductid . "'";
16
- }
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
17
 
18
- $dataLayer["ecomm_prodid"] = '[' . implode( ", ", $product_ids ) . ']';
19
- $dataLayer["ecomm_pagetype"] = "category";
20
- $dataLayer["ecomm_totalvalue"] = $sumprice;
 
 
21
  } else if ( is_product() ) {
22
- $prodid = get_the_ID();
23
- $product = get_product( $prodid );
24
- $product_price = $product->get_price();
 
 
 
 
 
 
 
 
25
 
26
- $dataLayer["ecomm_prodid"] = $prodid;
27
- $dataLayer["ecomm_pagetype"] = "product";
28
- $dataLayer["ecomm_totalvalue"] = $product_price;
 
 
 
 
 
 
 
29
  } else if ( is_cart() ) {
30
- $products = $woocommerce->cart->get_cart();
31
- $product_ids = array();
32
- foreach( $products as $oneproduct ) {
33
- $product_ids[] = "'" . str_replace( "'", "\\'", $oneproduct['product_id'] ) . "'";
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
34
  }
35
 
36
- $dataLayer["ecomm_prodid"] = '[' . implode( ", ", $product_ids ) . ']';
37
- $dataLayer["ecomm_pagetype"] = "cart";
38
- $dataLayer["ecomm_totalvalue"] = $woocommerce->cart->cart_contents_total;
 
 
 
 
 
 
 
 
39
  } else if ( is_order_received_page() ) {
40
  $order_id = apply_filters( 'woocommerce_thankyou_order_id', empty( $_GET['order'] ) ? ($GLOBALS["wp"]->query_vars["order-received"] ? $GLOBALS["wp"]->query_vars["order-received"] : 0) : absint( $_GET['order'] ) );
41
  $order_key = apply_filters( 'woocommerce_thankyou_order_key', empty( $_GET['key'] ) ? '' : woocommerce_clean( $_GET['key'] ) );
@@ -47,21 +119,27 @@ function gtm4wp_woocommerce_datalayer_filter_items( $dataLayer ) {
47
  }
48
 
49
  if ( 1 == get_post_meta( $order_id, '_ga_tracked', true ) ) {
50
- // unset( $order );
51
  }
52
 
53
  if ( isset( $order ) ) {
54
- $dataLayer["transactionId"] = $order->get_order_number();
55
- $dataLayer["transactionDate"] = date("c");
56
- $dataLayer["transactionType"] = "sale";
57
- $dataLayer["transactionAffiliation"] = get_bloginfo( 'name' );
58
- $dataLayer["transactionTotal"] = $order->get_total();
59
- $dataLayer["transactionShipping"] = $order->get_shipping();
60
- $dataLayer["transactionTax"] = $order->get_total_tax();
61
- $dataLayer["transactionPaymentType"] = $order->payment_method_title;
62
- $dataLayer["transactionCurrency"] = get_woocommerce_currency();
63
- $dataLayer["transactionShippingMethod"] = $order->get_shipping_method();
64
- $dataLayer["transactionPromoCode"] = implode( ", ", $order->get_used_coupons() );
 
 
 
 
 
 
65
 
66
  $_products = array();
67
  $_sumprice = 0;
@@ -103,17 +181,45 @@ function gtm4wp_woocommerce_datalayer_filter_items( $dataLayer ) {
103
  }
104
  }
105
 
106
- $dataLayer["transactionProducts"] = $_products;
107
- $dataLayer["event"] = "gtm4wp.orderCompleted";
 
 
 
 
 
 
 
108
 
109
- $dataLayer["ecomm_prodid"] = '[' . implode(", ", $_product_ids) . ']';
110
- $dataLayer["ecomm_pagetype"] = "purchase";
111
- $dataLayer["ecomm_totalvalue"] = $_sumprice;
 
 
112
 
113
  // update_post_meta( $order_id, '_ga_tracked', 1 );
114
  }
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
115
  } else {
116
- $dataLayer["ecomm_pagetype"] = "siteview";
 
 
117
  }
118
 
119
  return $dataLayer;
@@ -124,9 +230,10 @@ function gtm4wp_woocommerce_single_add_to_cart_tracking() {
124
  return;
125
  }
126
 
127
- global $product, $woocommerce, $gtm4wp_datalayer_name;
128
 
129
- $woocommerce->add_inline_js("
 
130
  $('.single_add_to_cart_button').click(function() {
131
  ". $gtm4wp_datalayer_name .".push({
132
  'event': 'gtm4wp.addProductToCart',
@@ -135,13 +242,45 @@ function gtm4wp_woocommerce_single_add_to_cart_tracking() {
135
  'productID': '". esc_js( $product->id ) ."'
136
  });
137
  });
138
- ");
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
139
  }
140
 
141
  function gtm4wp_woocommerce_loop_add_to_cart_tracking() {
142
- global $woocommerce, $gtm4wp_datalayer_name;
143
 
144
- $woocommerce->add_inline_js("
 
145
  $('.add_to_cart_button:not(.product_type_variable, .product_type_grouped)').click(function() {
146
  ". $gtm4wp_datalayer_name .".push({
147
  'event': 'gtm4wp.addProductToCart',
@@ -150,12 +289,112 @@ function gtm4wp_woocommerce_loop_add_to_cart_tracking() {
150
  'productID': $( this ).data( 'product_id' ),
151
  });
152
  });
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
153
  ");
154
  }
155
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
156
  // do not add filter if someone enabled WooCommerce integration without an activated WooCommerce plugin
157
  if ( isset ( $GLOBALS["woocommerce"] ) ) {
158
  add_filter( GTM4WP_WPFILTER_COMPILE_DATALAYER, "gtm4wp_woocommerce_datalayer_filter_items" );
 
 
 
159
  add_action( 'woocommerce_after_add_to_cart_button', "gtm4wp_woocommerce_single_add_to_cart_tracking" );
160
  add_action( 'wp_footer', "gtm4wp_woocommerce_loop_add_to_cart_tracking" );
 
 
 
 
 
161
  }
1
  <?php
2
+ $gtm4wp_product_counter = 0;
3
+
4
  function gtm4wp_woocommerce_datalayer_filter_items( $dataLayer ) {
5
+ global $woocommerce, $gtm4wp_options, $wp_query, $gtm4wp_datalayer_name, $gtm4wp_product_counter;
6
+
7
+ if ( is_product_category() || is_product_tag() || is_front_page() || is_shop() ) {
8
+ if ( ( $gtm4wp_options[ GTM4WP_OPTION_INTEGRATE_WCREMARKETING ] ) || ( true === $gtm4wp_options[ GTM4WP_OPTION_INTEGRATE_WCTRACKENHANCEDEC ] ) ) {
9
+ if ( count( $woocommerce->query->filtered_product_ids ) > 0 ) {
10
+ // The following 5 lines are being borrowed from WC source
11
+ $paged = max( 1, $wp_query->get( 'paged' ) );
12
+ $per_page = $wp_query->get( 'posts_per_page' );
13
+ $total = $wp_query->found_posts;
14
+ $first = ( $per_page * $paged ) - $per_page + 1;
15
+ $last = min( $total, $wp_query->get( 'posts_per_page' ) * $paged );
16
+
17
+ $gtm4wp_product_counter = $first;
18
+
19
+ $sumprice = 0;
20
+ $product_ids = array();
21
+ $product_impressions = array();
22
+ for ( $i=($first-1); $i<$last; $i++ ) {
23
+ $oneproductid = $woocommerce->query->filtered_product_ids[ $i ];
24
+ $product = get_product( $oneproductid );
25
+
26
+ $product_price = $product->get_price();
27
+ $_product_cats = get_the_terms($product->id, 'product_cat');
28
+ if ( count( $_product_cats ) > 0 ) {
29
+ $product_cat = array_pop( $_product_cats );
30
+ $product_cat = $product_cat->name;
31
+ } else {
32
+ $product_cat = "";
33
+ }
34
+ $sumprice += $product_price;
35
+ $product_ids[] = "'" . $oneproductid . "'";
36
+
37
+ $product_impressions[] = "{'name': '" . str_replace( "'", "\\'", $product->get_title() ) . "', 'id': '" . $oneproductid . "', 'price': '" . $product_price . "', 'category': '" . str_replace( "'", "\\'", $product_cat ) . "', 'position': " . ($i+1) . " }";
38
+ }
39
+
40
+ if ( $gtm4wp_options[ GTM4WP_OPTION_INTEGRATE_WCREMARKETING ] ) {
41
+ $dataLayer["ecomm_prodid"] = '-~-[' . implode( ", ", $product_ids ) . ']-~-';
42
+ $dataLayer["ecomm_pagetype"] = ( is_front_page() ? "home" : "category" );
43
+ $dataLayer["ecomm_totalvalue"] = $sumprice;
44
+ }
45
 
46
+ if ( true === $gtm4wp_options[ GTM4WP_OPTION_INTEGRATE_WCTRACKENHANCEDEC ] ) {
47
+ $dataLayer["ecommerce"] = "-~-{'impressions': [".implode(", ", $product_impressions)."]}-~-";
48
+ }
49
+ }
50
+ }
51
  } else if ( is_product() ) {
52
+ if ( ( $gtm4wp_options[ GTM4WP_OPTION_INTEGRATE_WCREMARKETING ] ) || ( true === $gtm4wp_options[ GTM4WP_OPTION_INTEGRATE_WCTRACKENHANCEDEC ] ) ) {
53
+ $prodid = get_the_ID();
54
+ $product = get_product( $prodid );
55
+ $product_price = $product->get_price();
56
+ $_product_cats = get_the_terms($product->id, 'product_cat');
57
+ if ( count( $_product_cats ) > 0 ) {
58
+ $product_cat = array_pop( $_product_cats );
59
+ $product_cat = $product_cat->name;
60
+ } else {
61
+ $product_cat = "";
62
+ }
63
 
64
+ if ( $gtm4wp_options[ GTM4WP_OPTION_INTEGRATE_WCREMARKETING ] ) {
65
+ $dataLayer["ecomm_prodid"] = $prodid;
66
+ $dataLayer["ecomm_pagetype"] = "product";
67
+ $dataLayer["ecomm_totalvalue"] = $product_price;
68
+ }
69
+
70
+ if ( true === $gtm4wp_options[ GTM4WP_OPTION_INTEGRATE_WCTRACKENHANCEDEC ] ) {
71
+ $dataLayer["ecommerce"] = "-~-{'detail': {'products': [{'name': '" . str_replace( "'", "", get_the_title() ) . "', 'id': '" . $prodid . "', 'price': '" . $product_price . "', 'category': '" . str_replace( "'", "", $product_cat ) . "'}]}}-~-";
72
+ }
73
+ }
74
  } else if ( is_cart() ) {
75
+ if ( true === $gtm4wp_options[ GTM4WP_OPTION_INTEGRATE_WCTRACKENHANCEDEC ] ) {
76
+ $woocommerce->add_inline_js("
77
+ $('.product-remove').click(function() {
78
+ var productdata = $( this )
79
+ .parent()
80
+ .find( '.gtm4wp_productdata' );
81
+
82
+ ". $gtm4wp_datalayer_name .".push({
83
+ 'event': 'gtm4wp.removeFromCart',
84
+ 'ecommerce': {
85
+ 'remove': {
86
+ 'products': [{
87
+ 'name': productdata.data( 'product_name' ),
88
+ 'id': productdata.data( 'product_id' ),
89
+ 'price': productdata.data( 'product_price' ),
90
+ 'category': productdata.data( 'product_cat' ),
91
+ 'quantity': $( this ).parent().parent().find( '.product-quantity input.qty' ).val()
92
+ }]
93
+ }
94
+ }
95
+ });
96
+ });
97
+ ");
98
  }
99
 
100
+ if ( $gtm4wp_options[ GTM4WP_OPTION_INTEGRATE_WCREMARKETING ] ) {
101
+ $products = $woocommerce->cart->get_cart();
102
+ $product_ids = array();
103
+ foreach( $products as $oneproduct ) {
104
+ $product_ids[] = "'" . str_replace( "'", "\\'", $oneproduct['product_id'] ) . "'";
105
+ }
106
+
107
+ $dataLayer["ecomm_prodid"] = '-~-[' . implode( ", ", $product_ids ) . ']-~-';
108
+ $dataLayer["ecomm_pagetype"] = "cart";
109
+ $dataLayer["ecomm_totalvalue"] = $woocommerce->cart->cart_contents_total;
110
+ }
111
  } else if ( is_order_received_page() ) {
112
  $order_id = apply_filters( 'woocommerce_thankyou_order_id', empty( $_GET['order'] ) ? ($GLOBALS["wp"]->query_vars["order-received"] ? $GLOBALS["wp"]->query_vars["order-received"] : 0) : absint( $_GET['order'] ) );
113
  $order_key = apply_filters( 'woocommerce_thankyou_order_key', empty( $_GET['key'] ) ? '' : woocommerce_clean( $_GET['key'] ) );
119
  }
120
 
121
  if ( 1 == get_post_meta( $order_id, '_ga_tracked', true ) ) {
122
+ unset( $order );
123
  }
124
 
125
  if ( isset( $order ) ) {
126
+ if ( true === $gtm4wp_options[ GTM4WP_OPTION_INTEGRATE_WCTRACKCLASSICEC ] ) {
127
+ $dataLayer["transactionId"] = $order->get_order_number();
128
+ $dataLayer["transactionDate"] = date("c");
129
+ $dataLayer["transactionType"] = "sale";
130
+ $dataLayer["transactionAffiliation"] = get_bloginfo( 'name' );
131
+ $dataLayer["transactionTotal"] = $order->get_total();
132
+ $dataLayer["transactionShipping"] = $order->get_shipping();
133
+ $dataLayer["transactionTax"] = $order->get_total_tax();
134
+ $dataLayer["transactionPaymentType"] = $order->payment_method_title;
135
+ $dataLayer["transactionCurrency"] = get_woocommerce_currency();
136
+ $dataLayer["transactionShippingMethod"] = $order->get_shipping_method();
137
+ $dataLayer["transactionPromoCode"] = implode( ", ", $order->get_used_coupons() );
138
+ }
139
+
140
+ if ( true === $gtm4wp_options[ GTM4WP_OPTION_INTEGRATE_WCTRACKENHANCEDEC ] ) {
141
+ $dataLayer["ecommerce"] = "-~-{'purchase': {'actionField': {'id': '" . $order->get_order_number() . "', 'affiliation': '" . get_bloginfo( 'name' ) . "', 'revenue': '" . $order->get_total() . "', 'tax': '" . $order->get_total_tax() . "', 'shipping': '" . $order->get_shipping() . "'}, ";
142
+ }
143
 
144
  $_products = array();
145
  $_sumprice = 0;
181
  }
182
  }
183
 
184
+ if ( true === $gtm4wp_options[ GTM4WP_OPTION_INTEGRATE_WCTRACKCLASSICEC ] ) {
185
+ $dataLayer["transactionProducts"] = $_products;
186
+ $dataLayer["event"] = "gtm4wp.orderCompleted";
187
+ }
188
+
189
+ if ( true === $gtm4wp_options[ GTM4WP_OPTION_INTEGRATE_WCTRACKENHANCEDEC ] ) {
190
+ $dataLayer["ecommerce"] .= "'products': ".str_replace('"', "'", json_encode($_products))." }}-~-";
191
+ $dataLayer["event"] = "gtm4wp.orderCompleted";
192
+ }
193
 
194
+ if ( $gtm4wp_options[ GTM4WP_OPTION_INTEGRATE_WCREMARKETING ] ) {
195
+ $dataLayer["ecomm_prodid"] = '-~-[' . implode(", ", $_product_ids) . ']-~-';
196
+ $dataLayer["ecomm_pagetype"] = "purchase";
197
+ $dataLayer["ecomm_totalvalue"] = $_sumprice;
198
+ }
199
 
200
  // update_post_meta( $order_id, '_ga_tracked', 1 );
201
  }
202
+ } else if ( is_checkout() ) {
203
+ if ( true === $gtm4wp_options[ GTM4WP_OPTION_INTEGRATE_WCTRACKENHANCEDEC ] ) {
204
+ foreach( $woocommerce->cart->get_cart() as $cart_item_id => $cart_item_data) {
205
+ $product = $cart_item_data["data"];
206
+ $_product_cats = get_the_terms($product->id, 'product_cat');
207
+ if ( count( $_product_cats ) > 0 ) {
208
+ $product_cat = array_pop( $_product_cats );
209
+ $product_cat = $product_cat->name;
210
+ } else {
211
+ $product_cat = "";
212
+ }
213
+
214
+ $gtm4wp_checkout_products[] = "{'name': '" . str_replace("'", "\\'", $product->post->post_title) . "', 'id': '" . $product->id . "', 'price': '" . $product->get_price() . "', 'category': '" . $product_cat . "', 'quantity': '" . $cart_item_data["quantity"] . "'}";
215
+ }
216
+
217
+ $dataLayer["ecommerce"] = "-~-{'checkout': {'actionField': {'step': 1}, 'products':[" . implode(", ", $gtm4wp_checkout_products) . "]}}-~-";
218
+ }
219
  } else {
220
+ if ( $gtm4wp_options[ GTM4WP_OPTION_INTEGRATE_WCREMARKETING ] ) {
221
+ $dataLayer["ecomm_pagetype"] = "siteview";
222
+ }
223
  }
224
 
225
  return $dataLayer;
230
  return;
231
  }
232
 
233
+ global $product, $woocommerce, $gtm4wp_datalayer_name, $gtm4wp_options;
234
 
235
+ if ( true === $gtm4wp_options[ GTM4WP_OPTION_INTEGRATE_WCTRACKCLASSICEC ] ) {
236
+ $woocommerce->add_inline_js("
237
  $('.single_add_to_cart_button').click(function() {
238
  ". $gtm4wp_datalayer_name .".push({
239
  'event': 'gtm4wp.addProductToCart',
242
  'productID': '". esc_js( $product->id ) ."'
243
  });
244
  });
245
+ ");
246
+ }
247
+
248
+ if ( true === $gtm4wp_options[ GTM4WP_OPTION_INTEGRATE_WCTRACKENHANCEDEC ] ) {
249
+ $_product_cats = get_the_terms($product->id, 'product_cat');
250
+ if ( count( $_product_cats ) > 0 ) {
251
+ $product_cat = array_pop( $_product_cats );
252
+ $product_cat = $product_cat->name;
253
+ } else {
254
+ $product_cat = "";
255
+ }
256
+
257
+ $woocommerce->add_inline_js("
258
+ $('.single_add_to_cart_button').click(function() {
259
+ ". $gtm4wp_datalayer_name .".push({
260
+ 'event': 'gtm4wp.addProductToCart',
261
+ 'ecommerce': {
262
+ 'currencyCode': '".get_woocommerce_currency()."',
263
+ 'add': {
264
+ 'products': [{
265
+ 'name': '". esc_js( $product->post->post_title ) ."',
266
+ 'id': '". esc_js( $product->id ) ."',
267
+ 'price': '". esc_js( $product->get_price() ) ."',
268
+ 'category': '". esc_js( $product_cat ) ."',
269
+ 'quantity': $('form.cart:first input[name=quantity]').val()
270
+ }]
271
+ }
272
+ }
273
+ });
274
+ });
275
+ ");
276
+ }
277
  }
278
 
279
  function gtm4wp_woocommerce_loop_add_to_cart_tracking() {
280
+ global $woocommerce, $gtm4wp_options, $gtm4wp_datalayer_name;
281
 
282
+ if ( true === $gtm4wp_options[ GTM4WP_OPTION_INTEGRATE_WCTRACKCLASSICEC ] ) {
283
+ $woocommerce->add_inline_js("
284
  $('.add_to_cart_button:not(.product_type_variable, .product_type_grouped)').click(function() {
285
  ". $gtm4wp_datalayer_name .".push({
286
  'event': 'gtm4wp.addProductToCart',
289
  'productID': $( this ).data( 'product_id' ),
290
  });
291
  });
292
+ ");
293
+ }
294
+
295
+ if ( true === $gtm4wp_options[ GTM4WP_OPTION_INTEGRATE_WCTRACKENHANCEDEC ] ) {
296
+ $woocommerce->add_inline_js("
297
+ $('.add_to_cart_button:not(.product_type_variable, .product_type_grouped)').click(function() {
298
+ var productdata = $( this ).parent().find( 'a .gtm4wp_productdata' );
299
+
300
+ ". $gtm4wp_datalayer_name .".push({
301
+ 'event': 'gtm4wp.addProductToCart',
302
+ 'ecommerce': {
303
+ 'currencyCode': '".get_woocommerce_currency()."',
304
+ 'add': {
305
+ 'products': [{
306
+ 'name': productdata.data( 'product_name' ),
307
+ 'id': productdata.data( 'product_id' ),
308
+ 'price': productdata.data( 'product_price' ),
309
+ 'category': productdata.data( 'product_cat' ),
310
+ 'quantity': 1
311
+ }]
312
+ }
313
+ }
314
+ });
315
+ });
316
+ ");
317
+ }
318
+ }
319
+
320
+ function gtm4wp_woocommerce_enhanced_ecom_product_click() {
321
+ global $woocommerce, $gtm4wp_datalayer_name;
322
+
323
+ $woocommerce->add_inline_js("
324
+ $('.products li a:not(.add_to_cart_button)').click(function() {
325
+ var productdata = $( this ).find( '.gtm4wp_productdata' );
326
+
327
+ ". $gtm4wp_datalayer_name .".push({
328
+ 'event': 'gtm4wp.productClick',
329
+ 'ecommerce': {
330
+ 'click': {
331
+ 'products': [{
332
+ 'name': productdata.data( 'product_name' ),
333
+ 'id': productdata.data( 'product_id' ),
334
+ 'price': productdata.data( 'product_price' ),
335
+ 'category': productdata.data( 'product_cat' ),
336
+ 'position': productdata.data( 'product_listposition' )
337
+ }]
338
+ }
339
+ },
340
+ 'eventCallback': function() {
341
+ document.location = productdata.data( 'product_url' )
342
+ }
343
+ });
344
+ return false;
345
+ });
346
  ");
347
  }
348
 
349
+ function gtm4wp_woocommerce_enhanced_ecom_add_prod_data() {
350
+ global $product, $gtm4wp_product_counter;
351
+
352
+ $product_price = $product->get_price();
353
+ $_product_cats = get_the_terms($product->id, 'product_cat');
354
+ if ( count( $_product_cats ) > 0 ) {
355
+ $product_cat = array_pop( $_product_cats );
356
+ $product_cat = $product_cat->name;
357
+ } else {
358
+ $product_cat = "";
359
+ }
360
+
361
+ echo '<span class="gtm4wp_productdata" data-product_id="' . $product->id . '" data-product_name="' . str_replace( '"', '&quot;', $product->get_title() ) . '" data-product_price="' .$product_price . '" data-product_cat="' . str_replace( '"', '&quot;', $product_cat ) . '" data-product_url="' . get_the_permalink() . '" data-product_listposition="' . $gtm4wp_product_counter . '"></span>';
362
+ $gtm4wp_product_counter++;
363
+ }
364
+
365
+ $GLOBALS["gtm4wp_cart_item_proddata"] = '';
366
+ function gtm4wp_woocommerce_cart_item_product_filter($product) {
367
+ $product_price = $product->get_price();
368
+ $_product_cats = get_the_terms($product->id, 'product_cat');
369
+ if ( count( $_product_cats ) > 0 ) {
370
+ $product_cat = array_pop( $_product_cats );
371
+ $product_cat = $product_cat->name;
372
+ } else {
373
+ $product_cat = "";
374
+ }
375
+
376
+ $GLOBALS["gtm4wp_cart_item_proddata"] = '<span class="gtm4wp_productdata" data-product_id="' . $product->id . '" data-product_name="' . str_replace( '"', '&quot;', $product->get_title() ) . '" data-product_price="' .$product_price . '" data-product_cat="' . str_replace( '"', '&quot;', $product_cat ) . '" data-product_url="' . get_the_permalink() . '"></span>';
377
+ return $product;
378
+ }
379
+
380
+ function gtm4wp_woocommerce_cart_item_remove_link_filter($arg) {
381
+ echo $GLOBALS["gtm4wp_cart_item_proddata"];
382
+ $GLOBALS["gtm4wp_cart_item_proddata"] = '';
383
+
384
+ return $arg;
385
+ }
386
+
387
  // do not add filter if someone enabled WooCommerce integration without an activated WooCommerce plugin
388
  if ( isset ( $GLOBALS["woocommerce"] ) ) {
389
  add_filter( GTM4WP_WPFILTER_COMPILE_DATALAYER, "gtm4wp_woocommerce_datalayer_filter_items" );
390
+ add_filter( "woocommerce_cart_item_product", "gtm4wp_woocommerce_cart_item_product_filter" );
391
+ add_filter( "woocommerce_cart_item_remove_link", "gtm4wp_woocommerce_cart_item_remove_link_filter" );
392
+
393
  add_action( 'woocommerce_after_add_to_cart_button', "gtm4wp_woocommerce_single_add_to_cart_tracking" );
394
  add_action( 'wp_footer', "gtm4wp_woocommerce_loop_add_to_cart_tracking" );
395
+
396
+ if ( true === $gtm4wp_options[ GTM4WP_OPTION_INTEGRATE_WCTRACKENHANCEDEC ] ) {
397
+ add_action( 'wp_footer', 'gtm4wp_woocommerce_enhanced_ecom_product_click' );
398
+ add_action( 'woocommerce_before_shop_loop_item_title', 'gtm4wp_woocommerce_enhanced_ecom_add_prod_data' );
399
+ }
400
  }
js/admin-subtabs.js ADDED
@@ -0,0 +1,52 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ ;
2
+ var adminsubtabs = {
3
+ 0: {},
4
+ 1: {
5
+ "posts": {
6
+ tabtext: gtm4wp.posttabtitle,
7
+ numitems: 7
8
+ },
9
+ "search": {
10
+ tabtext: gtm4wp.searchtabtitle,
11
+ numitems: 1
12
+ },
13
+ "visitor": {
14
+ tabtext: gtm4wp.visitortabtitle,
15
+ numitems: 2
16
+ },
17
+ "adwords": {
18
+ tabtext: gtm4wp.adwordstabtitle,
19
+ numitems: 1
20
+ },
21
+ "whichbrowser": {
22
+ tabtext: gtm4wp.browsertabtitle,
23
+ numitems: 3
24
+ },
25
+ "weather": {
26
+ tabtext: gtm4wp.weathertabtitle,
27
+ numitems: 2
28
+ }
29
+ },
30
+ 2: {},
31
+ 3: {},
32
+ 4: {
33
+ "blocktags": {
34
+ tabtext: gtm4wp.blocktagstabtitle,
35
+ numitems: 20
36
+ },
37
+ "blockmacros": {
38
+ tabtext: gtm4wp.blockmacrostabtitle,
39
+ numitems: 20
40
+ }
41
+ },
42
+ 5: {
43
+ "int-wpcf7": {
44
+ tabtext: gtm4wp.wpcf7tabtitle,
45
+ numitems: 1
46
+ },
47
+ "int-wc": {
48
+ tabtext: gtm4wp.wctabtitle,
49
+ numitems: 6
50
+ }
51
+ }
52
+ };
js/admin-tabcreator.js CHANGED
@@ -1,34 +1,80 @@
1
  ;jQuery( function() {
2
  var admintabs = [];
 
 
3
 
4
- jQuery("#wpbody form h3").each(function() {
5
- admintabs.push('<a class="nav-tab" href="#">' + jQuery(this).text() + '</a>');
6
 
7
  jQuery(this)
8
  .remove();
 
 
 
 
 
 
 
 
 
 
 
 
 
 
9
  });
10
 
11
- jQuery("#wpbody form")
12
- .prepend('<h2 class="nav-tab-wrapper">' + admintabs.join('') + '</h2>');
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
13
 
14
- jQuery(".nav-tab-wrapper a")
15
- .on("click", function() {
16
- jQuery(".nav-tab-wrapper a.nav-tab-active")
17
- .removeClass("nav-tab-active");
18
 
19
- jQuery("#wpbody form .tabinfo,#wpbody form .form-table")
20
  .hide();
21
 
22
  var tabindex = jQuery(this)
23
- .addClass("nav-tab-active")
24
  .index();
25
 
26
- jQuery("#wpbody form .tabinfo:eq(" + tabindex + "),#wpbody form .form-table:eq(" + tabindex + ")")
 
 
 
 
 
 
 
 
27
  .show();
28
 
29
  return false;
30
  });
31
 
32
- jQuery(".nav-tab-wrapper a:first")
33
- .trigger("click");
34
  });
1
  ;jQuery( function() {
2
  var admintabs = [];
3
+ var adminsubtabsdata = window[ 'adminsubtabs' ] || {};
4
+ var adminsubtabs = [];
5
 
6
+ jQuery( '#wpbody form h3' ).each(function( i ) {
7
+ admintabs.push( '<a class="nav-tab" href="#">' + jQuery(this).text() + '</a>' );
8
 
9
  jQuery(this)
10
  .remove();
11
+
12
+ if ( adminsubtabsdata[ i ] ) {
13
+ var _subtabs = [];
14
+ var _startrow = 0;
15
+
16
+ for ( j in adminsubtabsdata[ i ] ) {
17
+ _subtabs.push( '<a href="#" data-formtableid="' + i + '" data-startrow="' + _startrow + '" data-endrow="' + (_startrow + adminsubtabsdata[ i ][ j ].numitems) + '">' + adminsubtabsdata[ i ][ j ].tabtext + '</a>' );
18
+ _startrow += adminsubtabsdata[ i ][ j ].numitems;
19
+ }
20
+
21
+ if ( _subtabs.length > 0 ) {
22
+ adminsubtabs.push( '<ul class="adminsubtabs" id="adminsubtabs' + i + '"><li>' + _subtabs.join('</li><li>') + '</li></ul>' );
23
+ }
24
+ }
25
  });
26
 
27
+ jQuery( '#wpbody form' )
28
+ .prepend( adminsubtabs.join('') )
29
+ .prepend( '<h2 class="nav-tab-wrapper">' + admintabs.join('') + '</h2>' );
30
+
31
+ jQuery( '.adminsubtabs li a' )
32
+ .on( 'click', function() {
33
+ var jqthis = jQuery(this);
34
+
35
+ jqthis
36
+ .parent()
37
+ .parent()
38
+ .find( 'a' )
39
+ .removeClass( 'subtab-active' );
40
+
41
+ jqthis
42
+ .addClass( 'subtab-active' );
43
+
44
+ jQuery( '.form-table:eq(' + jqthis.data( 'formtableid' ) + ') tr' )
45
+ .hide()
46
+ .slice( jqthis.data('startrow'), jqthis.data('endrow') )
47
+ .show();
48
+
49
+ return false;
50
+ });
51
 
52
+ jQuery( '.nav-tab-wrapper a' )
53
+ .on( "click", function() {
54
+ jQuery( '.nav-tab-wrapper a.nav-tab-active' )
55
+ .removeClass( "nav-tab-active" );
56
 
57
+ jQuery( '#wpbody form .tabinfo,#wpbody form .form-table,.adminsubtabs' )
58
  .hide();
59
 
60
  var tabindex = jQuery(this)
61
+ .addClass( 'nav-tab-active' )
62
  .index();
63
 
64
+ jQuery( '#wpbody form .tabinfo:eq(' + tabindex + '),#wpbody form .form-table:eq(' + tabindex + ')' )
65
+ .show();
66
+
67
+ jQuery( '#adminsubtabs' + tabindex + ':not(.subtab-activated)' )
68
+ .find( 'a:first' )
69
+ .trigger( 'click' );
70
+
71
+ jQuery( '#adminsubtabs' + tabindex )
72
+ .addClass( 'subtab-activated' )
73
  .show();
74
 
75
  return false;
76
  });
77
 
78
+ jQuery( '.nav-tab-wrapper a:first' )
79
+ .trigger( 'click' );
80
  });
js/whichbrowser/.htaccess CHANGED
@@ -1 +1,2 @@
1
- AddType application/x-httpd-php .js
 
1
+ RewriteEngine on
2
+ RewriteRule ^detect.js$ detect.php
js/whichbrowser/README.md CHANGED
@@ -3,7 +3,7 @@ WhichBrowser
3
 
4
  > **Everybody lies** — House M.D.
5
 
6
- This is a extremely complicated and almost completely useless browser sniffing library. Useless because you shouldn't use browser sniffing. So stop right now and go read something about feature detecting instead. I'm serious. Go away. You'll thank me later.
7
 
8
  **But why *almost completely useless* and not completely useless?**
9
  Well, there is always an exception to the rule. There is one valid reason to do browser sniffing: to gather intelligence about which browsers are used on your website. My website is html5test.com and I wanted to know which score belongs to which browser. And to do that you need a browser sniffing library.
3
 
4
  > **Everybody lies** — House M.D.
5
 
6
+ This is an extremely complicated and almost completely useless browser sniffing library. Useless because you shouldn't use browser sniffing. So stop right now and go read something about feature detecting instead. I'm serious. Go away. You'll thank me later.
7
 
8
  **But why *almost completely useless* and not completely useless?**
9
  Well, there is always an exception to the rule. There is one valid reason to do browser sniffing: to gather intelligence about which browsers are used on your website. My website is html5test.com and I wanted to know which score belongs to which browser. And to do that you need a browser sniffing library.
js/whichbrowser/data/models-android.php CHANGED
@@ -34,6 +34,7 @@
34
  'SABRESD-MX6DQ' => array( 'Freescale', 'i.MX6DQ based device' ),
35
  'ODROID-A' => array( 'Hardkernel', 'ODROID-A developer tablet', TYPE_TABLET ),
36
  'ODROID-U2' => array( 'Hardkernel', 'ODROID-U2 developer board' ),
 
37
  'cedartrail' => array( 'Intel', 'Cedar Trail based device' ),
38
  'mfld (dv10|dv20|lw00|pr2|pr3)!' => array( 'Intel', 'Medfield based device' ),
39
  'redhookbay' => array( 'Intel', 'Merrifield based device' ),
@@ -52,12 +53,13 @@
52
  'mt6575!' => array( 'Mediatek', 'MT6575 based device' ),
53
  'mt6582!' => array( 'Mediatek', 'MT6582 based device' ),
54
  'mt6589!' => array( 'Mediatek', 'MT6589 based device' ),
 
55
  'mt8658' => array( 'Mediatek', 'MT8658 based device' ),
56
  'MBX DVBT reference board (c03ref)' => array( 'MXB', 'DVBT reference board', TYPE_TELEVISION ),
57
  'NS115' => array( 'Nufront', 'NuSmart 115 based device' ),
58
  'NS2816' => array( 'Nufront', 'NuSmart 2816 based device' ),
59
- 'Ventana' => array( 'nVidia', 'Tegra Ventana development kit' ),
60
- 'Cardhu' => array( 'nVidia', 'Tegra 3 based device' ),
61
  'Panda(Board)?!' => array( 'Pandaboard', 'Development Kit' ),
62
  'Omap5panda' => array( 'Pandaboard', 'Development Kit' ),
63
  'MSM' => array( 'Qualcomm', 'Snapdragon based device' ),
@@ -132,7 +134,12 @@
132
  'Nexus 5' => array( 'LG', 'Nexus 5' ),
133
  'manta' => array( 'Samsung', 'Nexus 10', TYPE_TABLET ),
134
  'Nexus 10' => array( 'Samsung', 'Nexus 10', TYPE_TABLET ),
135
- 'Galaxy S4 Google Editon' => array( 'Samsung', 'Galaxy S4 (Google Edition)', TYPE_TABLET ),
 
 
 
 
 
136
 
137
 
138
  /* Google Glass */
@@ -143,6 +150,7 @@
143
  'BlueStacks' => array( 'BlueStacks', 'App Player', 'desktop' ),
144
  'youwave custom' => array( 'Youwave', 'Android on PC', 'desktop' ),
145
  'BlackBerry Runtime for Android Apps' => array( 'RIM', 'BlackBerry (Android Runtime)', TYPE_MOBILE ),
 
146
  'alien ubuntu qt' => array( 'Ubuntu', 'Touch (Android Runtime)', TYPE_MOBILE ),
147
  'full Android on Microsoft Windows, pad, pc, n*books'
148
  => array( 'SocketeQ', 'WindowsAndroid', 'desktop' ),
@@ -155,13 +163,17 @@
155
  'MK809IV' => array( null, 'MK809 IV', TYPE_TELEVISION ),
156
  'MK818B' => array( null, 'MK818 B', TYPE_TELEVISION ),
157
  'MK908' => array( null, 'MK908', TYPE_TELEVISION ),
 
158
  'GK802' => array( null, 'GK802', TYPE_TELEVISION ),
159
  'VEOLO' => array( 'A.C. Ryan', 'VEOLO Smart Android Hub', TYPE_TELEVISION ),
160
  'BenQ JD-130' => array( 'BenQ', 'JD-130', TYPE_TELEVISION ),
 
161
  'EVOKE HDI Box' => array( 'Evoke', 'HDI TV Box', TYPE_TELEVISION ),
162
  'JT SmartPC02' => array( 'Joy-IT', 'Smart PC', TYPE_TELEVISION ),
163
  'M3 Enjoy TV Box' => array( 'Geniatech', 'Enjoy TV', TYPE_TELEVISION ),
 
164
  'NEO-G4' => array( 'Minix', 'Neo G4', TYPE_TELEVISION ),
 
165
  'Rikomagic MK802' => array( 'Rikomagic', 'MK802', TYPE_TELEVISION ),
166
  'Rikomagic MK802 ?II!' => array( 'Rikomagic', 'MK802 II', TYPE_TELEVISION ),
167
  'Rikomagic MK802III' => array( 'Rikomagic', 'MK802 III', TYPE_TELEVISION ),
@@ -204,14 +216,21 @@
204
  'P2A700' => array( 'Acer', 'Iconia Tab A700', TYPE_TABLET ),
205
  'A701' => array( 'Acer', 'Iconia Tab A701', TYPE_TABLET ),
206
  'A800' => array( 'Acer', 'Iconia Tab A800', TYPE_TABLET ),
 
 
207
  'A1-810' => array( 'Acer', 'Iconia A1-810', TYPE_TABLET ),
208
  'A1-811' => array( 'Acer', 'Iconia A1-811', TYPE_TABLET ),
209
  'A1-812' => array( 'Acer', 'Iconia A1-812', TYPE_TABLET ),
210
  'A1-820' => array( 'Acer', 'Iconia A1-820', TYPE_TABLET ),
211
  'A1-830' => array( 'Acer', 'Iconia A1-830', TYPE_TABLET ),
 
 
212
  'B1-A71' => array( 'Acer', 'Iconia B1-A71', TYPE_TABLET ),
213
  'B1-710' => array( 'Acer', 'Iconia B1-710', TYPE_TABLET ),
214
  'B1-711' => array( 'Acer', 'Iconia B1-711', TYPE_TABLET ),
 
 
 
215
  'ICONIA W700' => array( 'Acer', 'Iconia W700', TYPE_TABLET ),
216
  'E110' => array( 'Acer', 'beTouch E110' ),
217
  'E120' => array( 'Acer', 'beTouch E120' ),
@@ -222,18 +241,24 @@
222
  'E320' => array( 'Acer', 'Liquid Express' ),
223
  'E330' => array( 'Acer', 'Liquid Glow' ),
224
  'E350' => array( 'Acer', 'Liquid Gallant' ),
 
225
  'E400' => array( 'Acer', 'beTouch E400' ),
226
  'S100' => array( 'Acer', 'Liquid' ),
227
  'S110' => array( 'Acer', 'Stream' ),
228
  'S120' => array( 'Acer', 'Liquid mt' ),
229
  'S300' => array( 'Acer', 'Iconia Smart' ),
230
  'S500' => array( 'Acer', 'CloudMobile' ),
231
- 'S510' => array( 'Acer', 'Liquid S ' ),
232
- 'S520' => array( 'Acer', 'Liquid S2 ' ),
233
- 'V360' => array( 'Acer', 'Liquid E1 ' ),
234
- 'V370' => array( 'Acer', 'Liquid E2 ' ),
 
235
  'Z110' => array( 'Acer', 'Liquid Z' ),
236
  'Z120' => array( 'Acer', 'Liquid Z2' ),
 
 
 
 
237
  'TD600' => array( 'Acer', 'beTouch TD600' ),
238
  'Liquid' => array( 'Acer', 'Liquid' ),
239
  'Liquid E' => array( 'Acer', 'Liquid E' ),
@@ -243,6 +268,8 @@
243
  'Stream' => array( 'Acer', 'Stream' ),
244
  'AK330s' => array( 'Acer', 'AK330s' ),
245
  'DA220HQL' => array( 'Acer', 'Touch and 3D Monitor DA220HQL', TYPE_MONITOR ),
 
 
246
  'C908' => array( 'Acho', 'C908', TYPE_TABLET ),
247
  'S5-F' => array( 'Advan', 'Vandroid S5-F', TYPE_TABLET ),
248
  'T1-B' => array( 'Advan', 'Vandroid T1-B', TYPE_TABLET ),
@@ -271,6 +298,7 @@
271
  'Novo7 Venus' => array( 'Ainovo', 'Novo7 Venus', TYPE_TABLET ),
272
  'Novo8 Advanced' => array( 'Ainovo', 'Novo8 Advanced', TYPE_TABLET ),
273
  'Novo8 Discover Quadcore' => array( 'Ainovo', 'Novo8 Discover', TYPE_TABLET ),
 
274
  'Novo8 Dream QuadCore' => array( 'Ainovo', 'Novo8 Dream', TYPE_TABLET ),
275
  'novo9-Spark' => array( 'Ainovo', 'Novo9 Spark', TYPE_TABLET ),
276
  'Novo10 ?Hero!' => array( 'Ainovo', 'Novo10 Hero', TYPE_TABLET ),
@@ -283,6 +311,7 @@
283
  'PHA-3850' => array( 'AKAI', 'PHA-3850' ),
284
  'one touch 890!' => array( 'Alcatel', 'One Touch 890' ),
285
  'one touch 891!' => array( 'Alcatel', 'One Touch 891' ),
 
286
  'one touch 903!' => array( 'Alcatel', 'One Touch 903' ),
287
  'one touch 906!' => array( 'Alcatel', 'One Touch 906' ),
288
  'Alcatel one touch 908F' => array( 'Alcatel', 'One Touch 908' ),
@@ -313,33 +342,49 @@
313
  'one touch D920' => array( 'Alcatel', 'One Touch D920' ),
314
  'one touch 40(05|10|11)!' => array( 'Alcatel', 'One Touch T\'Pop' ),
315
  'one touch 4007!' => array( 'Alcatel', 'One Touch Pixi' ),
316
- 'one touch 4015!' => array( 'Alcatel', 'One Touch "4015"' ),
 
317
  'one touch 4030!' => array( 'Alcatel', 'One Touch S\'Pop' ),
318
  'one touch 4033!' => array( 'Alcatel', 'One Touch Pop C3' ),
319
  'one touch 5020!' => array( 'Alcatel', 'One Touch M\'Pop' ),
320
  'one touch 5021!' => array( 'Alcatel', 'One Touch Soleil' ),
321
  'one touch 5035!' => array( 'Alcatel', 'One Touch X\'Pop' ),
 
322
  'one touch 6010!' => array( 'Alcatel', 'One Touch Star' ),
323
  'one touch 6012!' => array( 'Alcatel', 'One Touch Idol Mini' ),
 
324
  'one touch 6030!' => array( 'Alcatel', 'One Touch Idol' ),
325
  'one touch 6032!' => array( 'Alcatel', 'One Touch Idol α' ),
326
  'one touch 6033!' => array( 'Alcatel', 'One Touch Idol Ultra' ),
327
  'one touch 60(34|35)!' => array( 'Alcatel', 'One Touch Idol S' ),
328
- 'one touch 6036!' => array( 'Alcatel', 'One Touch "6036"' ), // Unknown
 
 
 
329
  'one touch 6040!' => array( 'Alcatel', 'One Touch Idol X' ),
 
 
 
330
  'one touch 7024!' => array( 'Alcatel', 'One Touch Fierce' ),
331
  'one touch fierce!' => array( 'Alcatel', 'One Touch Fierce' ),
332
  'one touch 70(25|30)!' => array( 'Alcatel', 'One Touch Snap' ),
333
  'Alcatel 7030L' => array( 'Alcatel', 'One Touch Snap' ),
334
- 'one touch 7040!' => array( 'Alcatel', 'One Touch "7040"' ),
 
 
 
 
335
  'one touch 8000!' => array( 'Alcatel', 'One Touch Scribe Easy' ),
336
  'one touch 8008!' => array( 'Alcatel', 'One Touch Scribe HD' ),
337
  'one touch 8020!' => array( 'Alcatel', 'One Touch Scribe Pro' ),
338
  'one touch T10' => array( 'Alcatel', 'One Touch T10', TYPE_TABLET ),
339
  'onetouch EVO7' => array( 'Alcatel', 'One Touch Evo 7', TYPE_TABLET ),
 
340
  'ONE TOUCH TAB 7HD' => array( 'Alcatel', 'One Touch Tab 7HD', TYPE_TABLET ),
341
  'ONE TOUCH EVO7HD' => array( 'Alcatel', 'One Touch Evo 7 HD', TYPE_TABLET ),
342
  'ONE TOUCH EVO8HD' => array( 'Alcatel', 'One Touch Evo 8 HD', TYPE_TABLET ),
 
 
343
  'ADR3010' => array( 'Alcatel', 'Authority' ),
344
  'Venture' => array( 'Alcatel', 'Venture' ),
345
  'ALLVIEW A4ALL' => array( 'Allview', 'A4 All' ),
@@ -374,6 +419,7 @@
374
  'AMI-TT4' => array( 'Amicroe', 'TouchTab IV', TYPE_TABLET ),
375
  'AML-MX REF' => array( 'AmLogic', 'MX', TYPE_TABLET ),
376
  'AMOI A860w' => array( 'Amoi', 'A860W' ),
 
377
  'AMOI N79+' => array( 'Amoi', 'N79' ),
378
  'AMOI N89' => array( 'Amoi', 'N89' ),
379
  'AMOI N807' => array( 'Amoi', 'N807' ),
@@ -418,6 +464,7 @@
418
  'AN10CG3' => array( 'Archos', 'Arnova 10c G3', TYPE_TABLET ),
419
  'AN10DG3' => array( 'Archos', 'Arnova 10d G3', TYPE_TABLET ),
420
  'ARNOVA 90G3' => array( 'Archos', 'Arnova 90 G3', TYPE_TABLET ),
 
421
  'ARNOVA 101 G4' => array( 'Archos', 'Arnova 101 G4', TYPE_TABLET ),
422
  'A32' => array( 'Archos', '32', 'media' ),
423
  'A35DE' => array( 'Archos', '35 Smart Home Phone' ),
@@ -436,16 +483,23 @@
436
  'ARCHOS 97XSLG10' => array( 'Archos', '97 XS', TYPE_TABLET ), // G10
437
  'ARCHOS 80XSK' => array( 'Archos', '80 XS', TYPE_TABLET ), // G10
438
  'ARCHOS 101G10' => array( 'Archos', '101 XS', TYPE_TABLET ),
 
439
  'Archos 50 Platinum' => array( 'Archos', '50 Platinum' ), // Elements
 
440
  'ARCHOS 70 Titanium' => array( 'Archos', '70 Titanium', TYPE_TABLET ), // Elements
 
441
  'ARCHOS 80 COBALT' => array( 'Archos', '80 Cobalt', TYPE_TABLET ), // Elements
442
  'ARCHOS 80 TITANIUM' => array( 'Archos', '80 Titanium', TYPE_TABLET ), // Elements
443
  'Archos 80 Xenon' => array( 'Archos', '80 Xenon', TYPE_TABLET ), // Elements
444
  'ARCHOS 97 CARBON' => array( 'Archos', '97 Carbon', TYPE_TABLET ), // Elements
 
 
445
  'ARCHOS 97 TITANIUMHD' => array( 'Archos', '97 Titanium HD', TYPE_TABLET ), // Elements
446
- 'ARCHOS 97B TITANIUM' => array( 'Archos', '97B Titanium', TYPE_TABLET ),
 
447
  'ARCHOS 101 Titanium' => array( 'Archos', '101 Titanium', TYPE_TABLET ), // Elements
448
  'ARCHOS GAMEPAD' => array( 'Archos', 'Gamepad', TYPE_GAMING ),
 
449
  'ARCHOS FAMILYPAD 2' => array( 'Archos', 'Familypad 2', TYPE_TABLET ),
450
  'D9702' => array( 'Artes', 'D9702', TYPE_TABLET ),
451
  'ASTRI' => array( 'ASTRI', 'e-reader', TYPE_EREADER ),
@@ -483,12 +537,26 @@
483
  'PadFone Infinity' => array( 'Asus', 'Padfone Infinity', TYPE_TABLET ),
484
  'PadFone Infinity A86' => array( 'Asus', 'Padfone Infinity', TYPE_TABLET ),
485
  'PadFone T004' => array( 'Asus', 'Padfone Infinity', TYPE_TABLET ),
486
- 'PadFone T00C' => array( 'Asus', 'Padfone Mini', TYPE_TABLET ), // Unconfirmed
 
487
  'ETBW11AA' => array( 'Asus', 'Tough' ),
488
- 'K00C' => array( 'Asus', 'Transformer Pad Infinity', TYPE_TABLET ), // Unconfirmed
489
- 'K00E' => array( 'Asus', 'Fonepad 7', TYPE_TABLET ),
490
  'K00G' => array( 'Asus', 'Fonepad Note 6', TYPE_TABLET ),
491
- 'K00S' => array( 'Asus', 'Fonepad', TYPE_TABLET ), // Unconfirmed
 
 
 
 
 
 
 
 
 
 
 
 
 
 
492
  'T-07B' => array( 'AudioSonic', 'T07B', TYPE_TABLET ),
493
  'AUX V900' => array( 'AUX', 'V900' ),
494
  'PICOpadGCE' => array( 'Axioo', 'Picopad GCE', TYPE_TABLET ),
@@ -519,29 +587,42 @@
519
  'Barnes & Noble Nook HD+' => array( 'Barnes & Noble', 'NOOK HD+ Tablet', TYPE_EREADER ),
520
  'BN Nook HD' => array( 'Barnes & Noble', 'NOOK HD Tablet', TYPE_EREADER ),
521
  'BN NookHD+' => array( 'Barnes & Noble', 'NOOK HD+ Tablet', TYPE_EREADER ),
 
 
522
  'BenWee 5100' => array( 'BenWee', '5100' ),
523
  'WL-101GQC' => array( 'Bauhn', 'WL-101GQC', TYPE_TABLET ),
524
  'BEE 9500' => array( 'Bee Mobile', 'Bee 9500' ),
525
  'CA907AAC0G' => array( 'Besta', 'CA907AAC0G' ),
 
526
  'T9108' => array( 'Bird', 'T9108' ),
527
  '(BB )?Q5!' => array( 'BlackBerry', 'Q5' ),
528
  '(BB )?Q10!' => array( 'BlackBerry', 'Q10' ),
529
  '(BB )?Z10!' => array( 'BlackBerry', 'Z10' ),
530
  '(BB )?Z30!' => array( 'BlackBerry', 'Z30' ),
 
 
 
 
531
  '(BLU )?DASH 3.2!' => array( 'BLU', 'Dash 3.2' ),
532
  'BLU DASH 3.5!' => array( 'BLU', 'Dash 3.5' ),
533
  'BMOBILE DASH 3.5' => array( 'BLU', 'Dash 3.5' ),
534
  'BLU DASH 4.0' => array( 'BLU', 'Dash 4.0' ),
535
  'BLU DASH 4.5' => array( 'BLU', 'Dash 4.5' ),
 
 
 
536
  'LIFE PLAY' => array( 'BLU', 'Life Play' ),
 
537
  'BLU Life View' => array( 'BLU', 'Life View' ),
538
  'BLU Magic' => array( 'BLU', 'Magic' ),
539
  'BLU Quattro 4.5' => array( 'BLU', 'Quattro 4.5' ),
540
  'BLU Quattro 4.5 HD' => array( 'BLU', 'Quattro 4.5 HD' ),
541
  'BLU Quattro 5.7HD' => array( 'BLU', 'Quattro 5.7 HD' ),
542
  'BLU STUDIO 5.0' => array( 'BLU', 'Studio 5.0' ),
 
543
  'BLU Studio 5.3' => array( 'BLU', 'Studio 5.3' ),
544
  'BLU STUDIO 5.3 II' => array( 'BLU', 'Studio 5.3 II' ),
 
545
  'BLU Tank4.5' => array( 'BLU', 'Tank 4.5' ),
546
  'BLU Tigo' => array( 'BLU', 'Tigo' ),
547
  'BLU P100i' => array( 'BLU', 'Touch Book 7.0 Plus', TYPE_TABLET ),
@@ -564,18 +645,26 @@
564
  'BROR W68' => array( 'BROR', 'W68' ),
565
  'bq Aquaris' => array( 'bq', 'Aquaris' ),
566
  'bq Aquaris 3.5' => array( 'bq', 'Aquaris 3.5' ),
 
567
  'bq Aquaris 5' => array( 'bq', 'Aquaris 5' ),
 
568
  'bq Curie' => array( 'bq', 'Curie', TYPE_TABLET ),
 
569
  'bq Curie 2 3G' => array( 'bq', 'Curie 2', TYPE_TABLET ),
 
 
570
  'bq DaVinci' => array( 'bq', 'DaVinci', TYPE_TABLET ),
571
  'bq Elcano' => array( 'bq', 'Elcano', TYPE_TABLET ),
572
  'bq Edison' => array( 'bq', 'Edison', TYPE_TABLET ),
573
  'bq Edison 3G' => array( 'bq', 'Edison', TYPE_TABLET ),
574
  'bq Edison 2' => array( 'bq', 'Edison 2', TYPE_TABLET ),
575
  'bq Edison 2 3G' => array( 'bq', 'Edison 2', TYPE_TABLET ),
 
 
576
  'Maxwell Lite' => array( 'bq', 'Maxwell Lite', TYPE_TABLET ),
577
  'bq Maxwell Plus' => array( 'bq', 'Maxwell Plus', TYPE_TABLET ),
578
  'bq Maxwell 2 Plus' => array( 'bq', 'Maxwell 2 Plus', TYPE_TABLET ),
 
579
  'bq Pascal 2' => array( 'bq', 'Pascal 2', TYPE_TABLET ),
580
  'bq Verne Plus' => array( 'bq', 'Verne Plus', TYPE_TABLET ),
581
  'CT701' => array( 'Carrefour', 'CT701', TYPE_TABLET ),
@@ -594,7 +683,13 @@
594
  'CAT NOVA' => array( 'Cat', 'NOVA', TYPE_TABLET ),
595
  'Celkon A8+' => array( 'Celkon', 'A8+' ),
596
  'CELKON A9+' => array( 'Celkon', 'A9+' ),
 
 
 
 
597
  'Celkon A79' => array( 'Celkon', 'A79' ),
 
 
598
  'Celkon A107+' => array( 'Celkon', 'Signature One A107+' ),
599
  'Celkon A119' => array( 'Celkon', 'Signature HD A119' ),
600
  'Celkon A119Q' => array( 'Celkon', 'Signature HD A119Q' ),
@@ -638,6 +733,7 @@
638
  'CP-DX650' => array( 'Cisco', 'DX650', TYPE_TABLET ),
639
  'Cloudfone Excite320e' => array( 'Cloudfone', 'Excite 320e' ),
640
  'Cloudfone Excite 402d' => array( 'Cloudfone', 'Excite 402d' ),
 
641
  'Cloudfone Thrill 430g' => array( 'Cloudfone', 'Thrill 430g' ),
642
  'Thrill 430x' => array( 'Cloudfone', 'Thrill 430x' ),
643
  'CloudPad 700d' => array( 'Cloudfone', 'CloudPad 700d' ),
@@ -703,6 +799,7 @@
703
  'Coolpad W708' => array( 'Coolpad', 'W708' ),
704
  'W711' => array( 'Coolpad', 'W711' ),
705
  'Coolpad 5010' => array( 'Coolpad', '5010' ),
 
706
  'Coolpad 5110' => array( 'Coolpad', '5110' ),
707
  'Coolpad 5210!' => array( 'Coolpad', '5210' ),
708
  'Coolpad 5211' => array( 'Coolpad', '5211' ),
@@ -720,9 +817,10 @@
720
  'Coolpad 5870' => array( 'Coolpad', '5870' ),
721
  '5870' => array( 'Coolpad', '5870' ),
722
  'Coolpad 5876' => array( 'Coolpad', '5876' ),
 
723
  'Coolpad 5880' => array( 'Coolpad', '5880' ),
724
  'Coolpad 5890' => array( 'Coolpad', '5890' ),
725
- 'Coolpad 5891' => array( 'Coolpad', '5891' ),
726
  'Coolpad 5910' => array( 'Coolpad', '5910' ),
727
  'Coolpad 5930' => array( 'Coolpad', '5930' ),
728
  'Coolpad 5950' => array( 'Coolpad', '5950' ),
@@ -737,8 +835,11 @@
737
  '7266' => array( 'Coolpad', '7266' ),
738
  'Coolpad 7268' => array( 'Coolpad', '7268' ),
739
  'Coolpad 7269' => array( 'Coolpad', '7269' ),
 
740
  'Coolpad 7290' => array( 'Coolpad', '7290' ),
741
  'Coolpad 7295!' => array( 'Coolpad', '7295' ),
 
 
742
  'Coolpad 7728' => array( 'Coolpad', '7728' ),
743
  'Coolpad 8010' => array( 'Coolpad', '8010' ),
744
  'Coolpad 8012' => array( 'Coolpad', '8012' ),
@@ -753,22 +854,37 @@
753
  'Coolpad 8070' => array( 'Coolpad', '8070' ),
754
  'Coolpad8070D' => array( 'Coolpad', '8070' ),
755
  'Coolpad 8076' => array( 'Coolpad', '8076' ),
 
 
756
  'Coolpad 8085' => array( 'Coolpad', '8085' ),
 
 
757
  'Coolpad -?8190!' => array( 'Coolpad', '8190' ),
758
  '8190Q' => array( 'Coolpad', '8190' ),
 
 
 
 
759
  '8720' => array( 'Coolpad', '8720' ),
 
 
 
 
760
  'Coolpad 8809' => array( 'Coolpad', '8809' ),
761
  'Coolpad 8810' => array( 'Coolpad', '8810' ),
762
  '8810' => array( 'Coolpad', '8810' ),
763
  'Coolpad 8811' => array( 'Coolpad', '8811' ),
764
  'Coolpad 8860!' => array( 'Coolpad', '8860' ),
765
  'Coolpad 8870!' => array( 'Coolpad', '8870' ),
 
766
  'Coolpad 9070' => array( 'Coolpad', '9070' ),
767
  'Coolpad 9080W' => array( 'Coolpad', '9080' ),
768
  'Coolpad 9120' => array( 'Coolpad', '9120' ),
 
769
  'Coolpad 9900' => array( 'Coolpad', '9900' ),
770
  'Coolpad 9960' => array( 'Coolpad', '9960' ),
771
  'Coolpad 9970' => array( 'Coolpad', '9970' ),
 
772
  'CLP281X' => array( 'Craig', 'CLP281x', TYPE_TABLET ),
773
  'CMP741d' => array( 'Craig', 'CMP741d', TYPE_TABLET ),
774
  'CMP741E' => array( 'Craig', 'CMP741e', TYPE_TABLET ),
@@ -777,13 +893,17 @@
777
  'ZiiLABS ZiiO10 ' => array( 'Creative', 'ZiiO 10', TYPE_TABLET ),
778
  'CTP828BT' => array( 'Cresta', 'CTP828BT', TYPE_TABLET ),
779
  'Cross A2' => array( 'Cross', 'A2' ),
 
780
  'Cross A7*' => array( 'Cross', 'A7' ),
781
  'CROSS A7S' => array( 'Cross', 'A7S' ),
782
  'CROSS A10' => array( 'Cross', 'A10' ),
 
 
783
  'CROSS A27' => array( 'Cross', 'A27' ),
784
  'CROSS A28' => array( 'Cross', 'A28' ),
785
  'CROSS A66' => array( 'Cross', 'A66' ),
786
  'CROSS A88' => array( 'Cross', 'A88' ),
 
787
  'CUBOT GT99' => array( 'Cubot', 'GT99' ),
788
  'CUBE K8GT A' => array( 'Cube', 'K8GT A', TYPE_TABLET ),
789
  'CUBE K8GT B' => array( 'Cube', 'K8GT B', TYPE_TABLET ),
@@ -818,18 +938,25 @@
818
  'U23GT-S' => array( 'Cube', 'U23GT S', TYPE_TABLET ),
819
  'U25GT' => array( 'Cube', 'U25GT', TYPE_TABLET ),
820
  'U25GT PRO' => array( 'Cube', 'U25GT Pro', TYPE_TABLET ),
 
821
  'U30GT-H' => array( 'Cube', 'U30GT H', TYPE_TABLET ),
822
  'U30GT-M' => array( 'Cube', 'U30GT M', TYPE_TABLET ),
 
823
  'U30GT MINI' => array( 'Cube', 'U30GT Mini', TYPE_TABLET ),
824
  'U30GT-mini' => array( 'Cube', 'U30GT Mini', TYPE_TABLET ),
 
825
  'U30GT 2' => array( 'Cube', 'U30GT2', TYPE_TABLET ),
826
  'U30GT-2' => array( 'Cube', 'U30GT2', TYPE_TABLET ),
 
827
  'U39GT' => array( 'Cube', 'U39GT', TYPE_TABLET ),
 
 
828
  'U55GT' => array( 'Cube', 'U55GT', TYPE_TABLET ),
829
  'CUBE Q7PRO' => array( 'Cube', 'Q7 Pro', TYPE_TABLET ),
830
  'CUBE Q7PRO J' => array( 'Cube', 'Q7 Pro', TYPE_TABLET ),
831
  'LT8088' => array( 'Curtis', 'Klu LT8088', TYPE_TABLET ),
832
  'Cydle M7!' => array( 'Cydle', 'M7 MultiPAD', TYPE_TABLET ),
 
833
  'DAKELE MC001' => array( 'Dakele', 'MC001' ),
834
  'MC002' => array( 'Dakele', 'MC002' ),
835
  'EvoPAD A7000' => array( 'Dark', 'EvoPad A7000', TYPE_TABLET ),
@@ -855,11 +982,14 @@
855
  'Venue 7 3730' => array( 'Dell', 'Venue 7', TYPE_TABLET ),
856
  'Venue 7 WWAN' => array( 'Dell', 'Venue 7', TYPE_TABLET ),
857
  'Venue 8 WiFi' => array( 'Dell', 'Venue 8', TYPE_TABLET ),
 
858
  'Dell XCD35' => array( 'Dell', 'XCD35' ),
859
  'XCD35' => array( 'Dell', 'XCD35' ),
 
860
  'TAC-70041' => array( 'Denver', 'TAC-70041', TYPE_TABLET ),
861
  'deovo V5' => array( 'deovo', 'V5' ),
862
  'DIT1010' => array( 'Difrnce', 'DIT1010', TYPE_TABLET ),
 
863
  'DIT102201' => array( 'Difrnce', 'DIT102201', TYPE_TABLET ),
864
  'Digma iDj7!' => array( 'Digma', 'iDj7', TYPE_TABLET ),
865
  'iDj7n' => array( 'Digma', 'iDj7n', TYPE_TABLET ),
@@ -868,6 +998,7 @@
868
  'iDx7 Type2 4' => array( 'Digma', 'iDx7', TYPE_TABLET ),
869
  'iDx10!' => array( 'Digma', 'iDx10', TYPE_TABLET ),
870
  'DIGMA iDsD8!' => array( 'Digma', 'iDsD8', TYPE_TABLET ),
 
871
  'iDxD4' => array( 'Digma', 'iDxD4' ),
872
  'iDxD7 3G' => array( 'Digma', 'iDxD7', TYPE_TABLET ),
873
  'DISTAB9000R' => array( 'Disgo', 'Distab 9000R', TYPE_TABLET ),
@@ -884,11 +1015,13 @@
884
  'AirTab P83' => array( 'DNS', 'AirTab P83', TYPE_TABLET ),
885
  'DPS Dream 9' => array( 'DPS', 'Dream 9', TYPE_TABLET ),
886
  'domod G20' => array( 'Domod', 'G20' ),
 
887
  'M975' => array( 'Double Power', 'M975', TYPE_TABLET ),
888
  'TD-1010' => array( 'Double Power', 'TD-1010', TYPE_TABLET ),
889
  'Tablet-P27' => array( 'DracoTek', 'P27 Tablet', TYPE_TABLET ),
890
  'ACM3066-8' => array( 'MY|eebo', 'Color Tablet', TYPE_TABLET ),
891
  'SUPREME IPS Dual Core X200' => array( 'E-Boda', 'Supreme IPS Dual Core X200', TYPE_TABLET ),
 
892
  'Storm V100' => array( 'E-Boda', 'Storm V100' ),
893
  'EBEN T7' => array( 'EBEN', 'T7', TYPE_TABLET ),
894
  'EBEST T5' => array( 'EBEST', 'T5' ),
@@ -906,12 +1039,16 @@
906
  'M4301' => array( 'Eston', 'MID M4301', 'media' ),
907
  'P10AN' => array( 'Exper', 'Easypad P10AN', TYPE_TABLET ),
908
  'Explay Advance' => array( 'Explay', 'Advance' ),
 
909
  'Informer-702' => array( 'Explay', 'Informer 702', TYPE_TABLET ),
910
  'informer 921' => array( 'Explay', 'Informer 921', TYPE_TABLET ),
911
  'Explay Surfer 7.02' => array( 'Explay', 'Surfer 7.02', TYPE_TABLET ),
 
912
  'Surfer 7.31 3G' => array( 'Explay', 'Surfer 7.31 3G', TYPE_TABLET ),
913
  'Surfer 7.32 3G' => array( 'Explay', 'Surfer 7.32 3G', TYPE_TABLET ),
 
914
  'Surfer 8 02' => array( 'Explay', 'Surfer 8.02', TYPE_TABLET ),
 
915
  'Surfer 10.11' => array( 'Explay', 'Surfer 10.11', TYPE_TABLET ),
916
  'GT-H9500' => array( 'Feiteng', 'GT-H9500' ),
917
  'iOCEAN X7' => array( 'FHD', 'iOCEAN X7' ),
@@ -931,14 +1068,17 @@
931
  '(Fly )?IQ280!' => array( 'Fly', 'IQ280 Tech' ),
932
  '(Fly )?IQ285!' => array( 'Fly', 'IQ285 Turbo' ),
933
  '(Fly )?IQ430!' => array( 'Fly', 'IQ430 Evoke' ),
 
934
  '(Fly )?IQ440!' => array( 'Fly', 'IQ440 Energie' ),
935
  '(Fly )?IQ441!' => array( 'Fly', 'IQ441 Radiance' ),
936
  '(Fly )?IQ442!' => array( 'Fly', 'IQ442 Miracle' ),
937
  '(Fly )?IQ443!' => array( 'Fly', 'IQ443 Trend' ),
938
  '(Fly )?IQ444!' => array( 'Fly', 'IQ444 Diamond' ),
939
  '(Fly )?IQ446!' => array( 'Fly', 'IQ446 Magic' ),
 
940
  '(Fly )?IQ450!' => array( 'Fly', 'IQ450 Horizon' ),
941
  '(Fly )?IQ451!' => array( 'Fly', 'IQ451 Vista' ),
 
942
  'F600' => array( 'Flying', 'F600' ),
943
  'BC1003' => array( 'Flytouch', 'BC1003', TYPE_TABLET ),
944
  'ifive X2' => array( 'FNF', 'iFive X2', TYPE_TABLET ),
@@ -955,9 +1095,11 @@
955
  'F-01D' => array( 'Fujitsu', 'Arrows Tab LTE', TYPE_TABLET ),
956
  'F-01F' => array( 'Fujitsu', 'Arrows NX F' ),
957
  'F-02E' => array( 'Fujitsu', 'Arrows X' ),
 
958
  'F-03D' => array( 'Fujitsu', 'Arrows Kiss' ),
959
  'F-03E' => array( 'Fujitsu', 'Arrows Kiss' ),
960
  'F-04E' => array( 'Fujitsu', 'Arrows V' ),
 
961
  'F-05D' => array( 'Fujitsu', 'Arrows X LTE' ),
962
  'F-05E' => array( 'Fujitsu', 'Arrows Tab' ),
963
  'F-06E' => array( 'Fujitsu', 'Arrows NX' ),
@@ -973,11 +1115,13 @@
973
  'f12bob' => array( 'Fujitsu', 'F12bob' ),
974
  'FJL21' => array( 'Fujitsu', 'Arrows ef FJL21' ),
975
  'FJL22' => array( 'Fujitsu', 'Arrows Z FJL22' ),
 
976
  'M532' => array( 'Fujitsu', 'Stylistic M532', TYPE_TABLET ),
977
  'Garminfone' => array( 'Garmin-Asus', 'Garminfone' ),
978
  'Garmin-Asus A10' => array( 'Garmin-Asus', 'Nuvifone A10' ),
979
  'Garmin-Asus A50' => array( 'Garmin-Asus', 'Nuvifone A50' ),
980
  'TPA60W' => array( 'Gateway', 'TPA60W', TYPE_TABLET ),
 
981
  'Geeksphone ZERO' => array( 'Geeksphone', 'ZERO'),
982
  'Gemei G2' => array( 'Gemei', 'G2', TYPE_TABLET ),
983
  'Gemei G3' => array( 'Gemei', 'G3', TYPE_TABLET ),
@@ -986,6 +1130,7 @@
986
  'GT-7240' => array( 'Genesis', 'Tab GT-7240', TYPE_TABLET ),
987
  'GT-7240R' => array( 'Genesis', 'Tab GT-7240R', TYPE_TABLET ),
988
  'GFIVE Bravo' => array( 'GFive', 'Bravo' ),
 
989
  'GSmart Aku A1' => array( 'Gigabyte', 'GSmart Aku A1' ),
990
  'GSmart G1310' => array( 'Gigabyte', 'GSmart G1310' ),
991
  'GSmart G1315!' => array( 'Gigabyte', 'GSmart G1315' ),
@@ -1001,10 +1146,12 @@
1001
  'GIGABYTE GSmart Rio R1' => array( 'Gigabyte', 'GSmart Rio R1' ),
1002
  'GSmart Sierra S1' => array( 'Gigabyte', 'GSmart Sierra S1' ),
1003
  'Gigabyte TB100' => array( 'Gigabyte', 'TB100', TYPE_TABLET ),
1004
- 'Gigaset QV830' => array( 'Gigaset', 'QV830' ),
 
1005
  'GIO-GiONEE C500' => array( 'Gionee', 'C500' ),
1006
  'GIO-GiONEE C600' => array( 'Gionee', 'C600' ),
1007
  'GiONEE-E6!' => array( 'Gionee', 'E6' ),
 
1008
  'GN100' => array( 'Gionee', 'GN100' ),
1009
  'GN100T' => array( 'Gionee', 'GN100T' ),
1010
  'GN105' => array( 'Gionee', 'GN105' ),
@@ -1027,7 +1174,9 @@
1027
  'GN800' => array( 'Gionee', 'GN800' ),
1028
  'GN818T' => array( 'Gionee', 'GN818T' ),
1029
  'GN858' => array( 'Gionee', 'GN858' ),
1030
- 'GN868' => array( 'Gionee', 'GN86N7078' ),
 
 
1031
  'GIONEE Ctrl V1' => array( 'Gionee', 'CTRL V1' ),
1032
  'GIONEE Ctrl V4' => array( 'Gionee', 'CTRL V4' ),
1033
  'Pioneer P2' => array( 'Gionee', 'Pioneer P2' ),
@@ -1057,6 +1206,8 @@
1057
  'HE-E760' => array( 'Haier', 'E760' ),
1058
  'Haier-HT-I617' => array( 'Haier', 'I617' ),
1059
  'HT-I617' => array( 'Haier', 'I617' ),
 
 
1060
  'Haier HW-N86W' => array( 'Haier', 'N86W' ),
1061
  'Haier-N88W' => array( 'Haier', 'N88W' ),
1062
  'Haier HW-W718' => array( 'Haier', 'W718' ),
@@ -1081,6 +1232,7 @@
1081
  'H7500+' => array( 'Hero', 'H7500+' ),
1082
  'H9500' => array( 'Hero', 'H9500' ),
1083
  'MID Ser(ai|ia)ls!' => array( 'Herotab', 'C8', TYPE_TABLET ),
 
1084
  'Cosmo' => array( 'Highscreen', 'Cosmo', TYPE_TABLET ),
1085
  'COSMO DUO' => array( 'Highscreen', 'Cosmo Duo', TYPE_TABLET ),
1086
  'Explosion' => array( 'Highscreen', 'Explosion' ),
@@ -1102,6 +1254,7 @@
1102
  'Hisense T92' => array( 'Hisense', 'T92' ),
1103
  'HS-T96' => array( 'Hisense', 'T96' ),
1104
  'HS-T818' => array( 'Hisense', 'T818' ),
 
1105
  'HS-T830' => array( 'Hisense', 'T830' ),
1106
  'HS-T909' => array( 'Hisense', 'T909' ),
1107
  'HS-T912' => array( 'Hisense', 'T912' ),
@@ -1117,11 +1270,14 @@
1117
  'E860' => array( 'Hisense', 'E860' ),
1118
  'HS-E910' => array( 'Hisense', 'E910' ),
1119
  'HS-E912!' => array( 'Hisense', 'E912' ),
 
 
1120
  'HS-E920' => array( 'Hisense', 'E920' ),
1121
  'HS-E926' => array( 'Hisense', 'E926' ),
1122
  'HS-E930' => array( 'Hisense', 'E930' ),
1123
  'HS-E956Q' => array( 'Hisense', 'E956' ),
1124
  'EG98' => array( 'Hisense', 'EG98' ),
 
1125
  'HS-EG900' => array( 'Hisense', 'EG900' ),
1126
  'HS-EG901' => array( 'Hisense', 'EG901' ),
1127
  'HS-EG906' => array( 'Hisense', 'EG906' ),
@@ -1133,9 +1289,11 @@
1133
  'HS-EG958' => array( 'Hisense', 'EG958' ),
1134
  'HS-EG970' => array( 'Hisense', 'EG970' ),
1135
  'HS-EG980' => array( 'Hisense', 'EG980' ),
 
1136
  'HS-ET919' => array( 'Hisense', 'ET919' ),
1137
  'EG968B' => array( 'Hisense', 'EG968B' ),
1138
  'E170BS' => array( 'Hisense', 'E170BS', TYPE_TABLET ),
 
1139
  'M470BSA' => array( 'Hisense', 'Sero 7 Pro', TYPE_TABLET ),
1140
  'M470BSE' => array( 'Hisense', 'Sero 7 Pro', TYPE_TABLET ),
1141
  'xt880b' => array( 'Hisense', 'XT880', TYPE_TELEVISION ),
@@ -1153,8 +1311,15 @@
1153
  'HOSIN V60' => array( 'Hosin', 'V60' ),
1154
  'HP 7' => array( 'HP', 'Slate 7', TYPE_TABLET ),
1155
  'HP Slate 7' => array( 'HP', 'Slate 7', TYPE_TABLET ),
 
 
 
 
 
1156
  'Slate 21' => array( 'HP', 'Slate 21', TYPE_TABLET ),
1157
  'HP SlateBook 10 x2 PC' => array( 'HP', 'SlateBook 10 x2', TYPE_TABLET ),
 
 
1158
  '(HP )?Touchpad!' => array( 'HP', 'TouchPad', TYPE_TABLET ),
1159
  '(cm|aokp) tenderloin!' => array( 'HP', 'TouchPad', TYPE_TABLET ),
1160
  'Amaze 4G' => array( 'HTC', 'Amaze 4G' ),
@@ -1165,23 +1330,36 @@
1165
  'HTC ?ChaCha!' => array( 'HTC', 'ChaCha' ),
1166
  'HTC A810e' => array( 'HTC', 'ChaCha' ),
1167
  'HTC A9188!' => array( 'HTC', 'Cullinan' ),
 
1168
  'HTC Desire 200' => array( 'HTC', 'Desire 200' ),
1169
  'HTC Desire 300' => array( 'HTC', 'Desire 300' ),
 
 
 
1170
  'HTC Desire 500' => array( 'HTC', 'Desire 500' ),
1171
  'HTC Desire 500 dual sim' => array( 'HTC', 'Desire 500' ),
 
1172
  'HTC Desire 600' => array( 'HTC', 'Desire 600' ),
 
1173
  'HTC Desire 601' => array( 'HTC', 'Desire 601' ),
 
1174
  'HTC 606w' => array( 'HTC', 'Desire 606w' ),
1175
  'HTC 608t' => array( 'HTC', 'Desire 608t' ),
1176
  'HTC 609d' => array( 'HTC', 'Desire 609d' ),
 
1177
  'HTC 619d' => array( 'HTC', 'Desire 619d' ),
1178
  'HTC 709d' => array( 'HTC', 'Desire 709d' ),
 
 
 
 
1179
  'HTC Desire C' => array( 'HTC', 'Desire C' ),
1180
  'HTC H1000C' => array( 'HTC', 'Desire C' ),
1181
  'HTC A320e' => array( 'HTC', 'Desire C' ),
1182
  'HTC Desire ?HD!' => array( 'HTC', 'Desire HD' ),
1183
  'HTC A91(91|92)!' => array( 'HTC', 'Desire HD' ),
1184
  'HTC PM6014' => array( 'HTC', 'Desire L' ),
 
1185
  'HTC ?Desire ?S( |$)!' => array( 'HTC', 'Desire S' ),
1186
  'HTC S510(b|e)!' => array( 'HTC', 'Desire S' ),
1187
  'HTC Desire Saga' => array( 'HTC', 'Desire S' ),
@@ -1201,6 +1379,7 @@
1201
  'HTC T329d' => array( 'HTC', 'T329d' ),
1202
  'HTC ?Desire!' => array( 'HTC', 'Desire' ),
1203
  'HTC Bravo' => array( 'HTC', 'Desire' ),
 
1204
  'HTC eris' => array( 'HTC', 'Desire' ),
1205
  'HTC A81(81|83)!' => array( 'HTC', 'Desire' ),
1206
  'HTC ?X06HT!' => array( 'HTC', 'Desire' ),
@@ -1225,6 +1404,7 @@
1225
  'HTC A31(0b|0e)!' => array( 'HTC', 'Explorer' ),
1226
  'HTC Pico Incredible HD' => array( 'HTC', 'Explorer' ),
1227
  'HTC first' => array( 'HTC', 'First' ),
 
1228
  'HTC Flyer!' => array( 'HTC', 'Flyer', TYPE_TABLET ),
1229
  'HTC P51(0e|2|5e)!' => array( 'HTC', 'Flyer', TYPE_TABLET ),
1230
  'HTC Gratia!' => array( 'HTC', 'Gratia' ),
@@ -1254,11 +1434,14 @@
1254
  'HTC X920e' => array( 'HTC', 'J Butterfly' ),
1255
  'HTC Butterfly' => array( 'HTC', 'J Butterfly' ),
1256
  'HTC J Butterfly' => array( 'HTC', 'J Butterfly' ),
 
1257
  'HTC Butterfly s' => array( 'HTC', 'Butterfly S' ),
1258
  'HTC PO68' => array( 'HTC', 'Butterfly S' ),
1259
  'HTC 9060' => array( 'HTC', 'Butterfly S' ),
1260
  'HTC 9088' => array( 'HTC', 'Butterfly S' ),
1261
  'HTC 909d' => array( 'HTC', 'Butterfly S' ),
 
 
1262
  'HTC P715a' => array( 'HTC', 'Jetstream', TYPE_TABLET ),
1263
  'HTC PG09410' => array( 'HTC', 'Jetstream', TYPE_TABLET ),
1264
  'HTC Legend' => array( 'HTC', 'Legend' ),
@@ -1295,8 +1478,9 @@
1295
  'HTC ?One XL!' => array( 'HTC', 'One XL' ),
1296
  'HTC S720t!' => array( 'HTC', 'One XT' ),
1297
  'HTC 801e' => array( 'HTC', 'One' ),
 
1298
  'HTC 802d' => array( 'HTC', 'One' ),
1299
- 'HTC 802t' => array( 'HTC', 'One' ),
1300
  'HTC 802w' => array( 'HTC', 'One' ),
1301
  'HTC PN071' => array( 'HTC', 'One' ),
1302
  'HTC PN072' => array( 'HTC', 'One' ),
@@ -1305,6 +1489,7 @@
1305
  'HTC6500LVW' => array( 'HTC', 'One' ),
1306
  'HTC6500LVW 4G' => array( 'HTC', 'One' ),
1307
  'HTC One 801e' => array( 'HTC', 'One' ),
 
1308
  'HTC One dual 802d' => array( 'HTC', 'One' ),
1309
  'HTC One dual sim' => array( 'HTC', 'One' ),
1310
  '801a' => array( 'HTC', 'One' ),
@@ -1315,9 +1500,21 @@
1315
  'HTC PO58220' => array( 'HTC', 'One Mini' ),
1316
  'HTC One mini' => array( 'HTC', 'One Mini' ),
1317
  'HTC 809d' => array( 'HTC', 'One Max' ),
1318
- 'HTC 0P3P[0-9]!' => array( 'HTC', 'One Max' ),
 
 
1319
  'HTC6600LVW' => array( 'HTC', 'One Max' ),
 
1320
  'HTC One max' => array( 'HTC', 'One Max' ),
 
 
 
 
 
 
 
 
 
1321
  'HTC Raider!' => array( 'HTC', 'Raider 4G' ),
1322
  'HTC Holiday' => array( 'HTC', 'Raider 4G' ),
1323
  'HTC X710(a|e|s)!' => array( 'HTC', 'Raider 4G' ),
@@ -1459,6 +1656,7 @@
1459
  'Z710e' => array( 'HTC', 'Sensation' ),
1460
  'T9199h' => array( 'HTC', 'T9199h' ),
1461
  'ADR6200' => array( 'HTC', 'Droid Eris' ),
 
1462
  'HTCADR6290US' => array( 'HTC', 'One V' ),
1463
  'ADR6300' => array( 'HTC', 'Droid Incredible' ),
1464
  'ADR6325!' => array( 'HTC', 'Merge' ),
@@ -1499,9 +1697,18 @@
1499
  'MediaPad 7 Vivid' => array( 'Huawei', 'MediaPad 7 Vivid', TYPE_TABLET ),
1500
  'MediaPad 7 Vogue' => array( 'Huawei', 'MediaPad 7 Vogue', TYPE_TABLET ),
1501
  'MediaPad 7 Youth' => array( 'Huawei', 'MediaPad 7 Youth', TYPE_TABLET ),
 
 
 
1502
  'MediaPad 10 FHD' => array( 'Huawei', 'MediaPad 10', TYPE_TABLET ),
1503
  'MediaPad 10 LINK' => array( 'Huawei', 'MediaPad 10 Link', TYPE_TABLET ),
 
 
 
 
 
1504
  'Huawei A199' => array( 'Huawei', 'A199' ),
 
1505
  'Huawei C8500!' => array( 'Huawei', 'C8500' ),
1506
  'Huawei C8600' => array( 'Huawei', 'C8600' ),
1507
  'Huawei C8650!' => array( 'Huawei', 'C8650' ),
@@ -1510,16 +1717,27 @@
1510
  'Huawei C8810' => array( 'Huawei', 'Ascend G300' ),
1511
  'Huawei C8812!' => array( 'Huawei', 'Ascend C8812' ),
1512
  'Huawei C8813!' => array( 'Huawei', 'Ascend C8813' ),
1513
- 'Huawei C8815' => array( 'Huawei', 'Ascend C8815' ),
 
 
1514
  'Huawei C8825D' => array( 'Huawei', 'Ascend G330C' ),
1515
  'Huawei C8826D' => array( 'Huawei', 'Ascend G500C' ),
1516
  'Huawei C8860E' => array( 'Huawei', 'Honor' ),
1517
  'Huawei C8950D' => array( 'Huawei', 'Honor+' ),
1518
  'Huawei G300' => array( 'Huawei', 'Ascend G300' ),
 
 
 
1519
  'Huawei G525!' => array( 'Huawei', 'Ascend G525' ),
1520
  'Huawei G610!' => array( 'Huawei', 'Ascend G610' ),
 
 
 
1521
  'Huawei G7500' => array( 'Huawei', 'G7500' ),
 
 
1522
  'Huawei H867G' => array( 'Huawei', 'H867G' ),
 
1523
  'Huawei H881C' => array( 'Huawei', 'Ascend Plus' ),
1524
  'Huawei M835' => array( 'Huawei', 'M835' ),
1525
  'Huawei M860' => array( 'Huawei', 'Ascend' ),
@@ -1528,6 +1746,9 @@
1528
  'Huawei M931' => array( 'Huawei', 'M931' ),
1529
  'Huawei MT1-U06' => array( 'Huawei', 'Ascend Mate' ),
1530
  'Huawei MT1-T00' => array( 'Huawei', 'Ascend Mate' ),
 
 
 
1531
  'Huawei S8520' => array( 'Huawei', 'S8520' ),
1532
  'Huawei S8600' => array( 'Huawei', 'S8600' ),
1533
  'Huawei T8100' => array( 'Huawei', 'T8100' ),
@@ -1558,6 +1779,7 @@
1558
  'Huawei U8825D' => array( 'Huawei', 'Ascend G330D' ),
1559
  'Huawei U8825-1' => array( 'Huawei', 'Ascend G330' ),
1560
  'HUAWEI u8833' => array( 'Huawei', 'Ascend Y300' ),
 
1561
  'Huawei U8850' => array( 'Huawei', 'Vision' ),
1562
  'Huawei U8860' => array( 'Huawei', 'Honor' ),
1563
  'Huawei Honor' => array( 'Huawei', 'Honor' ),
@@ -1565,14 +1787,27 @@
1565
  'Huawei ?U9000!' => array( 'Huawei', 'Ascend X' ),
1566
  'Huawei U9508' => array( 'Huawei', 'Honor 2' ),
1567
  'Huawei ?U9508!' => array( 'Huawei', 'Honor 2 Quad-core' ),
 
1568
  'HUAWEI HN3-U01' => array( 'Huawei', 'Honor 3' ),
1569
  'Huawei U9510!' => array( 'Huawei', 'Ascend D quad' ),
1570
  'Huawei D2-0082' => array( 'Huawei', 'Ascend D2' ),
1571
  'Huawei D2-2010' => array( 'Huawei', 'Ascend D2' ),
 
 
1572
  'Huawei P2-6011' => array( 'Huawei', 'Ascend P2' ),
1573
  'Huawei P2-6070' => array( 'Huawei', 'Ascend P2' ),
 
1574
  'Huawei P6-U06' => array( 'Huawei', 'Ascend P6' ),
 
 
 
 
 
1575
  'Huawei P6-T00!' => array( 'Huawei', 'Ascend P6' ),
 
 
 
 
1576
  'Huawei IDEOS U8500' => array( 'Huawei', 'IDEOS X2' ),
1577
  'Huawei IDEOS U8650' => array( 'Huawei', 'Sonic' ),
1578
  'Huawei IDEOS X3' => array( 'Huawei', 'IDEOS X3' ),
@@ -1586,26 +1821,34 @@
1586
  'Huawei G520!' => array( 'Huawei', 'Ascend G520' ),
1587
  'Huawei G606!' => array( 'Huawei', 'Ascend G606' ),
1588
  'Huawei G610!' => array( 'Huawei', 'Ascend G610' ),
 
 
1589
  'Huawei G620!' => array( 'Huawei', 'Ascend G620' ),
1590
  'Huawei G700!' => array( 'Huawei', 'Ascend G700' ),
1591
  'Huawei ?G716!' => array( 'Huawei', 'Ascend G716' ),
1592
  'Huawei G718!' => array( 'Huawei', 'Ascend G718' ),
1593
  'Huawei G730!' => array( 'Huawei', 'Ascend G730' ),
1594
  'Huawei Y210!' => array( 'Huawei', 'Ascend Y210' ),
1595
- 'Huawei Y ?220T!' => array( 'Huawei', 'Ascend Y220T' ),
 
 
 
1596
  'Huawei Y300!' => array( 'Huawei', 'Ascend Y300' ),
1597
  'Ascend Y300' => array( 'Huawei', 'Ascend Y300' ),
1598
  'Huawei Y301!' => array( 'Huawei', 'Ascend Y301' ),
1599
  'Huawei Y310!' => array( 'Huawei', 'Ascend Y310' ),
1600
  'Huawei Y320!' => array( 'Huawei', 'Ascend Y320' ),
 
1601
  'Huawei Y500!' => array( 'Huawei', 'Ascend Y500' ),
1602
  'Huawei Y511!' => array( 'Huawei', 'Ascend Y511' ),
1603
  'Huawei Y516!' => array( 'Huawei', 'Ascend Y516' ),
 
1604
  'Huawei Y530!' => array( 'Huawei', 'Ascend Y530' ),
1605
  'Huawei Ascend X' => array( 'Huawei', 'Ascend X' ),
1606
- 'Huawei EDGE' => array( 'Huawei', 'Ascend P6' ),
1607
- 'Huawei P6-C00' => array( 'Huawei', 'Ascend P6' ),
1608
- 'HUAWEI G6-U00' => array( 'Huawei', 'Ascend G6' ),
 
1609
  'FUSIONideos' => array( 'Huawei', 'IDEOS' ),
1610
  'Gnappo Ideos' => array( 'Huawei', 'IDEOS' ),
1611
  'Ideos' => array( 'Huawei', 'IDEOS' ),
@@ -1721,6 +1964,7 @@
1721
  'AUXUS CoreX4 3G' => array( 'iBerry', 'Auxus CoreX4', TYPE_TABLET ),
1722
  'AUXUS Nuclea N1' => array( 'iBerry', 'Auxus Nuclea N1' ),
1723
  'NetTab iconBIT' => array( 'IconBit', 'NetTab', TYPE_TABLET ),
 
1724
  'NetTAB Pocket' => array( 'IconBit', 'NetTab Pocket', TYPE_TABLET ),
1725
  'NetTAB RUNE' => array( 'IconBit', 'NetTab Rune', TYPE_TABLET ),
1726
  'NT-0801C' => array( 'IconBit', 'NetTab Skat RX', TYPE_TABLET ),
@@ -1740,8 +1984,11 @@
1740
  'Avvio 710' => array( 'Ilium', 'AVVIO 710' ),
1741
  'Avvio 735s' => array( 'Ilium', 'AVVIO 735' ),
1742
  'Ilium AVVIO 760' => array( 'Ilium', 'AVVIO 760' ),
 
 
1743
  'Avvio 790' => array( 'Ilium', 'AVVIO 790' ),
1744
  'Avvio 790s' => array( 'Ilium', 'AVVIO 790' ),
 
1745
  'IMO S79' => array( 'IMO', 'Explorer S79' ),
1746
  'IMO S88' => array( 'IMO', 'Discovery S88' ),
1747
  'S88 DISCOVERY' => array( 'IMO', 'Discovery S88' ),
@@ -1755,13 +2002,17 @@
1755
  'IMO Z9' => array( 'IMO', 'Z9', TYPE_TABLET ),
1756
  'TX85' => array( 'iMuz', 'TX85', TYPE_TABLET ),
1757
  'i3000' => array( 'iNew', 'i3000' ),
 
 
1758
  'IN810' => array( 'InFocus', 'IN810' ),
 
1759
  'M009F' => array( 'Infotmic', 'M009F' ),
1760
  'Dk1031' => array( 'Infotmic', 'Flytouch 3', TYPE_TABLET ),
1761
  'INHON PAPILIO G1' => array( 'Inhon', 'Papilio G1' ),
1762
  'innos i5' => array( 'Innos', 'i5' ),
1763
  'innos i6' => array( 'Innos', 'i6' ),
1764
  'innos i6C' => array( 'Innos', 'i6C' ),
 
1765
  'AZ210A' => array( 'Intel', 'AZ210A' ),
1766
  'AZ210B' => array( 'Intel', 'AZ210B' ),
1767
  'AZ510' => array( 'Intel', 'AZ510' ),
@@ -1779,6 +2030,7 @@
1779
  'ILT-MX100' => array( 'iRiver', 'Tab', TYPE_TABLET ),
1780
  'IVIO DE38' => array( 'Ivio', 'DE38' ),
1781
  'iwoo i900' => array( 'iwoo', 'i900' ),
 
1782
  'JY-G1' => array( 'Jiayu', 'G1' ),
1783
  'JY-G2' => array( 'Jiayu', 'G2' ),
1784
  'JY-G2L' => array( 'Jiayu', 'G2' ),
@@ -1789,7 +2041,9 @@
1789
  'G2S' => array( 'Jiayu', 'G2 Plus' ),
1790
  'JY-G3' => array( 'Jiayu', 'G3' ),
1791
  'Jiayu G3' => array( 'Jiayu', 'G3' ),
 
1792
  'JY-G4' => array( 'Jiayu', 'G4' ),
 
1793
  'JT-Smart PC01' => array( 'Joy-IT', 'JT-Smart PC-01' ),
1794
  'JJ5S+' => array( 'Jugate', 'JJ5S+' ),
1795
  'JC-A107' => array( 'JuiCell', 'JC-A107' ),
@@ -1803,11 +2057,13 @@
1803
  'Karbonn A2+' => array( 'Karbonn', 'A2+' ),
1804
  'Karbonn A4' => array( 'Karbonn', 'A4' ),
1805
  'Karbonn A5' => array( 'Karbonn', 'A5' ),
 
1806
  'Karbonn A6' => array( 'Karbonn', 'A6' ),
1807
  'A7+' => array( 'Karbonn', 'A7+' ),
1808
  'Karbonn A8' => array( 'Karbonn', 'A8' ),
1809
  'Karbonn A9' => array( 'Karbonn', 'A9' ),
1810
  'Karbonn A9+' => array( 'Karbonn', 'A9+' ),
 
1811
  'A11' => array( 'Karbonn', 'A11' ),
1812
  'Karbonn A12' => array( 'Karbonn', 'A12' ),
1813
  'Karbonn A12+' => array( 'Karbonn', 'A12+' ),
@@ -1816,6 +2072,8 @@
1816
  'A21' => array( 'Karbonn', 'A21' ),
1817
  'Karbonn A25' => array( 'Karbonn', 'A25' ),
1818
  'Karbonn A26' => array( 'Karbonn', 'A26' ),
 
 
1819
  'Karbonn A30' => array( 'Karbonn', 'A30' ),
1820
  'TA-FONE A37' => array( 'Karbonn', 'Ta-Fone A37' ),
1821
  'Karbonn A50' => array( 'Karbonn', 'A50' ),
@@ -1829,6 +2087,8 @@
1829
  'K080' => array( 'Kobo', 'K080', TYPE_EREADER ),
1830
  'M1050S' => array( 'KOCASO', 'M1050S', TYPE_TABLET ),
1831
  'K3' => array( 'Konka', 'K3' ),
 
 
1832
  'W990' => array( 'Konka', 'W990' ),
1833
  'A106' => array( 'koobee', 'A160' ),
1834
  'Koobe S7 Easy tablet' => array( 'Koobe', 'S7 Easy tablet', TYPE_TABLET ),
@@ -1841,6 +2101,8 @@
1841
  'KM-S300' => array( 'Kttech', 'Take HD KM-S300' ),
1842
  'KM-S330' => array( 'Kttech', 'Take Fit KM-S330' ),
1843
  'Kurio7' => array( 'Kurio', '7', TYPE_TABLET ),
 
 
1844
  'Kyobo mirasol eReader' => array( 'Kyobo', 'eReader', TYPE_EREADER ),
1845
  'ISW11K' => array( 'Kyocera', 'Digno' ),
1846
  'KYL21' => array( 'Kyocera', 'Digno S' ),
@@ -1857,8 +2119,10 @@
1857
  'C5170' => array( 'Kyocera', 'Hydro' ),
1858
  'C5215' => array( 'Kyocera', 'Hydro Edge' ),
1859
  'C5216' => array( 'Kyocera', 'Hydro Edge' ), // Unknown
 
1860
  'C6522N' => array( 'Kyocera', 'Hydro XTRM' ),
1861
  'USCC-C6721' => array( 'Kyocera', 'Hydro XTRM' ),
 
1862
  'C6750' => array( 'Kyocera', 'Hydro Elite' ),
1863
  'M9300' => array( 'Kyocera', 'Echo' ),
1864
  'KYY21' => array( 'Kyocera', 'Urbano L01' ),
@@ -1867,6 +2131,7 @@
1867
  '201K' => array( 'Kyocera', 'HONEY BEE 201K' ),
1868
  '202K' => array( 'Kyocera', 'Digno R 201K' ),
1869
  'K-Touch C666t' => array( 'K-Touch', 'C666' ),
 
1870
  'K-Touch C986t' => array( 'K-Touch', 'C986' ),
1871
  'K-Touch E7' => array( 'K-Touch', 'E7' ),
1872
  'TY-K-Touch E80' => array( 'K-Touch', 'E80' ),
@@ -1880,6 +2145,7 @@
1880
  'K-Touch E806' => array( 'K-Touch', 'E806' ),
1881
  'K-Touch S2' => array( 'K-Touch', 'S2' ),
1882
  'K-Touch S5' => array( 'K-Touch', 'S5' ),
 
1883
  'K-TouchT580' => array( 'K-Touch', 'T580' ),
1884
  'K-Touch T619' => array( 'K-Touch', 'T619' ),
1885
  'K-Touch T619+' => array( 'K-Touch', 'T619+' ),
@@ -1892,6 +2158,7 @@
1892
  'K-Touch U7' => array( 'K-Touch', 'U7' ),
1893
  'K-Touch U8' => array( 'K-Touch', 'U8' ),
1894
  'K-Touch U10' => array( 'K-Touch', 'U10' ),
 
1895
  'K-Touch U86' => array( 'K-Touch', 'U86' ),
1896
  'K-Touch U90' => array( 'K-Touch', 'U90' ),
1897
  'K-Touch V8' => array( 'K-Touch', 'V8' ),
@@ -1902,11 +2169,13 @@
1902
  'K-Touch W619!' => array( 'K-Touch', 'W619' ),
1903
  'K-Touch W621' => array( 'K-Touch', 'W621' ),
1904
  'K-Touch W650!' => array( 'K-Touch', 'W650' ),
 
1905
  'K-Touch W658' => array( 'K-Touch', 'W658' ),
1906
  'W686' => array( 'K-Touch', 'W686' ),
1907
  'K-Touch W688' => array( 'K-Touch', 'W688' ),
1908
  'K-Touch W700' => array( 'K-Touch', 'W700' ),
1909
  'W700' => array( 'K-Touch', 'W700' ),
 
1910
  'K-Touch W719' => array( 'K-Touch', 'W719' ),
1911
  'W732' => array( 'K-Touch', 'W732' ),
1912
  'K-Touch W760' => array( 'K-Touch', 'W760' ),
@@ -1918,18 +2187,25 @@
1918
  'W808' => array( 'K-Touch', 'W808' ),
1919
  'W810' => array( 'K-Touch', 'W810' ),
1920
  'W880' => array( 'K-Touch', 'W880' ),
 
1921
  'Ilium S115' => array( 'Lanix', 'Ilium S115' ),
 
1922
  'Ilium S200' => array( 'Lanix', 'Ilium S200' ),
1923
  'Lanix Ilium S210' => array( 'Lanix', 'Ilium S210' ),
1924
  'Lanix Ilium S400' => array( 'Lanix', 'Ilium S400' ),
 
1925
  'Lanix Ilium S500' => array( 'Lanix', 'Ilium S500' ),
 
1926
  'ilium Pad E8' => array( 'Lanix', 'Ilium Pad E8', TYPE_TABLET ),
1927
  'IRIS355' => array( 'Lava', 'Iris 355' ),
1928
  'iris356' => array( 'Lava', 'Iris 356' ),
1929
  'IRIS402' => array( 'Lava', 'Iris 402' ),
 
1930
  'IRIS 455' => array( 'Lava', 'Iris 455' ),
1931
  'iris458Q' => array( 'Lava', 'Iris 458Q' ),
 
1932
  'iris504Q' => array( 'Lava', 'Iris 504Q' ),
 
1933
  'LAVA S12' => array( 'Lava', 'S12' ),
1934
  'A500L' => array( 'Lava', 'XOLO A500L' ),
1935
  'A500s' => array( 'Lava', 'XOLO A500S' ),
@@ -1938,9 +2214,18 @@
1938
  'XOLO A1000' => array( 'Lava', 'XOLO A1000' ),
1939
  'XOLO B700' => array( 'Lava', 'XOLO B700' ),
1940
  'Q700' => array( 'Lava', 'XOLO Q700' ),
 
 
 
1941
  'Q800' => array( 'Lava', 'XOLO Q800' ),
1942
  'XOLO Q800' => array( 'Lava', 'XOLO Q800' ),
 
1943
  'Q1000' => array( 'Lava', 'XOLO Q1000' ),
 
 
 
 
 
1944
  'XOLO T1000' => array( 'Lava', 'XOLO T1000' ),
1945
  'Xolo X500' => array( 'Lava', 'XOLO X500' ),
1946
  'X900' => array( 'Lava', 'XOLO X900' ),
@@ -1949,6 +2234,7 @@
1949
  'XOLO X1000' => array( 'Lava', 'XOLO X1000' ),
1950
  'XOLO Play' => array( 'Lava', 'XOLO Play' ),
1951
  'Xolo QC800' => array( 'Lava', 'XOLO QC800', TYPE_TABLET ),
 
1952
  'leepoo i500' => array( 'Leepoo', 'i500' ),
1953
  'leepoo i600' => array( 'Leepoo', 'i600' ),
1954
  'LENCM900HZ' => array( 'Lenco', 'TAB 811', TYPE_TABLET ),
@@ -1961,6 +2247,8 @@
1961
  'Ideapad S10-3T' => array( 'Lenovo', 'IdeaPad S10-3T', TYPE_TABLET ),
1962
  'IdeaTab ?A1000(-F|-G|-T)!' => array( 'Lenovo', 'IdeaTab A1000', TYPE_TABLET ),
1963
  'IdeaTab ?A1000(L-F)!' => array( 'Lenovo', 'IdeaTab A1000', TYPE_TABLET ),
 
 
1964
  'IdeaTab ?A1107!' => array( 'Lenovo', 'IdeaTab A1107', TYPE_TABLET ),
1965
  'Lenovo A2105' => array( 'Lenovo', 'IdeaTab A2105', TYPE_TABLET ),
1966
  'IdeaTab ?A2107(A-F|A-H)!' => array( 'Lenovo', 'IdeaTab A2107', TYPE_TABLET ),
@@ -1969,10 +2257,13 @@
1969
  'IdeaTab ?A2207(A-H)!' => array( 'Lenovo', 'IdeaTab A2207', TYPE_TABLET ),
1970
  'IdeaTab ?A3000-(F|H)!' => array( 'Lenovo', 'IdeaTab A3000', TYPE_TABLET ),
1971
  'Lenovo A3000-H!' => array( 'Lenovo', 'IdeaTab A3000', TYPE_TABLET ),
 
1972
  'IdeaTab ?A5000-E!' => array( 'Lenovo', 'IdeaTab A5000', TYPE_TABLET ),
1973
- 'Lenovo A5500HV' => array( 'Lenovo', 'IdeaTab A5500', TYPE_TABLET ),
1974
- 'Lenovo B6000-F' => array( 'Lenovo', 'IdeaTab B6000', TYPE_TABLET ),
1975
- 'Lenovo B8000-H' => array( 'Lenovo', 'IdeaTab B8000', TYPE_TABLET ),
 
 
1976
  'IdeaTab ?K2110(A-F)!' => array( 'Lenovo', 'IdeaTab K2110', TYPE_TABLET ),
1977
  'S2005A-H' => array( 'Lenovo', 'IdeaTab S2005', TYPE_TABLET ),
1978
  'IdeaTab ?S2007(A-D)!' => array( 'Lenovo', 'IdeaTab S2007', TYPE_TABLET ),
@@ -2005,20 +2296,28 @@
2005
  'Lenovo A298t' => array( 'Lenovo', 'A298' ),
2006
  'Lenovo A300!' => array( 'Lenovo', 'A300' ),
2007
  'Lenovo A305e' => array( 'Lenovo', 'A305' ),
 
2008
  'Lenovo A316i' => array( 'Lenovo', 'A316' ),
 
2009
  'Lenovo A326' => array( 'Lenovo', 'A326' ),
 
2010
  'Lenovo A356' => array( 'Lenovo', 'A356' ),
2011
  'Lenovo A360' => array( 'Lenovo', 'A360' ),
2012
  'Lenovo A365e' => array( 'Lenovo', 'A365' ),
2013
  'Lenovo A366t' => array( 'Lenovo', 'A366' ),
2014
- 'Lenovo A369i' => array( 'Lenovo', 'A369' ),
2015
  'Lenovo A370e' => array( 'Lenovo', 'A370' ),
 
2016
  'Lenovo A375e' => array( 'Lenovo', 'A375' ),
 
2017
  'Lenovo A378t' => array( 'Lenovo', 'A378' ),
 
2018
  'Lenovo A390!' => array( 'Lenovo', 'A390' ),
2019
  'Lenovo A398t' => array( 'Lenovo', 'A398' ),
2020
  'Lenovo A500' => array( 'Lenovo', 'A500' ),
 
2021
  'Lenovo A520!' => array( 'Lenovo', 'A520' ),
 
2022
  'Lenovo A530' => array( 'Lenovo', 'A530' ),
2023
  'Lenovo A560e' => array( 'Lenovo', 'A560' ),
2024
  'Lenovo A580' => array( 'Lenovo', 'A580' ),
@@ -2026,20 +2325,24 @@
2026
  'Lenovo A590' => array( 'Lenovo', 'A590' ),
2027
  'Lenovo A630!' => array( 'Lenovo', 'A630' ),
2028
  'Lenovo A656' => array( 'Lenovo', 'A656' ),
 
2029
  'Lenovo A660' => array( 'Lenovo', 'A660' ),
 
2030
  'Lenovo A670t' => array( 'Lenovo', 'A670' ),
2031
  'Lenovo A678t' => array( 'Lenovo', 'A678' ),
 
2032
  'Lenovo A690' => array( 'Lenovo', 'A690' ),
2033
- 'Lenovo A668t' => array( 'Lenovo', 'A668' ),
2034
  'Lenovo A698t' => array( 'Lenovo', 'A698' ),
2035
  'Lenovo A700e' => array( 'Lenovo', 'A700' ),
2036
  'Lenovo A706!' => array( 'Lenovo', 'A706' ),
 
2037
  'Lenovo A710e' => array( 'Lenovo', 'A710' ),
2038
  'Lenovo A720e' => array( 'Lenovo', 'A720' ),
2039
  'Lenovo A750!' => array( 'Lenovo', 'A750' ),
2040
  'A750' => array( 'Lenovo', 'A750' ),
 
2041
  'Lenovo A765!' => array( 'Lenovo', 'A765' ),
2042
- 'Lenovo A766' => array( 'Lenovo', 'A766' ),
2043
  'Lenovo A770e' => array( 'Lenovo', 'A770' ),
2044
  'Lenovo A780' => array( 'Lenovo', 'A780' ),
2045
  'Lenovo A788t' => array( 'Lenovo', 'A788' ),
@@ -2047,31 +2350,44 @@
2047
  'Lenovo A790e' => array( 'Lenovo', 'A790' ),
2048
  'Lenovo A798t' => array( 'Lenovo', 'A798' ),
2049
  'Lenovo A800' => array( 'Lenovo', 'A800' ),
 
 
2050
  'Lenovo A820!' => array( 'Lenovo', 'A820' ),
2051
  'Lenovo A828!' => array( 'Lenovo', 'A828' ),
2052
  'Lenovo A830' => array( 'Lenovo', 'A830' ),
2053
- 'Lenovo A850' => array( 'Lenovo', 'A850' ),
 
 
 
2054
  'Lenovo K2' => array( 'Lenovo', 'K2' ),
2055
  'Lenovo K6' => array( 'Lenovo', 'K6' ),
2056
  'Lenovo K800' => array( 'Lenovo', 'K800' ),
2057
  'Lenovo K860!' => array( 'Lenovo', 'K860' ),
2058
  'Lenovo K900!' => array( 'Lenovo', 'K900' ),
 
 
2059
  'Lenovo P70' => array( 'Lenovo', 'P70' ),
2060
  'Lenovo P700!' => array( 'Lenovo', 'P700' ),
2061
  'P700i' => array( 'Lenovo', 'P700i' ),
2062
- 'Lenovo P770' => array( 'Lenovo', 'P770' ),
2063
  'Lenovo-P770' => array( 'Lenovo', 'P770' ),
2064
  'Lenovo P780!' => array( 'Lenovo', 'P780' ),
2065
  'Lenovo S560' => array( 'Lenovo', 'S560' ),
2066
  'Lenovo S650' => array( 'Lenovo', 'S650' ),
 
 
 
 
2067
  'Lenovo S680' => array( 'Lenovo', 'S680' ),
2068
  'Lenovo S686' => array( 'Lenovo', 'S686' ),
 
2069
  'Lenovo S720!' => array( 'Lenovo', 'S720' ),
2070
  'S720i' => array( 'Lenovo', 'S720' ),
2071
  'Lenovo S750' => array( 'Lenovo', 'S750' ),
2072
  'Lenovo S760' => array( 'Lenovo', 'S760' ),
2073
  'Lenovo S820!' => array( 'Lenovo', 'S820' ),
2074
- 'Lenovo S850e' => array( 'Lenovo', 'S850' ),
 
2075
  'Lenovo S868t' => array( 'Lenovo', 'S868' ),
2076
  'Lenovo S870e' => array( 'Lenovo', 'S870' ),
2077
  'Lenovo S880!' => array( 'Lenovo', 'S880' ),
@@ -2081,6 +2397,7 @@
2081
  'Lenovo ?S899!' => array( 'Lenovo', 'S899' ),
2082
  'Lenovo S920!' => array( 'Lenovo', 'S920' ),
2083
  'Lenovo S930' => array( 'Lenovo', 'S930' ),
 
2084
  'Lenovo S950' => array( 'Lenovo', 'S950' ),
2085
  'Lenovo S960' => array( 'Lenovo', 'S960' ),
2086
  'Lenovo W100' => array( 'Lenovo', 'W100' ),
@@ -2089,6 +2406,8 @@
2089
  'ideatv K82' => array( 'Lenovo', 'IDEA TV', TYPE_TELEVISION ),
2090
  'IDEA TV T100' => array( 'Lenovo', 'IDEA TV', TYPE_TELEVISION ),
2091
  'IDEA TV K91' => array( 'Lenovo', 'IDEA TV', TYPE_TELEVISION ),
 
 
2092
  'lephone 1800' => array( 'Lephone', '1800' ),
2093
  'BLF-lephone 1900' => array( 'Lephone', '1900' ),
2094
  'lephone 2800' => array( 'Lephone', '2800' ),
@@ -2097,10 +2416,13 @@
2097
  'LePanII' => array( 'Le Pan', 'II', TYPE_TABLET ),
2098
  'Le Pan S' => array( 'Le Pan', 'S', TYPE_TABLET ),
2099
  'LG-AN160' => array( 'LG', 'Fluid' ),
 
2100
  'LG-AS680' => array( 'LG', 'Optimus 2' ),
2101
  'LG-AS730' => array( 'LG', 'Optimus Select' ),
 
2102
  'LG-AS780' => array( 'LG', 'Optimus F7' ),
2103
  'LG-AS870' => array( 'LG', 'Optimus F5' ),
 
2104
  'LG-C520' => array( 'LG', 'C520' ),
2105
  'LG-C5(50|55)!' => array( 'LG', 'Optimus Chat' ),
2106
  'LG-C660!' => array( 'LG', 'Optimus Pro' ),
@@ -2108,26 +2430,38 @@
2108
  'LG-C729' => array( 'LG', 'DoublePlay' ),
2109
  'LG-C800G' => array( 'LG', 'Eclypse' ),
2110
  'LG-CX670' => array( 'LG', 'Optimus 3G' ),
2111
- 'LG-D175f' => array( 'LG', 'D175' ),
2112
- 'LG-D320n' => array( 'LG', 'D320' ), // Unknown
2113
- 'LG-D325f' => array( 'LG', 'D325' ), // Unknown
2114
- 'LG-D405' => array( 'LG', 'D405' ), // Unknown
2115
- 'LG-D410' => array( 'LG', 'D410' ), // Unknown
2116
- 'LG-D415' => array( 'LG', 'D415' ), // Unknown
 
 
 
 
 
 
 
2117
  'LG-D5(00|05)!' => array( 'LG', 'Optimus F6' ),
2118
- 'LG-D520' => array( 'LG', 'D520' ), // Unknown
2119
  'LG-D605' => array( 'LG', 'Optimus L9 II' ),
2120
- 'LG-D6(80|82|83)!' => array( 'LG', 'G Pro Lite' ),
 
 
2121
  'LG-D6(85|86)!' => array( 'LG', 'G Pro Lite Dual' ),
 
2122
  'LG-D700' => array( 'LG', 'Optimus L9' ),
 
2123
  'LG-D8(00|01|02|03|05|06)!' => array( 'LG', 'G2' ),
2124
  'LG-D8(20|21)!' => array( 'LG', 'Nexus 5' ),
2125
- 'LG-D830' => array( 'LG', 'D830' ),
2126
- 'LG-D9(50|55|58|59)!' => array( 'LG', 'G Flex' ),
 
2127
  'LG-DS1203' => array( 'LG', 'G2' ),
2128
  'LG-E400!' => array( 'LG', 'Optimus L3' ),
2129
  'LG-E405!' => array( 'LG', 'Optimus L3 Dual' ),
2130
- 'LG-E410!' => array( 'LG', 'Optimus L1 II' ),
2131
  'LG-E4(15|20)!' => array( 'LG', 'Optimus L1 II Dual' ),
2132
  'LG-E4(25|30|31)!' => array( 'LG', 'Optimus L3 II' ),
2133
  'LG-E435!' => array( 'LG', 'Optimus L3 II Dual' ),
@@ -2138,7 +2472,7 @@
2138
  'LG-E465!' => array( 'LG', 'Optimus L4 II' ),
2139
  'LG-E467!' => array( 'LG', 'Optimus L4 II Dual' ),
2140
  'LG-E470!' => array( 'LG', 'Optimus L4 II Triple' ),
2141
- 'LG-E475!' => array( 'LG', 'Optimus L1 II Tri' ), // Maybe?
2142
  'LG-E510!' => array( 'LG', 'Optimus Hub' ),
2143
  'LG-E6(10|12|17)!' => array( 'LG', 'Optimus L5' ),
2144
  'LG-E6(14|15)!' => array( 'LG', 'Optimus L5 Dual' ),
@@ -2147,7 +2481,7 @@
2147
  'LG-E940' => array( 'LG', 'Optimus G Pro' ),
2148
  'LG-E960' => array( 'LG', 'Nexus 4' ),
2149
  'LG-E9(70|71|73|75|76|77|78|87)!' => array( 'LG', 'Optimus G' ),
2150
- 'LG-E9(80|85|86|88|89)!' => array( 'LG', 'Optimus G Pro' ),
2151
  'LG-F100!' => array( 'LG', 'Optimus Vu' ),
2152
  'LG-F120!' => array( 'LG', 'Optimus LTE Tag' ),
2153
  'LG-F160!' => array( 'LG', 'Optimus LTE II' ),
@@ -2157,10 +2491,14 @@
2157
  'LG-F240!' => array( 'LG', 'Optimus G Pro' ),
2158
  'LG-F260!' => array( 'LG', 'Optimus LTE III' ),
2159
  'LG-F300!' => array( 'LG', 'Vu 3' ),
2160
- 'LG-F310!' => array( 'LG', 'F310' ), // Unknown
2161
  'LG-F320!' => array( 'LG', 'G2' ),
2162
  'LG-F340!' => array( 'LG', 'G Flex' ),
2163
- 'LG-F350!' => array( 'LG', 'F350' ), // Unknown
 
 
 
 
2164
  'LG-GT540!' => array( 'LG', 'Optimus' ),
2165
  'LG-GW620' => array( 'LG', 'GW620 Eve' ),
2166
  'LG-KH5200' => array( 'LG', 'Andro-1' ),
@@ -2171,22 +2509,30 @@
2171
  'LG-KU8800' => array( 'LG', 'Optimus EX' ),
2172
  'LG-L01F' => array( 'LG', 'G2' ),
2173
  'LG-L25L' => array( 'LG', 'Optimus Quest' ),
 
 
 
2174
  'LG-L38C' => array( 'LG', 'Optimus Dynamic' ),
2175
  'LG-L40G' => array( 'LG', 'Optimus Extreme' ),
 
 
2176
  'LG-L160L' => array( 'LG', 'L160L' ), // Unknown
2177
  'LG-LG730' => array( 'LG', 'Venice' ),
2178
  'LG-LG855' => array( 'LG', 'Marquee' ),
2179
  'LG-LG870' => array( 'LG', 'Optimus F7' ),
 
2180
  'LG-LS670' => array( 'LG', 'Optimus S' ),
2181
  'LG-LS696' => array( 'LG', 'Elite' ),
2182
  'LG-LS720' => array( 'LG', 'Optimus F3' ),
2183
- 'LG-LS740' => array( 'LG', 'LS740' ), // Unknown
2184
- 'LS740' => array( 'LG', 'LS740' ), // Unknown
2185
  'LG-LS840' => array( 'LG', 'Viper' ),
2186
  'LG-LS855' => array( 'LG', 'Marquee' ),
2187
  'LG-LS860' => array( 'LG', 'Mach' ),
 
2188
  'LG-LS970' => array( 'LG', 'Optimus G' ),
2189
  'LG-LS980' => array( 'LG', 'G2' ),
 
2190
  'LG-LS995' => array( 'LG', 'G Flex' ),
2191
  'LG-LU3000' => array( 'LG', 'Optimus Mach' ),
2192
  'LG-LU3100' => array( 'LG', 'Optimus Chic' ),
@@ -2198,7 +2544,8 @@
2198
  'LG-LU8300' => array( 'LG', 'Optimus Pad LTE' ),
2199
  'LG-LW690' => array( 'LG', 'Optimus C' ),
2200
  'LG-LW770' => array( 'LG', 'Regard' ),
2201
- 'LG-MS323' => array( 'LG', 'MS323' ), // Unknown
 
2202
  'LG-MS500' => array( 'LG', 'Optimus F6' ),
2203
  'LGMS659' => array( 'LG', 'Optimus F3' ),
2204
  'LG-MS690' => array( 'LG', 'Optimus M' ),
@@ -2250,26 +2597,35 @@
2250
  'LG-US670' => array( 'LG', 'Optimus U' ),
2251
  'LG-US730' => array( 'LG', 'Splendor' ),
2252
  'LG-US780' => array( 'LG', 'Optimus F7' ),
 
2253
  'LG-V5(00|07)!' => array( 'LG', 'G Pad 8.3', TYPE_TABLET ),
2254
- 'LG-V510' => array( 'LG', 'Nexus 10', TYPE_TABLET ),
2255
- 'LG-V900' => array( 'LG', 'Optimus Pad', TYPE_TABLET ),
2256
  'LG-V9(05|09)!' => array( 'LG', 'Optimus G-Slate', TYPE_TABLET ),
 
 
 
2257
  'LG-VN360' => array( 'LG', 'Exalt' ),
2258
  'LG-VM670' => array( 'LG', 'Optimus V' ),
2259
  'LG-VM696' => array( 'LG', 'Optimus Elite' ),
2260
  'LG-VM701' => array( 'LG', 'Optimus Slider' ),
2261
  'LG-VM720' => array( 'LG', 'Optimus F5' ),
2262
  'LG-VS410!' => array( 'LG', 'Optimus Zone' ),
 
 
2263
  'LG-VS660' => array( 'LG', 'Vortex' ),
2264
  'LG-VS700' => array( 'LG', 'Enlighten' ),
2265
  'LG-VS740' => array( 'LG', 'Ally' ),
2266
  'LG-VS840' => array( 'LG', 'Lucid' ),
2267
  'LG-VS870' => array( 'LG', 'Lucid 2' ),
 
 
2268
  'LG-VS890' => array( 'LG', 'Enact' ),
2269
  'LG-VS910' => array( 'LG', 'Revolution' ),
2270
  'LG-VS930' => array( 'LG', 'Spectrum II' ),
2271
  'LG-VS950' => array( 'LG', 'Intuition' ),
2272
  'LG-VS980' => array( 'LG', 'G2' ),
 
2273
  'lge-F160!' => array( 'LG', 'Optimus LTE II' ),
2274
  'lgp-970' => array( 'LG', 'Optimus Black' ),
2275
  'AS740' => array( 'LG', 'Axis' ),
@@ -2278,16 +2634,22 @@
2278
  'GW620' => array( 'LG', 'Eve' ),
2279
  'KU9500' => array( 'LG', 'Optimus Z' ),
2280
  'LGC660!' => array( 'LG', 'Optimus Pro' ),
 
 
2281
  'LGL21' => array( 'LG', 'Optimus G' ),
2282
  'LGL22' => array( 'LG', 'G2' ),
2283
- 'LGL23' => array( 'LG', 'L23' ), // Unknown
2284
- 'LGL34C' => array( 'LG', 'L34C' ), // Unknown
2285
- 'LGL35G' => array( 'LG', 'L35G' ),
2286
- 'LGL39C' => array( 'LG', 'L39C' ),
2287
- 'LGL45C' => array( 'LG', 'Optimus Net' ),
2288
- 'LGL55C' => array( 'LG', 'Optimus Q' ),
2289
- 'LGL75C' => array( 'LG', 'Optimus Zip' ),
2290
- 'LGL86C' => array( 'LG', 'Optimus Showtime' ),
 
 
 
 
2291
  'LU2300' => array( 'LG', 'Optimus Q' ),
2292
  'LS670' => array( 'LG', 'Optimus S' ),
2293
  'MS840 4G' => array( 'LG', 'Connect 4G' ),
@@ -2347,6 +2709,8 @@
2347
  'LG-Google TV' => array( 'LG', 'G2 series', TYPE_TELEVISION, FLAG_GOOGLETV ),
2348
  'LG-Google TV TV' => array( 'LG', 'G2 series', TYPE_TELEVISION, FLAG_GOOGLETV ),
2349
  'LG-Google TV G3' => array( 'LG', 'G3 series', TYPE_TELEVISION, FLAG_GOOGLETV ),
 
 
2350
  'LG-ANDROID MINI BOX' => array( 'LG', 'Android Mini-Box', TYPE_TELEVISION ),
2351
  'aTab9.7 IPS' => array( 'M-Tech', 'aTab 9.7', TYPE_TABLET ),
2352
  'MALATA I60' => array( 'Malata', 'I60' ),
@@ -2354,6 +2718,7 @@
2354
  'Malata SMBA1002' => array( 'Malata', 'Tablet SMB-A1002', TYPE_TABLET ),
2355
  'MID05V2' => array( 'Manta', 'Powertab MID05V2', TYPE_TABLET ),
2356
  'MID801' => array( 'Manta', 'MID801 Duo Power HD', TYPE_TABLET ),
 
2357
  'M-270' => array( 'Maylong', 'M-270', TYPE_TABLET ),
2358
  'M70' => array( 'Maxsun', 'M70', TYPE_TABLET ),
2359
  'Maxtron T1' => array( 'Maxtron', 'T1', TYPE_TABLET ),
@@ -2397,8 +2762,12 @@
2397
  'MTK6516' => array( 'Mediatek', 'MTK6516' ),
2398
  'MEDION Smartphone LIFE E3501' => array( 'Medion', 'Life E3501' ),
2399
  'MEDION E4002' => array( 'Medion', 'E4002' ),
 
2400
  'LIFETAB E7312' => array( 'Medion', 'Lifetab E7312', TYPE_TABLET ),
 
2401
  'LIFETAB E10312' => array( 'Medion', 'Lifetab E10312', TYPE_TABLET ),
 
 
2402
  'LIFETAB S9512' => array( 'Medion', 'Lifetab S9512', TYPE_TABLET ),
2403
  'LIFETAB S9714' => array( 'Medion', 'Lifetab S9714', TYPE_TABLET ),
2404
  'MEDION LIFE P4012' => array( 'Medion', 'Life P4012' ),
@@ -2417,17 +2786,23 @@
2417
  'M032' => array( 'Meizu', 'MX M032' ),
2418
  'M040' => array( 'Meizu', 'MX2 M040' ),
2419
  'M045' => array( 'Meizu', 'MX2 M045' ),
 
 
2420
  'TAB192' => array( 'Majestic', 'TAB-192', TYPE_TABLET ),
2421
  'Slidepad' => array( 'Memup', 'Slidepad', TYPE_TABLET ),
2422
  'SP-A20i' => array( 'Мегафон', 'SP-A20i Mint' ),
 
2423
  'Micromax A25' => array( 'Micromax', 'A25 Smarty' ),
2424
  'Micromax A26' => array( 'Micromax', 'A26 Bolt' ),
2425
  'Micromax A27' => array( 'Micromax', 'A27 Bolt' ),
2426
  'Micromax A30' => array( 'Micromax', 'A30 Smarty' ),
2427
  'Micromax A34' => array( 'Micromax', 'A34' ),
2428
  'Micromax A35' => array( 'Micromax', 'A35 Bolt' ),
 
 
2429
  'Micromax A44' => array( 'Micromax', 'A44 Punk' ),
2430
  'A45' => array( 'Micromax', 'A45 Punk' ),
 
2431
  'Micromax A50' => array( 'Micromax', 'A50 Ninja' ),
2432
  'Micromax A51' => array( 'Micromax', 'A51 Bolt' ),
2433
  'Micromax A52' => array( 'Micromax', 'A52 Aisha' ),
@@ -2436,6 +2811,7 @@
2436
  'Micromax A54' => array( 'Micromax', 'A54 Ninja' ),
2437
  'Micromax A56' => array( 'Micromax', 'A56 Ninja 2' ),
2438
  'Micromax A57' => array( 'Micromax', 'A57 Ninja 3' ),
 
2439
  'Micromax A60' => array( 'Micromax', 'A60 Andro' ),
2440
  'Micromax A62' => array( 'Micromax', 'A62 Bolt' ),
2441
  'Micromax A63' => array( 'Micromax', 'A63 Canvas Fun' ),
@@ -2447,7 +2823,9 @@
2447
  'Micromax A73' => array( 'Micromax', 'A73 Buzz' ),
2448
  'Micromax A74' => array( 'Micromax', 'A74 Canvas Fun' ),
2449
  'Micromax A75' => array( 'Micromax', 'A75 Lite' ),
 
2450
  'Micromax A76' => array( 'Micromax', 'A76 Canvas Fun' ),
 
2451
  'Micromax A78' => array( 'Micromax', 'A78 Gossip' ),
2452
  'Micromax A80' => array( 'Micromax', 'A80 Infinity' ),
2453
  'Micromax A84' => array( 'Micromax', 'A84' ),
@@ -2464,9 +2842,14 @@
2464
  'Micromax A110!' => array( 'Micromax', 'A110 Canvas 2' ),
2465
  'Micromax Canvas 2' => array( 'Micromax', 'A110 Canvas 2' ),
2466
  'Micromax A110 (Canvas 2)' => array( 'Micromax', 'A110 Canvas 2' ),
 
 
2467
  'Micromax A115' => array( 'Micromax', 'A115 Canvas 3D' ),
2468
  'Micromax A116' => array( 'Micromax', 'A116 Canvas HD' ),
2469
- 'Micromax A117' => array( 'Micromax', 'A116 Canvas Magnus' ),
 
 
 
2470
  'Micromax A210' => array( 'Micromax', 'A210 Canvas 4' ),
2471
  'Micromax A240' => array( 'Micromax', 'A240 Canvas Doodle 2' ),
2472
  'Micromax A250' => array( 'Micromax', 'A250 Canvas Turbo' ),
@@ -2478,6 +2861,8 @@
2478
  'Micromax P362' => array( 'Micromax', 'Funbook Talk P362', TYPE_TABLET ),
2479
  'Micromax P500(Funbook)' => array( 'Micromax', 'Funbook Pro P500', TYPE_TABLET ),
2480
  'Micromax P600' => array( 'Micromax', 'Funbook 3G P600', TYPE_TABLET ),
 
 
2481
  'MioPad 6' => array( 'Mitac', 'MioPad 6', TYPE_TABLET ),
2482
  'MITO A15' => array( 'Mito', 'A15' ),
2483
  'MITO A100' => array( 'Mito', 'A100' ),
@@ -2486,6 +2871,7 @@
2486
  'MITO A222' => array( 'Mito', 'A222' ),
2487
  'MITO A322' => array( 'Mito', 'A322' ),
2488
  'MITO A355' => array( 'Mito', 'A355' ),
 
2489
  'MITO t300' => array( 'Mito', 'T300' ),
2490
  'MIZ Z2' => array( 'Miz', 'Z2' ),
2491
  'Mobiistar Touch S01' => array( 'Mobiistar', 'Touch S01' ),
@@ -2493,12 +2879,15 @@
2493
  'Mobiistar Touch S05' => array( 'Mobiistar', 'Touch S05' ),
2494
  'Mobiistar Touch S08' => array( 'Mobiistar', 'Touch S08' ),
2495
  'Mobiistar Touch Bean 452' => array( 'Mobiistar', 'Touch Bean 452' ),
 
 
2496
  'mobiistar touch BEAN 454' => array( 'Mobiistar', 'Touch Bean 454' ),
2497
  'Mobiistar Touch Kem 350' => array( 'Mobiistar', 'Touch Kem 350' ),
2498
  'Mobiistar Touch Kem 402' => array( 'Mobiistar', 'Touch Kem 402' ),
2499
  'Mobiistar Touch Kem 432' => array( 'Mobiistar', 'Touch Kem 432' ),
2500
  'Mobiistar touch KEM 462' => array( 'Mobiistar', 'Touch Kem 462' ),
2501
  'Mobiistar Touch Lai 502' => array( 'Mobiistar', 'Touch Lai 502' ),
 
2502
  'edenTAB ET-701' => array( 'Mobile In Style', 'Eden TAB ET-701', TYPE_TABLET ),
2503
  'Cynus F3' => array( 'Mobistel', 'Cynus F3' ),
2504
  'Cynus T1' => array( 'Mobistel', 'Cynus T1' ),
@@ -2506,12 +2895,14 @@
2506
  'Cynus T5' => array( 'Mobistel', 'Cynus T5' ),
2507
  'FreeTAB1003' => array( 'Modecom', 'FreeTAB 1003', TYPE_TABLET ),
2508
  'FreeTAB 8014 IPS X4' => array( 'Modecom', 'FreeTAB 8014 IPS X4', TYPE_TABLET ),
 
2509
  'FreeTAB 9701' => array( 'Modecom', 'FreeTAB 9701', TYPE_TABLET ),
2510
  'FreeTAB 9701 HD X1' => array( 'Modecom', 'FreeTAB 9701 HD X1', TYPE_TABLET ),
2511
  'FreeTAB 9701 IPS' => array( 'Modecom', 'FreeTAB 9701 IPS', TYPE_TABLET ),
2512
  'FreeTAB 9704 IPS2 X4' => array( 'Modecom', 'FreeTAB 9704 IPS2 X4', TYPE_TABLET ),
2513
  'MOGU M2' => array( 'Mogu', 'M2' ),
2514
  'MOGU M2 ROM' => array( 'Mogu', 'M2' ),
 
2515
  'AT735' => array( 'Moinstone', 'AT735', TYPE_TABLET ),
2516
  'MORAL N01' => array( 'Moral', 'N01' ),
2517
  'Motorola i1' => array( 'Motorola', 'i2' ),
@@ -2633,14 +3024,14 @@
2633
  'XT9(23|25|26)!' => array( 'Motorola', 'Droid RAZR HD' ),
2634
  'XT928' => array( 'Motorola', 'XT928' ),
2635
  'XT1030!' => array( 'Motorola', 'Droid Mini' ),
2636
- 'XT10(32|33|35)!' => array( 'Motorola', 'Moto G' ), // Maybe?
2637
- 'XT1050' => array( 'Motorola', 'XT1050' ), // Unknown
2638
- 'XT10(52|53|55|56|58|60)!' => array( 'Motorola', 'Moto X' ),
2639
  'XT1080!' => array( 'Motorola', 'Droid Ultra' ),
2640
  '201M' => array( 'Motorola', 'Droid RAZR M' ),
2641
  'Atrix 2' => array( 'Motorola', 'ATRIX 2' ),
2642
  'Atrix 4G' => array( 'Motorola', 'ATRIX 4G' ),
2643
  'Atrix 4G ME860' => array( 'Motorola', 'ATRIX 4G' ),
 
2644
  'Backflip' => array( 'Motorola', 'BACKFLIP' ),
2645
  'CLIQ' => array( 'Motorola', 'CLIQ' ),
2646
  'CLIQ XT' => array( 'Motorola', 'CLIQ XT' ),
@@ -2695,6 +3086,8 @@
2695
  'Enjoy 7 Plus' => array( 'Multilaser', 'Vibe NB036', TYPE_TABLET ),
2696
  'MTS-SP100' => array( 'MTS', 'Lifewire SP 100' ),
2697
  'MTS-SP101' => array( 'MTS', 'Mtag 3.1 SP 101' ),
 
 
2698
  'NB036' => array( 'Nabi', 'Kids tablet', TYPE_TABLET ),
2699
  'M4TEL SS550' => array( 'M4Tel', 'Genius' ),
2700
  'M4TEL SS880' => array( 'M4Tel', 'Mirage' ),
@@ -2708,6 +3101,7 @@
2708
  'My|Phone A888 Duo' => array( 'MyPhone', 'A888 Duo' ),
2709
  'A898 Duo' => array( 'MyPhone', 'A898 Duo' ),
2710
  'MyPhone A919 Duo' => array( 'MyPhone', 'A919 Duo' ),
 
2711
  'NABI-A' => array( 'Nabi', 'Kids tablet', TYPE_TABLET ),
2712
  'Newman K1' => array( 'Newman', 'K1' ),
2713
  'N1' => array( 'Newman', 'N1' ),
@@ -2736,7 +3130,10 @@
2736
  'NEC-101S' => array( 'NEC', 'MEDIAS 101S' ),
2737
  'NEC-101T' => array( 'NEC', 'MEDIAS 101T' ),
2738
  'NEC-102' => array( 'NEC', 'MEDIAS 102' ),
 
 
2739
  'NEC-NE-201A1A' => array( 'NEC', 'Terrain' ),
 
2740
  'neken N5' => array( 'Neken', 'N5' ),
2741
  'GTV100' => array( 'NETGEAR', 'NeoTV Prime', TYPE_TELEVISION, FLAG_GOOGLETV ),
2742
  'NX-A712' => array( 'Nexian', 'Explorer' ),
@@ -2760,6 +3157,7 @@
2760
  'Next10P12' => array( 'Nextbook', 'Premium 10', TYPE_EREADER ),
2761
  'NXM703U' => array( 'Nextbook', 'Next 2', TYPE_EREADER ),
2762
  'NXM901' => array( 'Nextbook', 'Next 3', TYPE_EREADER),
 
2763
  'NGM Dynamic Star' => array( 'NGM', 'Dynamic Star' ),
2764
  'Stylo' => array( 'NGM', 'Dynamic Stylo' ),
2765
  'Forward Racing 3' => array( 'NGM', 'Forward Racing 3' ),
@@ -2774,19 +3172,26 @@
2774
  'NOAIN A900S' => array( 'Noain', 'A900S' ),
2775
  'Nokia N9' => array( 'Nokia', 'N9' ),
2776
  'Nokia N900' => array( 'Nokia', 'N900' ),
 
 
 
 
2777
  'Lumia800' => array( 'Nokia', 'Lumia 800' ),
2778
  'Lumia 900' => array( 'Nokia', 'Lumia 900' ),
2779
  'Notion Ink ADAM' => array( 'Notion Ink', 'ADAM', TYPE_TABLET ),
2780
  'Adam' => array( 'Notion Ink', 'ADAM', TYPE_TABLET ),
2781
- 'NX40X' => array( 'Nubia', 'Z5 mini' ),
2782
  'AND1' => array( 'NUgen', 'AND1' ),
2783
  'P4D Sirius' => array( 'Nvsbl', 'P4D SIRIUS', TYPE_TABLET ),
 
 
2784
  'O+8.1Android' => array( 'O+', '8.1' ),
2785
  'O+ 8.12 Android' => array( 'O+', '8.12' ),
2786
  'O+ 8.15 Android' => array( 'O+', '8.15' ),
 
2787
  'O+ 8.52 Android' => array( 'O+', '8.52' ),
2788
  'O+ 8.6 Android' => array( 'O+', '8.6' ),
2789
  'O+ 8.9 Android' => array( 'O+', '8.9' ),
 
2790
  'O+ 9.76' => array( 'O+', '9.76' ),
2791
  'EFM710A' => array( 'Oblio', 'Mint 7x', TYPE_TABLET ),
2792
  'Loox' => array( 'Odys', 'Loox', TYPE_TABLET ),
@@ -2825,10 +3230,12 @@
2825
  'R801' => array( 'Oppo', 'Real R801' ),
2826
  'OPPOR801' => array( 'Oppo', 'Real R801' ),
2827
  'OPPOR803' => array( 'Oppo', 'Real R803' ),
 
2828
  'OPPOR805' => array( 'Oppo', 'Real R805' ),
2829
  'R807' => array( 'Oppo', 'Real R807' ),
2830
  'OPPOR807' => array( 'Oppo', 'Real R807' ),
2831
  'R809T' => array( 'Oppo', 'R809T' ),
 
2832
  'R813T' => array( 'Oppo', 'R813T' ),
2833
  'R815' => array( 'Oppo', 'Find Clover R815' ),
2834
  'R815T' => array( 'Oppo', 'Find Clover R815T' ),
@@ -2837,6 +3244,11 @@
2837
  'R819' => array( 'Oppo', 'R819' ),
2838
  'R819T' => array( 'Oppo', 'Real R819T' ),
2839
  'R821' => array( 'Oppo', 'Find Muse R821' ),
 
 
 
 
 
2840
  'OPPOR8111' => array( 'Oppo', 'Find Melody R8111' ),
2841
  'R8113' => array( 'Oppo', 'Find Piano R8113' ),
2842
  'OPPOT29' => array( 'Oppo', 'T29' ),
@@ -2847,6 +3259,11 @@
2847
  'OPPOU7011' => array( 'Oppo', 'Find Gemini U7011' ),
2848
  'U7015' => array( 'Oppo', 'Find Way U7015' ),
2849
  'OP0118-12' => array( 'Oregon Scientific', 'Meep!', TYPE_TABLET ),
 
 
 
 
 
2850
  'G100W' => array( 'Packard Bell', 'Liberty Tab G100W', TYPE_TABLET ),
2851
  'P-01D' => array( 'Panasonic', 'P-01D' ),
2852
  'P-02D' => array( 'Panasonic', 'Lumix Phone' ),
@@ -2862,7 +3279,8 @@
2862
  'Panasonic P11' => array( 'Panasonic', 'P11' ),
2863
  'Panasonic P51' => array( 'Panasonic', 'P51' ),
2864
  'Panasonic T31' => array( 'Panasonic', 'T31' ),
2865
- 'Panasonic KX-PRXA15' => array( 'Panasonic', 'KX-PRXA15' ), // Dect home phone
 
2866
  'JT-H580VT' => array( 'Panasonic', 'BizPad 7', TYPE_TABLET ),
2867
  'JT-H581VT' => array( 'Panasonic', 'BizPad 10', TYPE_TABLET ),
2868
  'FZ-A1(A|B)!' => array( 'Panasonic', 'Toughpad', TYPE_TABLET ),
@@ -2890,7 +3308,8 @@
2890
  'IM-A870!' => array( 'Pantech', 'Vega Iron' ),
2891
  'IM-A880!' => array( 'Pantech', 'Vega LTE-A' ),
2892
  'IM-A890!' => array( 'Pantech', 'Vega Secret Note' ),
2893
- 'IM-A900!' => array( 'Pantech', 'Vega Iron 2' ),
 
2894
  'IM-T100K' => array( 'Pantech', 'Vega N˚ 5', TYPE_TABLET ),
2895
  'IS06' => array( 'Pantech', 'SIRIUS α' ),
2896
  'ADR8995!' => array( 'Pantech', 'Breakout' ),
@@ -2914,9 +3333,10 @@
2914
  'X7G' => array( 'Pearl', 'Touchlet X7G', TYPE_TABLET ),
2915
  'PP4MT-7' => array( 'Pendo', 'Pendopad 4', TYPE_TABLET ),
2916
  'Penta IS701C' => array( 'Penta', 'T-Pad IS701C', TYPE_TABLET ),
 
 
2917
  'Penta WS702C' => array( 'Penta', 'T-Pad WS702C', TYPE_TABLET ),
2918
  'Penta WS707C' => array( 'Penta', 'T-Pad WS707C', TYPE_TABLET ),
2919
- 'IS801C' => array( 'Penta', 'T-Pad WS801C', TYPE_TABLET ),
2920
  'Penta WS802C' => array( 'Penta', 'T-Pad WS802C', TYPE_TABLET ),
2921
  'PENTAGRAM TAB 7.3' => array( 'Pentagram', 'Tab 7.3', TYPE_TABLET ),
2922
  'PENTAGRAM TAB Quadra 9.7' => array( 'Pentagram', 'Quadra 9.7', TYPE_TABLET ),
@@ -2936,7 +3356,9 @@
2936
  'Philips W635' => array( 'Philips', 'W635' ),
2937
  'Philips W737' => array( 'Philips', 'W737' ),
2938
  'Philips W832' => array( 'Philips', 'W832' ),
 
2939
  'Philips W8510' => array( 'Philips', 'W8510' ),
 
2940
  'Pioneer S90w' => array( 'Pioneer', 'S90w' ),
2941
  'M8 pro' => array( 'PiPO', 'M8 Pro', TYPE_TABLET ),
2942
  'M9 pro' => array( 'PiPO', 'M9 Pro', TYPE_TABLET ),
@@ -2990,6 +3412,7 @@
2990
  'POLYTRON W2500' => array( 'Polytron', 'W2500 Wizard Twins' ),
2991
  'POLYTRON W3430' => array( 'Polytron', 'W3430 Wizard Crystal' ),
2992
  'POLYTRON W7450' => array( 'Polytron', 'W7450 Wizard Quadra' ),
 
2993
  'POLYTRON W7531' => array( 'Polytron', 'W7531' ),
2994
  'POLYTRON W8470' => array( 'Polytron', 'W8470 Wizard Quadra HD' ),
2995
  'ACT2000' => array( 'Poptronix', 'ACT2000', TYPE_TABLET ),
@@ -3001,6 +3424,7 @@
3001
  'PMP3384B' => array( 'Prestigio', 'Multipad 3384', TYPE_TABLET ),
3002
  'PMP3384BRU' => array( 'Prestigio', 'Multipad 3384', TYPE_TABLET ),
3003
  'PMP3470B' => array( 'Prestigio', 'Multipad 3470 Prime+', TYPE_TABLET ),
 
3004
  'PMP3670B-WH' => array( 'Prestigio', 'Multipad 3670 Ultra+', TYPE_TABLET ),
3005
  'PMP3770B' => array( 'Prestigio', 'Multipad 3770', TYPE_TABLET ),
3006
  'PMP3970B' => array( 'Prestigio', 'Multipad 3970 Duo', TYPE_TABLET ),
@@ -3008,20 +3432,36 @@
3008
  '5080C Pro' => array( 'Prestigio', 'Multipad 5080 Pro', TYPE_TABLET ),
3009
  'PMP5080CPRO' => array( 'Prestigio', 'Multipad 5080 Pro', TYPE_TABLET ),
3010
  'PMP5097CPRO' => array( 'Prestigio', 'Multipad 5097 Pro', TYPE_TABLET ),
 
 
3011
  'PMP5197DULTRA' => array( 'Prestigio', 'Multipad 5197 Ultra', TYPE_TABLET ),
3012
  'PMP5570C' => array( 'Prestigio', 'Multipad 5570 Pro', TYPE_TABLET ),
3013
  'PMP5580C' => array( 'Prestigio', 'Multipad 5580 Prime', TYPE_TABLET ),
3014
  'PMP5597D' => array( 'Prestigio', 'Multipad 5597 Ultra Duo', TYPE_TABLET ),
 
3015
  'PMP5770D' => array( 'Prestigio', 'Multipad 5770 Pro', TYPE_TABLET ),
 
 
3016
  'PMP5780D' => array( 'Prestigio', 'Multipad 2 Prime Duo 8.0', TYPE_TABLET ),
 
3017
  'PMP5870C' => array( 'Prestigio', 'Multipad 7.0 Ultra Duo', TYPE_TABLET ),
3018
  'PMP5880D' => array( 'Prestigio', 'Multipad 8.0 Ultra Duo', TYPE_TABLET ),
3019
- 'PMP7100D' => array( 'Prestigio', 'Multipad 10.1 Ultimate', TYPE_TABLET ),
3020
- 'PMP7100D3G' => array( 'Prestigio', 'Multipad 10.1 Ultimate 3G', TYPE_TABLET ),
 
 
 
 
3021
  'PMP7170B3G' => array( 'Prestigio', 'Multipad 7.0 Prime 3G', TYPE_TABLET ),
 
3022
  'PMP7280C' => array( 'Prestigio', 'Multipad 2 Ultra Duo 8.0', TYPE_TABLET ),
3023
  'PMP7280C3G' => array( 'Prestigio', 'Multipad 2 Ultra Duo 8.0 3G', TYPE_TABLET ),
3024
  'PMP7280C3G DUO' => array( 'Prestigio', 'Multipad 2 Ultra Duo 8.0 3G', TYPE_TABLET ),
 
 
 
 
 
3025
  'PAP3500 DUO' => array( 'Prestigio', 'Multiphone 3500 Duo' ),
3026
  'PAP3540DUO' => array( 'Prestigio', 'Multiphone 3540 Duo' ),
3027
  'PAP4020DUO' => array( 'Prestigio', 'Multiphone 4020 Duo' ),
@@ -3034,16 +3474,26 @@
3034
  'PAP4500TDUO' => array( 'Prestigio', 'Multiphone 4500 Duo' ),
3035
  'PAP5000TDUO' => array( 'Prestigio', 'Multiphone 5000 Duo' ),
3036
  'PAP5044DUO' => array( 'Prestigio', 'Multiphone 5044 Duo' ),
 
 
3037
  'PAP5430' => array( 'Prestigio', 'Multiphone 5430' ),
 
 
 
3038
  'PRBT 100' => array( 'Probook', 'PRBT 100', TYPE_TABLET ),
3039
  'MD-0651' => array( 'Prolink', 'MD-0651', TYPE_TABLET ),
3040
  'MD-0696B' => array( 'Prolink', 'MD-0696B', TYPE_TABLET ),
3041
  'PLT7223G' => array( 'Proscan', 'PLT7223G', TYPE_TABLET ),
 
3042
  'TB07FTA' => array( 'Positivo', 'TB07FTA', TYPE_TABLET ),
3043
  'YPY 10FTA' => array( 'Positivo', 'YPY 10FTA', TYPE_TABLET ),
3044
  'Positivo Ypy AB7E' => array( 'Positivo', 'YPY AB7E', TYPE_TABLET ),
 
 
 
3045
  'Positivo BGH Ypy L700' => array( 'Positivo', 'YPY L700', TYPE_TABLET ),
3046
  'Positivo Ypy L700' => array( 'Positivo', 'YPY L700', TYPE_TABLET ),
 
3047
  'Positivo Ypy L700 Kids' => array( 'Positivo', 'YPY L700 Kids', TYPE_TABLET ),
3048
  'Positivo Ypy L1000' => array( 'Positivo', 'YPY L1000', TYPE_TABLET ),
3049
  'Positivo Ypy L1050' => array( 'Positivo', 'YPY L1050', TYPE_TABLET ),
@@ -3051,6 +3501,7 @@
3051
  'YPY S400' => array( 'Positivo', 'YPY S400' ),
3052
  'YPY S500' => array( 'Positivo', 'YPY S500' ),
3053
  'QW TB-1207' => array( 'Qware', 'Pro3', TYPE_TABLET ),
 
3054
  'W6' => array( 'Ramos', 'W6', TYPE_TABLET ),
3055
  'W6HD ICS' => array( 'Ramos', 'W6HD', TYPE_TABLET ),
3056
  'W10' => array( 'Ramos', 'W10', TYPE_TABLET ),
@@ -3063,11 +3514,13 @@
3063
  'W28(Dualcore)' => array( 'Ramos', 'W28 Dual Core', TYPE_TABLET ),
3064
  'W30(QuadCore)' => array( 'Ramos', 'W30 Quad Core', TYPE_TABLET ),
3065
  'w30hd(QuadCore)' => array( 'Ramos', 'W30HD Quad Core', TYPE_TABLET ),
 
3066
  'Ramos W41 QuadCore' => array( 'Ramos', 'W41 Quad Core', TYPE_TABLET ),
3067
  'w42(QuadCore)' => array( 'Ramos', 'W42 Quad Core', TYPE_TABLET ),
3068
  'T11AD!' => array( 'Ramos', 'T11AD', TYPE_TABLET ),
3069
  'Rayhov X9' => array( 'Rayhov', 'X9' ),
3070
  'Readboy G12' => array( 'Readboy', 'G12', TYPE_TABLET ),
 
3071
  'PlayBook' => array( 'RIM', 'BlackBerry PlayBook', TYPE_TABLET ),
3072
  'RBK-490' => array( 'Ritmix', 'RBK-490', TYPE_TABLET ),
3073
  'RMD-755' => array( 'Ritmix', 'RMD-755', TYPE_TABLET ),
@@ -3075,6 +3528,7 @@
3075
  'RMD-1030' => array( 'Ritmix', 'RMD-1030', TYPE_TABLET ),
3076
  'RMD-1035' => array( 'Ritmix', 'RMD-1035', TYPE_TABLET ),
3077
  'RMD-1040' => array( 'Ritmix', 'RMD-1040', TYPE_TABLET ),
 
3078
  'RMP400' => array( 'Ritmix', 'RMP-400', TYPE_TABLET ),
3079
  'RMD-73G' => array( 'Ross&Moor', 'RMD-73G', TYPE_TABLET ),
3080
  'RMD-973G' => array( 'Ross&Moor', 'RMD-973G', TYPE_TABLET ),
@@ -3091,7 +3545,8 @@
3091
  'GT-B5512!' => array( 'Samsung', 'Galaxy Y Pro Duos' ),
3092
  'GT-B7510!' => array( 'Samsung', 'Galaxy Pro' ),
3093
  'GT-B9062' => array( 'Samsung', 'GT-B9062' ),
3094
- 'GT-B9150' => array( 'Samsung', 'Galaxy "Q"' ),
 
3095
  'GT-B9388' => array( 'Samsung', 'GT-B9388' ),
3096
  'GT-I55(00|03|08)!' => array( 'Samsung', 'Galaxy 5' ),
3097
  'GT-I5510!' => array( 'Samsung', 'Galaxy 551' ),
@@ -3103,6 +3558,7 @@
3103
  'GT-I8150!' => array( 'Samsung', 'Galaxy W' ),
3104
  'GT-I8160!' => array( 'Samsung', 'Galaxy Ace 2' ),
3105
  'GT-I81(90|91)!' => array( 'Samsung', 'Galaxy S III Mini' ),
 
3106
  'GT-I8240!' => array( 'Samsung', 'GT-I8240' ),
3107
  'GT-I8245!' => array( 'Samsung', 'GT-I8245' ),
3108
  'GT-I8250!' => array( 'Samsung', 'GT-I8250' ),
@@ -3112,22 +3568,23 @@
3112
  'GT-I8320!' => array( 'Samsung', 'H1' ),
3113
  'GT-I85(20|30)!' => array( 'Samsung', 'Galaxy Beam' ),
3114
  'GT-I85(50|52|58)!' => array( 'Samsung', 'Galaxy Win' ),
3115
- 'GT-I8580' => array( 'Samsung', 'GT-I8580' ), // Unknown
3116
  'GT-I8730!' => array( 'Samsung', 'Galaxy Express' ),
3117
  'GT-I90(00|08|18|88)!' => array( 'Samsung', 'Galaxy S' ),
3118
  'GT-I9001!' => array( 'Samsung', 'Galaxy S Plus' ),
3119
  'GT-I9003!' => array( 'Samsung', 'Galaxy SL' ),
3120
  'GT-I9010!' => array( 'Samsung', 'Galaxy S Giorgio Armani' ),
3121
  'GT-I9050!' => array( 'Samsung', 'GT-I9050' ),
 
3122
  'GT-I9070!' => array( 'Samsung', 'Galaxy S Advance' ),
3123
  'GT-I9080!' => array( 'Samsung', 'Galaxy Grand' ),
3124
- 'GT-I9082!' => array( 'Samsung', 'Galaxy Grand Duos' ),
3125
  'GT-I91(00|08)!' => array( 'Samsung', 'Galaxy S II' ),
3126
  'GT-I9103!' => array( 'Samsung', 'Galaxy R' ),
3127
  'GT-I9105!' => array( 'Samsung', 'Galaxy S II Plus' ),
3128
  'GT-I9128!' => array( 'Samsung', 'Galaxy Grand' ),
3129
  'GT-I91(50|58)!' => array( 'Samsung', 'Galaxy Mega 5.8' ),
3130
- 'GT-I9152!' => array( 'Samsung', 'Galaxy Mega 5.8 Duos' ),
3131
  'GT-I91(90|95|97)!' => array( 'Samsung', 'Galaxy S4 Mini' ),
3132
  'GT-I9192!' => array( 'Samsung', 'Galaxy S4 Mini Duos' ),
3133
  'GT-I92(00|05|08)!' => array( 'Samsung', 'Galaxy Mega 6.3' ),
@@ -3136,11 +3593,13 @@
3136
  'GT-I9250!' => array( 'Samsung', 'Galaxy Nexus' ),
3137
  'GT-I92(60|68)!' => array( 'Samsung', 'Galaxy Premier' ),
3138
  'GT-I9295!' => array( 'Samsung', 'Galaxy S4 Active' ),
3139
- 'GT-I93(00|03|05|08)!' => array( 'Samsung', 'Galaxy S III' ),
3140
- 'GT-I9505G' => array( 'Samsung', 'Galaxy S4 (Google Edition)' ),
 
3141
  'GT-I95(00|05|07)!' => array( 'Samsung', 'Galaxy S4' ),
3142
  'GT-I95(02|08)!' => array( 'Samsung', 'Galaxy S4 Duos' ),
3143
  'GT-I95(06)!' => array( 'Samsung', 'Galaxy S4 Advance' ),
 
3144
  'GT-I9800!' => array( 'Samsung', 'GT-I9800' ), // Unknown
3145
  'GT-N51(00|05|10|20)!' => array( 'Samsung', 'Galaxy Note 8.0', TYPE_TABLET ),
3146
  'GT-N70(00|05)!' => array( 'Samsung', 'Galaxy Note' ),
@@ -3167,8 +3626,8 @@
3167
  'GT-S5301!' => array( 'Samsung', 'Galaxy Pocket Plus' ),
3168
  'GT-S5302!' => array( 'Samsung', 'Galaxy Pocket Duos' ),
3169
  'GT-S5303!' => array( 'Samsung', 'Galaxy Y Plus' ),
3170
- 'GT-S5310!' => array( 'Samsung', 'Galaxy Pocket 2' ),
3171
- 'GT-S5312!' => array( 'Samsung', 'Galaxy Pocket 2 Duos' ),
3172
  'GT-S53(60|63|69)!' => array( 'Samsung', 'Galaxy Y' ),
3173
  'GT-S5367!' => array( 'Samsung', 'Galaxy Y TV' ),
3174
  'GT-S5368!' => array( 'Samsung', 'Galaxy Y Young' ),
@@ -3188,17 +3647,24 @@
3188
  'GT-S6358!' => array( 'Samsung', 'Galaxy Ace' ),
3189
  'GT-S6500!' => array( 'Samsung', 'Galaxy Mini 2' ),
3190
  'GT-S6702!' => array( 'Samsung', 'Galaxy Y Duos' ),
 
3191
  'GT-S6802!' => array( 'Samsung', 'Galaxy Ace Duos' ),
3192
  'GT-S68(10|12|18)!' => array( 'Samsung', 'Galaxy Fame' ),
 
3193
  'GT-S72(70|75)!' => array( 'Samsung', 'Galaxy Ace 3' ),
3194
  'GT-S7273T' => array( 'Samsung', 'Galaxy S II TV' ),
3195
  'GT-S72(72|73)!' => array( 'Samsung', 'Galaxy Ace 3 Duos' ),
 
 
3196
  'GT-S75(00|08)!' => array( 'Samsung', 'Galaxy Ace Plus' ),
3197
  'GT-S7560!' => array( 'Samsung', 'Galaxy Ace II x' ),
3198
  'GT-S75(62|68)!' => array( 'Samsung', 'Galaxy S Duos' ),
3199
  'GT-S7570!' => array( 'Samsung', 'Galaxy Trend II' ),
3200
  'GT-S7572!' => array( 'Samsung', 'Galaxy Trend II Duos' ),
 
 
3201
  'GT-S7710!' => array( 'Samsung', 'Galaxy Xcover 2' ),
 
3202
  'GT-S8500' => array( 'Samsung', 'Wave' ),
3203
  'GT-S8530' => array( 'Samsung', 'Wave II' ),
3204
  'GT-S9081' => array( 'Samsung', 'GT-S9081' ), // Unknown
@@ -3236,6 +3702,7 @@
3236
  'SCH-I629' => array( 'Samsung', 'SCH-I629' ),
3237
  'SCH-I659' => array( 'Samsung', 'Galaxy Ace Plus' ),
3238
  'SCH-I665' => array( 'Samsung', 'SCH-I665' ), // Unknown
 
3239
  'SCH-I699!' => array( 'Samsung', 'Galaxy Trend' ),
3240
  'SCH-I739' => array( 'Samsung', 'Galaxy Trend II' ),
3241
  'SCH-I747' => array( 'Samsung', 'Galaxy S III' ),
@@ -3245,7 +3712,7 @@
3245
  'SCH-I815!' => array( 'Samsung', 'Galaxy Tab 7.7', TYPE_TABLET ),
3246
  'SCH-I829' => array( 'Samsung', 'Galaxy Style Duos' ),
3247
  'SCH-I869' => array( 'Samsung', 'Galaxy Win' ),
3248
- 'SCH-I879' => array( 'Samsung', 'Captivate' ),
3249
  'SCH-I905!' => array( 'Samsung', 'Galaxy Tab 10.1', TYPE_TABLET ),
3250
  'SCH-I909' => array( 'Samsung', 'Galaxy S' ),
3251
  'SCH-I915!' => array( 'Samsung', 'Galaxy Tab 2 (10.1)', TYPE_TABLET ),
@@ -3256,7 +3723,7 @@
3256
  'SCH-L710' => array( 'Samsung', 'Galaxy S III' ),
3257
  'SCH-M828!' => array( 'Samsung', 'Galaxy Precedent' ),
3258
  'SCH-N719' => array( 'Samsung', 'Galaxy Note II' ),
3259
- 'SCH-P709' => array( 'Samsung', 'Galaxy Mega 5.8' ),
3260
  'SCH-P729' => array( 'Samsung', 'Galaxy Mega 6.3' ),
3261
  'SCH-P739' => array( 'Samsung', 'Galaxy Tab 8.9', TYPE_TABLET ),
3262
  'SCH-R530!' => array( 'Samsung', 'Galaxy S III' ),
@@ -3275,12 +3742,13 @@
3275
  'SCH-R930!' => array( 'Samsung', 'Galaxy S Aviator' ),
3276
  'SCH-R940!' => array( 'Samsung', 'Galaxy S Lightray' ),
3277
  'SCH-R950!' => array( 'Samsung', 'Galaxy Note II' ),
 
3278
  'SCH-R970!' => array( 'Samsung', 'Galaxy S4' ),
3279
  'SCH-S720!' => array( 'Samsung', 'Galaxy Proclaim' ),
3280
  'SCH-S735!' => array( 'Samsung', 'Galaxy Discover' ),
3281
  'SCH-S738!' => array( 'Samsung', 'Galaxy Centura' ),
3282
  'SCH-S950!' => array( 'Samsung', 'Galaxy S Showcase' ),
3283
- 'SCH-S960!' => array( 'Samsung', 'Galaxy S III' ),
3284
  'SCH-V727' => array( 'Samsung', 'Galaxy S4' ),
3285
  'SCH-W789!' => array( 'Samsung', 'SCH-W789' ),
3286
  'SCH-W799!' => array( 'Samsung', 'SCH-W799' ),
@@ -3319,6 +3787,7 @@
3319
  'SGH-I9000' => array( 'Samsung', 'Galaxy S' ),
3320
  'SGH-I9300' => array( 'Samsung', 'Galaxy S III' ),
3321
  'SGH-N075!' => array( 'Samsung', 'Galaxy J' ),
 
3322
  'SGH-M919!' => array( 'Samsung', 'Galaxy S4' ),
3323
  'SGH-S730!' => array( 'Samsung', 'Galaxy Discover' ),
3324
  'SGH-S959G' => array( 'Samsung', 'Galaxy S II' ),
@@ -3364,7 +3833,9 @@
3364
  'SHV-E330!' => array( 'Samsung', 'Galaxy S4' ),
3365
  'SHV-E370!' => array( 'Samsung', 'Galaxy S4 Mini' ),
3366
  'SHV-E400!' => array( 'Samsung', 'Galaxy Folder' ),
 
3367
  'SHV-E500!' => array( 'Samsung', 'SHV-E500' ),
 
3368
  'SHW-M100!' => array( 'Samsung', 'Galaxy A' ),
3369
  'SHW-M110!' => array( 'Samsung', 'Galaxy S' ),
3370
  'SHW-M130L!' => array( 'Samsung', 'Galaxy U' ),
@@ -3383,25 +3854,55 @@
3383
  'SHW-M440!' => array( 'Samsung', 'Galaxy S III' ),
3384
  'SHW-M4(80|85)!' => array( 'Samsung', 'Galaxy Note 10.1', TYPE_TABLET ),
3385
  'SHW-M500!' => array( 'Samsung', 'Galaxy Note 8.0', TYPE_TABLET ),
3386
- 'SHW-M550!' => array( 'Samsung', 'SHW-M550' ), // Perhaps same as SHV-E400 (Folder) or SM-G730 (S3 mini)
 
3387
  'SMT-E5015' => array( 'Samsung', 'SMT-E5015', TYPE_TELEVISION ),
3388
  'SMT-i9100' => array( 'Samsung', 'SMT-I9100', TYPE_TABLET ),
3389
  'SM-C1(01|05)!' => array( 'Samsung', 'Galaxy S4 Zoom' ),
3390
- 'SM-G3502!' => array( 'Samsung', 'Galaxy Trend 3' ),
 
 
 
 
3391
  'SM-G350!' => array( 'Samsung', 'Galaxy Core Plus' ),
3392
- 'SM-G3812' => array( 'Samsung', 'SM-G3812' ), // Unknown, sucessor to GT-I8552 (Galaxy Win)
3393
- 'SM-G3815' => array( 'Samsung', 'SM-G3815' ), // Unknown
3394
- 'SM-G3819!' => array( 'Samsung', 'SM-G3819' ), // Unknown
3395
- 'SM-G710!' => array( 'Samsung', 'Galaxy Grand II' ),
 
 
 
3396
  'SM-G730!' => array( 'Samsung', 'Galaxy S III Mini' ),
 
 
 
 
 
 
 
3397
  'SM-G910!' => array( 'Samsung', 'Galaxy Round' ),
3398
- 'SM-N90(00|02|05|06|08|09)!' => array( 'Samsung', 'Galaxy Note 3' ),
 
 
3399
  'SM-N900!' => array( 'Samsung', 'Galaxy Note 3' ),
3400
- 'SM-P6(00|01|05)!' => array( 'Samsung', 'Galaxy Note 10.1 (2014)', TYPE_TABLET ),
3401
- 'SM-P9(00|01|05)!' => array( 'Samsung', 'Galaxy Note 12.2', TYPE_TABLET ),
 
 
 
 
3402
  'SM-T2105' => array( 'Samsung', 'Galaxy Tab 3 Kids', TYPE_TABLET ),
3403
  'SM-T2(10|11|15|17)!' => array( 'Samsung', 'Galaxy Tab 3 (7.0)', TYPE_TABLET ),
 
 
3404
  'SM-T3(10|11|15)!' => array( 'Samsung', 'Galaxy Tab 3 (8.0)', TYPE_TABLET ),
 
 
 
 
 
 
 
3405
  'SM-W2014' => array( 'Samsung', 'SM-W2014' ),
3406
  'SPH-D600' => array( 'Samsung', 'Conquer 4G' ),
3407
  'SPH-D700' => array( 'Samsung', 'Epic 4G' ),
@@ -3413,7 +3914,7 @@
3413
  'SPH-L600' => array( 'Samsung', 'Galaxy Mega 6.3' ),
3414
  'SPH-L700' => array( 'Samsung', 'Galaxy Nexus' ),
3415
  'SPH-L710' => array( 'Samsung', 'Galaxy S III' ),
3416
- 'SPH-L720' => array( 'Samsung', 'Galaxy S4' ),
3417
  'SPH-L900' => array( 'Samsung', 'Galaxy Note II' ),
3418
  'SPH-M820!' => array( 'Samsung', 'Galaxy Prevail' ),
3419
  'SPH-M830' => array( 'Samsung', 'Galaxy Rush' ),
@@ -3514,10 +4015,12 @@
3514
  'SBM206SH' => array( 'Sharp', 'Aquos 206SH' ),
3515
  'SH-01D' => array( 'Sharp', 'Aquos SH-01D' ),
3516
  'SH-01E' => array( 'Sharp', 'Aquos si SH-01E' ),
 
3517
  'SH-02D' => array( 'Sharp', 'Aquos slider SH-02D' ),
3518
  'SH-02E' => array( 'Sharp', 'Aquos Zeta SH-02E' ),
3519
  'SH-02F' => array( 'Sharp', 'Aquos EX SH-02F' ),
3520
  'SH-03C' => array( 'Sharp', 'Lynx 3D' ),
 
3521
  'SH-04E' => array( 'Sharp', 'Aquos EX SH-04E' ),
3522
  'SH-06D' => array( 'Sharp', 'Aquos SH-06D' ),
3523
  'SH-06DNERV' => array( 'Sharp', 'NERV SH-06D' ),
@@ -3532,9 +4035,11 @@
3532
  'SH-12C' => array( 'Sharp', 'Aquos' ),
3533
  'SH-13C' => array( 'Sharp', 'Aquos f SH-13C' ),
3534
  'SH80F' => array( 'Sharp', 'Aquos SH80F' ),
 
3535
  'SH530U' => array( 'Sharp', 'SH530U' ),
3536
  'SH-631M' => array( 'Sharp', 'SH631M' ),
3537
  'SH631W' => array( 'Sharp', 'SH631W' ),
 
3538
  'SH837W' => array( 'Sharp', 'SH837W' ),
3539
  'SH930W' => array( 'Sharp', 'SH930W' ),
3540
  'SH931W' => array( 'Sharp', 'SH931W' ),
@@ -3549,7 +4054,9 @@
3549
  'SHL21' => array( 'Sharp', 'Aquos Serie SHL21' ),
3550
  'SHL22' => array( 'Sharp', 'Aquos Serie SHL22' ),
3551
  'SHL23' => array( 'Sharp', 'Aquos Serie SHL23' ),
 
3552
  'SHT21' => array( 'Sharp', 'Aquos Pad SHT21', TYPE_TABLET ),
 
3553
  'INFOBAR C01' => array( 'Sharp', 'INFOBAR C01' ),
3554
  'WX04SH' => array( 'Sharp', 'Aquos es' ),
3555
  'SPX-5' => array( 'Simvalley', 'SPX-5' ),
@@ -3559,7 +4066,10 @@
3559
  'Skyworth PE90' => array( 'Skyworth', 'PE90' ),
3560
  'WF7C' => array( 'Smartbitt', 'WF7C', TYPE_TABLET ),
3561
  'Andromax-c' => array( 'Smartfren', 'Andromax C' ),
 
3562
  'New Andromax-i' => array( 'Smartfren', 'Andromax I' ),
 
 
3563
  'Andromax U' => array( 'Smartfren', 'Andromax U' ),
3564
  'Smartfren Tab 7' => array( 'Smartfren', 'Tab 7' ),
3565
  'SmartQ G7' => array( 'SmartQ', 'G7', TYPE_TABLET ),
@@ -3583,16 +4093,24 @@
3583
  'C55(02|03)!' => array( 'Sony', 'Xperia ZR' ), // Dogo
3584
  'C65(02|03|06)!' => array( 'Sony', 'Xperia ZL' ), // Odin
3585
  'C66(02|03|06|16)!' => array( 'Sony', 'Xperia Z' ), // Yuga
3586
- 'C670[0-9]!' => array( 'Sony', 'C670x' ), // Itsuki, Xperia Z1 Mini?
3587
  'C68(02|06|33|43)!' => array( 'Sony', 'Xperia Z Ultra' ), // Togari
3588
- 'C69(02|03|06|16|43)!' => array( 'Sony', 'Xperia Z1' ), // Honami
3589
- 'D55(03)!' => array( 'Sony', 'Xperia Z1s' ), // Amami
 
 
 
 
 
 
 
3590
  'E10(a|i|iv)!' => array( 'Sony Ericsson', 'Xperia X10 Mini' ), // Robyn
3591
  'E15(a|i|iv|i-o)?$!' => array( 'Sony Ericsson', 'Xperia X8' ), // Shakira
3592
  'E16i!' => array( 'Sony Ericsson', 'W8 Walkman' ), // Shakira Walkman
3593
  'L35h' => array( 'Sony', 'Xperia ZL' ), // Odin
3594
  'L36h' => array( 'Sony', 'Xperia Z' ), // Yuga
3595
- 'L39h' => array( 'Sony', 'Xperia Z1' ), // Honami
 
3596
  'LT11i!' => array( 'Sony Ericsson', 'Xperia Neo V' ), // Haida
3597
  'LT15(a|i|iv|i-o)?$!' => array( 'Sony Ericsson', 'Xperia Arc' ), // Anzu
3598
  'LT15i Speed Edition' => array( 'Sony Ericsson', 'Xperia Arc' ), // Anzu
@@ -3609,6 +4127,7 @@
3609
  'LT30(a|p)!' => array( 'Sony', 'Xperia T' ), // Mint
3610
  '(SNM\-)?M35(c|h|t|ts)!' => array( 'Sony', 'Xperia SP' ), // HuaShan
3611
  'M36h!' => array( 'Sony', 'Xperia ZR' ), // Dogo
 
3612
  'MK16(a|i)!' => array( 'Sony Ericsson', 'Xperia Pro' ), // Iyokan
3613
  'MT11(a|i|iv|i-o)!' => array( 'Sony Ericsson', 'Xperia Neo V' ), // Haida
3614
  'MT15(a|i|iv|i-o)!' => array( 'Sony Ericsson', 'Xperia Neo' ), // Hallon
@@ -3617,6 +4136,7 @@
3617
  'R800(a|at|i|iv|x)!' => array( 'Sony Ericsson', 'Xperia Play' ), // Zeus
3618
  'S36h' => array( 'Sony', 'Xperia L' ), // TaoShan
3619
  'S39h' => array( 'Sony', 'Xperia C' ), // CN3
 
3620
  'SK17(a|i|iv|i-o)!' => array( 'Sony Ericsson', 'Xperia Mini Pro' ), // Mango
3621
  'ST15(a|i)!' => array( 'Sony Ericsson', 'Xperia Mini' ), // Smultron
3622
  'ST17(a|i)!' => array( 'Sony Ericsson', 'Xperia Active' ), // Satsuma
@@ -3636,6 +4156,8 @@
3636
  'X10 ?(Mini Pro)$!' => array( 'Sony Ericsson', 'Xperia X10 Mini Pro' ), // Mimmi
3637
  'X10 ?(Mini)$!' => array( 'Sony Ericsson', 'Xperia X10 Mini' ), // Robyn
3638
  'XL39h' => array( 'Sony', 'Xperia Z Ultra' ), // Togari
 
 
3639
  'Z1i' => array( 'Sony Ericsson', 'Xperia Play' ), // Zeus
3640
  'S51SE' => array( 'Sony Ericsson', 'Xperia Mini' ), // Smultron
3641
  'IS11S' => array( 'Sony Ericsson', 'Xperia Acro' ), // Akane
@@ -3648,17 +4170,20 @@
3648
  'SO-02C' => array( 'Sony Ericsson', 'Xperia Acro' ), // Azusa
3649
  'SO-02D' => array( 'Sony Ericsson', 'Xperia NX' ), // Nozomi
3650
  'SO-02E' => array( 'Sony', 'Xperia Z' ), // Yuga
3651
- 'SO-02F' => array( 'Sony', 'Xperia Z1 f' ), // Itsuki
3652
  'SO-03C' => array( 'Sony Ericsson', 'Xperia Ray' ), // Urushi
3653
  'SO-03D' => array( 'Sony Ericsson', 'Xperia Acro HD' ), // Hikari
3654
  'SO-03E' => array( 'Sony', 'Xperia Tablet Z', TYPE_TABLET ), // Pollux
 
3655
  'SO-04D' => array( 'Sony', 'Xperia GX' ), // Hayabusa
3656
  'SO-04E' => array( 'Sony', 'Xperia A' ), // Dogo
 
3657
  'SO-05D' => array( 'Sony', 'Xperia SX' ), // Komachi
3658
  'SOL21' => array( 'Sony', 'Xperia VL' ), // Surf
3659
  'SOL22' => array( 'Sony', 'Xperia UL' ), // Gaga
3660
  'SOL23' => array( 'Sony', 'Xperia Z1' ), // Honami
3661
  'SOL24' => array( 'Sony', 'Xperia Z Ultra' ), // Togari
 
3662
  'Xperia X1' => array( 'Sony Ericsson', 'Xperia X1' ),
3663
  'Xperia X8' => array( 'Sony Ericsson', 'Xperia X8' ), // Shakira
3664
  'Xperia X10' => array( 'Sony Ericsson', 'Xperia X10' ), // Rachael
@@ -3698,11 +4223,13 @@
3698
  'Tablet S' => array( 'Sony', 'Tablet S', TYPE_TABLET ),
3699
  'SGPT(12|13)!' => array( 'Sony', 'Xperia Tablet S', TYPE_TABLET ),
3700
  'SGP3(11|12|21|41|51)!' => array( 'Sony', 'Xperia Tablet Z', TYPE_TABLET ),
 
3701
  'NWZ?-Z1000Series!' => array( 'Sony', 'Walkman Z', TYPE_MEDIA ),
3702
  'NSZ-GP9' => array( 'Sony', 'NSZ-GP9', TYPE_TELEVISION, FLAG_GOOGLETV ),
3703
  'NSZ-GS7' => array( 'Sony', 'NSZ-GS7', TYPE_TELEVISION, FLAG_GOOGLETV ),
3704
  'NSZ-GT1' => array( 'Sony', 'NSZ-GT1', TYPE_TELEVISION, FLAG_GOOGLETV ),
3705
  'NSZ-GU1' => array( 'Sony', 'BRAVIA Smart Stick NSZ-GU1', TYPE_TELEVISION, FLAG_GOOGLETV ),
 
3706
  'Spice Mi280' => array( 'Spice', 'Mi-280' ),
3707
  'SPICE Mi-285' => array( 'Spice', 'Mi-285' ),
3708
  'Spice Mi300' => array( 'Spice', 'Mi-300' ),
@@ -3712,16 +4239,22 @@
3712
  'Spice Mi-350!' => array( 'Spice', 'Mi-350' ),
3713
  'Spice Mi-351' => array( 'Spice', 'Mi-351' ),
3714
  'Spice MI352' => array( 'Spice', 'Mi-352' ),
 
3715
  'Spice Mi-355' => array( 'Spice', 'Mi-355' ),
 
3716
  'Mi406' => array( 'Spice', 'Mi-406' ),
3717
  'CSL-MI410' => array( 'Spice', 'Mi-410' ),
 
3718
  'Spice Mi-425' => array( 'Spice', 'Mi-425' ),
3719
  'Spice Mi-435' => array( 'Spice', 'Mi-435' ),
3720
  'Spice Mi-492' => array( 'Spice', 'Mi-492' ),
3721
  'Spice Mi-495' => array( 'Spice', 'Mi-495' ),
 
3722
  'Spice Mi-500' => array( 'Spice', 'Mi-500' ),
3723
  'Mi501' => array( 'Spice', 'Mi-501' ),
3724
  'Spice Mi-502' => array( 'Spice', 'Mi-502' ),
 
 
3725
  'Spice Mi-515' => array( 'Spice', 'Mi-515' ),
3726
  'Spice Mi-530' => array( 'Spice', 'Mi-530' ),
3727
  'Spice Mi-535' => array( 'Spice', 'Mi-535' ),
@@ -3736,7 +4269,10 @@
3736
  'e1109 v73!' => array( 'Star', 'X18i' ),
3737
  'Starmobile ASTRA' => array( 'Starmobile', 'Astra' ),
3738
  'Starmobile CRYSTAL' => array( 'Starmobile', 'Crystal' ),
 
 
3739
  'Starmobile ENERGY' => array( 'Starmobile', 'Energy' ),
 
3740
  'Starmobile JUMP' => array( 'Starmobile', 'Jump' ),
3741
  'Starmobile KNIGHT' => array( 'Starmobile', 'Knight' ),
3742
  'eZee\'Tab10c' => array( 'Storex', 'eZee\'Tab 10c', TYPE_TABLET ),
@@ -3786,30 +4322,37 @@
3786
  'TCL S520' => array( 'TCL', 'S520' ),
3787
  '(TCL )?S600!' => array( 'TCL', 'S600' ),
3788
  'TCL S700T' => array( 'TCL', 'S700' ),
 
3789
  'TCL S800' => array( 'TCL', 'S800' ),
3790
  'TCL S810' => array( 'TCL', 'S810' ),
3791
  'TCL S820' => array( 'TCL', 'S820' ),
3792
  'TCL S826L' => array( 'TCL', 'S826' ),
3793
  'TCL S830' => array( 'TCL', 'S830' ),
 
 
3794
  'TCL S850' => array( 'TCL', 'S850' ),
3795
  'TCL S860' => array( 'TCL', 'S860' ),
3796
  'TCL S900' => array( 'TCL', 'S900' ),
3797
  'TCL S950!' => array( 'TCL', 'S950' ),
 
3798
  'TCL W939' => array( 'TCL', 'W939' ),
3799
  'TCL W969' => array( 'TCL', 'W969' ),
3800
  'TCL Y710' => array( 'TCL', 'Y710' ),
3801
  'TCL Y900' => array( 'TCL', 'Y900' ),
3802
- 'TCL Y910' => array( 'TCL', 'Y910' ),
 
3803
  'TCL Google TV TV' => array( 'TCL', 'MoVo UD TV', TYPE_TELEVISION, FLAG_GOOGLETV ),
3804
  'TECNO B3' => array( 'Tecno', 'B3' ),
3805
  'TECNO D1' => array( 'Tecno', 'D1' ),
3806
  'TECNO D3' => array( 'Tecno', 'D3' ),
3807
  'TECNO D5' => array( 'Tecno', 'D5' ),
 
3808
  'TECNO F7' => array( 'Tecno', 'Phantom A+' ),
3809
  'TECNO F8' => array( 'Tecno', 'Phantom All' ),
3810
  'TECNO L3' => array( 'Tecno', 'L3' ),
3811
  'TECNO M3' => array( 'Tecno', 'M3' ),
3812
  'TECNO M7' => array( 'Tecno', 'M7' ),
 
3813
  'TECNO N3' => array( 'Tecno', 'N3' ),
3814
  'TECNO N3S' => array( 'Tecno', 'N3S' ),
3815
  'TECNO N7' => array( 'Tecno', 'N7' ),
@@ -3820,6 +4363,7 @@
3820
  'TECNO P9' => array( 'Tecno', 'P9' ),
3821
  'TECNO Q1' => array( 'Tecno', 'Q1' ),
3822
  'TECNO S3' => array( 'Tecno', 'S3' ),
 
3823
  'TECNO T1' => array( 'Tecno', 'T1' ),
3824
  'Xtab1081HD' => array( 'Techtab', 'Xtab 1081 HD', TYPE_TABLET ),
3825
  'A10HD(N9A3)' => array( 'Teclast', 'A10HD', TYPE_TABLET ),
@@ -3837,7 +4381,9 @@
3837
  'tegav2' => array( 'Tegatech', 'TEGA v2', TYPE_TABLET ),
3838
  'T3696' => array( 'Telsda', 'T3696' ),
3839
  'Tensent S9000' => array( 'Tensent', 'S9000' ),
 
3840
  'TEXET TM-4677' => array( 'teXet', 'TM-4677', TYPE_MEDIA ),
 
3841
  'TM-7024' => array( 'teXet', 'TM-7024', TYPE_TABLET ),
3842
  'TM-7025' => array( 'teXet', 'TM-7025', TYPE_TABLET ),
3843
  'TM-7037W' => array( 'teXet', 'TM-7037W', TYPE_TABLET ),
@@ -3848,6 +4394,9 @@
3848
  'Ultimate10' => array( 'Tomtec', 'Ultimate10', TYPE_TABLET ),
3849
  'Ultimate10-Android4.0' => array( 'Tomtec', 'Ultimate10', TYPE_TABLET ),
3850
  'ThL A2' => array( 'THL', 'A2' ),
 
 
 
3851
  'ThL V7' => array( 'THL', 'V7' ),
3852
  'ThL V8' => array( 'THL', 'V8' ),
3853
  'ThL V9' => array( 'THL', 'V9' ),
@@ -3865,10 +4414,14 @@
3865
  'W8 beyond' => array( 'THL', 'W8 beyond' ),
3866
  'ThL W11' => array( 'THL', 'W11' ),
3867
  'W100' => array( 'THL', 'W100' ),
 
 
 
3868
  'TizzBird S20T' => array( 'TizzBird', 'S20T', TYPE_TELEVISION ),
3869
  'TOOKY T83' => array( 'Tooky', 'T83' ),
3870
  'TOOKY T85' => array( 'Tooky', 'T85' ),
3871
  'TOOKY T1982' => array( 'Tooky', 'T1982' ),
 
3872
  'TSB CLOUD COMPANION;TOSHIBA AC AND AZ' => array( 'Toshiba', 'Dynabook AZ', 'desktop' ),
3873
  'TOSHIBA AC AND AZ' => array( 'Toshiba', 'Dynabook AZ', 'desktop' ),
3874
  'TOSHIBA FOLIO AND A' => array( 'Toshiba', 'Folio 100', TYPE_TABLET ),
@@ -3938,6 +4491,9 @@
3938
  'VSD220' => array( 'ViewSonic', 'VSD220', TYPE_DESKTOP ),
3939
  'VINUS V8' => array( 'Vinus', 'V8' ),
3940
  'VL-107L' => array( 'Visual Land', 'Prestige 7', TYPE_TABLET ),
 
 
 
3941
  'vivo E1' => array( 'Vivo', 'E1' ),
3942
  'vivo E1t' => array( 'Vivo', 'E1t' ),
3943
  'vivo E3' => array( 'Vivo', 'E3' ),
@@ -3965,27 +4521,41 @@
3965
  'vivo X3t' => array( 'Vivo', 'X3T' ),
3966
  'vivo Xplay' => array( 'Vivo', 'Xplay' ),
3967
  'vivo X510t' => array( 'Vivo', 'Xplay' ),
 
 
3968
  'vivo Y1' => array( 'Vivo', 'Y1' ),
3969
  'vivo Y3t' => array( 'Vivo', 'Y3T' ),
3970
  'vivo Y11' => array( 'Vivo', 'Y11' ),
3971
  'vivo Y11i T' => array( 'Vivo', 'Y11i T' ),
3972
  'vivo Y11t' => array( 'Vivo', 'Y11T' ),
 
 
 
3973
  'vivo Y19t' => array( 'Vivo', 'Y19T' ),
 
3974
  'VTAB1008' => array( 'Vizio', 'VTAB1008', TYPE_TABLET ),
3975
  'VTAB3010' => array( 'Vizio', 'VTAB3010', TYPE_TABLET ),
3976
  'VAP430' => array( 'Vizio', 'Co-Star', TYPE_TELEVISION, FLAG_GOOGLETV ),
3977
  'VOTO W5300' => array( 'VOTO', 'W5300' ),
3978
  'Vsun i9' => array( 'Vsun Mobile', 'i9' ),
3979
  'WALTON Primo C1' => array( 'Walton', 'Primo C1' ),
 
3980
  'WALTON Primo-D1' => array( 'Walton', 'Primo D1' ),
3981
  'Primo F1' => array( 'Walton', 'Primo F1' ),
 
 
 
 
3982
  'WALTON Primo-G1' => array( 'Walton', 'Primo G1' ),
3983
  'Primo H2' => array( 'Walton', 'Primo H2' ),
3984
  'WALTON Primo-N1' => array( 'Walton', 'Primo N1' ),
3985
  'Primo-N1' => array( 'Walton', 'Primo N1' ),
3986
  'Primo NX' => array( 'Walton', 'Primo NX' ),
 
 
3987
  '(WALTON )?Primo-X1!' => array( 'Walton', 'Primo X1' ),
3988
  'Primo-X2' => array( 'Walton', 'Primo X2' ),
 
3989
  'xPAD-70' => array( 'WayteQ', 'xPAD-70', TYPE_TABLET ),
3990
  'xTAB-70!' => array( 'WayteQ', 'xTAB-70', TYPE_TABLET ),
3991
  'WellcoM-A99' => array( 'WellcoM', 'A99' ),
@@ -4021,14 +4591,23 @@
4021
  'N101 DUAL CORE!' => array( 'Window', 'N101 Dual Core', TYPE_TABLET ),
4022
  'N612' => array( 'Wishway', 'N612' ),
4023
  'A81E' => array( 'Witstech', 'A81E', TYPE_TABLET ),
 
 
 
4024
  'AT-AS35D' => array( 'Wolfgang', 'AT-AS35D' ),
4025
  'AT-AS40D' => array( 'Wolfgang', 'AT-AS40D' ),
 
4026
  'AT-AS40SE' => array( 'Wolfgang', 'AT-AS40SE' ),
4027
  'AT-AS43D' => array( 'Wolfgang', 'AT-AS43D' ),
4028
  'AT-AS43D2' => array( 'Wolfgang', 'AT-AS43D2' ),
4029
  'AT-AS43D3' => array( 'Wolfgang', 'AT-AS43D3' ),
 
 
4030
  'AT-AS45SE' => array( 'Wolfgang', 'AT-AS45SE' ),
4031
  'AT-AS45IPS' => array( 'Wolfgang', 'AT-AS45IPS' ),
 
 
 
4032
  'AT-AS53N' => array( 'Wolfgang', 'AT-AS53N' ),
4033
  'M12' => array( 'Wopad', 'M12', TYPE_TABLET ),
4034
  'WM8650' => array( 'WonderMedia', 'WM8650', TYPE_TABLET ),
@@ -4051,7 +4630,12 @@
4051
  'MI 2SC' => array( 'Xiaomi', 'MI-2S' ),
4052
  'Xiaomi MI-2S' => array( 'Xiaomi', 'MI-2S' ),
4053
  'MI 2A' => array( 'Xiaomi', 'MI-2A' ),
 
4054
  'MI 3' => array( 'Xiaomi', 'MI-3' ),
 
 
 
 
4055
  'MiBOX_iCNTV' => array( 'Xiaomi', 'MiBox', TYPE_TELEVISION ),
4056
  'iX101T1' => array( 'Xplore', 'iX101T1', TYPE_TABLET ),
4057
  'X403' => array( 'Xtouch', 'X403' ),
@@ -4092,14 +4676,19 @@
4092
  'Light Tab 2' => array( 'ZTE', 'Light Tab 2', TYPE_TABLET ),
4093
  'V9C' => array( 'ZTE', 'Light Tab 3', TYPE_TABLET ),
4094
  'ZTE V72A' => array( 'ZTE', 'V72A', TYPE_TABLET ),
 
 
 
4095
  'ZTE T T98' => array( 'ZTE', 'T98', TYPE_TABLET ),
4096
  'V55' => array( 'ZTE', 'Optik', TYPE_TABLET ),
4097
  'Acqua' => array( 'ZTE', 'Acqua' ),
4098
  'ZTE Blade' => array( 'ZTE', 'Blade' ),
4099
  'a5' => array( 'ZTE', 'Blade' ),
4100
- 'ZTE Blade G' => array( 'ZTE', 'Blade G' ),
 
4101
  'Blade S' => array( 'ZTE', 'Blade S' ),
4102
  'Crescent' => array( 'ZTE', 'Blade S' ),
 
4103
  'ZTE Grand X Classic' => array( 'ZTE', 'Grand X Classic' ),
4104
  'ZTE Kis Lite' => array( 'ZTE', 'Kis Lite' ),
4105
  'Skate' => array( 'ZTE', 'Skate' ),
@@ -4108,9 +4697,13 @@
4108
  'X500' => array( 'ZTE', 'X500 Score' ),
4109
  'ZTE X500' => array( 'ZTE', 'X500 Score' ),
4110
  'ZTE C X500' => array( 'ZTE', 'X500 Score' ),
 
4111
  'ZTE C N600!' => array( 'ZTE', 'N600' ),
4112
  'ZTE C N606' => array( 'ZTE', 'N606' ),
 
4113
  'ZTE C N700' => array( 'ZTE', 'N700' ),
 
 
4114
  'ZTE U N720' => array( 'ZTE', 'N720' ),
4115
  'ZTE U N721' => array( 'ZTE', 'N721' ),
4116
  'ZTE Z740' => array( 'ZTE', 'Z740 Radiant' ),
@@ -4118,7 +4711,10 @@
4118
  'ZTE C N760' => array( 'ZTE', 'N760' ),
4119
  'ZTE U V760' => array( 'ZTE', 'V760' ),
4120
  'N762' => array( 'ZTE', 'N762' ),
 
 
4121
  'ZTE V768' => array( 'ZTE', 'V768 Concord' ),
 
4122
  'ZTE C N780' => array( 'ZTE', 'N780' ),
4123
  'ZTE N788' => array( 'ZTE', 'N788' ),
4124
  'ZTE Kis Pro' => array( 'ZTE', 'V788 Kis' ),
@@ -4129,26 +4725,35 @@
4129
  'ZTE U790' => array( 'ZTE', 'U790' ),
4130
  'ZTE V790' => array( 'ZTE', 'V790' ),
4131
  'ZTE V791' => array( 'ZTE', 'V791' ),
 
4132
  'ZTE V793' => array( 'ZTE', 'V793' ),
4133
  'ZTE U795!' => array( 'ZTE', 'U795' ),
4134
  'ZTE V795' => array( 'ZTE', 'V795' ),
 
4135
  'ZTE N798!' => array( 'ZTE', 'N798' ),
4136
  'ZTE N799!' => array( 'ZTE', 'N799' ),
 
 
4137
  'ZTE T U802' => array( 'ZTE', 'U802' ),
4138
  'RacerII' => array( 'ZTE', 'U806 Racer II' ),
4139
  'ZTE T U806' => array( 'ZTE', 'U806 Racer II' ),
4140
  'ZTE N807' => array( 'ZTE', 'N807' ),
4141
  'ZTE U807' => array( 'ZTE', 'U807' ),
 
4142
  'ZTE V807' => array( 'ZTE', 'V807 Blade C' ),
 
 
 
4143
  'E810' => array( 'ZTE', 'E810' ),
4144
  'ZTE T U812' => array( 'ZTE', 'U812' ),
4145
  'ZTE U817' => array( 'ZTE', 'U817' ),
4146
  'ZTE V817' => array( 'ZTE', 'V817' ),
4147
  'ZTE N818' => array( 'ZTE', 'N818' ),
 
4148
  'ZTE V818' => array( 'ZTE', 'V818' ),
4149
  'ZTE U819' => array( 'ZTE', 'U819' ),
4150
  'ZTE GV821' => array( 'ZTE', 'V821' ),
4151
- 'ZTE T U830' => array( 'ZTE', 'U830' ),
4152
  'ZTE Racer' => array( 'ZTE', 'X850 Racer' ),
4153
  'Racer' => array( 'ZTE', 'X850 Racer' ),
4154
  'ZTE U X850' => array( 'ZTE', 'X850 Racer' ),
@@ -4163,6 +4768,7 @@
4163
  'ZTE V877!' => array( 'ZTE', 'V877' ),
4164
  'N880' => array( 'ZTE', 'N880 Blade' ),
4165
  'ZTE C N880!' => array( 'ZTE', 'N880 Blade' ),
 
4166
  'U880' => array( 'ZTE', 'U880 Blade' ),
4167
  'ZTE ?U880!' => array( 'ZTE', 'U880 Blade' ),
4168
  'ZTE T ?U880!' => array( 'ZTE', 'U880 Blade' ),
@@ -4214,6 +4820,7 @@
4214
  'ZTE U970' => array( 'ZTE', 'U970 Grand X' ),
4215
  'ZTE V970!' => array( 'ZTE', 'Z970 Grand X' ),
4216
  'ZTE V975' => array( 'ZTE', 'V975 Geek' ),
 
4217
  'ZTE N983' => array( 'ZTE', 'N983' ),
4218
  'Grand X Pro' => array( 'ZTE', 'V983 Grand X Pro' ),
4219
  'ZTE Grand Era' => array( 'ZTE', 'U985 Grand Era' ),
@@ -4221,44 +4828,67 @@
4221
  'ZTE V985' => array( 'ZTE', 'V985 Grand Era' ),
4222
  'N986' => array( 'ZTE', 'N986' ),
4223
  'ZTE N986' => array( 'ZTE', 'N986' ),
4224
- 'ZTE V987' => array( 'ZTE', 'V987' ),
 
4225
  'ZTE V988' => array( 'ZTE', 'V988 Grand S' ),
4226
  'ZTE Grand S' => array( 'ZTE', 'V988 Grand S' ),
4227
  'ZTE Roamer' => array( 'ZTE', 'Z990 Roamer ' ),
4228
  'ZTE Z990!' => array( 'ZTE', 'Z990 Roamer' ),
 
 
4229
  'V8000 USA Cricket' => array( 'ZTE', 'V8000 Engage' ),
 
4230
  'X501 USA Cricket' => array( 'ZTE', 'X501 Groove' ),
4231
  'ZXY-ZTE V6700' => array( 'ZTE', 'V6700' ),
4232
  'ZTE V9800' => array( 'ZTE', 'V9800 Grand Era LTE' ),
4233
  'ZTE V9815' => array( 'ZTE', 'V9815 Grand Memo' ),
4234
  'ZTE Grand Memo LTE' => array( 'ZTE', 'V9815 Grand Memo' ),
 
 
4235
  'N9100' => array( 'ZTE', 'N9100 Force' ),
4236
  'N9101' => array( 'ZTE', 'N9101 Imperial' ),
4237
  'ZTE N9120' => array( 'ZTE', 'N9120 Avid' ),
4238
  'N9500' => array( 'ZTE', 'N9500 Flash' ),
 
4239
  'ZTE N9511' => array( 'ZTE', 'N9511 Fury' ),
4240
  'N9520' => array( 'ZTE', 'N9520 Stormer' ),
4241
  'N9810' => array( 'ZTE', 'N9810 Vital' ),
 
 
 
 
 
4242
  'ZTE N5' => array( 'ZTE', 'N5 Grand Memo' ),
4243
- 'ZTE N5S' => array( 'ZTE', 'N5S' ),
 
 
 
4244
  'ZTE T81' => array( 'ZTE', 'Fronteer 4G' ),
4245
  '003Z' => array( 'ZTE', 'Softbank 003Z' ),
4246
  '008Z' => array( 'ZTE', 'Softbank 008Z' ),
4247
  '009Z' => array( 'ZTE', 'Softbank Star7' ),
4248
- 'ZOPO C2' => array( 'Zopo', 'C2' ),
4249
  '(Zopo )?ZP100!' => array( 'Zopo', 'ZP100 Pilot' ),
4250
  'ZP200' => array( 'Zopo', 'ZP200 Shining' ),
4251
  'ZP300' => array( 'Zopo', 'ZP300 Field' ),
4252
  'ZP300+' => array( 'Zopo', 'ZP300 Field Plus' ),
4253
  'ZP500' => array( 'Zopo', 'ZP500 Libero' ),
 
 
4254
  'ZP800H' => array( 'Zopo', 'ZP800 Libero HD' ),
4255
  'ZP810' => array( 'Zopo', 'ZP810' ),
 
4256
  '(Zopo )?ZP900!' => array( 'Zopo', 'ZP900 Leader' ),
4257
  'ZP950' => array( 'Zopo', 'ZP950 Leader Max' ),
4258
  'ZP950H' => array( 'Zopo', 'ZP950 Leader Max' ),
 
 
4259
  'ZP980' => array( 'Zopo', 'ZP980' ),
 
 
4260
 
4261
  /* Telecom provider branded devices */
 
4262
  'Bouygues Telecom Bs 402' => array( 'Bouygues', 'Bs 402' ),
4263
 
4264
  'dtab01' => array( 'Docomo', 'dtab', TYPE_TABLET ),
@@ -4277,15 +4907,22 @@
4277
  'i-mobile IQ 5.1' => array( 'i-Mobile', 'iQ 5.1' ),
4278
  'i-mobile IQ 5.1A' => array( 'i-Mobile', 'iQ 5.1A' ),
4279
  'i-mobile IQ 5.3' => array( 'i-Mobile', 'iQ 5.3' ),
 
 
4280
  'i-mobile IQ 6' => array( 'i-Mobile', 'iQ 6' ),
4281
  'i-mobile IQ 6A' => array( 'i-Mobile', 'iQ 6A' ),
4282
  'i-mobile IQ X' => array( 'i-Mobile', 'iQ X' ),
4283
  'i-mobile IQ XA' => array( 'i-Mobile', 'iQ XA' ),
 
 
4284
  'i-STYLE 1' => array( 'i-Mobile', 'i-Style 1' ),
4285
- 'i-mobile i-STYLE 2' => array( 'i-Mobile', 'i-Style 2' ),
 
 
4286
  'i-mobile i-style 3' => array( 'i-Mobile', 'i-Style 3' ),
4287
  'i-mobile i-STYLE 4' => array( 'i-Mobile', 'i-Style 4' ),
4288
  'i-MOBILE i-STYLE 5' => array( 'i-Mobile', 'i-Style 5' ),
 
4289
  'i-mobile i-style 7.1' => array( 'i-Mobile', 'i-Style 7.1' ),
4290
  'i-mobile i-style 8' => array( 'i-Mobile', 'i-Style 8' ),
4291
  'i-mobile i-style Q1' => array( 'i-Mobile', 'i-Style Q1' ),
@@ -4303,6 +4940,8 @@
4303
  'i-mobile i-note WiFi 9' => array( 'i-Mobile', 'i-Note 9', TYPE_TABLET ),
4304
 
4305
  'KPN Smart 300' => array( 'KPN', 'Smart 300' ),
 
 
4306
 
4307
  'Movistar Motion' => array( 'Movistar', 'Motion' ),
4308
 
@@ -4313,6 +4952,9 @@
4313
  'MTC-962' => array( 'MTC', '962' ),
4314
  'MTC 970!' => array( 'MTC', '970' ),
4315
  'MTC 972' => array( 'MTC', '972' ),
 
 
 
4316
  'MTC Evo' => array( 'MTC', 'Evo' ),
4317
  'MTC Fit' => array( 'MTC', 'Fit' ),
4318
  'MTC Neo' => array( 'MTC', 'Neo' ),
@@ -4331,13 +4973,16 @@
4331
  'Orange Daytona' => array( 'Orange', 'Daytona' ),
4332
  'Orange Dublin' => array( 'Orange', 'Dublin' ),
4333
  'Orange Hiro' => array( 'Orange', 'Hiro' ),
4334
- 'Orange infinity 996' => array( 'Orange', 'Infinity 996' ),
 
4335
  'Orange Kivo' => array( 'Orange', 'Kivo' ),
4336
  'Orange Monte Carlo' => array( 'Orange', 'Monte Carlo' ), /* ZTE Skate */
4337
  '6034R ORANGE Niva' => array( 'Orange', 'Nivo' ),
 
4338
  'San Francisco' => array( 'Orange', 'San Francisco' ), /* ZTE Blade */
4339
  'San Francisco for Orange' => array( 'Orange', 'San Francisco' ), /* ZTE Blade */
4340
  'Orange San Francisco' => array( 'Orange', 'San Francisco' ), /* ZTE Blade */
 
4341
  'Orange Zali' => array( 'Orange', 'Zali' ),
4342
 
4343
  'QMobile A2 Lite' => array( 'Q-Mobile', 'Bolt A2 Lite' ),
@@ -4348,13 +4993,20 @@
4348
  'QMobile A11Note' => array( 'Q-Mobile', 'Noir A11' ),
4349
  'QMobile A12' => array( 'Q-Mobile', 'Noir A12' ),
4350
  'QMobile A20' => array( 'Q-Mobile', 'Noir A20' ),
 
4351
  'QMobile A34' => array( 'Q-Mobile', 'Noir A34' ),
 
 
 
4352
  'Qmobile A900' => array( 'Q-Mobile', 'Noir A900' ),
 
 
4353
  'Q-Smart model S6' => array( 'Q-Mobile', 'Q-Smart S6' ),
4354
  'Qmobile-S11' => array( 'Q-Mobile', 'S11' ),
4355
  'Qmobile S13' => array( 'Q-Mobile', 'S13' ),
4356
  'Q-Smart S16' => array( 'Q-Mobile', 'Q-Smart S16' ),
4357
  'Q-Smart S18' => array( 'Q-Mobile', 'Q-Smart S18' ),
 
4358
  'Q-Smart S20' => array( 'Q-Mobile', 'Q-Smart S20' ),
4359
  'Q-Smart S21' => array( 'Q-Mobile', 'Q-Smart S21' ),
4360
 
@@ -4393,6 +5045,8 @@
4393
 
4394
  'tmn smart a7' => array( 'TMN', 'Smart A7' ),
4395
  'tmn smart a15' => array( 'TMN', 'Smart A15' ),
 
 
4396
 
4397
  'TRUE BEYOND 3G' => array( 'True', 'Beyond' ),
4398
 
@@ -4406,6 +5060,7 @@
4406
  'Viettel V8502' => array( 'Viettel', 'V8502' ),
4407
  'V8503' => array( 'Viettel', 'V8503' ),
4408
 
 
4409
  'Vodafone 845' => array( 'Vodafone', '845 Nova' ), /* Huawei U8100 */
4410
  'Vodafone 858' => array( 'Vodafone', '858 Smart' ), /* Huawei U8160 */
4411
  'Vodafone 861' => array( 'Vodafone', '861 Smart' ),
@@ -4421,6 +5076,7 @@
4421
  'SmartTabII7' => array( 'Vodafone', 'Smart Tab II 7', TYPE_TABLET ), /* Lenovo */
4422
  'Vodafone Smart Tab III 7' => array( 'Vodafone', 'Smart Tab III 7', TYPE_TABLET ),
4423
  'Vodafone Smart Tab III 10' => array( 'Vodafone', 'Smart Tab III 10', TYPE_TABLET ),
 
4424
  'SmartTab10' => array( 'Vodafone', 'Smart Tab 10', TYPE_TABLET ) /* ZTE Web Tab 10 */
4425
  );
4426
-
34
  'SABRESD-MX6DQ' => array( 'Freescale', 'i.MX6DQ based device' ),
35
  'ODROID-A' => array( 'Hardkernel', 'ODROID-A developer tablet', TYPE_TABLET ),
36
  'ODROID-U2' => array( 'Hardkernel', 'ODROID-U2 developer board' ),
37
+ 'ODROID-XU' => array( 'Hardkernel', 'ODROID-XU developer board' ),
38
  'cedartrail' => array( 'Intel', 'Cedar Trail based device' ),
39
  'mfld (dv10|dv20|lw00|pr2|pr3)!' => array( 'Intel', 'Medfield based device' ),
40
  'redhookbay' => array( 'Intel', 'Merrifield based device' ),
53
  'mt6575!' => array( 'Mediatek', 'MT6575 based device' ),
54
  'mt6582!' => array( 'Mediatek', 'MT6582 based device' ),
55
  'mt6589!' => array( 'Mediatek', 'MT6589 based device' ),
56
+ 'MTK--8312' => array( 'Mediatek', 'MT8312 based device' ),
57
  'mt8658' => array( 'Mediatek', 'MT8658 based device' ),
58
  'MBX DVBT reference board (c03ref)' => array( 'MXB', 'DVBT reference board', TYPE_TELEVISION ),
59
  'NS115' => array( 'Nufront', 'NuSmart 115 based device' ),
60
  'NS2816' => array( 'Nufront', 'NuSmart 2816 based device' ),
61
+ 'Ventana' => array( 'Nvidia', 'Tegra Ventana development kit' ),
62
+ 'Cardhu' => array( 'Nvidia', 'Tegra 3 based device' ),
63
  'Panda(Board)?!' => array( 'Pandaboard', 'Development Kit' ),
64
  'Omap5panda' => array( 'Pandaboard', 'Development Kit' ),
65
  'MSM' => array( 'Qualcomm', 'Snapdragon based device' ),
134
  'Nexus 5' => array( 'LG', 'Nexus 5' ),
135
  'manta' => array( 'Samsung', 'Nexus 10', TYPE_TABLET ),
136
  'Nexus 10' => array( 'Samsung', 'Nexus 10', TYPE_TABLET ),
137
+
138
+ 'HTC One' => array( 'HTC', 'One (Google Edition)' ),
139
+ 'Moto G' => array( 'Motorola', 'Moto G (Google Edition)' ),
140
+ 'GT-I9505G' => array( 'Samsung', 'Galaxy S4 (Google Edition)' ),
141
+ 'Galaxy S4 Google Editon' => array( 'Samsung', 'Galaxy S4 (Google Edition)' ),
142
+ 'Xperia Z Ultra' => array( 'Sony', 'Xperia Z Ultra (Google Edition)' ),
143
 
144
 
145
  /* Google Glass */
150
  'BlueStacks' => array( 'BlueStacks', 'App Player', 'desktop' ),
151
  'youwave custom' => array( 'Youwave', 'Android on PC', 'desktop' ),
152
  'BlackBerry Runtime for Android Apps' => array( 'RIM', 'BlackBerry (Android Runtime)', TYPE_MOBILE ),
153
+ 'alien jolla bionic' => array( 'Jolla', 'Sailfish (Android Runtime)', TYPE_MOBILE ),
154
  'alien ubuntu qt' => array( 'Ubuntu', 'Touch (Android Runtime)', TYPE_MOBILE ),
155
  'full Android on Microsoft Windows, pad, pc, n*books'
156
  => array( 'SocketeQ', 'WindowsAndroid', 'desktop' ),
163
  'MK809IV' => array( null, 'MK809 IV', TYPE_TELEVISION ),
164
  'MK818B' => array( null, 'MK818 B', TYPE_TELEVISION ),
165
  'MK908' => array( null, 'MK908', TYPE_TELEVISION ),
166
+ 'MK908II' => array( null, 'MK908 II', TYPE_TELEVISION ),
167
  'GK802' => array( null, 'GK802', TYPE_TELEVISION ),
168
  'VEOLO' => array( 'A.C. Ryan', 'VEOLO Smart Android Hub', TYPE_TELEVISION ),
169
  'BenQ JD-130' => array( 'BenQ', 'JD-130', TYPE_TELEVISION ),
170
+ 'BenQ Android TV' => array( 'BenQ', 'JD-130', TYPE_TELEVISION ),
171
  'EVOKE HDI Box' => array( 'Evoke', 'HDI TV Box', TYPE_TELEVISION ),
172
  'JT SmartPC02' => array( 'Joy-IT', 'Smart PC', TYPE_TELEVISION ),
173
  'M3 Enjoy TV Box' => array( 'Geniatech', 'Enjoy TV', TYPE_TELEVISION ),
174
+ 'MX Enjoy TV BOX' => array( 'Geniatech', 'Enjoy TV', TYPE_TELEVISION ),
175
  'NEO-G4' => array( 'Minix', 'Neo G4', TYPE_TELEVISION ),
176
+ 'NEO-X7-216A' => array( 'Minix', 'Neo X7', TYPE_TELEVISION ),
177
  'Rikomagic MK802' => array( 'Rikomagic', 'MK802', TYPE_TELEVISION ),
178
  'Rikomagic MK802 ?II!' => array( 'Rikomagic', 'MK802 II', TYPE_TELEVISION ),
179
  'Rikomagic MK802III' => array( 'Rikomagic', 'MK802 III', TYPE_TELEVISION ),
216
  'P2A700' => array( 'Acer', 'Iconia Tab A700', TYPE_TABLET ),
217
  'A701' => array( 'Acer', 'Iconia Tab A701', TYPE_TABLET ),
218
  'A800' => array( 'Acer', 'Iconia Tab A800', TYPE_TABLET ),
219
+ 'A1-713' => array( 'Acer', 'Iconia Tab 7 A1-713', TYPE_TABLET ),
220
+ 'A1-713HD' => array( 'Acer', 'Iconia Tab 7 A1-713 HD', TYPE_TABLET ),
221
  'A1-810' => array( 'Acer', 'Iconia A1-810', TYPE_TABLET ),
222
  'A1-811' => array( 'Acer', 'Iconia A1-811', TYPE_TABLET ),
223
  'A1-812' => array( 'Acer', 'Iconia A1-812', TYPE_TABLET ),
224
  'A1-820' => array( 'Acer', 'Iconia A1-820', TYPE_TABLET ),
225
  'A1-830' => array( 'Acer', 'Iconia A1-830', TYPE_TABLET ),
226
+ 'A1-840' => array( 'Acer', 'Iconia A1-840', TYPE_TABLET ), // Unknown
227
+ 'A1-840FHD' => array( 'Acer', 'Iconia A1-840 FHD', TYPE_TABLET ), // Unknown
228
  'B1-A71' => array( 'Acer', 'Iconia B1-A71', TYPE_TABLET ),
229
  'B1-710' => array( 'Acer', 'Iconia B1-710', TYPE_TABLET ),
230
  'B1-711' => array( 'Acer', 'Iconia B1-711', TYPE_TABLET ),
231
+ 'B1-720' => array( 'Acer', 'Iconia B1-720', TYPE_TABLET ),
232
+ 'B1-730' => array( 'Acer', 'Iconia One 7 B1-730', TYPE_TABLET ),
233
+ 'B1-730HD' => array( 'Acer', 'Iconia One 7 B1-730 HD', TYPE_TABLET ),
234
  'ICONIA W700' => array( 'Acer', 'Iconia W700', TYPE_TABLET ),
235
  'E110' => array( 'Acer', 'beTouch E110' ),
236
  'E120' => array( 'Acer', 'beTouch E120' ),
241
  'E320' => array( 'Acer', 'Liquid Express' ),
242
  'E330' => array( 'Acer', 'Liquid Glow' ),
243
  'E350' => array( 'Acer', 'Liquid Gallant' ),
244
+ 'E380' => array( 'Acer', 'Liquid E3' ),
245
  'E400' => array( 'Acer', 'beTouch E400' ),
246
  'S100' => array( 'Acer', 'Liquid' ),
247
  'S110' => array( 'Acer', 'Stream' ),
248
  'S120' => array( 'Acer', 'Liquid mt' ),
249
  'S300' => array( 'Acer', 'Iconia Smart' ),
250
  'S500' => array( 'Acer', 'CloudMobile' ),
251
+ 'S510' => array( 'Acer', 'Liquid S' ),
252
+ 'S520' => array( 'Acer', 'Liquid S2' ),
253
+ 'V360' => array( 'Acer', 'Liquid E1' ),
254
+ 'V370' => array( 'Acer', 'Liquid E2' ),
255
+ 'V380' => array( 'Acer', 'Liquid E3' ),
256
  'Z110' => array( 'Acer', 'Liquid Z' ),
257
  'Z120' => array( 'Acer', 'Liquid Z2' ),
258
+ 'Z130' => array( 'Acer', 'Liquid Z3' ),
259
+ 'Z140' => array( 'Acer', 'Liquid Z4' ),
260
+ 'Z150' => array( 'Acer', 'Liquid Z5' ),
261
+ 'Z160' => array( 'Acer', 'Liquid Z4' ),
262
  'TD600' => array( 'Acer', 'beTouch TD600' ),
263
  'Liquid' => array( 'Acer', 'Liquid' ),
264
  'Liquid E' => array( 'Acer', 'Liquid E' ),
268
  'Stream' => array( 'Acer', 'Stream' ),
269
  'AK330s' => array( 'Acer', 'AK330s' ),
270
  'DA220HQL' => array( 'Acer', 'Touch and 3D Monitor DA220HQL', TYPE_MONITOR ),
271
+ 'DA222HQLA' => array( 'Acer', 'Touch and 3D Monitor DA220HQL', TYPE_MONITOR ),
272
+ 'DA245HQL' => array( 'Acer', 'Touch and 3D Monitor DA245HQL', TYPE_MONITOR ),
273
  'C908' => array( 'Acho', 'C908', TYPE_TABLET ),
274
  'S5-F' => array( 'Advan', 'Vandroid S5-F', TYPE_TABLET ),
275
  'T1-B' => array( 'Advan', 'Vandroid T1-B', TYPE_TABLET ),
298
  'Novo7 Venus' => array( 'Ainovo', 'Novo7 Venus', TYPE_TABLET ),
299
  'Novo8 Advanced' => array( 'Ainovo', 'Novo8 Advanced', TYPE_TABLET ),
300
  'Novo8 Discover Quadcore' => array( 'Ainovo', 'Novo8 Discover', TYPE_TABLET ),
301
+ 'Novo8 Disover Quadcore' => array( 'Ainovo', 'Novo8 Discover', TYPE_TABLET ),
302
  'Novo8 Dream QuadCore' => array( 'Ainovo', 'Novo8 Dream', TYPE_TABLET ),
303
  'novo9-Spark' => array( 'Ainovo', 'Novo9 Spark', TYPE_TABLET ),
304
  'Novo10 ?Hero!' => array( 'Ainovo', 'Novo10 Hero', TYPE_TABLET ),
311
  'PHA-3850' => array( 'AKAI', 'PHA-3850' ),
312
  'one touch 890!' => array( 'Alcatel', 'One Touch 890' ),
313
  'one touch 891!' => array( 'Alcatel', 'One Touch 891' ),
314
+ 'one touch 900!' => array( 'Alcatel', 'One Touch 900' ),
315
  'one touch 903!' => array( 'Alcatel', 'One Touch 903' ),
316
  'one touch 906!' => array( 'Alcatel', 'One Touch 906' ),
317
  'Alcatel one touch 908F' => array( 'Alcatel', 'One Touch 908' ),
342
  'one touch D920' => array( 'Alcatel', 'One Touch D920' ),
343
  'one touch 40(05|10|11)!' => array( 'Alcatel', 'One Touch T\'Pop' ),
344
  'one touch 4007!' => array( 'Alcatel', 'One Touch Pixi' ),
345
+ 'one touch 40(15|16)!' => array( 'Alcatel', 'One Touch Pop C1' ),
346
+ 'ALCATEL 4015T' => array( 'Alcatel', 'One Touch Pop C1' ),
347
  'one touch 4030!' => array( 'Alcatel', 'One Touch S\'Pop' ),
348
  'one touch 4033!' => array( 'Alcatel', 'One Touch Pop C3' ),
349
  'one touch 5020!' => array( 'Alcatel', 'One Touch M\'Pop' ),
350
  'one touch 5021!' => array( 'Alcatel', 'One Touch Soleil' ),
351
  'one touch 5035!' => array( 'Alcatel', 'One Touch X\'Pop' ),
352
+ 'one touch 5036!' => array( 'Alcatel', 'One Touch Pop C5' ),
353
  'one touch 6010!' => array( 'Alcatel', 'One Touch Star' ),
354
  'one touch 6012!' => array( 'Alcatel', 'One Touch Idol Mini' ),
355
+ '6016D' => array( 'Alcatel', 'One Touch Idol 2 Mini' ),
356
  'one touch 6030!' => array( 'Alcatel', 'One Touch Idol' ),
357
  'one touch 6032!' => array( 'Alcatel', 'One Touch Idol α' ),
358
  'one touch 6033!' => array( 'Alcatel', 'One Touch Idol Ultra' ),
359
  'one touch 60(34|35)!' => array( 'Alcatel', 'One Touch Idol S' ),
360
+ 'one touch 6036!' => array( 'Alcatel', 'One Touch Idol 2 Mini S' ),
361
+ '6036A' => array( 'Alcatel', 'One Touch Idol 2 Mini S' ),
362
+ '6036X' => array( 'Alcatel', 'One Touch Idol 2 Mini S' ),
363
+ 'ONETOUCH 6036Y' => array( 'Alcatel', 'One Touch Idol 2 Mini S' ),
364
  'one touch 6040!' => array( 'Alcatel', 'One Touch Idol X' ),
365
+ 'one touch 6043!' => array( 'Alcatel', 'One Touch Idol X+' ),
366
+ '6043D' => array( 'Alcatel', 'One Touch Idol X+' ),
367
+ '6050Y' => array( 'Alcatel', 'One Touch Idol 2S' ),
368
  'one touch 7024!' => array( 'Alcatel', 'One Touch Fierce' ),
369
  'one touch fierce!' => array( 'Alcatel', 'One Touch Fierce' ),
370
  'one touch 70(25|30)!' => array( 'Alcatel', 'One Touch Snap' ),
371
  'Alcatel 7030L' => array( 'Alcatel', 'One Touch Snap' ),
372
+ 'one touch 70(40|41)!' => array( 'Alcatel', 'One Touch Pop C7' ),
373
+ '7045Y' => array( 'Alcatel', 'One Touch Pop S7' ),
374
+ 'one touch 7047!' => array( 'Alcatel', 'One Touch Pop C9' ),
375
+ 'one touch 7050!' => array( 'Alcatel', 'One Touch Pop S9' ),
376
+ '7050Y' => array( 'Alcatel', 'One Touch Pop S9' ),
377
  'one touch 8000!' => array( 'Alcatel', 'One Touch Scribe Easy' ),
378
  'one touch 8008!' => array( 'Alcatel', 'One Touch Scribe HD' ),
379
  'one touch 8020!' => array( 'Alcatel', 'One Touch Scribe Pro' ),
380
  'one touch T10' => array( 'Alcatel', 'One Touch T10', TYPE_TABLET ),
381
  'onetouch EVO7' => array( 'Alcatel', 'One Touch Evo 7', TYPE_TABLET ),
382
+ 'ONE TOUCH TAB 7' => array( 'Alcatel', 'One Touch Tab 7', TYPE_TABLET ),
383
  'ONE TOUCH TAB 7HD' => array( 'Alcatel', 'One Touch Tab 7HD', TYPE_TABLET ),
384
  'ONE TOUCH EVO7HD' => array( 'Alcatel', 'One Touch Evo 7 HD', TYPE_TABLET ),
385
  'ONE TOUCH EVO8HD' => array( 'Alcatel', 'One Touch Evo 8 HD', TYPE_TABLET ),
386
+ 'ONE TOUCH P310(A|X)!' => array( 'Alcatel', 'One Touch POP7', TYPE_TABLET ),
387
+ 'ONE TOUCH P320X' => array( 'Alcatel', 'One Touch POP8', TYPE_TABLET ),
388
  'ADR3010' => array( 'Alcatel', 'Authority' ),
389
  'Venture' => array( 'Alcatel', 'Venture' ),
390
  'ALLVIEW A4ALL' => array( 'Allview', 'A4 All' ),
419
  'AMI-TT4' => array( 'Amicroe', 'TouchTab IV', TYPE_TABLET ),
420
  'AML-MX REF' => array( 'AmLogic', 'MX', TYPE_TABLET ),
421
  'AMOI A860w' => array( 'Amoi', 'A860W' ),
422
+ 'AMOI A920W' => array( 'Amoi', 'A920W' ),
423
  'AMOI N79+' => array( 'Amoi', 'N79' ),
424
  'AMOI N89' => array( 'Amoi', 'N89' ),
425
  'AMOI N807' => array( 'Amoi', 'N807' ),
464
  'AN10CG3' => array( 'Archos', 'Arnova 10c G3', TYPE_TABLET ),
465
  'AN10DG3' => array( 'Archos', 'Arnova 10d G3', TYPE_TABLET ),
466
  'ARNOVA 90G3' => array( 'Archos', 'Arnova 90 G3', TYPE_TABLET ),
467
+ 'ARNOVA 97G4' => array( 'Archos', 'Arnova 97 G4', TYPE_TABLET ),
468
  'ARNOVA 101 G4' => array( 'Archos', 'Arnova 101 G4', TYPE_TABLET ),
469
  'A32' => array( 'Archos', '32', 'media' ),
470
  'A35DE' => array( 'Archos', '35 Smart Home Phone' ),
483
  'ARCHOS 97XSLG10' => array( 'Archos', '97 XS', TYPE_TABLET ), // G10
484
  'ARCHOS 80XSK' => array( 'Archos', '80 XS', TYPE_TABLET ), // G10
485
  'ARCHOS 101G10' => array( 'Archos', '101 XS', TYPE_TABLET ),
486
+ 'Archos 40 Titanium' => array( 'Archos', '40 Titanium' ), // Elements
487
  'Archos 50 Platinum' => array( 'Archos', '50 Platinum' ), // Elements
488
+ 'Archos 53 Platinum' => array( 'Archos', '53 Platinum' ), // Elements
489
  'ARCHOS 70 Titanium' => array( 'Archos', '70 Titanium', TYPE_TABLET ), // Elements
490
+ 'ARCHOS 80 Carbon' => array( 'Archos', '80 Carbon', TYPE_TABLET ), // Elements
491
  'ARCHOS 80 COBALT' => array( 'Archos', '80 Cobalt', TYPE_TABLET ), // Elements
492
  'ARCHOS 80 TITANIUM' => array( 'Archos', '80 Titanium', TYPE_TABLET ), // Elements
493
  'Archos 80 Xenon' => array( 'Archos', '80 Xenon', TYPE_TABLET ), // Elements
494
  'ARCHOS 97 CARBON' => array( 'Archos', '97 Carbon', TYPE_TABLET ), // Elements
495
+ 'ARCHOS 97 Platinum' => array( 'Archos', '97 Platinum', TYPE_TABLET ), // Elements
496
+ 'ARCHOS 97b PLATINUM' => array( 'Archos', '97b Platinum', TYPE_TABLET ), // Elements
497
  'ARCHOS 97 TITANIUMHD' => array( 'Archos', '97 Titanium HD', TYPE_TABLET ), // Elements
498
+ 'ARCHOS 97 XENON' => array( 'Archos', '97 Xenon', TYPE_TABLET ), // Elements
499
+ 'ARCHOS 97B TITANIUM' => array( 'Archos', '97b Titanium', TYPE_TABLET ),
500
  'ARCHOS 101 Titanium' => array( 'Archos', '101 Titanium', TYPE_TABLET ), // Elements
501
  'ARCHOS GAMEPAD' => array( 'Archos', 'Gamepad', TYPE_GAMING ),
502
+ 'ARCHOS GAMEPAD2' => array( 'Archos', 'Gamepad 2', TYPE_GAMING ),
503
  'ARCHOS FAMILYPAD 2' => array( 'Archos', 'Familypad 2', TYPE_TABLET ),
504
  'D9702' => array( 'Artes', 'D9702', TYPE_TABLET ),
505
  'ASTRI' => array( 'ASTRI', 'e-reader', TYPE_EREADER ),
537
  'PadFone Infinity' => array( 'Asus', 'Padfone Infinity', TYPE_TABLET ),
538
  'PadFone Infinity A86' => array( 'Asus', 'Padfone Infinity', TYPE_TABLET ),
539
  'PadFone T004' => array( 'Asus', 'Padfone Infinity', TYPE_TABLET ),
540
+ 'PadFone T00C' => array( 'Asus', 'Padfone Mini', TYPE_TABLET ),
541
+ 'PadFone X' => array( 'Asus', 'Padfone X', TYPE_TABLET ),
542
  'ETBW11AA' => array( 'Asus', 'Tough' ),
543
+ 'K00C' => array( 'Asus', 'Transformer Pad Infinity', TYPE_TABLET ),
 
544
  'K00G' => array( 'Asus', 'Fonepad Note 6', TYPE_TABLET ),
545
+ 'K00E' => array( 'Asus', 'Fonepad 7', TYPE_TABLET ),
546
+ 'K00Z' => array( 'Asus', 'Fonepad 7', TYPE_TABLET ),
547
+ 'K00S' => array( 'Asus', 'MemoPad HD 7', TYPE_TABLET ),
548
+ 'K00U' => array( 'Asus', 'MemoPad HD 7', TYPE_TABLET ),
549
+ 'K00L' => array( 'Asus', 'MemoPad 8', TYPE_TABLET ),
550
+ 'K00F' => array( 'Asus', 'MemoPad 10', TYPE_TABLET ),
551
+ 'T00C' => array( 'Asus', 'Padfone Mini', TYPE_TABLET ),
552
+ 'T00E' => array( 'Asus', 'Padfone Mini', TYPE_TABLET ),
553
+ 'T00D' => array( 'Asus', 'Padfone X', TYPE_TABLET ),
554
+ 'T00N' => array( 'Asus', 'Padfone X', TYPE_TABLET ),
555
+ 'T00F' => array( 'Asus', 'ZenFone 5' ),
556
+ 'T00I' => array( 'Asus', 'ZenFone 4' ),
557
+ 'T00J' => array( 'Asus', 'ZenFone 5' ),
558
+ 'T00G' => array( 'Asus', 'ZenFone 6' ),
559
+ 'TX201LA' => array( 'Asus', 'Transformer Book Trio', TYPE_TABLET ),
560
  'T-07B' => array( 'AudioSonic', 'T07B', TYPE_TABLET ),
561
  'AUX V900' => array( 'AUX', 'V900' ),
562
  'PICOpadGCE' => array( 'Axioo', 'Picopad GCE', TYPE_TABLET ),
587
  'Barnes & Noble Nook HD+' => array( 'Barnes & Noble', 'NOOK HD+ Tablet', TYPE_EREADER ),
588
  'BN Nook HD' => array( 'Barnes & Noble', 'NOOK HD Tablet', TYPE_EREADER ),
589
  'BN NookHD+' => array( 'Barnes & Noble', 'NOOK HD+ Tablet', TYPE_EREADER ),
590
+ 'Nook HD+' => array( 'Barnes & Noble', 'NOOK HD+ Tablet', TYPE_EREADER ),
591
+ 'HY5001' => array( 'Bedove', 'HY5001' ),
592
  'BenWee 5100' => array( 'BenWee', '5100' ),
593
  'WL-101GQC' => array( 'Bauhn', 'WL-101GQC', TYPE_TABLET ),
594
  'BEE 9500' => array( 'Bee Mobile', 'Bee 9500' ),
595
  'CA907AAC0G' => array( 'Besta', 'CA907AAC0G' ),
596
+ 'BIRD T40' => array( 'Bird', 'T40' ),
597
  'T9108' => array( 'Bird', 'T9108' ),
598
  '(BB )?Q5!' => array( 'BlackBerry', 'Q5' ),
599
  '(BB )?Q10!' => array( 'BlackBerry', 'Q10' ),
600
  '(BB )?Z10!' => array( 'BlackBerry', 'Z10' ),
601
  '(BB )?Z30!' => array( 'BlackBerry', 'Z30' ),
602
+ 'BLU ADVANCE 3.5' => array( 'BLU', 'Advance 3.5' ),
603
+ 'BLU DASH' => array( 'BLU', 'Dash' ),
604
+ 'BLU DASH JR' => array( 'BLU', 'Dash Jr' ),
605
+ 'DASH JR. 4.0' => array( 'BLU', 'Dash Jr 4.0' ),
606
  '(BLU )?DASH 3.2!' => array( 'BLU', 'Dash 3.2' ),
607
  'BLU DASH 3.5!' => array( 'BLU', 'Dash 3.5' ),
608
  'BMOBILE DASH 3.5' => array( 'BLU', 'Dash 3.5' ),
609
  'BLU DASH 4.0' => array( 'BLU', 'Dash 4.0' ),
610
  'BLU DASH 4.5' => array( 'BLU', 'Dash 4.5' ),
611
+ 'BLU DASH 5.0' => array( 'BLU', 'Dash 5.0' ),
612
+ 'BLU Life One' => array( 'BLU', 'Life One' ),
613
+ 'BLU LIFE ONE X' => array( 'BLU', 'Life One X' ),
614
  'LIFE PLAY' => array( 'BLU', 'Life Play' ),
615
+ 'LIFE PURE' => array( 'BLU', 'Life Pure' ),
616
  'BLU Life View' => array( 'BLU', 'Life View' ),
617
  'BLU Magic' => array( 'BLU', 'Magic' ),
618
  'BLU Quattro 4.5' => array( 'BLU', 'Quattro 4.5' ),
619
  'BLU Quattro 4.5 HD' => array( 'BLU', 'Quattro 4.5 HD' ),
620
  'BLU Quattro 5.7HD' => array( 'BLU', 'Quattro 5.7 HD' ),
621
  'BLU STUDIO 5.0' => array( 'BLU', 'Studio 5.0' ),
622
+ 'BLU STUDIO 5.0 II' => array( 'BLU', 'Studio 5.0 II' ),
623
  'BLU Studio 5.3' => array( 'BLU', 'Studio 5.3' ),
624
  'BLU STUDIO 5.3 II' => array( 'BLU', 'Studio 5.3 II' ),
625
+ 'STUDIO 5.5' => array( 'BLU', 'Studio 5.5' ),
626
  'BLU Tank4.5' => array( 'BLU', 'Tank 4.5' ),
627
  'BLU Tigo' => array( 'BLU', 'Tigo' ),
628
  'BLU P100i' => array( 'BLU', 'Touch Book 7.0 Plus', TYPE_TABLET ),
645
  'BROR W68' => array( 'BROR', 'W68' ),
646
  'bq Aquaris' => array( 'bq', 'Aquaris' ),
647
  'bq Aquaris 3.5' => array( 'bq', 'Aquaris 3.5' ),
648
+ 'bq Aquaris 4' => array( 'bq', 'Aquaris 4' ),
649
  'bq Aquaris 5' => array( 'bq', 'Aquaris 5' ),
650
+ 'bq Aquaris 5 HD' => array( 'bq', 'Aquaris 5 HD' ),
651
  'bq Curie' => array( 'bq', 'Curie', TYPE_TABLET ),
652
+ 'bq Curie 2' => array( 'bq', 'Curie 2', TYPE_TABLET ),
653
  'bq Curie 2 3G' => array( 'bq', 'Curie 2', TYPE_TABLET ),
654
+ 'bq Curie 2 Quad Core' => array( 'bq', 'Curie 2', TYPE_TABLET ),
655
+ 'bq Curie 2 Quad Core 3G' => array( 'bq', 'Curie 2', TYPE_TABLET ),
656
  'bq DaVinci' => array( 'bq', 'DaVinci', TYPE_TABLET ),
657
  'bq Elcano' => array( 'bq', 'Elcano', TYPE_TABLET ),
658
  'bq Edison' => array( 'bq', 'Edison', TYPE_TABLET ),
659
  'bq Edison 3G' => array( 'bq', 'Edison', TYPE_TABLET ),
660
  'bq Edison 2' => array( 'bq', 'Edison 2', TYPE_TABLET ),
661
  'bq Edison 2 3G' => array( 'bq', 'Edison 2', TYPE_TABLET ),
662
+ 'bq Edison 2 Quad Core' => array( 'bq', 'Edison 2', TYPE_TABLET ),
663
+ 'bq Edison 2 Quad Core 3G' => array( 'bq', 'Edison 2', TYPE_TABLET ),
664
  'Maxwell Lite' => array( 'bq', 'Maxwell Lite', TYPE_TABLET ),
665
  'bq Maxwell Plus' => array( 'bq', 'Maxwell Plus', TYPE_TABLET ),
666
  'bq Maxwell 2 Plus' => array( 'bq', 'Maxwell 2 Plus', TYPE_TABLET ),
667
+ 'bq Maxwell 2 Quad Core' => array( 'bq', 'Maxwell 2', TYPE_TABLET ),
668
  'bq Pascal 2' => array( 'bq', 'Pascal 2', TYPE_TABLET ),
669
  'bq Verne Plus' => array( 'bq', 'Verne Plus', TYPE_TABLET ),
670
  'CT701' => array( 'Carrefour', 'CT701', TYPE_TABLET ),
683
  'CAT NOVA' => array( 'Cat', 'NOVA', TYPE_TABLET ),
684
  'Celkon A8+' => array( 'Celkon', 'A8+' ),
685
  'CELKON A9+' => array( 'Celkon', 'A9+' ),
686
+ 'Celkon A15' => array( 'Celkon', 'Campus A15' ),
687
+ 'Celkon A20' => array( 'Celkon', 'Campus A20' ),
688
+ 'Celkon A 59' => array( 'Celkon', 'A59' ),
689
+ 'Celkon A 63' => array( 'Celkon', 'A63' ),
690
  'Celkon A79' => array( 'Celkon', 'A79' ),
691
+ 'Celkon A 85' => array( 'Celkon', 'A85' ),
692
+ 'Celkon A98' => array( 'Celkon', 'A98' ),
693
  'Celkon A107+' => array( 'Celkon', 'Signature One A107+' ),
694
  'Celkon A119' => array( 'Celkon', 'Signature HD A119' ),
695
  'Celkon A119Q' => array( 'Celkon', 'Signature HD A119Q' ),
733
  'CP-DX650' => array( 'Cisco', 'DX650', TYPE_TABLET ),
734
  'Cloudfone Excite320e' => array( 'Cloudfone', 'Excite 320e' ),
735
  'Cloudfone Excite 402d' => array( 'Cloudfone', 'Excite 402d' ),
736
+ 'Cloudfone Thrill 430d' => array( 'Cloudfone', 'Thrill 430d' ),
737
  'Cloudfone Thrill 430g' => array( 'Cloudfone', 'Thrill 430g' ),
738
  'Thrill 430x' => array( 'Cloudfone', 'Thrill 430x' ),
739
  'CloudPad 700d' => array( 'Cloudfone', 'CloudPad 700d' ),
799
  'Coolpad W708' => array( 'Coolpad', 'W708' ),
800
  'W711' => array( 'Coolpad', 'W711' ),
801
  'Coolpad 5010' => array( 'Coolpad', '5010' ),
802
+ 'Coolpad 5108' => array( 'Coolpad', '5108' ),
803
  'Coolpad 5110' => array( 'Coolpad', '5110' ),
804
  'Coolpad 5210!' => array( 'Coolpad', '5210' ),
805
  'Coolpad 5211' => array( 'Coolpad', '5211' ),
817
  'Coolpad 5870' => array( 'Coolpad', '5870' ),
818
  '5870' => array( 'Coolpad', '5870' ),
819
  'Coolpad 5876' => array( 'Coolpad', '5876' ),
820
+ 'Coolpad 5879' => array( 'Coolpad', '5879' ),
821
  'Coolpad 5880' => array( 'Coolpad', '5880' ),
822
  'Coolpad 5890' => array( 'Coolpad', '5890' ),
823
+ 'Coolpad 5891!' => array( 'Coolpad', '5891' ),
824
  'Coolpad 5910' => array( 'Coolpad', '5910' ),
825
  'Coolpad 5930' => array( 'Coolpad', '5930' ),
826
  'Coolpad 5950' => array( 'Coolpad', '5950' ),
835
  '7266' => array( 'Coolpad', '7266' ),
836
  'Coolpad 7268' => array( 'Coolpad', '7268' ),
837
  'Coolpad 7269' => array( 'Coolpad', '7269' ),
838
+ 'Coolpad 7270' => array( 'Coolpad', '7270' ),
839
  'Coolpad 7290' => array( 'Coolpad', '7290' ),
840
  'Coolpad 7295!' => array( 'Coolpad', '7295' ),
841
+ 'Coolpad7296' => array( 'Coolpad', '7296' ),
842
+ 'Coolpad 7296' => array( 'Coolpad', '7296' ),
843
  'Coolpad 7728' => array( 'Coolpad', '7728' ),
844
  'Coolpad 8010' => array( 'Coolpad', '8010' ),
845
  'Coolpad 8012' => array( 'Coolpad', '8012' ),
854
  'Coolpad 8070' => array( 'Coolpad', '8070' ),
855
  'Coolpad8070D' => array( 'Coolpad', '8070' ),
856
  'Coolpad 8076' => array( 'Coolpad', '8076' ),
857
+ 'Coolpad-8076!' => array( 'Coolpad', '8076' ),
858
+ 'Coolpad 8076D' => array( 'Coolpad', '8076' ),
859
  'Coolpad 8085' => array( 'Coolpad', '8085' ),
860
+ 'Coolpad 8122' => array( 'Coolpad', '8122' ),
861
+ 'Coolpad8150S' => array( 'Coolpad', '8150' ),
862
  'Coolpad -?8190!' => array( 'Coolpad', '8190' ),
863
  '8190Q' => array( 'Coolpad', '8190' ),
864
+ 'Coolpad8198T' => array( 'Coolpad', '8198' ),
865
+ 'Coolpad 8297' => array( 'Coolpad', '8297' ),
866
+ 'Coolpad 8297W' => array( 'Coolpad', '8297' ),
867
+ 'Coolpad8297W' => array( 'Coolpad', '8297' ),
868
  '8720' => array( 'Coolpad', '8720' ),
869
+ '8720L' => array( 'Coolpad', '8720' ),
870
+ 'Coolpad 8720L' => array( 'Coolpad', '8720' ),
871
+ 'Coolpad8720Q' => array( 'Coolpad', '8720' ),
872
+ 'Coolpad8750' => array( 'Coolpad', '8750' ),
873
  'Coolpad 8809' => array( 'Coolpad', '8809' ),
874
  'Coolpad 8810' => array( 'Coolpad', '8810' ),
875
  '8810' => array( 'Coolpad', '8810' ),
876
  'Coolpad 8811' => array( 'Coolpad', '8811' ),
877
  'Coolpad 8860!' => array( 'Coolpad', '8860' ),
878
  'Coolpad 8870!' => array( 'Coolpad', '8870' ),
879
+ 'Coolpad8920' => array( 'Coolpad', '8920' ),
880
  'Coolpad 9070' => array( 'Coolpad', '9070' ),
881
  'Coolpad 9080W' => array( 'Coolpad', '9080' ),
882
  'Coolpad 9120' => array( 'Coolpad', '9120' ),
883
+ 'Coolpad 9150W' => array( 'Coolpad', '9150' ),
884
  'Coolpad 9900' => array( 'Coolpad', '9900' ),
885
  'Coolpad 9960' => array( 'Coolpad', '9960' ),
886
  'Coolpad 9970' => array( 'Coolpad', '9970' ),
887
+ 'Coolpad 9976!' => array( 'Coolpad', '9976' ),
888
  'CLP281X' => array( 'Craig', 'CLP281x', TYPE_TABLET ),
889
  'CMP741d' => array( 'Craig', 'CMP741d', TYPE_TABLET ),
890
  'CMP741E' => array( 'Craig', 'CMP741e', TYPE_TABLET ),
893
  'ZiiLABS ZiiO10 ' => array( 'Creative', 'ZiiO 10', TYPE_TABLET ),
894
  'CTP828BT' => array( 'Cresta', 'CTP828BT', TYPE_TABLET ),
895
  'Cross A2' => array( 'Cross', 'A2' ),
896
+ 'CROSS A5' => array( 'Cross', 'A5' ),
897
  'Cross A7*' => array( 'Cross', 'A7' ),
898
  'CROSS A7S' => array( 'Cross', 'A7S' ),
899
  'CROSS A10' => array( 'Cross', 'A10' ),
900
+ 'CROSS A11' => array( 'Cross', 'A11' ),
901
+ 'CROSS-A20G' => array( 'Cross', 'A20G' ),
902
  'CROSS A27' => array( 'Cross', 'A27' ),
903
  'CROSS A28' => array( 'Cross', 'A28' ),
904
  'CROSS A66' => array( 'Cross', 'A66' ),
905
  'CROSS A88' => array( 'Cross', 'A88' ),
906
+ 'CROSS AT1G' => array( 'Cross', 'AT1G', TYPE_TABLET ),
907
  'CUBOT GT99' => array( 'Cubot', 'GT99' ),
908
  'CUBE K8GT A' => array( 'Cube', 'K8GT A', TYPE_TABLET ),
909
  'CUBE K8GT B' => array( 'Cube', 'K8GT B', TYPE_TABLET ),
938
  'U23GT-S' => array( 'Cube', 'U23GT S', TYPE_TABLET ),
939
  'U25GT' => array( 'Cube', 'U25GT', TYPE_TABLET ),
940
  'U25GT PRO' => array( 'Cube', 'U25GT Pro', TYPE_TABLET ),
941
+ 'U30GT C4' => array( 'Cube', 'U30GT C4', TYPE_TABLET ),
942
  'U30GT-H' => array( 'Cube', 'U30GT H', TYPE_TABLET ),
943
  'U30GT-M' => array( 'Cube', 'U30GT M', TYPE_TABLET ),
944
+ 'U30GTm2' => array( 'Cube', 'U30GT M2', TYPE_TABLET ),
945
  'U30GT MINI' => array( 'Cube', 'U30GT Mini', TYPE_TABLET ),
946
  'U30GT-mini' => array( 'Cube', 'U30GT Mini', TYPE_TABLET ),
947
+ 'u30gt2' => array( 'Cube', 'U30GT2', TYPE_TABLET ),
948
  'U30GT 2' => array( 'Cube', 'U30GT2', TYPE_TABLET ),
949
  'U30GT-2' => array( 'Cube', 'U30GT2', TYPE_TABLET ),
950
+ 'U35GT2' => array( 'Cube', 'U35GT2', TYPE_TABLET ),
951
  'U39GT' => array( 'Cube', 'U39GT', TYPE_TABLET ),
952
+ 'U51GT' => array( 'Cube', 'U51GT', TYPE_TABLET ),
953
+ 'U51GT-W' => array( 'Cube', 'U51GT W', TYPE_TABLET ),
954
  'U55GT' => array( 'Cube', 'U55GT', TYPE_TABLET ),
955
  'CUBE Q7PRO' => array( 'Cube', 'Q7 Pro', TYPE_TABLET ),
956
  'CUBE Q7PRO J' => array( 'Cube', 'Q7 Pro', TYPE_TABLET ),
957
  'LT8088' => array( 'Curtis', 'Klu LT8088', TYPE_TABLET ),
958
  'Cydle M7!' => array( 'Cydle', 'M7 MultiPAD', TYPE_TABLET ),
959
+ 'EVDO1000' => array( 'Cyrus', 'EVDO 1000' ),
960
  'DAKELE MC001' => array( 'Dakele', 'MC001' ),
961
  'MC002' => array( 'Dakele', 'MC002' ),
962
  'EvoPAD A7000' => array( 'Dark', 'EvoPad A7000', TYPE_TABLET ),
982
  'Venue 7 3730' => array( 'Dell', 'Venue 7', TYPE_TABLET ),
983
  'Venue 7 WWAN' => array( 'Dell', 'Venue 7', TYPE_TABLET ),
984
  'Venue 8 WiFi' => array( 'Dell', 'Venue 8', TYPE_TABLET ),
985
+ 'Venue 8 3830' => array( 'Dell', 'Venue 8', TYPE_TABLET ),
986
  'Dell XCD35' => array( 'Dell', 'XCD35' ),
987
  'XCD35' => array( 'Dell', 'XCD35' ),
988
+ 'DEM752HCF' => array( 'Denver', 'TAC-7018', TYPE_TABLET ),
989
  'TAC-70041' => array( 'Denver', 'TAC-70041', TYPE_TABLET ),
990
  'deovo V5' => array( 'deovo', 'V5' ),
991
  'DIT1010' => array( 'Difrnce', 'DIT1010', TYPE_TABLET ),
992
+ 'DIT101201' => array( 'Difrnce', 'DIT101201', TYPE_TABLET ),
993
  'DIT102201' => array( 'Difrnce', 'DIT102201', TYPE_TABLET ),
994
  'Digma iDj7!' => array( 'Digma', 'iDj7', TYPE_TABLET ),
995
  'iDj7n' => array( 'Digma', 'iDj7n', TYPE_TABLET ),
998
  'iDx7 Type2 4' => array( 'Digma', 'iDx7', TYPE_TABLET ),
999
  'iDx10!' => array( 'Digma', 'iDx10', TYPE_TABLET ),
1000
  'DIGMA iDsD8!' => array( 'Digma', 'iDsD8', TYPE_TABLET ),
1001
+ 'DIGMA iDsD10!' => array( 'Digma', 'iDsD10', TYPE_TABLET ),
1002
  'iDxD4' => array( 'Digma', 'iDxD4' ),
1003
  'iDxD7 3G' => array( 'Digma', 'iDxD7', TYPE_TABLET ),
1004
  'DISTAB9000R' => array( 'Disgo', 'Distab 9000R', TYPE_TABLET ),
1015
  'AirTab P83' => array( 'DNS', 'AirTab P83', TYPE_TABLET ),
1016
  'DPS Dream 9' => array( 'DPS', 'Dream 9', TYPE_TABLET ),
1017
  'domod G20' => array( 'Domod', 'G20' ),
1018
+ 'Doro Liberto 820' => array( 'Doro', 'Liberto 820' ),
1019
  'M975' => array( 'Double Power', 'M975', TYPE_TABLET ),
1020
  'TD-1010' => array( 'Double Power', 'TD-1010', TYPE_TABLET ),
1021
  'Tablet-P27' => array( 'DracoTek', 'P27 Tablet', TYPE_TABLET ),
1022
  'ACM3066-8' => array( 'MY|eebo', 'Color Tablet', TYPE_TABLET ),
1023
  'SUPREME IPS Dual Core X200' => array( 'E-Boda', 'Supreme IPS Dual Core X200', TYPE_TABLET ),
1024
+ 'Revo R80' => array( 'E-Boda', 'Revo R80' ),
1025
  'Storm V100' => array( 'E-Boda', 'Storm V100' ),
1026
  'EBEN T7' => array( 'EBEN', 'T7', TYPE_TABLET ),
1027
  'EBEST T5' => array( 'EBEST', 'T5' ),
1039
  'M4301' => array( 'Eston', 'MID M4301', 'media' ),
1040
  'P10AN' => array( 'Exper', 'Easypad P10AN', TYPE_TABLET ),
1041
  'Explay Advance' => array( 'Explay', 'Advance' ),
1042
+ 'X-tremer' => array( 'Explay', 'X-tremer' ),
1043
  'Informer-702' => array( 'Explay', 'Informer 702', TYPE_TABLET ),
1044
  'informer 921' => array( 'Explay', 'Informer 921', TYPE_TABLET ),
1045
  'Explay Surfer 7.02' => array( 'Explay', 'Surfer 7.02', TYPE_TABLET ),
1046
+ 'Surfer 7.04' => array( 'Explay', 'Surfer 7.04', TYPE_TABLET ),
1047
  'Surfer 7.31 3G' => array( 'Explay', 'Surfer 7.31 3G', TYPE_TABLET ),
1048
  'Surfer 7.32 3G' => array( 'Explay', 'Surfer 7.32 3G', TYPE_TABLET ),
1049
+ 'Surfer 7.34' => array( 'Explay', 'Surfer 7.34', TYPE_TABLET ),
1050
  'Surfer 8 02' => array( 'Explay', 'Surfer 8.02', TYPE_TABLET ),
1051
+ 'Surfer 8.31 3G' => array( 'Explay', 'Surfer 8.31 3G', TYPE_TABLET ),
1052
  'Surfer 10.11' => array( 'Explay', 'Surfer 10.11', TYPE_TABLET ),
1053
  'GT-H9500' => array( 'Feiteng', 'GT-H9500' ),
1054
  'iOCEAN X7' => array( 'FHD', 'iOCEAN X7' ),
1068
  '(Fly )?IQ280!' => array( 'Fly', 'IQ280 Tech' ),
1069
  '(Fly )?IQ285!' => array( 'Fly', 'IQ285 Turbo' ),
1070
  '(Fly )?IQ430!' => array( 'Fly', 'IQ430 Evoke' ),
1071
+ '(Fly )?IQ431!' => array( 'Fly', 'IQ431 Glory' ),
1072
  '(Fly )?IQ440!' => array( 'Fly', 'IQ440 Energie' ),
1073
  '(Fly )?IQ441!' => array( 'Fly', 'IQ441 Radiance' ),
1074
  '(Fly )?IQ442!' => array( 'Fly', 'IQ442 Miracle' ),
1075
  '(Fly )?IQ443!' => array( 'Fly', 'IQ443 Trend' ),
1076
  '(Fly )?IQ444!' => array( 'Fly', 'IQ444 Diamond' ),
1077
  '(Fly )?IQ446!' => array( 'Fly', 'IQ446 Magic' ),
1078
+ '(Fly )?IQ449!' => array( 'Fly', 'IQ449 Pronto' ),
1079
  '(Fly )?IQ450!' => array( 'Fly', 'IQ450 Horizon' ),
1080
  '(Fly )?IQ451!' => array( 'Fly', 'IQ451 Vista' ),
1081
+ '(Fly )?IQ454!' => array( 'Fly', 'IQ454 Evo Tech 1' ),
1082
  'F600' => array( 'Flying', 'F600' ),
1083
  'BC1003' => array( 'Flytouch', 'BC1003', TYPE_TABLET ),
1084
  'ifive X2' => array( 'FNF', 'iFive X2', TYPE_TABLET ),
1095
  'F-01D' => array( 'Fujitsu', 'Arrows Tab LTE', TYPE_TABLET ),
1096
  'F-01F' => array( 'Fujitsu', 'Arrows NX F' ),
1097
  'F-02E' => array( 'Fujitsu', 'Arrows X' ),
1098
+ 'F-02F' => array( 'Fujitsu', 'Arrows Tab F-02F', TYPE_TABLET ),
1099
  'F-03D' => array( 'Fujitsu', 'Arrows Kiss' ),
1100
  'F-03E' => array( 'Fujitsu', 'Arrows Kiss' ),
1101
  'F-04E' => array( 'Fujitsu', 'Arrows V' ),
1102
+ 'F-04F' => array( 'Fujitsu', 'F-04F' ),
1103
  'F-05D' => array( 'Fujitsu', 'Arrows X LTE' ),
1104
  'F-05E' => array( 'Fujitsu', 'Arrows Tab' ),
1105
  'F-06E' => array( 'Fujitsu', 'Arrows NX' ),
1115
  'f12bob' => array( 'Fujitsu', 'F12bob' ),
1116
  'FJL21' => array( 'Fujitsu', 'Arrows ef FJL21' ),
1117
  'FJL22' => array( 'Fujitsu', 'Arrows Z FJL22' ),
1118
+ 'FJT21' => array( 'Fujitsu', 'Arrows Tab FJT21', TYPE_TABLET ),
1119
  'M532' => array( 'Fujitsu', 'Stylistic M532', TYPE_TABLET ),
1120
  'Garminfone' => array( 'Garmin-Asus', 'Garminfone' ),
1121
  'Garmin-Asus A10' => array( 'Garmin-Asus', 'Nuvifone A10' ),
1122
  'Garmin-Asus A50' => array( 'Garmin-Asus', 'Nuvifone A50' ),
1123
  'TPA60W' => array( 'Gateway', 'TPA60W', TYPE_TABLET ),
1124
+ 'GP-KEON' => array( 'Geeksphone', 'Keon'),
1125
  'Geeksphone ZERO' => array( 'Geeksphone', 'ZERO'),
1126
  'Gemei G2' => array( 'Gemei', 'G2', TYPE_TABLET ),
1127
  'Gemei G3' => array( 'Gemei', 'G3', TYPE_TABLET ),
1130
  'GT-7240' => array( 'Genesis', 'Tab GT-7240', TYPE_TABLET ),
1131
  'GT-7240R' => array( 'Genesis', 'Tab GT-7240R', TYPE_TABLET ),
1132
  'GFIVE Bravo' => array( 'GFive', 'Bravo' ),
1133
+ 'GHIA 29214P' => array( 'Ghia', 'Any 29214P', TYPE_TABLET ),
1134
  'GSmart Aku A1' => array( 'Gigabyte', 'GSmart Aku A1' ),
1135
  'GSmart G1310' => array( 'Gigabyte', 'GSmart G1310' ),
1136
  'GSmart G1315!' => array( 'Gigabyte', 'GSmart G1315' ),
1146
  'GIGABYTE GSmart Rio R1' => array( 'Gigabyte', 'GSmart Rio R1' ),
1147
  'GSmart Sierra S1' => array( 'Gigabyte', 'GSmart Sierra S1' ),
1148
  'Gigabyte TB100' => array( 'Gigabyte', 'TB100', TYPE_TABLET ),
1149
+ 'Gigaset QV830' => array( 'Gigaset', 'QV830', TYPE_DECT ),
1150
+ 'Gigaset QV1030' => array( 'Gigaset', 'QV1030', TYPE_DECT ),
1151
  'GIO-GiONEE C500' => array( 'Gionee', 'C500' ),
1152
  'GIO-GiONEE C600' => array( 'Gionee', 'C600' ),
1153
  'GiONEE-E6!' => array( 'Gionee', 'E6' ),
1154
+ 'GiONEE-E7!' => array( 'Gionee', 'E7' ),
1155
  'GN100' => array( 'Gionee', 'GN100' ),
1156
  'GN100T' => array( 'Gionee', 'GN100T' ),
1157
  'GN105' => array( 'Gionee', 'GN105' ),
1174
  'GN800' => array( 'Gionee', 'GN800' ),
1175
  'GN818T' => array( 'Gionee', 'GN818T' ),
1176
  'GN858' => array( 'Gionee', 'GN858' ),
1177
+ 'GN868' => array( 'Gionee', 'GN868' ),
1178
+ 'GiONEE-GN9002!' => array( 'Gionee', 'GN9002' ),
1179
+ 'GiONEE-GN9004!' => array( 'Gionee', 'GN9004' ),
1180
  'GIONEE Ctrl V1' => array( 'Gionee', 'CTRL V1' ),
1181
  'GIONEE Ctrl V4' => array( 'Gionee', 'CTRL V4' ),
1182
  'Pioneer P2' => array( 'Gionee', 'Pioneer P2' ),
1206
  'HE-E760' => array( 'Haier', 'E760' ),
1207
  'Haier-HT-I617' => array( 'Haier', 'I617' ),
1208
  'HT-I617' => array( 'Haier', 'I617' ),
1209
+ 'HT-I860' => array( 'Haier', 'I860' ),
1210
+ 'HT-I928' => array( 'Haier', 'I928' ),
1211
  'Haier HW-N86W' => array( 'Haier', 'N86W' ),
1212
  'Haier-N88W' => array( 'Haier', 'N88W' ),
1213
  'Haier HW-W718' => array( 'Haier', 'W718' ),
1232
  'H7500+' => array( 'Hero', 'H7500+' ),
1233
  'H9500' => array( 'Hero', 'H9500' ),
1234
  'MID Ser(ai|ia)ls!' => array( 'Herotab', 'C8', TYPE_TABLET ),
1235
+ 'Alpha Ice' => array( 'Highscreen', 'Alpha Ice' ),
1236
  'Cosmo' => array( 'Highscreen', 'Cosmo', TYPE_TABLET ),
1237
  'COSMO DUO' => array( 'Highscreen', 'Cosmo Duo', TYPE_TABLET ),
1238
  'Explosion' => array( 'Highscreen', 'Explosion' ),
1254
  'Hisense T92' => array( 'Hisense', 'T92' ),
1255
  'HS-T96' => array( 'Hisense', 'T96' ),
1256
  'HS-T818' => array( 'Hisense', 'T818' ),
1257
+ 'HS-T820' => array( 'Hisense', 'T820' ),
1258
  'HS-T830' => array( 'Hisense', 'T830' ),
1259
  'HS-T909' => array( 'Hisense', 'T909' ),
1260
  'HS-T912' => array( 'Hisense', 'T912' ),
1270
  'E860' => array( 'Hisense', 'E860' ),
1271
  'HS-E910' => array( 'Hisense', 'E910' ),
1272
  'HS-E912!' => array( 'Hisense', 'E912' ),
1273
+ 'E912' => array( 'Hisense', 'E912' ),
1274
+ 'HS-E913' => array( 'Hisense', 'E913' ),
1275
  'HS-E920' => array( 'Hisense', 'E920' ),
1276
  'HS-E926' => array( 'Hisense', 'E926' ),
1277
  'HS-E930' => array( 'Hisense', 'E930' ),
1278
  'HS-E956Q' => array( 'Hisense', 'E956' ),
1279
  'EG98' => array( 'Hisense', 'EG98' ),
1280
+ 'EG680' => array( 'Hisense', 'EG680' ),
1281
  'HS-EG900' => array( 'Hisense', 'EG900' ),
1282
  'HS-EG901' => array( 'Hisense', 'EG901' ),
1283
  'HS-EG906' => array( 'Hisense', 'EG906' ),
1289
  'HS-EG958' => array( 'Hisense', 'EG958' ),
1290
  'HS-EG970' => array( 'Hisense', 'EG970' ),
1291
  'HS-EG980' => array( 'Hisense', 'EG980' ),
1292
+ 'HS-EG981' => array( 'Hisense', 'EG981' ),
1293
  'HS-ET919' => array( 'Hisense', 'ET919' ),
1294
  'EG968B' => array( 'Hisense', 'EG968B' ),
1295
  'E170BS' => array( 'Hisense', 'E170BS', TYPE_TABLET ),
1296
+ 'E270BSA' => array( 'Hisense', 'Sero 7 Lite', TYPE_TABLET ),
1297
  'M470BSA' => array( 'Hisense', 'Sero 7 Pro', TYPE_TABLET ),
1298
  'M470BSE' => array( 'Hisense', 'Sero 7 Pro', TYPE_TABLET ),
1299
  'xt880b' => array( 'Hisense', 'XT880', TYPE_TELEVISION ),
1311
  'HOSIN V60' => array( 'Hosin', 'V60' ),
1312
  'HP 7' => array( 'HP', 'Slate 7', TYPE_TABLET ),
1313
  'HP Slate 7' => array( 'HP', 'Slate 7', TYPE_TABLET ),
1314
+ 'HP Slate 7 Plus' => array( 'HP', 'Slate 7 Plus', TYPE_TABLET ),
1315
+ 'HP Slate 7 HD' => array( 'HP', 'Slate 7 HD', TYPE_TABLET ),
1316
+ 'HP Slate7 Extreme' => array( 'HP', 'Slate 7 Extreme', TYPE_TABLET ),
1317
+ 'HP Slate 8 Pro' => array( 'HP', 'Slate 8 Pro', TYPE_TABLET ),
1318
+ 'HP Slate 10 HD' => array( 'HP', 'Slate 10 HD', TYPE_TABLET ),
1319
  'Slate 21' => array( 'HP', 'Slate 21', TYPE_TABLET ),
1320
  'HP SlateBook 10 x2 PC' => array( 'HP', 'SlateBook 10 x2', TYPE_TABLET ),
1321
+ 'HP SlateBook 14 PC' => array( 'HP', 'SlateBook 14 HD', TYPE_TABLET ),
1322
+ 'HP Split 13 x2 PC' => array( 'HP', 'Split 13 x2', TYPE_TABLET ),
1323
  '(HP )?Touchpad!' => array( 'HP', 'TouchPad', TYPE_TABLET ),
1324
  '(cm|aokp) tenderloin!' => array( 'HP', 'TouchPad', TYPE_TABLET ),
1325
  'Amaze 4G' => array( 'HTC', 'Amaze 4G' ),
1330
  'HTC ?ChaCha!' => array( 'HTC', 'ChaCha' ),
1331
  'HTC A810e' => array( 'HTC', 'ChaCha' ),
1332
  'HTC A9188!' => array( 'HTC', 'Cullinan' ),
1333
+ 'HTC6435LRA' => array( 'HTC', 'Deluxe' ),
1334
  'HTC Desire 200' => array( 'HTC', 'Desire 200' ),
1335
  'HTC Desire 300' => array( 'HTC', 'Desire 300' ),
1336
+ 'HTC D310w' => array( 'HTC', 'Desire 310' ),
1337
+ 'HTC Desire 310' => array( 'HTC', 'Desire 310' ),
1338
+ 'HTC Desire 310 dual sim' => array( 'HTC', 'Desire 310' ),
1339
  'HTC Desire 500' => array( 'HTC', 'Desire 500' ),
1340
  'HTC Desire 500 dual sim' => array( 'HTC', 'Desire 500' ),
1341
+ 'HTC D516(d|t|w)!' => array( 'HTC', 'Desire 516' ),
1342
  'HTC Desire 600' => array( 'HTC', 'Desire 600' ),
1343
+ 'HTC Desire 600c dual sim' => array( 'HTC', 'Desire 600c' ),
1344
  'HTC Desire 601' => array( 'HTC', 'Desire 601' ),
1345
+ 'HTC 0P4E!' => array( 'HTC', 'Desire 601' ),
1346
  'HTC 606w' => array( 'HTC', 'Desire 606w' ),
1347
  'HTC 608t' => array( 'HTC', 'Desire 608t' ),
1348
  'HTC 609d' => array( 'HTC', 'Desire 609d' ),
1349
+ 'HTC D610x' => array( 'HTC', 'Desire 610' ),
1350
  'HTC 619d' => array( 'HTC', 'Desire 619d' ),
1351
  'HTC 709d' => array( 'HTC', 'Desire 709d' ),
1352
+ 'HTC D816(d|t|w|x)!' => array( 'HTC', 'Desire 816' ),
1353
+ 'HTC Desire 816 dual sim' => array( 'HTC', 'Desire 816' ),
1354
+ 'HTC 5088' => array( 'HTC', 'Desire 5088' ),
1355
+ 'HTC 7088' => array( 'HTC', 'Desire 7088' ),
1356
  'HTC Desire C' => array( 'HTC', 'Desire C' ),
1357
  'HTC H1000C' => array( 'HTC', 'Desire C' ),
1358
  'HTC A320e' => array( 'HTC', 'Desire C' ),
1359
  'HTC Desire ?HD!' => array( 'HTC', 'Desire HD' ),
1360
  'HTC A91(91|92)!' => array( 'HTC', 'Desire HD' ),
1361
  'HTC PM6014' => array( 'HTC', 'Desire L' ),
1362
+ 'HTC Desire P' => array( 'HTC', 'Desire P' ),
1363
  'HTC ?Desire ?S( |$)!' => array( 'HTC', 'Desire S' ),
1364
  'HTC S510(b|e)!' => array( 'HTC', 'Desire S' ),
1365
  'HTC Desire Saga' => array( 'HTC', 'Desire S' ),
1379
  'HTC T329d' => array( 'HTC', 'T329d' ),
1380
  'HTC ?Desire!' => array( 'HTC', 'Desire' ),
1381
  'HTC Bravo' => array( 'HTC', 'Desire' ),
1382
+ 'HTC Bravo C' => array( 'HTC', 'Desire' ),
1383
  'HTC eris' => array( 'HTC', 'Desire' ),
1384
  'HTC A81(81|83)!' => array( 'HTC', 'Desire' ),
1385
  'HTC ?X06HT!' => array( 'HTC', 'Desire' ),
1404
  'HTC A31(0b|0e)!' => array( 'HTC', 'Explorer' ),
1405
  'HTC Pico Incredible HD' => array( 'HTC', 'Explorer' ),
1406
  'HTC first' => array( 'HTC', 'First' ),
1407
+ 'HTC PM33100' => array( 'HTC', 'First' ),
1408
  'HTC Flyer!' => array( 'HTC', 'Flyer', TYPE_TABLET ),
1409
  'HTC P51(0e|2|5e)!' => array( 'HTC', 'Flyer', TYPE_TABLET ),
1410
  'HTC Gratia!' => array( 'HTC', 'Gratia' ),
1434
  'HTC X920e' => array( 'HTC', 'J Butterfly' ),
1435
  'HTC Butterfly' => array( 'HTC', 'J Butterfly' ),
1436
  'HTC J Butterfly' => array( 'HTC', 'J Butterfly' ),
1437
+ 'HTC J One' => array( 'HTC', 'J One' ),
1438
  'HTC Butterfly s' => array( 'HTC', 'Butterfly S' ),
1439
  'HTC PO68' => array( 'HTC', 'Butterfly S' ),
1440
  'HTC 9060' => array( 'HTC', 'Butterfly S' ),
1441
  'HTC 9088' => array( 'HTC', 'Butterfly S' ),
1442
  'HTC 909d' => array( 'HTC', 'Butterfly S' ),
1443
+ '9088' => array( 'HTC', 'Butterfly S' ),
1444
+ '909d' => array( 'HTC', 'Butterfly S' ),
1445
  'HTC P715a' => array( 'HTC', 'Jetstream', TYPE_TABLET ),
1446
  'HTC PG09410' => array( 'HTC', 'Jetstream', TYPE_TABLET ),
1447
  'HTC Legend' => array( 'HTC', 'Legend' ),
1478
  'HTC ?One XL!' => array( 'HTC', 'One XL' ),
1479
  'HTC S720t!' => array( 'HTC', 'One XT' ),
1480
  'HTC 801e' => array( 'HTC', 'One' ),
1481
+ 'HTC 801s' => array( 'HTC', 'One' ),
1482
  'HTC 802d' => array( 'HTC', 'One' ),
1483
+ 'HTC 802t!' => array( 'HTC', 'One' ),
1484
  'HTC 802w' => array( 'HTC', 'One' ),
1485
  'HTC PN071' => array( 'HTC', 'One' ),
1486
  'HTC PN072' => array( 'HTC', 'One' ),
1489
  'HTC6500LVW' => array( 'HTC', 'One' ),
1490
  'HTC6500LVW 4G' => array( 'HTC', 'One' ),
1491
  'HTC One 801e' => array( 'HTC', 'One' ),
1492
+ 'HTC One 801s' => array( 'HTC', 'One' ),
1493
  'HTC One dual 802d' => array( 'HTC', 'One' ),
1494
  'HTC One dual sim' => array( 'HTC', 'One' ),
1495
  '801a' => array( 'HTC', 'One' ),
1500
  'HTC PO58220' => array( 'HTC', 'One Mini' ),
1501
  'HTC One mini' => array( 'HTC', 'One Mini' ),
1502
  'HTC 809d' => array( 'HTC', 'One Max' ),
1503
+ 'HTC 8060' => array( 'HTC', 'One Max' ),
1504
+ 'HTC 8160' => array( 'HTC', 'One Max' ),
1505
+ 'HTC ?0P3P[0-9]!' => array( 'HTC', 'One Max' ),
1506
  'HTC6600LVW' => array( 'HTC', 'One Max' ),
1507
+ 'HTC6600LVW 4G' => array( 'HTC', 'One Max' ),
1508
  'HTC One max' => array( 'HTC', 'One Max' ),
1509
+ 'HTC 0P6B!' => array( 'HTC', 'One (M8)' ),
1510
+ 'HTC One M8' => array( 'HTC', 'One (M8)' ),
1511
+ 'HTC M8St' => array( 'HTC', 'One (M8)' ),
1512
+ 'HTC M8t' => array( 'HTC', 'One (M8)' ),
1513
+ 'HTC M8x' => array( 'HTC', 'One (M8)' ),
1514
+ 'HTC6525LVW' => array( 'HTC', 'One (M8)' ),
1515
+ '831C' => array( 'HTC', 'One (M8)' ),
1516
+ 'HTC 0P8B!' => array( 'HTC', 'One Mini 2' ),
1517
+ 'HTC M8MINx' => array( 'HTC', 'One Mini 2' ),
1518
  'HTC Raider!' => array( 'HTC', 'Raider 4G' ),
1519
  'HTC Holiday' => array( 'HTC', 'Raider 4G' ),
1520
  'HTC X710(a|e|s)!' => array( 'HTC', 'Raider 4G' ),
1656
  'Z710e' => array( 'HTC', 'Sensation' ),
1657
  'T9199h' => array( 'HTC', 'T9199h' ),
1658
  'ADR6200' => array( 'HTC', 'Droid Eris' ),
1659
+ 'ADR6225' => array( 'HTC', 'Wildfire 6225' ),
1660
  'HTCADR6290US' => array( 'HTC', 'One V' ),
1661
  'ADR6300' => array( 'HTC', 'Droid Incredible' ),
1662
  'ADR6325!' => array( 'HTC', 'Merge' ),
1697
  'MediaPad 7 Vivid' => array( 'Huawei', 'MediaPad 7 Vivid', TYPE_TABLET ),
1698
  'MediaPad 7 Vogue' => array( 'Huawei', 'MediaPad 7 Vogue', TYPE_TABLET ),
1699
  'MediaPad 7 Youth' => array( 'Huawei', 'MediaPad 7 Youth', TYPE_TABLET ),
1700
+ 'MediaPad 7 Youth2' => array( 'Huawei', 'MediaPad 7 Youth 2', TYPE_TABLET ),
1701
+ 'MediaPad 7 Youth 2' => array( 'Huawei', 'MediaPad 7 Youth 2', TYPE_TABLET ),
1702
+ 'MediaPad 8 Vogue' => array( 'Huawei', 'MediaPad 8 Vogue', TYPE_TABLET ),
1703
  'MediaPad 10 FHD' => array( 'Huawei', 'MediaPad 10', TYPE_TABLET ),
1704
  'MediaPad 10 LINK' => array( 'Huawei', 'MediaPad 10 Link', TYPE_TABLET ),
1705
+ 'MediaPad 10 Link+' => array( 'Huawei', 'MediaPad 10 Link', TYPE_TABLET ),
1706
+ 'MediaPad M1 8.0' => array( 'Huawei', 'MediaPad M1', TYPE_TABLET ),
1707
+ 'MediaPad T1 8.0' => array( 'Huawei', 'MediaPad T1', TYPE_TABLET ),
1708
+ 'MediaPad X1 7.0' => array( 'Huawei', 'MediaPad X1', TYPE_TABLET ),
1709
+ 'MediaPad X1' => array( 'Huawei', 'MediaPad X1', TYPE_TABLET ),
1710
  'Huawei A199' => array( 'Huawei', 'A199' ),
1711
+ 'HUAWEI B199' => array( 'Huawei', 'B199' ),
1712
  'Huawei C8500!' => array( 'Huawei', 'C8500' ),
1713
  'Huawei C8600' => array( 'Huawei', 'C8600' ),
1714
  'Huawei C8650!' => array( 'Huawei', 'C8650' ),
1717
  'Huawei C8810' => array( 'Huawei', 'Ascend G300' ),
1718
  'Huawei C8812!' => array( 'Huawei', 'Ascend C8812' ),
1719
  'Huawei C8813!' => array( 'Huawei', 'Ascend C8813' ),
1720
+ 'Huawei C8815!' => array( 'Huawei', 'Ascend C8815' ),
1721
+ 'HUAWEI C8816!' => array( 'Huawei', 'Ascend C8816' ),
1722
+ 'HUAWEI C8817!' => array( 'Huawei', 'C8817' ),
1723
  'Huawei C8825D' => array( 'Huawei', 'Ascend G330C' ),
1724
  'Huawei C8826D' => array( 'Huawei', 'Ascend G500C' ),
1725
  'Huawei C8860E' => array( 'Huawei', 'Honor' ),
1726
  'Huawei C8950D' => array( 'Huawei', 'Honor+' ),
1727
  'Huawei G300' => array( 'Huawei', 'Ascend G300' ),
1728
+ 'Ascend G330' => array( 'Huawei', 'Ascend G330' ),
1729
+ 'HUAWEI G350!' => array( 'Huawei', 'Ascend G350' ),
1730
+ 'Ascend G510' => array( 'Huawei', 'Ascend G510' ),
1731
  'Huawei G525!' => array( 'Huawei', 'Ascend G525' ),
1732
  'Huawei G610!' => array( 'Huawei', 'Ascend G610' ),
1733
+ 'Huawei G630!' => array( 'Huawei', 'Ascend G630' ),
1734
+ 'G630-U20' => array( 'Huawei', 'Ascend G630' ),
1735
+ 'HUAWEI G750!' => array( 'Huawei', 'Ascend G750' ),
1736
  'Huawei G7500' => array( 'Huawei', 'G7500' ),
1737
+ 'CM990' => array( 'Huawei', 'Evolución 3' ),
1738
+ 'HUAWEI CM990' => array( 'Huawei', 'Evolución 3' ),
1739
  'Huawei H867G' => array( 'Huawei', 'H867G' ),
1740
+ 'HUAWEI H868C' => array( 'Huawei', 'Glory' ),
1741
  'Huawei H881C' => array( 'Huawei', 'Ascend Plus' ),
1742
  'Huawei M835' => array( 'Huawei', 'M835' ),
1743
  'Huawei M860' => array( 'Huawei', 'Ascend' ),
1746
  'Huawei M931' => array( 'Huawei', 'M931' ),
1747
  'Huawei MT1-U06' => array( 'Huawei', 'Ascend Mate' ),
1748
  'Huawei MT1-T00' => array( 'Huawei', 'Ascend Mate' ),
1749
+ 'HUAWEI MT2-C00' => array( 'Huawei', 'Ascend Mate 2' ),
1750
+ 'HUAWEI MT2-L05' => array( 'Huawei', 'Ascend Mate 2' ),
1751
+ 'MT2L03' => array( 'Huawei', 'Ascend Mate 2' ),
1752
  'Huawei S8520' => array( 'Huawei', 'S8520' ),
1753
  'Huawei S8600' => array( 'Huawei', 'S8600' ),
1754
  'Huawei T8100' => array( 'Huawei', 'T8100' ),
1779
  'Huawei U8825D' => array( 'Huawei', 'Ascend G330D' ),
1780
  'Huawei U8825-1' => array( 'Huawei', 'Ascend G330' ),
1781
  'HUAWEI u8833' => array( 'Huawei', 'Ascend Y300' ),
1782
+ 'HUAWEI u8836d' => array( 'Huawei', 'Ascend G500' ),
1783
  'Huawei U8850' => array( 'Huawei', 'Vision' ),
1784
  'Huawei U8860' => array( 'Huawei', 'Honor' ),
1785
  'Huawei Honor' => array( 'Huawei', 'Honor' ),
1787
  'Huawei ?U9000!' => array( 'Huawei', 'Ascend X' ),
1788
  'Huawei U9508' => array( 'Huawei', 'Honor 2' ),
1789
  'Huawei ?U9508!' => array( 'Huawei', 'Honor 2 Quad-core' ),
1790
+ 'HUAWEI HN3-U00' => array( 'Huawei', 'Honor 3' ),
1791
  'HUAWEI HN3-U01' => array( 'Huawei', 'Honor 3' ),
1792
  'Huawei U9510!' => array( 'Huawei', 'Ascend D quad' ),
1793
  'Huawei D2-0082' => array( 'Huawei', 'Ascend D2' ),
1794
  'Huawei D2-2010' => array( 'Huawei', 'Ascend D2' ),
1795
+ 'HUAWEI G6-U00' => array( 'Huawei', 'Ascend G6' ),
1796
+ 'HUAWEI G6-U10' => array( 'Huawei', 'Ascend G6' ),
1797
  'Huawei P2-6011' => array( 'Huawei', 'Ascend P2' ),
1798
  'Huawei P2-6070' => array( 'Huawei', 'Ascend P2' ),
1799
+ 'Huawei P6-C00' => array( 'Huawei', 'Ascend P6' ),
1800
  'Huawei P6-U06' => array( 'Huawei', 'Ascend P6' ),
1801
+ 'HUAWEI P6S-U06' => array( 'Huawei', 'Ascend P6' ),
1802
+ 'HUAWEI P6 S-U06' => array( 'Huawei', 'Ascend P6' ),
1803
+ 'P6-U00' => array( 'Huawei', 'Ascend P6' ),
1804
+ 'P6-U06' => array( 'Huawei', 'Ascend P6' ),
1805
+ 'P6-T00' => array( 'Huawei', 'Ascend P6' ),
1806
  'Huawei P6-T00!' => array( 'Huawei', 'Ascend P6' ),
1807
+ 'Huawei EDGE' => array( 'Huawei', 'Ascend P6' ),
1808
+ 'HUAWEI Sophia-L07' => array( 'Huawei', 'Ascend P7' ),
1809
+ 'HUAWEI P7-L05!' => array( 'Huawei', 'Ascend P7' ),
1810
+ 'HUAWEI P7-L09!' => array( 'Huawei', 'Ascend P7' ),
1811
  'Huawei IDEOS U8500' => array( 'Huawei', 'IDEOS X2' ),
1812
  'Huawei IDEOS U8650' => array( 'Huawei', 'Sonic' ),
1813
  'Huawei IDEOS X3' => array( 'Huawei', 'IDEOS X3' ),
1821
  'Huawei G520!' => array( 'Huawei', 'Ascend G520' ),
1822
  'Huawei G606!' => array( 'Huawei', 'Ascend G606' ),
1823
  'Huawei G610!' => array( 'Huawei', 'Ascend G610' ),
1824
+ 'G610-U00' => array( 'Huawei', 'Ascend G610' ),
1825
+ 'G616-T00' => array( 'Huawei', 'Ascend G616' ),
1826
  'Huawei G620!' => array( 'Huawei', 'Ascend G620' ),
1827
  'Huawei G700!' => array( 'Huawei', 'Ascend G700' ),
1828
  'Huawei ?G716!' => array( 'Huawei', 'Ascend G716' ),
1829
  'Huawei G718!' => array( 'Huawei', 'Ascend G718' ),
1830
  'Huawei G730!' => array( 'Huawei', 'Ascend G730' ),
1831
  'Huawei Y210!' => array( 'Huawei', 'Ascend Y210' ),
1832
+ 'Y220-U10' => array( 'Huawei', 'Ascend Y220' ),
1833
+ 'Huawei Y ?220T!' => array( 'Huawei', 'Ascend Y220' ),
1834
+ 'Huawei Y-220T' => array( 'Huawei', 'Ascend Y220' ),
1835
+ 'HUAWEI Y220-T10' => array( 'Huawei', 'Ascend Y220' ),
1836
  'Huawei Y300!' => array( 'Huawei', 'Ascend Y300' ),
1837
  'Ascend Y300' => array( 'Huawei', 'Ascend Y300' ),
1838
  'Huawei Y301!' => array( 'Huawei', 'Ascend Y301' ),
1839
  'Huawei Y310!' => array( 'Huawei', 'Ascend Y310' ),
1840
  'Huawei Y320!' => array( 'Huawei', 'Ascend Y320' ),
1841
+ 'HUAWEI Y321!' => array( 'Huawei', 'Ascend Y321' ),
1842
  'Huawei Y500!' => array( 'Huawei', 'Ascend Y500' ),
1843
  'Huawei Y511!' => array( 'Huawei', 'Ascend Y511' ),
1844
  'Huawei Y516!' => array( 'Huawei', 'Ascend Y516' ),
1845
+ 'HUAWEI Y518!' => array( 'Huawei', 'Ascend Y518' ),
1846
  'Huawei Y530!' => array( 'Huawei', 'Ascend Y530' ),
1847
  'Huawei Ascend X' => array( 'Huawei', 'Ascend X' ),
1848
+ 'Huawei H30-T00!' => array( 'Huawei', 'Honor 3C' ),
1849
+ 'HUAWEI H30-C00!' => array( 'Huawei', 'Honor 3C' ),
1850
+ 'H30-T00' => array( 'Huawei', 'Honor 3C' ),
1851
+ 'H30-U10' => array( 'Huawei', 'Honor 3C' ),
1852
  'FUSIONideos' => array( 'Huawei', 'IDEOS' ),
1853
  'Gnappo Ideos' => array( 'Huawei', 'IDEOS' ),
1854
  'Ideos' => array( 'Huawei', 'IDEOS' ),
1964
  'AUXUS CoreX4 3G' => array( 'iBerry', 'Auxus CoreX4', TYPE_TABLET ),
1965
  'AUXUS Nuclea N1' => array( 'iBerry', 'Auxus Nuclea N1' ),
1966
  'NetTab iconBIT' => array( 'IconBit', 'NetTab', TYPE_TABLET ),
1967
+ 'NT-3702M' => array( 'IconBit', 'NetTab Matrix 3G Duo', TYPE_TABLET ),
1968
  'NetTAB Pocket' => array( 'IconBit', 'NetTab Pocket', TYPE_TABLET ),
1969
  'NetTAB RUNE' => array( 'IconBit', 'NetTab Rune', TYPE_TABLET ),
1970
  'NT-0801C' => array( 'IconBit', 'NetTab Skat RX', TYPE_TABLET ),
1984
  'Avvio 710' => array( 'Ilium', 'AVVIO 710' ),
1985
  'Avvio 735s' => array( 'Ilium', 'AVVIO 735' ),
1986
  'Ilium AVVIO 760' => array( 'Ilium', 'AVVIO 760' ),
1987
+ 'AVVIO 765' => array( 'Ilium', 'AVVIO 765' ),
1988
+ 'Avvio-775s' => array( 'Ilium', 'AVVIO 775' ),
1989
  'Avvio 790' => array( 'Ilium', 'AVVIO 790' ),
1990
  'Avvio 790s' => array( 'Ilium', 'AVVIO 790' ),
1991
+ 'Avvio 792' => array( 'Ilium', 'AVVIO 792' ),
1992
  'IMO S79' => array( 'IMO', 'Explorer S79' ),
1993
  'IMO S88' => array( 'IMO', 'Discovery S88' ),
1994
  'S88 DISCOVERY' => array( 'IMO', 'Discovery S88' ),
2002
  'IMO Z9' => array( 'IMO', 'Z9', TYPE_TABLET ),
2003
  'TX85' => array( 'iMuz', 'TX85', TYPE_TABLET ),
2004
  'i3000' => array( 'iNew', 'i3000' ),
2005
+ 'IN260' => array( 'InFocus', 'IN260' ),
2006
+ 'IN330' => array( 'InFocus', 'IN330' ),
2007
  'IN810' => array( 'InFocus', 'IN810' ),
2008
+ 'InFocus M320!' => array( 'InFocus', 'M320' ),
2009
  'M009F' => array( 'Infotmic', 'M009F' ),
2010
  'Dk1031' => array( 'Infotmic', 'Flytouch 3', TYPE_TABLET ),
2011
  'INHON PAPILIO G1' => array( 'Inhon', 'Papilio G1' ),
2012
  'innos i5' => array( 'Innos', 'i5' ),
2013
  'innos i6' => array( 'Innos', 'i6' ),
2014
  'innos i6C' => array( 'Innos', 'i6C' ),
2015
+ 'NS-14T002' => array( 'Insignia', 'Flex 8', TYPE_TABLET ),
2016
  'AZ210A' => array( 'Intel', 'AZ210A' ),
2017
  'AZ210B' => array( 'Intel', 'AZ210B' ),
2018
  'AZ510' => array( 'Intel', 'AZ510' ),
2030
  'ILT-MX100' => array( 'iRiver', 'Tab', TYPE_TABLET ),
2031
  'IVIO DE38' => array( 'Ivio', 'DE38' ),
2032
  'iwoo i900' => array( 'iwoo', 'i900' ),
2033
+ 'JIAYU F1' => array( 'Jiayu', 'F1' ),
2034
  'JY-G1' => array( 'Jiayu', 'G1' ),
2035
  'JY-G2' => array( 'Jiayu', 'G2' ),
2036
  'JY-G2L' => array( 'Jiayu', 'G2' ),
2041
  'G2S' => array( 'Jiayu', 'G2 Plus' ),
2042
  'JY-G3' => array( 'Jiayu', 'G3' ),
2043
  'Jiayu G3' => array( 'Jiayu', 'G3' ),
2044
+ 'JY-G3C' => array( 'Jiayu', 'G3C' ),
2045
  'JY-G4' => array( 'Jiayu', 'G4' ),
2046
+ 'JY-G4C' => array( 'Jiayu', 'G4C' ),
2047
  'JT-Smart PC01' => array( 'Joy-IT', 'JT-Smart PC-01' ),
2048
  'JJ5S+' => array( 'Jugate', 'JJ5S+' ),
2049
  'JC-A107' => array( 'JuiCell', 'JC-A107' ),
2057
  'Karbonn A2+' => array( 'Karbonn', 'A2+' ),
2058
  'Karbonn A4' => array( 'Karbonn', 'A4' ),
2059
  'Karbonn A5' => array( 'Karbonn', 'A5' ),
2060
+ 'Karbonn A5i' => array( 'Karbonn', 'A5i' ),
2061
  'Karbonn A6' => array( 'Karbonn', 'A6' ),
2062
  'A7+' => array( 'Karbonn', 'A7+' ),
2063
  'Karbonn A8' => array( 'Karbonn', 'A8' ),
2064
  'Karbonn A9' => array( 'Karbonn', 'A9' ),
2065
  'Karbonn A9+' => array( 'Karbonn', 'A9+' ),
2066
+ 'Karbonn A10' => array( 'Karbonn', 'A10' ),
2067
  'A11' => array( 'Karbonn', 'A11' ),
2068
  'Karbonn A12' => array( 'Karbonn', 'A12' ),
2069
  'Karbonn A12+' => array( 'Karbonn', 'A12+' ),
2072
  'A21' => array( 'Karbonn', 'A21' ),
2073
  'Karbonn A25' => array( 'Karbonn', 'A25' ),
2074
  'Karbonn A26' => array( 'Karbonn', 'A26' ),
2075
+ 'KarbonnA26' => array( 'Karbonn', 'A26' ),
2076
+ 'Karbonn A27+' => array( 'Karbonn', 'A27' ),
2077
  'Karbonn A30' => array( 'Karbonn', 'A30' ),
2078
  'TA-FONE A37' => array( 'Karbonn', 'Ta-Fone A37' ),
2079
  'Karbonn A50' => array( 'Karbonn', 'A50' ),
2087
  'K080' => array( 'Kobo', 'K080', TYPE_EREADER ),
2088
  'M1050S' => array( 'KOCASO', 'M1050S', TYPE_TABLET ),
2089
  'K3' => array( 'Konka', 'K3' ),
2090
+ 'KONKA-V915' => array( 'Konka', 'V915' ),
2091
+ 'KONKA V927' => array( 'Konka', 'V927' ),
2092
  'W990' => array( 'Konka', 'W990' ),
2093
  'A106' => array( 'koobee', 'A160' ),
2094
  'Koobe S7 Easy tablet' => array( 'Koobe', 'S7 Easy tablet', TYPE_TABLET ),
2101
  'KM-S300' => array( 'Kttech', 'Take HD KM-S300' ),
2102
  'KM-S330' => array( 'Kttech', 'Take Fit KM-S330' ),
2103
  'Kurio7' => array( 'Kurio', '7', TYPE_TABLET ),
2104
+ 'Kurio7S' => array( 'Kurio', '7S', TYPE_TABLET ),
2105
+ 'Kurio-Lite' => array( 'Kurio', 'Lite', TYPE_TABLET ),
2106
  'Kyobo mirasol eReader' => array( 'Kyobo', 'eReader', TYPE_EREADER ),
2107
  'ISW11K' => array( 'Kyocera', 'Digno' ),
2108
  'KYL21' => array( 'Kyocera', 'Digno S' ),
2119
  'C5170' => array( 'Kyocera', 'Hydro' ),
2120
  'C5215' => array( 'Kyocera', 'Hydro Edge' ),
2121
  'C5216' => array( 'Kyocera', 'Hydro Edge' ), // Unknown
2122
+ 'C6522' => array( 'Kyocera', 'Hydro XTRM' ),
2123
  'C6522N' => array( 'Kyocera', 'Hydro XTRM' ),
2124
  'USCC-C6721' => array( 'Kyocera', 'Hydro XTRM' ),
2125
+ 'C6530N' => array( 'Kyocera', 'C6530N' ), // Unknown
2126
  'C6750' => array( 'Kyocera', 'Hydro Elite' ),
2127
  'M9300' => array( 'Kyocera', 'Echo' ),
2128
  'KYY21' => array( 'Kyocera', 'Urbano L01' ),
2131
  '201K' => array( 'Kyocera', 'HONEY BEE 201K' ),
2132
  '202K' => array( 'Kyocera', 'Digno R 201K' ),
2133
  'K-Touch C666t' => array( 'K-Touch', 'C666' ),
2134
+ 'K-Touch C960t' => array( 'K-Touch', 'C960' ),
2135
  'K-Touch C986t' => array( 'K-Touch', 'C986' ),
2136
  'K-Touch E7' => array( 'K-Touch', 'E7' ),
2137
  'TY-K-Touch E80' => array( 'K-Touch', 'E80' ),
2145
  'K-Touch E806' => array( 'K-Touch', 'E806' ),
2146
  'K-Touch S2' => array( 'K-Touch', 'S2' ),
2147
  'K-Touch S5' => array( 'K-Touch', 'S5' ),
2148
+ 'K-Touch T60' => array( 'K-Touch', 'T60' ),
2149
  'K-TouchT580' => array( 'K-Touch', 'T580' ),
2150
  'K-Touch T619' => array( 'K-Touch', 'T619' ),
2151
  'K-Touch T619+' => array( 'K-Touch', 'T619+' ),
2158
  'K-Touch U7' => array( 'K-Touch', 'U7' ),
2159
  'K-Touch U8' => array( 'K-Touch', 'U8' ),
2160
  'K-Touch U10' => array( 'K-Touch', 'U10' ),
2161
+ 'K-Touch U81t' => array( 'K-Touch', 'U81t' ),
2162
  'K-Touch U86' => array( 'K-Touch', 'U86' ),
2163
  'K-Touch U90' => array( 'K-Touch', 'U90' ),
2164
  'K-Touch V8' => array( 'K-Touch', 'V8' ),
2169
  'K-Touch W619!' => array( 'K-Touch', 'W619' ),
2170
  'K-Touch W621' => array( 'K-Touch', 'W621' ),
2171
  'K-Touch W650!' => array( 'K-Touch', 'W650' ),
2172
+ 'K-Touch W656' => array( 'K-Touch', 'W656' ),
2173
  'K-Touch W658' => array( 'K-Touch', 'W658' ),
2174
  'W686' => array( 'K-Touch', 'W686' ),
2175
  'K-Touch W688' => array( 'K-Touch', 'W688' ),
2176
  'K-Touch W700' => array( 'K-Touch', 'W700' ),
2177
  'W700' => array( 'K-Touch', 'W700' ),
2178
+ 'K-Touch W710' => array( 'K-Touch', 'W710' ),
2179
  'K-Touch W719' => array( 'K-Touch', 'W719' ),
2180
  'W732' => array( 'K-Touch', 'W732' ),
2181
  'K-Touch W760' => array( 'K-Touch', 'W760' ),
2187
  'W808' => array( 'K-Touch', 'W808' ),
2188
  'W810' => array( 'K-Touch', 'W810' ),
2189
  'W880' => array( 'K-Touch', 'W880' ),
2190
+ 'Lanix Ilium S115' => array( 'Lanix', 'Ilium S115' ),
2191
  'Ilium S115' => array( 'Lanix', 'Ilium S115' ),
2192
+ 'LANIX ILIUM S120' => array( 'Lanix', 'Ilium S120' ),
2193
  'Ilium S200' => array( 'Lanix', 'Ilium S200' ),
2194
  'Lanix Ilium S210' => array( 'Lanix', 'Ilium S210' ),
2195
  'Lanix Ilium S400' => array( 'Lanix', 'Ilium S400' ),
2196
+ 'Lanix ILIUM S410' => array( 'Lanix', 'Ilium S410' ),
2197
  'Lanix Ilium S500' => array( 'Lanix', 'Ilium S500' ),
2198
+ 'LANIX ILIUM S700' => array( 'Lanix', 'Ilium S700' ),
2199
  'ilium Pad E8' => array( 'Lanix', 'Ilium Pad E8', TYPE_TABLET ),
2200
  'IRIS355' => array( 'Lava', 'Iris 355' ),
2201
  'iris356' => array( 'Lava', 'Iris 356' ),
2202
  'IRIS402' => array( 'Lava', 'Iris 402' ),
2203
+ 'iris 406Q' => array( 'Lava', 'Iris 406Q' ),
2204
  'IRIS 455' => array( 'Lava', 'Iris 455' ),
2205
  'iris458Q' => array( 'Lava', 'Iris 458Q' ),
2206
+ 'IRIS 501' => array( 'Lava', 'Iris 501' ),
2207
  'iris504Q' => array( 'Lava', 'Iris 504Q' ),
2208
+ 'iris506Q' => array( 'Lava', 'Iris 506Q' ),
2209
  'LAVA S12' => array( 'Lava', 'S12' ),
2210
  'A500L' => array( 'Lava', 'XOLO A500L' ),
2211
  'A500s' => array( 'Lava', 'XOLO A500S' ),
2214
  'XOLO A1000' => array( 'Lava', 'XOLO A1000' ),
2215
  'XOLO B700' => array( 'Lava', 'XOLO B700' ),
2216
  'Q700' => array( 'Lava', 'XOLO Q700' ),
2217
+ 'XOLO Q700' => array( 'Lava', 'XOLO Q700' ),
2218
+ 'XOLO Q700i' => array( 'Lava', 'XOLO Q700i' ),
2219
+ 'Q700S' => array( 'Lava', 'XOLO Q700S' ),
2220
  'Q800' => array( 'Lava', 'XOLO Q800' ),
2221
  'XOLO Q800' => array( 'Lava', 'XOLO Q800' ),
2222
+ 'Q900T' => array( 'Lava', 'XOLO Q900T' ),
2223
  'Q1000' => array( 'Lava', 'XOLO Q1000' ),
2224
+ 'Q1000S' => array( 'Lava', 'XOLO Q1000S' ),
2225
+ 'Q1010i' => array( 'Lava', 'XOLO Q1010i' ),
2226
+ 'Q1100' => array( 'Lava', 'XOLO Q1100' ),
2227
+ 'Q2000' => array( 'Lava', 'XOLO Q2000' ),
2228
+ 'Q3000' => array( 'Lava', 'XOLO Q3000' ),
2229
  'XOLO T1000' => array( 'Lava', 'XOLO T1000' ),
2230
  'Xolo X500' => array( 'Lava', 'XOLO X500' ),
2231
  'X900' => array( 'Lava', 'XOLO X900' ),
2234
  'XOLO X1000' => array( 'Lava', 'XOLO X1000' ),
2235
  'XOLO Play' => array( 'Lava', 'XOLO Play' ),
2236
  'Xolo QC800' => array( 'Lava', 'XOLO QC800', TYPE_TABLET ),
2237
+ 'R30GT' => array( 'Lavios', 'Revo R30GT', TYPE_TABLET ),
2238
  'leepoo i500' => array( 'Leepoo', 'i500' ),
2239
  'leepoo i600' => array( 'Leepoo', 'i600' ),
2240
  'LENCM900HZ' => array( 'Lenco', 'TAB 811', TYPE_TABLET ),
2247
  'Ideapad S10-3T' => array( 'Lenovo', 'IdeaPad S10-3T', TYPE_TABLET ),
2248
  'IdeaTab ?A1000(-F|-G|-T)!' => array( 'Lenovo', 'IdeaTab A1000', TYPE_TABLET ),
2249
  'IdeaTab ?A1000(L-F)!' => array( 'Lenovo', 'IdeaTab A1000', TYPE_TABLET ),
2250
+ 'IdeaTab ?A1010(-T)!' => array( 'Lenovo', 'IdeaTab A1010', TYPE_TABLET ),
2251
+ 'IdeaTab ?A1020(-T)!' => array( 'Lenovo', 'IdeaTab A1020', TYPE_TABLET ),
2252
  'IdeaTab ?A1107!' => array( 'Lenovo', 'IdeaTab A1107', TYPE_TABLET ),
2253
  'Lenovo A2105' => array( 'Lenovo', 'IdeaTab A2105', TYPE_TABLET ),
2254
  'IdeaTab ?A2107(A-F|A-H)!' => array( 'Lenovo', 'IdeaTab A2107', TYPE_TABLET ),
2257
  'IdeaTab ?A2207(A-H)!' => array( 'Lenovo', 'IdeaTab A2207', TYPE_TABLET ),
2258
  'IdeaTab ?A3000-(F|H)!' => array( 'Lenovo', 'IdeaTab A3000', TYPE_TABLET ),
2259
  'Lenovo A3000-H!' => array( 'Lenovo', 'IdeaTab A3000', TYPE_TABLET ),
2260
+ 'Lenovo A3500(-F|-FL|-HV)!' => array( 'Lenovo', 'IdeaTab A3500', TYPE_TABLET ),
2261
  'IdeaTab ?A5000-E!' => array( 'Lenovo', 'IdeaTab A5000', TYPE_TABLET ),
2262
+ 'Lenovo A5500(-F|-HV|-H)!' => array( 'Lenovo', 'IdeaTab A5500', TYPE_TABLET ),
2263
+ 'Lenovo A7600(-F|-HV|-H)!' => array( 'Lenovo', 'IdeaTab A7600', TYPE_TABLET ),
2264
+ 'Lenovo B6000(-F|-H)!' => array( 'Lenovo', 'B6000 Yoga Tablet 8', TYPE_TABLET ),
2265
+ 'Lenovo B8000(-F|-H)!' => array( 'Lenovo', 'B8000 Yoga Tablet 10', TYPE_TABLET ),
2266
+ 'Lenovo B8080-F' => array( 'Lenovo', 'B8080 Yoga Tablet 10', TYPE_TABLET ),
2267
  'IdeaTab ?K2110(A-F)!' => array( 'Lenovo', 'IdeaTab K2110', TYPE_TABLET ),
2268
  'S2005A-H' => array( 'Lenovo', 'IdeaTab S2005', TYPE_TABLET ),
2269
  'IdeaTab ?S2007(A-D)!' => array( 'Lenovo', 'IdeaTab S2007', TYPE_TABLET ),
2296
  'Lenovo A298t' => array( 'Lenovo', 'A298' ),
2297
  'Lenovo A300!' => array( 'Lenovo', 'A300' ),
2298
  'Lenovo A305e' => array( 'Lenovo', 'A305' ),
2299
+ 'Lenovo A308t' => array( 'Lenovo', 'A308' ),
2300
  'Lenovo A316i' => array( 'Lenovo', 'A316' ),
2301
+ 'Lenovo A318t' => array( 'Lenovo', 'A318' ),
2302
  'Lenovo A326' => array( 'Lenovo', 'A326' ),
2303
+ 'Lenovo A338t' => array( 'Lenovo', 'A338' ),
2304
  'Lenovo A356' => array( 'Lenovo', 'A356' ),
2305
  'Lenovo A360' => array( 'Lenovo', 'A360' ),
2306
  'Lenovo A365e' => array( 'Lenovo', 'A365' ),
2307
  'Lenovo A366t' => array( 'Lenovo', 'A366' ),
2308
+ 'Lenovo A369!' => array( 'Lenovo', 'A369' ),
2309
  'Lenovo A370e' => array( 'Lenovo', 'A370' ),
2310
+ 'Lenovo A370t' => array( 'Lenovo', 'A370' ),
2311
  'Lenovo A375e' => array( 'Lenovo', 'A375' ),
2312
+ 'Lenovo A376' => array( 'Lenovo', 'A376' ),
2313
  'Lenovo A378t' => array( 'Lenovo', 'A378' ),
2314
+ 'Lenovo A380t' => array( 'Lenovo', 'A380' ),
2315
  'Lenovo A390!' => array( 'Lenovo', 'A390' ),
2316
  'Lenovo A398t' => array( 'Lenovo', 'A398' ),
2317
  'Lenovo A500' => array( 'Lenovo', 'A500' ),
2318
+ 'Lenovo A516' => array( 'Lenovo', 'A516' ),
2319
  'Lenovo A520!' => array( 'Lenovo', 'A520' ),
2320
+ 'Lenovo A526' => array( 'Lenovo', 'A526' ),
2321
  'Lenovo A530' => array( 'Lenovo', 'A530' ),
2322
  'Lenovo A560e' => array( 'Lenovo', 'A560' ),
2323
  'Lenovo A580' => array( 'Lenovo', 'A580' ),
2325
  'Lenovo A590' => array( 'Lenovo', 'A590' ),
2326
  'Lenovo A630!' => array( 'Lenovo', 'A630' ),
2327
  'Lenovo A656' => array( 'Lenovo', 'A656' ),
2328
+ 'Lenovo A658t' => array( 'Lenovo', 'A658' ),
2329
  'Lenovo A660' => array( 'Lenovo', 'A660' ),
2330
+ 'Lenovo A668t' => array( 'Lenovo', 'A668' ),
2331
  'Lenovo A670t' => array( 'Lenovo', 'A670' ),
2332
  'Lenovo A678t' => array( 'Lenovo', 'A678' ),
2333
+ 'Lenovo A680' => array( 'Lenovo', 'A680' ),
2334
  'Lenovo A690' => array( 'Lenovo', 'A690' ),
 
2335
  'Lenovo A698t' => array( 'Lenovo', 'A698' ),
2336
  'Lenovo A700e' => array( 'Lenovo', 'A700' ),
2337
  'Lenovo A706!' => array( 'Lenovo', 'A706' ),
2338
+ 'Lenovo A708t' => array( 'Lenovo', 'A708' ),
2339
  'Lenovo A710e' => array( 'Lenovo', 'A710' ),
2340
  'Lenovo A720e' => array( 'Lenovo', 'A720' ),
2341
  'Lenovo A750!' => array( 'Lenovo', 'A750' ),
2342
  'A750' => array( 'Lenovo', 'A750' ),
2343
+ 'Lenovo A760!' => array( 'Lenovo', 'A760' ),
2344
  'Lenovo A765!' => array( 'Lenovo', 'A765' ),
2345
+ 'Lenovo A766!' => array( 'Lenovo', 'A766' ),
2346
  'Lenovo A770e' => array( 'Lenovo', 'A770' ),
2347
  'Lenovo A780' => array( 'Lenovo', 'A780' ),
2348
  'Lenovo A788t' => array( 'Lenovo', 'A788' ),
2350
  'Lenovo A790e' => array( 'Lenovo', 'A790' ),
2351
  'Lenovo A798t' => array( 'Lenovo', 'A798' ),
2352
  'Lenovo A800' => array( 'Lenovo', 'A800' ),
2353
+ 'Lenovo A806' => array( 'Lenovo', 'A806' ),
2354
+ 'Lenovo A808!' => array( 'Lenovo', 'A808' ),
2355
  'Lenovo A820!' => array( 'Lenovo', 'A820' ),
2356
  'Lenovo A828!' => array( 'Lenovo', 'A828' ),
2357
  'Lenovo A830' => array( 'Lenovo', 'A830' ),
2358
+ 'Lenovo A850!' => array( 'Lenovo', 'A850' ),
2359
+ 'Lenovo A859!' => array( 'Lenovo', 'A859' ),
2360
+ 'Lenovo A860!' => array( 'Lenovo', 'A860' ),
2361
+ 'Lenovo A880!' => array( 'Lenovo', 'A880' ),
2362
  'Lenovo K2' => array( 'Lenovo', 'K2' ),
2363
  'Lenovo K6' => array( 'Lenovo', 'K6' ),
2364
  'Lenovo K800' => array( 'Lenovo', 'K800' ),
2365
  'Lenovo K860!' => array( 'Lenovo', 'K860' ),
2366
  'Lenovo K900!' => array( 'Lenovo', 'K900' ),
2367
+ 'Lenovo K910' => array( 'Lenovo', 'K910' ),
2368
+ 'Lenovo K920' => array( 'Lenovo', 'K920' ),
2369
  'Lenovo P70' => array( 'Lenovo', 'P70' ),
2370
  'Lenovo P700!' => array( 'Lenovo', 'P700' ),
2371
  'P700i' => array( 'Lenovo', 'P700i' ),
2372
+ 'Lenovo P770!' => array( 'Lenovo', 'P770' ),
2373
  'Lenovo-P770' => array( 'Lenovo', 'P770' ),
2374
  'Lenovo P780!' => array( 'Lenovo', 'P780' ),
2375
  'Lenovo S560' => array( 'Lenovo', 'S560' ),
2376
  'Lenovo S650' => array( 'Lenovo', 'S650' ),
2377
+ 'Lenovo S658t' => array( 'Lenovo', 'S658' ),
2378
+ 'S658t' => array( 'Lenovo', 'S658' ),
2379
+ 'Lenovo S660' => array( 'Lenovo', 'S660' ),
2380
+ 'Lenovo S668t' => array( 'Lenovo', 'S668' ),
2381
  'Lenovo S680' => array( 'Lenovo', 'S680' ),
2382
  'Lenovo S686' => array( 'Lenovo', 'S686' ),
2383
+ 'Lenovo S696' => array( 'Lenovo', 'S696' ),
2384
  'Lenovo S720!' => array( 'Lenovo', 'S720' ),
2385
  'S720i' => array( 'Lenovo', 'S720' ),
2386
  'Lenovo S750' => array( 'Lenovo', 'S750' ),
2387
  'Lenovo S760' => array( 'Lenovo', 'S760' ),
2388
  'Lenovo S820!' => array( 'Lenovo', 'S820' ),
2389
+ 'Lenovo S850!' => array( 'Lenovo', 'S850' ),
2390
+ 'Lenovo S860' => array( 'Lenovo', 'S860' ),
2391
  'Lenovo S868t' => array( 'Lenovo', 'S868' ),
2392
  'Lenovo S870e' => array( 'Lenovo', 'S870' ),
2393
  'Lenovo S880!' => array( 'Lenovo', 'S880' ),
2397
  'Lenovo ?S899!' => array( 'Lenovo', 'S899' ),
2398
  'Lenovo S920!' => array( 'Lenovo', 'S920' ),
2399
  'Lenovo S930' => array( 'Lenovo', 'S930' ),
2400
+ 'Lenovo S939' => array( 'Lenovo', 'S939' ),
2401
  'Lenovo S950' => array( 'Lenovo', 'S950' ),
2402
  'Lenovo S960' => array( 'Lenovo', 'S960' ),
2403
  'Lenovo W100' => array( 'Lenovo', 'W100' ),
2406
  'ideatv K82' => array( 'Lenovo', 'IDEA TV', TYPE_TELEVISION ),
2407
  'IDEA TV T100' => array( 'Lenovo', 'IDEA TV', TYPE_TELEVISION ),
2408
  'IDEA TV K91' => array( 'Lenovo', 'IDEA TV', TYPE_TELEVISION ),
2409
+ 'ideatv S9' => array( 'Lenovo', 'IDEA TV', TYPE_TELEVISION ),
2410
+ 'ideatv S52' => array( 'Lenovo', 'IDEA TV', TYPE_TELEVISION ),
2411
  'lephone 1800' => array( 'Lephone', '1800' ),
2412
  'BLF-lephone 1900' => array( 'Lephone', '1900' ),
2413
  'lephone 2800' => array( 'Lephone', '2800' ),
2416
  'LePanII' => array( 'Le Pan', 'II', TYPE_TABLET ),
2417
  'Le Pan S' => array( 'Le Pan', 'S', TYPE_TABLET ),
2418
  'LG-AN160' => array( 'LG', 'Fluid' ),
2419
+ 'LG-AS323' => array( 'LG', 'L70' ),
2420
  'LG-AS680' => array( 'LG', 'Optimus 2' ),
2421
  'LG-AS730' => array( 'LG', 'Optimus Select' ),
2422
+ 'LG-AS750' => array( 'LG', 'L70' ),
2423
  'LG-AS780' => array( 'LG', 'Optimus F7' ),
2424
  'LG-AS870' => array( 'LG', 'Optimus F5' ),
2425
+ 'LG-AS876' => array( 'LG', 'L70' ),
2426
  'LG-C520' => array( 'LG', 'C520' ),
2427
  'LG-C5(50|55)!' => array( 'LG', 'Optimus Chat' ),
2428
  'LG-C660!' => array( 'LG', 'Optimus Pro' ),
2430
  'LG-C729' => array( 'LG', 'DoublePlay' ),
2431
  'LG-C800G' => array( 'LG', 'Eclypse' ),
2432
  'LG-CX670' => array( 'LG', 'Optimus 3G' ),
2433
+ 'LG-D123' => array( 'LG', 'D123' ), // Unknown
2434
+ 'LG-D125!' => array( 'LG', 'L30' ),
2435
+ 'LG-D127' => array( 'LG', 'D127' ), // Unknown
2436
+ 'LG-D150!' => array( 'LG', 'L35' ), // Probably
2437
+ 'LG-D1(60|65|75|80)!' => array( 'LG', 'L40' ),
2438
+ 'LG-D227' => array( 'LG', 'L50' ),
2439
+ 'LG-D2(80|85)!' => array( 'LG', 'L65' ),
2440
+ 'LG-D3(15|17)!' => array( 'LG', 'F70' ),
2441
+ 'LG-D3(20|21|25|30)!' => array( 'LG', 'L70' ),
2442
+ 'LG-D337!' => array( 'LG', 'D337' ), // Unknown
2443
+ 'LG-D340!' => array( 'LG', 'D340' ), // Unknown
2444
+ 'LG-D3(70|73|75|80|85)!' => array( 'LG', 'L80' ),
2445
+ 'LG-D4(00|05|10|15)!' => array( 'LG', 'L90' ),
2446
  'LG-D5(00|05)!' => array( 'LG', 'Optimus F6' ),
2447
+ 'LG-D520' => array( 'LG', 'Optimus F3Q' ),
2448
  'LG-D605' => array( 'LG', 'Optimus L9 II' ),
2449
+ 'LG-D6(10|18|20|25)!' => array( 'LG', 'G2 mini' ),
2450
+ 'LG-D6(31)!' => array( 'LG', 'G Pro 2 Lite' ), // Probably
2451
+ 'LG-D6(80|82|83|84)!' => array( 'LG', 'G Pro Lite' ),
2452
  'LG-D6(85|86)!' => array( 'LG', 'G Pro Lite Dual' ),
2453
+ 'LG-D690!' => array( 'LG', 'D690' ), // Unknown
2454
  'LG-D700' => array( 'LG', 'Optimus L9' ),
2455
+ 'LG-D7(23|24|25|28)!' => array( 'LG', 'G3 mini' ), // Probably
2456
  'LG-D8(00|01|02|03|05|06)!' => array( 'LG', 'G2' ),
2457
  'LG-D8(20|21)!' => array( 'LG', 'Nexus 5' ),
2458
+ 'LG-D8(30|37|38)!' => array( 'LG', 'G Pro 2' ),
2459
+ 'LG-D8(50|51|55|58)!' => array( 'LG', 'G3' ), // Probably
2460
+ 'LG-D9(50|55|56|58|59)!' => array( 'LG', 'G Flex' ),
2461
  'LG-DS1203' => array( 'LG', 'G2' ),
2462
  'LG-E400!' => array( 'LG', 'Optimus L3' ),
2463
  'LG-E405!' => array( 'LG', 'Optimus L3 Dual' ),
2464
+ 'LG-E4(10|11)!' => array( 'LG', 'Optimus L1 II' ),
2465
  'LG-E4(15|20)!' => array( 'LG', 'Optimus L1 II Dual' ),
2466
  'LG-E4(25|30|31)!' => array( 'LG', 'Optimus L3 II' ),
2467
  'LG-E435!' => array( 'LG', 'Optimus L3 II Dual' ),
2472
  'LG-E465!' => array( 'LG', 'Optimus L4 II' ),
2473
  'LG-E467!' => array( 'LG', 'Optimus L4 II Dual' ),
2474
  'LG-E470!' => array( 'LG', 'Optimus L4 II Triple' ),
2475
+ 'LG-E475!' => array( 'LG', 'Optimus L1 II Tri' ),
2476
  'LG-E510!' => array( 'LG', 'Optimus Hub' ),
2477
  'LG-E6(10|12|17)!' => array( 'LG', 'Optimus L5' ),
2478
  'LG-E6(14|15)!' => array( 'LG', 'Optimus L5 Dual' ),
2481
  'LG-E940' => array( 'LG', 'Optimus G Pro' ),
2482
  'LG-E960' => array( 'LG', 'Nexus 4' ),
2483
  'LG-E9(70|71|73|75|76|77|78|87)!' => array( 'LG', 'Optimus G' ),
2484
+ 'LG-E9(80|81|85|86|88|89)!' => array( 'LG', 'Optimus G Pro' ),
2485
  'LG-F100!' => array( 'LG', 'Optimus Vu' ),
2486
  'LG-F120!' => array( 'LG', 'Optimus LTE Tag' ),
2487
  'LG-F160!' => array( 'LG', 'Optimus LTE II' ),
2491
  'LG-F240!' => array( 'LG', 'Optimus G Pro' ),
2492
  'LG-F260!' => array( 'LG', 'Optimus LTE III' ),
2493
  'LG-F300!' => array( 'LG', 'Vu 3' ),
2494
+ 'LG-F310!' => array( 'LG', 'GX' ),
2495
  'LG-F320!' => array( 'LG', 'G2' ),
2496
  'LG-F340!' => array( 'LG', 'G Flex' ),
2497
+ 'LG-F350!' => array( 'LG', 'G Pro 2' ),
2498
+ 'LG-F370!' => array( 'LG', 'F70' ),
2499
+ 'LG-F390!' => array( 'LG', 'G2 mini' ),
2500
+ 'LG-F400!' => array( 'LG', 'F400' ), // Unknown
2501
+ 'LG-F470!' => array( 'LG', 'F470' ), // Unknown
2502
  'LG-GT540!' => array( 'LG', 'Optimus' ),
2503
  'LG-GW620' => array( 'LG', 'GW620 Eve' ),
2504
  'LG-KH5200' => array( 'LG', 'Andro-1' ),
2509
  'LG-KU8800' => array( 'LG', 'Optimus EX' ),
2510
  'LG-L01F' => array( 'LG', 'G2' ),
2511
  'LG-L25L' => array( 'LG', 'Optimus Quest' ),
2512
+ 'LG-L30L' => array( 'LG', 'F70' ),
2513
+ 'LG-L31L' => array( 'LG', 'F70' ),
2514
+ 'LG-L34C' => array( 'LG', 'L40' ),
2515
  'LG-L38C' => array( 'LG', 'Optimus Dynamic' ),
2516
  'LG-L40G' => array( 'LG', 'Optimus Extreme' ),
2517
+ 'LG-L41C' => array( 'LG', 'L70' ),
2518
+ 'LG-L42G' => array( 'LG', 'L70' ),
2519
  'LG-L160L' => array( 'LG', 'L160L' ), // Unknown
2520
  'LG-LG730' => array( 'LG', 'Venice' ),
2521
  'LG-LG855' => array( 'LG', 'Marquee' ),
2522
  'LG-LG870' => array( 'LG', 'Optimus F7' ),
2523
+ 'LG-LS620' => array( 'LG', 'L70' ),
2524
  'LG-LS670' => array( 'LG', 'Optimus S' ),
2525
  'LG-LS696' => array( 'LG', 'Elite' ),
2526
  'LG-LS720' => array( 'LG', 'Optimus F3' ),
2527
+ 'LG-LS740' => array( 'LG', 'F90' ), // aka Volt
2528
+ 'LS740' => array( 'LG', 'F90' ), // aka Volt
2529
  'LG-LS840' => array( 'LG', 'Viper' ),
2530
  'LG-LS855' => array( 'LG', 'Marquee' ),
2531
  'LG-LS860' => array( 'LG', 'Mach' ),
2532
+ 'LG-LS885' => array( 'LG', 'G Pro 2 Lite' ), // Probably
2533
  'LG-LS970' => array( 'LG', 'Optimus G' ),
2534
  'LG-LS980' => array( 'LG', 'G2' ),
2535
+ 'LG-LS990' => array( 'LG', 'G3' ), // Probably
2536
  'LG-LS995' => array( 'LG', 'G Flex' ),
2537
  'LG-LU3000' => array( 'LG', 'Optimus Mach' ),
2538
  'LG-LU3100' => array( 'LG', 'Optimus Chic' ),
2544
  'LG-LU8300' => array( 'LG', 'Optimus Pad LTE' ),
2545
  'LG-LW690' => array( 'LG', 'Optimus C' ),
2546
  'LG-LW770' => array( 'LG', 'Regard' ),
2547
+ 'LG-MS323' => array( 'LG', 'L70' ),
2548
+ 'LG-MS415' => array( 'LG', 'L90' ),
2549
  'LG-MS500' => array( 'LG', 'Optimus F6' ),
2550
  'LGMS659' => array( 'LG', 'Optimus F3' ),
2551
  'LG-MS690' => array( 'LG', 'Optimus M' ),
2597
  'LG-US670' => array( 'LG', 'Optimus U' ),
2598
  'LG-US730' => array( 'LG', 'Splendor' ),
2599
  'LG-US780' => array( 'LG', 'Optimus F7' ),
2600
+ 'LG-V400' => array( 'LG', 'V400', TYPE_TABLET ), // Unknown, new G Pad?
2601
  'LG-V5(00|07)!' => array( 'LG', 'G Pad 8.3', TYPE_TABLET ),
2602
+ 'LG-V510' => array( 'LG', 'G Pad 8.3 (Google Edition)', TYPE_TABLET ),
2603
+ 'LG-V9(00|01)!' => array( 'LG', 'Optimus Pad', TYPE_TABLET ),
2604
  'LG-V9(05|09)!' => array( 'LG', 'Optimus G-Slate', TYPE_TABLET ),
2605
+ 'LG-VK810' => array( 'LG', 'G Pad 8.3', TYPE_TABLET ),
2606
+ 'LG-VN170' => array( 'LG', 'VN-170' ), // Unknown
2607
+ 'LG-VN280' => array( 'LG', 'Extravert 2' ),
2608
  'LG-VN360' => array( 'LG', 'Exalt' ),
2609
  'LG-VM670' => array( 'LG', 'Optimus V' ),
2610
  'LG-VM696' => array( 'LG', 'Optimus Elite' ),
2611
  'LG-VM701' => array( 'LG', 'Optimus Slider' ),
2612
  'LG-VM720' => array( 'LG', 'Optimus F5' ),
2613
  'LG-VS410!' => array( 'LG', 'Optimus Zone' ),
2614
+ 'LG-VS415!' => array( 'LG', 'Optimus Zone 2' ), // aka L40
2615
+ 'LG-VS450!' => array( 'LG', 'Optimus Exceed 2' ), // aka L70
2616
  'LG-VS660' => array( 'LG', 'Vortex' ),
2617
  'LG-VS700' => array( 'LG', 'Enlighten' ),
2618
  'LG-VS740' => array( 'LG', 'Ally' ),
2619
  'LG-VS840' => array( 'LG', 'Lucid' ),
2620
  'LG-VS870' => array( 'LG', 'Lucid 2' ),
2621
+ 'LG-VS876' => array( 'LG', 'Lucid 3' ), // aka F90
2622
+ 'LG-VS880' => array( 'LG', 'G Pro 2 Lite' ), // Maybe
2623
  'LG-VS890' => array( 'LG', 'Enact' ),
2624
  'LG-VS910' => array( 'LG', 'Revolution' ),
2625
  'LG-VS930' => array( 'LG', 'Spectrum II' ),
2626
  'LG-VS950' => array( 'LG', 'Intuition' ),
2627
  'LG-VS980' => array( 'LG', 'G2' ),
2628
+ 'LG-VS985' => array( 'LG', 'G3' ), // Probably
2629
  'lge-F160!' => array( 'LG', 'Optimus LTE II' ),
2630
  'lgp-970' => array( 'LG', 'Optimus Black' ),
2631
  'AS740' => array( 'LG', 'Axis' ),
2634
  'GW620' => array( 'LG', 'Eve' ),
2635
  'KU9500' => array( 'LG', 'Optimus Z' ),
2636
  'LGC660!' => array( 'LG', 'Optimus Pro' ),
2637
+ 'LGMS323' => array( 'LG', 'L70' ),
2638
+ 'LGMS500' => array( 'LG', 'Optimus F6' ),
2639
  'LGL21' => array( 'LG', 'Optimus G' ),
2640
  'LGL22' => array( 'LG', 'G2' ),
2641
+ 'LGL23' => array( 'LG', 'G Flex' ),
2642
+ 'LGL24' => array( 'LG', 'isai FL' ),
2643
+ 'LGL31L!' => array( 'LG', 'F70' ),
2644
+ 'LGL34C!' => array( 'LG', 'L40' ),
2645
+ 'LGL35G!' => array( 'LG', 'Optimus Logic' ),
2646
+ 'LGL39C!' => array( 'LG', 'Optimus Dynamic II' ),
2647
+ 'LGL41C!' => array( 'LG', 'L70' ),
2648
+ 'LGL45C!' => array( 'LG', 'Optimus Net' ),
2649
+ 'LGL55C!' => array( 'LG', 'Optimus Q' ),
2650
+ 'LGL75C!' => array( 'LG', 'Optimus Zip' ),
2651
+ 'LGL85C!' => array( 'LG', 'Optimus Black' ),
2652
+ 'LGL86C!' => array( 'LG', 'Optimus Showtime' ),
2653
  'LU2300' => array( 'LG', 'Optimus Q' ),
2654
  'LS670' => array( 'LG', 'Optimus S' ),
2655
  'MS840 4G' => array( 'LG', 'Connect 4G' ),
2709
  'LG-Google TV' => array( 'LG', 'G2 series', TYPE_TELEVISION, FLAG_GOOGLETV ),
2710
  'LG-Google TV TV' => array( 'LG', 'G2 series', TYPE_TELEVISION, FLAG_GOOGLETV ),
2711
  'LG-Google TV G3' => array( 'LG', 'G3 series', TYPE_TELEVISION, FLAG_GOOGLETV ),
2712
+ 'LG Google TV G3 TV' => array( 'LG', 'G3 series', TYPE_TELEVISION, FLAG_GOOGLETV ),
2713
+ 'LG Google TV G3 KR TV' => array( 'LG', 'G3 series', TYPE_TELEVISION, FLAG_GOOGLETV ),
2714
  'LG-ANDROID MINI BOX' => array( 'LG', 'Android Mini-Box', TYPE_TELEVISION ),
2715
  'aTab9.7 IPS' => array( 'M-Tech', 'aTab 9.7', TYPE_TABLET ),
2716
  'MALATA I60' => array( 'Malata', 'I60' ),
2718
  'Malata SMBA1002' => array( 'Malata', 'Tablet SMB-A1002', TYPE_TABLET ),
2719
  'MID05V2' => array( 'Manta', 'Powertab MID05V2', TYPE_TABLET ),
2720
  'MID801' => array( 'Manta', 'MID801 Duo Power HD', TYPE_TABLET ),
2721
+ 'Masstel M25' => array( 'Masstel', 'M25' ),
2722
  'M-270' => array( 'Maylong', 'M-270', TYPE_TABLET ),
2723
  'M70' => array( 'Maxsun', 'M70', TYPE_TABLET ),
2724
  'Maxtron T1' => array( 'Maxtron', 'T1', TYPE_TABLET ),
2762
  'MTK6516' => array( 'Mediatek', 'MTK6516' ),
2763
  'MEDION Smartphone LIFE E3501' => array( 'Medion', 'Life E3501' ),
2764
  'MEDION E4002' => array( 'Medion', 'E4002' ),
2765
+ 'LIFETAB E7310' => array( 'Medion', 'Lifetab E7310', TYPE_TABLET ),
2766
  'LIFETAB E7312' => array( 'Medion', 'Lifetab E7312', TYPE_TABLET ),
2767
+ 'LIFETAB E7316' => array( 'Medion', 'Lifetab E7316', TYPE_TABLET ),
2768
  'LIFETAB E10312' => array( 'Medion', 'Lifetab E10312', TYPE_TABLET ),
2769
+ 'LIFETAB E10316' => array( 'Medion', 'Lifetab E10316', TYPE_TABLET ),
2770
+ 'LIFETAB E10320' => array( 'Medion', 'Lifetab E10320', TYPE_TABLET ),
2771
  'LIFETAB S9512' => array( 'Medion', 'Lifetab S9512', TYPE_TABLET ),
2772
  'LIFETAB S9714' => array( 'Medion', 'Lifetab S9714', TYPE_TABLET ),
2773
  'MEDION LIFE P4012' => array( 'Medion', 'Life P4012' ),
2786
  'M032' => array( 'Meizu', 'MX M032' ),
2787
  'M040' => array( 'Meizu', 'MX2 M040' ),
2788
  'M045' => array( 'Meizu', 'MX2 M045' ),
2789
+ 'M351' => array( 'Meizu', 'MX3 M351' ),
2790
+ 'M353' => array( 'Meizu', 'MX3 M353' ),
2791
  'TAB192' => array( 'Majestic', 'TAB-192', TYPE_TABLET ),
2792
  'Slidepad' => array( 'Memup', 'Slidepad', TYPE_TABLET ),
2793
  'SP-A20i' => array( 'Мегафон', 'SP-A20i Mint' ),
2794
+ 'MS4A' => array( 'Мегафон', '4G Turbo' ),
2795
  'Micromax A25' => array( 'Micromax', 'A25 Smarty' ),
2796
  'Micromax A26' => array( 'Micromax', 'A26 Bolt' ),
2797
  'Micromax A27' => array( 'Micromax', 'A27 Bolt' ),
2798
  'Micromax A30' => array( 'Micromax', 'A30 Smarty' ),
2799
  'Micromax A34' => array( 'Micromax', 'A34' ),
2800
  'Micromax A35' => array( 'Micromax', 'A35 Bolt' ),
2801
+ 'Micromax A36' => array( 'Micromax', 'A36 Bolt' ),
2802
+ 'Micromax A40' => array( 'Micromax', 'A40 Bolt' ),
2803
  'Micromax A44' => array( 'Micromax', 'A44 Punk' ),
2804
  'A45' => array( 'Micromax', 'A45 Punk' ),
2805
+ 'Micromax A47' => array( 'Micromax', 'A47 Bolt' ),
2806
  'Micromax A50' => array( 'Micromax', 'A50 Ninja' ),
2807
  'Micromax A51' => array( 'Micromax', 'A51 Bolt' ),
2808
  'Micromax A52' => array( 'Micromax', 'A52 Aisha' ),
2811
  'Micromax A54' => array( 'Micromax', 'A54 Ninja' ),
2812
  'Micromax A56' => array( 'Micromax', 'A56 Ninja 2' ),
2813
  'Micromax A57' => array( 'Micromax', 'A57 Ninja 3' ),
2814
+ 'Micromax A58' => array( 'Micromax', 'A58 Bolt' ),
2815
  'Micromax A60' => array( 'Micromax', 'A60 Andro' ),
2816
  'Micromax A62' => array( 'Micromax', 'A62 Bolt' ),
2817
  'Micromax A63' => array( 'Micromax', 'A63 Canvas Fun' ),
2823
  'Micromax A73' => array( 'Micromax', 'A73 Buzz' ),
2824
  'Micromax A74' => array( 'Micromax', 'A74 Canvas Fun' ),
2825
  'Micromax A75' => array( 'Micromax', 'A75 Lite' ),
2826
+ 'Micromax A075' => array( 'Micromax', 'A75 Lite' ),
2827
  'Micromax A76' => array( 'Micromax', 'A76 Canvas Fun' ),
2828
+ 'Micromax A77' => array( 'Micromax', 'A77 Canvas Juice' ),
2829
  'Micromax A78' => array( 'Micromax', 'A78 Gossip' ),
2830
  'Micromax A80' => array( 'Micromax', 'A80 Infinity' ),
2831
  'Micromax A84' => array( 'Micromax', 'A84' ),
2842
  'Micromax A110!' => array( 'Micromax', 'A110 Canvas 2' ),
2843
  'Micromax Canvas 2' => array( 'Micromax', 'A110 Canvas 2' ),
2844
  'Micromax A110 (Canvas 2)' => array( 'Micromax', 'A110 Canvas 2' ),
2845
+ 'A110Q' => array( 'Micromax', 'A110 Canvas 2' ),
2846
+ 'Micromax A114' => array( 'Micromax', 'A114 Canvas 2.2' ),
2847
  'Micromax A115' => array( 'Micromax', 'A115 Canvas 3D' ),
2848
  'Micromax A116' => array( 'Micromax', 'A116 Canvas HD' ),
2849
+ 'Micromax A116i' => array( 'Micromax', 'A116i Canvas HD' ),
2850
+ 'Micromax A117' => array( 'Micromax', 'A117 Canvas Magnus' ),
2851
+ 'Micromax A118R' => array( 'Micromax', 'A118 Canvas Tube' ),
2852
+ 'Micromax A177' => array( 'Micromax', 'A177 Canvas Juice' ),
2853
  'Micromax A210' => array( 'Micromax', 'A210 Canvas 4' ),
2854
  'Micromax A240' => array( 'Micromax', 'A240 Canvas Doodle 2' ),
2855
  'Micromax A250' => array( 'Micromax', 'A250 Canvas Turbo' ),
2861
  'Micromax P362' => array( 'Micromax', 'Funbook Talk P362', TYPE_TABLET ),
2862
  'Micromax P500(Funbook)' => array( 'Micromax', 'Funbook Pro P500', TYPE_TABLET ),
2863
  'Micromax P600' => array( 'Micromax', 'Funbook 3G P600', TYPE_TABLET ),
2864
+ 'Micromax P650' => array( 'Micromax', 'Canvas Tab P650', TYPE_TABLET ),
2865
+ 'MioCARE A105' => array( 'Mitac', 'MioCARE A105' ),
2866
  'MioPad 6' => array( 'Mitac', 'MioPad 6', TYPE_TABLET ),
2867
  'MITO A15' => array( 'Mito', 'A15' ),
2868
  'MITO A100' => array( 'Mito', 'A100' ),
2871
  'MITO A222' => array( 'Mito', 'A222' ),
2872
  'MITO A322' => array( 'Mito', 'A322' ),
2873
  'MITO A355' => array( 'Mito', 'A355' ),
2874
+ 'MITO T100' => array( 'Mito', 'T100' ),
2875
  'MITO t300' => array( 'Mito', 'T300' ),
2876
  'MIZ Z2' => array( 'Miz', 'Z2' ),
2877
  'Mobiistar Touch S01' => array( 'Mobiistar', 'Touch S01' ),
2879
  'Mobiistar Touch S05' => array( 'Mobiistar', 'Touch S05' ),
2880
  'Mobiistar Touch S08' => array( 'Mobiistar', 'Touch S08' ),
2881
  'Mobiistar Touch Bean 452' => array( 'Mobiistar', 'Touch Bean 452' ),
2882
+ 'Mobiistar Touch JellyBean 452' => array( 'Mobiistar', 'Touch Bean 452' ),
2883
+ 'mobiistar touch BEAN 452T' => array( 'Mobiistar', 'Touch Bean 452T' ),
2884
  'mobiistar touch BEAN 454' => array( 'Mobiistar', 'Touch Bean 454' ),
2885
  'Mobiistar Touch Kem 350' => array( 'Mobiistar', 'Touch Kem 350' ),
2886
  'Mobiistar Touch Kem 402' => array( 'Mobiistar', 'Touch Kem 402' ),
2887
  'Mobiistar Touch Kem 432' => array( 'Mobiistar', 'Touch Kem 432' ),
2888
  'Mobiistar touch KEM 462' => array( 'Mobiistar', 'Touch Kem 462' ),
2889
  'Mobiistar Touch Lai 502' => array( 'Mobiistar', 'Touch Lai 502' ),
2890
+ 'mobiistar touch LAI 504' => array( 'Mobiistar', 'Touch Lai 504' ),
2891
  'edenTAB ET-701' => array( 'Mobile In Style', 'Eden TAB ET-701', TYPE_TABLET ),
2892
  'Cynus F3' => array( 'Mobistel', 'Cynus F3' ),
2893
  'Cynus T1' => array( 'Mobistel', 'Cynus T1' ),
2895
  'Cynus T5' => array( 'Mobistel', 'Cynus T5' ),
2896
  'FreeTAB1003' => array( 'Modecom', 'FreeTAB 1003', TYPE_TABLET ),
2897
  'FreeTAB 8014 IPS X4' => array( 'Modecom', 'FreeTAB 8014 IPS X4', TYPE_TABLET ),
2898
+ 'FreeTAB 9000 IPS ICG' => array( 'Modecom', 'FreeTAB 9000 IPS ICG', TYPE_TABLET ),
2899
  'FreeTAB 9701' => array( 'Modecom', 'FreeTAB 9701', TYPE_TABLET ),
2900
  'FreeTAB 9701 HD X1' => array( 'Modecom', 'FreeTAB 9701 HD X1', TYPE_TABLET ),
2901
  'FreeTAB 9701 IPS' => array( 'Modecom', 'FreeTAB 9701 IPS', TYPE_TABLET ),
2902
  'FreeTAB 9704 IPS2 X4' => array( 'Modecom', 'FreeTAB 9704 IPS2 X4', TYPE_TABLET ),
2903
  'MOGU M2' => array( 'Mogu', 'M2' ),
2904
  'MOGU M2 ROM' => array( 'Mogu', 'M2' ),
2905
+ 'moii E598' => array( 'moii', 'E598' ),
2906
  'AT735' => array( 'Moinstone', 'AT735', TYPE_TABLET ),
2907
  'MORAL N01' => array( 'Moral', 'N01' ),
2908
  'Motorola i1' => array( 'Motorola', 'i2' ),
3024
  'XT9(23|25|26)!' => array( 'Motorola', 'Droid RAZR HD' ),
3025
  'XT928' => array( 'Motorola', 'XT928' ),
3026
  'XT1030!' => array( 'Motorola', 'Droid Mini' ),
3027
+ 'XT10(08|28|31|32|33|34|35|45)!' => array( 'Motorola', 'Moto G' ),
3028
+ 'XT10(49|50|52|53|55|56|58|60)!' => array( 'Motorola', 'Moto X' ),
 
3029
  'XT1080!' => array( 'Motorola', 'Droid Ultra' ),
3030
  '201M' => array( 'Motorola', 'Droid RAZR M' ),
3031
  'Atrix 2' => array( 'Motorola', 'ATRIX 2' ),
3032
  'Atrix 4G' => array( 'Motorola', 'ATRIX 4G' ),
3033
  'Atrix 4G ME860' => array( 'Motorola', 'ATRIX 4G' ),
3034
+ 'Atrix HD' => array( 'Motorola', 'ATRIX HD' ),
3035
  'Backflip' => array( 'Motorola', 'BACKFLIP' ),
3036
  'CLIQ' => array( 'Motorola', 'CLIQ' ),
3037
  'CLIQ XT' => array( 'Motorola', 'CLIQ XT' ),
3086
  'Enjoy 7 Plus' => array( 'Multilaser', 'Vibe NB036', TYPE_TABLET ),
3087
  'MTS-SP100' => array( 'MTS', 'Lifewire SP 100' ),
3088
  'MTS-SP101' => array( 'MTS', 'Mtag 3.1 SP 101' ),
3089
+ 'Multilaser Diamond' => array( 'Multilaser', 'Diamond', TYPE_TABLET ),
3090
+ 'Multilaser Orion' => array( 'Multilaser', 'Orion' ),
3091
  'NB036' => array( 'Nabi', 'Kids tablet', TYPE_TABLET ),
3092
  'M4TEL SS550' => array( 'M4Tel', 'Genius' ),
3093
  'M4TEL SS880' => array( 'M4Tel', 'Mirage' ),
3101
  'My|Phone A888 Duo' => array( 'MyPhone', 'A888 Duo' ),
3102
  'A898 Duo' => array( 'MyPhone', 'A898 Duo' ),
3103
  'MyPhone A919 Duo' => array( 'MyPhone', 'A919 Duo' ),
3104
+ 'MyPhone Agua Iceberg' => array( 'MyPhone', 'Agua Iceberg' ),
3105
  'NABI-A' => array( 'Nabi', 'Kids tablet', TYPE_TABLET ),
3106
  'Newman K1' => array( 'Newman', 'K1' ),
3107
  'N1' => array( 'Newman', 'N1' ),
3130
  'NEC-101S' => array( 'NEC', 'MEDIAS 101S' ),
3131
  'NEC-101T' => array( 'NEC', 'MEDIAS 101T' ),
3132
  'NEC-102' => array( 'NEC', 'MEDIAS 102' ),
3133
+ 'NE-103T' => array( 'NEC', 'MEDIAS U 103T' ),
3134
+ 'NE-202' => array( 'NEC', 'MEDIAS 202' ),
3135
  'NEC-NE-201A1A' => array( 'NEC', 'Terrain' ),
3136
+ 'OPS-DRD Digital Signage Player' => array( 'NEC', 'OPS-DRD Digital Signage Player', TYPE_SIGNAGE ),
3137
  'neken N5' => array( 'Neken', 'N5' ),
3138
  'GTV100' => array( 'NETGEAR', 'NeoTV Prime', TYPE_TELEVISION, FLAG_GOOGLETV ),
3139
  'NX-A712' => array( 'Nexian', 'Explorer' ),
3157
  'Next10P12' => array( 'Nextbook', 'Premium 10', TYPE_EREADER ),
3158
  'NXM703U' => array( 'Nextbook', 'Next 2', TYPE_EREADER ),
3159
  'NXM901' => array( 'Nextbook', 'Next 3', TYPE_EREADER),
3160
+ 'NX785QC8G' => array( 'Nextbook', '8', TYPE_TABLET),
3161
  'NGM Dynamic Star' => array( 'NGM', 'Dynamic Star' ),
3162
  'Stylo' => array( 'NGM', 'Dynamic Stylo' ),
3163
  'Forward Racing 3' => array( 'NGM', 'Forward Racing 3' ),
3172
  'NOAIN A900S' => array( 'Noain', 'A900S' ),
3173
  'Nokia N9' => array( 'Nokia', 'N9' ),
3174
  'Nokia N900' => array( 'Nokia', 'N900' ),
3175
+ 'Nokia X' => array( 'Nokia', 'X' ),
3176
+ 'Nokia X Dual SIM' => array( 'Nokia', 'X' ),
3177
+ 'Nokia Xplus' => array( 'Nokia', 'X+' ),
3178
+ 'Nokia XL' => array( 'Nokia', 'XL' ),
3179
  'Lumia800' => array( 'Nokia', 'Lumia 800' ),
3180
  'Lumia 900' => array( 'Nokia', 'Lumia 900' ),
3181
  'Notion Ink ADAM' => array( 'Notion Ink', 'ADAM', TYPE_TABLET ),
3182
  'Adam' => array( 'Notion Ink', 'ADAM', TYPE_TABLET ),
 
3183
  'AND1' => array( 'NUgen', 'AND1' ),
3184
  'P4D Sirius' => array( 'Nvsbl', 'P4D SIRIUS', TYPE_TABLET ),
3185
+ 'Tegra Note 7' => array( 'Nvidia', 'Tegra Note 7', TYPE_TABLET ),
3186
+ 'TegraNote-P1640' => array( 'Nvidia', 'Tegra Note P1640', TYPE_TABLET ),
3187
  'O+8.1Android' => array( 'O+', '8.1' ),
3188
  'O+ 8.12 Android' => array( 'O+', '8.12' ),
3189
  'O+ 8.15 Android' => array( 'O+', '8.15' ),
3190
+ 'O+ 8.37 Android' => array( 'O+', '8.37' ),
3191
  'O+ 8.52 Android' => array( 'O+', '8.52' ),
3192
  'O+ 8.6 Android' => array( 'O+', '8.6' ),
3193
  'O+ 8.9 Android' => array( 'O+', '8.9' ),
3194
+ 'O+ 8.91 Android' => array( 'O+', '8.91' ),
3195
  'O+ 9.76' => array( 'O+', '9.76' ),
3196
  'EFM710A' => array( 'Oblio', 'Mint 7x', TYPE_TABLET ),
3197
  'Loox' => array( 'Odys', 'Loox', TYPE_TABLET ),
3230
  'R801' => array( 'Oppo', 'Real R801' ),
3231
  'OPPOR801' => array( 'Oppo', 'Real R801' ),
3232
  'OPPOR803' => array( 'Oppo', 'Real R803' ),
3233
+ 'R805' => array( 'Oppo', 'Real R805' ),
3234
  'OPPOR805' => array( 'Oppo', 'Real R805' ),
3235
  'R807' => array( 'Oppo', 'Real R807' ),
3236
  'OPPOR807' => array( 'Oppo', 'Real R807' ),
3237
  'R809T' => array( 'Oppo', 'R809T' ),
3238
+ 'R811' => array( 'Oppo', 'R811' ),
3239
  'R813T' => array( 'Oppo', 'R813T' ),
3240
  'R815' => array( 'Oppo', 'Find Clover R815' ),
3241
  'R815T' => array( 'Oppo', 'Find Clover R815T' ),
3244
  'R819' => array( 'Oppo', 'R819' ),
3245
  'R819T' => array( 'Oppo', 'Real R819T' ),
3246
  'R821' => array( 'Oppo', 'Find Muse R821' ),
3247
+ 'R821T' => array( 'Oppo', 'Find Muse R821T' ),
3248
+ 'R823T' => array( 'Oppo', 'R823T' ),
3249
+ 'R827' => array( 'Oppo', 'Find 5 mini R827' ),
3250
+ 'R827T' => array( 'Oppo', 'R827T' ),
3251
+ 'R829T' => array( 'Oppo', 'R1 R829T' ),
3252
  'OPPOR8111' => array( 'Oppo', 'Find Melody R8111' ),
3253
  'R8113' => array( 'Oppo', 'Find Piano R8113' ),
3254
  'OPPOT29' => array( 'Oppo', 'T29' ),
3259
  'OPPOU7011' => array( 'Oppo', 'Find Gemini U7011' ),
3260
  'U7015' => array( 'Oppo', 'Find Way U7015' ),
3261
  'OP0118-12' => array( 'Oregon Scientific', 'Meep!', TYPE_TABLET ),
3262
+ 'OV-BaseoneII' => array( 'Overmax', 'BaseOne II', TYPE_TABLET ),
3263
+ 'OV-DualDriveMax2' => array( 'Overmax', 'DualDrive Max II', TYPE_TABLET ),
3264
+ 'OV-Newbase2' => array( 'Overmax', 'NewBase 2', TYPE_TABLET ),
3265
+ 'OV-Vertis-01' => array( 'Overmax', 'Vertis 01' ),
3266
+ 'OV-Vertis-02' => array( 'Overmax', 'Vertis 02' ),
3267
  'G100W' => array( 'Packard Bell', 'Liberty Tab G100W', TYPE_TABLET ),
3268
  'P-01D' => array( 'Panasonic', 'P-01D' ),
3269
  'P-02D' => array( 'Panasonic', 'Lumix Phone' ),
3279
  'Panasonic P11' => array( 'Panasonic', 'P11' ),
3280
  'Panasonic P51' => array( 'Panasonic', 'P51' ),
3281
  'Panasonic T31' => array( 'Panasonic', 'T31' ),
3282
+ 'Panasonic KX-PRXA10' => array( 'Panasonic', 'KX-PRXA10', TYPE_DECT ),
3283
+ 'Panasonic KX-PRXA15' => array( 'Panasonic', 'KX-PRXA15', TYPE_DECT ),
3284
  'JT-H580VT' => array( 'Panasonic', 'BizPad 7', TYPE_TABLET ),
3285
  'JT-H581VT' => array( 'Panasonic', 'BizPad 10', TYPE_TABLET ),
3286
  'FZ-A1(A|B)!' => array( 'Panasonic', 'Toughpad', TYPE_TABLET ),
3308
  'IM-A870!' => array( 'Pantech', 'Vega Iron' ),
3309
  'IM-A880!' => array( 'Pantech', 'Vega LTE-A' ),
3310
  'IM-A890!' => array( 'Pantech', 'Vega Secret Note' ),
3311
+ 'IM-A900!' => array( 'Pantech', 'Vega Secret Up' ),
3312
+ 'IM-A910!' => array( 'Pantech', 'Vega Iron 2' ),
3313
  'IM-T100K' => array( 'Pantech', 'Vega N˚ 5', TYPE_TABLET ),
3314
  'IS06' => array( 'Pantech', 'SIRIUS α' ),
3315
  'ADR8995!' => array( 'Pantech', 'Breakout' ),
3333
  'X7G' => array( 'Pearl', 'Touchlet X7G', TYPE_TABLET ),
3334
  'PP4MT-7' => array( 'Pendo', 'Pendopad 4', TYPE_TABLET ),
3335
  'Penta IS701C' => array( 'Penta', 'T-Pad IS701C', TYPE_TABLET ),
3336
+ 'Penta IS703C' => array( 'Penta', 'T-Pad IS703C', TYPE_TABLET ),
3337
+ 'IS801C' => array( 'Penta', 'T-Pad IS801C', TYPE_TABLET ),
3338
  'Penta WS702C' => array( 'Penta', 'T-Pad WS702C', TYPE_TABLET ),
3339
  'Penta WS707C' => array( 'Penta', 'T-Pad WS707C', TYPE_TABLET ),
 
3340
  'Penta WS802C' => array( 'Penta', 'T-Pad WS802C', TYPE_TABLET ),
3341
  'PENTAGRAM TAB 7.3' => array( 'Pentagram', 'Tab 7.3', TYPE_TABLET ),
3342
  'PENTAGRAM TAB Quadra 9.7' => array( 'Pentagram', 'Quadra 9.7', TYPE_TABLET ),
3356
  'Philips W635' => array( 'Philips', 'W635' ),
3357
  'Philips W737' => array( 'Philips', 'W737' ),
3358
  'Philips W832' => array( 'Philips', 'W832' ),
3359
+ 'Philips W3568' => array( 'Philips', 'W3568' ),
3360
  'Philips W8510' => array( 'Philips', 'W8510' ),
3361
+ 'Philips W8555' => array( 'Philips', 'W8555' ),
3362
  'Pioneer S90w' => array( 'Pioneer', 'S90w' ),
3363
  'M8 pro' => array( 'PiPO', 'M8 Pro', TYPE_TABLET ),
3364
  'M9 pro' => array( 'PiPO', 'M9 Pro', TYPE_TABLET ),
3412
  'POLYTRON W2500' => array( 'Polytron', 'W2500 Wizard Twins' ),
3413
  'POLYTRON W3430' => array( 'Polytron', 'W3430 Wizard Crystal' ),
3414
  'POLYTRON W7450' => array( 'Polytron', 'W7450 Wizard Quadra' ),
3415
+ 'POLYTRON W7452' => array( 'Polytron', 'W7452 Quadra S2' ),
3416
  'POLYTRON W7531' => array( 'Polytron', 'W7531' ),
3417
  'POLYTRON W8470' => array( 'Polytron', 'W8470 Wizard Quadra HD' ),
3418
  'ACT2000' => array( 'Poptronix', 'ACT2000', TYPE_TABLET ),
3424
  'PMP3384B' => array( 'Prestigio', 'Multipad 3384', TYPE_TABLET ),
3425
  'PMP3384BRU' => array( 'Prestigio', 'Multipad 3384', TYPE_TABLET ),
3426
  'PMP3470B' => array( 'Prestigio', 'Multipad 3470 Prime+', TYPE_TABLET ),
3427
+ 'PMP3670B' => array( 'Prestigio', 'Multipad 3670 Ultra+', TYPE_TABLET ),
3428
  'PMP3670B-WH' => array( 'Prestigio', 'Multipad 3670 Ultra+', TYPE_TABLET ),
3429
  'PMP3770B' => array( 'Prestigio', 'Multipad 3770', TYPE_TABLET ),
3430
  'PMP3970B' => array( 'Prestigio', 'Multipad 3970 Duo', TYPE_TABLET ),
3432
  '5080C Pro' => array( 'Prestigio', 'Multipad 5080 Pro', TYPE_TABLET ),
3433
  'PMP5080CPRO' => array( 'Prestigio', 'Multipad 5080 Pro', TYPE_TABLET ),
3434
  'PMP5097CPRO' => array( 'Prestigio', 'Multipad 5097 Pro', TYPE_TABLET ),
3435
+ 'PMP5101C3G QUAD' => array( 'Prestigio', 'Multipad 4 Quantum 10.1', TYPE_TABLET ),
3436
+ 'PMP5101C QUAD' => array( 'Prestigio', 'Multipad 4 Quantum 10.1', TYPE_TABLET ),
3437
  'PMP5197DULTRA' => array( 'Prestigio', 'Multipad 5197 Ultra', TYPE_TABLET ),
3438
  'PMP5570C' => array( 'Prestigio', 'Multipad 5570 Pro', TYPE_TABLET ),
3439
  'PMP5580C' => array( 'Prestigio', 'Multipad 5580 Prime', TYPE_TABLET ),
3440
  'PMP5597D' => array( 'Prestigio', 'Multipad 5597 Ultra Duo', TYPE_TABLET ),
3441
+ 'PMP5670C DUO' => array( 'Prestigio', 'Multipad 2 Pro Duo 7.0', TYPE_TABLET ),
3442
  'PMP5770D' => array( 'Prestigio', 'Multipad 5770 Pro', TYPE_TABLET ),
3443
+ 'PMP7100D3G QUAD' => array( 'Prestigio', 'Multipad 7100', TYPE_TABLET ),
3444
+ 'PMP7280D3G QUAD' => array( 'Prestigio', 'Multipad 7280', TYPE_TABLET ),
3445
  'PMP5780D' => array( 'Prestigio', 'Multipad 2 Prime Duo 8.0', TYPE_TABLET ),
3446
+ 'PMP5785C QUAD' => array( 'Prestigio', 'Multipad 4 Quantum 7.85', TYPE_TABLET ),
3447
  'PMP5870C' => array( 'Prestigio', 'Multipad 7.0 Ultra Duo', TYPE_TABLET ),
3448
  'PMP5880D' => array( 'Prestigio', 'Multipad 8.0 Ultra Duo', TYPE_TABLET ),
3449
+ 'PMP7079D QUAD' => array( 'Prestigio', 'Multipad 4 Diamond 7.85', TYPE_TABLET ),
3450
+ 'PMP7079D3G QUAD' => array( 'Prestigio', 'Multipad 4 Diamond 7.85 3G', TYPE_TABLET ),
3451
+ 'PMP7079E3G QUAD' => array( 'Prestigio', 'Multipad 4 Diamond 7.85 3G', TYPE_TABLET ),
3452
+ 'PMP7100D' => array( 'Prestigio', 'Multipad 4 10.1 Ultimate', TYPE_TABLET ),
3453
+ 'PMP7100D3G' => array( 'Prestigio', 'Multipad 4 10.1 Ultimate 3G', TYPE_TABLET ),
3454
+ 'PMP7100D3G QUAD' => array( 'Prestigio', 'Multipad 4 10.1 Ultimate 3G', TYPE_TABLET ),
3455
  'PMP7170B3G' => array( 'Prestigio', 'Multipad 7.0 Prime 3G', TYPE_TABLET ),
3456
+ 'PMP7170B3GCE' => array( 'Prestigio', 'Multipad 7.0 Prime 3G', TYPE_TABLET ),
3457
  'PMP7280C' => array( 'Prestigio', 'Multipad 2 Ultra Duo 8.0', TYPE_TABLET ),
3458
  'PMP7280C3G' => array( 'Prestigio', 'Multipad 2 Ultra Duo 8.0 3G', TYPE_TABLET ),
3459
  'PMP7280C3G DUO' => array( 'Prestigio', 'Multipad 2 Ultra Duo 8.0 3G', TYPE_TABLET ),
3460
+ 'PMP7280C3G QUAD' => array( 'Prestigio', 'Multipad 4 Ultra Quad 8.0 3G', TYPE_TABLET ),
3461
+ 'PMP7380D3G' => array( 'Prestigio', 'Multipad 2 Pro Duo 8.0 3G', TYPE_TABLET ),
3462
+ 'PMT5777 3G' => array( 'Prestigio', 'PMT5777' ),
3463
+ 'PAP3350DUO' => array( 'Prestigio', 'Multiphone 3350 Duo' ),
3464
+ 'PAP3400DUO' => array( 'Prestigio', 'Multiphone 3400 Duo' ),
3465
  'PAP3500 DUO' => array( 'Prestigio', 'Multiphone 3500 Duo' ),
3466
  'PAP3540DUO' => array( 'Prestigio', 'Multiphone 3540 Duo' ),
3467
  'PAP4020DUO' => array( 'Prestigio', 'Multiphone 4020 Duo' ),
3474
  'PAP4500TDUO' => array( 'Prestigio', 'Multiphone 4500 Duo' ),
3475
  'PAP5000TDUO' => array( 'Prestigio', 'Multiphone 5000 Duo' ),
3476
  'PAP5044DUO' => array( 'Prestigio', 'Multiphone 5044 Duo' ),
3477
+ 'PAP5300DUO' => array( 'Prestigio', 'Multiphone 5300 Duo' ),
3478
+ 'PAP5400DUO' => array( 'Prestigio', 'Multiphone 5400 Duo' ),
3479
  'PAP5430' => array( 'Prestigio', 'Multiphone 5430' ),
3480
+ 'PAP5450DUO' => array( 'Prestigio', 'Multiphone 5450 Duo' ),
3481
+ 'PAP5500DUO' => array( 'Prestigio', 'Multiphone 5500 Duo' ),
3482
+ 'PAP7600DUO' => array( 'Prestigio', 'Multiphone 7600 Duo' ),
3483
  'PRBT 100' => array( 'Probook', 'PRBT 100', TYPE_TABLET ),
3484
  'MD-0651' => array( 'Prolink', 'MD-0651', TYPE_TABLET ),
3485
  'MD-0696B' => array( 'Prolink', 'MD-0696B', TYPE_TABLET ),
3486
  'PLT7223G' => array( 'Proscan', 'PLT7223G', TYPE_TABLET ),
3487
+ 'Positivo Mini' => array( 'Positivo', 'Mini', TYPE_TABLET ),
3488
  'TB07FTA' => array( 'Positivo', 'TB07FTA', TYPE_TABLET ),
3489
  'YPY 10FTA' => array( 'Positivo', 'YPY 10FTA', TYPE_TABLET ),
3490
  'Positivo Ypy AB7E' => array( 'Positivo', 'YPY AB7E', TYPE_TABLET ),
3491
+ 'Positivo Ypy AB7F' => array( 'Positivo', 'YPY AB7F', TYPE_TABLET ),
3492
+ 'Positivo Ypy AB7H' => array( 'Positivo', 'YPY AB7H', TYPE_TABLET ),
3493
+ 'Positivo Ypy AB10E' => array( 'Positivo', 'YPY AB10E', TYPE_TABLET ),
3494
  'Positivo BGH Ypy L700' => array( 'Positivo', 'YPY L700', TYPE_TABLET ),
3495
  'Positivo Ypy L700' => array( 'Positivo', 'YPY L700', TYPE_TABLET ),
3496
+ 'Positivo Ypy L700+' => array( 'Positivo', 'YPY L700+', TYPE_TABLET ),
3497
  'Positivo Ypy L700 Kids' => array( 'Positivo', 'YPY L700 Kids', TYPE_TABLET ),
3498
  'Positivo Ypy L1000' => array( 'Positivo', 'YPY L1000', TYPE_TABLET ),
3499
  'Positivo Ypy L1050' => array( 'Positivo', 'YPY L1050', TYPE_TABLET ),
3501
  'YPY S400' => array( 'Positivo', 'YPY S400' ),
3502
  'YPY S500' => array( 'Positivo', 'YPY S500' ),
3503
  'QW TB-1207' => array( 'Qware', 'Pro3', TYPE_TABLET ),
3504
+ 'Ramosi9' => array( 'Ramos', 'I9', TYPE_TABLET ),
3505
  'W6' => array( 'Ramos', 'W6', TYPE_TABLET ),
3506
  'W6HD ICS' => array( 'Ramos', 'W6HD', TYPE_TABLET ),
3507
  'W10' => array( 'Ramos', 'W10', TYPE_TABLET ),
3514
  'W28(Dualcore)' => array( 'Ramos', 'W28 Dual Core', TYPE_TABLET ),
3515
  'W30(QuadCore)' => array( 'Ramos', 'W30 Quad Core', TYPE_TABLET ),
3516
  'w30hd(QuadCore)' => array( 'Ramos', 'W30HD Quad Core', TYPE_TABLET ),
3517
+ 'Ramos W31' => array( 'Ramos', 'W31', TYPE_TABLET ),
3518
  'Ramos W41 QuadCore' => array( 'Ramos', 'W41 Quad Core', TYPE_TABLET ),
3519
  'w42(QuadCore)' => array( 'Ramos', 'W42 Quad Core', TYPE_TABLET ),
3520
  'T11AD!' => array( 'Ramos', 'T11AD', TYPE_TABLET ),
3521
  'Rayhov X9' => array( 'Rayhov', 'X9' ),
3522
  'Readboy G12' => array( 'Readboy', 'G12', TYPE_TABLET ),
3523
+ 'ReederA8R' => array( 'Reeder', 'A8R', TYPE_TABLET ),
3524
  'PlayBook' => array( 'RIM', 'BlackBerry PlayBook', TYPE_TABLET ),
3525
  'RBK-490' => array( 'Ritmix', 'RBK-490', TYPE_TABLET ),
3526
  'RMD-755' => array( 'Ritmix', 'RMD-755', TYPE_TABLET ),
3528
  'RMD-1030' => array( 'Ritmix', 'RMD-1030', TYPE_TABLET ),
3529
  'RMD-1035' => array( 'Ritmix', 'RMD-1035', TYPE_TABLET ),
3530
  'RMD-1040' => array( 'Ritmix', 'RMD-1040', TYPE_TABLET ),
3531
+ 'RMD-1058' => array( 'Ritmix', 'RMD-1058', TYPE_TABLET ),
3532
  'RMP400' => array( 'Ritmix', 'RMP-400', TYPE_TABLET ),
3533
  'RMD-73G' => array( 'Ross&Moor', 'RMD-73G', TYPE_TABLET ),
3534
  'RMD-973G' => array( 'Ross&Moor', 'RMD-973G', TYPE_TABLET ),
3545
  'GT-B5512!' => array( 'Samsung', 'Galaxy Y Pro Duos' ),
3546
  'GT-B7510!' => array( 'Samsung', 'Galaxy Pro' ),
3547
  'GT-B9062' => array( 'Samsung', 'GT-B9062' ),
3548
+ 'GT-B9120' => array( 'Samsung', 'GT-B9120' ),
3549
+ 'GT-B9150' => array( 'Samsung', 'Galaxy HomeSync', TYPE_TELEVISION ),
3550
  'GT-B9388' => array( 'Samsung', 'GT-B9388' ),
3551
  'GT-I55(00|03|08)!' => array( 'Samsung', 'Galaxy 5' ),
3552
  'GT-I5510!' => array( 'Samsung', 'Galaxy 551' ),
3558
  'GT-I8150!' => array( 'Samsung', 'Galaxy W' ),
3559
  'GT-I8160!' => array( 'Samsung', 'Galaxy Ace 2' ),
3560
  'GT-I81(90|91)!' => array( 'Samsung', 'Galaxy S III Mini' ),
3561
+ 'GT-I8200!' => array( 'Samsung', 'Galaxy S III Mini Value Edition' ),
3562
  'GT-I8240!' => array( 'Samsung', 'GT-I8240' ),
3563
  'GT-I8245!' => array( 'Samsung', 'GT-I8245' ),
3564
  'GT-I8250!' => array( 'Samsung', 'GT-I8250' ),
3568
  'GT-I8320!' => array( 'Samsung', 'H1' ),
3569
  'GT-I85(20|30)!' => array( 'Samsung', 'Galaxy Beam' ),
3570
  'GT-I85(50|52|58)!' => array( 'Samsung', 'Galaxy Win' ),
3571
+ 'GT-I8580' => array( 'Samsung', 'Galaxy Core Advance' ),
3572
  'GT-I8730!' => array( 'Samsung', 'Galaxy Express' ),
3573
  'GT-I90(00|08|18|88)!' => array( 'Samsung', 'Galaxy S' ),
3574
  'GT-I9001!' => array( 'Samsung', 'Galaxy S Plus' ),
3575
  'GT-I9003!' => array( 'Samsung', 'Galaxy SL' ),
3576
  'GT-I9010!' => array( 'Samsung', 'Galaxy S Giorgio Armani' ),
3577
  'GT-I9050!' => array( 'Samsung', 'GT-I9050' ),
3578
+ 'GT-I9060!' => array( 'Samsung', 'Galaxy Grand Neo' ),
3579
  'GT-I9070!' => array( 'Samsung', 'Galaxy S Advance' ),
3580
  'GT-I9080!' => array( 'Samsung', 'Galaxy Grand' ),
3581
+ 'GT-I9082!' => array( 'Samsung', 'Galaxy Grand Neo+' ),
3582
  'GT-I91(00|08)!' => array( 'Samsung', 'Galaxy S II' ),
3583
  'GT-I9103!' => array( 'Samsung', 'Galaxy R' ),
3584
  'GT-I9105!' => array( 'Samsung', 'Galaxy S II Plus' ),
3585
  'GT-I9128!' => array( 'Samsung', 'Galaxy Grand' ),
3586
  'GT-I91(50|58)!' => array( 'Samsung', 'Galaxy Mega 5.8' ),
3587
+ 'GT-I9152!' => array( 'Samsung', 'Galaxy Mega 5.8 Plus' ),
3588
  'GT-I91(90|95|97)!' => array( 'Samsung', 'Galaxy S4 Mini' ),
3589
  'GT-I9192!' => array( 'Samsung', 'Galaxy S4 Mini Duos' ),
3590
  'GT-I92(00|05|08)!' => array( 'Samsung', 'Galaxy Mega 6.3' ),
3593
  'GT-I9250!' => array( 'Samsung', 'Galaxy Nexus' ),
3594
  'GT-I92(60|68)!' => array( 'Samsung', 'Galaxy Premier' ),
3595
  'GT-I9295!' => array( 'Samsung', 'Galaxy S4 Active' ),
3596
+ 'GT-I93(00|01|03|05|08)!' => array( 'Samsung', 'Galaxy S III' ),
3597
+ 'GT-I9400' => array( 'Samsung', 'GT-I9400' ), // Unknown
3598
+ 'GT-I9405' => array( 'Samsung', 'GT-I9405' ), // Unknown
3599
  'GT-I95(00|05|07)!' => array( 'Samsung', 'Galaxy S4' ),
3600
  'GT-I95(02|08)!' => array( 'Samsung', 'Galaxy S4 Duos' ),
3601
  'GT-I95(06)!' => array( 'Samsung', 'Galaxy S4 Advance' ),
3602
+ 'GT-I9515!' => array( 'Samsung', 'Galaxy S4 Neo' ), // Maybe
3603
  'GT-I9800!' => array( 'Samsung', 'GT-I9800' ), // Unknown
3604
  'GT-N51(00|05|10|20)!' => array( 'Samsung', 'Galaxy Note 8.0', TYPE_TABLET ),
3605
  'GT-N70(00|05)!' => array( 'Samsung', 'Galaxy Note' ),
3626
  'GT-S5301!' => array( 'Samsung', 'Galaxy Pocket Plus' ),
3627
  'GT-S5302!' => array( 'Samsung', 'Galaxy Pocket Duos' ),
3628
  'GT-S5303!' => array( 'Samsung', 'Galaxy Y Plus' ),
3629
+ 'GT-S5310!' => array( 'Samsung', 'Galaxy Pocket Neo' ),
3630
+ 'GT-S5312!' => array( 'Samsung', 'Galaxy Pocket Neo Duos' ),
3631
  'GT-S53(60|63|69)!' => array( 'Samsung', 'Galaxy Y' ),
3632
  'GT-S5367!' => array( 'Samsung', 'Galaxy Y TV' ),
3633
  'GT-S5368!' => array( 'Samsung', 'Galaxy Y Young' ),
3647
  'GT-S6358!' => array( 'Samsung', 'Galaxy Ace' ),
3648
  'GT-S6500!' => array( 'Samsung', 'Galaxy Mini 2' ),
3649
  'GT-S6702!' => array( 'Samsung', 'Galaxy Y Duos' ),
3650
+ 'GT-S6790!' => array( 'Samsung', 'Galaxy Fame Lite' ),
3651
  'GT-S6802!' => array( 'Samsung', 'Galaxy Ace Duos' ),
3652
  'GT-S68(10|12|18)!' => array( 'Samsung', 'Galaxy Fame' ),
3653
+ 'GT-S72(60|62)!' => array( 'Samsung', 'Galaxy Star Pro' ),
3654
  'GT-S72(70|75)!' => array( 'Samsung', 'Galaxy Ace 3' ),
3655
  'GT-S7273T' => array( 'Samsung', 'Galaxy S II TV' ),
3656
  'GT-S72(72|73)!' => array( 'Samsung', 'Galaxy Ace 3 Duos' ),
3657
+ 'GT-S7390' => array( 'Samsung', 'Galaxy Fresh' ),
3658
+ 'GT-S7392!' => array( 'Samsung', 'Galaxy Trend' ),
3659
  'GT-S75(00|08)!' => array( 'Samsung', 'Galaxy Ace Plus' ),
3660
  'GT-S7560!' => array( 'Samsung', 'Galaxy Ace II x' ),
3661
  'GT-S75(62|68)!' => array( 'Samsung', 'Galaxy S Duos' ),
3662
  'GT-S7570!' => array( 'Samsung', 'Galaxy Trend II' ),
3663
  'GT-S7572!' => array( 'Samsung', 'Galaxy Trend II Duos' ),
3664
+ 'GT-S7580!' => array( 'Samsung', 'Galaxy Trend Plus' ),
3665
+ 'GT-S75(82|83)!' => array( 'Samsung', 'Galaxy S Duos 2' ),
3666
  'GT-S7710!' => array( 'Samsung', 'Galaxy Xcover 2' ),
3667
+ 'GT-S7898' => array( 'Samsung', 'Galaxy Trend 2' ),
3668
  'GT-S8500' => array( 'Samsung', 'Wave' ),
3669
  'GT-S8530' => array( 'Samsung', 'Wave II' ),
3670
  'GT-S9081' => array( 'Samsung', 'GT-S9081' ), // Unknown
3702
  'SCH-I629' => array( 'Samsung', 'SCH-I629' ),
3703
  'SCH-I659' => array( 'Samsung', 'Galaxy Ace Plus' ),
3704
  'SCH-I665' => array( 'Samsung', 'SCH-I665' ), // Unknown
3705
+ 'SCH-I679' => array( 'Samsung', 'SCH-I679' ),
3706
  'SCH-I699!' => array( 'Samsung', 'Galaxy Trend' ),
3707
  'SCH-I739' => array( 'Samsung', 'Galaxy Trend II' ),
3708
  'SCH-I747' => array( 'Samsung', 'Galaxy S III' ),
3712
  'SCH-I815!' => array( 'Samsung', 'Galaxy Tab 7.7', TYPE_TABLET ),
3713
  'SCH-I829' => array( 'Samsung', 'Galaxy Style Duos' ),
3714
  'SCH-I869' => array( 'Samsung', 'Galaxy Win' ),
3715
+ 'SCH-I879!' => array( 'Samsung', 'Galaxy Grand' ),
3716
  'SCH-I905!' => array( 'Samsung', 'Galaxy Tab 10.1', TYPE_TABLET ),
3717
  'SCH-I909' => array( 'Samsung', 'Galaxy S' ),
3718
  'SCH-I915!' => array( 'Samsung', 'Galaxy Tab 2 (10.1)', TYPE_TABLET ),
3723
  'SCH-L710' => array( 'Samsung', 'Galaxy S III' ),
3724
  'SCH-M828!' => array( 'Samsung', 'Galaxy Precedent' ),
3725
  'SCH-N719' => array( 'Samsung', 'Galaxy Note II' ),
3726
+ 'SCH-P709!' => array( 'Samsung', 'Galaxy Mega 5.8' ),
3727
  'SCH-P729' => array( 'Samsung', 'Galaxy Mega 6.3' ),
3728
  'SCH-P739' => array( 'Samsung', 'Galaxy Tab 8.9', TYPE_TABLET ),
3729
  'SCH-R530!' => array( 'Samsung', 'Galaxy S III' ),
3742
  'SCH-R930!' => array( 'Samsung', 'Galaxy S Aviator' ),
3743
  'SCH-R940!' => array( 'Samsung', 'Galaxy S Lightray' ),
3744
  'SCH-R950!' => array( 'Samsung', 'Galaxy Note II' ),
3745
+ 'SCH-R960!' => array( 'Samsung', 'Galaxy Mega 6.3' ),
3746
  'SCH-R970!' => array( 'Samsung', 'Galaxy S4' ),
3747
  'SCH-S720!' => array( 'Samsung', 'Galaxy Proclaim' ),
3748
  'SCH-S735!' => array( 'Samsung', 'Galaxy Discover' ),
3749
  'SCH-S738!' => array( 'Samsung', 'Galaxy Centura' ),
3750
  'SCH-S950!' => array( 'Samsung', 'Galaxy S Showcase' ),
3751
+ 'SCH-S9(60|68)!' => array( 'Samsung', 'Galaxy S III' ),
3752
  'SCH-V727' => array( 'Samsung', 'Galaxy S4' ),
3753
  'SCH-W789!' => array( 'Samsung', 'SCH-W789' ),
3754
  'SCH-W799!' => array( 'Samsung', 'SCH-W799' ),
3787
  'SGH-I9000' => array( 'Samsung', 'Galaxy S' ),
3788
  'SGH-I9300' => array( 'Samsung', 'Galaxy S III' ),
3789
  'SGH-N075!' => array( 'Samsung', 'Galaxy J' ),
3790
+ 'SGH-M819!' => array( 'Samsung', 'Galaxy Mega 6.3' ),
3791
  'SGH-M919!' => array( 'Samsung', 'Galaxy S4' ),
3792
  'SGH-S730!' => array( 'Samsung', 'Galaxy Discover' ),
3793
  'SGH-S959G' => array( 'Samsung', 'Galaxy S II' ),
3833
  'SHV-E330!' => array( 'Samsung', 'Galaxy S4' ),
3834
  'SHV-E370!' => array( 'Samsung', 'Galaxy S4 Mini' ),
3835
  'SHV-E400!' => array( 'Samsung', 'Galaxy Folder' ),
3836
+ 'SHV-E470!' => array( 'Samsung', 'Galaxy S4 Active' ),
3837
  'SHV-E500!' => array( 'Samsung', 'SHV-E500' ),
3838
+ 'SHV-E510!' => array( 'Samsung', 'SHV-E510' ),
3839
  'SHW-M100!' => array( 'Samsung', 'Galaxy A' ),
3840
  'SHW-M110!' => array( 'Samsung', 'Galaxy S' ),
3841
  'SHW-M130L!' => array( 'Samsung', 'Galaxy U' ),
3854
  'SHW-M440!' => array( 'Samsung', 'Galaxy S III' ),
3855
  'SHW-M4(80|85)!' => array( 'Samsung', 'Galaxy Note 10.1', TYPE_TABLET ),
3856
  'SHW-M500!' => array( 'Samsung', 'Galaxy Note 8.0', TYPE_TABLET ),
3857
+ 'SHW-M550!' => array( 'Samsung', 'SHW-M550' ), // Unknown
3858
+ 'SHW-M570!' => array( 'Samsung', 'Galaxy Core Advance' ),
3859
  'SMT-E5015' => array( 'Samsung', 'SMT-E5015', TYPE_TELEVISION ),
3860
  'SMT-i9100' => array( 'Samsung', 'SMT-I9100', TYPE_TABLET ),
3861
  'SM-C1(01|05)!' => array( 'Samsung', 'Galaxy S4 Zoom' ),
3862
+ 'SM-C115' => array( 'Samsung', 'Galaxy K Zoom' ),
3863
+ 'SM-G110!' => array( 'Samsung', 'SM-G110' ), // Unknown
3864
+ 'SM-G310!' => array( 'Samsung', 'Galaxy Ace Style' ),
3865
+ 'SM-G313!' => array( 'Samsung', 'SM-G313' ), // Unknown
3866
+ 'SM-G35(02|08|09)!' => array( 'Samsung', 'Galaxy Trend 3' ),
3867
  'SM-G350!' => array( 'Samsung', 'Galaxy Core Plus' ),
3868
+ 'SM-G3556!' => array( 'Samsung', 'SM-G3556' ), // Unknown
3869
+ 'SM-G3812B!' => array( 'Samsung', 'Galaxy S III Slim' ),
3870
+ 'SM-G3812' => array( 'Samsung', 'Galaxy Win Pro' ),
3871
+ 'SM-G3815' => array( 'Samsung', 'Galaxy Express 2' ),
3872
+ 'SM-G3819!' => array( 'Samsung', 'Galaxy Win Pro' ),
3873
+ 'SM-G386!' => array( 'Samsung', 'Galaxy Core' ), // LTE variant
3874
+ 'SM-G710!' => array( 'Samsung', 'Galaxy Grand 2' ),
3875
  'SM-G730!' => array( 'Samsung', 'Galaxy S III Mini' ),
3876
+ 'SM-G750!' => array( 'Samsung', 'Galaxy S5 Neo' ), // Maybe, codename K Mega / Vasta
3877
+ 'SM-G800!' => array( 'Samsung', 'Galaxy S5 Dx' ), // Maybe, codename K Mini / Atlantic
3878
+ 'SM-G850!' => array( 'Samsung', 'SM-850' ), // Unknown
3879
+ 'SM-G8(60|70)!' => array( 'Samsung', 'Galaxy S5 Active' ), // Maybe
3880
+ 'SM-G900!' => array( 'Samsung', 'Galaxy S5' ),
3881
+ 'SM-G906!!' => array( 'Samsung', 'Galaxy S5 Prime' ), // Maybe, codename KQ / Lentis
3882
+ 'SM-G9098!' => array( 'Samsung', 'SM-9098' ), // Unknown
3883
  'SM-G910!' => array( 'Samsung', 'Galaxy Round' ),
3884
+ 'SM-N75(02|05|07|08)!' => array( 'Samsung', 'Galaxy Note 3 Neo' ),
3885
+ 'SM-N750' => array( 'Samsung', 'Galaxy Note 3 Neo' ),
3886
+ 'SM-N90(00|02|05|06|07|08|09)!' => array( 'Samsung', 'Galaxy Note 3' ),
3887
  'SM-N900!' => array( 'Samsung', 'Galaxy Note 3' ),
3888
+ 'SM-N910!' => array( 'Samsung', 'Galaxy Note 4' ), // Probably
3889
+ 'SM-P6(00|01|02|05)!' => array( 'Samsung', 'Galaxy Note 10.1 (2014)', TYPE_TABLET ),
3890
+ 'SM-P9(00|01|05)!' => array( 'Samsung', 'Galaxy Note Pro', TYPE_TABLET ),
3891
+ 'SM-S780L' => array( 'Samsung', 'SM-S780' ), // Unknown
3892
+ 'SM-S890L' => array( 'Samsung', 'SM-S890' ), // Unknown
3893
+ 'SM-T1(10|11)!' => array( 'Samsung', 'Galaxy Tab 3 Lite', TYPE_TABLET ),
3894
  'SM-T2105' => array( 'Samsung', 'Galaxy Tab 3 Kids', TYPE_TABLET ),
3895
  'SM-T2(10|11|15|17)!' => array( 'Samsung', 'Galaxy Tab 3 (7.0)', TYPE_TABLET ),
3896
+ 'SM-T2558' => array( 'Samsung', 'Galaxy W' ), // Maybe, 7-inch phablet
3897
+ 'SM-T2(30|31|35)!' => array( 'Samsung', 'Galaxy Tab 4 (7.0)', TYPE_TABLET ),
3898
  'SM-T3(10|11|15)!' => array( 'Samsung', 'Galaxy Tab 3 (8.0)', TYPE_TABLET ),
3899
+ 'SM-T3(20|25)!' => array( 'Samsung', 'Galaxy Tab Pro 8.4', TYPE_TABLET ),
3900
+ 'SM-T3(30|31|35|37)!' => array( 'Samsung', 'Galaxy Tab 4 (8.0)', TYPE_TABLET ),
3901
+ 'SM-T5(20|25)!' => array( 'Samsung', 'Galaxy Tab Pro 10.1', TYPE_TABLET ),
3902
+ 'SM-T5(30|31|35)!' => array( 'Samsung', 'Galaxy Tab 4 (10.1)', TYPE_TABLET ),
3903
+ 'SM-T7(00|05)!' => array( 'Samsung', 'Galaxy Tab S 8.4', TYPE_TABLET ), // Probably
3904
+ 'SM-T8(00|01|05|07)!' => array( 'Samsung', 'Galaxy Tab S 10.5', TYPE_TABLET ), // Probably
3905
+ 'SM-T9(00|05)!' => array( 'Samsung', 'Galaxy Tab Pro 12.2', TYPE_TABLET ),
3906
  'SM-W2014' => array( 'Samsung', 'SM-W2014' ),
3907
  'SPH-D600' => array( 'Samsung', 'Conquer 4G' ),
3908
  'SPH-D700' => array( 'Samsung', 'Epic 4G' ),
3914
  'SPH-L600' => array( 'Samsung', 'Galaxy Mega 6.3' ),
3915
  'SPH-L700' => array( 'Samsung', 'Galaxy Nexus' ),
3916
  'SPH-L710' => array( 'Samsung', 'Galaxy S III' ),
3917
+ 'SPH-L720!' => array( 'Samsung', 'Galaxy S4' ),
3918
  'SPH-L900' => array( 'Samsung', 'Galaxy Note II' ),
3919
  'SPH-M820!' => array( 'Samsung', 'Galaxy Prevail' ),
3920
  'SPH-M830' => array( 'Samsung', 'Galaxy Rush' ),
4015
  'SBM206SH' => array( 'Sharp', 'Aquos 206SH' ),
4016
  'SH-01D' => array( 'Sharp', 'Aquos SH-01D' ),
4017
  'SH-01E' => array( 'Sharp', 'Aquos si SH-01E' ),
4018
+ 'SH-01F' => array( 'Sharp', 'Aquos Zeta SH-01F' ),
4019
  'SH-02D' => array( 'Sharp', 'Aquos slider SH-02D' ),
4020
  'SH-02E' => array( 'Sharp', 'Aquos Zeta SH-02E' ),
4021
  'SH-02F' => array( 'Sharp', 'Aquos EX SH-02F' ),
4022
  'SH-03C' => array( 'Sharp', 'Lynx 3D' ),
4023
+ 'SH-03F' => array( 'Sharp', 'SH-03F' ),
4024
  'SH-04E' => array( 'Sharp', 'Aquos EX SH-04E' ),
4025
  'SH-06D' => array( 'Sharp', 'Aquos SH-06D' ),
4026
  'SH-06DNERV' => array( 'Sharp', 'NERV SH-06D' ),
4035
  'SH-12C' => array( 'Sharp', 'Aquos' ),
4036
  'SH-13C' => array( 'Sharp', 'Aquos f SH-13C' ),
4037
  'SH80F' => array( 'Sharp', 'Aquos SH80F' ),
4038
+ 'SHP-SH330T' => array( 'Sharp', 'SH330T' ),
4039
  'SH530U' => array( 'Sharp', 'SH530U' ),
4040
  'SH-631M' => array( 'Sharp', 'SH631M' ),
4041
  'SH631W' => array( 'Sharp', 'SH631W' ),
4042
+ 'SH837M' => array( 'Sharp', 'SH837M' ),
4043
  'SH837W' => array( 'Sharp', 'SH837W' ),
4044
  'SH930W' => array( 'Sharp', 'SH930W' ),
4045
  'SH931W' => array( 'Sharp', 'SH931W' ),
4054
  'SHL21' => array( 'Sharp', 'Aquos Serie SHL21' ),
4055
  'SHL22' => array( 'Sharp', 'Aquos Serie SHL22' ),
4056
  'SHL23' => array( 'Sharp', 'Aquos Serie SHL23' ),
4057
+ 'SHL24' => array( 'Sharp', 'Aquos Serie SHL24' ),
4058
  'SHT21' => array( 'Sharp', 'Aquos Pad SHT21', TYPE_TABLET ),
4059
+ 'SHT22' => array( 'Sharp', 'Aquos Pad SHT22', TYPE_TABLET ),
4060
  'INFOBAR C01' => array( 'Sharp', 'INFOBAR C01' ),
4061
  'WX04SH' => array( 'Sharp', 'Aquos es' ),
4062
  'SPX-5' => array( 'Simvalley', 'SPX-5' ),
4066
  'Skyworth PE90' => array( 'Skyworth', 'PE90' ),
4067
  'WF7C' => array( 'Smartbitt', 'WF7C', TYPE_TABLET ),
4068
  'Andromax-c' => array( 'Smartfren', 'Andromax C' ),
4069
+ 'Andromax AD687G' => array( 'Smartfren', 'Andromax G' ),
4070
  'New Andromax-i' => array( 'Smartfren', 'Andromax I' ),
4071
+ 'Andromax AD683J' => array( 'Smartfren', 'Andromax I2' ),
4072
+ 'Smartfren Andromax AD689G' => array( 'Smartfren', 'Andromax I3' ),
4073
  'Andromax U' => array( 'Smartfren', 'Andromax U' ),
4074
  'Smartfren Tab 7' => array( 'Smartfren', 'Tab 7' ),
4075
  'SmartQ G7' => array( 'SmartQ', 'G7', TYPE_TABLET ),
4093
  'C55(02|03)!' => array( 'Sony', 'Xperia ZR' ), // Dogo
4094
  'C65(02|03|06)!' => array( 'Sony', 'Xperia ZL' ), // Odin
4095
  'C66(02|03|06|16)!' => array( 'Sony', 'Xperia Z' ), // Yuga
4096
+ 'C670[0-9]!' => array( 'Sony', 'C670x' ), // Itsuki
4097
  'C68(02|06|33|43)!' => array( 'Sony', 'Xperia Z Ultra' ), // Togari
4098
+ 'C69(02|03|06|43)!' => array( 'Sony', 'Xperia Z1' ), // Honami
4099
+ 'C6916' => array( 'Sony', 'Xperia Z1s' ), // ...
4100
+ 'D20(04|05)!' => array( 'Sony', 'Xperia E1' ), // Falcon
4101
+ 'D21(04|05|14)!' => array( 'Sony', 'Xperia E1 dual' ), // ...
4102
+ 'D23(02|03|05|06)!' => array( 'Sony', 'Xperia M2' ), // ...
4103
+ 'D51(03)!' => array( 'Sony', 'Xperia G' ), // ...
4104
+ 'D53(03|06|22)!' => array( 'Sony', 'Xperia T2 Ultra' ), // Tianchi
4105
+ 'D55(03)!' => array( 'Sony', 'Xperia Z1 Compact' ), // Amami
4106
+ 'D65(02|03|43)!' => array( 'Sony', 'Xperia Z2' ), // ...
4107
  'E10(a|i|iv)!' => array( 'Sony Ericsson', 'Xperia X10 Mini' ), // Robyn
4108
  'E15(a|i|iv|i-o)?$!' => array( 'Sony Ericsson', 'Xperia X8' ), // Shakira
4109
  'E16i!' => array( 'Sony Ericsson', 'W8 Walkman' ), // Shakira Walkman
4110
  'L35h' => array( 'Sony', 'Xperia ZL' ), // Odin
4111
  'L36h' => array( 'Sony', 'Xperia Z' ), // Yuga
4112
+ 'L39(h|t|u)!' => array( 'Sony', 'Xperia Z1' ), // Honami
4113
+ 'L50(w|t)!' => array( 'Sony', 'Xperia Z2' ), // ...
4114
  'LT11i!' => array( 'Sony Ericsson', 'Xperia Neo V' ), // Haida
4115
  'LT15(a|i|iv|i-o)?$!' => array( 'Sony Ericsson', 'Xperia Arc' ), // Anzu
4116
  'LT15i Speed Edition' => array( 'Sony Ericsson', 'Xperia Arc' ), // Anzu
4127
  'LT30(a|p)!' => array( 'Sony', 'Xperia T' ), // Mint
4128
  '(SNM\-)?M35(c|h|t|ts)!' => array( 'Sony', 'Xperia SP' ), // HuaShan
4129
  'M36h!' => array( 'Sony', 'Xperia ZR' ), // Dogo
4130
+ 'M51w!' => array( 'Sony', 'Xperia Z1 Compact' ), // Amami
4131
  'MK16(a|i)!' => array( 'Sony Ericsson', 'Xperia Pro' ), // Iyokan
4132
  'MT11(a|i|iv|i-o)!' => array( 'Sony Ericsson', 'Xperia Neo V' ), // Haida
4133
  'MT15(a|i|iv|i-o)!' => array( 'Sony Ericsson', 'Xperia Neo' ), // Hallon
4136
  'R800(a|at|i|iv|x)!' => array( 'Sony Ericsson', 'Xperia Play' ), // Zeus
4137
  'S36h' => array( 'Sony', 'Xperia L' ), // TaoShan
4138
  'S39h' => array( 'Sony', 'Xperia C' ), // CN3
4139
+ 'S50h' => array( 'Sony', 'Xperia M2' ), // ...
4140
  'SK17(a|i|iv|i-o)!' => array( 'Sony Ericsson', 'Xperia Mini Pro' ), // Mango
4141
  'ST15(a|i)!' => array( 'Sony Ericsson', 'Xperia Mini' ), // Smultron
4142
  'ST17(a|i)!' => array( 'Sony Ericsson', 'Xperia Active' ), // Satsuma
4156
  'X10 ?(Mini Pro)$!' => array( 'Sony Ericsson', 'Xperia X10 Mini Pro' ), // Mimmi
4157
  'X10 ?(Mini)$!' => array( 'Sony Ericsson', 'Xperia X10 Mini' ), // Robyn
4158
  'XL39h' => array( 'Sony', 'Xperia Z Ultra' ), // Togari
4159
+ 'XM50h' => array( 'Sony', 'Xperia T2 Ultra' ), // Tianchi
4160
+ 'XM50t' => array( 'Sony', 'Xperia T2 Ultra' ), // Tianchi
4161
  'Z1i' => array( 'Sony Ericsson', 'Xperia Play' ), // Zeus
4162
  'S51SE' => array( 'Sony Ericsson', 'Xperia Mini' ), // Smultron
4163
  'IS11S' => array( 'Sony Ericsson', 'Xperia Acro' ), // Akane
4170
  'SO-02C' => array( 'Sony Ericsson', 'Xperia Acro' ), // Azusa
4171
  'SO-02D' => array( 'Sony Ericsson', 'Xperia NX' ), // Nozomi
4172
  'SO-02E' => array( 'Sony', 'Xperia Z' ), // Yuga
4173
+ 'SO-02F' => array( 'Sony', 'Xperia Z1f' ), // Itsuki
4174
  'SO-03C' => array( 'Sony Ericsson', 'Xperia Ray' ), // Urushi
4175
  'SO-03D' => array( 'Sony Ericsson', 'Xperia Acro HD' ), // Hikari
4176
  'SO-03E' => array( 'Sony', 'Xperia Tablet Z', TYPE_TABLET ), // Pollux
4177
+ 'SO-03F' => array( 'Sony', 'Xperia Z2' ), // ...
4178
  'SO-04D' => array( 'Sony', 'Xperia GX' ), // Hayabusa
4179
  'SO-04E' => array( 'Sony', 'Xperia A' ), // Dogo
4180
+ 'SO-04F' => array( 'Sony', 'Xperia A2' ), // Altair
4181
  'SO-05D' => array( 'Sony', 'Xperia SX' ), // Komachi
4182
  'SOL21' => array( 'Sony', 'Xperia VL' ), // Surf
4183
  'SOL22' => array( 'Sony', 'Xperia UL' ), // Gaga
4184
  'SOL23' => array( 'Sony', 'Xperia Z1' ), // Honami
4185
  'SOL24' => array( 'Sony', 'Xperia Z Ultra' ), // Togari
4186
+ 'SOL25' => array( 'Sony', 'Xperia ZL2' ), // ...
4187
  'Xperia X1' => array( 'Sony Ericsson', 'Xperia X1' ),
4188
  'Xperia X8' => array( 'Sony Ericsson', 'Xperia X8' ), // Shakira
4189
  'Xperia X10' => array( 'Sony Ericsson', 'Xperia X10' ), // Rachael
4223
  'Tablet S' => array( 'Sony', 'Tablet S', TYPE_TABLET ),
4224
  'SGPT(12|13)!' => array( 'Sony', 'Xperia Tablet S', TYPE_TABLET ),
4225
  'SGP3(11|12|21|41|51)!' => array( 'Sony', 'Xperia Tablet Z', TYPE_TABLET ),
4226
+ 'SGP5(21|41)!' => array( 'Sony', 'Xperia Tablet Z2', TYPE_TABLET ),
4227
  'NWZ?-Z1000Series!' => array( 'Sony', 'Walkman Z', TYPE_MEDIA ),
4228
  'NSZ-GP9' => array( 'Sony', 'NSZ-GP9', TYPE_TELEVISION, FLAG_GOOGLETV ),
4229
  'NSZ-GS7' => array( 'Sony', 'NSZ-GS7', TYPE_TELEVISION, FLAG_GOOGLETV ),
4230
  'NSZ-GT1' => array( 'Sony', 'NSZ-GT1', TYPE_TELEVISION, FLAG_GOOGLETV ),
4231
  'NSZ-GU1' => array( 'Sony', 'BRAVIA Smart Stick NSZ-GU1', TYPE_TELEVISION, FLAG_GOOGLETV ),
4232
+ 'PRS-T1' => array( 'Sony', 'Reader PRS-T1', TYPE_EREADER ),
4233
  'Spice Mi280' => array( 'Spice', 'Mi-280' ),
4234
  'SPICE Mi-285' => array( 'Spice', 'Mi-285' ),
4235
  'Spice Mi300' => array( 'Spice', 'Mi-300' ),
4239
  'Spice Mi-350!' => array( 'Spice', 'Mi-350' ),
4240
  'Spice Mi-351' => array( 'Spice', 'Mi-351' ),
4241
  'Spice MI352' => array( 'Spice', 'Mi-352' ),
4242
+ 'Spice MI-352' => array( 'Spice', 'Mi-352' ),
4243
  'Spice Mi-355' => array( 'Spice', 'Mi-355' ),
4244
+ 'MI-355' => array( 'Spice', 'Mi-355' ),
4245
  'Mi406' => array( 'Spice', 'Mi-406' ),
4246
  'CSL-MI410' => array( 'Spice', 'Mi-410' ),
4247
+ 'Spice MI410' => array( 'Spice', 'Mi-410' ),
4248
  'Spice Mi-425' => array( 'Spice', 'Mi-425' ),
4249
  'Spice Mi-435' => array( 'Spice', 'Mi-435' ),
4250
  'Spice Mi-492' => array( 'Spice', 'Mi-492' ),
4251
  'Spice Mi-495' => array( 'Spice', 'Mi-495' ),
4252
+ 'Spice Mi-496' => array( 'Spice', 'Mi-496' ),
4253
  'Spice Mi-500' => array( 'Spice', 'Mi-500' ),
4254
  'Mi501' => array( 'Spice', 'Mi-501' ),
4255
  'Spice Mi-502' => array( 'Spice', 'Mi-502' ),
4256
+ 'Spice Mi-502n' => array( 'Spice', 'Mi-502' ),
4257
+ 'Spice Mi-504' => array( 'Spice', 'Mi-504' ),
4258
  'Spice Mi-515' => array( 'Spice', 'Mi-515' ),
4259
  'Spice Mi-530' => array( 'Spice', 'Mi-530' ),
4260
  'Spice Mi-535' => array( 'Spice', 'Mi-535' ),
4269
  'e1109 v73!' => array( 'Star', 'X18i' ),
4270
  'Starmobile ASTRA' => array( 'Starmobile', 'Astra' ),
4271
  'Starmobile CRYSTAL' => array( 'Starmobile', 'Crystal' ),
4272
+ 'Starmobile DIAMOND V3' => array( 'Starmobile', 'Diamond V3' ),
4273
+ 'Starmobile Diamond X1' => array( 'Starmobile', 'Diamond X1' ),
4274
  'Starmobile ENERGY' => array( 'Starmobile', 'Energy' ),
4275
+ 'Starmobile GOAL' => array( 'Starmobile', 'Goal' ),
4276
  'Starmobile JUMP' => array( 'Starmobile', 'Jump' ),
4277
  'Starmobile KNIGHT' => array( 'Starmobile', 'Knight' ),
4278
  'eZee\'Tab10c' => array( 'Storex', 'eZee\'Tab 10c', TYPE_TABLET ),
4322
  'TCL S520' => array( 'TCL', 'S520' ),
4323
  '(TCL )?S600!' => array( 'TCL', 'S600' ),
4324
  'TCL S700T' => array( 'TCL', 'S700' ),
4325
+ 'TCL S720T' => array( 'TCL', 'S720' ),
4326
  'TCL S800' => array( 'TCL', 'S800' ),
4327
  'TCL S810' => array( 'TCL', 'S810' ),
4328
  'TCL S820' => array( 'TCL', 'S820' ),
4329
  'TCL S826L' => array( 'TCL', 'S826' ),
4330
  'TCL S830' => array( 'TCL', 'S830' ),
4331
+ 'TCL S830U' => array( 'TCL', 'S830' ),
4332
+ 'TCL S838M' => array( 'TCL', 'S838' ),
4333
  'TCL S850' => array( 'TCL', 'S850' ),
4334
  'TCL S860' => array( 'TCL', 'S860' ),
4335
  'TCL S900' => array( 'TCL', 'S900' ),
4336
  'TCL S950!' => array( 'TCL', 'S950' ),
4337
+ 'TCL S960!' => array( 'TCL', 'S960' ),
4338
  'TCL W939' => array( 'TCL', 'W939' ),
4339
  'TCL W969' => array( 'TCL', 'W969' ),
4340
  'TCL Y710' => array( 'TCL', 'Y710' ),
4341
  'TCL Y900' => array( 'TCL', 'Y900' ),
4342
+ 'TCL Y910' => array( 'TCL', 'Hero N3' ),
4343
+ 'TCL Y910T' => array( 'TCL', 'Hero N3' ),
4344
  'TCL Google TV TV' => array( 'TCL', 'MoVo UD TV', TYPE_TELEVISION, FLAG_GOOGLETV ),
4345
  'TECNO B3' => array( 'Tecno', 'B3' ),
4346
  'TECNO D1' => array( 'Tecno', 'D1' ),
4347
  'TECNO D3' => array( 'Tecno', 'D3' ),
4348
  'TECNO D5' => array( 'Tecno', 'D5' ),
4349
+ 'TECNO D9' => array( 'Tecno', 'D9' ),
4350
  'TECNO F7' => array( 'Tecno', 'Phantom A+' ),
4351
  'TECNO F8' => array( 'Tecno', 'Phantom All' ),
4352
  'TECNO L3' => array( 'Tecno', 'L3' ),
4353
  'TECNO M3' => array( 'Tecno', 'M3' ),
4354
  'TECNO M7' => array( 'Tecno', 'M7' ),
4355
+ 'TECNO M9' => array( 'Tecno', 'M9' ),
4356
  'TECNO N3' => array( 'Tecno', 'N3' ),
4357
  'TECNO N3S' => array( 'Tecno', 'N3S' ),
4358
  'TECNO N7' => array( 'Tecno', 'N7' ),
4363
  'TECNO P9' => array( 'Tecno', 'P9' ),
4364
  'TECNO Q1' => array( 'Tecno', 'Q1' ),
4365
  'TECNO S3' => array( 'Tecno', 'S3' ),
4366
+ 'TECNO S5' => array( 'Tecno', 'S5' ),
4367
  'TECNO T1' => array( 'Tecno', 'T1' ),
4368
  'Xtab1081HD' => array( 'Techtab', 'Xtab 1081 HD', TYPE_TABLET ),
4369
  'A10HD(N9A3)' => array( 'Teclast', 'A10HD', TYPE_TABLET ),
4381
  'tegav2' => array( 'Tegatech', 'TEGA v2', TYPE_TABLET ),
4382
  'T3696' => array( 'Telsda', 'T3696' ),
4383
  'Tensent S9000' => array( 'Tensent', 'S9000' ),
4384
+ 'TM-7047HD 3G' => array( 'teXet', 'TM-7047HD', TYPE_TABLET ),
4385
  'TEXET TM-4677' => array( 'teXet', 'TM-4677', TYPE_MEDIA ),
4386
+ 'TM-4677' => array( 'teXet', 'TM-4677', TYPE_MEDIA ),
4387
  'TM-7024' => array( 'teXet', 'TM-7024', TYPE_TABLET ),
4388
  'TM-7025' => array( 'teXet', 'TM-7025', TYPE_TABLET ),
4389
  'TM-7037W' => array( 'teXet', 'TM-7037W', TYPE_TABLET ),
4394
  'Ultimate10' => array( 'Tomtec', 'Ultimate10', TYPE_TABLET ),
4395
  'Ultimate10-Android4.0' => array( 'Tomtec', 'Ultimate10', TYPE_TABLET ),
4396
  'ThL A2' => array( 'THL', 'A2' ),
4397
+ 'ThL T3' => array( 'THL', 'T3' ),
4398
+ 'thl T100' => array( 'THL', 'T100' ),
4399
+ 'thl T100S' => array( 'THL', 'T100S' ),
4400
  'ThL V7' => array( 'THL', 'V7' ),
4401
  'ThL V8' => array( 'THL', 'V8' ),
4402
  'ThL V9' => array( 'THL', 'V9' ),
4414
  'W8 beyond' => array( 'THL', 'W8 beyond' ),
4415
  'ThL W11' => array( 'THL', 'W11' ),
4416
  'W100' => array( 'THL', 'W100' ),
4417
+ 'Thl w100' => array( 'THL', 'W100' ),
4418
+ 'THL W200' => array( 'THL', 'W200' ),
4419
+ 'ThL W300' => array( 'THL', 'W300' ),
4420
  'TizzBird S20T' => array( 'TizzBird', 'S20T', TYPE_TELEVISION ),
4421
  'TOOKY T83' => array( 'Tooky', 'T83' ),
4422
  'TOOKY T85' => array( 'Tooky', 'T85' ),
4423
  'TOOKY T1982' => array( 'Tooky', 'T1982' ),
4424
+ 'TOOKY T1992' => array( 'Tooky', 'T1992' ),
4425
  'TSB CLOUD COMPANION;TOSHIBA AC AND AZ' => array( 'Toshiba', 'Dynabook AZ', 'desktop' ),
4426
  'TOSHIBA AC AND AZ' => array( 'Toshiba', 'Dynabook AZ', 'desktop' ),
4427
  'TOSHIBA FOLIO AND A' => array( 'Toshiba', 'Folio 100', TYPE_TABLET ),
4491
  'VSD220' => array( 'ViewSonic', 'VSD220', TYPE_DESKTOP ),
4492
  'VINUS V8' => array( 'Vinus', 'V8' ),
4493
  'VL-107L' => array( 'Visual Land', 'Prestige 7', TYPE_TABLET ),
4494
+ 'VL-109' => array( 'Visual Land', 'Connect 9', TYPE_TABLET ),
4495
+ 'VL-110' => array( 'Visual Land', 'Prestige 10', TYPE_TABLET ),
4496
+ 'VL-879' => array( 'Visual Land', 'Connect 7', TYPE_TABLET ),
4497
  'vivo E1' => array( 'Vivo', 'E1' ),
4498
  'vivo E1t' => array( 'Vivo', 'E1t' ),
4499
  'vivo E3' => array( 'Vivo', 'E3' ),
4521
  'vivo X3t' => array( 'Vivo', 'X3T' ),
4522
  'vivo Xplay' => array( 'Vivo', 'Xplay' ),
4523
  'vivo X510t' => array( 'Vivo', 'Xplay' ),
4524
+ 'vivo Xplay3S' => array( 'Vivo', 'Xplay 3S' ),
4525
+ 'vivo Xplay3S A' => array( 'Vivo', 'Xplay 3S' ),
4526
  'vivo Y1' => array( 'Vivo', 'Y1' ),
4527
  'vivo Y3t' => array( 'Vivo', 'Y3T' ),
4528
  'vivo Y11' => array( 'Vivo', 'Y11' ),
4529
  'vivo Y11i T' => array( 'Vivo', 'Y11i T' ),
4530
  'vivo Y11t' => array( 'Vivo', 'Y11T' ),
4531
+ 'vivo Y15T' => array( 'Vivo', 'Y15T' ),
4532
+ 'vivo Y17T' => array( 'Vivo', 'Y17T' ),
4533
+ 'vivo Y17W' => array( 'Vivo', 'Y17W' ),
4534
  'vivo Y19t' => array( 'Vivo', 'Y19T' ),
4535
+ 'vivo Y20T' => array( 'Vivo', 'Y20T' ),
4536
  'VTAB1008' => array( 'Vizio', 'VTAB1008', TYPE_TABLET ),
4537
  'VTAB3010' => array( 'Vizio', 'VTAB3010', TYPE_TABLET ),
4538
  'VAP430' => array( 'Vizio', 'Co-Star', TYPE_TELEVISION, FLAG_GOOGLETV ),
4539
  'VOTO W5300' => array( 'VOTO', 'W5300' ),
4540
  'Vsun i9' => array( 'Vsun Mobile', 'i9' ),
4541
  'WALTON Primo C1' => array( 'Walton', 'Primo C1' ),
4542
+ 'Primo C2' => array( 'Walton', 'Primo C2' ),
4543
  'WALTON Primo-D1' => array( 'Walton', 'Primo D1' ),
4544
  'Primo F1' => array( 'Walton', 'Primo F1' ),
4545
+ 'Primo F2' => array( 'Walton', 'Primo F2' ),
4546
+ 'Primo-F2' => array( 'Walton', 'Primo F2' ),
4547
+ 'Primo F3' => array( 'Walton', 'Primo F3' ),
4548
+ 'Primo F3i' => array( 'Walton', 'Primo F3i' ),
4549
  'WALTON Primo-G1' => array( 'Walton', 'Primo G1' ),
4550
  'Primo H2' => array( 'Walton', 'Primo H2' ),
4551
  'WALTON Primo-N1' => array( 'Walton', 'Primo N1' ),
4552
  'Primo-N1' => array( 'Walton', 'Primo N1' ),
4553
  'Primo NX' => array( 'Walton', 'Primo NX' ),
4554
+ 'Walton Primo R1' => array( 'Walton', 'Primo R1' ),
4555
+ 'Primo R2' => array( 'Walton', 'Primo R2' ),
4556
  '(WALTON )?Primo-X1!' => array( 'Walton', 'Primo X1' ),
4557
  'Primo-X2' => array( 'Walton', 'Primo X2' ),
4558
+ 'Primo Walpad 7' => array( 'Walton', 'Primo Walpad 7', TYPE_TABLET ),
4559
  'xPAD-70' => array( 'WayteQ', 'xPAD-70', TYPE_TABLET ),
4560
  'xTAB-70!' => array( 'WayteQ', 'xTAB-70', TYPE_TABLET ),
4561
  'WellcoM-A99' => array( 'WellcoM', 'A99' ),
4591
  'N101 DUAL CORE!' => array( 'Window', 'N101 Dual Core', TYPE_TABLET ),
4592
  'N612' => array( 'Wishway', 'N612' ),
4593
  'A81E' => array( 'Witstech', 'A81E', TYPE_TABLET ),
4594
+ 'miTab BROOKLYN' => array( 'Wolder', 'miTab BROOKLYN', TYPE_TABLET ),
4595
+ 'miTab EPSILON' => array( 'Wolder', 'miTab EPSILON', TYPE_TABLET ),
4596
+ 'miTab-GENIUS' => array( 'Wolder', 'miTab GENIUS', TYPE_TABLET ),
4597
  'AT-AS35D' => array( 'Wolfgang', 'AT-AS35D' ),
4598
  'AT-AS40D' => array( 'Wolfgang', 'AT-AS40D' ),
4599
+ 'AT-AS40D2' => array( 'Wolfgang', 'AT-AS40D2' ),
4600
  'AT-AS40SE' => array( 'Wolfgang', 'AT-AS40SE' ),
4601
  'AT-AS43D' => array( 'Wolfgang', 'AT-AS43D' ),
4602
  'AT-AS43D2' => array( 'Wolfgang', 'AT-AS43D2' ),
4603
  'AT-AS43D3' => array( 'Wolfgang', 'AT-AS43D3' ),
4604
+ 'AT-AS43D4' => array( 'Wolfgang', 'AT-AS43D4' ),
4605
+ 'AT-AS45FW' => array( 'Wolfgang', 'AT-AS45FW' ),
4606
  'AT-AS45SE' => array( 'Wolfgang', 'AT-AS45SE' ),
4607
  'AT-AS45IPS' => array( 'Wolfgang', 'AT-AS45IPS' ),
4608
+ 'AT-AS45qHD' => array( 'Wolfgang', 'AT-AS45qHD' ),
4609
+ 'AT-AS50SE' => array( 'Wolfgang', 'AT-AS50SE' ),
4610
+ 'AT-AS50Q' => array( 'Wolfgang', 'AT-AS50Q' ),
4611
  'AT-AS53N' => array( 'Wolfgang', 'AT-AS53N' ),
4612
  'M12' => array( 'Wopad', 'M12', TYPE_TABLET ),
4613
  'WM8650' => array( 'WonderMedia', 'WM8650', TYPE_TABLET ),
4630
  'MI 2SC' => array( 'Xiaomi', 'MI-2S' ),
4631
  'Xiaomi MI-2S' => array( 'Xiaomi', 'MI-2S' ),
4632
  'MI 2A' => array( 'Xiaomi', 'MI-2A' ),
4633
+ 'Mi3' => array( 'Xiaomi', 'MI-3' ),
4634
  'MI 3' => array( 'Xiaomi', 'MI-3' ),
4635
+ 'MI 3C' => array( 'Xiaomi', 'MI-3C' ),
4636
+ 'MI 3W' => array( 'Xiaomi', 'MI-3W' ),
4637
+ '2013022' => array( 'Xiaomi', 'Hongmi' ),
4638
+ '2013023' => array( 'Xiaomi', 'Hongmi' ),
4639
  'MiBOX_iCNTV' => array( 'Xiaomi', 'MiBox', TYPE_TELEVISION ),
4640
  'iX101T1' => array( 'Xplore', 'iX101T1', TYPE_TABLET ),
4641
  'X403' => array( 'Xtouch', 'X403' ),
4676
  'Light Tab 2' => array( 'ZTE', 'Light Tab 2', TYPE_TABLET ),
4677
  'V9C' => array( 'ZTE', 'Light Tab 3', TYPE_TABLET ),
4678
  'ZTE V72A' => array( 'ZTE', 'V72A', TYPE_TABLET ),
4679
+ 'ZTE T82' => array( 'ZTE', 'T82 Grand X LTE' ),
4680
+ 'ZTE T83' => array( 'ZTE', 'T83' ),
4681
+ 'ZTE T86' => array( 'ZTE', 'T86' ),
4682
  'ZTE T T98' => array( 'ZTE', 'T98', TYPE_TABLET ),
4683
  'V55' => array( 'ZTE', 'Optik', TYPE_TABLET ),
4684
  'Acqua' => array( 'ZTE', 'Acqua' ),
4685
  'ZTE Blade' => array( 'ZTE', 'Blade' ),
4686
  'a5' => array( 'ZTE', 'Blade' ),
4687
+ 'ZTE Blade G' => array( 'ZTE', 'Blade G' ),
4688
+ 'Blade Super' => array( 'ZTE', 'Blade Super' ),
4689
  'Blade S' => array( 'ZTE', 'Blade S' ),
4690
  'Crescent' => array( 'ZTE', 'Blade S' ),
4691
+ 'ZTE Blade L2' => array( 'ZTE', 'Blade L2' ),
4692
  'ZTE Grand X Classic' => array( 'ZTE', 'Grand X Classic' ),
4693
  'ZTE Kis Lite' => array( 'ZTE', 'Kis Lite' ),
4694
  'Skate' => array( 'ZTE', 'Skate' ),
4697
  'X500' => array( 'ZTE', 'X500 Score' ),
4698
  'ZTE X500' => array( 'ZTE', 'X500 Score' ),
4699
  'ZTE C X500' => array( 'ZTE', 'X500 Score' ),
4700
+ 'ZTE Q501U' => array( 'ZTE', 'Q501' ),
4701
  'ZTE C N600!' => array( 'ZTE', 'N600' ),
4702
  'ZTE C N606' => array( 'ZTE', 'N606' ),
4703
+ 'Z665C' => array( 'ZTE', 'Z665 Valet' ),
4704
  'ZTE C N700' => array( 'ZTE', 'N700' ),
4705
+ 'ZTE Q701C' => array( 'ZTE', 'Q701' ),
4706
+ 'ZTE G717C' => array( 'ZTE', 'G717' ),
4707
  'ZTE U N720' => array( 'ZTE', 'N720' ),
4708
  'ZTE U N721' => array( 'ZTE', 'N721' ),
4709
  'ZTE Z740' => array( 'ZTE', 'Z740 Radiant' ),
4711
  'ZTE C N760' => array( 'ZTE', 'N760' ),
4712
  'ZTE U V760' => array( 'ZTE', 'V760' ),
4713
  'N762' => array( 'ZTE', 'N762' ),
4714
+ 'ZTE LEO M1' => array( 'ZTE', 'LEO M1' ),
4715
+ 'ZTE V765M' => array( 'ZTE', 'LEO Q1' ),
4716
  'ZTE V768' => array( 'ZTE', 'V768 Concord' ),
4717
+ 'Z768G' => array( 'ZTE', 'Z768' ),
4718
  'ZTE C N780' => array( 'ZTE', 'N780' ),
4719
  'ZTE N788' => array( 'ZTE', 'N788' ),
4720
  'ZTE Kis Pro' => array( 'ZTE', 'V788 Kis' ),
4725
  'ZTE U790' => array( 'ZTE', 'U790' ),
4726
  'ZTE V790' => array( 'ZTE', 'V790' ),
4727
  'ZTE V791' => array( 'ZTE', 'V791' ),
4728
+ 'ZTE U793' => array( 'ZTE', 'U793' ),
4729
  'ZTE V793' => array( 'ZTE', 'V793' ),
4730
  'ZTE U795!' => array( 'ZTE', 'U795' ),
4731
  'ZTE V795' => array( 'ZTE', 'V795' ),
4732
+ 'Z796C' => array( 'ZTE', 'Z796' ),
4733
  'ZTE N798!' => array( 'ZTE', 'N798' ),
4734
  'ZTE N799!' => array( 'ZTE', 'N799' ),
4735
+ 'N799D' => array( 'ZTE', 'N799' ),
4736
+ 'N800' => array( 'ZTE', 'N800 Awe' ),
4737
  'ZTE T U802' => array( 'ZTE', 'U802' ),
4738
  'RacerII' => array( 'ZTE', 'U806 Racer II' ),
4739
  'ZTE T U806' => array( 'ZTE', 'U806 Racer II' ),
4740
  'ZTE N807' => array( 'ZTE', 'N807' ),
4741
  'ZTE U807' => array( 'ZTE', 'U807' ),
4742
+ 'ZTE U807N' => array( 'ZTE', 'U807' ),
4743
  'ZTE V807' => array( 'ZTE', 'V807 Blade C' ),
4744
+ 'ZTE U808' => array( 'ZTE', 'U808' ),
4745
+ 'ZTE U809' => array( 'ZTE', 'U809' ),
4746
+ 'ZTE V809' => array( 'ZTE', 'V809 Blade C2' ),
4747
  'E810' => array( 'ZTE', 'E810' ),
4748
  'ZTE T U812' => array( 'ZTE', 'U812' ),
4749
  'ZTE U817' => array( 'ZTE', 'U817' ),
4750
  'ZTE V817' => array( 'ZTE', 'V817' ),
4751
  'ZTE N818' => array( 'ZTE', 'N818' ),
4752
+ 'ZTE U818' => array( 'ZTE', 'U818' ),
4753
  'ZTE V818' => array( 'ZTE', 'V818' ),
4754
  'ZTE U819' => array( 'ZTE', 'U819' ),
4755
  'ZTE GV821' => array( 'ZTE', 'V821' ),
4756
+ 'ZTE T U830' => array( 'ZTE', 'U830' ),
4757
  'ZTE Racer' => array( 'ZTE', 'X850 Racer' ),
4758
  'Racer' => array( 'ZTE', 'X850 Racer' ),
4759
  'ZTE U X850' => array( 'ZTE', 'X850 Racer' ),
4768
  'ZTE V877!' => array( 'ZTE', 'V877' ),
4769
  'N880' => array( 'ZTE', 'N880 Blade' ),
4770
  'ZTE C N880!' => array( 'ZTE', 'N880 Blade' ),
4771
+ 'ZTE R880H' => array( 'ZTE', 'R880H' ),
4772
  'U880' => array( 'ZTE', 'U880 Blade' ),
4773
  'ZTE ?U880!' => array( 'ZTE', 'U880 Blade' ),
4774
  'ZTE T ?U880!' => array( 'ZTE', 'U880 Blade' ),
4820
  'ZTE U970' => array( 'ZTE', 'U970 Grand X' ),
4821
  'ZTE V970!' => array( 'ZTE', 'Z970 Grand X' ),
4822
  'ZTE V975' => array( 'ZTE', 'V975 Geek' ),
4823
+ 'ZTE N980' => array( 'ZTE', 'N980' ),
4824
  'ZTE N983' => array( 'ZTE', 'N983' ),
4825
  'Grand X Pro' => array( 'ZTE', 'V983 Grand X Pro' ),
4826
  'ZTE Grand Era' => array( 'ZTE', 'U985 Grand Era' ),
4828
  'ZTE V985' => array( 'ZTE', 'V985 Grand Era' ),
4829
  'N986' => array( 'ZTE', 'N986' ),
4830
  'ZTE N986' => array( 'ZTE', 'N986' ),
4831
+ 'ZTE V ?987!' => array( 'ZTE', 'V987' ),
4832
+ 'ZTE U988S' => array( 'ZTE', 'U988S Geek' ),
4833
  'ZTE V988' => array( 'ZTE', 'V988 Grand S' ),
4834
  'ZTE Grand S' => array( 'ZTE', 'V988 Grand S' ),
4835
  'ZTE Roamer' => array( 'ZTE', 'Z990 Roamer ' ),
4836
  'ZTE Z990!' => array( 'ZTE', 'Z990 Roamer' ),
4837
+ 'ZTE-Z992' => array( 'ZTE', 'Z992 Avail 2' ),
4838
+ 'ZTE-Z995' => array( 'ZTE', 'Z995 Overture' ),
4839
  'V8000 USA Cricket' => array( 'ZTE', 'V8000 Engage' ),
4840
+ 'V8110' => array( 'ZTE', 'V8110' ),
4841
  'X501 USA Cricket' => array( 'ZTE', 'X501 Groove' ),
4842
  'ZXY-ZTE V6700' => array( 'ZTE', 'V6700' ),
4843
  'ZTE V9800' => array( 'ZTE', 'V9800 Grand Era LTE' ),
4844
  'ZTE V9815' => array( 'ZTE', 'V9815 Grand Memo' ),
4845
  'ZTE Grand Memo LTE' => array( 'ZTE', 'V9815 Grand Memo' ),
4846
+ 'N8000 USA Cricket' => array( 'ZTE', 'N8000 Engage LT' ),
4847
+ 'N8000 WHTE CKT' => array( 'ZTE', 'N8000 Engage LT' ),
4848
  'N9100' => array( 'ZTE', 'N9100 Force' ),
4849
  'N9101' => array( 'ZTE', 'N9101 Imperial' ),
4850
  'ZTE N9120' => array( 'ZTE', 'N9120 Avid' ),
4851
  'N9500' => array( 'ZTE', 'N9500 Flash' ),
4852
+ 'N9510' => array( 'ZTE', 'N9510 Warp' ),
4853
  'ZTE N9511' => array( 'ZTE', 'N9511 Fury' ),
4854
  'N9520' => array( 'ZTE', 'N9520 Stormer' ),
4855
  'N9810' => array( 'ZTE', 'N9810 Vital' ),
4856
+ 'NX40X' => array( 'ZTE', 'Nubia Z5 mini' ),
4857
+ 'NX402' => array( 'ZTE', 'Nubia Z5 mini' ),
4858
+ 'NX403A' => array( 'ZTE', 'Nubia Z5 mini' ),
4859
+ 'NX501' => array( 'ZTE', 'Nubia Z5' ),
4860
+ 'NX503A' => array( 'ZTE', 'Nubia Z5s' ),
4861
  'ZTE N5' => array( 'ZTE', 'N5 Grand Memo' ),
4862
+ 'ZTE N5S' => array( 'ZTE', 'N5S Grand Memo' ),
4863
+ 'ZTE U5' => array( 'ZTE', 'U5 Grand Memo' ),
4864
+ 'ZTE U5S' => array( 'ZTE', 'U5S Grand Memo' ),
4865
+ 'ZTE V5S' => array( 'ZTE', 'V5S Grand Memo' ),
4866
  'ZTE T81' => array( 'ZTE', 'Fronteer 4G' ),
4867
  '003Z' => array( 'ZTE', 'Softbank 003Z' ),
4868
  '008Z' => array( 'ZTE', 'Softbank 008Z' ),
4869
  '009Z' => array( 'ZTE', 'Softbank Star7' ),
4870
+ 'ZTE STAR' => array( 'ZTE', 'Star 1' ),
4871
  '(Zopo )?ZP100!' => array( 'Zopo', 'ZP100 Pilot' ),
4872
  'ZP200' => array( 'Zopo', 'ZP200 Shining' ),
4873
  'ZP300' => array( 'Zopo', 'ZP300 Field' ),
4874
  'ZP300+' => array( 'Zopo', 'ZP300 Field Plus' ),
4875
  'ZP500' => array( 'Zopo', 'ZP500 Libero' ),
4876
+ 'ZP700' => array( 'Zopo', 'ZP700 Cuppy' ),
4877
+ 'ZP800' => array( 'Zopo', 'ZP800 Libero HD' ),
4878
  'ZP800H' => array( 'Zopo', 'ZP800 Libero HD' ),
4879
  'ZP810' => array( 'Zopo', 'ZP810' ),
4880
+ 'ZP820' => array( 'Zopo', 'ZP820 Raiden' ),
4881
  '(Zopo )?ZP900!' => array( 'Zopo', 'ZP900 Leader' ),
4882
  'ZP950' => array( 'Zopo', 'ZP950 Leader Max' ),
4883
  'ZP950H' => array( 'Zopo', 'ZP950 Leader Max' ),
4884
+ 'ZP950+' => array( 'Zopo', 'ZP950 Leader Max' ),
4885
+ 'ZOPO C2' => array( 'Zopo', 'ZP960 C2' ),
4886
  'ZP980' => array( 'Zopo', 'ZP980' ),
4887
+ 'ZP990' => array( 'Zopo', 'ZP990 Captain S' ),
4888
+ 'ZP998' => array( 'Zopo', 'ZP998 C2 II' ),
4889
 
4890
  /* Telecom provider branded devices */
4891
+ 'Bouygues Telecom Bs 351' => array( 'Bouygues', 'Bs 351' ),
4892
  'Bouygues Telecom Bs 402' => array( 'Bouygues', 'Bs 402' ),
4893
 
4894
  'dtab01' => array( 'Docomo', 'dtab', TYPE_TABLET ),
4907
  'i-mobile IQ 5.1' => array( 'i-Mobile', 'iQ 5.1' ),
4908
  'i-mobile IQ 5.1A' => array( 'i-Mobile', 'iQ 5.1A' ),
4909
  'i-mobile IQ 5.3' => array( 'i-Mobile', 'iQ 5.3' ),
4910
+ 'i-mobile IQ 5.5' => array( 'i-Mobile', 'iQ 5.5' ),
4911
+ 'i-mobile IQ 5.7' => array( 'i-Mobile', 'iQ 5.7' ),
4912
  'i-mobile IQ 6' => array( 'i-Mobile', 'iQ 6' ),
4913
  'i-mobile IQ 6A' => array( 'i-Mobile', 'iQ 6A' ),
4914
  'i-mobile IQ X' => array( 'i-Mobile', 'iQ X' ),
4915
  'i-mobile IQ XA' => array( 'i-Mobile', 'iQ XA' ),
4916
+ 'i-mobile IQ X2' => array( 'i-Mobile', 'iQ X2' ),
4917
+ 'i-mobile IQ X3' => array( 'i-Mobile', 'iQ X3' ),
4918
  'i-STYLE 1' => array( 'i-Mobile', 'i-Style 1' ),
4919
+ 'i-mobile i-STYLE 2' => array( 'i-Mobile', 'i-Style 2' ),
4920
+ 'i-mobile i-style 2.3' => array( 'i-Mobile', 'i-Style 2.3' ),
4921
+ 'i-mobile i-STYLE 2.4' => array( 'i-Mobile', 'i-Style 2.4' ),
4922
  'i-mobile i-style 3' => array( 'i-Mobile', 'i-Style 3' ),
4923
  'i-mobile i-STYLE 4' => array( 'i-Mobile', 'i-Style 4' ),
4924
  'i-MOBILE i-STYLE 5' => array( 'i-Mobile', 'i-Style 5' ),
4925
+ 'i-mobile i-STYLE 7' => array( 'i-Mobile', 'i-Style 7' ),
4926
  'i-mobile i-style 7.1' => array( 'i-Mobile', 'i-Style 7.1' ),
4927
  'i-mobile i-style 8' => array( 'i-Mobile', 'i-Style 8' ),
4928
  'i-mobile i-style Q1' => array( 'i-Mobile', 'i-Style Q1' ),
4940
  'i-mobile i-note WiFi 9' => array( 'i-Mobile', 'i-Note 9', TYPE_TABLET ),
4941
 
4942
  'KPN Smart 300' => array( 'KPN', 'Smart 300' ),
4943
+
4944
+ 'MT7A' => array( 'MegaFon', 'Login', TYPE_TABLET ),
4945
 
4946
  'Movistar Motion' => array( 'Movistar', 'Motion' ),
4947
 
4952
  'MTC-962' => array( 'MTC', '962' ),
4953
  'MTC 970!' => array( 'MTC', '970' ),
4954
  'MTC 972' => array( 'MTC', '972' ),
4955
+ 'MTC975' => array( 'MTC', '975' ),
4956
+ 'MTC980' => array( 'MTC', '980' ),
4957
+ 'MTC 982O' => array( 'MTC', '982O' ),
4958
  'MTC Evo' => array( 'MTC', 'Evo' ),
4959
  'MTC Fit' => array( 'MTC', 'Fit' ),
4960
  'MTC Neo' => array( 'MTC', 'Neo' ),
4973
  'Orange Daytona' => array( 'Orange', 'Daytona' ),
4974
  'Orange Dublin' => array( 'Orange', 'Dublin' ),
4975
  'Orange Hiro' => array( 'Orange', 'Hiro' ),
4976
+ 'Orange infinity 996' => array( 'Orange', 'Infinity' ),
4977
+ 'Orange Infinity 8008X' => array( 'Orange', 'Infinity' ),
4978
  'Orange Kivo' => array( 'Orange', 'Kivo' ),
4979
  'Orange Monte Carlo' => array( 'Orange', 'Monte Carlo' ), /* ZTE Skate */
4980
  '6034R ORANGE Niva' => array( 'Orange', 'Nivo' ),
4981
+ 'Orange Reyo' => array( 'Orange', 'Reyo' ),
4982
  'San Francisco' => array( 'Orange', 'San Francisco' ), /* ZTE Blade */
4983
  'San Francisco for Orange' => array( 'Orange', 'San Francisco' ), /* ZTE Blade */
4984
  'Orange San Francisco' => array( 'Orange', 'San Francisco' ), /* ZTE Blade */
4985
+ 'Orange Yumo' => array( 'Orange', 'Yumo' ),
4986
  'Orange Zali' => array( 'Orange', 'Zali' ),
4987
 
4988
  'QMobile A2 Lite' => array( 'Q-Mobile', 'Bolt A2 Lite' ),
4993
  'QMobile A11Note' => array( 'Q-Mobile', 'Noir A11' ),
4994
  'QMobile A12' => array( 'Q-Mobile', 'Noir A12' ),
4995
  'QMobile A20' => array( 'Q-Mobile', 'Noir A20' ),
4996
+ 'QMobile A30' => array( 'Q-Mobile', 'Noir A30' ),
4997
  'QMobile A34' => array( 'Q-Mobile', 'Noir A34' ),
4998
+ 'QMobile A35' => array( 'Q-Mobile', 'Noir A35' ),
4999
+ 'QMobile A65' => array( 'Q-Mobile', 'Noir A65' ),
5000
+ 'QMobile A300' => array( 'Q-Mobile', 'Noir A300' ),
5001
  'Qmobile A900' => array( 'Q-Mobile', 'Noir A900' ),
5002
+ 'Z4 mini' => array( 'Q-Mobile', 'Noir Quatro Z4 mini' ),
5003
+ 'Q-Smart S1' => array( 'Q-Mobile', 'Q-Smart S1' ),
5004
  'Q-Smart model S6' => array( 'Q-Mobile', 'Q-Smart S6' ),
5005
  'Qmobile-S11' => array( 'Q-Mobile', 'S11' ),
5006
  'Qmobile S13' => array( 'Q-Mobile', 'S13' ),
5007
  'Q-Smart S16' => array( 'Q-Mobile', 'Q-Smart S16' ),
5008
  'Q-Smart S18' => array( 'Q-Mobile', 'Q-Smart S18' ),
5009
+ 'Q-Smart S19' => array( 'Q-Mobile', 'Q-Smart S19' ),
5010
  'Q-Smart S20' => array( 'Q-Mobile', 'Q-Smart S20' ),
5011
  'Q-Smart S21' => array( 'Q-Mobile', 'Q-Smart S21' ),
5012
 
5045
 
5046
  'tmn smart a7' => array( 'TMN', 'Smart A7' ),
5047
  'tmn smart a15' => array( 'TMN', 'Smart A15' ),
5048
+ 'tmn smart a18' => array( 'TMN', 'Smart A18' ),
5049
+ 'tmn smart a60' => array( 'TMN', 'Smart A60' ),
5050
 
5051
  'TRUE BEYOND 3G' => array( 'True', 'Beyond' ),
5052
 
5060
  'Viettel V8502' => array( 'Viettel', 'V8502' ),
5061
  'V8503' => array( 'Viettel', 'V8503' ),
5062
 
5063
+ 'Vodafone 785' => array( 'Vodafone', 'Smart 4 Mini' ),
5064
  'Vodafone 845' => array( 'Vodafone', '845 Nova' ), /* Huawei U8100 */
5065
  'Vodafone 858' => array( 'Vodafone', '858 Smart' ), /* Huawei U8160 */
5066
  'Vodafone 861' => array( 'Vodafone', '861 Smart' ),
5076
  'SmartTabII7' => array( 'Vodafone', 'Smart Tab II 7', TYPE_TABLET ), /* Lenovo */
5077
  'Vodafone Smart Tab III 7' => array( 'Vodafone', 'Smart Tab III 7', TYPE_TABLET ),
5078
  'Vodafone Smart Tab III 10' => array( 'Vodafone', 'Smart Tab III 10', TYPE_TABLET ),
5079
+ 'Vodafone Smart Tab 4' => array( 'Vodafone', 'Smart Tab 4', TYPE_TABLET ),
5080
  'SmartTab10' => array( 'Vodafone', 'Smart Tab 10', TYPE_TABLET ) /* ZTE Web Tab 10 */
5081
  );
5082
+
js/whichbrowser/data/models-asha.php CHANGED
@@ -1,9 +1,13 @@
1
  <?php
2
 
3
  DeviceModels::$ASHA_MODELS = array(
 
 
4
  '500' => array( 'Nokia', 'Asha 500' ),
 
5
  '501' => array( 'Nokia', 'Asha 501' ),
6
  '501s' => array( 'Nokia', 'Asha 501' ),
 
7
  '502' => array( 'Nokia', 'Asha 502' ),
8
  '503' => array( 'Nokia', 'Asha 503' ),
9
  '503s' => array( 'Nokia', 'Asha 503' ),
1
  <?php
2
 
3
  DeviceModels::$ASHA_MODELS = array(
4
+ 'Asha230SingleSIM' => array( 'Nokia', 'Asha 230' ),
5
+ 'Asha230DualSIM' => array( 'Nokia', 'Asha 230' ),
6
  '500' => array( 'Nokia', 'Asha 500' ),
7
+ 'Asha500DualSIM' => array( 'Nokia', 'Asha 500' ),
8
  '501' => array( 'Nokia', 'Asha 501' ),
9
  '501s' => array( 'Nokia', 'Asha 501' ),
10
+ '501.2' => array( 'Nokia', 'Asha 501' ),
11
  '502' => array( 'Nokia', 'Asha 502' ),
12
  '503' => array( 'Nokia', 'Asha 503' ),
13
  '503s' => array( 'Nokia', 'Asha 503' ),
js/whichbrowser/data/models-brew.php CHANGED
@@ -6,6 +6,9 @@
6
  'SCH-F839' => array( 'Samsung', 'SCH-F839' ),
7
  'SCH-M519!' => array( 'Samsung', 'Metro TV' ),
8
  'SCH-U380' => array( 'Samsung', 'Brightside' ),
 
9
  'SCH-W709!' => array( 'Samsung', 'SCH-W709' ),
 
10
  'HS-E316!' => array( 'Hisense', 'E316' ),
 
11
  );
6
  'SCH-F839' => array( 'Samsung', 'SCH-F839' ),
7
  'SCH-M519!' => array( 'Samsung', 'Metro TV' ),
8
  'SCH-U380' => array( 'Samsung', 'Brightside' ),
9
+ 'SCH-U820' => array( 'Samsung', 'Reality' ),
10
  'SCH-W709!' => array( 'Samsung', 'SCH-W709' ),
11
+ 'SCP6780' => array( 'Sanyo', 'Innuendo' ),
12
  'HS-E316!' => array( 'Hisense', 'E316' ),
13
+ 'VX9200!' => array( 'LG', 'Env3' ),
14
  );
js/whichbrowser/data/models-feature.php CHANGED
@@ -30,6 +30,7 @@
30
  'GT-B2710' => array( 'Samsung', 'Xcover 271' ),
31
  'GT-B3210' => array( 'Samsung', 'Corby TXT' ),
32
  'GT-B3313' => array( 'Samsung', 'Corby Mate' ),
 
33
  'GT-C3222' => array( 'Samsung', 'Ch@t 322' ),
34
  'GT-C3322' => array( 'Samsung', 'GT-C3322 Duos' ),
35
  'GT-C3500' => array( 'Samsung', 'Ch@t 350' ),
@@ -40,13 +41,20 @@
40
  'GT-E2202' => array( 'Samsung', 'Metro' ),
41
  'GT-E2250' => array( 'Samsung', 'Utica' ),
42
  'GT-E2252' => array( 'Samsung', 'Metro 2252' ),
 
43
  'GT-S33(50|53)!' => array( 'Samsung', 'Ch@t 335' ),
44
  'GT-S35(70|72)!' => array( 'Samsung', 'Ch@t 357' ),
45
  'GT-S5229' => array( 'Samsung', 'Tocco Lite 2' ),
46
  'GT-S5270!' => array( 'Samsung', 'Ch@t 527' ),
47
  'GT-S5610!' => array( 'Samsung', 'Primo' ),
 
48
  'SGH-A667' => array( 'Samsung', 'A667 Evergreen' ),
 
49
  'SGH-A877' => array( 'Samsung', 'A877 Impression' ),
 
50
  'SGH-A997' => array( 'Samsung', 'Rugby III' ),
51
- 'SGH-S390G' => array( 'Samsung', 'S390 TracFone' )
 
 
 
52
  );
30
  'GT-B2710' => array( 'Samsung', 'Xcover 271' ),
31
  'GT-B3210' => array( 'Samsung', 'Corby TXT' ),
32
  'GT-B3313' => array( 'Samsung', 'Corby Mate' ),
33
+ 'GT-C3200' => array( 'Samsung', 'Monte Bar' ),
34
  'GT-C3222' => array( 'Samsung', 'Ch@t 322' ),
35
  'GT-C3322' => array( 'Samsung', 'GT-C3322 Duos' ),
36
  'GT-C3500' => array( 'Samsung', 'Ch@t 350' ),
41
  'GT-E2202' => array( 'Samsung', 'Metro' ),
42
  'GT-E2250' => array( 'Samsung', 'Utica' ),
43
  'GT-E2252' => array( 'Samsung', 'Metro 2252' ),
44
+ 'GT-S3332' => array( 'Samsung', 'Ch@t 333' ),
45
  'GT-S33(50|53)!' => array( 'Samsung', 'Ch@t 335' ),
46
  'GT-S35(70|72)!' => array( 'Samsung', 'Ch@t 357' ),
47
  'GT-S5229' => array( 'Samsung', 'Tocco Lite 2' ),
48
  'GT-S5270!' => array( 'Samsung', 'Ch@t 527' ),
49
  'GT-S5610!' => array( 'Samsung', 'Primo' ),
50
+ 'SCH-W169' => array( 'Samsung', 'W169 Duos' ),
51
  'SGH-A667' => array( 'Samsung', 'A667 Evergreen' ),
52
+ 'SGH-A697' => array( 'Samsung', 'A697 Sunburst' ),
53
  'SGH-A877' => array( 'Samsung', 'A877 Impression' ),
54
+ 'SGH-A927' => array( 'Samsung', 'A927 Flight II' ),
55
  'SGH-A997' => array( 'Samsung', 'Rugby III' ),
56
+ 'SGH-D880' => array( 'Samsung', 'D880 Duos' ),
57
+ 'SGH-G600' => array( 'Samsung', 'G600' ),
58
+ 'SGH-S390G' => array( 'Samsung', 'S390 TracFone' ),
59
+ 'S7350' => array( 'Samsung', 'S7350 Ultra S' )
60
  );
js/whichbrowser/data/models-firefoxos.php ADDED
@@ -0,0 +1,11 @@
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+
3
+ DeviceModels::$FIREFOXOS_MODELS = array(
4
+ 'ALCATEL ONE TOUCH 4012A' => array( 'Alcatel', 'One Touch Fire' ),
5
+ 'ALCATELOneTouch4012A' => array( 'Alcatel', 'One Touch Fire' ),
6
+ 'ALCATELOneTouch4012X' => array( 'Alcatel', 'One Touch Fire' ),
7
+ 'ALCATELOneTouch4019X' => array( 'Alcatel', 'One Touch Fire C' ),
8
+ 'LG-D300' => array( 'LG', 'Fireweb' ),
9
+ 'ZTEOPEN' => array( 'ZTE', 'Open' ),
10
+ 'OpenC' => array( 'ZTE', 'Open C' ),
11
+ );
js/whichbrowser/data/models-ios.php CHANGED
@@ -49,4 +49,9 @@
49
  'iPad3,4' => array( 'Apple', 'iPad (4th gen)', TYPE_TABLET ),
50
  'iPad3,5' => array( 'Apple', 'iPad (4th gen)', TYPE_TABLET ),
51
  'iPad3,6' => array( 'Apple', 'iPad (4th gen)', TYPE_TABLET ),
 
 
 
 
 
52
  );
49
  'iPad3,4' => array( 'Apple', 'iPad (4th gen)', TYPE_TABLET ),
50
  'iPad3,5' => array( 'Apple', 'iPad (4th gen)', TYPE_TABLET ),
51
  'iPad3,6' => array( 'Apple', 'iPad (4th gen)', TYPE_TABLET ),
52
+ 'iPad4,1' => array( 'Apple', 'iPad Air', TYPE_TABLET ),
53
+ 'iPad4,2' => array( 'Apple', 'iPad Air', TYPE_TABLET ),
54
+ 'iPad4,3' => array( 'Apple', 'iPad Air', TYPE_TABLET ),
55
+ 'iPad4,4' => array( 'Apple', 'iPad mini (2nd gen)', TYPE_TABLET ),
56
+ 'iPad4,5' => array( 'Apple', 'iPad mini (2nd gen)', TYPE_TABLET ),
57
  );
js/whichbrowser/data/models-s40.php CHANGED
@@ -32,9 +32,14 @@
32
  '205.3' => array( 'Nokia', 'Asha 205' ),
33
  '206' => array( 'Nokia', 'Asha 206' ),
34
  '206.1' => array( 'Nokia', 'Asha 206' ),
 
35
  '208.1' => array( 'Nokia', '208' ),
 
 
36
  '210' => array( 'Nokia', 'Asha 210' ),
37
  '210.2' => array( 'Nokia', 'Asha 210' ),
 
 
38
  '210.5' => array( 'Nokia', 'Asha 210' ),
39
  '300' => array( 'Nokia', 'Asha 300' ),
40
  '301' => array( 'Nokia', '301' ),
@@ -48,8 +53,10 @@
48
  '310' => array( 'Nokia', 'Asha 310' ),
49
  '311' => array( 'Nokia', 'Asha 311' ),
50
  '515' => array( 'Nokia', '515' ),
 
51
  '1682c' => array( 'Nokia', '1682 classic' ),
52
- '2060' => array( 'Nokia', '2060' ),
 
53
  '2220s!' => array( 'Nokia', '2220 slide' ),
54
  '2320c!' => array( 'Nokia', '2320 classic' ),
55
  '2322c!' => array( 'Nokia', '2322 classic' ),
@@ -61,11 +68,13 @@
61
  '2692' => array( 'Nokia', '2692' ),
62
  '2700c!' => array( 'Nokia', '2700 classic' ),
63
  '2710c' => array( 'Nokia', '2710' ),
 
64
  '2720a!' => array( 'Nokia', '2720 fold' ),
65
  '2730c!' => array( 'Nokia', '2730 classic' ),
66
  '3020' => array( 'Nokia', '3020' ),
67
  '3110c' => array( 'Nokia', '3110 Evolve' ),
68
  '3120c' => array( 'Nokia', '3120 classic' ),
 
69
  '3208c' => array( 'Nokia', '3208 classic' ),
70
  '3500c' => array( 'Nokia', '3500 classic' ),
71
  '3555b' => array( 'Nokia', '3555' ),
@@ -95,6 +104,7 @@
95
  '6300' => array( 'Nokia', '6300' ),
96
  '6300i' => array( 'Nokia', '6300i' ),
97
  '6301' => array( 'Nokia', '6301' ),
 
98
  '6303classic' => array( 'Nokia', '6303 classic' ),
99
  '6303iclassic' => array( 'Nokia', '6303i classic' ),
100
  '6303ci' => array( 'Nokia', '6303i classic' ),
32
  '205.3' => array( 'Nokia', 'Asha 205' ),
33
  '206' => array( 'Nokia', 'Asha 206' ),
34
  '206.1' => array( 'Nokia', 'Asha 206' ),
35
+ '208' => array( 'Nokia', '208' ),
36
  '208.1' => array( 'Nokia', '208' ),
37
+ '208.3' => array( 'Nokia', '208' ),
38
+ '208.4' => array( 'Nokia', '208' ),
39
  '210' => array( 'Nokia', 'Asha 210' ),
40
  '210.2' => array( 'Nokia', 'Asha 210' ),
41
+ '210.3' => array( 'Nokia', 'Asha 210' ),
42
+ '210.4' => array( 'Nokia', 'Asha 210' ),
43
  '210.5' => array( 'Nokia', 'Asha 210' ),
44
  '300' => array( 'Nokia', 'Asha 300' ),
45
  '301' => array( 'Nokia', '301' ),
53
  '310' => array( 'Nokia', 'Asha 310' ),
54
  '311' => array( 'Nokia', 'Asha 311' ),
55
  '515' => array( 'Nokia', '515' ),
56
+ '515.2' => array( 'Nokia', '515' ),
57
  '1682c' => array( 'Nokia', '1682 classic' ),
58
+ '2055' => array( 'Nokia', 'Asha 2055' ),
59
+ '2060' => array( 'Nokia', '2060' ), // Same as Asha 206
60
  '2220s!' => array( 'Nokia', '2220 slide' ),
61
  '2320c!' => array( 'Nokia', '2320 classic' ),
62
  '2322c!' => array( 'Nokia', '2322 classic' ),
68
  '2692' => array( 'Nokia', '2692' ),
69
  '2700c!' => array( 'Nokia', '2700 classic' ),
70
  '2710c' => array( 'Nokia', '2710' ),
71
+ '2710c-2' => array( 'Nokia', '2710' ),
72
  '2720a!' => array( 'Nokia', '2720 fold' ),
73
  '2730c!' => array( 'Nokia', '2730 classic' ),
74
  '3020' => array( 'Nokia', '3020' ),
75
  '3110c' => array( 'Nokia', '3110 Evolve' ),
76
  '3120c' => array( 'Nokia', '3120 classic' ),
77
+ '3120classic' => array( 'Nokia', '3120 classic' ),
78
  '3208c' => array( 'Nokia', '3208 classic' ),
79
  '3500c' => array( 'Nokia', '3500 classic' ),
80
  '3555b' => array( 'Nokia', '3555' ),
104
  '6300' => array( 'Nokia', '6300' ),
105
  '6300i' => array( 'Nokia', '6300i' ),
106
  '6301' => array( 'Nokia', '6301' ),
107
+ '6303c' => array( 'Nokia', '6303 classic' ),
108
  '6303classic' => array( 'Nokia', '6303 classic' ),
109
  '6303iclassic' => array( 'Nokia', '6303i classic' ),
110
  '6303ci' => array( 'Nokia', '6303i classic' ),
js/whichbrowser/data/models-s60.php CHANGED
@@ -2,6 +2,7 @@
2
 
3
  DeviceModels::$S60_MODELS = array(
4
  'M600i' => array( 'Sony Ericsson', 'M600i' ),
 
5
  'U1i' => array( 'Sony Ericsson', 'Satio' ),
6
  'U5(i|iv)!' => array( 'Sony Ericsson', 'Vivaz' ),
7
  'U8i' => array( 'Sony Ericsson', 'Vivaz Pro' ),
@@ -9,6 +10,7 @@
9
  'I7710' => array( 'Samsung', 'GT-I7710' ),
10
  'I8510' => array( 'Samsung', 'INNOV8' ),
11
  'I8910' => array( 'Samsung', 'Omnia HD' ),
 
12
  'SGH-G810' => array( 'Samsung', 'G810' ),
13
  'C5-00!' => array( 'Nokia', 'C5-00' ),
14
  'C5-01' => array( 'Nokia', 'C5-01' ),
@@ -85,6 +87,7 @@
85
  '700' => array( 'Nokia', '700' ),
86
  '701' => array( 'Nokia', '701' ),
87
  '702T' => array( 'Nokia', '702T' ),
 
88
  '808!' => array( 'Nokia', '808 PureView' ),
89
  '5228' => array( 'Nokia', '5228' ),
90
  '5233!' => array( 'Nokia', '5228' ), // The 5233 is known as 5228
@@ -102,6 +105,7 @@
102
  '6110Navigator' => array( 'Nokia', '6110 Navigator' ),
103
  '6120c!' => array( 'Nokia', '6120 classic' ),
104
  '6121c!' => array( 'Nokia', '6121 classic' ),
 
105
  '6124c' => array( 'Nokia', '6124 classic' ),
106
  '6210Navigator' => array( 'Nokia', '6210 Navigator' ),
107
  '6220c!' => array( 'Nokia', '6220 classic' ),
2
 
3
  DeviceModels::$S60_MODELS = array(
4
  'M600i' => array( 'Sony Ericsson', 'M600i' ),
5
+ 'U 1' => array( 'Sony Ericsson', 'Satio' ),
6
  'U1i' => array( 'Sony Ericsson', 'Satio' ),
7
  'U5(i|iv)!' => array( 'Sony Ericsson', 'Vivaz' ),
8
  'U8i' => array( 'Sony Ericsson', 'Vivaz Pro' ),
10
  'I7710' => array( 'Samsung', 'GT-I7710' ),
11
  'I8510' => array( 'Samsung', 'INNOV8' ),
12
  'I8910' => array( 'Samsung', 'Omnia HD' ),
13
+ 'SGH-i450' => array( 'Samsung', 'i450' ),
14
  'SGH-G810' => array( 'Samsung', 'G810' ),
15
  'C5-00!' => array( 'Nokia', 'C5-00' ),
16
  'C5-01' => array( 'Nokia', 'C5-01' ),
87
  '700' => array( 'Nokia', '700' ),
88
  '701' => array( 'Nokia', '701' ),
89
  '702T' => array( 'Nokia', '702T' ),
90
+ '801T' => array( 'Nokia', '801T' ),
91
  '808!' => array( 'Nokia', '808 PureView' ),
92
  '5228' => array( 'Nokia', '5228' ),
93
  '5233!' => array( 'Nokia', '5228' ), // The 5233 is known as 5228
105
  '6110Navigator' => array( 'Nokia', '6110 Navigator' ),
106
  '6120c!' => array( 'Nokia', '6120 classic' ),
107
  '6121c!' => array( 'Nokia', '6121 classic' ),
108
+ '6122c!' => array( 'Nokia', '6124 classic' ), // The 6122 is known as 6124
109
  '6124c' => array( 'Nokia', '6124 classic' ),
110
  '6210Navigator' => array( 'Nokia', '6210 Navigator' ),
111
  '6220c!' => array( 'Nokia', '6220 classic' ),
js/whichbrowser/data/models-tizen.php CHANGED
@@ -7,6 +7,7 @@
7
  'GT-I9500!' => array( 'Samsung', 'GT-I9500 prototype' ),
8
  'SGH-N099' => array( 'Samsung', 'SGH-N099 prototype' ), // NTT docomo variant?
9
  '(ARMV7 )?SM-Z9005!' => array( 'Samsung', 'SM-Z9005 prototype' ),
 
10
  'SEC SC-001' => array( 'Samsung', 'SC-001 prototype' ),
11
  'SEC SC-03F' => array( 'Samsung', 'SC-03F prototype' )
12
  );
7
  'GT-I9500!' => array( 'Samsung', 'GT-I9500 prototype' ),
8
  'SGH-N099' => array( 'Samsung', 'SGH-N099 prototype' ), // NTT docomo variant?
9
  '(ARMV7 )?SM-Z9005!' => array( 'Samsung', 'SM-Z9005 prototype' ),
10
+ 'SM-Z910F' => array( 'Samsung', 'SM-Z910 prototype' ),
11
  'SEC SC-001' => array( 'Samsung', 'SC-001 prototype' ),
12
  'SEC SC-03F' => array( 'Samsung', 'SC-03F prototype' )
13
  );
js/whichbrowser/data/models-touchwiz.php CHANGED
@@ -25,7 +25,7 @@
25
  'GT-S5260' => array( 'Samsung', 'Star II' ),
26
  'GT-S5292R' => array( 'Samsung', 'Rex 90' ),
27
  'GT-S5292' => array( 'Samsung', 'Star Deluxe Duos' ),
28
- 'GT-S5560' => array( 'Samsung', 'Marvel' ),
29
  'GT-S5600' => array( 'Samsung', 'Preston' ),
30
  'GT-S5620!' => array( 'Samsung', 'Monte' ),
31
  'GT-S5680' => array( 'Samsung', 'GT-S5680' ),
25
  'GT-S5260' => array( 'Samsung', 'Star II' ),
26
  'GT-S5292R' => array( 'Samsung', 'Rex 90' ),
27
  'GT-S5292' => array( 'Samsung', 'Star Deluxe Duos' ),
28
+ 'GT-S5560!' => array( 'Samsung', 'Marvel' ),
29
  'GT-S5600' => array( 'Samsung', 'Preston' ),
30
  'GT-S5620!' => array( 'Samsung', 'Monte' ),
31
  'GT-S5680' => array( 'Samsung', 'GT-S5680' ),
js/whichbrowser/data/models-wm.php CHANGED
@@ -25,6 +25,7 @@
25
  '(HTC Touch HD|.*T82(82|83))!' => array( 'HTC', 'Touch HD' ),
26
  '(HTC Touch Pro2|.*T73(73|80))!' => array( 'HTC', 'Touch Pro 2' ),
27
  'HTC TyTN II' => array( 'HTC', 'TyTN II' ),
 
28
  'GT-B5722' => array( 'Samsung', 'B5722' ),
29
  'GT-B6520' => array( 'Samsung', 'B6520 OmniaPRO 5' ),
30
  'GT-B7300' => array( 'Samsung', 'B7300 OmniaLITE' ),
@@ -35,6 +36,7 @@
35
  'GT-C6625' => array( 'Samsung', 'C6625 Valencia' ),
36
  'GT-I8000!' => array( 'Samsung', 'I8000 Omnia II' ),
37
  'SCH-M715' => array( 'Samsung', 'M715 T*OMNIA II' ),
 
38
  'SGH-i900' => array( 'Samsung', 'i900 Omnia' ),
39
  'WS007SH' => array( 'Sharp', 'W-ZERO3' ),
40
  'M1i' => array( 'Sony Ericsson', 'M1i Aspen' ),
25
  '(HTC Touch HD|.*T82(82|83))!' => array( 'HTC', 'Touch HD' ),
26
  '(HTC Touch Pro2|.*T73(73|80))!' => array( 'HTC', 'Touch Pro 2' ),
27
  'HTC TyTN II' => array( 'HTC', 'TyTN II' ),
28
+ 'MC659B' => array( 'Motorola', 'MC65 Wireless Rugged Mobile Computer' ),
29
  'GT-B5722' => array( 'Samsung', 'B5722' ),
30
  'GT-B6520' => array( 'Samsung', 'B6520 OmniaPRO 5' ),
31
  'GT-B7300' => array( 'Samsung', 'B7300 OmniaLITE' ),
36
  'GT-C6625' => array( 'Samsung', 'C6625 Valencia' ),
37
  'GT-I8000!' => array( 'Samsung', 'I8000 Omnia II' ),
38
  'SCH-M715' => array( 'Samsung', 'M715 T*OMNIA II' ),
39
+ 'SGH-I637' => array( 'Samsung', 'i637 Jack' ),
40
  'SGH-i900' => array( 'Samsung', 'i900 Omnia' ),
41
  'WS007SH' => array( 'Sharp', 'W-ZERO3' ),
42
  'M1i' => array( 'Sony Ericsson', 'M1i Aspen' ),
js/whichbrowser/data/models-wp.php CHANGED
@@ -33,11 +33,14 @@
33
  'PI86100' => array( 'HTC', 'Titan II' ),
34
  'Ultimate' => array( 'HTC', 'Ultimate' ),
35
  'HTC6990LVW' => array( 'HTC', '8X' ),
 
36
  'RIO U' => array( 'HTC', '8X' ),
37
  'C620(d|e|t)!' => array( 'HTC', '8X' ),
38
  'C625(a|b)!' => array( 'HTC', '8X' ),
39
  '8X by HTC' => array( 'HTC', '8X' ),
40
  'Windows Phone 8X by HTC' => array( 'HTC', '8X' ),
 
 
41
  'A620(d|e|t)!' => array( 'HTC', '8S' ),
42
  '8S by HTC' => array( 'HTC', '8S' ),
43
  'Windows Phone 8S by HTC' => array( 'HTC', '8S' ),
@@ -45,8 +48,11 @@
45
  'HUAWEI Ascend W1!' => array( 'Huawei', 'Ascend W1' ),
46
  'HUAWEI W1-U00' => array( 'Huawei', 'Ascend W1' ),
47
  'HUAWEI W1-C00' => array( 'Huawei', 'Ascend W1' ),
 
48
  'W1-U00' => array( 'Huawei', 'Ascend W1' ),
49
  'W1-C00' => array( 'Huawei', 'Ascend W1' ),
 
 
50
  'GW910' => array( 'LG', 'Optimus 7' ),
51
  'LG-E-?900!' => array( 'LG', 'Optimus 7 E900' ),
52
  'LG-E906' => array( 'LG', 'Jil Sander' ),
@@ -56,9 +62,12 @@
56
  '(Lumia ?|Nokia ?)?510!' => array( 'Nokia', 'Lumia 510' ),
57
  '(Lumia ?|Nokia ?)?520!' => array( 'Nokia', 'Lumia 520' ),
58
  '(Lumia ?|Nokia ?)?521!' => array( 'Nokia', 'Lumia 521' ),
 
 
59
  '(Lumia ?|Nokia ?)?610!' => array( 'Nokia', 'Lumia 610' ),
60
  '(Lumia ?|Nokia ?)?620!' => array( 'Nokia', 'Lumia 620' ),
61
  '(Lumia ?|Nokia ?)?625!' => array( 'Nokia', 'Lumia 625' ),
 
62
  '(Lumia ?|Nokia ?)?710!' => array( 'Nokia', 'Lumia 710' ),
63
  '(Lumia ?|Nokia ?)?719!' => array( 'Nokia', 'Lumia 719' ),
64
  '(Lumia ?|Nokia ?)?720!' => array( 'Nokia', 'Lumia 720' ),
@@ -70,26 +79,38 @@
70
  '(Lumia ?|Nokia ?)?920!' => array( 'Nokia', 'Lumia 920' ),
71
  '(Lumia ?|Nokia ?)?925!' => array( 'Nokia', 'Lumia 925' ),
72
  '(Lumia ?|Nokia ?)?928!' => array( 'Nokia', 'Lumia 928' ),
 
 
73
  '(Lumia ?|Nokia ?)?909!' => array( 'Nokia', 'Lumia 1020' ), // 909 was the original name of the 1020
74
  '(Lumia ?|Nokia ?)?1020!' => array( 'Nokia', 'Lumia 1020' ),
 
75
  '(Lumia ?|Nokia ?)?1520!' => array( 'Nokia', 'Lumia 1520' ),
76
- 'RM-9(13|14)!' => array( 'Nokia', 'Lumia 520' ),
 
77
  'RM-846!' => array( 'Nokia', 'Lumia 620' ),
78
  'RM-943!' => array( 'Nokia', 'Lumia 625' ),
 
79
  'RM-8(85|87)!' => array( 'Nokia', 'Lumia 720' ),
 
80
  'RM-8(24|25|26)!' => array( 'Nokia', 'Lumia 820' ),
81
  'RM-845!' => array( 'Nokia', 'Lumia 822' ),
82
  'RM-8(20|21|22)!' => array( 'Nokia', 'Lumia 920' ),
83
  'RM-867!' => array( 'Nokia', 'Lumia 920' ),
84
  'RM-8(92|93)!' => array( 'Nokia', 'Lumia 925' ),
85
  'RM-910!' => array( 'Nokia', 'Lumia 925' ),
 
86
  'RM-860!' => array( 'Nokia', 'Lumia 928' ),
87
  'RM-8(76|77)!' => array( 'Nokia', 'Lumia 1020' ),
 
 
 
88
  'SeaRay' => array( 'Nokia', 'Lumia 800' ),
89
  'GT-I8350!' => array( 'Samsung', 'Omnia W' ),
90
  'GT-i8700' => array( 'Samsung', 'Omnia 7' ),
91
  'GT-I8750' => array( 'Samsung', 'Ativ S' ),
 
92
  'GT-S7530!' => array( 'Samsung', 'Omnia M' ),
 
93
  'SGH-i667' => array( 'Samsung', 'Focus 2' ),
94
  'SGH-i677' => array( 'Samsung', 'Focus Flash' ),
95
  'SGH-i707' => array( 'Samsung', 'Taylor' ),
@@ -97,6 +118,8 @@
97
  'SCH-I930' => array( 'Samsung', 'Ativ Odyssey' ),
98
  'SGH-i937!' => array( 'Samsung', 'Focus S' ),
99
  'SGH-T899M' => array( 'Samsung', 'Ativ S' ),
 
 
100
  'OM(NI|IN)A ?7!' => array( 'Samsung', 'Omnia 7' ),
101
  'Omnia W' => array( 'Samsung', 'Omnia W' ),
102
  'Taylor' => array( 'Samsung', 'Taylor' ),
33
  'PI86100' => array( 'HTC', 'Titan II' ),
34
  'Ultimate' => array( 'HTC', 'Ultimate' ),
35
  'HTC6990LVW' => array( 'HTC', '8X' ),
36
+ '6990LVW' => array( 'HTC', '8X' ),
37
  'RIO U' => array( 'HTC', '8X' ),
38
  'C620(d|e|t)!' => array( 'HTC', '8X' ),
39
  'C625(a|b)!' => array( 'HTC', '8X' ),
40
  '8X by HTC' => array( 'HTC', '8X' ),
41
  'Windows Phone 8X by HTC' => array( 'HTC', '8X' ),
42
+ 'WindowsPhone8Xby' => array( 'HTC', '8X' ),
43
+ 'PM23300' => array( 'HTC', '8X' ),
44
  'A620(d|e|t)!' => array( 'HTC', '8S' ),
45
  '8S by HTC' => array( 'HTC', '8S' ),
46
  'Windows Phone 8S by HTC' => array( 'HTC', '8S' ),
48
  'HUAWEI Ascend W1!' => array( 'Huawei', 'Ascend W1' ),
49
  'HUAWEI W1-U00' => array( 'Huawei', 'Ascend W1' ),
50
  'HUAWEI W1-C00' => array( 'Huawei', 'Ascend W1' ),
51
+ 'HUAWEIW1-C00' => array( 'Huawei', 'Ascend W1' ),
52
  'W1-U00' => array( 'Huawei', 'Ascend W1' ),
53
  'W1-C00' => array( 'Huawei', 'Ascend W1' ),
54
+ 'HUAWEIW2-T01' => array( 'Huawei', 'Ascend W2' ),
55
+ 'W2-T01' => array( 'Huawei', 'Ascend W2' ),
56
  'GW910' => array( 'LG', 'Optimus 7' ),
57
  'LG-E-?900!' => array( 'LG', 'Optimus 7 E900' ),
58
  'LG-E906' => array( 'LG', 'Jil Sander' ),
62
  '(Lumia ?|Nokia ?)?510!' => array( 'Nokia', 'Lumia 510' ),
63
  '(Lumia ?|Nokia ?)?520!' => array( 'Nokia', 'Lumia 520' ),
64
  '(Lumia ?|Nokia ?)?521!' => array( 'Nokia', 'Lumia 521' ),
65
+ '(Lumia ?|Nokia ?)?525!' => array( 'Nokia', 'Lumia 525' ),
66
+ '(Lumia ?|Nokia ?)?526!' => array( 'Nokia', 'Lumia 526' ),
67
  '(Lumia ?|Nokia ?)?610!' => array( 'Nokia', 'Lumia 610' ),
68
  '(Lumia ?|Nokia ?)?620!' => array( 'Nokia', 'Lumia 620' ),
69
  '(Lumia ?|Nokia ?)?625!' => array( 'Nokia', 'Lumia 625' ),
70
+ '(Lumia ?|Nokia ?)?630!' => array( 'Nokia', 'Lumia 630' ),
71
  '(Lumia ?|Nokia ?)?710!' => array( 'Nokia', 'Lumia 710' ),
72
  '(Lumia ?|Nokia ?)?719!' => array( 'Nokia', 'Lumia 719' ),
73
  '(Lumia ?|Nokia ?)?720!' => array( 'Nokia', 'Lumia 720' ),
79
  '(Lumia ?|Nokia ?)?920!' => array( 'Nokia', 'Lumia 920' ),
80
  '(Lumia ?|Nokia ?)?925!' => array( 'Nokia', 'Lumia 925' ),
81
  '(Lumia ?|Nokia ?)?928!' => array( 'Nokia', 'Lumia 928' ),
82
+ '(Lumia ?|Nokia ?)?929!' => array( 'Nokia', 'Lumia 929 Icon' ),
83
+ '(Lumia ?|Nokia ?)?930!' => array( 'Nokia', 'Lumia 930' ),
84
  '(Lumia ?|Nokia ?)?909!' => array( 'Nokia', 'Lumia 1020' ), // 909 was the original name of the 1020
85
  '(Lumia ?|Nokia ?)?1020!' => array( 'Nokia', 'Lumia 1020' ),
86
+ '(Lumia ?|Nokia ?)?1320!' => array( 'Nokia', 'Lumia 1320' ),
87
  '(Lumia ?|Nokia ?)?1520!' => array( 'Nokia', 'Lumia 1520' ),
88
+ 'RM-9(13|14|15)!' => array( 'Nokia', 'Lumia 520' ),
89
+ 'RM-998!' => array( 'Nokia', 'Lumia 525' ),
90
  'RM-846!' => array( 'Nokia', 'Lumia 620' ),
91
  'RM-943!' => array( 'Nokia', 'Lumia 625' ),
92
+ 'RM-978!' => array( 'Nokia', 'Lumia 630' ),
93
  'RM-8(85|87)!' => array( 'Nokia', 'Lumia 720' ),
94
+ // 'RM-997!' => array( 'Nokia', 'Lumia 720' ), // Dualsim variant?
95
  'RM-8(24|25|26)!' => array( 'Nokia', 'Lumia 820' ),
96
  'RM-845!' => array( 'Nokia', 'Lumia 822' ),
97
  'RM-8(20|21|22)!' => array( 'Nokia', 'Lumia 920' ),
98
  'RM-867!' => array( 'Nokia', 'Lumia 920' ),
99
  'RM-8(92|93)!' => array( 'Nokia', 'Lumia 925' ),
100
  'RM-910!' => array( 'Nokia', 'Lumia 925' ),
101
+ 'RM-955!' => array( 'Nokia', 'Lumia 925T' ),
102
  'RM-860!' => array( 'Nokia', 'Lumia 928' ),
103
  'RM-8(76|77)!' => array( 'Nokia', 'Lumia 1020' ),
104
+ 'RM-994!' => array( 'Nokia', 'Lumia 1320' ),
105
+ 'RM-9(37|39)!' => array( 'Nokia', 'Lumia 1520' ),
106
+ 'RM-997!' => array( 'Nokia', '"Glee"' ),
107
  'SeaRay' => array( 'Nokia', 'Lumia 800' ),
108
  'GT-I8350!' => array( 'Samsung', 'Omnia W' ),
109
  'GT-i8700' => array( 'Samsung', 'Omnia 7' ),
110
  'GT-I8750' => array( 'Samsung', 'Ativ S' ),
111
+ 'Ativ S' => array( 'Samsung', 'Ativ S' ),
112
  'GT-S7530!' => array( 'Samsung', 'Omnia M' ),
113
+ 'SCH-R860U' => array( 'Samsung', 'Ativ Odyssey' ),
114
  'SGH-i667' => array( 'Samsung', 'Focus 2' ),
115
  'SGH-i677' => array( 'Samsung', 'Focus Flash' ),
116
  'SGH-i707' => array( 'Samsung', 'Taylor' ),
118
  'SCH-I930' => array( 'Samsung', 'Ativ Odyssey' ),
119
  'SGH-i937!' => array( 'Samsung', 'Focus S' ),
120
  'SGH-T899M' => array( 'Samsung', 'Ativ S' ),
121
+ 'SPH-I800' => array( 'Samsung', 'Ativ S Neo' ),
122
+ 'SM-W750V' => array( 'Samsung', 'Ativ SE' ),
123
  'OM(NI|IN)A ?7!' => array( 'Samsung', 'Omnia 7' ),
124
  'Omnia W' => array( 'Samsung', 'Omnia W' ),
125
  'Taylor' => array( 'Samsung', 'Taylor' ),
js/whichbrowser/data/profiles.php CHANGED
@@ -16,6 +16,8 @@
16
  'http://global-download.acer.com/SupportFiles/Files/UAProfile/XML/Acer_A1-811_JDQ39_Profile.xml' => array( 'Acer', 'Iconia A1-811', 'Android', TYPE_MOBILE ),
17
  'http://global-download.acer.com/SupportFiles/Files/UAProfile/XML/Acer_A1-812_JDQ39_Profile.xml' => array( 'Acer', 'Iconia A1-812', 'Android', TYPE_TABLET ),
18
  'http://go.acer.com/?id=5566' => array( 'Acer', 'Iconia A1-820', 'Android', TYPE_TABLET ),
 
 
19
  'http://support.acer.com/UAprofile/Acer_S300_Profile.xml' => array( 'Acer', 'Iconia Smart', 'Android', TYPE_MOBILE ),
20
  'http://support.acer.com/UAprofile/Acer_A100_IML74K_Profile.xml' => array( 'Acer', 'Iconia Tab A100', 'Android', TYPE_TABLET ),
21
  'http://support.acer.com/UAprofile/Acer_A100_Profile.xml' => array( 'Acer', 'Iconia Tab A100', 'Android', TYPE_TABLET ),
@@ -45,21 +47,28 @@
45
  'http://support.acer.com/UAprofile/Acer_A701_JRO03H_Profile.xml' => array( 'Acer', 'Iconia Tab A701', 'Android', TYPE_TABLET ),
46
  'http://support.acer.com/UAprofile/Acer_S100_Profile.xml' => array( 'Acer', 'Liquid', 'Android', TYPE_MOBILE ),
47
  'http://go.acer.com?id=17494' => array( 'Acer', 'Liquid E2', 'Android', TYPE_MOBILE ),
 
48
  'http://support.acer.com/UAprofile/Acer_E210_Profile.xml' => array( 'Acer', 'Liquid Express', 'Android', TYPE_MOBILE ),
49
  'http://support.acer.com/UAprofile/Acer_E320_Profile.xml' => array( 'Acer', 'Liquid Express', 'Android', TYPE_MOBILE ),
50
  'http://support.acer.com/UAprofile/Acer_E310_Profile.xml' => array( 'Acer', 'Liquid mini', 'Android', TYPE_MOBILE ),
51
  'http://support.acer.com/UAprofile/Acer_S120_Profile.xml' => array( 'Acer', 'Liquid mt', 'Android', TYPE_MOBILE ),
52
  'http://global-download.acer.com/SupportFiles/Files/UAProfile/XML/Acer_S510_JDQ39_Profile.xml' => array( 'Acer', 'Liquid S', 'Android', TYPE_MOBILE ),
53
  'http://go.acer.com/?id=17873' => array( 'Acer', 'Liquid S', 'Android', TYPE_MOBILE ),
 
54
  'http://support.acer.com/UAprofile/Acer_S520_JDQ39_Profile.xml' => array( 'Acer', 'Liquid S2', 'Android', TYPE_MOBILE ),
55
  'http://support.acer.com/UAprofile/Acer_Z110_UAProfile.xml' => array( 'Acer', 'Liquid Z', 'Android', TYPE_MOBILE ),
56
  'http://support.acer.com/UAprofile/Acer_Z120_UAProfile.xml' => array( 'Acer', 'Liquid Z2', 'Android', TYPE_MOBILE ),
 
 
 
57
  'http://support.acer.com/UAprofile/Acer_S200_Profile.xml' => array( 'Acer', 'neoTouch S200', 'Windows Mobile', TYPE_MOBILE ),
58
  'http://support.acer.com/UAprofile/Acer_S110_Profile.xml' => array( 'Acer', 'Stream', 'Android', TYPE_MOBILE ),
59
  'http://support.acer.com/UAprofile/Acer_TD600_profile.xml' => array( 'Acer', 'TD600', 'Android', TYPE_MOBILE ),
 
60
  'http://www.airnessmobile.com/uaprof/Airness-Air99.xml' => array( 'Airness', 'Air99', NULL, TYPE_MOBILE ),
61
  'http://www.airnessmobile.com/uaprof/HT-1.xml' => array( 'Airness', 'HT-1', NULL, TYPE_MOBILE ),
62
  'http://www.airnessmobile.com/uaprof/slide99.xml' => array( 'Airness', 'Slide99', NULL, TYPE_MOBILE ),
 
63
  'http://www-ccpp-mpd.alcatel.com/files/ALCATEL-BF4_2.0.rdf' => array( 'Alcatel', 'BF4', NULL, TYPE_MOBILE ),
64
  'http://www-ccpp-mpd.alcatel.com/files/ALCATEL-BF5_1.0.rdf' => array( 'Alcatel', 'BF5', NULL, TYPE_MOBILE ),
65
  'http://www-ccpp.tcl-ta.com/odm/ALCATEL_D6.rdf' => array( 'Alcatel', 'D6', NULL, TYPE_MOBILE ),
@@ -71,6 +80,7 @@
71
  'http://www-ccpp.tcl-ta.com/files/ALCATEL-OT-802.rdf' => array( 'Alcatel', 'One Touch 802', NULL, TYPE_MOBILE ),
72
  'http://www-ccpp.tcl-ta.com/files/ALCATEL_one_touch_803A.rdf' => array( 'Alcatel', 'One Touch 803', NULL, TYPE_MOBILE ),
73
  'http://www-ccpp.tcl-ta.com/files/ALCATEL-OT-806.rdf' => array( 'Alcatel', 'One Touch 806', NULL, TYPE_MOBILE ),
 
74
  'http://www-ccpp.tcl-ta.com/files/ALCATEL_one_touch_813.rdf' => array( 'Alcatel', 'One Touch 813', NULL, TYPE_MOBILE ),
75
  'http://www-ccpp.tcl-ta.com/files/ALCATEL_one_touch_813A.rdf' => array( 'Alcatel', 'One Touch 813', NULL, TYPE_MOBILE ),
76
  'http://www-ccpp.tcl-ta.com/files/ALCATEL_one_touch_813D.rdf' => array( 'Alcatel', 'One Touch 813', NULL, TYPE_MOBILE ),
@@ -80,6 +90,7 @@
80
  'http://www-ccpp.tcl-ta.com/files/ALCATEL-OT871A.rdf' => array( 'Alcatel', 'One Touch 871A', NULL, TYPE_MOBILE ),
81
  'http://www-ccpp.tcl-ta.com/files/ALCATEL_one_touch_890.xml' => array( 'Alcatel', 'One Touch 890', 'Android', TYPE_MOBILE ),
82
  'http://www-ccpp.tcl-ta.com/files/ALCATEL_one_touch_890D.xml' => array( 'Alcatel', 'One Touch 890', 'Android', TYPE_MOBILE ),
 
83
  'http://www-ccpp.tcl-ta.com/files/ALCATEL_one_touch_903.xml' => array( 'Alcatel', 'One Touch 903', 'Android', TYPE_MOBILE ),
84
  'http://www-ccpp.tcl-ta.com/files/ALCATEL_one_touch_903A.xml' => array( 'Alcatel', 'One Touch 903', 'Android', TYPE_MOBILE ),
85
  'http://www-ccpp.tcl-ta.com/files/ALCATEL_one_touch_903D.xml' => array( 'Alcatel', 'One Touch 903', 'Android', TYPE_MOBILE ),
@@ -117,6 +128,7 @@
117
  'http://www-ccpp.tcl-ta.com/files/ALCATEL_ONE_TOUCH_991.xml' => array( 'Alcatel', 'One Touch 991', 'Android', TYPE_MOBILE ),
118
  'http://www-ccpp.tcl-ta.com/files/ALCATEL_ONE_TOUCH_991A.xml' => array( 'Alcatel', 'One Touch 991', 'Android', TYPE_MOBILE ),
119
  'http://www-ccpp.tcl-ta.com/files/ALCATEL_ONE_TOUCH_991D.xml' => array( 'Alcatel', 'One Touch 991', 'Android', TYPE_MOBILE ),
 
120
  'http://www-ccpp.tcl-ta.com/files/ALCATEL_one_touch_992D.xml' => array( 'Alcatel', 'One Touch 992', 'Android', TYPE_MOBILE ),
121
  'http://www-ccpp.tcl-ta.com/files/ALCATEL_one_touch_993.xml' => array( 'Alcatel', 'One Touch 993', 'Android', TYPE_MOBILE ),
122
  'http://www-ccpp.tcl-ta.com/files/ALCATEL_one_touch_995.xml' => array( 'Alcatel', 'One Touch 995', 'Android', TYPE_MOBILE ),
@@ -132,30 +144,63 @@
132
  'http://www-ccpp.tcl-ta.com/files/onetouch_EVO7.xml' => array( 'Alcatel', 'One Touch Evo 7', 'Android', TYPE_TABLET ),
133
  'http://www-ccpp.tcl-ta.com/files/ONE_TOUCH_EVO7HD.xml' => array( 'Alcatel', 'One Touch Evo 7 HD', 'Android', TYPE_TABLET ),
134
  'http://www-ccpp.tcl-ta.com/files/ALCATEL_ONE_TOUCH_7024N.xml' => array( 'Alcatel', 'One Touch Fierce', 'Android', TYPE_MOBILE ),
 
135
  'http://www-ccpp.tcl-ta.com/files/ALCATEL_ONE_TOUCH_7024W.xml' => array( 'Alcatel', 'One Touch Fierce', 'Android', TYPE_MOBILE ),
 
136
  'http://www-ccpp.tcl-ta.com/files/ALCATEL_ONE_TOUCH_6030A.xml' => array( 'Alcatel', 'One Touch Idol', 'Android', TYPE_MOBILE ),
137
  'http://www-ccpp.tcl-ta.com/files/ALCATEL_ONE_TOUCH_6030D.xml' => array( 'Alcatel', 'One Touch Idol', 'Android', TYPE_MOBILE ),
138
  'http://www-ccpp.tcl-ta.com/files/ALCATEL_ONE_TOUCH_6030X.xml' => array( 'Alcatel', 'One Touch Idol', 'Android', TYPE_MOBILE ),
139
  'http://www-ccpp.tcl-ta.com/files/ALCATEL_ONE_TOUCH_6030X_Orange.xml' => array( 'Alcatel', 'One Touch Idol', 'Android', TYPE_MOBILE ),
 
 
 
 
 
 
 
 
140
  'http://www-ccpp.tcl-ta.com/files/ONE_TOUCH_6012D.xml' => array( 'Alcatel', 'One Touch Idol Mini', 'Android', TYPE_MOBILE ),
 
141
  'http://www-ccpp.tcl-ta.com/files/ONE_TOUCH_6012X.xml' => array( 'Alcatel', 'One Touch Idol Mini', 'Android', TYPE_MOBILE ),
142
  'http://www-ccpp.tcl-ta.com/files/ALCATEL_ONE_TOUCH_6034M.xml' => array( 'Alcatel', 'One Touch Idol S', 'Android', TYPE_MOBILE ),
143
  'http://www-ccpp.tcl-ta.com/files/ALCATEL_ONE_TOUCH_6034R.xml' => array( 'Alcatel', 'One Touch Idol S', 'Android', TYPE_MOBILE ),
144
  'http://www-ccpp.tcl-ta.com/files/ALCATEL_ONE_TOUCH_6035R.xml' => array( 'Alcatel', 'One Touch Idol S', 'Android', TYPE_MOBILE ),
145
  'http://www-ccpp.tcl-ta.com/files/ALCATEL_ONE_TOUCH_6033A.xml' => array( 'Alcatel', 'One Touch Idol Ultra', 'Android', TYPE_MOBILE ),
146
  'http://www-ccpp.tcl-ta.com/files/ALCATEL_ONE_TOUCH_6033X.xml' => array( 'Alcatel', 'One Touch Idol Ultra', 'Android', TYPE_MOBILE ),
 
147
  'http://www-ccpp.tcl-ta.com/files/ALCATEL_ONE_TOUCH_6040D.xml' => array( 'Alcatel', 'One Touch Idol X', 'Android', TYPE_MOBILE ),
148
  'http://www-ccpp.tcl-ta.com/files/ALCATEL_ONE_TOUCH_6040X.xml' => array( 'Alcatel', 'One Touch Idol X', 'Android', TYPE_MOBILE ),
 
 
 
149
  'http://www-ccpp.tcl-ta.com/files/ALCATEL_ONE_TOUCH_5020A.xml' => array( 'Alcatel', 'One Touch M\'Pop', 'Android', TYPE_MOBILE ),
150
  'http://www-ccpp.tcl-ta.com/files/ALCATEL_ONE_TOUCH_5020D.xml' => array( 'Alcatel', 'One Touch M\'Pop', 'Android', TYPE_MOBILE ),
151
  'http://www-ccpp.tcl-ta.com/files/ALCATEL_ONE_TOUCH_5020E.xml' => array( 'Alcatel', 'One Touch M\'Pop', 'Android', TYPE_MOBILE ),
 
152
  'http://www-ccpp.tcl-ta.com/files/ALCATEL_ONE_TOUCH_5020T.xml' => array( 'Alcatel', 'One Touch M\'Pop', 'Android', TYPE_MOBILE ),
153
  'http://www-ccpp.tcl-ta.com/files/ALCATEL_ONE_TOUCH_5020W.xml' => array( 'Alcatel', 'One Touch M\'Pop', 'Android', TYPE_MOBILE ),
154
  'http://www-ccpp.tcl-ta.com/files/ALCATEL_ONE_TOUCH_5020X.xml' => array( 'Alcatel', 'One Touch M\'Pop', 'Android', TYPE_MOBILE ),
 
155
  'http://www-ccpp.tcl-ta.com/files/ONE_TOUCH_4007D.xml' => array( 'Alcatel', 'One Touch Pixi', 'Android', TYPE_MOBILE ),
156
  'http://www-ccpp.tcl-ta.com/files/ONE_TOUCH_4007X.xml' => array( 'Alcatel', 'One Touch Pixi', 'Android', TYPE_MOBILE ),
 
 
 
 
157
  'http://www-ccpp.tcl-ta.com/files/ONE_TOUCH_4033D.xml' => array( 'Alcatel', 'One Touch Pop C3', 'Android', TYPE_MOBILE ),
158
  'http://www-ccpp.tcl-ta.com/files/ONE_TOUCH_4033X.xml' => array( 'Alcatel', 'One Touch Pop C3', 'Android', TYPE_MOBILE ),
 
 
 
 
 
 
 
 
 
 
 
 
159
  'http://www-ccpp.tcl-ta.com/files/ALCATEL_ONE_TOUCH_4030A.xml' => array( 'Alcatel', 'One Touch S\'Pop', 'Android', TYPE_MOBILE ),
160
  'http://www-ccpp.tcl-ta.com/files/ALCATEL_ONE_TOUCH_4030D.xml' => array( 'Alcatel', 'One Touch S\'Pop', 'Android', TYPE_MOBILE ),
161
  'http://www-ccpp.tcl-ta.com/files/ALCATEL_ONE_TOUCH_4030E.xml' => array( 'Alcatel', 'One Touch S\'Pop', 'Android', TYPE_MOBILE ),
@@ -171,6 +216,7 @@
171
  'http://www-ccpp.tcl-ta.com/files/ALCATEL_ONE_TOUCH_8008X.xml' => array( 'Alcatel', 'One Touch Scribe HD', 'Android', TYPE_MOBILE ),
172
  'http://www-ccpp.tcl-ta.com/files/ALCATEL_ONE_TOUCH_8020D.xml' => array( 'Alcatel', 'One Touch Scribe Pro', 'Android', TYPE_MOBILE ),
173
  'http://www-ccpp.tcl-ta.com/files/ONE_TOUCH_8020D.xml' => array( 'Alcatel', 'One Touch Scribe Pro', 'Android', TYPE_MOBILE ),
 
174
  'http://www-ccpp.tcl-ta.com/files/ALCATEL_7030L.xml' => array( 'Alcatel', 'One Touch Snap', 'Android', TYPE_MOBILE ),
175
  'http://www-ccpp.tcl-ta.com/files/ALCATEL_ONE_TOUCH_7025D.xml' => array( 'Alcatel', 'One Touch Snap', 'Android', TYPE_MOBILE ),
176
  'http://www-ccpp.tcl-ta.com/files/ALCATEL_ONE_TOUCH_7025X.xml' => array( 'Alcatel', 'One Touch Snap', 'Android', TYPE_MOBILE ),
@@ -194,12 +240,14 @@
194
  'http://www.amobile.com.cn/ua/Amoi-8512.xml' => array( 'Amoi', '8512', NULL, TYPE_MOBILE ),
195
  'http://www.amobile.com.cn/ua/Amoi-8709.xml' => array( 'Amoi', '8709', NULL, TYPE_MOBILE ),
196
  'http://www.amobile.com.cn/ua/Amoi-8710.xml' => array( 'Amoi', '8710', NULL, TYPE_MOBILE ),
 
197
  'http://www.amobile.com.cn/ua/c200.xml' => array( 'Amoi', 'C200', NULL, TYPE_MOBILE ),
198
  'http://www.amobile.com.cn/ua/CA6.xml' => array( 'Amoi', 'CA6', NULL, TYPE_MOBILE ),
199
  'http://www.amobile.com.cn/ua/E610.xml' => array( 'Amoi', 'E610', NULL, TYPE_MOBILE ),
200
  'http://www.amobile.com.cn/ua/E72.xml' => array( 'Amoi', 'E72', NULL, TYPE_MOBILE ),
201
  'http://www.amobile.com.cn/ua/F8.xml' => array( 'Amoi', 'F8', NULL, TYPE_MOBILE ),
202
  'http://www.amobile.com.cn/ua/M636.xml' => array( 'Amoi', 'M636', NULL, TYPE_MOBILE ),
 
203
  'http://www.amobile.com.cn/ua/S6.xml' => array( 'Amoi', 'S6', NULL, TYPE_MOBILE ),
204
  'https://servicios.iusacell.com.mx/amoi/v810/v810v1.xml' => array( 'Amoi', 'V810', NULL, TYPE_MOBILE ),
205
  'http://www.apanda.com.cn/apanda-A60-ua-profile.xml' => array( 'Apanda', 'A60', 'Android', TYPE_MOBILE ),
@@ -210,13 +258,17 @@
210
  'http://uaprofile.asus.com/uaprof/ASUS-NAPA-MINI-1.0.xml' => array( 'Asus', 'Eee Pc T20', 'Android', TYPE_MOBILE ),
211
  'http://uaprofile.asus.com/uaprof/ASUS-ASUS-K00S.xml' => array( 'Asus', 'Fonepad', 'Android', TYPE_TABLET ),
212
  'http://uaprofile.asus.com/uaprof/ASUS-ME371MG-1.0.xml' => array( 'Asus', 'Fonepad', 'Android', TYPE_TABLET ),
 
 
 
213
  'http://uaprofile.asus.com/uaprof/ASUS-ME372CG.xml' => array( 'Asus', 'Fonepad 7', 'Android', TYPE_TABLET ),
214
  'http://uaprofile.asus.com/uaprof/ASUS-K00G.xml' => array( 'Asus', 'Fonepad Note 6', 'Android', TYPE_TABLET ),
215
  'http://uaprofile.asus.com/uaprof/K00G.xml' => array( 'Asus', 'Fonepad Note 6', 'Android', TYPE_TABLET ),
216
  'http://uaprofile.asus.com/uaprof/ASUS-J501_UAProf.xml' => array( 'Asus', 'J501', NULL, TYPE_MOBILE ),
217
- 'http://uaprofile.asus.com/uaprof/ASUS-K00F.xml' => array( 'Asus', 'K00F', 'Android', TYPE_TABLET ),
218
  'http://uaprofile.asus.com/uaprof/ASUS-M530w-1.0.xml' => array( 'Asus', 'M530w', 'Windows Mobile', TYPE_MOBILE ),
219
  'http://uaprofile.asus.com/uaprof/ASUS-M930-1.0.xml' => array( 'Asus', 'M930', 'Windows Mobile', TYPE_MOBILE ),
 
 
220
  'http://uaprofile.asus.com/uaprof/ASUS-ME302C-1.0.xml' => array( 'Asus', 'MemoPad FHD 10', 'Android', TYPE_TABLET ),
221
  'http://uaprofile.asus.com/uaprof/ASUS-grouper.xml' => array( 'Asus', 'Nexus 7', 'Android', TYPE_TABLET ),
222
  'http://uaprofile.asus.com/uaprof/grouper.xml' => array( 'Asus', 'Nexus 7', 'Android', TYPE_TABLET ),
@@ -235,12 +287,20 @@
235
  'http://uaprofile.asus.com/uaprof/ASUS-A86.xml' => array( 'Asus', 'Padfone Infinity', 'Android', TYPE_MOBILE ),
236
  'http://uaprofile.asus.com/uaprof/ASUS-ASUS-A86.xml' => array( 'Asus', 'Padfone Infinity', 'Android', TYPE_TABLET ),
237
  'http://uaprofile.asus.com/uaprof/ASUS-ASUS-T00C.xml' => array( 'Asus', 'Padfone Mini', 'Android', TYPE_MOBILE ),
 
 
 
238
  'http://uaprofile.asus.com/uaprof/ASUS-TF300TG.xml' => array( 'Asus', 'Transformer Pad 300', 'Android', TYPE_TABLET ),
239
  'http://uaprofile.asus.com/uaprof/ASUS-TF300TL.xml' => array( 'Asus', 'Transformer Pad 300', 'Android', TYPE_TABLET ),
240
  'http://uaprofile.asus.com/uaprof/ASUS-K00C.xml' => array( 'Asus', 'Transformer Pad Infinity', 'Android', TYPE_TABLET ),
241
  'http://uaprofile.asus.com/uaprof/ASUS-TF700KL-1.0.xml' => array( 'Asus', 'Transformer Pad Infinity 700', 'Android', TYPE_TABLET ),
242
  'http://uaprofile.asus.com/uaprof/ASUS-TF700KL.xml' => array( 'Asus', 'Transformer Pad Infinity 700', 'Android', TYPE_TABLET ),
243
  'http://uaprofile.asus.com/uaprof/ASUS-V75_UAProf.xml' => array( 'Asus', 'V75', NULL, TYPE_MOBILE ),
 
 
 
 
 
244
  'http://wap1.huawei.com/uaprof/HuaweiU8652GPRS-ATT.xml' => array( 'AT&T', 'Fusion', 'Android', TYPE_MOBILE ),
245
  'http://wap1.huawei.com/uaprof/HuaweiU8652WCDMA-ATT.xml' => array( 'AT&T', 'Fusion', 'Android', TYPE_MOBILE ),
246
  'http://device.sprintpcs.com/Audiovox/CDM-8450SP/T060SP2T36.rdf' => array( 'Audiovox', 'CDM-8450', NULL, TYPE_MOBILE ),
@@ -274,13 +334,27 @@
274
  'http://uap.benq.com/mb_s81/benq_s81_v1.xml' => array( 'BenQ-Siemens', 'S81', NULL, TYPE_MOBILE ),
275
  'http://uap.benq.com/mb_s82/benq_S82_voda_2g.xml' => array( 'BenQ-Siemens', 'S82', NULL, TYPE_MOBILE ),
276
  'http://uap.benq.com/mb_s88/benq_s88_v3_300k.xml' => array( 'BenQ-Siemens', 'S88', NULL, TYPE_MOBILE ),
 
 
 
 
 
277
  'http://www.bluhelp.com/upload/xmlfiles/dash_4.5.XML' => array( 'BLU', 'Dash 4.5', 'Android', TYPE_MOBILE ),
 
 
 
 
 
278
  'http://www.bluhelp.com/upload/xmlfiles/LifeView.xml' => array( 'BLU', 'Life View', 'Android', TYPE_MOBILE ),
279
  'http://www.bluhelp.com/upload/xmlfiles/STUDIO5.0.xml' => array( 'BLU', 'Studio 5.0', 'Android', TYPE_MOBILE ),
 
 
280
  'http://www.zte.com.cn/mobile/uaprof/Bouygues_Telecom_Bs_402.xml' => array( 'Bouygues', 'Bs 402', 'Android', TYPE_MOBILE ),
281
  'http://www-ccpp.tcl-ta.com/files/BS471.xml' => array( 'Bouygues', 'Bs 471', 'Android', TYPE_MOBILE ),
 
282
  'http://uaprof.vtext.com/pcd/c771/c771.xml' => array( 'Casio', 'Gz\'One Commando', 'Android', TYPE_MOBILE ),
283
  'http://uaprof.vtext.com/pcd/vzw/vzw.xml' => array( 'Casio', 'Gz\'One Commando 811', 'Android', TYPE_MOBILE ),
 
284
  'http://www.catphones.com/uaprof/Cat_B10-2_UAprofile.xml' => array( 'Cat', 'B15', 'Android', TYPE_MOBILE ),
285
  'http://uap.cellon.com/C2573.xml' => array( 'Cellon', 'C2573', NULL, TYPE_MOBILE ),
286
  'http://uap.cellon.com/C8660.xml' => array( 'Cellon', 'C8660', 'Android', TYPE_MOBILE ),
@@ -296,6 +370,7 @@
296
  'http://ota.ragentek.com:8002/RgkOTA/UAprofile/Coolpad8122_UAprofile.xml' => array( 'Coolpad', '8122', 'Android', TYPE_MOBILE ),
297
  'http://uaprofile.YuLong.com/uaprof/YuLong-CoolPad8809-1.0.xml' => array( 'CoolPad', '8809', 'Android', TYPE_MOBILE ),
298
  'http://nmsc.ctvap.cn/uaprof/YL/YL_Coolpad_E230_2_20100520.xml' => array( 'Coolpad', 'E230', 'Brew', TYPE_MOBILE ),
 
299
  'http://ftp.us.dell.com/Factor_Software_Updates/Grappa_UA_Profile.xml' => array( 'Dell', 'Grappa', 'Android', TYPE_MOBILE ),
300
  'http://122.200.68.229/docs/mini3ix.xml' => array( 'Dell', 'Mini 3ix', 'Android', TYPE_MOBILE ),
301
  'http://www.zte.com.cn/mobile/uaprof/XCD35.xml' => array( 'Dell', 'XCD35', 'Android', TYPE_MOBILE ),
@@ -303,6 +378,7 @@
303
  'http://www.htcmms.com.tw/gen/Tachi-1.0.xml' => array( 'Dopod', 'T5399', 'Windows Mobile', TYPE_MOBILE ),
304
  'http://www.htcmms.com.tw/gen/Qilin-1.0.xml' => array( 'Dopod', 'T8388', 'Windows Mobile', TYPE_MOBILE ),
305
  'http://ua.doro.com/ua/Doro810_UAProfile.xml' => array( 'Doro', 'Liberto 810', 'Android', TYPE_MOBILE ),
 
306
  'http://mobileinternet.ericsson.com/UAprof/R380e.xml' => array( 'Ericsson', 'R380', NULL, TYPE_MOBILE ),
307
  'http://wap.sonyericsson.com/UAprof/R520.xml' => array( 'Ericsson', 'R520', NULL, TYPE_MOBILE ),
308
  'http://wap.sonyericsson.com/UAprof/R600.xml' => array( 'Ericsson', 'R600', NULL, TYPE_MOBILE ),
@@ -326,17 +402,23 @@
326
  'http://www.fly-phone.ru/UAP/Fly_IQ237.xml' => array( 'Fly', 'IQ237 Dynamic', 'Android', TYPE_MOBILE ),
327
  'http://www.fly-phone.ru/UAP/Fly_IQ238.xml' => array( 'Fly', 'IQ238 Jazz', 'Android', TYPE_MOBILE ),
328
  'http://www.fly-phone.ru/UAP/Fly_IQ430.xml' => array( 'Fly', 'IQ430 Evoke', 'Android', TYPE_MOBILE ),
 
329
  'http://www.fly-phone.ru/UAP/Fly_IQ440.xml' => array( 'Fly', 'IQ440 Energie', 'Android', TYPE_MOBILE ),
 
330
  'http://www.fly-phone.ru/UAP/Fly_IQ4404.xml' => array( 'Fly', 'IQ440 Energie', 'Android', TYPE_MOBILE ),
331
  'http://www.fly-phone.ru/UAP/Fly_IQ4410_Quad.xml' => array( 'Fly', 'IQ441 Radiance', 'Android', TYPE_MOBILE ),
 
332
  'http://www.fly-phone.ru/UAP/Fly_IQ442.xml' => array( 'Fly', 'IQ442 Miracle', 'Android', TYPE_MOBILE ),
333
  'http://www.fly-phone.ru/UAP/Fly_IQ443.xml' => array( 'Fly', 'IQ443 Trend', 'Android', TYPE_MOBILE ),
334
  'http://www.fly-phone.ru/UAP/Fly_IQ444.xml' => array( 'Fly', 'IQ444 Diamond', 'Android', TYPE_MOBILE ),
335
  'http://www.fly-phone.ru/UAP/Fly_IQ444_Quattro.xml' => array( 'Fly', 'IQ444 Diamond', 'Android', TYPE_MOBILE ),
336
  'http://www.fly-phone.ru/UAP/Fly_IQ445.xml' => array( 'Fly', 'IQ445 Genius', 'Android', TYPE_MOBILE ),
337
  'http://www.fly-phone.ru/UAP/Fly_IQ446.xml' => array( 'Fly', 'IQ446 Magic', 'Android', TYPE_MOBILE ),
 
338
  'http://www.fly-phone.ru/UAP/Fly_IQ450_Quattro.xml' => array( 'Fly', 'IQ450 Horizon', 'Android', TYPE_MOBILE ),
339
  'http://www.fly-phone.ru/UAP/Fly_IQ451.xml' => array( 'Fly', 'IQ451 Vista', 'Android', TYPE_MOBILE ),
 
 
340
  'http://211.42.201.70/ua_profile/Fly-LX610.xml' => array( 'Fly', 'LX610', NULL, TYPE_MOBILE ),
341
  'http://www.fly-phone.ru/UAP/Fly_MC100.xml' => array( 'Fly', 'MC100', NULL, TYPE_MOBILE ),
342
  'http://www.fly-phone.ru/UAP/Fly_MC110.xml' => array( 'Fly', 'MC110', NULL, TYPE_MOBILE ),
@@ -373,6 +455,8 @@
373
  'http://eip2.gigabytecm.com/GIGABYTE-g-smart-vga.xml' => array( 'Gigabyte', 'GSmart T600', NULL, TYPE_MOBILE ),
374
  'http://wap1.huawei.com/uaprof/HuaweiU8510-1GPRS-GM_Turkey.xml' => array( 'GM', 'Ultimate Slim', 'Android', TYPE_MOBILE ),
375
  'http://mobile.haier.com/UAProf/uapA62.xml' => array( 'Haier', 'A62', NULL, TYPE_MOBILE ),
 
 
376
  'http://mobile.haier.com/UAProf/uapM1610.xml' => array( 'Haier', 'M1610', NULL, TYPE_MOBILE ),
377
  'http://www.ehaier.com/download/mobile/uapHaier-HW-N86W.xml' => array( 'Haier', 'N86W', 'Android', TYPE_MOBILE ),
378
  'http://www.ehaier.com/download/mobile/uapHaier-HW-N88W.xml' => array( 'Haier', 'N88W', 'Android', TYPE_MOBILE ),
@@ -381,7 +465,8 @@
381
  'http://mobile.haier.com/UAProf/uapV7000.xml' => array( 'Haier', 'V7000', NULL, TYPE_MOBILE ),
382
  'http://www.ehaier.com/download/mobile/uapHW-W910.xml' => array( 'Haier', 'W910', 'Android', TYPE_MOBILE ),
383
  'http://mobile.haier.com/UAProf/uapZ3000.xml' => array( 'Haier', 'Z3000', NULL, TYPE_MOBILE ),
384
- 'http://172.27.138.172/Xianghe/MTK_MT6589_1_20130313.XML' => array( 'Hisense', 'EG980', 'Android', TYPE_MOBILE ),
 
385
  'http://phone.hisense.com/khfw/rjxz/201208/P020120809608224982262.xml' => array( 'Hisense', 'T830', 'Android', TYPE_MOBILE ),
386
  'http://phone.hisense.com/khfw/rjxz/201205/P020120521576380789573.xml' => array( 'Hisense', 'T860', 'Android', TYPE_MOBILE ),
387
  'http://phone.hisense.com/khfw/rjxz/201301/P020130130568107298317.xml' => array( 'Hisense', 'T912', 'Android', TYPE_MOBILE ),
@@ -400,7 +485,6 @@
400
  'http://www.hp.com/ipaqcarrier/hpipaqhw692xv10.xml' => array( 'HP', 'iPAQ hw6920', 'Windows Mobile', TYPE_MOBILE ),
401
  'http://www.hp.com/ipaqcarrier/hpipaqrw6815v10.xml' => array( 'HP', 'iPAQ rw6815', 'Windows Mobile', TYPE_MOBILE ),
402
  'http://www.hp.com/ipaqcarrier/HPiPAQVoiceMessenger10.xml' => array( 'HP', 'iPAQ Voice Messenger', 'Windows Mobile', TYPE_MOBILE ),
403
- 'http://device.sprintpcs.com/HTC/APA9292KT/5076511.rdf' => array( 'HTC', 'EVO 4G', 'Android', TYPE_MOBILE ),
404
  'http://www.htcmms.com.tw/gen/Strk-1.0.xml' => array( 'HTC', '3100', 'Windows Mobile', TYPE_MOBILE ),
405
  'http://www.htcmms.com.tw/Android/Common/SongShan/ua-profile.xml' => array( 'HTC', 'A3360', 'Android', TYPE_MOBILE ),
406
  'http://www.htcmms.com.tw/Android/Common/Tianshan/ua-profile.xml' => array( 'HTC', 'A3380', 'Android', TYPE_MOBILE ),
@@ -429,6 +513,7 @@
429
  'http://www.htcmms.com.tw/Android/Orange/ChaChaCha/ua-profile.xml' => array( 'HTC', 'ChaCha', 'Android', TYPE_MOBILE ),
430
  'http://www.htcmms.com.tw/Android/Orange/PH06/ua-profile.xml' => array( 'HTC', 'ChaCha', 'Android', TYPE_MOBILE ),
431
  'http://www.htcmms.com.tw/Android/Common/PD11/ua-profile.xml' => array( 'HTC', 'Cullinan', 'Android', TYPE_MOBILE ),
 
432
  'http://www.htcmms.com.tw/Android/Bouygues/PO73/ua-profile.xml' => array( 'HTC', 'Desire', 'Android', TYPE_MOBILE ),
433
  'http://www.htcmms.com.tw/Android/Common/Bravo/HTC_Desire.xml' => array( 'HTC', 'Desire', 'Android', TYPE_MOBILE ),
434
  'http://www.htcmms.com.tw/Android/Common/Bravo/HTC_Desire_A8181.xml' => array( 'HTC', 'Desire', 'Android', TYPE_MOBILE ),
@@ -444,17 +529,35 @@
444
  'http://www.htcmms.com.tw/Android/Vodafone/L01/ua-profile.xml' => array( 'HTC', 'Desire', 'Android', TYPE_MOBILE ),
445
  'http://www.htcmms.com.tw/Android/Common/PO601/ua-profile.xml' => array( 'HTC', 'Desire 200', 'Android', TYPE_MOBILE ),
446
  'http://www.htcmms.com.tw/Android/Common/4WaXiSSfCP/ua-profile.xml' => array( 'HTC', 'Desire 300', 'Android', TYPE_MOBILE ),
 
 
 
447
  'http://www.htcmms.com.tw/Android/Common/0P3Z1/ua-profile.xml' => array( 'HTC', 'Desire 500', 'Android', TYPE_MOBILE ),
448
  'http://www.htcmms.com.tw/Android/Common/0P3Z11/ua-profile.xml' => array( 'HTC', 'Desire 500', 'Android', TYPE_MOBILE ),
 
449
  'http://www.htcmms.com.tw/Android/TIM/0P3Z11/ua-profile.xml' => array( 'HTC', 'Desire 500', 'Android', TYPE_MOBILE ),
 
 
450
  'http://www.htcmms.com.tw/Android/Common/PO49120/ua-profile.xml' => array( 'HTC', 'Desire 600', 'Android', TYPE_MOBILE ),
 
 
 
451
  'http://www.htcmms.com.tw/Android/Common/CjnctPc6Sf/ua-profile.xml' => array( 'HTC', 'Desire 601', 'Android', TYPE_MOBILE ),
 
452
  'http://www.htcmms.com.tw/Android/Rogers/CjnctPc6Sf/ua-profile.xml' => array( 'HTC', 'Desire 601', 'Android', TYPE_MOBILE ),
 
 
453
  'http://www.htcmms.com.tw/Android/Common/PO491/ua-profile.xml' => array( 'HTC', 'Desire 606w', 'Android', TYPE_MOBILE ),
454
  'http://www.htcmms.com.tw/Android/Common/PO481/ua-profile.xml' => array( 'HTC', 'Desire 608t', 'Android', TYPE_MOBILE ),
455
  'http://nmsc.ctvap.cn/uaprof/HTC/HTC_609d_1_20130501.XML' => array( 'HTC', 'Desire 609d', 'Android', TYPE_MOBILE ),
 
456
  'http://nmsc.ctvap.cn/uaprof/HTC/HTC_619d_1_20130815.XML' => array( 'HTC', 'Desire 619d', 'Android', TYPE_MOBILE ),
457
  'http://www.htcmms.com.tw/Android/Common/azxFLxeBCm/ua-profile.xml' => array( 'HTC', 'Desire 709d', 'Android', TYPE_MOBILE ),
 
 
 
 
 
458
  'http://mms.mycricket.com/htc_h1000c.xml' => array( 'HTC', 'Desire C', 'Android', TYPE_MOBILE ),
459
  'http://www.htcmms.com.tw/Android/Bell/A320a/ua-profile.xml' => array( 'HTC', 'Desire C', 'Android', TYPE_MOBILE ),
460
  'http://www.htcmms.com.tw/Android/Common/L01/ua-profile.xml' => array( 'HTC', 'Desire C', 'Android', TYPE_MOBILE ),
@@ -469,6 +572,7 @@
469
  'http://www.htcmms.com.tw/Android/Telus/DesireHD/ua-profile.xml' => array( 'HTC', 'Desire HD', 'Android', TYPE_MOBILE ),
470
  'http://www.htcmms.com.tw/Android/TMO/Ace/ua-profile.xml' => array( 'HTC', 'Desire HD', 'Android', TYPE_MOBILE ),
471
  'http://www.htcmms.com.tw/Android/Common/PM6014/ua-profile.xml' => array( 'HTC', 'Desire L', 'Android', TYPE_MOBILE ),
 
472
  'http://www.htcmms.com.tw/Android/Common/DesireS/ua-profile.xml' => array( 'HTC', 'Desire S', 'Android', TYPE_MOBILE ),
473
  'http://www.htcmms.com.tw/Android/Common/PG88/ua-profile.xml' => array( 'HTC', 'Desire S', 'Android', TYPE_MOBILE ),
474
  'http://www.htcmms.com.tw/Android/Telstra/S510b/ua-profile.xml' => array( 'HTC', 'Desire S', 'Android', TYPE_MOBILE ),
@@ -487,6 +591,8 @@
487
  'http://www.htcmms.com.tw/Android/TMO/PO73/ua-profile.xml' => array( 'HTC', 'Desire X', 'Android', TYPE_MOBILE ),
488
  'http://www.htcmms.com.tw/Android/Bell/Vision/ua-profile.xml' => array( 'HTC', 'Desire Z', 'Android', TYPE_MOBILE ),
489
  'http://www.htcmms.com.tw/Android/Common/DesireZ/ua-profile.xml' => array( 'HTC', 'Desire Z', 'Android', TYPE_MOBILE ),
 
 
490
  'http://uaprof.vtext.com/pcd/adr6435/adr6435.xml' => array( 'HTC', 'Droid DNA', 'Android', TYPE_MOBILE ),
491
  'http://www.htcmms.com.tw/Android/Common/PL832/ua-profile.xml' => array( 'HTC', 'Droid DNA', 'Android', TYPE_MOBILE ),
492
  'http://uaprof.vtext.com/adr62k/adr62k.xml' => array( 'HTC', 'Droid Eris', 'Android', TYPE_MOBILE ),
@@ -503,7 +609,9 @@
503
  'http://device.sprintpcs.com/HTC/APX325CKT/31565116.rdf' => array( 'HTC', 'EVO', 'Android', TYPE_MOBILE ),
504
  'http://device.sprintpcs.com/HTC/APX325CKT/3166513.rdf' => array( 'HTC', 'EVO', 'Android', TYPE_MOBILE ),
505
  'http://device.sprintpcs.com/HTC/APX325CKT/3176514.rdf' => array( 'HTC', 'EVO', 'Android', TYPE_MOBILE ),
 
506
  'http://device.sprintpcs.com/HTC/APX325CKT/4036511.rdf' => array( 'HTC', 'EVO', 'Android', TYPE_MOBILE ),
 
507
  'http://device.sprintpcs.com/HTC/APX515CKT/1116512.rdf' => array( 'HTC', 'EVO 3D', 'Android', TYPE_MOBILE ),
508
  'http://device.sprintpcs.com/HTC/APX515CKT/1116513.rdf' => array( 'HTC', 'EVO 3D', 'Android', TYPE_MOBILE ),
509
  'http://device.sprintpcs.com/HTC/APX515CKT/1136517.rdf' => array( 'HTC', 'EVO 3D', 'Android', TYPE_MOBILE ),
@@ -529,6 +637,7 @@
529
  'http://device.sprintpcs.com/HTC/APA9292KT/4536511.rdf' => array( 'HTC', 'EVO 4G', 'Android', TYPE_MOBILE ),
530
  'http://device.sprintpcs.com/HTC/APA9292KT/4546511.rdf' => array( 'HTC', 'EVO 4G', 'Android', TYPE_MOBILE ),
531
  'http://device.sprintpcs.com/HTC/APA9292KT/4676513.rdf' => array( 'HTC', 'EVO 4G', 'Android', TYPE_MOBILE ),
 
532
  'http://device.sprintpcs.com/HTC/APA9292KT/5076512.rdf' => array( 'HTC', 'EVO 4G', 'Android', TYPE_MOBILE ),
533
  'http://device.sprintpcs.com/HTC/APA9292KT/5076516.rdf' => array( 'HTC', 'EVO 4G', 'Android', TYPE_MOBILE ),
534
  'http://www.htcmms.com.tw/Android/KDDI/ISW11HT/ua-profile.xml' => array( 'HTC', 'EVO 4G', 'Android', TYPE_MOBILE ),
@@ -550,20 +659,24 @@
550
  'http://device.sprintpcs.com/HTC/ATP515CKIT/2236511.rdf' => array( 'HTC', 'EVO View 4G', 'Android', TYPE_MOBILE ),
551
  'http://www.htcmms.com.tw/Android/Common/PJ03/ua-profile.xml' => array( 'HTC', 'Explorer', 'Android', TYPE_MOBILE ),
552
  'http://uaprof.vtext.com/pcd/adr6410/adr6410.xml' => array( 'HTC', 'Fireball', 'Android', TYPE_MOBILE ),
 
553
  'http://www.htcmms.com.tw/Android/Common/PG411/ua-profile.xml' => array( 'HTC', 'Flyer', 'Android', TYPE_TABLET ),
554
  'http://www.htcmms.com.tw/Brew/Aqua/F5151-1.0.xml' => array( 'HTC', 'Freestyle', 'Brew', TYPE_MOBILE ),
555
  'http://www.htcmms.com.tw/att/P4600-1.0.xml' => array( 'HTC', 'Fuze', 'Windows Mobile', TYPE_MOBILE ),
556
  'http://www.htcmms.com.tw/Android/Common/Gratia/ua-profile.xml' => array( 'HTC', 'Gratia', 'Android', TYPE_MOBILE ),
557
  'http://www.htcmms.com.tw/gen/HTC_HD_mini_T5555-1.0.xml' => array( 'HTC', 'HD mini', 'Windows Mobile', TYPE_MOBILE ),
558
  'http://www.htcmms.com.tw/gen/HTC_HD2_T8585-1.0.xml' => array( 'HTC', 'HD2', 'Windows Mobile', TYPE_MOBILE ),
 
559
  'http://www.htcmms.com.tw/gen/Leo-1.5.xml' => array( 'HTC', 'HD2', 'Windows Mobile', TYPE_MOBILE ),
560
  'http://www.htcmms.com.tw/voda/HTC_HD2-1.0.xml' => array( 'HTC', 'HD2', 'Windows Mobile', TYPE_MOBILE ),
 
561
  'http://device.sprintpcs.com/HTC/APA6277KT/2276516.rdf' => array( 'HTC', 'Hero', 'Android', TYPE_MOBILE ),
562
  'http://device.sprintpcs.com/HTC/APA6277KT/2316517.rdf' => array( 'HTC', 'Hero', 'Android', TYPE_MOBILE ),
563
  'http://device.sprintpcs.com/HTC/APA6277KT/2326512.rdf' => array( 'HTC', 'Hero', 'Android', TYPE_MOBILE ),
564
  'http://www.htcmms.com.tw/Android/Common/Hero/ua-profile.xml' => array( 'HTC', 'Hero', 'Android', TYPE_MOBILE ),
565
  'http://www.htcmms.com.tw/Android/Telus/Hero/ua-profile.xml' => array( 'HTC', 'Hero', 'Android', TYPE_MOBILE ),
566
  'http://www.htcmms.com.tw/Android/ATT/PH39100/ua-profile.xml' => array( 'HTC', 'Holiday', 'Android', TYPE_MOBILE ),
 
567
  'http://nmsc.ctvap.cn/uaprof/HTC/HTC_S710d_2_20110301.XML' => array( 'HTC', 'Incredible S', 'Android', TYPE_MOBILE ),
568
  'http://www.htcmms.com.tw/Android/Bell/Vivo/ua-profile.xml' => array( 'HTC', 'Incredible S', 'Android', TYPE_MOBILE ),
569
  'http://www.htcmms.com.tw/Android/Common/PG32/ua-profile.xml' => array( 'HTC', 'Incredible S', 'Android', TYPE_MOBILE ),
@@ -586,24 +699,34 @@
586
  'http://device.sprintpcs.com/HTC/PPC6800/3566510.rdf' => array( 'HTC', 'Mogul', 'Windows Mobile', TYPE_MOBILE ),
587
  'http://www.htcmms.com.tw/gen/Breeze-2.0.xml' => array( 'HTC', 'MTeoR', 'Windows Mobile', TYPE_MOBILE ),
588
  'http://www.htcmms.com.tw/Android/common/NexusOne/ua-profile.xml' => array( 'HTC', 'Nexus One', 'Android', TYPE_MOBILE ),
 
 
589
  'http://device.sprintpcs.com/HTC/HTCPN702-Chameleon/12965110.rdf' => array( 'HTC', 'One', 'Android', TYPE_MOBILE ),
590
  'http://device.sprintpcs.com/HTC/HTCPN702-Chameleon/1296517.rdf' => array( 'HTC', 'One', 'Android', TYPE_MOBILE ),
591
  'http://device.sprintpcs.com/HTC/HTCPN702-Chameleon/1316512.rdf' => array( 'HTC', 'One', 'Android', TYPE_MOBILE ),
592
  'http://device.sprintpcs.com/HTC/HTCPN702-Chameleon/3046512.rdf' => array( 'HTC', 'One', 'Android', TYPE_MOBILE ),
 
593
  'http://device.sprintpcs.com/HTC/HTCPN702-SPRINT/12965110.rdf' => array( 'HTC', 'One', 'Android', TYPE_MOBILE ),
594
  'http://device.sprintpcs.com/HTC/HTCPN702-SPRINT/1296517.rdf' => array( 'HTC', 'One', 'Android', TYPE_MOBILE ),
595
  'http://device.sprintpcs.com/HTC/HTCPN702-SPRINT/1316512.rdf' => array( 'HTC', 'One', 'Android', TYPE_MOBILE ),
596
  'http://device.sprintpcs.com/HTC/HTCPN702-SPRINT/3046512.rdf' => array( 'HTC', 'One', 'Android', TYPE_MOBILE ),
 
 
 
 
597
  'http://device.sprintpcs.com/HTC/HTCPN702-SPRINT/42ONE Inverted ROM v12.rdf' => array( 'HTC', 'One', 'Android', TYPE_MOBILE ),
598
  'http://device.sprintpcs.com/HTC/HTCPN702-SPRINT/Ava-OneV1//ALPHA1.rdf' => array( 'HTC', 'One', 'Android', TYPE_MOBILE ),
599
  'http://device.sprintpcs.com/HTC/HTCPN702-SPRINT/BSC Tranquil One RLS42.rdf' => array( 'HTC', 'One', 'Android', TYPE_MOBILE ),
600
  'http://device.sprintpcs.com/HTC/HTCPN702-SPRINT/RageOne CDMA v100.rdf' => array( 'HTC', 'One', 'Android', TYPE_MOBILE ),
 
601
  'http://device.sprintpcs.com/HTC/HTCPN702-SPRINT/Stock 12965110 Odex by -viperboy-.rdf' => array( 'HTC', 'One', 'Android', TYPE_MOBILE ),
602
  'http://device.sprintpcs.com/HTC/HTCPN702-SPRINT/Stock w Goodies One 115.rdf' => array( 'HTC', 'One', 'Android', TYPE_MOBILE ),
603
  'http://device.sprintpcs.com/HTC/HTCPN702-SPRINT/Stock w Goodies One 201.rdf' => array( 'HTC', 'One', 'Android', TYPE_MOBILE ),
604
  'http://device.sprintpcs.com/HTC/HTCPN702-SPRINT/Stock.rdf' => array( 'HTC', 'One', 'Android', TYPE_MOBILE ),
605
  'http://device.sprintpcs.com/HTC/HTCPN702-SPRINT/TrickDroid 551.rdf' => array( 'HTC', 'One', 'Android', TYPE_MOBILE ),
 
606
  'http://device.sprintpcs.com/HTC/HTCPN702-SPRINT/viperROM One v102.rdf' => array( 'HTC', 'One', 'Android', TYPE_MOBILE ),
 
607
  'http://nmsc.ctvap.cn/uaprof/HTC/HTC_802d_1_20130301.XML' => array( 'HTC', 'One', 'Android', TYPE_MOBILE ),
608
  'http://nmsc.ctvap.cn/uaprof/HTC/HTC_One_1_20130301.XML' => array( 'HTC', 'One', 'Android', TYPE_MOBILE ),
609
  'http://uaprof.qma.com.tw/HTC_802d.xml' => array( 'HTC', 'One', 'Android', TYPE_MOBILE ),
@@ -621,6 +744,7 @@
621
  'http://www.htcmms.com.tw/Android/Common/PN078T/ua-profile.xml' => array( 'HTC', 'One', 'Android', TYPE_MOBILE ),
622
  'http://www.htcmms.com.tw/Android/Common/PN078U/ua-profile.xml' => array( 'HTC', 'One', 'Android', TYPE_MOBILE ),
623
  'http://www.htcmms.com.tw/Android/Common/PN078W/ua-profile.xml' => array( 'HTC', 'One', 'Android', TYPE_MOBILE ),
 
624
  'http://www.htcmms.com.tw/Android/O2/PN071/ua-profile.xml' => array( 'HTC', 'One', 'Android', TYPE_MOBILE ),
625
  'http://www.htcmms.com.tw/Android/Orange/PN071/ua-profile.xml' => array( 'HTC', 'One', 'Android', TYPE_MOBILE ),
626
  'http://www.htcmms.com.tw/Android/Rogers/801a/ua-profile.xml' => array( 'HTC', 'One', 'Android', TYPE_MOBILE ),
@@ -633,16 +757,43 @@
633
  'http://www.htcmms.com.tw/Android/TNZ/PN071/ua-profile.xml' => array( 'HTC', 'One', 'Android', TYPE_MOBILE ),
634
  'http://www.htcmms.com.tw/Android/Vodafone/PN071/ua-profile.xml' => array( 'HTC', 'One', 'Android', TYPE_MOBILE ),
635
  'http://www.htcmms.com.tw/Android/WIND/PN071/ua-profile.xml' => array( 'HTC', 'One', 'Android', TYPE_MOBILE ),
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
636
  'http://device.sprintpcs.com/HTC/HTC0P3P7-Chameleon/%CDMA_ROM_VERSION%.rdf' => array( 'HTC', 'One Max', 'Android', TYPE_MOBILE ),
637
  'http://device.sprintpcs.com/HTC/HTC0P3P7-Chameleon/0576512.rdf' => array( 'HTC', 'One Max', 'Android', TYPE_MOBILE ),
 
 
 
638
  'http://www.htcmms.com.tw/Android/Common/arYPBWMPCx/ua-profile.xml' => array( 'HTC', 'One Max', 'Android', TYPE_MOBILE ),
 
639
  'http://www.htcmms.com.tw/Android/Common/V79ccMv3KO/ua-profile.xml' => array( 'HTC', 'One Max', 'Android', TYPE_MOBILE ),
640
  'http://www.htcmms.com.tw/Android/Common/w778dYholc/ua-profile.xml' => array( 'HTC', 'One Max', 'Android', TYPE_MOBILE ),
 
641
  'http://www.htcmms.com.tw/Android/ATT/PO582/ua-profile.xml' => array( 'HTC', 'One Mini', 'Android', TYPE_MOBILE ),
642
  'http://www.htcmms.com.tw/Android/Common/PO581/ua-profile.xml' => array( 'HTC', 'One Mini', 'Android', TYPE_MOBILE ),
643
  'http://www.htcmms.com.tw/Android/Common/PO582/ua-profile.xml' => array( 'HTC', 'One Mini', 'Android', TYPE_MOBILE ),
 
 
644
  'http://www.htcmms.com.tw/Android/Rogers/PO582/ua-profile.xml' => array( 'HTC', 'One Mini', 'Android', TYPE_MOBILE ),
 
 
645
  'http://www.htcmms.com.tw/Android/TMO/PO582/ua-profile.xml' => array( 'HTC', 'One mini', 'Android', TYPE_MOBILE ),
 
 
646
  'http://www.htcmms.com.tw/Android/Bell/Z520m/ua-profile.xml' => array( 'HTC', 'One S', 'Android', TYPE_MOBILE ),
647
  'http://www.htcmms.com.tw/Android/Bouygues/PJ401/ua-profile.xml' => array( 'HTC', 'One S', 'Android', TYPE_MOBILE ),
648
  'http://www.htcmms.com.tw/Android/Canada/Z520m/ua-profile.xml' => array( 'HTC', 'One S', 'Android', TYPE_MOBILE ),
@@ -668,6 +819,7 @@
668
  'http://www.htcmms.com.tw/Android/Common/PM6012/ua-profile.xml' => array( 'HTC', 'One SU', 'Android', TYPE_MOBILE ),
669
  'http://device.sprintpcs.com/HTC/C525c-BOOST/1116531.rdf' => array( 'HTC', 'One SV', 'Android', TYPE_MOBILE ),
670
  'http://device.sprintpcs.com/HTC/C525c-BOOST/2066535.rdf' => array( 'HTC', 'One SV', 'Android', TYPE_MOBILE ),
 
671
  'http://mms.mycricket.com/htc_h3000c.xml' => array( 'HTC', 'One SV', 'Android', TYPE_MOBILE ),
672
  'http://www.htcmms.com.tw/Android/Bouygues/PL801/ua-profile.xml' => array( 'HTC', 'One SV', 'Android', TYPE_MOBILE ),
673
  'http://www.htcmms.com.tw/Android/Common/PL801/ua-profile.xml' => array( 'HTC', 'One SV', 'Android', TYPE_MOBILE ),
@@ -709,6 +861,7 @@
709
  'http://www.htcmms.com.tw/Android/Vodafone/PJ831/ua-profile.xml' => array( 'HTC', 'One XL', 'Android', TYPE_MOBILE ),
710
  'http://www.htcmms.com.tw/Android/Common/PJ462/ua-profile.xml' => array( 'HTC', 'One XT', 'Android', TYPE_MOBILE ),
711
  'http://www.htcmms.com.tw/gen/Oxygen-1.0.xml' => array( 'HTC', 'Oxygen', 'Windows Mobile', TYPE_MOBILE ),
 
712
  'http://www.htcmms.com.tw/gen/wave-1.0.xml' => array( 'HTC', 'P3000', 'Windows Mobile', TYPE_MOBILE ),
713
  'http://www.htcmms.com.tw/gen/artemis-1.0.xml' => array( 'HTC', 'P3300', 'Windows Mobile', TYPE_MOBILE ),
714
  'http://www.htcmms.com.tw/gen/elf-1.0.xml' => array( 'HTC', 'P3450', 'Windows Mobile', TYPE_MOBILE ),
@@ -755,6 +908,7 @@
755
  'http://www.htcmms.com.tw/gen/Titan-1.0.xml' => array( 'HTC', 'Titan', 'Windows Mobile', TYPE_MOBILE ),
756
  'http://www.htcmms.com.tw/gen/tornado-2.0.xml' => array( 'HTC', 'Tornado', 'Windows Mobile', TYPE_MOBILE ),
757
  'http://www.htcmms.com.tw/brightstar/ELFIN-1.0.xml' => array( 'HTC', 'Touch', 'Windows Mobile', TYPE_MOBILE ),
 
758
  'http://www.htcmms.com.tw/gen/HTC_Touch_Viva_T2223-1.0.xml' => array( 'HTC', 'Touch', 'Windows Mobile', TYPE_MOBILE ),
759
  'http://www.htcmms.com.tw/gen/HTC_Touch2_T3333-1.0.xml' => array( 'HTC', 'Touch 2', 'Windows Mobile', TYPE_MOBILE ),
760
  'http://www.htcmms.com.tw/gen/mega-1.0.xml' => array( 'HTC', 'Touch 2', 'Windows Mobile', TYPE_MOBILE ),
@@ -768,6 +922,7 @@
768
  'http://www.htcmms.com.tw/gen/VictorCT-1.0.xml' => array( 'HTC', 'Touch Diamond', 'Windows Mobile', TYPE_MOBILE ),
769
  'http://www.htcmms.com.tw/voda/diamond-1.0.xml' => array( 'HTC', 'Touch Diamond', 'Windows Mobile', TYPE_MOBILE ),
770
  'http://www.htcmms.com.tw/gen/HTC_Touch_Diamond2_T5353-1.0.xml' => array( 'HTC', 'Touch Diamond 2', 'Windows Mobile', TYPE_MOBILE ),
 
771
  'http://www.htcmms.com.tw/gen/neon-1.0.xml' => array( 'HTC', 'Touch Dual', 'Windows Mobile', TYPE_MOBILE ),
772
  'http://www.htcmms.com.tw/gen/NeonC_BM-1.0.xml' => array( 'HTC', 'Touch Dual', 'Windows Mobile', TYPE_MOBILE ),
773
  'http://www.htcmms.com.tw/gen/nike-1.0.xml' => array( 'HTC', 'Touch Dual', 'Windows Mobile', TYPE_MOBILE ),
@@ -789,6 +944,7 @@
789
  'http://www.htcmms.com.tw/Android/Telstra/A3335/ua-profile.xml' => array( 'HTC', 'Wildfire', 'Android', TYPE_MOBILE ),
790
  'http://www.htcmms.com.tw/Android/TME/Wildfire/ua-profile.xml' => array( 'HTC', 'Wildfire', 'Android', TYPE_MOBILE ),
791
  'http://www.htcmms.com.tw/Android/TMO/Buzz/ua-profile.xml' => array( 'HTC', 'Wildfire', 'Android', TYPE_MOBILE ),
 
792
  'http://mmsc1.uscc.net/mmsc/MMS' => array( 'HTC', 'Wildfire S', 'Android', TYPE_MOBILE ),
793
  'http://nmsc.ctvap.cn/uaprof/HTC/HTC_A510c_1_20110425.XML' => array( 'HTC', 'Wildfire S', 'Android', TYPE_MOBILE ),
794
  'http://uaprof.metropcs.net/UAProf/HTC-PG762.xml' => array( 'HTC', 'Wildfire S', 'Android', TYPE_MOBILE ),
@@ -802,9 +958,11 @@
802
  'http://www.htcmms.com.tw/gen/Wizard-2.0.xml' => array( 'HTC', 'Wizard', 'Windows Mobile', TYPE_MOBILE ),
803
  'http://www.htcmms.com.tw/gen/X1i-1.0.xml' => array( 'HTC', 'X1i', 'Windows Mobile', TYPE_MOBILE ),
804
  'http://nmsc.ctvap.cn/uaprof/HTC/HTC_Z510d_1_20110831.XML' => array( 'HTC', 'Z510d', 'Android', TYPE_MOBILE ),
 
805
  'http://wap1.huawei.com/uaprof/HW_HUAWEI_A199_1_20130121.xml' => array( 'Huawei', 'A199', 'Android', TYPE_MOBILE ),
806
  'http://uaprof.metropcs.net/UAProf/Huawei-M920.xml' => array( 'Huawei', 'Activa 4G', 'Android', TYPE_MOBILE ),
807
  'http://mms.mycricket.com/Huawei-M860.xml' => array( 'Huawei', 'Ascend', 'Android', TYPE_MOBILE ),
 
808
  'http://wap1.huawei.com/uaprof/HuaweiC8812CDMA-NORMAL.xml' => array( 'Huawei', 'Ascend C8812', 'Android', TYPE_MOBILE ),
809
  'http://wap1.huawei.com/uaprof/HuaweiC8812CDMA2000-NORMAL.xml' => array( 'Huawei', 'Ascend C8812', 'Android', TYPE_MOBILE ),
810
  'http://wap1.huawei.com/uaprof/HuaweiC8812WCDMA-NORMAL.xml' => array( 'Huawei', 'Ascend C8812', 'Android', TYPE_MOBILE ),
@@ -815,6 +973,8 @@
815
  'http://wap1.huawei.com/uaprof/HW_HUAWEI_C8813Q_1_20130108.xml' => array( 'Huawei', 'Ascend C8813', 'Android', TYPE_MOBILE ),
816
  'http://wap1.huawei.com/uaprof/HW_HUAWEI_C8813Q_1_20130425.xml' => array( 'Huawei', 'Ascend C8813', 'Android', TYPE_MOBILE ),
817
  'http://wap1.huawei.com/uaprof/HW_HUAWEI_C8813_1_20121018.xml' => array( 'Huawei', 'Ascend C8813', 'Android', TYPE_MOBILE ),
 
 
818
  'http://wap1.huawei.com/uaprof/HUAWEI_U9501L_UAProfile.xml' => array( 'Huawei', 'Ascend D LTE', 'Android', TYPE_MOBILE ),
819
  'http://wap1.huawei.com/uaprof/HUAWEI_U9510E_UAProfile.xml' => array( 'Huawei', 'Ascend D quad', 'Android', TYPE_MOBILE ),
820
  'http://wap1.huawei.com/uaprof/HUAWEI_U9510_UAProfile.xml' => array( 'Huawei', 'Ascend D quad', 'Android', TYPE_MOBILE ),
@@ -845,25 +1005,32 @@
845
  'http://wap1.huawei.com/uaprof/HW_HUAWEI_C8825D_1_20120530.xml' => array( 'Huawei', 'Ascend G330C', 'Android', TYPE_MOBILE ),
846
  'http://wap1.huawei.com/uaprof/HuaweiU8836Dv100CHNC00WCDMA.xml' => array( 'Huawei', 'Ascend G500', 'Android', TYPE_MOBILE ),
847
  'http://wap1.huawei.com/uaprof/HW_HUAWEI_C8826D_1_20120926.xml' => array( 'Huawei', 'Ascend G500C', 'Android', TYPE_MOBILE ),
 
848
  'http://wap1.huawei.com/uaprof/HuaweiG510-0010GPRS-UNICOM.xml' => array( 'Huawei', 'Ascend G510', 'Android', TYPE_MOBILE ),
 
849
  'http://wap1.huawei.com/uaprof/HuaweiG510-0100GPRS-FL.xml' => array( 'Huawei', 'Ascend G510', 'Android', TYPE_MOBILE ),
850
  'http://wap1.huawei.com/uaprof/HuaweiG510-0100GPRS-NORMAL.xml' => array( 'Huawei', 'Ascend G510', 'Android', TYPE_MOBILE ),
851
  'http://wap1.huawei.com/uaprof/HuaweiG510-0100GPRS-Vodafone.xml' => array( 'Huawei', 'Ascend G510', 'Android', TYPE_MOBILE ),
852
  'http://wap1.huawei.com/uaprof/HuaweiG510-0100WCDMA-FL.xml' => array( 'Huawei', 'Ascend G510', 'Android', TYPE_MOBILE ),
853
  'http://wap1.huawei.com/uaprof/HuaweiG510-0200GPRS-NORMAL.xml' => array( 'Huawei', 'Ascend G510', 'Android', TYPE_MOBILE ),
854
  'http://wap1.huawei.com/uaprof/HuaweiG510-0200GPRS-Yoigo.xml' => array( 'Huawei', 'Ascend G510', 'Android', TYPE_MOBILE ),
 
855
  'http://wap1.huawei.com/uaprof/HuaweiG510-0251GPRS-DRM.xml' => array( 'Huawei', 'Ascend G510', 'Android', TYPE_MOBILE ),
856
  'http://wap1.huawei.com/uaprof/HuaweiG510-0251GPRS-NORMAL.xml' => array( 'Huawei', 'Ascend G510', 'Android', TYPE_MOBILE ),
857
  'http://wap1.huawei.com/uaprof/HUAWEI_T8951_UAProfile.xml' => array( 'Huawei', 'Ascend G510', 'Android', TYPE_MOBILE ),
 
858
  'http://wap1.huawei.com/uaprof/HuaweiG520-0000GPRS-UNICOM.xml' => array( 'Huawei', 'Ascend G520', 'Android', TYPE_MOBILE ),
859
  'http://wap1.huawei.com/uaprof/HUAWEI_G520-5000_UAProfile.xml' => array( 'Huawei', 'Ascend G520', 'Android', TYPE_MOBILE ),
860
  'http://wap1.huawei.com/uaprof/HUAWEI_G520-T10_UAProfile.xml' => array( 'Huawei', 'Ascend G520', 'Android', TYPE_MOBILE ),
861
  'http://wap1.huawei.com/uaprof/HuaweiG525-U00GPRS-NORMAL.xml' => array( 'Huawei', 'Ascend G525', 'Android', TYPE_MOBILE ),
 
862
  'http://wap1.huawei.com/uaprof/HuaweiG525-U00GPRS.xml' => array( 'Huawei', 'Ascend G525', 'Android', TYPE_MOBILE ),
863
  'http://device.sprintpcs.com/HUAWEI/PLTFH882KT/H882LV100R001C378B145.rdf' => array( 'Huawei', 'Ascend G526', 'Android', TYPE_MOBILE ),
864
  'http://wap1.huawei.com/uaprof/HuaweiG526-L11LTE-Normal.xml' => array( 'Huawei', 'Ascend G526', 'Android', TYPE_MOBILE ),
865
  'http://wap1.huawei.com/uaprof/HuaweiG526-L22LTE-Normal.xml' => array( 'Huawei', 'Ascend G526', 'Android', TYPE_MOBILE ),
866
  'http://wap1.huawei.com/uaprof/HuaweiG526-L33LTE-Normal.xml' => array( 'Huawei', 'Ascend G526', 'Android', TYPE_MOBILE ),
 
 
867
  'http://wap1.huawei.com/uaprof/HUAWEI_G6_U00.xml' => array( 'Huawei', 'Ascend G6', 'Android', TYPE_MOBILE ),
868
  'http://wap1.huawei.com/uaprof/HuaweiU8950-1GPRS-Normal.xml' => array( 'Huawei', 'Ascend G600', 'Android', TYPE_MOBILE ),
869
  'http://wap1.huawei.com/uaprof/HuaweiU8950-51GPRS-Normal.xml' => array( 'Huawei', 'Ascend G600', 'Android', TYPE_MOBILE ),
@@ -873,34 +1040,57 @@
873
  'http://wap1.huawei.com/uaprof/HuaweiU8950N-51WCDMA-Normal.xml' => array( 'Huawei', 'Ascend G600', 'Android', TYPE_MOBILE ),
874
  'http://wap1.huawei.com/uaprof/HUAWEI_T8950_UAProfile.xml' => array( 'Huawei', 'Ascend G600', 'Android', TYPE_MOBILE ),
875
  'http://wap1.huawei.com/uaprof/HUAWEI_G610-T00_UAProfile.xml' => array( 'Huawei', 'Ascend G610', 'Android', TYPE_MOBILE ),
 
876
  'http://wap1.huawei.com/uaprof/HUAWEI_G610-U00_UAProfile.xml' => array( 'Huawei', 'Ascend G610', 'Android', TYPE_MOBILE ),
877
  'http://wap1.huawei.com/uaprof/HUAWEI_G610-U15_UAProfile.xml' => array( 'Huawei', 'Ascend G610', 'Android', TYPE_MOBILE ),
878
  'http://wap1.huawei.com/uaprof/HUAWEI_G610-U20_UAProfile.xml' => array( 'Huawei', 'Ascend G610', 'Android', TYPE_MOBILE ),
 
879
  'http://wap1.huawei.com/uaprof/HW_HUAWEI_G610-C00_1_20130108.xml' => array( 'Huawei', 'Ascend G610', 'Android', TYPE_MOBILE ),
 
880
  'http://wap1.huawei.com/uaprof/HW_HUAWEI_G620_1_20130917.xml' => array( 'Huawei', 'Ascend G620', 'Android', TYPE_MOBILE ),
 
 
881
  'http://wap1.huawei.com/uaprof/HUAWEI_G700-T00_UAProfile.xml' => array( 'Huawei', 'Ascend G700', 'Android', TYPE_MOBILE ),
882
  'http://wap1.huawei.com/uaprof/HUAWEI_G700-U00_UAProfile.xml' => array( 'Huawei', 'Ascend G700', 'Android', TYPE_MOBILE ),
883
  'http://wap1.huawei.com/uaprof/HUAWEI_G700-U10_UAProfile.xml' => array( 'Huawei', 'Ascend G700', 'Android', TYPE_MOBILE ),
884
  'http://wap1.huawei.com/uaprof/HUAWEI_G700-U20_UAProfile.xml' => array( 'Huawei', 'Ascend G700', 'Android', TYPE_MOBILE ),
885
  'http://wap1.huawei.com/uaprof/HuaweiG716-L070LTE.xml' => array( 'Huawei', 'Ascend G716', 'Android', TYPE_MOBILE ),
886
  'http://wap1.huawei.com/uaprof/HW_HUAWEI_G718_1_20130805.xml' => array( 'Huawei', 'Ascend G718', 'Android', TYPE_MOBILE ),
 
 
 
887
  'http://wap1.huawei.com/uaprof/HW_HUAWEI_G730-C10_1_20130828.xml' => array( 'Huawei', 'Ascend G730', 'Android', TYPE_MOBILE ),
 
 
 
 
888
  'http://mms.mycricket.com/Huawei-M865.xml' => array( 'Huawei', 'Ascend II', 'Android', TYPE_MOBILE ),
889
  'http://uaprof.vtext.com/Huawei/ADR3310/ADR3310v1.xml' => array( 'Huawei', 'Ascend II', 'Android', TYPE_MOBILE ),
890
  'http://wap1.huawei.com/uaprof/Huawei-M865C.xml' => array( 'Huawei', 'Ascend II', 'Android', TYPE_MOBILE ),
 
891
  'http://wap1.huawei.com/uaprof/HUAWEI_MATE_UAProfile.XML' => array( 'Huawei', 'Ascend Mate', 'Android', TYPE_MOBILE ),
892
  'http://wap1.huawei.com/uaprof/HUAWEI_MATE_Wind_UAProfile.XML' => array( 'Huawei', 'Ascend Mate', 'Android', TYPE_MOBILE ),
 
 
 
 
893
  'http://wap1.huawei.com/uaprof/HUAWEI_GS03_UAProfile.xml' => array( 'Huawei', 'Ascend P1', 'Android', TYPE_MOBILE ),
894
  'http://wap1.huawei.com/uaprof/HUAWEI_T9200_UAProfile.xml' => array( 'Huawei', 'Ascend P1', 'Android', TYPE_MOBILE ),
895
  'http://wap1.huawei.com/uaprof/HUAWEI_U9200_UAProfile.xml' => array( 'Huawei', 'Ascend P1', 'Android', TYPE_MOBILE ),
896
  'http://wap1.huawei.com/uaprof/HUAWEI_U9201L_UAProfile.xml' => array( 'Huawei', 'Ascend P1', 'Android', TYPE_MOBILE ),
897
  'http://wap1.huawei.com/uaprof/HUAWEI_U9202L-1_UAProfile.xml' => array( 'Huawei', 'Ascend P1', 'Android', TYPE_MOBILE ),
898
  'http://wap1.huawei.com/uaprof/HUAWEI_U9202L-3_UAProfile.xml' => array( 'Huawei', 'Ascend P1', 'Android', TYPE_MOBILE ),
 
899
  'http://wap1.huawei.com/uaprof/HUAWEI_P2_UAProfile.xml' => array( 'Huawei', 'Ascend P2', 'Android', TYPE_MOBILE ),
900
  'http://wap1.huawei.com/uaprof/HUAWEI_U9700L_UAProfile.xml' => array( 'Huawei', 'Ascend P2', 'Android', TYPE_MOBILE ),
 
901
  'http://wap1.huawei.com/uaprof/HUAWEI_P6_T00_UAProfile.xml' => array( 'Huawei', 'Ascend P6', 'Android', TYPE_MOBILE ),
902
  'http://wap1.huawei.com/uaprof/HUAWEI_P6_U06_UAProfile.xml' => array( 'Huawei', 'Ascend P6', 'Android', TYPE_MOBILE ),
 
903
  'http://wap1.huawei.com/uaprof/HW_HUAWEI_P6-C00_1_20130425.xml' => array( 'Huawei', 'Ascend P6', 'Android', TYPE_MOBILE ),
 
 
 
904
  'http://uaprof.vtext.com/huawei/h881c/h881c.xml' => array( 'Huawei', 'Ascend Plus', 'Android', TYPE_MOBILE ),
905
  'http://wap1.huawei.com/uaprof/HuaweiM660-Cricket.xml' => array( 'Huawei', 'Ascend Q', 'Android', TYPE_MOBILE ),
906
  'http://wap1.huawei.com/uaprof/HuaweiU9000v100WCDMA.xml' => array( 'Huawei', 'Ascend X', 'Android', TYPE_MOBILE ),
@@ -921,6 +1111,7 @@
921
  'http://wap1.huawei.com/uaprof/HuaweiU8666N-1GPRS-NORMAL.xml' => array( 'Huawei', 'Ascend Y201', 'Android', TYPE_MOBILE ),
922
  'http://wap1.huawei.com/uaprof/HuaweiU8666WCDMA-NORMAL.xml' => array( 'Huawei', 'Ascend Y201', 'Android', TYPE_MOBILE ),
923
  'http://wap1.huawei.com/uaprof/HW_HUAWEI_C8655_20120206.xml' => array( 'Huawei', 'Ascend Y201C', 'Android', TYPE_MOBILE ),
 
924
  'http://wap1.huawei.com/uaprof/HW_HUAWEI_Y210-2010_1_20120206.xml' => array( 'Huawei', 'Ascend Y210', 'Android', TYPE_MOBILE ),
925
  'http://wap1.huawei.com/uaprof/HW_HUAWEI_Y210S_1_20121105.xml' => array( 'Huawei', 'Ascend Y210', 'Android', TYPE_MOBILE ),
926
  'http://wap1.huawei.com/uaprof/Y210-0010GPRS-NORMAL.xml' => array( 'Huawei', 'Ascend Y210', 'Android', TYPE_MOBILE ),
@@ -933,10 +1124,15 @@
933
  'http://wap1.huawei.com/uaprof/Y210-0151WCDMA-NORMAL.xml' => array( 'Huawei', 'Ascend Y210', 'Android', TYPE_MOBILE ),
934
  'http://wap1.huawei.com/uaprof/Y210-0200GPRS-NORMAL.xml' => array( 'Huawei', 'Ascend Y210', 'Android', TYPE_MOBILE ),
935
  'http://wap1.huawei.com/uaprof/Y210-0200WCDMA-NORMAL.xml' => array( 'Huawei', 'Ascend Y210', 'Android', TYPE_MOBILE ),
 
936
  'http://wap1.huawei.com/uaprof/Y210-0251WCDMA-NORMAL.xml' => array( 'Huawei', 'Ascend Y210', 'Android', TYPE_MOBILE ),
 
 
937
  'http://wap1.huawei.com/uaprof/HuaweiY300-0000GPRS-UNICOM.xml' => array( 'Huawei', 'Ascend Y300', 'Android', TYPE_MOBILE ),
938
  'http://wap1.huawei.com/uaprof/HuaweiY300-0000GPRS.xml' => array( 'Huawei', 'Ascend Y300', 'Android', TYPE_MOBILE ),
939
  'http://wap1.huawei.com/uaprof/HuaweiY300-0100GPRS-FL.xml' => array( 'Huawei', 'Ascend Y300', 'Android', TYPE_MOBILE ),
 
 
940
  'http://wap1.huawei.com/uaprof/HuaweiY300-0100GPRS.xml' => array( 'Huawei', 'Ascend Y300', 'Android', TYPE_MOBILE ),
941
  'http://wap1.huawei.com/uaprof/HuaweiY300-0100WCDMA-Yoigo.xml' => array( 'Huawei', 'Ascend Y300', 'Android', TYPE_MOBILE ),
942
  'http://wap1.huawei.com/uaprof/HuaweiY300-0151GPRS-DRM.xml' => array( 'Huawei', 'Ascend Y300', 'Android', TYPE_MOBILE ),
@@ -949,34 +1145,53 @@
949
  'http://device.sprintpcs.com/HUAWEI/PLTFH882KT/H882LV100R001C378B170SP02.rdf' => array( 'Huawei', 'Ascend Y301', 'Android', TYPE_MOBILE ),
950
  'http://wap1.huawei.com/uaprof/HuaweiY301-A1-Normal.xml' => array( 'Huawei', 'Ascend Y301', 'Android', TYPE_MOBILE ),
951
  'http://wap1.huawei.com/uaprof/HuaweiY301-A2-Normal.xml' => array( 'Huawei', 'Ascend Y301', 'Android', TYPE_MOBILE ),
 
952
  'http://wap1.huawei.com/uaprof/HuaweiY320-U01v100WCDMA.xml' => array( 'Huawei', 'Ascend Y320', 'Android', TYPE_MOBILE ),
953
  'http://wap1.huawei.com/uaprof/HuaweiY320-U10v100WCDMA.xml' => array( 'Huawei', 'Ascend Y320', 'Android', TYPE_MOBILE ),
954
  'http://wap1.huawei.com/uaprof/HuaweiY320-U151v100WCDMA.xml' => array( 'Huawei', 'Ascend Y320', 'Android', TYPE_MOBILE ),
955
  'http://wap1.huawei.com/uaprof/HuaweiY320-U30v100WCDMA.xml' => array( 'Huawei', 'Ascend Y320', 'Android', TYPE_MOBILE ),
 
 
956
  'http://wap1.huawei.com/uaprof/HuaweiY340-U081-Normal.xml' => array( 'Huawei', 'Ascend Y340', 'Android', TYPE_MOBILE ),
957
  'http://wap1.huawei.com/uaprof/HUAWEI_Y511-U00.xml' => array( 'Huawei', 'Ascend Y511', 'Android', TYPE_MOBILE ),
 
 
958
  'http://wap1.huawei.com/uaprof/Y511_TD_UAProfile.xml' => array( 'Huawei', 'Ascend Y516', 'Android', TYPE_MOBILE ),
 
 
 
959
  'http://wap1.huawei.com/uaprof/HuaweiY530-U051-Normal.xml' => array( 'Huawei', 'Ascend Y530', 'Android', TYPE_MOBILE ),
 
960
  'http://wap1.huawei.com/uaprof/HW_HUAWEI_B199_1_20130806.xml' => array( 'Huawei', 'B199', 'Android', TYPE_MOBILE ),
 
961
  'http://wap1.huawei.com/uaprof/HuaweiU8350v100GPRS.xml' => array( 'Huawei', 'Boulder', 'Android', TYPE_MOBILE ),
962
  'http://wap1.huawei.com/uaprof/HuaweiU8350v100WCDMA.xml' => array( 'Huawei', 'Boulder', 'Android', TYPE_MOBILE ),
 
 
963
  'http://wap1.huawei.com/uaprof/HW_C8500_1_20100127.xml' => array( 'Huawei', 'C8500', 'Android', TYPE_MOBILE ),
964
  'http://wap1.huawei.com/uaprof/HW_HUAWEI_C8500S_1_20110511.xml' => array( 'Huawei', 'C8500', 'Android', TYPE_MOBILE ),
965
  'http://wap1.huawei.com/uaprof/HW_HUAWEI_C8511_1_20110511.xml' => array( 'Huawei', 'C8511', 'Android', TYPE_MOBILE ),
966
  'http://wap1.huawei.com/uaprof/HW_HUAWEI_C8512_20110817.xml' => array( 'Huawei', 'C8512', 'Android', TYPE_MOBILE ),
 
967
  'http://wap1.huawei.com/uaprof/HW_C8600_1_20100127.xml' => array( 'Huawei', 'C8600', 'Android', TYPE_MOBILE ),
968
  'http://wap1.huawei.com/uaprof/HW_HUAWEI_C8650PLUS_1_20111025.xml' => array( 'Huawei', 'C8650', 'Android', TYPE_MOBILE ),
969
  'http://wap1.huawei.com/uaprof/HW_HUAWEI_C8650_1_20110512.xml' => array( 'Huawei', 'C8650', 'Android', TYPE_MOBILE ),
970
  'http://wap1.huawei.com/uaprof/HW_HUAWEI_c8650_2_20111116.xml' => array( 'Huawei', 'C8650', 'Android', TYPE_MOBILE ),
971
  'http://wap1.huawei.com/uaprof/HW_HUAWEI_C8815_1_20130425.xml' => array( 'Huawei', 'C8815', 'Android', TYPE_MOBILE ),
 
972
  'http://wap1.huawei.com/uaprof/HuaweiC8850v100CDMA.xml' => array( 'Huawei', 'C8850', 'Android', TYPE_MOBILE ),
973
  'http://wap1.huawei.com/uaprof/HuaweiU8687-Normal.xml' => array( 'Huawei', 'Chronos', 'Android', TYPE_MOBILE ),
 
974
  'http://wap1.huawei.com/uaprof/HuaweiUM840v100GPRS.xml' => array( 'Huawei', 'Evolution', 'Android', TYPE_MOBILE ),
975
  'http://wap1.huawei.com/uaprof/HuaweiUM840v100WCDMA.xml' => array( 'Huawei', 'Evolution', 'Android', TYPE_MOBILE ),
976
  'http://wap1.huawei.com/uaprof/HW_HUAWEI_CM980.xml' => array( 'Huawei', 'Evolution II', 'Android', TYPE_MOBILE ),
 
977
  'http://wap1.huawei.com/uaprof/HuaweiU8665WCDMA-ATT.xml' => array( 'Huawei', 'Fusion 2', 'Android', TYPE_MOBILE ),
 
 
978
  'http://wap1.huawei.com/uaprof/G6609UAprofileV1.1.xml' => array( 'Huawei', 'G6609', 'MTK', TYPE_MOBILE ),
979
  'http://wap1.huawei.com/uaprof/G7300UAprofileV1.1.xml' => array( 'Huawei', 'G7300', 'MTK', TYPE_MOBILE ),
 
980
  'http://wap1.huawei.com/uaprof/G7500_UAProfile.xml' => array( 'Huawei', 'G7500', 'Android', TYPE_MOBILE ),
981
  'http://wap1.huawei.com/uaprof/HuaweiU8860-51GPRS-Normal.xml' => array( 'Huawei', 'Honor', 'Android', TYPE_MOBILE ),
982
  'http://wap1.huawei.com/uaprof/HuaweiU8860-51WCDMA-Normal.xml' => array( 'Huawei', 'Honor', 'Android', TYPE_MOBILE ),
@@ -987,7 +1202,13 @@
987
  'http://wap1.huawei.com/uaprof/HuaweiU8860WCDMA-NORMAL-ICS.xml' => array( 'Huawei', 'Honor', 'Android', TYPE_MOBILE ),
988
  'http://wap1.huawei.com/uaprof/HuaweiU8860WCDMA-NORMAL.xml' => array( 'Huawei', 'Honor', 'Android', TYPE_MOBILE ),
989
  'http://wap1.huawei.com/uaprof/HW_HUAWEI_C8860E_1_20111103.xml' => array( 'Huawei', 'Honor', 'Android', TYPE_MOBILE ),
 
 
990
  'http://wap1.huawei.com/uaprof/HUAWEI_U9508_UAProfile.xml' => array( 'Huawei', 'Honor 2', 'Android', TYPE_MOBILE ),
 
 
 
 
991
  'http://wap1.huawei.com/uaprof/HW_HUAWEI_C8950D_1_20120704.xml' => array( 'Huawei', 'Honor+', 'Android', TYPE_MOBILE ),
992
  'http://wap1.huawei.com/uaprof/HuaweiU8150v100WCDMA.xml' => array( 'Huawei', 'IDEOS', 'Android', TYPE_MOBILE ),
993
  'http://wap.huawei.com/uaprof/Huawei-S7.xml' => array( 'Huawei', 'IDEOS S7', 'Android', TYPE_MOBILE ),
@@ -1029,8 +1250,12 @@
1029
  'http://wap1.huawei.com/uaprof/HuaweiU8800PROiGPRS-NORMAL.xml' => array( 'Huawei', 'IDEOS X5 Pro', 'Android', TYPE_MOBILE ),
1030
  'http://wap1.huawei.com/uaprof/HuaweiU8800prov100GPRS.xml' => array( 'Huawei', 'IDEOS X5 Pro', 'Android', TYPE_MOBILE ),
1031
  'http://wap1.huawei.com/uaprof/HuaweiU8800prov100WCDMA.xml' => array( 'Huawei', 'IDEOS X5 Pro', 'Android', TYPE_MOBILE ),
 
1032
  'http://wap1.huawei.com/uaprof/HuaweiH867GGPRS-Normal.xml' => array( 'Huawei', 'Inspira', 'Android', TYPE_MOBILE ),
1033
  'http://uaprof.metropcs.net/UAProf/Huawei-M328.xml' => array( 'Huawei', 'M328', NULL, TYPE_MOBILE ),
 
 
 
1034
  'http://uaprof.metropcs.net/UAProf/Huawei-M735.xml' => array( 'Huawei', 'M735', NULL, TYPE_MOBILE ),
1035
  'http://uaprof.metropcs.net/UAProf/Huawei-M835.xml' => array( 'Huawei', 'M835', 'Android', TYPE_MOBILE ),
1036
  'http://wap1.huawei.com/uaprof/HW_HUAWEI_M835_1_20110720.xml' => array( 'Huawei', 'M835', 'Android', TYPE_MOBILE ),
@@ -1043,6 +1268,8 @@
1043
  'http://wap1.huawei.com/uaprof/HuaweiMediaPadWIFIOnly_ICS.xml' => array( 'Huawei', 'MediaPad', 'Android', TYPE_TABLET ),
1044
  'http://wap1.huawei.com/uaprof/HuaweiMediaPad_201u.xml' => array( 'Huawei', 'MediaPad 10 Link', 'Android', TYPE_TABLET ),
1045
  'http://wap1.huawei.com/uaprof/HuaweiMediaPad_201wa.xml' => array( 'Huawei', 'MediaPad 10 Link', 'Android', TYPE_TABLET ),
 
 
1046
  'http://wap1.huawei.com/uaprof/MediaPad7LiteWCDMA_ICS.xml' => array( 'Huawei', 'MediaPad 7 Lite', 'Android', TYPE_TABLET ),
1047
  'http://wap1.huawei.com/uaprof/MediaPad7LiteWIFIOnly_ICS.xml' => array( 'Huawei', 'MediaPad 7 Lite', 'Android', TYPE_TABLET ),
1048
  'http://wap1.huawei.com/uaprof/HuaweiMediaPad71111WCDMA.xml' => array( 'Huawei', 'MediaPad 7 Vivid', 'Android', TYPE_TABLET ),
@@ -1050,7 +1277,15 @@
1050
  'http://wap1.huawei.com/uaprof/HuaweiMediaPad7601WCDMA.xml' => array( 'Huawei', 'MediaPad 7 Vogue', 'Android', TYPE_TABLET ),
1051
  'http://wap1.huawei.com/uaprof/HuaweiMediaPad7601WIFIOnly.xml' => array( 'Huawei', 'MediaPad 7 Vogue', 'Android', TYPE_TABLET ),
1052
  'http://wap1.huawei.com/uaprof/HuaweiMediaPad_S7-601c.xml' => array( 'Huawei', 'MediaPad 7 Vogue', 'Android', TYPE_TABLET ),
 
1053
  'http://wap1.huawei.com/uaprof/HuaweiMediaPad770XWCDMA.xml' => array( 'Huawei', 'MediaPad 7 Youth', 'Android', TYPE_TABLET ),
 
 
 
 
 
 
 
1054
  'http://mms.openmobilepr.com/uaprof/HuaweiM886.xml' => array( 'Huawei', 'Mercury', 'Android', TYPE_MOBILE ),
1055
  'http://provantage.cleartalk.csky.us/ua/huawei_M886.xml' => array( 'Huawei', 'Mercury', 'Android', TYPE_MOBILE ),
1056
  'http://wap1.huawei.com/uaprof/HuaweiM886-Cricket.xml' => array( 'Huawei', 'Mercury', 'Android', TYPE_MOBILE ),
@@ -1066,6 +1301,7 @@
1066
  'http://wap1.huawei.com/uaprof/HuaweiU8650WCDMA-Taiwan.xml' => array( 'Huawei', 'Sonic', 'Android', TYPE_MOBILE ),
1067
  'http://wap1.huawei.com/uaprof/HuaweiU8650WCDMA-Tele2-HR.xml' => array( 'Huawei', 'Sonic', 'Android', TYPE_MOBILE ),
1068
  'http://wap1.huawei.com/uaprof/HuaweiU8650WCDMA-Tele2-LT.xml' => array( 'Huawei', 'Sonic', 'Android', TYPE_MOBILE ),
 
1069
  'http://wap1.huawei.com/uaprof/HuaweiU8650WCDMA-UNICOM.xml' => array( 'Huawei', 'Sonic', 'Android', TYPE_MOBILE ),
1070
  'http://wap1.huawei.com/uaprof/HuaweiU8650WCDMA-Vodafone-It.xml' => array( 'Huawei', 'Sonic', 'Android', TYPE_MOBILE ),
1071
  'http://wap1.huawei.com/uaprof/HuaweiU8650WCDMA-Yoigo.xml' => array( 'Huawei', 'Sonic', 'Android', TYPE_MOBILE ),
@@ -1083,7 +1319,9 @@
1083
  'http://wap1.huawei.com/uaprof/HuaweiU120v100.xml' => array( 'Huawei', 'U120', NULL, TYPE_MOBILE ),
1084
  'http://wap1.huawei.com/uaprof/HUAWEI_U2800A_UAProfile.xml' => array( 'Huawei', 'U2800', NULL, TYPE_MOBILE ),
1085
  'http://wap1.huawei.com/uaprof/HUAWEI_U2801_UAProfile.xml' => array( 'Huawei', 'U2801', 'Brew', TYPE_MOBILE ),
 
1086
  'http://wap.huawei.com/uaprof/HuaweiU3300v100GPRS.xml' => array( 'Huawei', 'U3300', NULL, TYPE_MOBILE ),
 
1087
  'http://wap.huawei.com/uaprof/HuaweiU526v100.xml' => array( 'Huawei', 'U526', NULL, TYPE_MOBILE ),
1088
  'http://wap.huawei.com/uaprof/HuaweiU528v100.xml' => array( 'Huawei', 'U528', NULL, TYPE_MOBILE ),
1089
  'http://wap1.huawei.com/uaprof/HUAWEI_U5300_UAProfile.xml' => array( 'Huawei', 'U5300', 'Brew', TYPE_MOBILE ),
@@ -1125,9 +1363,15 @@
1125
  'http://uap.cellon.com/i-mobile IQ XA.xml' => array( 'i-mobile', 'iQ XA', 'Android', TYPE_MOBILE ),
1126
  'http://www.1066.cn/uaprof/prof/BS/Brightstar_Avvio_760.xml' => array( 'Ilium', 'Avvio 760', 'Android', TYPE_MOBILE ),
1127
  'http://xmlsite3.webs.com/Brightstar_Avvio_760.xml' => array( 'Ilium', 'Avvio 760', 'Android', TYPE_MOBILE ),
 
1128
  'http://www.1066.cn/uaprof/prof/Brightstar/Avvio_790.xml' => array( 'Ilium', 'Avvio 790', 'Android', TYPE_MOBILE ),
 
 
1129
  'http://cn.c2dms.com/UAProfile/VKY/IN810.xml' => array( 'InFocus', 'IN810', 'Android', TYPE_MOBILE ),
1130
  'http://www.c2dms.com/UAProfile/VKY/IN810.xml' => array( 'InFocus', 'IN810', 'Android', TYPE_MOBILE ),
 
 
 
1131
  'http://wap.innostream.com/uaprof/INNO30.xml' => array( 'Innostream', 'INNO 30', NULL, TYPE_MOBILE ),
1132
  'http://wap.innostream.com/uaprof/INNO55.xml' => array( 'Innostream', 'INNO 55', NULL, TYPE_MOBILE ),
1133
  'http://wap.innostream.com/uaprof/INNO89.xml' => array( 'Innostream', 'INNO 89', NULL, TYPE_MOBILE ),
@@ -1151,17 +1395,20 @@
1151
  'http://intextechnologies.com/wap/intex_Cloud-y2.xml' => array( 'Intex', 'Cloud Y2', 'Android', TYPE_MOBILE ),
1152
  'http://mobile.itelcospa.it/useragent/ITELCO-IT2500.xml' => array( 'Itelco', 'IT2500', NULL, TYPE_MOBILE ),
1153
  'http://uaprofs.scm.ixi.com:8080/UAProfs/ct-25m-scm-q0108.xml' => array( 'IXI', 'CT 25m', NULL, TYPE_MOBILE ),
 
1154
  'http://nmsc.ctvap.cn/uaprof/TY/TY_E619+_1_20121123.xml' => array( 'K-Touch', 'E619', 'Android', TYPE_MOBILE ),
1155
  'http://nmsc.ctvap.cn/uaprof/TY/TY_K-Touch_E619+_1_20121203.xml' => array( 'K-Touch', 'E619', 'Android', TYPE_MOBILE ),
1156
  'http://uaprof.qma.com.tw/ktouch-e620.xml' => array( 'K-Touch', 'E620', 'Android', TYPE_MOBILE ),
1157
  'http://www.ontim.com.cn/ua/K-Touch_T580_uaprofile.xml' => array( 'K-Touch', 'T580', 'Android', TYPE_MOBILE ),
1158
  'http://114.251.81.153/t660/K-Touch_T660_profile_3G.xml' => array( 'K-Touch', 'T660', 'Android', TYPE_MOBILE ),
 
1159
  'http://asmobile.ehosting.com.tw/uaprof/KingcomInjoyMS02.xml' => array( 'Kingcom', 'Injoy MS02', NULL, TYPE_MOBILE ),
1160
  'http://www.mobilesoft.com.cn/UAProfile/CMSMMS2003.xml' => array( 'Konka', 'C908', NULL, TYPE_MOBILE ),
1161
  'http://www.konkamobile.com/profile/konka_k3.xml' => array( 'Konka', 'K3', 'Android', TYPE_MOBILE ),
1162
  'http://www.konkamobile.com/uploadfile/KONKA_V926_UAProfile.xml' => array( 'Konka', 'V926', 'Android', TYPE_MOBILE ),
1163
  'http://www.kkcool.com/hw/KONKA_V936.xml' => array( 'Konka', 'V936', 'Android', TYPE_MOBILE ),
1164
  'http://www.kkcool.com/hw/KONKA_V980.xml' => array( 'Konka', 'V980', 'Android', TYPE_MOBILE ),
 
1165
  'http://www.zte.com.cn/mobile/uaprof/KPN_Smart_300.xml' => array( 'KPN', 'Smart 300', 'Android', TYPE_MOBILE ),
1166
  'http://www.zte.com.cn/mobile/uaprof/Kyivstar Spark.xml' => array( 'Kyivstar', 'Spark', 'Android', TYPE_MOBILE ),
1167
  'http://device.sprintpcs.com/KYOCERA/S2151-PLB/1.001VM.rdf' => array( 'Kyocera', 'Coast S2151', 'Brew', TYPE_MOBILE ),
@@ -1174,13 +1421,16 @@
1174
  'http://nmsc.ctvap.cn/uaprof/JC/JC_KSP8000_4_20120308.xml' => array( 'Kyocera', 'Echo', 'Android', TYPE_MOBILE ),
1175
  'http://device.sprintpcs.com/KYOCERA/C5133-Chameleon/latest' => array( 'Kyocera', 'Event', 'Android', TYPE_MOBILE ),
1176
  'http://device.sprintpcs.com/KYOCERA/C5133-VIRGIN/1.005VM.rdf' => array( 'Kyocera', 'Event', 'Android', TYPE_MOBILE ),
 
1177
  'http://device.sprintpcs.com/KYOCERA/C5170-BOOST/1.000BT.rdf' => array( 'Kyocera', 'Hydro', 'Android', TYPE_MOBILE ),
1178
  'http://device.sprintpcs.com/KYOCERA/C5170-BOOST/1.001BT.rdf' => array( 'Kyocera', 'Hydro', 'Android', TYPE_MOBILE ),
1179
  'http://device.sprintpcs.com/KYOCERA/C5170-BOOST/1.006BT.rdf' => array( 'Kyocera', 'Hydro', 'Android', TYPE_MOBILE ),
1180
  'http://device.sprintpcs.com/KYOCERA/C5170-BOOST/1.010BT.rdf' => array( 'Kyocera', 'Hydro', 'Android', TYPE_MOBILE ),
1181
  'http://device.sprintpcs.com/Kyocera/C5170-BST/0510BT.rdf' => array( 'Kyocera', 'Hydro', 'Android', TYPE_MOBILE ),
1182
  'http://wapuaprof.mycricket.com/kyo_c5171.xml' => array( 'Kyocera', 'Hydro', 'Android', TYPE_MOBILE ),
 
1183
  'http://device.sprintpcs.com/KYOCERA/C5215-BOOST/1.002.rdf' => array( 'Kyocera', 'Hydro Edge', 'Android', TYPE_MOBILE ),
 
1184
  'http://device.sprintpcs.com/KYOCERA/C5215-Chameleon/latest' => array( 'Kyocera', 'Hydro Edge', 'Android', TYPE_MOBILE ),
1185
  'http://uaprof.publicmobile.ca/Kyocera/Hydro_C5216_0.200NP.rdf' => array( 'Kyocera', 'Hydro Edge', 'Android', TYPE_MOBILE ),
1186
  'http://uaprof.publicmobile.ca/Kyocera/Hydro_C5216_0.300NP.rdf' => array( 'Kyocera', 'Hydro Edge', 'Android', TYPE_MOBILE ),
@@ -1195,6 +1445,7 @@
1195
  'https://servicios.iusacell.com.mx/kyo/KX18.xml' => array( 'Kyocera', 'KX18', NULL, TYPE_MOBILE ),
1196
  'http://device.sprintpcs.com/Kyocera/C5120/1007SP.rdf' => array( 'Kyocera', 'Milano', 'Android', TYPE_MOBILE ),
1197
  'http://mms.revol.us/uaprofs/Oblique_C5121.xml' => array( 'Kyocera', 'Milano', 'Android', TYPE_MOBILE ),
 
1198
  'http://device.sprintpcs.com/KYOCERA/C5155-SPRINT/1.003SP.rdf' => array( 'Kyocera', 'Rise', 'Android', TYPE_MOBILE ),
1199
  'http://device.sprintpcs.com/KYOCERA/C5155-SPRINT/1.005SP.rdf' => array( 'Kyocera', 'Rise', 'Android', TYPE_MOBILE ),
1200
  'http://device.sprintpcs.com/KYOCERA/C5155-SPRINT/1.011SP.rdf' => array( 'Kyocera', 'Rise', 'Android', TYPE_MOBILE ),
@@ -1208,20 +1459,31 @@
1208
  'http://device.sprintpcs.com/KYOCERA/E6710-SPRINT/1.006SP.rdf' => array( 'Kyocera', 'Torque', 'Android', TYPE_MOBILE ),
1209
  'http://device.sprintpcs.com/KYOCERA/E6710-SPRINT/1.007SP.rdf' => array( 'Kyocera', 'Torque', 'Android', TYPE_MOBILE ),
1210
  'http://device.sprintpcs.com/KYOCERA/E6710-SPRINT/2.002SP.rdf' => array( 'Kyocera', 'Torque', 'Android', TYPE_MOBILE ),
 
 
1211
  'http://device.sprintpcs.com/Sanyo/PL8600/1004PL.rdf' => array( 'Kyocera', 'Zio', 'Android', TYPE_MOBILE ),
1212
  'http://device.sprintpcs.com/Sanyo/PL8600/2103PL.rdf' => array( 'Kyocera', 'Zio', 'Android', TYPE_MOBILE ),
1213
  'http://device.sprintpcs.com/Sanyo/SCP8600/2200SP.rdf' => array( 'Kyocera', 'Zio', 'Android', TYPE_MOBILE ),
 
 
1214
  'http://www.lanixmobile.com/Profiles/Lanix_iliumS200.xml' => array( 'Lanix', 'Ilium S200', 'Android', TYPE_MOBILE ),
1215
  'http://www.lanixmobile.com/Profiles/Lanix_IliumS210.xml' => array( 'Lanix', 'Ilium S210', 'Android', TYPE_MOBILE ),
1216
  'http://www.lanixmobile.com/Profiles/Lanix_iliumS400.xml' => array( 'Lanix', 'Ilium S400', 'Android', TYPE_MOBILE ),
 
1217
  'http://www.lanixmobile.com/Profiles/Lanix_iliumS50.xml' => array( 'Lanix', 'Ilium S50', 'Android', TYPE_MOBILE ),
1218
  'http://www.lanixmobile.com/Profiles/Lanix_IliumS500.xml' => array( 'Lanix', 'Ilium S500', 'Android', TYPE_MOBILE ),
 
1219
  'http://www.1066.cn/uaprof/prof/lava/LAVA_IRIS_355.xml' => array( 'Lava', 'Iris 355', 'Android', TYPE_MOBILE ),
1220
  'http://www.1066.cn/uaprof/prof/lava/LAVA_IRIS356.xml' => array( 'Lava', 'Iris 356', 'Android', TYPE_MOBILE ),
1221
  'http://www.1066.cn/uaprof/prof/lava/LAVA_IRIS402.xml' => array( 'Lava', 'Iris 402', 'Android', TYPE_MOBILE ),
1222
  'http://www.1066.cn/uaprof/prof/lava/LAVA_IRIS_501.xml' => array( 'Lava', 'Iris 501', 'Android', TYPE_MOBILE ),
1223
  'http://www.1066.cn/uaprof/prof/lava/LAVA_IRIS504Q.xml' => array( 'Lava', 'Iris 504Q', 'Android', TYPE_MOBILE ),
 
1224
  'http://www.msai.in/uaprof/XOLO/XOLO_A500L.xml' => array( 'Lava', 'XOLO A500L', 'Android', TYPE_MOBILE ),
 
 
 
 
1225
  'http://www.1066.cn/uaprof/prof/lava/Q700.xml' => array( 'Lava', 'XOLO X900', 'Android', TYPE_MOBILE ),
1226
  'http://www.lemonmobiles.com/UAP/LemonP3.xml' => array( 'Lemon', 'P3', 'Android', TYPE_MOBILE ),
1227
  'http://www.lenovomobile.com/admin/module/product/DownFile/Lenovo_A300_UAProfile.xml' => array( 'Lenovo', 'A300', 'Android', TYPE_MOBILE ),
@@ -1235,6 +1497,7 @@
1235
  'http://www.lenovomobile.com/admin/module/product/DownFile/Lenovo_A516_ROW_UAProfile.xml' => array( 'Lenovo', 'A516', 'Android', TYPE_MOBILE ),
1236
  'http://www.lenovomobile.com/admin/module/product/DownFile/Lenovo_A516_UAProfile.xml' => array( 'Lenovo', 'A516', 'Android', TYPE_MOBILE ),
1237
  'http://www.lenovomobile.com/admin/module/product/DownFile/Lenovo_A520_UAProfile.xml' => array( 'Lenovo', 'A520', 'Android', TYPE_MOBILE ),
 
1238
  'http://nmsc.ctvap.cn/uaprof/TYZ/LNV_Lenovo_A560e_1_20111220.xml' => array( 'Lenovo', 'A560', 'Android', TYPE_MOBILE ),
1239
  'http://www.lenovomobile.com/admin/module/product/DownFile/Lenovo_A60_UAProfile.xml' => array( 'Lenovo', 'A60', 'Android', TYPE_MOBILE ),
1240
  'http://www.lenovomobile.com/admin/module/product/DownFile/Lenovo_A630e_UAProfile.xml' => array( 'Lenovo', 'A630', 'Android', TYPE_MOBILE ),
@@ -1254,41 +1517,67 @@
1254
  'http://nmsc.ctvap.cn/uaprof/LNV/LNV_AE760_1_20111024.xml' => array( 'Lenovo', 'A790', 'Android', TYPE_MOBILE ),
1255
  'http://www.lenovomobile.com/admin/module/product/DownFile/Lenovo_A798t_UAProfile.xml' => array( 'Lenovo', 'A798', 'Android', TYPE_MOBILE ),
1256
  'http://www.lenovomobile.com/admin/module/product/DownFile/Lenovo_A800_UAProfile.xml' => array( 'Lenovo', 'A800', 'Android', TYPE_MOBILE ),
 
 
 
1257
  'http://www.lenovomobile.com/admin/module/product/DownFile/Lenovo_A820t_UAProfile.xml' => array( 'Lenovo', 'A820', 'Android', TYPE_MOBILE ),
1258
  'http://www.lenovomobile.com/admin/module/product/DownFile/Lenovo_A820_UAProfile.xml' => array( 'Lenovo', 'A820', 'Android', TYPE_MOBILE ),
1259
  'http://www.lenovomobile.com/admin/module/product/DownFile/Lenovo_A830_UAProfile.xml' => array( 'Lenovo', 'A830', 'Android', TYPE_MOBILE ),
 
 
1260
  'http://www.lenovomobile.com/admin/module/product/DownFile/Lenovo_A850_ROW_UAProfile.xml' => array( 'Lenovo', 'A850', 'Android', TYPE_MOBILE ),
1261
  'http://www.lenovomobile.com/admin/module/product/DownFile/Lenovo_A850_UAProfile.xml' => array( 'Lenovo', 'A850', 'Android', TYPE_MOBILE ),
 
 
 
1262
  'http://www.lenovomobile.com/admin/module/product/DownFile/download_20071165379380.xml' => array( 'Lenovo', 'E303', NULL, TYPE_MOBILE ),
1263
  'http://www.lenovomobile.com/admin/module/product/DownFile/download_2006815893438.xml' => array( 'Lenovo', 'I720', NULL, TYPE_MOBILE ),
1264
  'http://www.lenovomobile.com/admin/module/product/DownFile/download_2007736634847.xml' => array( 'Lenovo', 'I906', NULL, TYPE_MOBILE ),
1265
  'http://www.lenovomobile.com/admin/module/product/DownFile/download_20075225142784.xml' => array( 'Lenovo', 'I908', NULL, TYPE_MOBILE ),
 
1266
  'http://www.lenovomobile.com/admin/module/product/DownFile/Lenovo_S5000-H_UAProfile.xml' => array( 'Lenovo', 'IdeaTab S5000', 'Android', TYPE_MOBILE ),
1267
  'http://www.lenovomobile.com/admin/module/product/DownFile/Lenovo_P70_UAProfile.xml' => array( 'Lenovo', 'P70', 'Android', TYPE_MOBILE ),
1268
  'http://www.lenovomobile.com/admin/module/product/DownFile/download_20071236069306.xml' => array( 'Lenovo', 'P768', NULL, TYPE_MOBILE ),
1269
  'http://www.lenovomobile.com/admin/module/product/DownFile/Lenovo_P770_ROW_UAProfile.xml' => array( 'Lenovo', 'P770', 'Android', TYPE_MOBILE ),
1270
  'http://www.lenovomobile.com/admin/module/product/DownFile/Lenovo_P770_UAProfile.xml' => array( 'Lenovo', 'P770', 'Android', TYPE_MOBILE ),
1271
  'http://www.lenovomobile.com/admin/module/product/DownFile/download_20067105107369.xml' => array( 'Lenovo', 'P780', NULL, TYPE_MOBILE ),
 
1272
  'http://www.lenovomobile.com/admin/module/product/DownFile/Lenovo_P780_ROW_UAProfile.xml' => array( 'Lenovo', 'P780', 'Android', TYPE_MOBILE ),
1273
  'http://www.lenovomobile.com/admin/module/product/DownFile/Lenovo_P780_UAProfile.xml' => array( 'Lenovo', 'P780', 'Android', TYPE_MOBILE ),
 
1274
  'http://www.lenovomobile.com/admin/module/product/DownFile/Lenovo_S650_ROW_UAprofile.xml' => array( 'Lenovo', 'S650', 'Android', TYPE_MOBILE ),
1275
  'http://www.lenovomobile.com/admin/module/product/DownFile/Lenovo_S650_UAprofile.xml' => array( 'Lenovo', 'S650', 'Android', TYPE_MOBILE ),
 
 
1276
  'http://www.lenovomobile.com/admin/module/product/DownFile/download_2008423595403.xml' => array( 'Lenovo', 'S707', NULL, TYPE_MOBILE ),
1277
  'http://www.lenovomobile.com/admin/module/product/DownFile/Lenovo_S720i_UAProfile.xml' => array( 'Lenovo', 'S720', 'Android', TYPE_MOBILE ),
1278
  'http://www.lenovomobile.com/admin/module/product/DownFile/Lenovo_S720_ROW_UAProfile.xml' => array( 'Lenovo', 'S720', 'Android', TYPE_MOBILE ),
 
1279
  'http://www.lenovomobile.com/admin/module/product/DownFile/Lenovo_S820_ROW_UAProfile.xml' => array( 'Lenovo', 'S820', 'Android', TYPE_MOBILE ),
1280
  'http://www.lenovomobile.com/admin/module/product/DownFile/Lenovo_S820_UAProfile.xml' => array( 'Lenovo', 'S820', 'Android', TYPE_MOBILE ),
 
 
 
 
 
 
1281
  'http://www.lenovomobile.com/admin/module/product/DownFile/Lenovo_S890i_UAProfile.xml' => array( 'Lenovo', 'S890', 'Android', TYPE_MOBILE ),
1282
  'http://www.lenovomobile.com/admin/module/product/DownFile/Lenovo_S890_ROW_UAProfile.xml' => array( 'Lenovo', 'S890', 'Android', TYPE_MOBILE ),
 
1283
  'http://www.lenovomobile.com/admin/module/product/DownFile/Lenovo_S898t_UAProfile.xml' => array( 'Lenovo', 'S898', 'Android', TYPE_MOBILE ),
1284
  'http://www.lenovomobile.com/admin/module/product/DownFile/download_20075256251113.xml' => array( 'Lenovo', 'S9', NULL, TYPE_MOBILE ),
 
1285
  'http://www.lenovomobile.com/admin/module/product/DownFile/Lenovo_S920_ROW_UAProfile.xml' => array( 'Lenovo', 'S920', 'Android', TYPE_MOBILE ),
1286
  'http://www.lenovomobile.com/admin/module/product/DownFile/Lenovo_S920_UAProfile.xml' => array( 'Lenovo', 'S920', 'Android', TYPE_MOBILE ),
 
1287
  'http://www.lenovomobile.com/admin/module/product/DownFile/Lenovo_S930_ROW_UAprofile.xml' => array( 'Lenovo', 'S930', 'Android', TYPE_MOBILE ),
1288
  'http://www.lenovomobile.com/admin/module/product/DownFile/Lenovo_S930_UAprofile.xml' => array( 'Lenovo', 'S930', 'Android', TYPE_MOBILE ),
1289
  'http://www.lenovomobile.com/admin/module/product/DownFile/Lenovo_S938t_UAprofile.xml' => array( 'Lenovo', 'S938t', 'Android', TYPE_MOBILE ),
 
1290
  'http://www.lenovomobile.com/admin/module/product/DownFile/Lenovo_S939_UAprofile.xml' => array( 'Lenovo', 'S939', 'Android', TYPE_MOBILE ),
 
1291
  'http://www.lenovomobile.com/admin/module/product/DownFile/Lenovo_S960_ROW_UAProfile.xml' => array( 'Lenovo', 'S960', 'Android', TYPE_MOBILE ),
 
1292
  'http://www.lenovomobile.com/admin/module/product/DownFile/Lenovo_S968t_UAProfile.xml' => array( 'Lenovo', 'S968t', 'Android', TYPE_MOBILE ),
1293
  'http://www.lenovomobile.com/admin/module/product/DownFile/download_20069185728203.xml' => array( 'Lenovo', 'V800', NULL, TYPE_MOBILE ),
1294
  'http://www.lenovomobile.com/admin/module/product/DownFile/download_200710186443397.xml' => array( 'Lenovo', 'X1', NULL, TYPE_MOBILE ),
@@ -1305,6 +1594,7 @@
1305
  'http://www.alltel.net/uaprof/lg/ax830/ax830.xml' => array( 'LG', 'AX830 Glimmer', NULL, TYPE_MOBILE ),
1306
  'http://www.alltel.net/uaprof/lg/ax8600/ax8600.xml' => array( 'LG', 'AX8600', NULL, TYPE_MOBILE ),
1307
  'http://gsm.lge.com/html/gsm/LG-B2070.xml' => array( 'LG', 'B2070', NULL, TYPE_MOBILE ),
 
1308
  'http://gsm.lge.com/html/gsm/LG-C130.xml' => array( 'LG', 'C130', NULL, TYPE_MOBILE ),
1309
  'http://gsm.lge.com/html/gsm/LG-C1300.xml' => array( 'LG', 'C1300', NULL, TYPE_MOBILE ),
1310
  'http://gsm.lge.com/html/gsm/LG-C1500.xml' => array( 'LG', 'C1500', NULL, TYPE_MOBILE ),
@@ -1314,6 +1604,8 @@
1314
  'http://gsm.lge.com/html/gsm/LG-C205-M3-D1.xml' => array( 'LG', 'C205', NULL, TYPE_MOBILE ),
1315
  'http://gsm.lge.com/html/gsm/LG-C207-M3-D1.xml' => array( 'LG', 'C207', NULL, TYPE_MOBILE ),
1316
  'http://gsm.lge.com/html/gsm/LG-C2500.xml' => array( 'LG', 'C2500', NULL, TYPE_MOBILE ),
 
 
1317
  'http://gsm.lge.com/html/gsm/LG-CB630.xml' => array( 'LG', 'CB630 Invision', NULL, TYPE_MOBILE ),
1318
  'http://gsm.lge.com/html/gsm/LG-CE110.xml' => array( 'LG', 'CE110', NULL, TYPE_MOBILE ),
1319
  'http://uaprof.metropcs.net/UAProf/LG-MS840.xml' => array( 'LG', 'Connect 4G', 'Android', TYPE_MOBILE ),
@@ -1326,38 +1618,90 @@
1326
  'http://device.sprintpcs.com/LG/LS696/LS696ZVF.rdf' => array( 'LG', 'Elite', 'Android', TYPE_MOBILE ),
1327
  'http://uaprof.vtext.com/lge/vs700/vs700.xml' => array( 'LG', 'Enlighten', 'Android', TYPE_MOBILE ),
1328
  'http://uaprof.vtext.com/lg/vx11000/vx11000.xml' => array( 'LG', 'Env Touch', NULL, TYPE_MOBILE ),
 
1329
  'http://gsm.lge.com/html/gsm/P870-M10-D1.xml' => array( 'LG', 'Escape', 'Android', TYPE_MOBILE ),
1330
  'http://gsm.lge.com/html/gsm/P870-M6-D2.xml' => array( 'LG', 'Escape', 'Android', TYPE_MOBILE ),
1331
  'http://uaprof.metropcs.net/UAProf/LG-MS910.xml' => array( 'LG', 'Esteem', 'Android', TYPE_MOBILE ),
1332
  'http://gsm.lge.com/html/gsm/LG-F2200.xml' => array( 'LG', 'F2200', NULL, TYPE_MOBILE ),
1333
  'http://gsm.lge.com/html/gsm/LG-F3000.xml' => array( 'LG', 'F3000', NULL, TYPE_MOBILE ),
 
 
 
1334
  'http://gsm.lge.com/html/gsm/LG-F7250.xml' => array( 'LG', 'F7250', NULL, TYPE_MOBILE ),
 
 
1335
  'http://gsm.lge.com/html/gsm/LG-F9100.xml' => array( 'LG', 'F9100', NULL, TYPE_MOBILE ),
1336
  'http://gsm.lge.com/html/gsm/LG-F9200.xml' => array( 'LG', 'F9200', NULL, TYPE_MOBILE ),
 
 
 
 
1337
  'http://gsm.lge.com/html/gsm/D955-M10-D1.xml' => array( 'LG', 'G Flex', 'Android', TYPE_MOBILE ),
 
1338
  'http://gsm.lge.com/html/gsm/D955-M3-D1.xml' => array( 'LG', 'G Flex', 'Android', TYPE_MOBILE ),
 
 
1339
  'http://gsm.lge.com/html/gsm/D958-M10-D1.xml' => array( 'LG', 'G Flex', 'Android', TYPE_MOBILE ),
1340
  'http://gsm.lge.com/html/gsm/D958-M3-D1.xml' => array( 'LG', 'G Flex', 'Android', TYPE_MOBILE ),
 
 
 
 
1341
  'http://gsm.lge.com/html/gsm/D680-M10-D1.xml' => array( 'LG', 'G Pro Lite', 'Android', TYPE_MOBILE ),
1342
  'http://gsm.lge.com/html/gsm/D682-M3-D1.xml' => array( 'LG', 'G Pro Lite', 'Android', TYPE_MOBILE ),
 
 
1343
  'http://gsm.lge.com/html/gsm/D685-M3-D1.xml' => array( 'LG', 'G Pro Lite Dual', 'Android', TYPE_MOBILE ),
1344
  'http://gsm.lge.com/html/gsm/D686-M3-D1.xml' => array( 'LG', 'G Pro Lite Dual', 'Android', TYPE_MOBILE ),
1345
  'http://gsm.lge.com/html/gsm/LG-G1610.xml' => array( 'LG', 'G1610', NULL, TYPE_MOBILE ),
1346
  'http://device.sprintpcs.com/LG/LS980-Chameleon/latest' => array( 'LG', 'G2', 'Android', TYPE_MOBILE ),
1347
  'http://device.sprintpcs.com/LG/LS980-SPRINT/LS980ZV7.rdf' => array( 'LG', 'G2', 'Android', TYPE_MOBILE ),
 
 
 
 
 
 
1348
  'http://gsm.lge.com/html/gsm/D800-M10-D1.xml' => array( 'LG', 'G2', 'Android', TYPE_MOBILE ),
 
 
 
1349
  'http://gsm.lge.com/html/gsm/D801-M10-D1.xml' => array( 'LG', 'G2', 'Android', TYPE_MOBILE ),
 
1350
  'http://gsm.lge.com/html/gsm/D802-M10-D1.xml' => array( 'LG', 'G2', 'Android', TYPE_MOBILE ),
1351
  'http://gsm.lge.com/html/gsm/D802-M20-D1.xml' => array( 'LG', 'G2', 'Android', TYPE_MOBILE ),
 
1352
  'http://gsm.lge.com/html/gsm/D802-M3-D1.xml' => array( 'LG', 'G2', 'Android', TYPE_MOBILE ),
 
1353
  'http://gsm.lge.com/html/gsm/D802-M5-D1.xml' => array( 'LG', 'G2', 'Android', TYPE_MOBILE ),
 
1354
  'http://gsm.lge.com/html/gsm/D802-M6-D1.xml' => array( 'LG', 'G2', 'Android', TYPE_MOBILE ),
 
 
 
 
 
 
1355
  'http://gsm.lge.com/html/gsm/D803-M10-D1.xml' => array( 'LG', 'G2', 'Android', TYPE_MOBILE ),
 
1356
  'http://gsm.lge.com/html/gsm/D803-M6-D1.xml' => array( 'LG', 'G2', 'Android', TYPE_MOBILE ),
 
1357
  'http://gsm.lge.com/html/gsm/D805-M10-D1.xml' => array( 'LG', 'G2', 'Android', TYPE_MOBILE ),
 
1358
  'http://gsm.lge.com/html/gsm/D805-M3-D1.xml' => array( 'LG', 'G2', 'Android', TYPE_MOBILE ),
 
1359
  'http://gsm.lge.com/html/gsm/F320K-M10-D1.xml' => array( 'LG', 'G2', 'Android', TYPE_MOBILE ),
 
 
1360
  'http://gsm.lge.com/html/gsm/F320L-M9-D1.xml' => array( 'LG', 'G2', 'Android', TYPE_MOBILE ),
 
 
 
 
 
 
 
 
1361
  'http://gsm.lge.com/html/gsm/LG-G282.xml' => array( 'LG', 'G282', NULL, TYPE_MOBILE ),
1362
  'http://gsm.lge.com/html/gsm/MX_LG_G4015.xml' => array( 'LG', 'G4015', NULL, TYPE_MOBILE ),
1363
  'http://gsm.lge.com/html/gsm/LG-G4020.xml' => array( 'LG', 'G4020', NULL, TYPE_MOBILE ),
@@ -1373,9 +1717,12 @@
1373
  'http://gsm.lge.com/html/gsm/GD880-M6-D1.xml' => array( 'LG', 'GD880', NULL, TYPE_MOBILE ),
1374
  'http://gsm.lge.com/html/gsm/GD880-M6-D2CL.xml' => array( 'LG', 'GD880', NULL, TYPE_MOBILE ),
1375
  'http://gsm.lge.com/html/gsm/LG-GM360-NS.xml' => array( 'LG', 'GM360 Viewty Snap', NULL, TYPE_MOBILE ),
 
1376
  'http://gsm.lge.com/html/gsm/LG-GM630.xml' => array( 'LG', 'GM630', NULL, TYPE_MOBILE ),
1377
  'http://gsm.lge.com/html/gsm/LG-GR500.xml' => array( 'LG', 'GR500 Xenon', NULL, TYPE_MOBILE ),
 
1378
  'http://gsm.lge.com/html/gsm/LG-GT500-TMO.xml' => array( 'LG', 'GT500 Puccini', NULL, TYPE_MOBILE ),
 
1379
  'http://gsm.lge.com/html/gsm/LG-GW300.xml' => array( 'LG', 'GW300', NULL, TYPE_MOBILE ),
1380
  'http://gsm.lge.com/html/gsm/GW620-M6-D1.xml' => array( 'LG', 'GW620 Eve', 'Android', TYPE_MOBILE ),
1381
  'http://gsm.lge.com/html/gsm/LG-HB620T.xml' => array( 'LG', 'HB620T', NULL, TYPE_MOBILE ),
@@ -1425,6 +1772,7 @@
1425
  'http://gsm.lge.com/html/gsm/LG-KM380.xml' => array( 'LG', 'KM380', NULL, TYPE_MOBILE ),
1426
  'http://gsm.lge.com/html/gsm/LG-KM500.xml' => array( 'LG', 'KM500', NULL, TYPE_MOBILE ),
1427
  'http://gsm.lge.com/html/gsm/LG-KM501.xml' => array( 'LG', 'KM501', NULL, TYPE_MOBILE ),
 
1428
  'http://gsm.lge.com/html/gsm/LG-KM900.xml' => array( 'LG', 'KM900 Arena', NULL, TYPE_MOBILE ),
1429
  'http://gsm.lge.com/html/gsm/LG-KP110.xml' => array( 'LG', 'KP110', NULL, TYPE_MOBILE ),
1430
  'http://gsm.lge.com/html/gsm/LG-KP130.xml' => array( 'LG', 'KP130', NULL, TYPE_MOBILE ),
@@ -1462,10 +1810,33 @@
1462
  'http://gsm.lge.com/html/gsm/MX_LG_L1150.xml' => array( 'LG', 'L1150', NULL, TYPE_MOBILE ),
1463
  'http://gsm.lge.com/html/gsm/LG-L1200.xml' => array( 'LG', 'L1200', NULL, TYPE_MOBILE ),
1464
  'http://gsm.lge.com/html/gsm/LG_L1400.xml' => array( 'LG', 'L1400', NULL, TYPE_MOBILE ),
 
1465
  'http://gsm.lge.com/html/gsm/LGL35G-M6-D1.xml' => array( 'LG', 'L35G', 'Android', TYPE_MOBILE ),
1466
- 'http://gsm.lge.com/html/gsm/L39C-M12-D1.xml' => array( 'LG', 'L39C', 'Android', TYPE_MOBILE ),
 
 
 
 
 
1467
  'http://gsm.lge.com/html/gsm/LG-L5100.xml' => array( 'LG', 'L5100', NULL, TYPE_MOBILE ),
1468
  'http://gsm.lge.com/html/gsm/LG-L600V.xml' => array( 'LG', 'L600v', NULL, TYPE_MOBILE ),
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1469
  'http://uaprof.bellmobilite.ca/LGE_LG160P.rdf' => array( 'LG', 'LG160', NULL, TYPE_MOBILE ),
1470
  'http://uaprof.bellmobilite.ca/LGE_LG160V.rdf' => array( 'LG', 'LG160', NULL, TYPE_MOBILE ),
1471
  'http://device.telusmobility.com/lg/LG200.rdf' => array( 'LG', 'LG200', NULL, TYPE_MOBILE ),
@@ -1474,6 +1845,7 @@
1474
  'http://uaprof.bellmobilite.ca/LGE_LG280.rdf' => array( 'LG', 'LG280', NULL, TYPE_MOBILE ),
1475
  'http://device.telusmobility.com/lg/LG285-1.rdf' => array( 'LG', 'LG285', NULL, TYPE_MOBILE ),
1476
  'http://uaprof.bellmobilite.ca/LGE_LG385.rdf' => array( 'LG', 'LG385', NULL, TYPE_MOBILE ),
 
1477
  'http://device.telusmobility.com/lg/lg4600.rdf' => array( 'LG', 'LG4600', NULL, TYPE_MOBILE ),
1478
  'http://device.telusmobility.com/lg/LG490-0.rdf' => array( 'LG', 'LG490', NULL, TYPE_MOBILE ),
1479
  'http://uaprof.bellmobilite.ca/BMC_LG_LG5400_LG540V05.rdf' => array( 'LG', 'LG5400', NULL, TYPE_MOBILE ),
@@ -1494,7 +1866,6 @@
1494
  'http://device.telusmobility.com/lg/LG9700-0.rdf' => array( 'LG', 'LG9700 Dare', NULL, TYPE_MOBILE ),
1495
  'http://device.sprintpcs.com/LG/LX600/LX600V07.rdf' => array( 'LG', 'Lotus LX600', NULL, TYPE_MOBILE ),
1496
  'http://device.sprintpcs.com/LG/LX600/LX600V08.rdf' => array( 'LG', 'Lotus LX600', NULL, TYPE_MOBILE ),
1497
- 'http://device.sprintpcs.com/LG/LS995-Chameleon/latest' => array( 'LG', 'LS995', 'Android', TYPE_MOBILE ),
1498
  'http://uaprof.vtext.com/lge/vs840/vs840.xml' => array( 'LG', 'Lucid', 'Android', TYPE_MOBILE ),
1499
  'http://uaprof.vmobl.com/LG/LX-140/VMU_lx140_UAProf.xml' => array( 'LG', 'LX140 Aloha', NULL, TYPE_MOBILE ),
1500
  'http://uaprof.vmobl.com/LG/lx165/VMU_lx165_UAProf.xml' => array( 'LG', 'LX165 Flare', NULL, TYPE_MOBILE ),
@@ -1502,6 +1873,7 @@
1502
  'http://device.sprintpcs.com/LG/5350/LX5350_11.rdf' => array( 'LG', 'LX5350', 'Android', TYPE_MOBILE ),
1503
  'http://device.sprintpcs.com/LG/LS860-Chameleon/latest' => array( 'LG', 'Mach', 'Android', TYPE_MOBILE ),
1504
  'http://device.sprintpcs.com/LG/LS860-SPRINT/LS860ZV7.rdf' => array( 'LG', 'Mach', 'Android', TYPE_MOBILE ),
 
1505
  'http://device.sprintpcs.com/LG/LG855ABC/LG855ZV3.rdf' => array( 'LG', 'Marquee', 'Android', TYPE_MOBILE ),
1506
  'http://device.sprintpcs.com/LG/LG855ABC/LG855ZV4.rdf' => array( 'LG', 'Marquee', 'Android', TYPE_MOBILE ),
1507
  'http://device.sprintpcs.com/LG/LS855/LS855ZV1.rdf' => array( 'LG', 'Marquee', 'Android', TYPE_MOBILE ),
@@ -1547,6 +1919,7 @@
1547
  'http://gsm.lge.com/html/gsm/P880-M6-D2.xml' => array( 'LG', 'Optimus 4X HD', 'Android', TYPE_MOBILE ),
1548
  'http://gsm.lge.com/html/gsm/P880g-M10-D1.xml' => array( 'LG', 'Optimus 4X HD', 'Android', TYPE_MOBILE ),
1549
  'http://gsm.lge.com/html/gsm/P880g-M3-D1.xml' => array( 'LG', 'Optimus 4X HD', 'Android', TYPE_MOBILE ),
 
1550
  'http://gsm.lge.com/html/gsm/LG-P970-M3-D2.xml' => array( 'LG', 'Optimus Black', 'Android', TYPE_MOBILE ),
1551
  'http://gsm.lge.com/html/gsm/LG-P970-M6-D2.xml' => array( 'LG', 'Optimus Black', 'Android', TYPE_MOBILE ),
1552
  'http://gsm.lge.com/html/gsm/LG-P970h-M10-D1.xml' => array( 'LG', 'Optimus Black', 'Android', TYPE_MOBILE ),
@@ -1565,22 +1938,29 @@
1565
  'http://gsm.lge.com/html/gsm/P720-M3-D2.xml' => array( 'LG', 'Optimus Chic', 'Android', TYPE_MOBILE ),
1566
  'http://gsm.lge.com/html/gsm/P720h-M3-D2.xml' => array( 'LG', 'Optimus Chic', 'Android', TYPE_MOBILE ),
1567
  'http://gsm.lge.com/html/gsm/LGL38C-M12-D1.xml' => array( 'LG', 'Optimus Dynamic', 'Android', TYPE_MOBILE ),
 
1568
  'http://uaprof.vmobl.com/LG/VM696-VMUB/1.0/UAProf.xml' => array( 'LG', 'Optimus Elite', 'Android', TYPE_MOBILE ),
1569
  'http://gsm.lge.com/html/gsm/L40g-M6-D1.xml' => array( 'LG', 'Optimus Extreme', 'Android', TYPE_MOBILE ),
1570
  'http://device.sprintpcs.com/LG/LS720-Chameleon/latest' => array( 'LG', 'Optimus F3', 'Android', TYPE_MOBILE ),
1571
  'http://device.sprintpcs.com/LG/LS720-SPRINT/LS720Z06.rdf' => array( 'LG', 'Optimus F3', 'Android', TYPE_MOBILE ),
1572
  'http://device.sprintpcs.com/LG/LS720-VIRGIN/LS720ZV5.rdf' => array( 'LG', 'Optimus F3', 'Android', TYPE_MOBILE ),
 
1573
  'http://gsm.lge.com/html/gsm/MS659-M10-D1.xml' => array( 'LG', 'Optimus F3', 'Android', TYPE_MOBILE ),
1574
  'http://gsm.lge.com/html/gsm/P659-M10-D1.xml' => array( 'LG', 'Optimus F3', 'Android', TYPE_MOBILE ),
 
1575
  'http://gsm.lge.com/html/gsm/P875-M10-D1.xml' => array( 'LG', 'Optimus F5', 'Android', TYPE_MOBILE ),
1576
  'http://gsm.lge.com/html/gsm/P875-M3-D1.xml' => array( 'LG', 'Optimus F5', 'Android', TYPE_MOBILE ),
1577
  'http://gsm.lge.com/html/gsm/P875h-M3-D1.xml' => array( 'LG', 'Optimus F5', 'Android', TYPE_MOBILE ),
1578
  'http://gsm.lge.com/html/gsm/D500-M10-D1.xml' => array( 'LG', 'Optimus F6', 'Android', TYPE_MOBILE ),
1579
  'http://gsm.lge.com/html/gsm/D505-M3-D1.xml' => array( 'LG', 'Optimus F6', 'Android', TYPE_MOBILE ),
 
1580
  'http://device.sprintpcs.com/LG/LG870-BOOST/LG870ZV1.rdf' => array( 'LG', 'Optimus F7', 'Android', TYPE_MOBILE ),
1581
  'http://device.sprintpcs.com/LG/LG870-BOOST/LG870ZV4.rdf' => array( 'LG', 'Optimus F7', 'Android', TYPE_MOBILE ),
 
1582
  'http://device.sprintpcs.com/LG/LG870-Chameleon/latest' => array( 'LG', 'Optimus F7', 'Android', TYPE_MOBILE ),
1583
  'http://device.sprintpcs.com/LG/LG870-SPRINT/LG870ZV4.rdf' => array( 'LG', 'Optimus F7', 'Android', TYPE_MOBILE ),
 
 
1584
  'http://device.sprintpcs.com/LG/LS970-2011011301/LS970ZVC.rdf' => array( 'LG', 'Optimus G', 'Android', TYPE_MOBILE ),
1585
  'http://device.sprintpcs.com/LG/LS970-Chameleon/latest' => array( 'LG', 'Optimus G', 'Android', TYPE_MOBILE ),
1586
  'http://device.sprintpcs.com/LG/LS970-SPRINT/LS970ZV7.rdf' => array( 'LG', 'Optimus G', 'Android', TYPE_MOBILE ),
@@ -1604,13 +1984,19 @@
1604
  'http://gsm.lge.com/html/gsm/E976-M3-D1.xml' => array( 'LG', 'Optimus G', 'Android', TYPE_MOBILE ),
1605
  'http://gsm.lge.com/html/gsm/E977-M3-D1.xml' => array( 'LG', 'Optimus G', 'Android', TYPE_MOBILE ),
1606
  'http://gsm.lge.com/html/gsm/E987-M3-D1.xml' => array( 'LG', 'Optimus G', 'Android', TYPE_MOBILE ),
 
 
1607
  'http://gsm.lge.com/html/gsm/E980-M10-D1.xml' => array( 'LG', 'Optimus G Pro', 'Android', TYPE_MOBILE ),
1608
  'http://gsm.lge.com/html/gsm/E980h-M10-D1.xml' => array( 'LG', 'Optimus G Pro', 'Android', TYPE_MOBILE ),
1609
  'http://gsm.lge.com/html/gsm/E980h-M3-D1.xml' => array( 'LG', 'Optimus G Pro', 'Android', TYPE_MOBILE ),
 
1610
  'http://gsm.lge.com/html/gsm/E985-M3-D1.xml' => array( 'LG', 'Optimus G Pro', 'Android', TYPE_MOBILE ),
 
1611
  'http://gsm.lge.com/html/gsm/E986-M3-D1.xml' => array( 'LG', 'Optimus G Pro', 'Android', TYPE_MOBILE ),
 
1612
  'http://gsm.lge.com/html/gsm/E988-M3-D1.xml' => array( 'LG', 'Optimus G Pro', 'Android', TYPE_MOBILE ),
1613
  'http://gsm.lge.com/html/gsm/E989-M3-D1.xml' => array( 'LG', 'Optimus G Pro', 'Android', TYPE_MOBILE ),
 
1614
  'http://gsm.lge.com/html/gsm/VS980-M10-D1.xml' => array( 'LG', 'Optimus G Pro', 'Android', TYPE_MOBILE ),
1615
  'http://gsm.lge.com/html/gsm/GT540.xml' => array( 'LG', 'Optimus GT540', 'Android', TYPE_MOBILE ),
1616
  'http://gsm.lge.com/html/gsm/GT540f_M3_D1_J.xml' => array( 'LG', 'Optimus GT540', 'Android', TYPE_MOBILE ),
@@ -1649,6 +2035,7 @@
1649
  'http://gsm.lge.com/html/gsm/E435f-M3-D1.xml' => array( 'LG', 'Optimus L3 II Dual', 'Android', TYPE_MOBILE ),
1650
  'http://gsm.lge.com/html/gsm/E440-M3-D1.xml' => array( 'LG', 'Optimus L4 II', 'Android', TYPE_MOBILE ),
1651
  'http://gsm.lge.com/html/gsm/E440g-M10-D1.xml' => array( 'LG', 'Optimus L4 II', 'Android', TYPE_MOBILE ),
 
1652
  'http://gsm.lge.com/html/gsm/E445-M3-D1.xml' => array( 'LG', 'Optimus L4 II Dual', 'Android', TYPE_MOBILE ),
1653
  'http://gsm.lge.com/html/gsm/E470f-M3-D1.xml' => array( 'LG', 'Optimus L4 II Triple', 'Android', TYPE_MOBILE ),
1654
  'http://gsm.lge.com/html/gsm/E610-M10-D1.xml' => array( 'LG', 'Optimus L5', 'Android', TYPE_MOBILE ),
@@ -1661,14 +2048,19 @@
1661
  'http://gsm.lge.com/html/gsm/E615-M3-D1.xml' => array( 'LG', 'Optimus L5 Dual', 'Android', TYPE_MOBILE ),
1662
  'http://gsm.lge.com/html/gsm/E615f-M3-D1.xml' => array( 'LG', 'Optimus L5 Dual', 'Android', TYPE_MOBILE ),
1663
  'http://gsm.lge.com/html/gsm/E450-M3-D1.xml' => array( 'LG', 'Optimus L5 II', 'Android', TYPE_MOBILE ),
 
1664
  'http://gsm.lge.com/html/gsm/E450f-M10-D1.xml' => array( 'LG', 'Optimus L5 II', 'Android', TYPE_MOBILE ),
1665
  'http://gsm.lge.com/html/gsm/E450f-M3-D1.xml' => array( 'LG', 'Optimus L5 II', 'Android', TYPE_MOBILE ),
 
1666
  'http://gsm.lge.com/html/gsm/E460-M3-D1.xml' => array( 'LG', 'Optimus L5 II', 'Android', TYPE_MOBILE ),
1667
  'http://gsm.lge.com/html/gsm/E460-M5-D1.xml' => array( 'LG', 'Optimus L5 II', 'Android', TYPE_MOBILE ),
 
1668
  'http://gsm.lge.com/html/gsm/E460f-M3-D1.xml' => array( 'LG', 'Optimus L5 II', 'Android', TYPE_MOBILE ),
 
1669
  'http://gsm.lge.com/html/gsm/E455-M3-D1.xml' => array( 'LG', 'Optimus L5 II Dual', 'Android', TYPE_MOBILE ),
1670
  'http://gsm.lge.com/html/gsm/E455f-M3-D1.xml' => array( 'LG', 'Optimus L5 II Dual', 'Android', TYPE_MOBILE ),
1671
  'http://gsm.lge.com/html/gsm/P700-M3-D1.xml' => array( 'LG', 'Optimus L7', 'Android', TYPE_MOBILE ),
 
1672
  'http://gsm.lge.com/html/gsm/P705-M3-D1.xml' => array( 'LG', 'Optimus L7', 'Android', TYPE_MOBILE ),
1673
  'http://gsm.lge.com/html/gsm/P705-M6-D2.xml' => array( 'LG', 'Optimus L7', 'Android', TYPE_MOBILE ),
1674
  'http://gsm.lge.com/html/gsm/P705f-M3-D1.xml' => array( 'LG', 'Optimus L7', 'Android', TYPE_MOBILE ),
@@ -1696,7 +2088,9 @@
1696
  'http://gsm.lge.com/html/gsm/P769-M10-D1.xml' => array( 'LG', 'Optimus L9', 'Android', TYPE_MOBILE ),
1697
  'http://gsm.lge.com/html/gsm/P769-M3-D1.xml' => array( 'LG', 'Optimus L9', 'Android', TYPE_MOBILE ),
1698
  'http://gsm.lge.com/html/gsm/P778-M3-D1.xml' => array( 'LG', 'Optimus L9', 'Android', TYPE_MOBILE ),
 
1699
  'http://gsm.lge.com/html/gsm/D605-M3-D1.xml' => array( 'LG', 'Optimus L9 II', 'Android', TYPE_MOBILE ),
 
1700
  'http://gsm.lge.com/html/gsm/P935-M10-D1-ICS.xml' => array( 'LG', 'Optimus LTE', 'Android', TYPE_MOBILE ),
1701
  'http://gsm.lge.com/html/gsm/P935-M10-D1.xml' => array( 'LG', 'Optimus LTE', 'Android', TYPE_MOBILE ),
1702
  'http://gsm.lge.com/html/gsm/P936-M3-D1.xml' => array( 'LG', 'Optimus LTE', 'Android', TYPE_MOBILE ),
@@ -1738,6 +2132,7 @@
1738
  'http://uaprof.vmobl.com/lg/vm670/1.0/VMU_VM670_UAProf.xml' => array( 'LG', 'Optimus V', 'Android', TYPE_MOBILE ),
1739
  'http://gsm.lge.com/html/gsm/P895-M6-D2.xml' => array( 'LG', 'Optimus Vu', 'Android', TYPE_MOBILE ),
1740
  'http://gsm.lge.com/html/gsm/P895qb-M10-D1.xml' => array( 'LG', 'Optimus Vu', 'Android', TYPE_MOBILE ),
 
1741
  'http://gsm.lge.com/html/gsm/P505-M6-D1.xml' => array( 'LG', 'Phoenix', 'Android', TYPE_MOBILE ),
1742
  'http://gsm.lge.com/html/gsm/P505R-M6-D1.xml' => array( 'LG', 'Phoenix', 'Android', TYPE_MOBILE ),
1743
  'http://device.sprintpcs.com/LG/PLS225/WL225V04.rdf' => array( 'LG', 'PLS225', NULL, TYPE_MOBILE ),
@@ -1778,6 +2173,7 @@
1778
  'http://gsm.lge.com/html/gsm/P925-M6-D1.xml' => array( 'LG', 'Thrill', 'Android', TYPE_MOBILE ),
1779
  'http://gsm.lge.com/html/gsm/P925g-M6-D1-ICS.xml' => array( 'LG', 'Thrill', 'Android', TYPE_MOBILE ),
1780
  'http://gsm.lge.com/html/gsm/P925g-M6-D1.xml' => array( 'LG', 'Thrill', 'Android', TYPE_MOBILE ),
 
1781
  'http://gsm.lge.com/html/gsm/LG-TU575.xml' => array( 'LG', 'TU575', NULL, TYPE_MOBILE ),
1782
  'http://gsm.lge.com/html/gsm/LG-TU720.xml' => array( 'LG', 'TU720 Shine', NULL, TYPE_MOBILE ),
1783
  'http://gsm.lge.com/html/gsm/LG-TU915.xml' => array( 'LG', 'TU915 Vu', NULL, TYPE_MOBILE ),
@@ -1807,12 +2203,19 @@
1807
  'http://uaprof.vtext.com/lg/vx9400/vx9400.xml' => array( 'LG', 'VX9400', NULL, TYPE_MOBILE ),
1808
  'http://uaprof.vtext.com/lg/vx9700/vx9700.xml' => array( 'LG', 'VX9700 Dare', NULL, TYPE_MOBILE ),
1809
  'http://uaprof.vtext.com/lg/vx9900/vx9900.xml' => array( 'LG', 'VX9900 enV', NULL, TYPE_MOBILE ),
 
 
1810
  'http://www.m4tel.com/product/profiles/uaprof/M4TEL_SS990GPRS.xml' => array( 'M4Tel', 'E-Motion', 'Android', TYPE_MOBILE ),
1811
  'http://www.m4tel.com/product/profiles/uaprof/M4TEL_SS550GPRS.xml' => array( 'M4Tel', 'Genius', 'Android', TYPE_MOBILE ),
1812
  'http://www.m4tel.com/product/profiles/uaprof/M4TEL_SS880GPRS.xml' => array( 'M4Tel', 'Mirage', 'Android', TYPE_MOBILE ),
1813
  'http://www.m4tel.com/product/profiles/uaprof/M4_SS1090GPRS.xml' => array( 'M4Tel', 'SS1090', 'Android', TYPE_MOBILE ),
 
 
1814
  'http://www.zte.com.cn/mobile/uaprof/MegaFon_V9+.xml' => array( 'MegaFon', 'V9+', 'Android', TYPE_MOBILE ),
1815
  'http://www-ccpp.tcl-ta.com/files/smart_a17.xml' => array( 'MEO', 'Smart A17', 'Android', TYPE_MOBILE ),
 
 
 
1816
  'http://ibu.joy3g.org/ibu/MCX_A54_20121119_ua.xml' => array( 'Micromax', 'A54 Ninja', 'Android', TYPE_MOBILE ),
1817
  'http://ibu.joy3g.org/ibu/MCX_A56_20120522_ua.xml' => array( 'Micromax', 'A56 Ninja 2', 'Android', TYPE_MOBILE ),
1818
  'http://ibu.joy3g.org/ibu/MCX_A57_20120725_ua.xml' => array( 'Micromax', 'A57 Ninja 3', 'Android', TYPE_MOBILE ),
@@ -1827,6 +2230,7 @@
1827
  'http://www.mitsubishi-telecom.com/profiles/mt560.ua' => array( 'Mitsubishi', 'Trium M 320', NULL, TYPE_MOBILE ),
1828
  'http://imatemms.imate.com/gen/UAProf_JAMA_v1.xml' => array( 'MobileXP', 'JAMA', NULL, TYPE_MOBILE ),
1829
  'http://asmobile.ehosting.com.tw/uaprof/Virgin_1.xml' => array( 'Modelabs', 'Virgin', NULL, TYPE_MOBILE ),
 
1830
  'http://www.zte.com.cn/mobile/uaprof/Momodesign_MD_Droid.xml' => array( 'Momodesign', 'MD Droid', 'Android', TYPE_MOBILE ),
1831
  'http://motorola.handango.com/phoneconfig/a1000/Profile/a1000.rdf' => array( 'Motorola', 'A1000', 'UIQ', TYPE_MOBILE ),
1832
  'http://nmsc.ctvap.cn/uaprof/MOT/MOT_A3300c_4_20091029.xml' => array( 'Motorola', 'A3300', 'Windows Mobile', TYPE_MOBILE ),
@@ -1899,6 +2303,7 @@
1899
  'http://uaprof.motorola.com/phoneconfig/em30/Profile/em30.rdf' => array( 'Motorola', 'EM30', NULL, TYPE_MOBILE ),
1900
  'http://uaprof.motorola.com/phoneconfig/em325/Profile/em325.rdf' => array( 'Motorola', 'EM325', NULL, TYPE_MOBILE ),
1901
  'http://uaprof.motorola.com/phoneconfig/es405b/Profile/es405b.rdf' => array( 'Motorola', 'ES405B', 'Windows Mobile', TYPE_MOBILE ),
 
1902
  'http://uaprof.motorola.com/phoneconfig/ex128/Profile/EX128_27390a3c7426da5686f20302b82926e1.rdf' => array( 'Motorola', 'EX128', NULL, TYPE_MOBILE ),
1903
  'http://uaprof.motorola.com/phoneconfig/ex226/Profile/ex226.rdf' => array( 'Motorola', 'EX226', 'MTK', TYPE_MOBILE ),
1904
  'http://uaprof.motorola.com/phoneconfig/xt311/Profile/xt311.rdf' => array( 'Motorola', 'FIRE', 'Android', TYPE_MOBILE ),
@@ -1917,7 +2322,9 @@
1917
  'http://motorola.handango.com/phoneconfig/K3/Profile/K3.rdf' => array( 'Motorola', 'KRZR K3', NULL, TYPE_MOBILE ),
1918
  'http://motorola.handango.com/phoneconfig/l6/Profile/l6.rdf' => array( 'Motorola', 'L6', NULL, TYPE_MOBILE ),
1919
  'http://motorola.handango.com/phoneconfig/l6i/Profile/l6i.rdf' => array( 'Motorola', 'L6i', NULL, TYPE_MOBILE ),
 
1920
  'http://uaprof.motorola.com/phoneconfig/MotoXT605/profile/MotoXT605.rdf' => array( 'Motorola', 'Master XT605', 'Android', TYPE_MOBILE ),
 
1921
  'http://uaprof.motorola.com/phoneconfig/milestonext720/Profile/milestonext720.rdf' => array( 'Motorola', 'Milestone', 'Android', TYPE_MOBILE ),
1922
  'http://uaprof.motorola.com/phoneconfig/MotoA953/profile/MotoA953.rdf' => array( 'Motorola', 'Milestone 2', 'Android', TYPE_MOBILE ),
1923
  'http://uaprof.motorola.com/phoneconfig/MotoA953/profile/MotoA953GB.rdf' => array( 'Motorola', 'Milestone 2', 'Android', TYPE_MOBILE ),
@@ -1936,6 +2343,7 @@
1936
  'http://uaprof.motorola.com/phoneconfig/motoxt626/Profile/Motoxt626.rdf' => array( 'Motorola', 'MOTO XT626', 'Android', TYPE_MOBILE ),
1937
  'http://nmsc.ctvap.cn/uaprof/MOT/MOT_XT681_1_20110930.XML' => array( 'Motorola', 'MOTO XT681', 'Android', TYPE_MOBILE ),
1938
  'http://nmsc.ctvap.cn/uaprof/MOT/MOT_XT681_1_20111012.XML' => array( 'Motorola', 'MOTO XT681', 'Android', TYPE_MOBILE ),
 
1939
  'http://uaprof.motorola.com/phoneconfig/xt685/Profile/xt685.rdf' => array( 'Motorola', 'MOTO XT685', 'Android', TYPE_MOBILE ),
1940
  'http://uaprof.motorola.com/phoneconfig/motomb860/Profile/motoxt882.rdf' => array( 'Motorola', 'MOTO XT882', 'Android', TYPE_MOBILE ),
1941
  'http://uaprof.motorola.com/phoneconfig/w450/profile/w450.rdf' => array( 'Motorola', 'MOTOACTV W450', NULL, TYPE_MOBILE ),
@@ -1978,6 +2386,7 @@
1978
  'http://uaprof.motorola.com/phoneconfig/motoxt890/Profile/motoxt890.rdf' => array( 'Motorola', 'RAZR i', 'Android', TYPE_MOBILE ),
1979
  'http://uaprof.motorola.com/phoneconfig/motoxt890/Profile/motoxt890_jb.rdf' => array( 'Motorola', 'RAZR i', 'Android', TYPE_MOBILE ),
1980
  'http://uaprof.motorola.com/phoneconfig/mt781/Profile/mt781.rdf' => array( 'Motorola', 'RAZR i', 'Android', TYPE_MOBILE ),
 
1981
  'http://nmsc.ctvap.cn/uaprof/MOT/MOT_XT889_1_20120217.XML' => array( 'Motorola', 'RAZR V', 'Android', TYPE_MOBILE ),
1982
  'http://uaprof.motorola.com/phoneconfig/mt887/Profile/mt887.rdf' => array( 'Motorola', 'RAZR V', 'Android', TYPE_MOBILE ),
1983
  'http://uaprof.motorola.com/phoneconfig/xt885/Profile/xt885.rdf' => array( 'Motorola', 'RAZR V', 'Android', TYPE_MOBILE ),
@@ -2055,6 +2464,10 @@
2055
  'http://www-ccpp.tcl-ta.com/files/MTC_968.xml' => array( 'MTC', '968', 'Android', TYPE_MOBILE ),
2056
  'http://www-ccpp.tcl-ta.com/files/MTC_970.xml' => array( 'MTC', '970', 'Android', TYPE_MOBILE ),
2057
  'http://www-ccpp.tcl-ta.com/files/MTC_970H.xml' => array( 'MTC', '970H', 'Android', TYPE_MOBILE ),
 
 
 
 
2058
  'http://wap1.huawei.com/uaprof/HuaweiU8160GPRS-MTS.xml' => array( 'MTS', 'Mini', 'Android', TYPE_MOBILE ),
2059
  'http://www.nechdm.com/profiles/232/a232.rdf' => array( 'NEC', 'A232', NULL, TYPE_MOBILE ),
2060
  'http://www.nechdm.com/profiles/525/a525.rdf' => array( 'NEC', 'A525', NULL, TYPE_MOBILE ),
@@ -2099,7 +2512,11 @@
2099
  'http://nds1.nds.nokia.com/uaprof/N1680c-2r100.xml' => array( 'Nokia', '1680 classic', NULL, TYPE_MOBILE ),
2100
  'http://nds1.nds.nokia.com/uaprof/Nokia2052r100.xml' => array( 'Nokia', '2052', 'Series40', TYPE_MOBILE ),
2101
  'http://nds1.nds.nokia.com/uaprof/Nokia2055r100.xml' => array( 'Nokia', '2055', 'Series40', TYPE_MOBILE ),
 
2102
  'http://nds1.nds.nokia.com/uaprof/Nokia208.1r100.xml' => array( 'Nokia', '208', 'Series40', TYPE_MOBILE ),
 
 
 
2103
  'http://nds1.nds.nokia.com/uaprof/Nokia210.2r100.xml' => array( 'Nokia', '210', 'Series40', TYPE_MOBILE ),
2104
  'http://nds1.nds.nokia.com/uaprof/N2322cr100.xml' => array( 'Nokia', '2322 classic', 'Series40', TYPE_MOBILE ),
2105
  'http://nds1.nds.nokia.com/uaprof/N2600c-2r100.xml' => array( 'Nokia', '2600 classic', 'Series40', TYPE_MOBILE ),
@@ -2107,6 +2524,7 @@
2107
  'http://nds.nokia.com/uaprof/N2610r100.xml' => array( 'Nokia', '2610', 'Series40', TYPE_MOBILE ),
2108
  'http://nds.nokia.com/uaprof/N2626r100.xml' => array( 'Nokia', '2626', 'Series40', TYPE_MOBILE ),
2109
  'http://nds.nokia.com/uaprof/N2630r100.xml' => array( 'Nokia', '2630', 'Series40', TYPE_MOBILE ),
 
2110
  'http://nds.nokia.com/uaprof/N2650r100.xml' => array( 'Nokia', '2650', 'Series40', TYPE_MOBILE ),
2111
  'http://nds.nokia.com/uaprof/N2650r200.xml' => array( 'Nokia', '2650', 'Series40', TYPE_MOBILE ),
2112
  'http://nds.nokia.com/uaprof/N2650r300.xml' => array( 'Nokia', '2650', 'Series40', TYPE_MOBILE ),
@@ -2115,10 +2533,14 @@
2115
  'http://nds1.nds.nokia.com/uaprof/N2690r100.xml' => array( 'Nokia', '2690', 'Series40', TYPE_MOBILE ),
2116
  'http://nds1.nds.nokia.com/uaprof/N2692r100.xml' => array( 'Nokia', '2692', 'Series40', TYPE_MOBILE ),
2117
  'http://nds1.nds.nokia.com/uaprof/N2700c-2r100.xml' => array( 'Nokia', '2700 classic', 'Series40', TYPE_MOBILE ),
 
 
2118
  'http://nds1.nds.nokia.com/uaprof/N2720ar100.xml' => array( 'Nokia', '2720 fold', 'Series40', TYPE_MOBILE ),
2119
  'http://nds1.nds.nokia.com/uaprof/N2730c-1br100.xml' => array( 'Nokia', '2730 classic', 'Series40', TYPE_MOBILE ),
2120
  'http://nds1.nds.nokia.com/uaprof/N2730c-1r100.xml' => array( 'Nokia', '2730 classic', 'Series40', TYPE_MOBILE ),
 
2121
  'http://nds.nokia.com/uaprof/N2760r100.xml' => array( 'Nokia', '2760', 'Series40', TYPE_MOBILE ),
 
2122
  'http://nds1.nds.nokia.com/uaprof/Nokia301.1r100.xml' => array( 'Nokia', '301', 'Series40', TYPE_MOBILE ),
2123
  'http://nds1.nds.nokia.com/uaprof/Nokia301r100.xml' => array( 'Nokia', '301', 'Series40', TYPE_MOBILE ),
2124
  'http://nds1.nds.nokia.com/uaprof/Nokia3020r100.xml' => array( 'Nokia', '3020', 'Series40', TYPE_MOBILE ),
@@ -2199,6 +2621,7 @@
2199
  'http://nds.nokia.com/uaprof/N5140r100.xml' => array( 'Nokia', '5140', 'Series40', TYPE_MOBILE ),
2200
  'http://nds.nokia.com/uaprof/N5140ir100.xml' => array( 'Nokia', '5140i', 'Series40', TYPE_MOBILE ),
2201
  'http://nds.nokia.com/uaprof/N5140ir200.xml' => array( 'Nokia', '5140i', 'Series40', TYPE_MOBILE ),
 
2202
  'http://nds.nokia.com/uaprof/N5200r100.xml' => array( 'Nokia', '5200', 'Series40', TYPE_MOBILE ),
2203
  'http://nds1.nds.nokia.com/uaprof/N5200r100.xml' => array( 'Nokia', '5200', 'Series40', TYPE_MOBILE ),
2204
  'http://nds.nokia.com/uaprof/N5210r100.xml' => array( 'Nokia', '5210', NULL, TYPE_MOBILE ),
@@ -2227,6 +2650,7 @@
2227
  'http://nds1.nds.nokia.com/uaprof/N5300r100.xml' => array( 'Nokia', '5300 XpressMusic', 'Series40', TYPE_MOBILE ),
2228
  'http://nds.nokia.com/uaprof/N5310r100.xml' => array( 'Nokia', '5310 XpressMusic', 'Series40', TYPE_MOBILE ),
2229
  'http://nds.nokia.com/uaprof/N5310XpressMusicr100.xml' => array( 'Nokia', '5310 XpressMusic', 'Series40', TYPE_MOBILE ),
 
2230
  'http://nds1.nds.nokia.com/uaprof/N5310XpressMusicr100.xml' => array( 'Nokia', '5310 XpressMusic', 'Series40', TYPE_MOBILE ),
2231
  'http://nds1.nds.nokia.com/uaprof/N5310XpressMusicVFr100.xml' => array( 'Nokia', '5310 XpressMusic', 'Series40', TYPE_MOBILE ),
2232
  'http://nds1.nds.nokia.com/uaprof/N5320c-1r100-3G.xml' => array( 'Nokia', '5320 XpressMusic', 'Series60', TYPE_MOBILE ),
@@ -2265,6 +2689,7 @@
2265
  'http://nds1.nds.nokia.com/uaprof/N603r300.xml' => array( 'Nokia', '603', 'Series60', TYPE_MOBILE ),
2266
  'http://nds.nokia.com/uaprof/N6030r100.xml' => array( 'Nokia', '6030', 'Series40', TYPE_MOBILE ),
2267
  'http://nds1.nds.nokia.com/uaprof/N6030br100.xml' => array( 'Nokia', '6030', NULL, TYPE_MOBILE ),
 
2268
  'http://nds.nokia.com/uaprof/N6030br100.xml' => array( 'Nokia', '6030b', 'Series40', TYPE_MOBILE ),
2269
  'http://nds.nokia.com/uaprof/N6060r100.xml' => array( 'Nokia', '6060', 'Series40', TYPE_MOBILE ),
2270
  'http://nds.nokia.com/uaprof/N6060vr100.xml' => array( 'Nokia', '6060v', 'Series40', TYPE_MOBILE ),
@@ -2303,6 +2728,7 @@
2303
  'http://nds.nokia.com/uaprof/N6120cr100.xml' => array( 'Nokia', '6120 classic', 'Series60', TYPE_MOBILE ),
2304
  'http://nds1.nds.nokia.com/uaprof/N6120c-1r100-2G.xml' => array( 'Nokia', '6120 classic', 'Series60', TYPE_MOBILE ),
2305
  'http://nds1.nds.nokia.com/uaprof/N6120c-1r100-3G.xml' => array( 'Nokia', '6120 classic', 'Series60', TYPE_MOBILE ),
 
2306
  'http://nds1.nds.nokia.com/uaprof/N6120cr100.xml' => array( 'Nokia', '6120 classic', 'Series60', TYPE_MOBILE ),
2307
  'http://nds1.nds.nokia.com/uaprof/N6122cr100.xml' => array( 'Nokia', '6122 classic', 'Series60', TYPE_MOBILE ),
2308
  'http://nds1.nds.nokia.com/uaprof/N6124cr100-3G.xml' => array( 'Nokia', '6124 classic', 'Series60', TYPE_MOBILE ),
@@ -2375,6 +2801,7 @@
2375
  'http://nds.nokia.com/uaprof/N6233r500_3G.xml' => array( 'Nokia', '6233', 'Series40', TYPE_MOBILE ),
2376
  'http://nds.nokia.com/uaprof/N6233r501.xml' => array( 'Nokia', '6233', 'Series40', TYPE_MOBILE ),
2377
  'http://nds.nokia.com/uaprof/N6233r501_3G.xml' => array( 'Nokia', '6233', 'Series40', TYPE_MOBILE ),
 
2378
  'http://nds1.nds.nokia.com/uaprof/N6233r500.xml' => array( 'Nokia', '6233', 'Series40', TYPE_MOBILE ),
2379
  'http://nds1.nds.nokia.com/uaprof/N6233r500_3G.xml' => array( 'Nokia', '6233', 'Series40', TYPE_MOBILE ),
2380
  'http://nds.nokia.com/uaprof/N6234r100.xml' => array( 'Nokia', '6234', 'Series40', TYPE_MOBILE ),
@@ -2478,6 +2905,7 @@
2478
  'http://nds.nokia.com/uaprof/N6301r100.xml' => array( 'Nokia', '6301', 'Series40', TYPE_MOBILE ),
2479
  'http://nds1.nds.nokia.com/uaprof/N6301r100.xml' => array( 'Nokia', '6301', 'Series40', TYPE_MOBILE ),
2480
  'http://nds1.nds.nokia.com/uaprof/N6303classicr100.xml' => array( 'Nokia', '6303 classic', 'Series40', TYPE_MOBILE ),
 
2481
  'http://nds1.nds.nokia.com/uaprof/N6303iclassicr100.xml' => array( 'Nokia', '6303i classic', 'Series40', TYPE_MOBILE ),
2482
  'http://uaprof.vtext.com/nokia/6305/6305v1.xml' => array( 'Nokia', '6305i', NULL, TYPE_MOBILE ),
2483
  'http://nds.nokia.com/uaprof/N6310r100.xml' => array( 'Nokia', '6310', NULL, TYPE_MOBILE ),
@@ -2539,6 +2967,7 @@
2539
  'http://nds1.nds.nokia.com/uaprof/Nokia6710sr100-3G.xml' => array( 'Nokia', '6710 Navigator', 'Series60', TYPE_MOBILE ),
2540
  'http://nds1.nds.nokia.com/uaprof/Nokia6720cr100.xml' => array( 'Nokia', '6720 classic', 'Series60', TYPE_MOBILE ),
2541
  'http://nds1.nds.nokia.com/uaprof/N6730cr100.xml' => array( 'Nokia', '6730 classic', 'Series60', TYPE_MOBILE ),
 
2542
  'http://nds1.nds.nokia.com/uaprof/N6760s-1r100-3G.xml' => array( 'Nokia', '6760 slide', 'Series60', TYPE_MOBILE ),
2543
  'http://nds.nokia.com/uaprof/N6800r100.xml' => array( 'Nokia', '6800', 'Series40', TYPE_MOBILE ),
2544
  'http://nds.nokia.com/uaprof/N6800r200.xml' => array( 'Nokia', '6800', 'Series40', TYPE_MOBILE ),
@@ -2606,6 +3035,7 @@
2606
  'http://nds.nokia.com/uaprof/N7650r200.xml' => array( 'Nokia', '7650', 'Series60', TYPE_MOBILE ),
2607
  'http://nds.nokia.com/uaprof/N7710r100.xml' => array( 'Nokia', '7710', 'Series90', TYPE_MOBILE ),
2608
  'http://nds1.nds.nokia.com/uaprof/N7900r100.xml' => array( 'Nokia', '7900 Prism', 'Series40', TYPE_MOBILE ),
 
2609
  'http://nds1.nds.nokia.com/uaprof/N808PureViewr100.xml' => array( 'Nokia', '808 PureView', 'Series60', TYPE_MOBILE ),
2610
  'http://nds1.nds.nokia.com/uaprof/N808PureViewr200.xml' => array( 'Nokia', '808 PureView', 'Series60', TYPE_MOBILE ),
2611
  'http://nds1.nds.nokia.com/uaprof/N808r100.xml' => array( 'Nokia', '808 PureView', 'Series60', TYPE_MOBILE ),
@@ -2648,8 +3078,12 @@
2648
  'http://nds1.nds.nokia.com/uaprof/Nokia205r100.xml' => array( 'Nokia', 'Asha 205', 'Series40', TYPE_MOBILE ),
2649
  'http://nds1.nds.nokia.com/uaprof/Nokia206.1r100.xml' => array( 'Nokia', 'Asha 206', 'Series40', TYPE_MOBILE ),
2650
  'http://nds1.nds.nokia.com/uaprof/Nokia206r100.xml' => array( 'Nokia', 'Asha 206', 'Series40', TYPE_MOBILE ),
 
 
2651
  'http://nds1.nds.nokia.com/uaprof/Nokia210.5r100.xml' => array( 'Nokia', 'Asha 210', 'Series40', TYPE_MOBILE ),
2652
  'http://nds1.nds.nokia.com/uaprof/Nokia210r100.xml' => array( 'Nokia', 'Asha 210', 'Series40', TYPE_MOBILE ),
 
 
2653
  'http://nds1.nds.nokia.com/uaprof/300r100.xml' => array( 'Nokia', 'Asha 300', 'Series40', TYPE_MOBILE ),
2654
  'http://nds1.nds.nokia.com/uaprof/Nokia302r100.xml' => array( 'Nokia', 'Asha 302', 'Series40', TYPE_MOBILE ),
2655
  'http://nds1.nds.nokia.com/uaprof/Nokia303r100.xml' => array( 'Nokia', 'Asha 303', 'Series40', TYPE_MOBILE ),
@@ -2660,9 +3094,13 @@
2660
  'http://nds1.nds.nokia.com/uaprof/309r100.xml' => array( 'Nokia', 'Asha 309', 'Series40', TYPE_MOBILE ),
2661
  'http://nds1.nds.nokia.com/uaprof/Nokia310r100.xml' => array( 'Nokia', 'Asha 310', 'Series40', TYPE_MOBILE ),
2662
  'http://nds1.nds.nokia.com/uaprof/311r100.xml' => array( 'Nokia', 'Asha 311', 'Series40', TYPE_MOBILE ),
 
2663
  'http://nds1.nds.nokia.com/uaprof/Nokia501.1r100.xml' => array( 'Nokia', 'Asha 501', 'Nokia Asha Platform', TYPE_MOBILE ),
 
2664
  'http://nds1.nds.nokia.com/uaprof/Nokia501r100.xml' => array( 'Nokia', 'Asha 501', 'Nokia Asha Platform', TYPE_MOBILE ),
2665
  'http://nds1.nds.nokia.com/uaprof/Nokia501sr100.xml' => array( 'Nokia', 'Asha 501', 'Nokia Asha Platform', TYPE_MOBILE ),
 
 
2666
  'http://nds1.nds.nokia.com/uaprof/Nokia503sr100.xml' => array( 'Nokia', 'Asha 503', 'Nokia Asha Platform', TYPE_MOBILE ),
2667
  'http://nds1.nds.nokia.com/uaprof/NokiaC1-01.1r100.xml' => array( 'Nokia', 'C1-01', 'Series40', TYPE_MOBILE ),
2668
  'http://nds1.nds.nokia.com/uaprof/NokiaC1-01r100.xml' => array( 'Nokia', 'C1-01', 'Series40', TYPE_MOBILE ),
@@ -2754,6 +3192,7 @@
2754
  'http://nds.nokia.com/uaprof/NE65-2r100.xml' => array( 'Nokia', 'E65', 'Series60', TYPE_MOBILE ),
2755
  'http://nds1.nds.nokia.com/uaprof/NE66-1r100-vf3g.xml' => array( 'Nokia', 'E66', 'Series60', TYPE_MOBILE ),
2756
  'http://nds1.nds.nokia.com/uaprof/NE66-1r100.xml' => array( 'Nokia', 'E66', 'Series60', TYPE_MOBILE ),
 
2757
  'http://nds1.nds.nokia.com/uaprof/NE66r100.xml' => array( 'Nokia', 'E66', 'Series60', TYPE_MOBILE ),
2758
  'http://nds1.nds.nokia.com/uaprof/NE7-00r100-VF2G.xml' => array( 'Nokia', 'E7-00', 'Series60', TYPE_MOBILE ),
2759
  'http://nds1.nds.nokia.com/uaprof/NE7-00r100-VF3G.xml' => array( 'Nokia', 'E7-00', 'Series60', TYPE_MOBILE ),
@@ -2826,6 +3265,8 @@
2826
  'http://nds1.nds.nokia.com/uaprof/NN78-1r100-VF3G.xml' => array( 'Nokia', 'N78', 'Series60', TYPE_MOBILE ),
2827
  'http://nds1.nds.nokia.com/uaprof/NN78-1r100.xml' => array( 'Nokia', 'N78', 'Series60', TYPE_MOBILE ),
2828
  'http://nds1.nds.nokia.com/uaprof/NN79-1r100.xml' => array( 'Nokia', 'N79', 'Series60', TYPE_MOBILE ),
 
 
2829
  'http://nds1.nds.nokia.com/uaprof/NN8-00.1r200-3G.xml' => array( 'Nokia', 'N8-00', 'Series60', TYPE_MOBILE ),
2830
  'http://nds1.nds.nokia.com/uaprof/NN8-00.1r300-3G.xml' => array( 'Nokia', 'N8-00', 'Series60', TYPE_MOBILE ),
2831
  'http://nds1.nds.nokia.com/uaprof/NN8-00r100-3G.xml' => array( 'Nokia', 'N8-00', 'Series60', TYPE_MOBILE ),
@@ -2847,6 +3288,7 @@
2847
  'http://nds1.nds.nokia.com/uaprof/NN85-1r100-VF3G.xml' => array( 'Nokia', 'N85', 'Series60', TYPE_MOBILE ),
2848
  'http://nds1.nds.nokia.com/uaprof/NN85-1r100.xml' => array( 'Nokia', 'N85', 'Series60', TYPE_MOBILE ),
2849
  'http://nds1.nds.nokia.com/uaprof/NN85-3r100.xml' => array( 'Nokia', 'N85', 'Series60', TYPE_MOBILE ),
 
2850
  'http://nds1.nds.nokia.com/uaprof/NN86-1r100.xml' => array( 'Nokia', 'N86 8MP', 'Series60', TYPE_MOBILE ),
2851
  'http://nds1.nds.nokia.com/uaprof/NN86-3r100.xml' => array( 'Nokia', 'N86 8MP', 'Series60', TYPE_MOBILE ),
2852
  'http://nds.nokia.com/uaprof/NN90-1r100-VF2G.xml' => array( 'Nokia', 'N90', 'Series60', TYPE_MOBILE ),
@@ -2928,6 +3370,7 @@
2928
  'http://nds1.nds.nokia.com/uaprof/NX7-00r100-VF3G.xml' => array( 'Nokia', 'X7-00', 'Series60', TYPE_MOBILE ),
2929
  'http://nds1.nds.nokia.com/uaprof/NX7-00r200-3G.xml' => array( 'Nokia', 'X7-00', 'Series60', TYPE_MOBILE ),
2930
  'http://nds1.nds.nokia.com/uaprof/NX7-00r210-3G.xml' => array( 'Nokia', 'X7-00', 'Series60', TYPE_MOBILE ),
 
2931
  'http://nyxmobile.com/UAProfile/fly/NYX_FLY.xml' => array( 'Nyx', 'Fly', 'Android', TYPE_MOBILE ),
2932
  'http://www.seeo2.com/uaprofile/uaprof-atomlife.xml' => array( 'O2', 'Comet', NULL, TYPE_MOBILE ),
2933
  'http://www.seeo2.com/uaprofile/uaprof-atomexec.xml' => array( 'O2', 'Xda Exec', NULL, TYPE_MOBILE ),
@@ -2940,9 +3383,14 @@
2940
  'http://www.ondacommunication.com/ua/TT101.xml' => array( 'Onda', 'TT101', 'Android', TYPE_TABLET ),
2941
  'http://www.ondacommunication.com/ua/TT102.xml' => array( 'Onda', 'TT102', 'Android', TYPE_MOBILE ),
2942
  'http://www.zte.com.cn/mobile/uaprof/ZTE-ONIDA F970.xml' => array( 'Onida', 'F970', NULL, TYPE_MOBILE ),
 
2943
  'http://www.oppo.com/resource/UA-PROF/OPPOX909T.xml' => array( 'Oppo', 'Find 5 X909', 'Android', TYPE_MOBILE ),
2944
  'http://www.oppo.com/resource/UA-PROF/OPPOR815.xml' => array( 'Oppo', 'Find Clover R815', 'Android', TYPE_MOBILE ),
2945
  'http://www.oppo.com/resource/UA-PROF/OPPOR815T.xml' => array( 'Oppo', 'Find Clover R815', 'Android', TYPE_MOBILE ),
 
 
 
 
2946
  'http://www.oppo.com/resource/UA-PROF/OPPOR809T.xml' => array( 'Oppo', 'R809', 'Android', TYPE_MOBILE ),
2947
  'http://www.oppo.com/resource/UA-PROF/OPPOR813T.xml' => array( 'Oppo', 'R813', 'Android', TYPE_MOBILE ),
2948
  'http://www.oppo.com/resource/UA-PROF/OPPOR819.xml' => array( 'Oppo', 'R819', 'Android', TYPE_MOBILE ),
@@ -2964,11 +3412,14 @@
2964
  'http://www-ccpp.tcl-ta.com/files/Infinity_X.xml' => array( 'Orange', 'Infinity X', 'Android', TYPE_MOBILE ),
2965
  'http://www-ccpp.tcl-ta.com/files/Orange-Kivo.xml' => array( 'Orange', 'Kivo', 'Android', TYPE_MOBILE ),
2966
  'http://www-ccpp.tcl-ta.com/files/Orange_Niva.xml' => array( 'Orange', 'Nivo', 'Android', TYPE_MOBILE ),
 
2967
  'http://www.zte.com.cn/mobile/uaprof/Orange-San-Francisco.xml' => array( 'Orange', 'San Francisco', 'Android', TYPE_MOBILE ),
2968
  'http://www.htcmms.com.tw/gen/Excal-1.0.xml' => array( 'Orange', 'SPV E600', NULL, TYPE_MOBILE ),
2969
  'http://www.htcmms.com.tw/gen/ph10cd-1.0.xml' => array( 'Orange', 'SPV M1500', 'Windows Mobile', TYPE_MOBILE ),
2970
  'http://www.htcmms.com.tw/gen/st21-1.0.xml' => array( 'Orange', 'SPV V550', 'Windows Mobile', TYPE_MOBILE ),
2971
  'http://www.modelabs.com/uaprofs/Orange-Tokyo.xml' => array( 'Orange', 'Tokyo', NULL, TYPE_MOBILE ),
 
 
2972
  'http://support.acer.com/UAprofile/Acer_G100W_Profile.xml' => array( 'Packard Bell', 'Liberty Tab G100W', 'Android', TYPE_MOBILE ),
2973
  'http://www.palm.com/permalinks/mmsuaprofs/ASUS_Crown_1.xml' => array( 'Palm', 'Treo 500', 'Palm OS', TYPE_MOBILE ),
2974
  'http://www.handspring.com/profilespecs/Blazer300_OR.rdf' => array( 'Palm', 'Treo 600', 'Palm OS', TYPE_MOBILE ),
@@ -2998,6 +3449,7 @@
2998
  'http://mobileinternet.panasonicbox.com/UAprof/GU87/R1.xml' => array( 'Panasonic', 'GU87', NULL, TYPE_MOBILE ),
2999
  'http://www-ccpp.tcl-ta.com/files/Panasonic P51.xml' => array( 'Panasonic', 'P51', 'Android', TYPE_MOBILE ),
3000
  'http://mobileinternet.panasonicbox.com/UAprof/SA7/RP1.xml' => array( 'Panasonic', 'SA7', NULL, TYPE_MOBILE ),
 
3001
  'http://mobileinternet.panasonicbox.com/UAprof/vs2/RP1.xml' => array( 'Panasonic', 'VS2', NULL, TYPE_MOBILE ),
3002
  'http://mobileinternet.panasonicbox.com/UAprof/VS7/RP1.xml' => array( 'Panasonic', 'VS7', NULL, TYPE_MOBILE ),
3003
  'http://mobileinternet.panasonicbox.com/UAprof/VS7aI/RJ1_3G.xml' => array( 'Panasonic', 'VS7', NULL, TYPE_MOBILE ),
@@ -3039,6 +3491,8 @@
3039
  'http://www.pantech.com/Uaprof/umts/PU-P9090R01.xml' => array( 'Pantech', 'Magnus', 'Android', TYPE_MOBILE ),
3040
  'http://uaprof.vtext.com/pcd/adr910l/adr910l.xml' => array( 'Pantech', 'Marauder', 'Android', TYPE_MOBILE ),
3041
  'http://www.pantech.com/Uaprof/umts/PU-C740.xml' => array( 'Pantech', 'Matrix', NULL, TYPE_MOBILE ),
 
 
3042
  'http://uaprof.vtext.com/pcd/adr930l/adr930l.xml' => array( 'Pantech', 'Perception', 'Android', TYPE_MOBILE ),
3043
  'http://device.telusmobility.com/pantech/PN3200-0.rdf' => array( 'Pantech', 'PN-3200', NULL, TYPE_MOBILE ),
3044
  'http://www.pantech.com/Uaprof/umts/PU-P9060.xml' => array( 'Pantech', 'Pocket', 'Android', TYPE_MOBILE ),
@@ -3059,18 +3513,29 @@
3059
  'http://www.consumer.philips.com/wbu/uapP199.xml' => array( 'Philips', 'P100', NULL, TYPE_MOBILE ),
3060
  'http://www.consumer.philips.com/wbu/uapP598.xml' => array( 'Philips', 'P598', NULL, TYPE_MOBILE ),
3061
  'http://www.consumer.philips.com/wbu/uapS890.XML' => array( 'Philips', 'S890', NULL, TYPE_MOBILE ),
 
3062
  'http://www.consumer.philips.com/wbu/uapX525.xml' => array( 'Philips', 'X331', 'MTK', TYPE_MOBILE ),
3063
  'http://uriver.co.kr/UAprof/UAprof_M801.xml' => array( 'PhoneOne', 'M801', NULL, TYPE_MOBILE ),
3064
  'http://www.coobery.com/mobile/Suning_S90w_UAProfile.xml' => array( 'Pioneer', 'S90w', 'Android', TYPE_MOBILE ),
3065
  'http://wap.dl.prestigio.com/uaprofile/tablets/PMP7280C3G_DUO_PL_V1.xml' => array( 'Prestigio', 'Multipad 2 Ultra Duo 8.0 3G', 'Android', TYPE_TABLET ),
3066
  'http://wap.dl.prestigio.com/uaprofile/tablets/PMP7280C3G_QUAD_V1.xml' => array( 'Prestigio', 'Multipad 2 Ultra Duo 8.0 3G', 'Android', TYPE_TABLET ),
 
 
 
 
 
 
3067
  'http://wap.dl.prestigio.com/uaprofile/smartphones/PAP3540DUO_V1.xml' => array( 'Prestigio', 'Multiphone 3540 Duo', 'Android', TYPE_MOBILE ),
3068
  'http://wap.dl.prestigio.com/uaprofile/smartphones/PAP4044DUO_V1.xml' => array( 'Prestigio', 'Multiphone 4044 Duo', 'Android', TYPE_MOBILE ),
 
3069
  'http://wap.dl.prestigio.com/uaprofile/smartphones/PAP4322DUO_V1.xml' => array( 'Prestigio', 'Multiphone 4322 Duo', 'Android', TYPE_MOBILE ),
3070
  'http://wap.dl.prestigio.com/uaprofile/smartphones/PAP4500TDUO_V1.XML' => array( 'Prestigio', 'Multiphone 4500 Duo', 'Android', TYPE_MOBILE ),
3071
  'http://wap.dl.prestigio.com/uaprofile/smartphones/PAP5000TDUO_V1.XML' => array( 'Prestigio', 'Multiphone 5000 Duo', 'Android', TYPE_MOBILE ),
3072
  'http://wap.dl.prestigio.com/uaprofile/smartphones/PAP5044DUO_V1.xml' => array( 'Prestigio', 'Multiphone 5044 Duo', 'Android', TYPE_MOBILE ),
3073
  'http://wap.dl.prestigio.com/uaprofile/smartphones/PAP5430_V1.xml' => array( 'Prestigio', 'Multiphone 5430', 'Android', TYPE_MOBILE ),
 
 
 
3074
  'http://www.blackberry.net/go/mobile/profiles/uaprof/Unknown_80211g/7.1.0.rdf' => array( 'RIM', 'BlackBerry', 'BlackBerry OS', TYPE_MOBILE ),
3075
  'http://www.blackberry.net/go/mobile/profiles/uaprof/Unknown_evdo/7.1.0.rdf' => array( 'RIM', 'BlackBerry', 'BlackBerry OS', TYPE_MOBILE ),
3076
  'http://www.blackberry.net/go/mobile/profiles/uaprof/5810/3.2.1.rdf' => array( 'RIM', 'BlackBerry 5810', 'BlackBerry OS', TYPE_MOBILE ),
@@ -3198,33 +3663,45 @@
3198
  'http://www.blackberry.net/go/mobile/profiles/uaprof/9620_80211g/7.1.0.rdf' => array( 'RIM', 'BlackBerry 9620', 'BlackBerry OS', TYPE_MOBILE ),
3199
  'http://www.blackberry.net/go/mobile/profiles/uaprof/9620_edge/7.1.0.rdf' => array( 'RIM', 'BlackBerry 9620', 'BlackBerry OS', TYPE_MOBILE ),
3200
  'http://www.blackberry.net/go/mobile/profiles/uaprof/9620_umts/7.1.0.rdf' => array( 'RIM', 'BlackBerry 9620', 'BlackBerry OS', TYPE_MOBILE ),
 
3201
  'http://www.blackberry.net/go/mobile/profiles/uaprof/9720_80211g/7.1.0.rdf' => array( 'RIM', 'BlackBerry 9720', 'BlackBerry OS', TYPE_MOBILE ),
3202
  'http://www.blackberry.net/go/mobile/profiles/uaprof/9720_edge/7.1.0.rdf' => array( 'RIM', 'BlackBerry 9720', 'BlackBerry OS', TYPE_MOBILE ),
3203
  'http://www.blackberry.net/go/mobile/profiles/uaprof/9720_gprs/7.1.0.rdf' => array( 'RIM', 'BlackBerry 9720', 'BlackBerry OS', TYPE_MOBILE ),
3204
  'http://www.blackberry.net/go/mobile/profiles/uaprof/9720_umts/7.1.0.rdf' => array( 'RIM', 'BlackBerry 9720', 'BlackBerry OS', TYPE_MOBILE ),
3205
  'http://www.blackberry.net/go/mobile/profiles/uaprof/9000/4.6.0.rdf' => array( 'RIM', 'BlackBerry Bold 9000', 'BlackBerry OS', TYPE_MOBILE ),
 
3206
  'http://www.blackberry.net/go/mobile/profiles/uaprof/9000_80211a/5.0.0.rdf' => array( 'RIM', 'BlackBerry Bold 9000', 'BlackBerry OS', TYPE_MOBILE ),
 
3207
  'http://www.blackberry.net/go/mobile/profiles/uaprof/9000_80211g/4.6.0.rdf' => array( 'RIM', 'BlackBerry Bold 9000', 'BlackBerry OS', TYPE_MOBILE ),
3208
  'http://www.blackberry.net/go/mobile/profiles/uaprof/9000_80211g/5.0.0.rdf' => array( 'RIM', 'BlackBerry Bold 9000', 'BlackBerry OS', TYPE_MOBILE ),
 
3209
  'http://www.blackberry.net/go/mobile/profiles/uaprof/9000_edge/5.0.0.rdf' => array( 'RIM', 'BlackBerry Bold 9000', 'BlackBerry OS', TYPE_MOBILE ),
 
3210
  'http://www.blackberry.net/go/mobile/profiles/uaprof/9000_umts/5.0.0.rdf' => array( 'RIM', 'BlackBerry Bold 9000', 'BlackBerry OS', TYPE_MOBILE ),
3211
  'http://device.sprintpcs.com/RIM/BlackBerry9650/6.0.0.706.rdf' => array( 'RIM', 'BlackBerry Bold 9650', 'BlackBerry OS', TYPE_MOBILE ),
3212
  'http://device.sprintpcs.com/RIM/BlackBerry9650/6.0.0.723.rdf' => array( 'RIM', 'BlackBerry Bold 9650', 'BlackBerry OS', TYPE_MOBILE ),
 
3213
  'http://www.blackberry.net/go/mobile/profiles/uaprof/9650_1x/6.0.0.rdf' => array( 'RIM', 'BlackBerry Bold 9650', 'BlackBerry OS', TYPE_MOBILE ),
 
3214
  'http://www.blackberry.net/go/mobile/profiles/uaprof/9650_80211g/6.0.0.rdf' => array( 'RIM', 'BlackBerry Bold 9650', 'BlackBerry OS', TYPE_MOBILE ),
3215
  'http://www.blackberry.net/go/mobile/profiles/uaprof/9650_edge/5.0.0.rdf' => array( 'RIM', 'BlackBerry Bold 9650', 'BlackBerry OS', TYPE_MOBILE ),
3216
  'http://www.blackberry.net/go/mobile/profiles/uaprof/9650_edge/6.0.0.rdf' => array( 'RIM', 'BlackBerry Bold 9650', 'BlackBerry OS', TYPE_MOBILE ),
3217
  'http://www.blackberry.net/go/mobile/profiles/uaprof/9650_evdo/5.0.0.rdf' => array( 'RIM', 'BlackBerry Bold 9650', 'BlackBerry OS', TYPE_MOBILE ),
3218
  'http://www.blackberry.net/go/mobile/profiles/uaprof/9650_evdo/6.0.0.rdf' => array( 'RIM', 'BlackBerry Bold 9650', 'BlackBerry OS', TYPE_MOBILE ),
 
3219
  'http://www.blackberry.net/go/mobile/profiles/uaprof/9650_umts/6.0.0.rdf' => array( 'RIM', 'BlackBerry Bold 9650', 'BlackBerry OS', TYPE_MOBILE ),
 
 
3220
  'http://www.blackberry.net/go/mobile/profiles/uaprof/9700_80211b/6.0.0.rdf' => array( 'RIM', 'BlackBerry Bold 9700', 'BlackBerry OS', TYPE_MOBILE ),
3221
  'http://www.blackberry.net/go/mobile/profiles/uaprof/9700_80211g/5.0.0.rdf' => array( 'RIM', 'BlackBerry Bold 9700', 'BlackBerry OS', TYPE_MOBILE ),
3222
  'http://www.blackberry.net/go/mobile/profiles/uaprof/9700_80211g/6.0.0.rdf' => array( 'RIM', 'BlackBerry Bold 9700', 'BlackBerry OS', TYPE_MOBILE ),
3223
  'http://www.blackberry.net/go/mobile/profiles/uaprof/9700_edge/5.0.0.rdf' => array( 'RIM', 'BlackBerry Bold 9700', 'BlackBerry OS', TYPE_MOBILE ),
3224
  'http://www.blackberry.net/go/mobile/profiles/uaprof/9700_edge/6.0.0.rdf' => array( 'RIM', 'BlackBerry Bold 9700', 'BlackBerry OS', TYPE_MOBILE ),
 
3225
  'http://www.blackberry.net/go/mobile/profiles/uaprof/9700_gprs/6.0.0.rdf' => array( 'RIM', 'BlackBerry Bold 9700', 'BlackBerry OS', TYPE_MOBILE ),
3226
  'http://www.blackberry.net/go/mobile/profiles/uaprof/9700_umts/5.0.0.rdf' => array( 'RIM', 'BlackBerry Bold 9700', 'BlackBerry OS', TYPE_MOBILE ),
3227
  'http://www.blackberry.net/go/mobile/profiles/uaprof/9700_umts/6.0.0.rdf' => array( 'RIM', 'BlackBerry Bold 9700', 'BlackBerry OS', TYPE_MOBILE ),
 
3228
  'http://www.blackberry.net/go/mobile/profiles/uaprof/9780_80211b/6.0.0.rdf' => array( 'RIM', 'BlackBerry Bold 9780', 'BlackBerry OS', TYPE_MOBILE ),
3229
  'http://www.blackberry.net/go/mobile/profiles/uaprof/9780_80211g/6.0.0.rdf' => array( 'RIM', 'BlackBerry Bold 9780', 'BlackBerry OS', TYPE_MOBILE ),
3230
  'http://www.blackberry.net/go/mobile/profiles/uaprof/9780_edge/6.0.0.rdf' => array( 'RIM', 'BlackBerry Bold 9780', 'BlackBerry OS', TYPE_MOBILE ),
@@ -3234,6 +3711,7 @@
3234
  'http://www.blackberry.net/go/mobile/profiles/uaprof/9788_80211g/6.0.0.rdf' => array( 'RIM', 'BlackBerry Bold 9788', 'BlackBerry OS', TYPE_MOBILE ),
3235
  'http://www.blackberry.net/go/mobile/profiles/uaprof/9788_edge/6.0.0.rdf' => array( 'RIM', 'BlackBerry Bold 9788', 'BlackBerry OS', TYPE_MOBILE ),
3236
  'http://www.blackberry.net/go/mobile/profiles/uaprof/9790/7.0.0.rdf' => array( 'RIM', 'BlackBerry Bold 9790', 'BlackBerry OS', TYPE_MOBILE ),
 
3237
  'http://www.blackberry.net/go/mobile/profiles/uaprof/9790_80211a/7.1.0.rdf' => array( 'RIM', 'BlackBerry Bold 9790', 'BlackBerry OS', TYPE_MOBILE ),
3238
  'http://www.blackberry.net/go/mobile/profiles/uaprof/9790_80211g/7.0.0.rdf' => array( 'RIM', 'BlackBerry Bold 9790', 'BlackBerry OS', TYPE_MOBILE ),
3239
  'http://www.blackberry.net/go/mobile/profiles/uaprof/9790_80211g/7.1.0.rdf' => array( 'RIM', 'BlackBerry Bold 9790', 'BlackBerry OS', TYPE_MOBILE ),
@@ -3272,26 +3750,41 @@
3272
  'http://www.blackberry.net/go/mobile/profiles/uaprof/8300/4.5.0.rdf' => array( 'RIM', 'BlackBerry Curve 8300', 'BlackBerry OS', TYPE_MOBILE ),
3273
  'http://www.blackberry.net/go/mobile/profiles/uaprof/8310/4.2.2.rdf' => array( 'RIM', 'BlackBerry Curve 8310', 'BlackBerry OS', TYPE_MOBILE ),
3274
  'http://www.blackberry.net/go/mobile/profiles/uaprof/8330/4.3.0.rdf' => array( 'RIM', 'BlackBerry Curve 8330', 'BlackBerry OS', TYPE_MOBILE ),
 
 
3275
  'http://www.blackberry.net/go/mobile/profiles/uaprof/8520_80211g/4.6.1.rdf' => array( 'RIM', 'BlackBerry Curve 8520', 'BlackBerry OS', TYPE_MOBILE ),
3276
  'http://www.blackberry.net/go/mobile/profiles/uaprof/8520_80211g/5.0.0.rdf' => array( 'RIM', 'BlackBerry Curve 8520', 'BlackBerry OS', TYPE_MOBILE ),
3277
  'http://www.blackberry.net/go/mobile/profiles/uaprof/8520_edge/4.6.1.rdf' => array( 'RIM', 'BlackBerry Curve 8520', 'BlackBerry OS', TYPE_MOBILE ),
3278
  'http://www.blackberry.net/go/mobile/profiles/uaprof/8520_edge/5.0.0.rdf' => array( 'RIM', 'BlackBerry Curve 8520', 'BlackBerry OS', TYPE_MOBILE ),
 
3279
  'http://www.blackberry.net/go/mobile/profiles/uaprof/8520_gprs/5.0.0.rdf' => array( 'RIM', 'BlackBerry Curve 8520', 'BlackBerry OS', TYPE_MOBILE ),
3280
  'http://www.blackberry.net/go/mobile/profiles/uaprof/8520_usb/5.0.0.rdf' => array( 'RIM', 'BlackBerry Curve 8520', 'BlackBerry OS', TYPE_MOBILE ),
 
 
 
 
 
3281
  'http://www.blackberry.net/go/mobile/profiles/uaprof/8530_80211g/5.0.0.rdf' => array( 'RIM', 'BlackBerry Curve 8530', 'BlackBerry OS', TYPE_MOBILE ),
3282
  'http://www.blackberry.net/go/mobile/profiles/uaprof/8530_evdo/5.0.0.rdf' => array( 'RIM', 'BlackBerry Curve 8530', 'BlackBerry OS', TYPE_MOBILE ),
 
3283
  'http://www.blackberry.net/go/mobile/profiles/uaprof/8900_80211g/4.6.1.rdf' => array( 'RIM', 'BlackBerry Curve 8900', 'BlackBerry OS', TYPE_MOBILE ),
3284
  'http://www.blackberry.net/go/mobile/profiles/uaprof/8900_80211g/5.0.0.rdf' => array( 'RIM', 'BlackBerry Curve 8900', 'BlackBerry OS', TYPE_MOBILE ),
 
3285
  'http://www.blackberry.net/go/mobile/profiles/uaprof/8900_edge/5.0.0.rdf' => array( 'RIM', 'BlackBerry Curve 8900', 'BlackBerry OS', TYPE_MOBILE ),
 
3286
  'http://www.blackberry.net/go/mobile/profiles/uaprof/9220_80211g/7.1.0.rdf' => array( 'RIM', 'BlackBerry Curve 9220', 'BlackBerry OS', TYPE_MOBILE ),
3287
  'http://www.blackberry.net/go/mobile/profiles/uaprof/9220_edge/7.1.0.rdf' => array( 'RIM', 'BlackBerry Curve 9220', 'BlackBerry OS', TYPE_MOBILE ),
3288
  'http://www.blackberry.net/go/mobile/profiles/uaprof/9220_gprs/7.1.0.rdf' => array( 'RIM', 'BlackBerry Curve 9220', 'BlackBerry OS', TYPE_MOBILE ),
 
 
3289
  'http://www.blackberry.net/go/mobile/profiles/uaprof/9300_80211g/5.0.0.rdf' => array( 'RIM', 'BlackBerry Curve 9300', 'BlackBerry OS', TYPE_MOBILE ),
3290
  'http://www.blackberry.net/go/mobile/profiles/uaprof/9300_80211g/6.0.0.rdf' => array( 'RIM', 'BlackBerry Curve 9300', 'BlackBerry OS', TYPE_MOBILE ),
 
3291
  'http://www.blackberry.net/go/mobile/profiles/uaprof/9300_edge/6.0.0.rdf' => array( 'RIM', 'BlackBerry Curve 9300', 'BlackBerry OS', TYPE_MOBILE ),
3292
  'http://www.blackberry.net/go/mobile/profiles/uaprof/9300_gprs/6.0.0.rdf' => array( 'RIM', 'BlackBerry Curve 9300', 'BlackBerry OS', TYPE_MOBILE ),
3293
  'http://www.blackberry.net/go/mobile/profiles/uaprof/9300_umts/5.0.0.rdf' => array( 'RIM', 'BlackBerry Curve 9300', 'BlackBerry OS', TYPE_MOBILE ),
3294
  'http://www.blackberry.net/go/mobile/profiles/uaprof/9300_umts/6.0.0.rdf' => array( 'RIM', 'BlackBerry Curve 9300', 'BlackBerry OS', TYPE_MOBILE ),
 
3295
  'http://www.blackberry.net/go/mobile/profiles/uaprof/9310_80211g/7.1.0.rdf' => array( 'RIM', 'BlackBerry Curve 9310', 'BlackBerry OS', TYPE_MOBILE ),
3296
  'http://www.blackberry.net/go/mobile/profiles/uaprof/9310_evdo/7.1.0.rdf' => array( 'RIM', 'BlackBerry Curve 9310', 'BlackBerry OS', TYPE_MOBILE ),
3297
  'http://www.blackberry.net/go/mobile/profiles/uaprof/9315_80211g/7.1.0.rdf' => array( 'RIM', 'BlackBerry Curve 9315', 'BlackBerry OS', TYPE_MOBILE ),
@@ -3303,8 +3796,11 @@
3303
  'http://www.blackberry.net/go/mobile/profiles/uaprof/9320_umts/7.1.0.rdf' => array( 'RIM', 'BlackBerry Curve 9320', 'BlackBerry OS', TYPE_MOBILE ),
3304
  'http://www.blackberry.net/go/mobile/profiles/uaprof/9320_usb/7.1.0.rdf' => array( 'RIM', 'BlackBerry Curve 9320', 'BlackBerry OS', TYPE_MOBILE ),
3305
  'http://device.sprintpcs.com/RIM/BlackBerry9330/6.0.0.707.rdf' => array( 'RIM', 'BlackBerry Curve 9330', 'BlackBerry OS', TYPE_MOBILE ),
 
 
3306
  'http://www.blackberry.net/go/mobile/profiles/uaprof/9330_1x/6.0.0.rdf' => array( 'RIM', 'BlackBerry Curve 9330', 'BlackBerry OS', TYPE_MOBILE ),
3307
  'http://www.blackberry.net/go/mobile/profiles/uaprof/9330_80211g/6.0.0.rdf' => array( 'RIM', 'BlackBerry Curve 9330', 'BlackBerry OS', TYPE_MOBILE ),
 
3308
  'http://www.blackberry.net/go/mobile/profiles/uaprof/9330_evdo/6.0.0.rdf' => array( 'RIM', 'BlackBerry Curve 9330', 'BlackBerry OS', TYPE_MOBILE ),
3309
  'http://device.sprintpcs.com/RIM/BlackBerry9350/7.1.0.580.rdf' => array( 'RIM', 'BlackBerry Curve 9350', 'BlackBerry OS', TYPE_MOBILE ),
3310
  'http://device.sprintpcs.com/RIM/BlackBerry9350/7.1.0.714.rdf' => array( 'RIM', 'BlackBerry Curve 9350', 'BlackBerry OS', TYPE_MOBILE ),
@@ -3313,6 +3809,8 @@
3313
  'http://www.blackberry.net/go/mobile/profiles/uaprof/9350_80211g/7.1.0.rdf' => array( 'RIM', 'BlackBerry Curve 9350', 'BlackBerry OS', TYPE_MOBILE ),
3314
  'http://www.blackberry.net/go/mobile/profiles/uaprof/9350_evdo/7.0.0.rdf' => array( 'RIM', 'BlackBerry Curve 9350', 'BlackBerry OS', TYPE_MOBILE ),
3315
  'http://www.blackberry.net/go/mobile/profiles/uaprof/9350_evdo/7.1.0.rdf' => array( 'RIM', 'BlackBerry Curve 9350', 'BlackBerry OS', TYPE_MOBILE ),
 
 
3316
  'http://www.blackberry.net/go/mobile/profiles/uaprof/9360_80211g/7.0.0.rdf' => array( 'RIM', 'BlackBerry Curve 9360', 'BlackBerry OS', TYPE_MOBILE ),
3317
  'http://www.blackberry.net/go/mobile/profiles/uaprof/9360_80211g/7.1.0.rdf' => array( 'RIM', 'BlackBerry Curve 9360', 'BlackBerry OS', TYPE_MOBILE ),
3318
  'http://www.blackberry.net/go/mobile/profiles/uaprof/9360_edge/7.0.0.rdf' => array( 'RIM', 'BlackBerry Curve 9360', 'BlackBerry OS', TYPE_MOBILE ),
@@ -3328,6 +3826,8 @@
3328
  'http://www.blackberry.net/go/mobile/profiles/uaprof/9370_edge/7.1.0.rdf' => array( 'RIM', 'BlackBerry Curve 9370', 'BlackBerry OS', TYPE_MOBILE ),
3329
  'http://www.blackberry.net/go/mobile/profiles/uaprof/9370_evdo/7.0.0.rdf' => array( 'RIM', 'BlackBerry Curve 9370', 'BlackBerry OS', TYPE_MOBILE ),
3330
  'http://www.blackberry.net/go/mobile/profiles/uaprof/9370_evdo/7.1.0.rdf' => array( 'RIM', 'BlackBerry Curve 9370', 'BlackBerry OS', TYPE_MOBILE ),
 
 
3331
  'http://www.blackberry.net/go/mobile/profiles/uaprof/9380_80211g/7.0.0.rdf' => array( 'RIM', 'BlackBerry Curve 9380', 'BlackBerry OS', TYPE_MOBILE ),
3332
  'http://www.blackberry.net/go/mobile/profiles/uaprof/9380_80211g/7.1.0.rdf' => array( 'RIM', 'BlackBerry Curve 9380', 'BlackBerry OS', TYPE_MOBILE ),
3333
  'http://www.blackberry.net/go/mobile/profiles/uaprof/9380_edge/7.0.0.rdf' => array( 'RIM', 'BlackBerry Curve 9380', 'BlackBerry OS', TYPE_MOBILE ),
@@ -3338,10 +3838,13 @@
3338
  'http://www.blackberry.net/go/mobile/profiles/uaprof/9380_umts/7.1.0.rdf' => array( 'RIM', 'BlackBerry Curve 9380', 'BlackBerry OS', TYPE_MOBILE ),
3339
  'http://www.blackberry.net/go/mobile/profiles/uaprof/8100/4.2.1.rdf' => array( 'RIM', 'BlackBerry Pearl 8100', 'BlackBerry OS', TYPE_MOBILE ),
3340
  'http://www.blackberry.net/go/mobile/profiles/uaprof/8120/4.3.0.rdf' => array( 'RIM', 'BlackBerry Pearl 8120', 'BlackBerry OS', TYPE_MOBILE ),
 
3341
  'http://www.blackberry.net/go/mobile/profiles/uaprof/9100/4.6.0.rdf' => array( 'RIM', 'BlackBerry Pearl 9100', 'BlackBerry OS', TYPE_MOBILE ),
3342
  'http://www.blackberry.net/go/mobile/profiles/uaprof/9100_80211g/6.0.0.rdf' => array( 'RIM', 'BlackBerry Pearl 9100', 'BlackBerry OS', TYPE_MOBILE ),
3343
  'http://www.blackberry.net/go/mobile/profiles/uaprof/9100_edge/6.0.0.rdf' => array( 'RIM', 'BlackBerry Pearl 9100', 'BlackBerry OS', TYPE_MOBILE ),
3344
  'http://www.blackberry.net/go/mobile/profiles/uaprof/9100_umts/6.0.0.rdf' => array( 'RIM', 'BlackBerry Pearl 9100', 'BlackBerry OS', TYPE_MOBILE ),
 
 
3345
  'http://www.blackberry.net/go/mobile/profiles/uaprof/9105_80211g/5.0.0.rdf' => array( 'RIM', 'BlackBerry Pearl 9105', 'BlackBerry OS', TYPE_MOBILE ),
3346
  'http://www.blackberry.net/go/mobile/profiles/uaprof/9105_80211g/6.0.0.rdf' => array( 'RIM', 'BlackBerry Pearl 9105', 'BlackBerry OS', TYPE_MOBILE ),
3347
  'http://www.blackberry.net/go/mobile/profiles/uaprof/9105_edge/5.0.0.rdf' => array( 'RIM', 'BlackBerry Pearl 9105', 'BlackBerry OS', TYPE_MOBILE ),
@@ -3356,25 +3859,40 @@
3356
  'http://www.blackberry.net/go/mobile/profiles/uaprof/9981_gprs/7.1.0.rdf' => array( 'RIM', 'BlackBerry Porsche P 9981', 'BlackBerry OS', TYPE_MOBILE ),
3357
  'http://www.blackberry.net/go/mobile/profiles/uaprof/9981_umts/7.0.0.rdf' => array( 'RIM', 'BlackBerry Porsche P 9981', 'BlackBerry OS', TYPE_MOBILE ),
3358
  'http://www.blackberry.net/go/mobile/profiles/uaprof/9981_umts/7.1.0.rdf' => array( 'RIM', 'BlackBerry Porsche P 9981', 'BlackBerry OS', TYPE_MOBILE ),
 
3359
  'http://www.blackberry.net/go/mobile/profiles/uaprof/9500_edge/4.7.0.rdf' => array( 'RIM', 'BlackBerry Storm 9500', 'BlackBerry OS', TYPE_MOBILE ),
 
 
3360
  'http://www.blackberry.net/go/mobile/profiles/uaprof/9500_umts/5.0.0.rdf' => array( 'RIM', 'BlackBerry Storm 9500', 'BlackBerry OS', TYPE_MOBILE ),
3361
  'http://www.blackberry.net/go/mobile/profiles/uaprof/9530_edge/5.0.0.rdf' => array( 'RIM', 'BlackBerry Storm 9530', 'BlackBerry OS', TYPE_MOBILE ),
3362
  'http://www.blackberry.net/go/mobile/profiles/uaprof/9530_evdo/4.6.0.rdf' => array( 'RIM', 'BlackBerry Storm 9530', 'BlackBerry OS', TYPE_MOBILE ),
3363
  'http://www.blackberry.net/go/mobile/profiles/uaprof/9530_gprs/4.7.0.rdf' => array( 'RIM', 'BlackBerry Storm 9530', 'BlackBerry OS', TYPE_MOBILE ),
3364
  'http://www.blackberry.net/go/mobile/profiles/uaprof/9530_umts/4.7.0.rdf' => array( 'RIM', 'BlackBerry Storm 9530', 'BlackBerry OS', TYPE_MOBILE ),
 
 
3365
  'http://www.blackberry.net/go/mobile/profiles/uaprof/9550_80211g/5.0.0.rdf' => array( 'RIM', 'BlackBerry Storm 9550', 'BlackBerry OS', TYPE_MOBILE ),
 
3366
  'http://www.blackberry.net/go/mobile/profiles/uaprof/9550_evdo/5.0.0.rdf' => array( 'RIM', 'BlackBerry Storm 9550', 'BlackBerry OS', TYPE_MOBILE ),
 
 
3367
  'http://www.blackberry.net/go/mobile/profiles/uaprof/9520_80211g/5.0.0.rdf' => array( 'RIM', 'BlackBerry Storm2 9520', 'BlackBerry OS', TYPE_MOBILE ),
 
 
 
 
 
3368
  'http://www.blackberry.net/go/mobile/profiles/uaprof/9670_1x/6.0.0.rdf' => array( 'RIM', 'BlackBerry Style 9670', 'BlackBerry OS', TYPE_MOBILE ),
3369
  'http://www.blackberry.net/go/mobile/profiles/uaprof/9670_80211b/6.0.0.rdf' => array( 'RIM', 'BlackBerry Style 9670', 'BlackBerry OS', TYPE_MOBILE ),
3370
  'http://www.blackberry.net/go/mobile/profiles/uaprof/9670_80211g/6.0.0.rdf' => array( 'RIM', 'BlackBerry Style 9670', 'BlackBerry OS', TYPE_MOBILE ),
3371
  'http://www.blackberry.net/go/mobile/profiles/uaprof/9670_evdo/6.0.0.rdf' => array( 'RIM', 'BlackBerry Style 9670', 'BlackBerry OS', TYPE_MOBILE ),
3372
  'http://www.blackberry.net/go/mobile/profiles/uaprof/9800/6.0.0.rdf' => array( 'RIM', 'BlackBerry Torch 9800', 'BlackBerry OS', TYPE_MOBILE ),
 
3373
  'http://www.blackberry.net/go/mobile/profiles/uaprof/9800_80211g/6.0.0.rdf' => array( 'RIM', 'BlackBerry Torch 9800', 'BlackBerry OS', TYPE_MOBILE ),
3374
  'http://www.blackberry.net/go/mobile/profiles/uaprof/9800_edge/6.0.0.rdf' => array( 'RIM', 'BlackBerry Torch 9800', 'BlackBerry OS', TYPE_MOBILE ),
3375
  'http://www.blackberry.net/go/mobile/profiles/uaprof/9800_gprs/6.0.0.rdf' => array( 'RIM', 'BlackBerry Torch 9800', 'BlackBerry OS', TYPE_MOBILE ),
3376
  'http://www.blackberry.net/go/mobile/profiles/uaprof/9800_umts/6.0.0.rdf' => array( 'RIM', 'BlackBerry Torch 9800', 'BlackBerry OS', TYPE_MOBILE ),
3377
  'http://www.blackberry.net/go/mobile/profiles/uaprof/9800_usb/6.0.0.rdf' => array( 'RIM', 'BlackBerry Torch 9800', 'BlackBerry OS', TYPE_MOBILE ),
 
3378
  'http://www.blackberry.net/go/mobile/profiles/uaprof/9810/7.1.0.rdf' => array( 'RIM', 'BlackBerry Torch 9810', 'BlackBerry OS', TYPE_MOBILE ),
3379
  'http://www.blackberry.net/go/mobile/profiles/uaprof/9810_80211g/6.1.0.rdf' => array( 'RIM', 'BlackBerry Torch 9810', 'BlackBerry OS', TYPE_MOBILE ),
3380
  'http://www.blackberry.net/go/mobile/profiles/uaprof/9810_80211g/7.0.0.rdf' => array( 'RIM', 'BlackBerry Torch 9810', 'BlackBerry OS', TYPE_MOBILE ),
@@ -3397,6 +3915,7 @@
3397
  'http://www.blackberry.net/go/mobile/profiles/uaprof/9850_umts/7.0.0.rdf' => array( 'RIM', 'BlackBerry Torch 9850', 'BlackBerry OS', TYPE_MOBILE ),
3398
  'http://www.blackberry.net/go/mobile/profiles/uaprof/9850_umts/7.1.0.rdf' => array( 'RIM', 'BlackBerry Torch 9850', 'BlackBerry OS', TYPE_MOBILE ),
3399
  'http://www.blackberry.net/go/mobile/profiles/uaprof/9860/7.0.0.rdf' => array( 'RIM', 'BlackBerry Torch 9860', 'BlackBerry OS', TYPE_MOBILE ),
 
3400
  'http://www.blackberry.net/go/mobile/profiles/uaprof/9860_80211g/6.1.0.rdf' => array( 'RIM', 'BlackBerry Torch 9860', 'BlackBerry OS', TYPE_MOBILE ),
3401
  'http://www.blackberry.net/go/mobile/profiles/uaprof/9860_80211g/7.0.0.rdf' => array( 'RIM', 'BlackBerry Torch 9860', 'BlackBerry OS', TYPE_MOBILE ),
3402
  'http://www.blackberry.net/go/mobile/profiles/uaprof/9860_80211g/7.1.0.rdf' => array( 'RIM', 'BlackBerry Torch 9860', 'BlackBerry OS', TYPE_MOBILE ),
@@ -3408,6 +3927,11 @@
3408
  'http://www.blackberry.net/go/mobile/profiles/uaprof/9860_umts/7.1.0.rdf' => array( 'RIM', 'BlackBerry Torch 9860', 'BlackBerry OS', TYPE_MOBILE ),
3409
  'http://www.blackberry.net/go/mobile/profiles/uaprof/9860_usb/7.0.0.rdf' => array( 'RIM', 'BlackBerry Torch 9860', 'BlackBerry OS', TYPE_MOBILE ),
3410
  'http://www.blackberry.net/go/mobile/profiles/uaprof/9860_usb/7.1.0.rdf' => array( 'RIM', 'BlackBerry Torch 9860', 'BlackBerry OS', TYPE_MOBILE ),
 
 
 
 
 
3411
  'http://extranet.sagem.com/UAProfile/823044.xml' => array( 'Sagem', '3XXX', NULL, TYPE_MOBILE ),
3412
  'http://extranet.sagem.com/UAProfile/890054.xml' => array( 'Sagem', 'CO210', NULL, TYPE_MOBILE ),
3413
  'http://extranet.sagem.com/UAProfile/897807.xml' => array( 'Sagem', 'MC2007', NULL, TYPE_MOBILE ),
@@ -3456,6 +3980,7 @@
3456
  'http://extranet.sagem.com/UAProfile/P9521.xml' => array( 'Sagem', 'Porsche Design P9521', NULL, TYPE_MOBILE ),
3457
  'http://extranet.sagem.com/UAProfile/898770.xml' => array( 'Sagem', 'VF526', NULL, TYPE_MOBILE ),
3458
  'http://extranet.sagem.com/UAProfile/899483.xml' => array( 'Sagem', 'VF533', NULL, TYPE_MOBILE ),
 
3459
  'http://wap.samsungmobile.com/uaprof/SGH-A827.xml' => array( 'Samsung', 'Access', NULL, TYPE_MOBILE ),
3460
  'http://uaprof.qma.com.tw/SAMSUNG-SCH-I619_CHN_BRI.xml' => array( 'Samsung', 'Ace A+', 'Android', TYPE_MOBILE ),
3461
  'http://wap.samsungmobile.com/uaprof/GT-B6520.xml' => array( 'Samsung', 'B6520 OmniaPRO 5', 'Windows Mobile', TYPE_MOBILE ),
@@ -3488,13 +4013,19 @@
3488
  'http://wap.samsungmobile.com/uaprof/GT-E2262UAProf.xml' => array( 'Samsung', 'Ch@t 226', NULL, TYPE_MOBILE ),
3489
  'http://wap.samsungmobile.com/uaprof/GT-C3222.xml' => array( 'Samsung', 'Ch@t 322', NULL, TYPE_MOBILE ),
3490
  'http://wap.samsungmobile.com/uaprof/GT-C3222BR.xml' => array( 'Samsung', 'Ch@t 322', NULL, TYPE_MOBILE ),
 
3491
  'http://wap.samsungmobile.com/uaprof/GT-S3350UAProf.xml' => array( 'Samsung', 'Ch@t 335', NULL, TYPE_MOBILE ),
 
3492
  'http://wap.samsungmobile.com/uaprof/GT-C3500.xml' => array( 'Samsung', 'Ch@t 350', NULL, TYPE_MOBILE ),
3493
  'http://wap.samsungmobile.com/uaprof/GT-S3570.xml' => array( 'Samsung', 'Ch@t 357', NULL, TYPE_MOBILE ),
 
 
3494
  'http://wap.samsungmobile.com/uaprof/GT-S5270L_3G.xml' => array( 'Samsung', 'Ch@t 527', NULL, TYPE_MOBILE ),
3495
  'http://wap.samsungmobile.com/uaprof/GT-S5270Y_3G.xml' => array( 'Samsung', 'Ch@t 527', NULL, TYPE_MOBILE ),
 
3496
  'http://wap.samsungmobile.com/uaprof/GT-C3300i.xml' => array( 'Samsung', 'Champ', 'Touchwiz', TYPE_MOBILE ),
3497
  'http://wap.samsungmobile.com/uaprof/GT-C3303.xml' => array( 'Samsung', 'Champ', 'Touchwiz', TYPE_MOBILE ),
 
3498
  'http://wap.samsungmobile.com/uaprof/GT-C3330UAProf.xml' => array( 'Samsung', 'Champ 2', 'Touchwiz', TYPE_MOBILE ),
3499
  'http://wap.samsungmobile.com/uaprof/GT-C3332UAProf.xml' => array( 'Samsung', 'Champ 2', 'Touchwiz', TYPE_MOBILE ),
3500
  'http://wap.samsungmobile.com/uaprof/GT-S3770_2G.rdf' => array( 'Samsung', 'Champ 3G', 'TouchWiz', TYPE_MOBILE ),
@@ -3504,10 +4035,12 @@
3504
  'http://wap.samsungmobile.com/uaprof/GT-C3312RUAProf.xml' => array( 'Samsung', 'Champ Deluxe Duos', 'Touchwiz', TYPE_MOBILE ),
3505
  'http://wap.samsungmobile.com/uaprof/GT-C3312UAProf.xml' => array( 'Samsung', 'Champ Deluxe Duos', 'Touchwiz', TYPE_MOBILE ),
3506
  'http://wap.samsungmobile.com/uaprof/GT-E2652WUAProf.xml' => array( 'Samsung', 'Champ Duos', 'Touchwiz', TYPE_MOBILE ),
 
3507
  'http://device.sprintpcs.com/Samsung/SPH-D600/FE16.rdf' => array( 'Samsung', 'Conquer 4G', 'Android', TYPE_MOBILE ),
3508
  'http://wap.samsungmobile.com/uaprof/GT-B3310UAProf.xml' => array( 'Samsung', 'Corby', NULL, TYPE_MOBILE ),
3509
  'http://wap.samsungmobile.com/uaprof/GT-S3650.rdf' => array( 'Samsung', 'Corby', 'Touchwiz', TYPE_MOBILE ),
3510
  'http://wap.samsungmobile.com/uaprof/GT-S3650.xml' => array( 'Samsung', 'Corby', 'Touchwiz', TYPE_MOBILE ),
 
3511
  'http://wap.samsungmobile.com/uaprof/GT-S3653.rdf' => array( 'Samsung', 'Corby', 'Touchwiz', TYPE_MOBILE ),
3512
  'http://wap.samsungmobile.com/uaprof/GT-S3653W.rdf' => array( 'Samsung', 'Corby', 'Touchwiz', TYPE_MOBILE ),
3513
  'http://wap.samsungmobile.com/uaprof/GT-S3370.rdf' => array( 'Samsung', 'Corby 3G', 'Touchwiz', TYPE_MOBILE ),
@@ -3515,6 +4048,7 @@
3515
  'http://wap.samsungmobile.com/uaprof/GT-M3710TCE.xml' => array( 'Samsung', 'Corby Beat', 'Touchwiz', TYPE_MOBILE ),
3516
  'http://wap.samsungmobile.com/uaprof/GT-S3850.rdf' => array( 'Samsung', 'Corby II', 'Touchwiz', TYPE_MOBILE ),
3517
  'http://wap.samsungmobile.com/uaprof/GT-S3850BR.xml' => array( 'Samsung', 'Corby II', 'Touchwiz', TYPE_MOBILE ),
 
3518
  'http://wap.samsungmobile.com/uaprof/GT-C3510T.rdf' => array( 'Samsung', 'Corby Pop', NULL, TYPE_MOBILE ),
3519
  'http://wap.samsungmobile.com/uaprof/GT-B5310.rdf' => array( 'Samsung', 'Corby Pro', 'Touchwiz', TYPE_MOBILE ),
3520
  'http://wap.samsungmobile.com/uaprof/GT-B5310_3G.rdf' => array( 'Samsung', 'Corby Pro', 'Touchwiz', TYPE_MOBILE ),
@@ -3535,10 +4069,12 @@
3535
  'http://wap.samsungmobile.com/uaprof/SGH-A867.xml' => array( 'Samsung', 'Eternity', NULL, TYPE_MOBILE ),
3536
  'http://wap.samsungmobile.com/uaprof/SGH-T759.xml' => array( 'Samsung', 'Exhibit 4G', 'Android', TYPE_MOBILE ),
3537
  'http://nmsc.ctvap.cn/uaprof/SCH/SCH_F839_3_20090707.xml' => array( 'Samsung', 'F839', 'Brew', TYPE_MOBILE ),
 
3538
  'http://wap.samsungmobile.com/uaprof/GT-i5500.xml' => array( 'Samsung', 'Galaxy 5', 'Android', TYPE_MOBILE ),
3539
  'http://wap.samsungmobile.com/uaprof/GT-i5500B.xml' => array( 'Samsung', 'Galaxy 5', 'Android', TYPE_MOBILE ),
3540
  'http://wap.samsungmobile.com/uaprof/GT-i5500L.xml' => array( 'Samsung', 'Galaxy 5', 'Android', TYPE_MOBILE ),
3541
  'http://wap.samsungmobile.com/uaprof/GT-i5503.xml' => array( 'Samsung', 'Galaxy 5', 'Android', TYPE_MOBILE ),
 
3542
  'http://wap.samsungmobile.com/uaprof/GT-i5510.xml' => array( 'Samsung', 'Galaxy 551', 'Android', TYPE_MOBILE ),
3543
  'http://wap.samsungmobile.com/uaprof/GT-I5510BR.xml' => array( 'Samsung', 'Galaxy 551', 'Android', TYPE_MOBILE ),
3544
  'http://wap.samsungmobile.com/uaprof/GT-I5510L.xml' => array( 'Samsung', 'Galaxy 551', 'Android', TYPE_MOBILE ),
@@ -3555,6 +4091,8 @@
3555
  'http://wap.samsungmobile.com/uaprof/GT-S5830L.xml' => array( 'Samsung', 'Galaxy Ace', 'Android', TYPE_MOBILE ),
3556
  'http://wap.samsungmobile.com/uaprof/GT-S5830M.xml' => array( 'Samsung', 'Galaxy Ace', 'Android', TYPE_MOBILE ),
3557
  'http://wap.samsungmobile.com/uaprof/GT-S5830T.xml' => array( 'Samsung', 'Galaxy Ace', 'Android', TYPE_MOBILE ),
 
 
3558
  'http://wap.samsungmobile.com/uaprof/GT-S5839i.xml' => array( 'Samsung', 'Galaxy Ace', 'Android', TYPE_MOBILE ),
3559
  'http://wap.samsungmobile.com/uaprof/GT-S5839iBO.xml' => array( 'Samsung', 'Galaxy Ace', 'Android', TYPE_MOBILE ),
3560
  'http://wap.samsungmobile.com/uaprof/GT-S5839iBV.xml' => array( 'Samsung', 'Galaxy Ace', 'Android', TYPE_MOBILE ),
@@ -3564,6 +4102,12 @@
3564
  'http://wap.samsungmobile.com/uaprof/GT-I8160L.xml' => array( 'Samsung', 'Galaxy Ace 2', 'Android', TYPE_MOBILE ),
3565
  'http://wap.samsungmobile.com/uaprof/GT-I8160P.xml' => array( 'Samsung', 'Galaxy Ace 2', 'Android', TYPE_MOBILE ),
3566
  'http://wap.samsungmobile.com/uaprof/GT-S7270.xml' => array( 'Samsung', 'Galaxy Ace 3', 'Android', TYPE_MOBILE ),
 
 
 
 
 
 
3567
  'http://nmsc.ctvap.cn/uaprof/SCH/SCH_I619_1_20120112.xml' => array( 'Samsung', 'Galaxy Ace A+', 'Android', TYPE_MOBILE ),
3568
  'http://wap.samsungmobile.com/uaprof/SCH-I619.xml' => array( 'Samsung', 'Galaxy Ace A+', 'Android', TYPE_MOBILE ),
3569
  'http://nmsc.ctvap.cn/uaprof/SCH/SCH_i589_1_20110504.xml' => array( 'Samsung', 'Galaxy Ace Duos', 'Android', TYPE_MOBILE ),
@@ -3571,6 +4115,7 @@
3571
  'http://wap.samsungmobile.com/uaprof/GT-S6802.xml' => array( 'Samsung', 'Galaxy Ace Duos', 'Android', TYPE_MOBILE ),
3572
  'http://wap.samsungmobile.com/uaprof/GT-S6802B.xml' => array( 'Samsung', 'Galaxy Ace Duos', 'Android', TYPE_MOBILE ),
3573
  'http://wap.samsungmobile.com/uaprof/GT-S7560.xml' => array( 'Samsung', 'Galaxy Ace II x', 'Android', TYPE_MOBILE ),
 
3574
  'http://wap.samsungmobile.com/uaprof/GT-S7560M.xml' => array( 'Samsung', 'Galaxy Ace II x', 'Android', TYPE_MOBILE ),
3575
  'http://nmsc.ctvap.cn/uaprof/SCH/SCH_I659_1_20120627.xml' => array( 'Samsung', 'Galaxy Ace Plus', 'Android', TYPE_MOBILE ),
3576
  'http://wap.samsungmobile.com/uaprof/GT-S7500.xml' => array( 'Samsung', 'Galaxy Ace Plus', 'Android', TYPE_MOBILE ),
@@ -3590,6 +4135,8 @@
3590
  'http://wap.samsungmobile.com/uaprof/GT-I8260L.xml' => array( 'Samsung', 'Galaxy Core', 'Android', TYPE_MOBILE ),
3591
  'http://wap.samsungmobile.com/uaprof/GT-I8262.xml' => array( 'Samsung', 'Galaxy Core', 'Android', TYPE_MOBILE ),
3592
  'http://wap.samsungmobile.com/uaprof/GT-I8262B.xml' => array( 'Samsung', 'Galaxy Core', 'Android', TYPE_MOBILE ),
 
 
3593
  'http://wap.samsungmobile.com/uaprof/SCH-S735C.xml' => array( 'Samsung', 'Galaxy Discover', 'Android', TYPE_MOBILE ),
3594
  'http://wap.samsungmobile.com/uaprof/SGH-S730G.xml' => array( 'Samsung', 'Galaxy Discover', 'Android', TYPE_MOBILE ),
3595
  'http://wap.samsungmobile.com/uaprof/SGH-S730M.xml' => array( 'Samsung', 'Galaxy Discover', 'Android', TYPE_MOBILE ),
@@ -3603,8 +4150,10 @@
3603
  'http://wap.samsungmobile.com/uaprof/GT-I8730T.xml' => array( 'Samsung', 'Galaxy Express', 'Android', TYPE_MOBILE ),
3604
  'http://wap.samsungmobile.com/uaprof/SGH-I437.xml' => array( 'Samsung', 'Galaxy Express', 'Android', TYPE_MOBILE ),
3605
  'http://wap.samsungmobile.com/uaprof/SGH-I437P.xml' => array( 'Samsung', 'Galaxy Express', 'Android', TYPE_MOBILE ),
 
3606
  'http://wap.samsungmobile.com/uaprof/GT-S6810.xml' => array( 'Samsung', 'Galaxy Fame', 'Android', TYPE_MOBILE ),
3607
  'http://wap.samsungmobile.com/uaprof/GT-S6810B.xml' => array( 'Samsung', 'Galaxy Fame', 'Android', TYPE_MOBILE ),
 
3608
  'http://wap.samsungmobile.com/uaprof/GT-S6810L.xml' => array( 'Samsung', 'Galaxy Fame', 'Android', TYPE_MOBILE ),
3609
  'http://wap.samsungmobile.com/uaprof/GT-S6810M.xml' => array( 'Samsung', 'Galaxy Fame', 'Android', TYPE_MOBILE ),
3610
  'http://wap.samsungmobile.com/uaprof/GT-S6810P.xml' => array( 'Samsung', 'Galaxy Fame', 'Android', TYPE_MOBILE ),
@@ -3618,14 +4167,22 @@
3618
  'http://wap.samsungmobile.com/uaprof/GT-S5660L.xml' => array( 'Samsung', 'Galaxy Gio', 'Android', TYPE_MOBILE ),
3619
  'http://wap.samsungmobile.com/uaprof/GT-S5660M.xml' => array( 'Samsung', 'Galaxy Gio', 'Android', TYPE_MOBILE ),
3620
  'http://wap.samsungmobile.com/uaprof/GT-S5660V.xml' => array( 'Samsung', 'Galaxy Gio', 'Android', TYPE_MOBILE ),
 
3621
  'http://wap.samsungmobile.com/uaprof/GT-I9080L.xml' => array( 'Samsung', 'Galaxy Grand', 'Android', TYPE_MOBILE ),
 
3622
  'http://wap.samsungmobile.com/uaprof/GT-I9082.xml' => array( 'Samsung', 'Galaxy Grand Duos', 'Android', TYPE_MOBILE ),
3623
  'http://wap.samsungmobile.com/uaprof/GT-I9082L.xml' => array( 'Samsung', 'Galaxy Grand Duos', 'Android', TYPE_MOBILE ),
 
 
3624
  'http://nmsc.ctvap.cn/uaprof/SCH/SCH_I759_1_20130111.xml' => array( 'Samsung', 'Galaxy Infinite', 'Android', TYPE_MOBILE ),
3625
  'http://uaprof.vtext.com/sam/SCH-I200PP/SCH-I200PP.xml' => array( 'Samsung', 'Galaxy Legend', 'Android', TYPE_MOBILE ),
 
 
3626
  'http://wap.samsungmobile.com/uaprof/GT-I9150.xml' => array( 'Samsung', 'Galaxy Mega 5.8', 'Android', TYPE_MOBILE ),
3627
  'http://wap.samsungmobile.com/uaprof/GT-I9152.xml' => array( 'Samsung', 'Galaxy Mega 5.8 Duos', 'Android', TYPE_MOBILE ),
3628
  'http://device.sprintpcs.com/Samsung/SPH-L600-SPRINT/MI6.rdf' => array( 'Samsung', 'Galaxy Mega 6.3', 'Android', TYPE_MOBILE ),
 
 
3629
  'http://nmsc.ctvap.cn/uaprof/SCH/SCH_P729_1_20130510.xml' => array( 'Samsung', 'Galaxy Mega 6.3', 'Android', TYPE_MOBILE ),
3630
  'http://wap.samsungmobile.com/uaprof/GT-I9200.xml' => array( 'Samsung', 'Galaxy Mega 6.3', 'Android', TYPE_MOBILE ),
3631
  'http://wap.samsungmobile.com/uaprof/GT-I9205.xml' => array( 'Samsung', 'Galaxy Mega 6.3', 'Android', TYPE_MOBILE ),
@@ -3654,6 +4211,7 @@
3654
  'http://wap.samsungmobile.com/uaprof/GT-I9220.xml' => array( 'Samsung', 'Galaxy Note', 'Android', TYPE_MOBILE ),
3655
  'http://wap.samsungmobile.com/uaprof/GT-I9228.xml' => array( 'Samsung', 'Galaxy Note', 'Android', TYPE_MOBILE ),
3656
  'http://wap.samsungmobile.com/uaprof/GT-N7000.xml' => array( 'Samsung', 'Galaxy Note', 'Android', TYPE_MOBILE ),
 
3657
  'http://wap.samsungmobile.com/uaprof/GT-N7000B.xml' => array( 'Samsung', 'Galaxy Note', 'Android', TYPE_MOBILE ),
3658
  'http://wap.samsungmobile.com/uaprof/GT-N7000BO.xml' => array( 'Samsung', 'Galaxy Note', 'Android', TYPE_MOBILE ),
3659
  'http://wap.samsungmobile.com/uaprof/GT-N7005.xml' => array( 'Samsung', 'Galaxy Note', 'Android', TYPE_MOBILE ),
@@ -3676,26 +4234,36 @@
3676
  'http://wap.samsungmobile.com/uaprof/SM-P600.xml' => array( 'Samsung', 'Galaxy Note 10.1 (2014)', 'Android', TYPE_TABLET ),
3677
  'http://wap.samsungmobile.com/uaprof/SM-P601.xml' => array( 'Samsung', 'Galaxy Note 10.1 (2014)', 'Android', TYPE_TABLET ),
3678
  'http://wap.samsungmobile.com/uaprof/SM-P605.xml' => array( 'Samsung', 'Galaxy Note 10.1 (2014)', 'Android', TYPE_TABLET ),
 
3679
  'http://wap.samsungmobile.com/uaprof/SM-P605M.xml' => array( 'Samsung', 'Galaxy Note 10.1 (2014)', 'Android', TYPE_TABLET ),
 
 
3680
  'http://device.sprintpcs.com/Samsung/SM-N900P-SPRINT/MI3.rdf' => array( 'Samsung', 'Galaxy Note 3', 'Android', TYPE_MOBILE ),
3681
  'http://device.sprintpcs.com/Samsung/SM-N900P-SPRINT/MI5.rdf' => array( 'Samsung', 'Galaxy Note 3', 'Android', TYPE_MOBILE ),
3682
  'http://device.sprintpcs.com/Samsung/SM-N900P-SPRINT/MJ4.rdf' => array( 'Samsung', 'Galaxy Note 3', 'Android', TYPE_MOBILE ),
 
 
3683
  'http://nmsc.ctvap.cn/uaprof/SCH/SCH_SM-N9009_2_20130829.xml' => array( 'Samsung', 'Galaxy Note 3', 'Android', TYPE_MOBILE ),
3684
  'http://wap.samsungmobile.com/uaprof/SAMSUNG-SM-N900A.xml' => array( 'Samsung', 'Galaxy Note 3', 'Android', TYPE_MOBILE ),
3685
  'http://wap.samsungmobile.com/uaprof/SM-N900.xml' => array( 'Samsung', 'Galaxy Note 3', 'Android', TYPE_MOBILE ),
3686
  'http://wap.samsungmobile.com/uaprof/SM-N9005.xml' => array( 'Samsung', 'Galaxy Note 3', 'Android', TYPE_MOBILE ),
3687
  'http://wap.samsungmobile.com/uaprof/SM-N9005BO.xml' => array( 'Samsung', 'Galaxy Note 3', 'Android', TYPE_MOBILE ),
 
3688
  'http://wap.samsungmobile.com/uaprof/SM-N9007.xml' => array( 'Samsung', 'Galaxy Note 3', 'Android', TYPE_MOBILE ),
3689
  'http://wap.samsungmobile.com/uaprof/SM-N900A.xml' => array( 'Samsung', 'Galaxy Note 3', 'Android', TYPE_MOBILE ),
3690
  'http://wap.samsungmobile.com/uaprof/SM-N900PET.xml' => array( 'Samsung', 'Galaxy Note 3', 'Android', TYPE_MOBILE ),
 
3691
  'http://wap.samsungmobile.com/uaprof/SM-N900T.xml' => array( 'Samsung', 'Galaxy Note 3', 'Android', TYPE_MOBILE ),
 
3692
  'http://wap.samsungmobile.com/uaprof/SM-N900W8.xml' => array( 'Samsung', 'Galaxy Note 3', 'Android', TYPE_MOBILE ),
 
3693
  'http://wap.samsungmobile.com/uaprof/GT-N5100.xml' => array( 'Samsung', 'Galaxy Note 8.0', 'Android', TYPE_TABLET ),
3694
  'http://wap.samsungmobile.com/uaprof/GT-N5110.xml' => array( 'Samsung', 'Galaxy Note 8.0', 'Android', TYPE_TABLET ),
3695
  'http://wap.samsungmobile.com/uaprof/GT-N5120.xml' => array( 'Samsung', 'Galaxy Note 8.0', 'Android', TYPE_TABLET ),
3696
  'http://wap.samsungmobile.com/uaprof/SGH-I467.xml' => array( 'Samsung', 'Galaxy Note 8.0', 'Android', TYPE_TABLET ),
3697
  'http://wap.samsungmobile.com/uaprof/SGH-I467M.xml' => array( 'Samsung', 'Galaxy Note 8.0', 'Android', TYPE_TABLET ),
3698
  'http://device.sprintpcs.com/Samsung/SPH-L900-2011011301/MC2.rdf' => array( 'Samsung', 'Galaxy Note II', 'Android', TYPE_MOBILE ),
 
3699
  'http://device.sprintpcs.com/Samsung/SPH-L900-Chameleon/LJC.rdf' => array( 'Samsung', 'Galaxy Note II', 'Android', TYPE_MOBILE ),
3700
  'http://device.sprintpcs.com/Samsung/SPH-L900-Chameleon/MA7.rdf' => array( 'Samsung', 'Galaxy Note II', 'Android', TYPE_MOBILE ),
3701
  'http://device.sprintpcs.com/Samsung/SPH-L900-Chameleon/MC2.rdf' => array( 'Samsung', 'Galaxy Note II', 'Android', TYPE_MOBILE ),
@@ -3703,8 +4271,10 @@
3703
  'http://device.sprintpcs.com/Samsung/SPH-L900-SPRINT/LJ1.rdf' => array( 'Samsung', 'Galaxy Note II', 'Android', TYPE_MOBILE ),
3704
  'http://device.sprintpcs.com/Samsung/SPH-L900-SPRINT/LJ8.rdf' => array( 'Samsung', 'Galaxy Note II', 'Android', TYPE_MOBILE ),
3705
  'http://device.sprintpcs.com/Samsung/SPH-L900-SPRINT/LJC.rdf' => array( 'Samsung', 'Galaxy Note II', 'Android', TYPE_MOBILE ),
 
3706
  'http://device.sprintpcs.com/Samsung/SPH-L900-SPRINT/MA7.rdf' => array( 'Samsung', 'Galaxy Note II', 'Android', TYPE_MOBILE ),
3707
  'http://device.sprintpcs.com/Samsung/SPH-L900-SPRINT/MC2.rdf' => array( 'Samsung', 'Galaxy Note II', 'Android', TYPE_MOBILE ),
 
3708
  'http://device.sprintpcs.com/Samsung/SPH-L900/MC2.rdf' => array( 'Samsung', 'Galaxy Note II', 'Android', TYPE_MOBILE ),
3709
  'http://nmsc.ctvap.cn/uaprof/SCH/SCH_N719_1_20121012.xml' => array( 'Samsung', 'Galaxy Note II', 'Android', TYPE_MOBILE ),
3710
  'http://uaprof.vtext.com/sam/SCH-I605/SCH-I605.xml' => array( 'Samsung', 'Galaxy Note II', 'Android', TYPE_MOBILE ),
@@ -3714,6 +4284,7 @@
3714
  'http://wap.samsungmobile.com/uaprof/GT-N7105.xml' => array( 'Samsung', 'Galaxy Note II', 'Android', TYPE_MOBILE ),
3715
  'http://wap.samsungmobile.com/uaprof/GT-N7105BO.xml' => array( 'Samsung', 'Galaxy Note II', 'Android', TYPE_MOBILE ),
3716
  'http://wap.samsungmobile.com/uaprof/GT-N7105T.xml' => array( 'Samsung', 'Galaxy Note II', 'Android', TYPE_MOBILE ),
 
3717
  'http://wap.samsungmobile.com/uaprof/SAMSUNG-SGH-I317.xml' => array( 'Samsung', 'Galaxy Note II', 'Android', TYPE_MOBILE ),
3718
  'http://wap.samsungmobile.com/uaprof/SGH-I317.xml' => array( 'Samsung', 'Galaxy Note II', 'Android', TYPE_MOBILE ),
3719
  'http://wap.samsungmobile.com/uaprof/SGH-I317M.xml' => array( 'Samsung', 'Galaxy Note II', 'Android', TYPE_MOBILE ),
@@ -3721,13 +4292,18 @@
3721
  'http://wap.samsungmobile.com/uaprof/SGH-T889V.xml' => array( 'Samsung', 'Galaxy Note II', 'Android', TYPE_MOBILE ),
3722
  'TRUEhttp://wap.samsungmobile.com/uaprof/GT-N7100.xml' => array( 'Samsung', 'Galaxy Note II', 'Android', TYPE_MOBILE ),
3723
  'http://wap.samsungmobile.com/uaprof/SC-05D.xml' => array( 'Samsung', 'Galaxy Note LTE', 'Android', TYPE_MOBILE ),
 
3724
  'http://wap.samsungmobile.com/uaprof/YP-GB70D.xml' => array( 'Samsung', 'Galaxy Player 70 Plus', 'Android', ),
3725
  'http://wap.samsungmobile.com/uaprof/GT-S5300.xml' => array( 'Samsung', 'Galaxy Pocket', 'Android', TYPE_MOBILE ),
3726
  'http://wap.samsungmobile.com/uaprof/GT-S5300B.xml' => array( 'Samsung', 'Galaxy Pocket', 'Android', TYPE_MOBILE ),
3727
  'http://wap.samsungmobile.com/uaprof/GT-S5300L.xml' => array( 'Samsung', 'Galaxy Pocket', 'Android', TYPE_MOBILE ),
3728
  'http://wap.samsungmobile.com/uaprof/GT-S5310.xml' => array( 'Samsung', 'Galaxy Pocket 2', 'Android', TYPE_MOBILE ),
3729
  'http://wap.samsungmobile.com/uaprof/GT-S5310B.xml' => array( 'Samsung', 'Galaxy Pocket 2', 'Android', TYPE_MOBILE ),
 
3730
  'http://wap.samsungmobile.com/uaprof/GT-S5310L.xml' => array( 'Samsung', 'Galaxy Pocket 2', 'Android', TYPE_MOBILE ),
 
 
 
3731
  'http://wap.samsungmobile.com/uaprof/GT-S5302.xml' => array( 'Samsung', 'Galaxy Pocket Duos', 'Android', TYPE_MOBILE ),
3732
  'http://wap.samsungmobile.com/uaprof/GT-S5302B.xml' => array( 'Samsung', 'Galaxy Pocket Duos', 'Android', TYPE_MOBILE ),
3733
  'http://wap.samsungmobile.com/uaprof/GT-S5301B.xml' => array( 'Samsung', 'Galaxy Pocket Plus', 'Android', TYPE_MOBILE ),
@@ -3741,12 +4317,15 @@
3741
  'http://device.sprintpcs.com/Samsung/SPH-M820-BST/EE14.rdf' => array( 'Samsung', 'Galaxy Prevail', 'Android', TYPE_MOBILE ),
3742
  'http://device.sprintpcs.com/Samsung/SPH-M820-BST/EJ06.rdf' => array( 'Samsung', 'Galaxy Prevail', 'Android', TYPE_MOBILE ),
3743
  'http://device.sprintpcs.com/Samsung/SPH-M820-BST/FF19.rdf' => array( 'Samsung', 'Galaxy Prevail', 'Android', TYPE_MOBILE ),
 
3744
  'http://wap.samsungmobile.com/uaprof/GT-B7510.xml' => array( 'Samsung', 'Galaxy Pro', 'Android', TYPE_MOBILE ),
3745
  'http://wap.samsungmobile.com/uaprof/GT-B7510B.xml' => array( 'Samsung', 'Galaxy Pro', 'Android', TYPE_MOBILE ),
3746
  'http://wap.samsungmobile.com/uaprof/GT-B7510L.xml' => array( 'Samsung', 'Galaxy Pro', 'Android', TYPE_MOBILE ),
3747
  'http://uaprof.vtext.com/sam/i110/i110.xml' => array( 'Samsung', 'Galaxy Proclaim', 'Android', TYPE_MOBILE ),
3748
  'http://wap.samsungmobile.com/uaprof/GT-I9103.xml' => array( 'Samsung', 'Galaxy R', 'Android', TYPE_MOBILE ),
3749
  'http://uaprof.vmobl.com/Samsung/SPH-M950-VMUB/1.0/UAProf.xml' => array( 'Samsung', 'Galaxy Reverb', 'Android', TYPE_MOBILE ),
 
 
3750
  'http://device.sprintpcs.com/Samsung/SPH-M840-VIRGIN/ME3.rdf' => array( 'Samsung', 'Galaxy Ring', 'Android', TYPE_MOBILE ),
3751
  'http://device.sprintpcs.com/Samsung/SPH-M840-VIRGIN/MH5.rdf' => array( 'Samsung', 'Galaxy Ring', 'Android', TYPE_MOBILE ),
3752
  'http://wap.samsungmobile.com/uaprof/SGH-I547.xml' => array( 'Samsung', 'Galaxy Rugby Pro', 'Android', TYPE_MOBILE ),
@@ -3773,6 +4352,8 @@
3773
  'http://nmsc.ctvap.cn/uaprof/SCH/SCH_i919_1_20110615.xml' => array( 'Samsung', 'Galaxy S Duos', 'Android', TYPE_MOBILE ),
3774
  'http://wap.samsungmobile.com/uaprof/GT-S7562.xml' => array( 'Samsung', 'Galaxy S Duos', 'Android', TYPE_MOBILE ),
3775
  'http://wap.samsungmobile.com/uaprof/GT-S7562L.xml' => array( 'Samsung', 'Galaxy S Duos', 'Android', TYPE_MOBILE ),
 
 
3776
  'http://wap.samsungmobile.com/uaprof/SGH-T959D.xml' => array( 'Samsung', 'Galaxy S Fascinate 3G+', 'Android', TYPE_MOBILE ),
3777
  'http://wap.samsungmobile.com/uaprof/SGH-T959P.xml' => array( 'Samsung', 'Galaxy S Fascinate 4G', 'Android', TYPE_MOBILE ),
3778
  'http://device.sprintpcs.com/Samsung/DPH-D710/L14.rdf' => array( 'Samsung', 'Galaxy S II', 'Android', TYPE_MOBILE ),
@@ -3789,6 +4370,7 @@
3789
  'http://device.sprintpcs.com/Samsung/SCH-R760X/B28.rdf' => array( 'Samsung', 'Galaxy S II', 'Android', TYPE_MOBILE ),
3790
  'http://device.sprintpcs.com/Samsung/SPH-D710/A10.rdf' => array( 'Samsung', 'Galaxy S II', 'Android', TYPE_MOBILE ),
3791
  'http://device.sprintpcs.com/Samsung/SPH-D710/B27.rdf' => array( 'Samsung', 'Galaxy S II', 'Android', TYPE_MOBILE ),
 
3792
  'http://device.sprintpcs.com/Samsung/SPH-D710/EK02.rdf' => array( 'Samsung', 'Galaxy S II', 'Android', TYPE_MOBILE ),
3793
  'http://device.sprintpcs.com/Samsung/SPH-D710/EL29.rdf' => array( 'Samsung', 'Galaxy S II', 'Android', TYPE_MOBILE ),
3794
  'http://device.sprintpcs.com/Samsung/SPH-D710/FD19.rdf' => array( 'Samsung', 'Galaxy S II', 'Android', TYPE_MOBILE ),
@@ -3810,6 +4392,7 @@
3810
  'http://device.sprintpcs.com/Samsung/SPH-D710BST/FH29.rdf' => array( 'Samsung', 'Galaxy S II', 'Android', TYPE_MOBILE ),
3811
  'http://device.sprintpcs.com/Samsung/SPH-D710BST/FI22.rdf' => array( 'Samsung', 'Galaxy S II', 'Android', TYPE_MOBILE ),
3812
  'http://device.sprintpcs.com/Samsung/SPH-D710BST/FL24.rdf' => array( 'Samsung', 'Galaxy S II', 'Android', TYPE_MOBILE ),
 
3813
  'http://device.sprintpcs.com/Samsung/SPH-D710VMUB/FL26.rdf' => array( 'Samsung', 'Galaxy S II', 'Android', TYPE_MOBILE ),
3814
  'http://device.sprintpcs.com/Samsung/SPH-D710VMUBVMUB/.rdf' => array( 'Samsung', 'Galaxy S II', 'Android', TYPE_MOBILE ),
3815
  'http://wap.samsungmobile.com/uaprof/GT-I9100.xml' => array( 'Samsung', 'Galaxy S II', 'Android', TYPE_MOBILE ),
@@ -3855,8 +4438,10 @@
3855
  'http://device.sprintpcs.com/Samsung/SCH-S960L/MD6.rdf' => array( 'Samsung', 'Galaxy S III', 'Android', TYPE_MOBILE ),
3856
  'http://device.sprintpcs.com/Samsung/SHV-E210S/LH7.rdf' => array( 'Samsung', 'Galaxy S III', 'Android', TYPE_MOBILE ),
3857
  'http://device.sprintpcs.com/Samsung/SPH-L710-BOOST/MG2.rdf' => array( 'Samsung', 'Galaxy S III', 'Android', TYPE_MOBILE ),
 
3858
  'http://device.sprintpcs.com/Samsung/SPH-L710-VIRGIN/MD7.rdf' => array( 'Samsung', 'Galaxy S III', 'Android', TYPE_MOBILE ),
3859
  'http://device.sprintpcs.com/Samsung/SPH-L710-VIRGIN/MG2.rdf' => array( 'Samsung', 'Galaxy S III', 'Android', TYPE_MOBILE ),
 
3860
  'http://device.sprintpcs.com/Samsung/SPH-L710/LE5.rdf' => array( 'Samsung', 'Galaxy S III', 'Android', TYPE_MOBILE ),
3861
  'http://device.sprintpcs.com/Samsung/SPH-L710/LEN.rdf' => array( 'Samsung', 'Galaxy S III', 'Android', TYPE_MOBILE ),
3862
  'http://device.sprintpcs.com/Samsung/SPH-L710/LF9.rdf' => array( 'Samsung', 'Galaxy S III', 'Android', TYPE_MOBILE ),
@@ -3872,21 +4457,29 @@
3872
  'http://device.sprintpcs.com/Samsung/SPH-L710/MB3.rdf' => array( 'Samsung', 'Galaxy S III', 'Android', TYPE_MOBILE ),
3873
  'http://device.sprintpcs.com/Samsung/SPH-L710/MC3.rdf' => array( 'Samsung', 'Galaxy S III', 'Android', TYPE_MOBILE ),
3874
  'http://device.sprintpcs.com/Samsung/SPH-L710/MD4.rdf' => array( 'Samsung', 'Galaxy S III', 'Android', TYPE_MOBILE ),
 
 
 
 
3875
  'http://nmsc.ctvap.cn/uaprof/SCH/SCH_I939_1_20120309.xml' => array( 'Samsung', 'Galaxy S III', 'Android', TYPE_MOBILE ),
 
3876
  'http://uaprof.metropcs.net/UAProf/SCH-R530M.xml' => array( 'Samsung', 'Galaxy S III', 'Android', TYPE_MOBILE ),
3877
  'http://uaprof.qma.com.tw/SAMSUNG-SCH-I939_CHN_BRI.xml' => array( 'Samsung', 'Galaxy S III', 'Android', TYPE_MOBILE ),
3878
  'http://uaprof.vtext.com/sam/GT-I9300/GT-I9300.xml' => array( 'Samsung', 'Galaxy S III', 'Android', TYPE_MOBILE ),
 
3879
  'http://uaprof.vtext.com/sam/SCH-I535/SCH-I535.xml' => array( 'Samsung', 'Galaxy S III', 'Android', TYPE_MOBILE ),
3880
  'http://uaprof.vtext.com/sam/SPH-L710/SPH-L710.xml' => array( 'Samsung', 'Galaxy S III', 'Android', TYPE_MOBILE ),
3881
  'http://wap.samsungmobile.com/uaprof/Galaxy S III.xml' => array( 'Samsung', 'Galaxy S III', 'Android', TYPE_MOBILE ),
3882
  'http://wap.samsungmobile.com/uaprof/GT-I9300.xml' => array( 'Samsung', 'Galaxy S III', 'Android', TYPE_MOBILE ),
3883
  'http://wap.samsungmobile.com/uaprof/GT-I9300BO.xml' => array( 'Samsung', 'Galaxy S III', 'Android', TYPE_MOBILE ),
 
3884
  'http://wap.samsungmobile.com/uaprof/GT-I9300MIRS.xml' => array( 'Samsung', 'Galaxy S III', 'Android', TYPE_MOBILE ),
3885
  'http://wap.samsungmobile.com/uaprof/GT-I9300PCL.xml' => array( 'Samsung', 'Galaxy S III', 'Android', TYPE_MOBILE ),
3886
  'http://wap.samsungmobile.com/uaprof/GT-I9300T.xml' => array( 'Samsung', 'Galaxy S III', 'Android', TYPE_MOBILE ),
3887
  'http://wap.samsungmobile.com/uaprof/GT-I9305.xml' => array( 'Samsung', 'Galaxy S III', 'Android', TYPE_MOBILE ),
3888
  'http://wap.samsungmobile.com/uaprof/GT-I9305BO.xml' => array( 'Samsung', 'Galaxy S III', 'Android', TYPE_MOBILE ),
3889
  'http://wap.samsungmobile.com/uaprof/GT-I9305T.xml' => array( 'Samsung', 'Galaxy S III', 'Android', TYPE_MOBILE ),
 
3890
  'http://wap.samsungmobile.com/uaprof/SGH-I747.xml' => array( 'Samsung', 'Galaxy S III', 'Android', TYPE_MOBILE ),
3891
  'http://wap.samsungmobile.com/uaprof/SGH-I747M.xml' => array( 'Samsung', 'Galaxy S III', 'Android', TYPE_MOBILE ),
3892
  'http://wap.samsungmobile.com/uaprof/SGH-I748.xml' => array( 'Samsung', 'Galaxy S III', 'Android', TYPE_MOBILE ),
@@ -3900,24 +4493,35 @@
3900
  'http://wap.samsungmobile.com/uaprof/GT-I8190NBO.xml' => array( 'Samsung', 'Galaxy S III Mini', 'Android', TYPE_MOBILE ),
3901
  'http://wap.samsungmobile.com/uaprof/GT-I8190T.xml' => array( 'Samsung', 'Galaxy S III Mini', 'Android', TYPE_MOBILE ),
3902
  'http://wap.samsungmobile.com/uaprof/SM-G730A.xml' => array( 'Samsung', 'Galaxy S III Mini', 'Android', TYPE_MOBILE ),
 
3903
  'http://wap.samsungmobile.com/uaprof/GT-I9001.xml' => array( 'Samsung', 'Galaxy S Plus', 'Android', TYPE_MOBILE ),
3904
  'http://wap.samsungmobile.com/uaprof/GT-I9001BO.xml' => array( 'Samsung', 'Galaxy S Plus', 'Android', TYPE_MOBILE ),
3905
  'http://wap.samsungmobile.com/uaprof/SGH-T699.xml' => array( 'Samsung', 'Galaxy S Relay', 'Android', TYPE_MOBILE ),
3906
  'http://wap.samsungmobile.com/uaprof/YP-GI1.xml' => array( 'Samsung', 'Galaxy S WiFi 4.2', 'Android', ),
 
3907
  'http://device.sprintpcs.com/Samsung/SM-N900P-Chameleon/latest' => array( 'Samsung', 'Galaxy S4', 'Android', TYPE_MOBILE ),
 
 
3908
  'http://device.sprintpcs.com/Samsung/SPH-L720-Chameleon/MDL.rdf' => array( 'Samsung', 'Galaxy S4', 'Android', TYPE_MOBILE ),
3909
  'http://device.sprintpcs.com/Samsung/SPH-L720-Chameleon/MF9.rdf' => array( 'Samsung', 'Galaxy S4', 'Android', TYPE_MOBILE ),
3910
  'http://device.sprintpcs.com/Samsung/SPH-L720-SPRINT/MDC.rdf' => array( 'Samsung', 'Galaxy S4', 'Android', TYPE_MOBILE ),
3911
  'http://device.sprintpcs.com/Samsung/SPH-L720-SPRINT/MDL.rdf' => array( 'Samsung', 'Galaxy S4', 'Android', TYPE_MOBILE ),
3912
  'http://device.sprintpcs.com/Samsung/SPH-L720-SPRINT/MF9.rdf' => array( 'Samsung', 'Galaxy S4', 'Android', TYPE_MOBILE ),
3913
  'http://device.sprintpcs.com/Samsung/SPH-L720-SPRINT/MJA.rdf' => array( 'Samsung', 'Galaxy S4', 'Android', TYPE_MOBILE ),
 
 
 
 
 
3914
  'http://nmsc.ctvap.cn/uaprof/SCH/SCH_I959_1_20130319.xml' => array( 'Samsung', 'Galaxy S4', 'Android', TYPE_MOBILE ),
3915
  'http://nmsc.ctvap.cn/uaprof/SCH/SCH_I959_2_20131021.xml' => array( 'Samsung', 'Galaxy S4', 'Android', TYPE_MOBILE ),
 
3916
  'http://pix.cspire.com/UA/profile/samsung/SCH-L710/SCH-L710.xml' => array( 'Samsung', 'Galaxy S4', 'Android', TYPE_MOBILE ),
3917
  'http://uaprof.vtext.com/sam/GT-I9500/GT-I9500.xml' => array( 'Samsung', 'Galaxy S4', 'Android', TYPE_MOBILE ),
3918
  'http://wap.samsungmobile.com/uaprof/GT-I9500.xml' => array( 'Samsung', 'Galaxy S4', 'Android', TYPE_MOBILE ),
3919
  'http://wap.samsungmobile.com/uaprof/GT-I9500MIRS.xml' => array( 'Samsung', 'Galaxy S4', 'Android', TYPE_MOBILE ),
3920
  'http://wap.samsungmobile.com/uaprof/GT-I9500PCL.xml' => array( 'Samsung', 'Galaxy S4', 'Android', TYPE_MOBILE ),
 
3921
  'http://wap.samsungmobile.com/uaprof/GT-I9505.xml' => array( 'Samsung', 'Galaxy S4', 'Android', TYPE_MOBILE ),
3922
  'http://wap.samsungmobile.com/uaprof/GT-I9505BO.xml' => array( 'Samsung', 'Galaxy S4', 'Android', TYPE_MOBILE ),
3923
  'http://wap.samsungmobile.com/uaprof/GT-I9505G.xml' => array( 'Samsung', 'Galaxy S4', 'Android', TYPE_MOBILE ),
@@ -3927,22 +4531,50 @@
3927
  'http://wap.samsungmobile.com/uaprof/SGH-I337.xml' => array( 'Samsung', 'Galaxy S4', 'Android', TYPE_MOBILE ),
3928
  'http://wap.samsungmobile.com/uaprof/SGH-I337M.xml' => array( 'Samsung', 'Galaxy S4', 'Android', TYPE_MOBILE ),
3929
  'http://wap.samsungmobile.com/uaprof/SGH-I337MBMC.xml' => array( 'Samsung', 'Galaxy S4', 'Android', TYPE_MOBILE ),
 
3930
  'http://wap.samsungmobile.com/uaprof/SGH-M919.xml' => array( 'Samsung', 'Galaxy S4', 'Android', TYPE_MOBILE ),
 
3931
  'http://wap.samsungmobile.com/uaprof/SGH-M919V.xml' => array( 'Samsung', 'Galaxy S4', 'Android', TYPE_MOBILE ),
3932
  'http://wap.samsungmobile.com/uaprof/SGH-M919VLTN.xml' => array( 'Samsung', 'Galaxy S4', 'Android', TYPE_MOBILE ),
3933
  'http://wap.samsungmobile.com/uaprof/GT-I9295.xml' => array( 'Samsung', 'Galaxy S4 Active', 'Android', TYPE_MOBILE ),
3934
  'http://wap.samsungmobile.com/uaprof/SAMSUNG-SGH-I537.xml' => array( 'Samsung', 'Galaxy S4 Active', 'Android', TYPE_MOBILE ),
3935
  'http://wap.samsungmobile.com/uaprof/SGH-I537.xml' => array( 'Samsung', 'Galaxy S4 Active', 'Android', TYPE_MOBILE ),
 
 
 
 
 
3936
  'http://wap.samsungmobile.com/uaprof/GT-I9190.xml' => array( 'Samsung', 'Galaxy S4 Mini', 'Android', TYPE_MOBILE ),
3937
  'http://wap.samsungmobile.com/uaprof/GT-I9195.xml' => array( 'Samsung', 'Galaxy S4 Mini', 'Android', TYPE_MOBILE ),
3938
  'http://wap.samsungmobile.com/uaprof/GT-I9195BO.xml' => array( 'Samsung', 'Galaxy S4 Mini', 'Android', TYPE_MOBILE ),
3939
  'http://wap.samsungmobile.com/uaprof/GT-I9195L.xml' => array( 'Samsung', 'Galaxy S4 Mini', 'Android', TYPE_MOBILE ),
3940
  'http://wap.samsungmobile.com/uaprof/GT-I9195T.xml' => array( 'Samsung', 'Galaxy S4 Mini', 'Android', TYPE_MOBILE ),
 
3941
  'http://wap.samsungmobile.com/uaprof/SGH-I257M.xml' => array( 'Samsung', 'Galaxy S4 Mini', 'Android', TYPE_MOBILE ),
3942
  'http://wap.samsungmobile.com/uaprof/GT-I9192.xml' => array( 'Samsung', 'Galaxy S4 Mini Duos', 'Android', TYPE_MOBILE ),
 
 
3943
  'http://wap.samsungmobile.com/uaprof/SM-C101.xml' => array( 'Samsung', 'Galaxy S4 Zoom', 'Android', TYPE_MOBILE ),
3944
  'http://wap.samsungmobile.com/uaprof/SM-C105.xml' => array( 'Samsung', 'Galaxy S4 Zoom', 'Android', TYPE_MOBILE ),
3945
  'http://wap.samsungmobile.com/uaprof/SM-C105A.xml' => array( 'Samsung', 'Galaxy S4 Zoom', 'Android', TYPE_MOBILE ),
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
3946
  'http://wap.samsungmobile.com/uaprof/GT-I9003.xml' => array( 'Samsung', 'Galaxy SL', 'Android', TYPE_MOBILE ),
3947
  'http://wap.samsungmobile.com/uaprof/GT-i9003L.xml' => array( 'Samsung', 'Galaxy SL', 'Android', TYPE_MOBILE ),
3948
  'http://wap.samsungmobile.com/uaprof/GT-i5700L.xml' => array( 'Samsung', 'Galaxy Spica', 'Android', TYPE_MOBILE ),
@@ -3950,6 +4582,7 @@
3950
  'http://wap.samsungmobile.com/uaprof/GT-S5280.xml' => array( 'Samsung', 'Galaxy Star', 'Android', TYPE_MOBILE ),
3951
  'http://wap.samsungmobile.com/uaprof/GT-S5282.xml' => array( 'Samsung', 'Galaxy Star', 'Android', TYPE_MOBILE ),
3952
  'http://uaprof.vtext.com/sam/SCH-I200/SCH-I200.xml' => array( 'Samsung', 'Galaxy Stellar', 'Android', TYPE_MOBILE ),
 
3953
  'http://device.sprintpcs.com/Samsung/SPH-P100/EF17.rdf' => array( 'Samsung', 'Galaxy Tab', 'Android', TYPE_TABLET ),
3954
  'http://wap.samsungmobile.com/uaprof/GT-p1000.xml' => array( 'Samsung', 'Galaxy Tab', 'Android', TYPE_TABLET ),
3955
  'http://wap.samsungmobile.com/uaprof/GT-P1000L.xml' => array( 'Samsung', 'Galaxy Tab', 'Android', TYPE_TABLET ),
@@ -3981,12 +4614,20 @@
3981
  'http://wap.samsungmobile.com/uaprof/GT-P5210.xml' => array( 'Samsung', 'Galaxy Tab 3 (10.1)', 'Android', TYPE_TABLET ),
3982
  'http://wap.samsungmobile.com/uaprof/GT-P5220.xml' => array( 'Samsung', 'Galaxy Tab 3 (10.1)', 'Android', TYPE_TABLET ),
3983
  'http://device.sprintpcs.com/Samsung/SM-T217S-SPRINT/MH9.rdf' => array( 'Samsung', 'Galaxy Tab 3 (7.0)', 'Android', TYPE_TABLET ),
 
3984
  'http://wap.samsungmobile.com/uaprof/SM-T210.xml' => array( 'Samsung', 'Galaxy Tab 3 (7.0)', 'Android', TYPE_TABLET ),
3985
  'http://wap.samsungmobile.com/uaprof/SM-T211.xml' => array( 'Samsung', 'Galaxy Tab 3 (7.0)', 'Android', TYPE_TABLET ),
3986
  'http://wap.samsungmobile.com/uaprof/SM-T215.xml' => array( 'Samsung', 'Galaxy Tab 3 (7.0)', 'Android', TYPE_TABLET ),
3987
  'http://wap.samsungmobile.com/uaprof/SM-T217A.xml' => array( 'Samsung', 'Galaxy Tab 3 (7.0)', 'Android', TYPE_TABLET ),
 
3988
  'http://wap.samsungmobile.com/uaprof/SM-T310.xml' => array( 'Samsung', 'Galaxy Tab 3 (8.0)', 'Android', TYPE_TABLET ),
3989
  'http://wap.samsungmobile.com/uaprof/SM-T311.xml' => array( 'Samsung', 'Galaxy Tab 3 (8.0)', 'Android', TYPE_TABLET ),
 
 
 
 
 
 
3990
  'http://wap.samsungmobile.com/uaprof/SGH-I987.xml' => array( 'Samsung', 'Galaxy Tab 7.0', 'Android', TYPE_TABLET ),
3991
  'http://wap.samsungmobile.com/uaprof/SGH-T849.xml' => array( 'Samsung', 'Galaxy Tab 7.0', 'Android', TYPE_TABLET ),
3992
  'http://wap.samsungmobile.com/uaprof/GT-P6200.xml' => array( 'Samsung', 'Galaxy Tab 7.0 Plus', 'Android', TYPE_TABLET ),
@@ -4007,11 +4648,21 @@
4007
  'http://wap.samsungmobile.com/uaprof/SGH-I957R.xml' => array( 'Samsung', 'Galaxy Tab 8.9', 'Android', TYPE_TABLET ),
4008
  'http://wap.samsungmobile.com/uaprof/SHV-E140K.xml' => array( 'Samsung', 'Galaxy Tab 8.9', 'Android', TYPE_TABLET ),
4009
  'http://wap.samsungmobile.com/uaprof/SHV-E140S.xml' => array( 'Samsung', 'Galaxy Tab 8.9', 'Android', TYPE_TABLET ),
 
 
4010
  'http://nmsc.ctvap.cn/uaprof/SCH/SCH_I719_1_20120413.xml' => array( 'Samsung', 'Galaxy Trend', 'Android', TYPE_MOBILE ),
 
4011
  'http://wap.samsungmobile.com/uaprof/SCH-I699I.xml' => array( 'Samsung', 'Galaxy Trend', 'Android', TYPE_MOBILE ),
4012
  'http://wap.samsungmobile.com/uaprof/SCH-I699I_1_20130805.xml' => array( 'Samsung', 'Galaxy Trend', 'Android', TYPE_MOBILE ),
 
 
 
4013
  'http://nmsc.ctvap.cn/uaprof/SCH/SCH_I739_1_20130122.XML' => array( 'Samsung', 'Galaxy Trend II', 'Android', TYPE_MOBILE ),
 
 
 
4014
  'http://device.sprintpcs.com/Samsung/SPH-L300-Chameleon/LK5.rdf' => array( 'Samsung', 'Galaxy Victory 4G LTE', 'Android', TYPE_MOBILE ),
 
4015
  'http://device.sprintpcs.com/Samsung/SPH-L300-VIRGIN/MA8.rdf' => array( 'Samsung', 'Galaxy Victory 4G LTE', 'Android', TYPE_MOBILE ),
4016
  'http://device.sprintpcs.com/Samsung/SPH-L300-VIRGIN/MC1.rdf' => array( 'Samsung', 'Galaxy Victory 4G LTE', 'Android', TYPE_MOBILE ),
4017
  'http://device.sprintpcs.com/Samsung/SPH-L300-VIRGIN/MG5.rdf' => array( 'Samsung', 'Galaxy Victory 4G LTE', 'Android', TYPE_MOBILE ),
@@ -4032,6 +4683,7 @@
4032
  'http://wap.samsungmobile.com/uaprof/GT-S5690R.xml' => array( 'Samsung', 'Galaxy Xcover', 'Android', TYPE_MOBILE ),
4033
  'http://wap.samsungmobile.com/uaprof/GT-S5698.xml' => array( 'Samsung', 'Galaxy Xcover', 'Android', TYPE_MOBILE ),
4034
  'http://wap.samsungmobile.com/uaprof/GT-S7710.xml' => array( 'Samsung', 'Galaxy Xcover 2', 'Android', TYPE_MOBILE ),
 
4035
  'http://nmsc.ctvap.cn/uaprof/SCH/SCH_I509_1_20101216.xml' => array( 'Samsung', 'Galaxy Y', 'Android', TYPE_MOBILE ),
4036
  'http://uaprof.qma.com.tw/SAMSUNG-SCH-I509_CHN_BRI.xml' => array( 'Samsung', 'Galaxy Y', 'Android', TYPE_MOBILE ),
4037
  'http://wap.samsungmobile.com/uaprof/GT-S5360.xml' => array( 'Samsung', 'Galaxy Y', 'Android', TYPE_MOBILE ),
@@ -4041,6 +4693,7 @@
4041
  'http://wap.samsungmobile.com/uaprof/GT-S5360T.xml' => array( 'Samsung', 'Galaxy Y', 'Android', TYPE_MOBILE ),
4042
  'http://wap.samsungmobile.com/uaprof/GT-S5363.xml' => array( 'Samsung', 'Galaxy Y', 'Android', TYPE_MOBILE ),
4043
  'http://wap.samsungmobile.com/uaprof/GT-S5369.xml' => array( 'Samsung', 'Galaxy Y', 'Android', TYPE_MOBILE ),
 
4044
  'http://wap.samsungmobile.com/uaprof/GT-S6102.xml' => array( 'Samsung', 'Galaxy Y Duos', 'Android', TYPE_MOBILE ),
4045
  'http://wap.samsungmobile.com/uaprof/GT-S6102B.xml' => array( 'Samsung', 'Galaxy Y Duos', 'Android', TYPE_MOBILE ),
4046
  'http://wap.samsungmobile.com/uaprof/GT-S6102E.xml' => array( 'Samsung', 'Galaxy Y Duos', 'Android', TYPE_MOBILE ),
@@ -4082,8 +4735,10 @@
4082
  'http://wap.samsungmobile.com/uaprof/GT-C3560UAProf.xml' => array( 'Samsung', 'GT-C3560', NULL, TYPE_MOBILE ),
4083
  'http://wap.samsungmobile.com/uaprof/GT-C3590UAProf.xml' => array( 'Samsung', 'GT-C3590', NULL, TYPE_MOBILE ),
4084
  'http://wap.samsungmobile.com/uaprof/GT-C3592UAProf.xml' => array( 'Samsung', 'GT-C3592', NULL, TYPE_MOBILE ),
 
4085
  'http://wap.samsungmobile.com/uaprof/GT-C3750UAProf.xml' => array( 'Samsung', 'GT-C3750', NULL, TYPE_MOBILE ),
4086
  'http://wap.samsungmobile.com/uaprof/GT-C3752UAProf.xml' => array( 'Samsung', 'GT-C3752', NULL, TYPE_MOBILE ),
 
4087
  'http://wap.samsungmobile.com/uaprof/GT-C5510UAProf.xml' => array( 'Samsung', 'GT-C5510', NULL, TYPE_MOBILE ),
4088
  'http://wap.samsungmobile.com/uaprof/GT-C5510UAProf3G.xml' => array( 'Samsung', 'GT-C5510', NULL, TYPE_MOBILE ),
4089
  'http://wap.samsungmobile.com/uaprof/GT-E2230UAProf.xml' => array( 'Samsung', 'GT-E2230', NULL, TYPE_MOBILE ),
@@ -4093,6 +4748,7 @@
4093
  'http://wap.samsungmobile.com/uaprof/GT-E2350BUAProf.xml' => array( 'Samsung', 'GT-E2350', NULL, TYPE_MOBILE ),
4094
  'http://wap.samsungmobile.com/uaprof/GT-E2530UAProf.xml' => array( 'Samsung', 'GT-E2530', NULL, TYPE_MOBILE ),
4095
  'http://wap.samsungmobile.com/uaprof/GT-E2600UAProf.xml' => array( 'Samsung', 'GT-E2600', NULL, TYPE_MOBILE ),
 
4096
  'http://wap.samsungmobile.com/uaprof/GT-I8240.xml' => array( 'Samsung', 'GT-I8240', 'Android', TYPE_MOBILE ),
4097
  'http://wap.samsungmobile.com/uaprof/GT-I8245.xml' => array( 'Samsung', 'GT-I8245', 'Android', TYPE_MOBILE ),
4098
  'http://wap.samsungmobile.com/uaprof/GT-S3550UAProf.xml' => array( 'Samsung', 'GT-S3550', NULL, TYPE_MOBILE ),
@@ -4110,6 +4766,7 @@
4110
  'http://wap.samsungmobile.com/uaprof/I8320UAProf3G.rdf' => array( 'Samsung', 'H1', 'Android', TYPE_MOBILE ),
4111
  'http://device.sprintpcs.com/Samsung/SPH-M630/BI09.rdf' => array( 'Samsung', 'Highnote', NULL, TYPE_MOBILE ),
4112
  'http://www.alltel.net/uaprof/samsung/r500/r500.xml' => array( 'Samsung', 'Hue', NULL, TYPE_MOBILE ),
 
4113
  'http://wap.samsungmobile.com/uaprof/I7110-3G.xml' => array( 'Samsung', 'i7110', 'Series60', TYPE_MOBILE ),
4114
  'http://wap.samsungmobile.com/uaprof/I7110.xml' => array( 'Samsung', 'i7110', 'Series60', TYPE_MOBILE ),
4115
  'http://wap.samsungmobile.com/uaprof/I7110C_10.xml' => array( 'Samsung', 'i7110', 'Series60', TYPE_MOBILE ),
@@ -4125,6 +4782,7 @@
4125
  'http://device.sprintpcs.com/Samsung/SPH-M800/BE09.rdf' => array( 'Samsung', 'Instinct', NULL, TYPE_MOBILE ),
4126
  'http://device.sprintpcs.com/Samsung/SPH-M800/BF30.rdf' => array( 'Samsung', 'Instinct', NULL, TYPE_MOBILE ),
4127
  'http://uaprof.vmobl.com/Samsung/SPH-M910-VMUB/VMU_M910_UAProf.xml' => array( 'Samsung', 'Intercept', 'Android', TYPE_MOBILE ),
 
4128
  'http://wap.samsungmobile.com/uaprof/S8000.rdf' => array( 'Samsung', 'Jet', 'Touchwiz', TYPE_MOBILE ),
4129
  'http://wap.samsungmobile.com/uaprof/S8000OP.rdf' => array( 'Samsung', 'Jet', 'Touchwiz', TYPE_MOBILE ),
4130
  'http://wap.samsungmobile.com/uaprof/S8000_3G.rdf' => array( 'Samsung', 'Jet', 'Touchwiz', TYPE_MOBILE ),
@@ -4147,6 +4805,8 @@
4147
  'http://wap.samsungmobile.com/uaprof/M8000.xml' => array( 'Samsung', 'M8000', NULL, TYPE_MOBILE ),
4148
  'http://wap.samsungmobile.com/uaprof/GT-S5560.rdf' => array( 'Samsung', 'Marvel', 'Touchwiz', TYPE_MOBILE ),
4149
  'http://wap.samsungmobile.com/uaprof/GT-S5560i.rdf' => array( 'Samsung', 'Marvel', 'Touchwiz', TYPE_MOBILE ),
 
 
4150
  'http://wap.samsungmobile.com/uaprof/GT-S5560_3G.rdf' => array( 'Samsung', 'Marvel', 'Touchwiz', TYPE_MOBILE ),
4151
  'http://wap.samsungmobile.com/uaprof/SGH-T929.xml' => array( 'Samsung', 'Memoir', NULL, TYPE_MOBILE ),
4152
  'http://wap.samsungmobile.com/uaprof/S3310.rdf' => array( 'Samsung', 'Metro', NULL, TYPE_MOBILE ),
@@ -4160,6 +4820,7 @@
4160
  'http://wap.samsungmobile.com/uaprof/GT-S5620_2G.rdf' => array( 'Samsung', 'Monte', 'Touchwiz', TYPE_MOBILE ),
4161
  'http://wap.samsungmobile.com/uaprof/GT-S5620_3G.rdf' => array( 'Samsung', 'Monte', 'Touchwiz', TYPE_MOBILE ),
4162
  'http://wap.samsungmobile.com/uaprof/GT-C3200UAProf.xml' => array( 'Samsung', 'Monte Bar', NULL, TYPE_MOBILE ),
 
4163
  'http://wap.samsungmobile.com/uaprof/sch_s239.xml' => array( 'Samsung', 'mPower TV', NULL, TYPE_MOBILE ),
4164
  'http://www.alltel.net/uaprof/samsung/u706/u706.xml' => array( 'Samsung', 'Muse', NULL, TYPE_MOBILE ),
4165
  'http://device.telusmobility.com/samsung/spha523-0.rdf' => array( 'Samsung', 'Mysto', NULL, TYPE_MOBILE ),
@@ -4179,9 +4840,12 @@
4179
  'http://wap.samsungmobile.com/uaprof/SGH-M8800_3G.rdf' => array( 'Samsung', 'Pixon', NULL, TYPE_MOBILE ),
4180
  'http://wap.samsungmobile.com/uaprof/GT-S5600.rdf' => array( 'Samsung', 'Preston', 'Touchwiz', TYPE_MOBILE ),
4181
  'http://wap.samsungmobile.com/uaprof/GT-S5600LUAProf.xml' => array( 'Samsung', 'Preston', 'Touchwiz', TYPE_MOBILE ),
 
 
4182
  'http://wap.samsungmobile.com/uaprof/SGH-A767.xml' => array( 'Samsung', 'Propel', NULL, TYPE_MOBILE ),
4183
  'http://device.sprintpcs.com/Samsung/SPH-M540/BI09.rdf' => array( 'Samsung', 'Rant', NULL, TYPE_MOBILE ),
4184
  'http://device.telusmobility.com/samsung/sphm540-0.rdf' => array( 'Samsung', 'Rant', NULL, TYPE_MOBILE ),
 
4185
  'http://device.sprintpcs.com/Samsung/SPH-M580/EF27.rdf' => array( 'Samsung', 'Replenish', 'Android', TYPE_MOBILE ),
4186
  'http://device.sprintpcs.com/Samsung/SPH-M580/FA19.rdf' => array( 'Samsung', 'Replenish', 'Android', TYPE_MOBILE ),
4187
  'http://device.sprintpcs.com/Samsung/SPH-M580BST/FB03.rdf' => array( 'Samsung', 'Replenish', 'Android', TYPE_MOBILE ),
@@ -4196,6 +4860,7 @@
4196
  'http://wap.samsungmobile.com/uaprof/S3600.xml' => array( 'Samsung', 'S3600', NULL, TYPE_MOBILE ),
4197
  'http://wap.samsungmobile.com/uaprof/S7330UAProf.xml' => array( 'Samsung', 'S7330', NULL, TYPE_MOBILE ),
4198
  'http://wap.samsungmobile.com/uaprof/S7330UAProf3G.xml' => array( 'Samsung', 'S7330', NULL, TYPE_MOBILE ),
 
4199
  'http://wap.samsungmobile.com/uaprof/S9500UAProf.xml' => array( 'Samsung', 'S9500', NULL, TYPE_MOBILE ),
4200
  'http://nmsc.ctvap.cn/uaprof/SCH/SCH_I779_1_20110615.xml' => array( 'Samsung', 'Saga', 'Android', TYPE_MOBILE ),
4201
  'http://nmsc.ctvap.cn/uaprof/SCH/SCH_I779_1_20120220.xml' => array( 'Samsung', 'Saga', 'Android', TYPE_MOBILE ),
@@ -4204,12 +4869,15 @@
4204
  'http://device.telusmobility.com/samsung/scha650.rdf' => array( 'Samsung', 'SCH-A650', NULL, TYPE_MOBILE ),
4205
  'http://device.telusmobility.com/samsung/scha670.rdf' => array( 'Samsung', 'SCH-A670', NULL, TYPE_MOBILE ),
4206
  'http://device.telusmobility.com/samsung/scha870-0.rdf' => array( 'Samsung', 'SCH-A870', NULL, TYPE_MOBILE ),
 
4207
  'http://nmsc.ctvap.cn/uaprof/SCH/SCH_SCH-I629_1_20131010.xml' => array( 'Samsung', 'SCH-I629', 'Android', TYPE_MOBILE ),
4208
  'http://uaprof.vtext.com/sam/SCH-I665/SCH-I665.xml' => array( 'Samsung', 'SCH-I665', 'Android', TYPE_MOBILE ),
 
4209
  'http://uaprof.vtext.com/sch/n330/n330v1.xml' => array( 'Samsung', 'SCH-N330', NULL, TYPE_MOBILE ),
4210
  'http://uaprof.metropcs.net/UAProf/sam-r450.xml' => array( 'Samsung', 'SCH-R450', NULL, TYPE_MOBILE ),
4211
  'http://uaprof.bellmobilite.ca/Samsung_SCH-R610.rdf' => array( 'Samsung', 'SCH-R610', NULL, TYPE_MOBILE ),
4212
  'http://wap.samsungmobile.com/uaprof/SCH-R740C.xml' => array( 'Samsung', 'SCH-R740', 'Android', TYPE_MOBILE ),
 
4213
  'http://www.alltel.net/uaprof/samsung/u340/u340.xml' => array( 'Samsung', 'SCH-U340', NULL, TYPE_MOBILE ),
4214
  'http://device.telusmobility.com/samsung/schu410t-0.rdf' => array( 'Samsung', 'SCH-U410', NULL, TYPE_MOBILE ),
4215
  'http://uaprof.vtext.com/sch/u430/u430v1.xml' => array( 'Samsung', 'SCH-U430', NULL, TYPE_MOBILE ),
@@ -4228,6 +4896,7 @@
4228
  'http://wap.samsungmobile.com/uaprof/SGH-A117.xml' => array( 'Samsung', 'SGH-A117', NULL, TYPE_MOBILE ),
4229
  'http://wap.samsungmobile.com/uaprof/a127_10.xml' => array( 'Samsung', 'SGH-A127', NULL, TYPE_MOBILE ),
4230
  'http://wap.samsungmobile.com/uaprof/SGH-A137.xml' => array( 'Samsung', 'SGH-A137', NULL, TYPE_MOBILE ),
 
4231
  'http://wap.samsungmobile.com/uaprof/SGH-A237.xml' => array( 'Samsung', 'SGH-A237', NULL, TYPE_MOBILE ),
4232
  'http://wap.samsungmobile.com/uaprof/SGH-A436.xml' => array( 'Samsung', 'SGH-A436', NULL, TYPE_MOBILE ),
4233
  'http://wap.samsungmobile.com/uaprof/SGH-A437.xml' => array( 'Samsung', 'SGH-A437', NULL, TYPE_MOBILE ),
@@ -4242,6 +4911,7 @@
4242
  'http://wap.samsungmobile.com/uaprof/A737UAProf.xml' => array( 'Samsung', 'SGH-A737', NULL, TYPE_MOBILE ),
4243
  'http://wap.samsungmobile.com/uaprof/SGH-A746.xml' => array( 'Samsung', 'SGH-A746', NULL, TYPE_MOBILE ),
4244
  'http://wap.samsungmobile.com/uaprof/A747UAProf.xml' => array( 'Samsung', 'SGH-A747', NULL, TYPE_MOBILE ),
 
4245
  'http://wap.samsungmobile.com/uaprof/SGH-A800.xml' => array( 'Samsung', 'SGH-A800', NULL, TYPE_MOBILE ),
4246
  'http://wap.samsungmobile.com/uaprof/SGH-A811_3G.xml' => array( 'Samsung', 'SGH-A811', NULL, TYPE_MOBILE ),
4247
  'http://wap.samsungmobile.com/uaprof/b100_10.xml' => array( 'Samsung', 'SGH-B100', NULL, TYPE_MOBILE ),
@@ -4584,6 +5254,7 @@
4584
  'http://wap.samsungmobile.com/uaprof/p900_10.xml' => array( 'Samsung', 'SGH-P900', NULL, TYPE_MOBILE ),
4585
  'http://wap.samsungmobile.com/uaprof/p908t_10.xml' => array( 'Samsung', 'SGH-P908', NULL, TYPE_MOBILE ),
4586
  'http://wap.samsungmobile.com/uaprof/P910UAProf2G.rdf' => array( 'Samsung', 'SGH-P910', NULL, TYPE_MOBILE ),
 
4587
  'http://wap.samsungmobile.com/uaprof/SGH-P960_3G.rdf' => array( 'Samsung', 'SGH-P960', NULL, TYPE_MOBILE ),
4588
  'http://wap.samsungmobile.com/uaprof/s300m_00.xml' => array( 'Samsung', 'SGH-S300', NULL, TYPE_MOBILE ),
4589
  'http://wap.samsungmobile.com/uaprof/SGH-S500.xml' => array( 'Samsung', 'SGH-S500', NULL, TYPE_MOBILE ),
@@ -4720,10 +5391,10 @@
4720
  'http://wap.samsungmobile.com/uaprof/ZV30UAProf.rdf' => array( 'Samsung', 'SGH-ZV30', NULL, TYPE_MOBILE ),
4721
  'http://wap.samsungmobile.com/uaprof/ZV60UAProf3G.rdf' => array( 'Samsung', 'SGH-ZV60', NULL, TYPE_MOBILE ),
4722
  'http://wap.samsungmobile.com/uaprof/GT-S5350UAProf.xml' => array( 'Samsung', 'Shark', NULL, TYPE_MOBILE ),
4723
- 'http://nmsc.ctvap.cn/uaprof/SCH/SCH_SM-G3509_1_20130816.xml' => array( 'Samsung', 'SM-G3509', 'Android', TYPE_MOBILE ),
4724
  'http://wap.samsungmobile.com/uaprof/SM-G3815.xml' => array( 'Samsung', 'SM-G3815', 'Android', TYPE_MOBILE ),
4725
  'http://nmsc.ctvap.cn/uaprof/SCH/SCH_SM-G3819D_1_20130821.xml' => array( 'Samsung', 'SM-G3819', 'Android', TYPE_MOBILE ),
4726
  'http://nmsc.ctvap.cn/uaprof/SCH/SCH_SM-W2014_1_20130916.xml' => array( 'Samsung', 'SM-W2014', 'Android', TYPE_MOBILE ),
 
4727
  'http://wap.samsungmobile.com/uaprof/SGH-A817.xml' => array( 'Samsung', 'Solstice II', NULL, TYPE_MOBILE ),
4728
  'http://wap.samsungmobile.com/uaprof/SGH-G400_3G.rdf' => array( 'Samsung', 'Soul', NULL, TYPE_MOBILE ),
4729
  'http://wap.samsungmobile.com/uaprof/U900UAProf.xml' => array( 'Samsung', 'Soul', NULL, TYPE_MOBILE ),
@@ -4743,7 +5414,6 @@
4743
  'http://device.sprintpcs.com/Samsung/SPH-A900P/ZH03.rdf' => array( 'Samsung', 'SPH-A900', NULL, TYPE_MOBILE ),
4744
  'http://device.sprintpcs.com/Samsung/SPH-A920/YK12.rdf' => array( 'Samsung', 'SPH-A920', NULL, TYPE_MOBILE ),
4745
  'http://device.sprintpcs.com/Samsung/SPH-i550/XE07.rdf' => array( 'Samsung', 'SPH-I550', 'Palm OS', TYPE_MOBILE ),
4746
- 'http://device.sprintpcs.com/Samsung/SPH-L520-Chameleon/ME3.rdf' => array( 'Samsung', 'SPH-L520', 'Android', TYPE_MOBILE ),
4747
  'http://device.telusmobility.com/samsung/sphm210-0.rdf' => array( 'Samsung', 'SPH-M210', NULL, TYPE_MOBILE ),
4748
  'http://device.sprintpcs.com/Samsung/SPH-M220/BG24.rdf' => array( 'Samsung', 'SPH-M220', NULL, TYPE_MOBILE ),
4749
  'http://uaprof.vmobl.com/samsung/m310/VMU_m310_UAProf.xml' => array( 'Samsung', 'SPH-M310', NULL, TYPE_MOBILE ),
@@ -4758,6 +5428,7 @@
4758
  'http://wap.samsungmobile.com/uaprof/GT-S5230.rdf' => array( 'Samsung', 'Star', 'Touchwiz', TYPE_MOBILE ),
4759
  'http://wap.samsungmobile.com/uaprof/GT-S5230G.rdf' => array( 'Samsung', 'Star', 'Touchwiz', TYPE_MOBILE ),
4760
  'http://wap.samsungmobile.com/uaprof/GT-S5230MR.rdf' => array( 'Samsung', 'Star', 'Touchwiz', TYPE_MOBILE ),
 
4761
  'http://wap.samsungmobile.com/uaprof/GT-S5230W.rdf' => array( 'Samsung', 'Star', 'Touchwiz', TYPE_MOBILE ),
4762
  'http://wap.samsungmobile.com/uaprof/GT-S5230W_3G.rdf' => array( 'Samsung', 'Star', 'Touchwiz', TYPE_MOBILE ),
4763
  'http://wap.samsungmobile.com/uaprof/GT-S5233A.rdf' => array( 'Samsung', 'Star', 'Touchwiz', TYPE_MOBILE ),
@@ -4767,6 +5438,7 @@
4767
  'http://wap.samsungmobile.com/uaprof/GT-S5233W.rdf' => array( 'Samsung', 'Star', 'Touchwiz', TYPE_MOBILE ),
4768
  'http://wap.samsungmobile.com/uaprof/GT-S5233W.xml' => array( 'Samsung', 'Star', 'Touchwiz', TYPE_MOBILE ),
4769
  'http://wap.samsungmobile.com/uaprof/GT-S5220UAProf.xml' => array( 'Samsung', 'Star 3', 'Touchwiz', TYPE_MOBILE ),
 
4770
  'http://wap.samsungmobile.com/uaprof/GT-S5222UAProf.xml' => array( 'Samsung', 'Star 3 Duos', 'Touchwiz', TYPE_MOBILE ),
4771
  'http://wap.samsungmobile.com/uaprof/GT-S5292UAProf.xml' => array( 'Samsung', 'Star Deluxe Duos', 'Touchwiz', TYPE_MOBILE ),
4772
  'http://wap.samsungmobile.com/uaprof/GT-B7722_2G.rdf' => array( 'Samsung', 'Star Duos', 'Touchwiz', TYPE_MOBILE ),
@@ -4794,6 +5466,7 @@
4794
  'http://device.sprintpcs.com/Samsung/SPH-M620/AC08.rdf' => array( 'Samsung', 'UpStage', NULL, TYPE_MOBILE ),
4795
  'http://wap.samsungmobile.com/uaprof/V804SSUAProf.rdf' => array( 'Samsung', 'V804', NULL, TYPE_MOBILE ),
4796
  'http://wap.samsungmobile.com/uaprof/SGH-T959.xml' => array( 'Samsung', 'Vibrant', 'Android', TYPE_MOBILE ),
 
4797
  'http://wap.samsungmobile.com/uaprof/GT-S8500.rdf' => array( 'Samsung', 'Wave', 'Bada', TYPE_MOBILE ),
4798
  'http://wap.samsungmobile.com/uaprof/GT-S8500R.rdf' => array( 'Samsung', 'Wave', 'Bada', TYPE_MOBILE ),
4799
  'http://wap.samsungmobile.com/uaprof/GT-S8500_2G.rdf' => array( 'Samsung', 'Wave', 'Bada', TYPE_MOBILE ),
@@ -4840,6 +5513,7 @@
4840
  'http://wap.samsungmobile.com/uaprof/Z560UAProf3G.rdf' => array( 'Samsung', 'Z560', NULL, TYPE_MOBILE ),
4841
  'http://wap.samsungmobile.com/uaprof/z630_00.xml' => array( 'Samsung', 'Z630', NULL, TYPE_MOBILE ),
4842
  'http://wap.samsungmobile.com/uaprof/Z720UAProf3G.rdf' => array( 'Samsung', 'Z720', NULL, TYPE_MOBILE ),
 
4843
  'http://device.sprintpcs.com/Sanyo/SCP8500/1000SP.rdf' => array( 'Sanyo', 'Katana DLX', NULL, TYPE_MOBILE ),
4844
  'http://device.sprintpcs.com/Sanyo/SCPM1/1001SP.rdf' => array( 'Sanyo', 'M1', NULL, TYPE_MOBILE ),
4845
  'http://device.sprintpcs.com/Sanyo/MM5600/0702SP.rdf' => array( 'Sanyo', 'MM-5600', NULL, TYPE_MOBILE ),
@@ -4911,6 +5585,7 @@
4911
  'http://www.c2dms.com/UAProfile/S2U/SH631W.xml' => array( 'Sharp', 'SH631W', 'Android', TYPE_MOBILE ),
4912
  'http://wap1.sharp.com/uaprof/SharpSH8188U.xml' => array( 'Sharp', 'SH8188U', 'Android', TYPE_MOBILE ),
4913
  'http://sharp-mobile.com/UAprof/SHP_SH831T_3_20120214.xml' => array( 'Sharp', 'SH831T', 'Android', TYPE_MOBILE ),
 
4914
  'http://www.c2dms.com/UAProfile/S1U/SH837W.xml' => array( 'Sharp', 'SH837W', 'Android', TYPE_MOBILE ),
4915
  'http://cn.c2dms.com/UAProfile/VKY/SH931W.xml' => array( 'Sharp', 'SH931W', 'Android', TYPE_MOBILE ),
4916
  'http://www.sharp-mobile.com/UAprofTM/tm100.xml' => array( 'Sharp', 'TM100', NULL, TYPE_MOBILE ),
@@ -4948,6 +5623,7 @@
4948
  'http://communication-market.siemens.de/portal/UAProf/UAP.aspx?DeviceID=SX66' => array( 'Siemens', 'SX66', NULL, TYPE_MOBILE ),
4949
  'http://skyspring.co.kr/UAprof/UAprof_Sp710_wap20.xml' => array( 'Skyspring', 'SP710', NULL, TYPE_MOBILE ),
4950
  'http://skyspring.co.kr/UAprof/UAprof_SP770.xml' => array( 'Skyspring', 'SP770', NULL, TYPE_MOBILE ),
 
4951
  'http://uaprof.softbank.ne.jp/uaprof/3G_103P.xml' => array( 'Softbank', '103P', NULL, TYPE_MOBILE ),
4952
  'http://wap1.huawei.com/uaprof/HuaweiY300-J1-Normal.xml' => array( 'Softbank', '204HW', 'Android', TYPE_MOBILE ),
4953
  'http://wap.samsungmobile.com/uaprof/705SCUAProf.rdf' => array( 'Softbank', '705SC', NULL, TYPE_MOBILE ),
@@ -4982,11 +5658,14 @@
4982
  'http://uaprof.sonymobile.com/SO-01ER911.xml' => array( 'Sony', 'Xperia AX', 'Android', TYPE_MOBILE ),
4983
  'http://uaprof.sonymobile.com/C2305R401.xml' => array( 'Sony', 'Xperia C', 'Android', TYPE_MOBILE ),
4984
  'http://uaprof.sonymobile.com/S39hR401.xml' => array( 'Sony', 'Xperia C', 'Android', TYPE_MOBILE ),
 
4985
  'http://uaprof.sonymobile.com/C1504R402.xml' => array( 'Sony', 'Xperia E', 'Android', TYPE_MOBILE ),
4986
  'http://uaprof.sonymobile.com/C1505R402.xml' => array( 'Sony', 'Xperia E', 'Android', TYPE_MOBILE ),
 
4987
  'http://uaprof.sonymobile.com/C1604R402.xml' => array( 'Sony', 'Xperia E dual', 'Android', TYPE_MOBILE ),
4988
  'http://uaprof.sonymobile.com/C1605JBR402.xml' => array( 'Sony', 'Xperia E dual', 'Android', TYPE_MOBILE ),
4989
  'http://uaprof.sonymobile.com/C1605R402.xml' => array( 'Sony', 'Xperia E dual', 'Android', TYPE_MOBILE ),
 
4990
  'http://uaprof.sonymobile.com/LotusR620.xml' => array( 'Sony', 'Xperia Go', 'Android', TYPE_MOBILE ),
4991
  'http://uaprof.sonymobile.com/ST27aR620.xml' => array( 'Sony', 'Xperia Go', 'Android', TYPE_MOBILE ),
4992
  'http://uaprof.sonymobile.com/ST27iR620.xml' => array( 'Sony', 'Xperia Go', 'Android', TYPE_MOBILE ),
@@ -5035,31 +5714,52 @@
5035
  'http://wap.sonyericsson.com/UAprof/MT27iR611.xml' => array( 'Sony', 'Xperia Sola', 'Android', TYPE_MOBILE ),
5036
  'http://wap.sonyericsson.com/UAprof/pepperR611.xml' => array( 'Sony', 'Xperia Sola', 'Android', TYPE_MOBILE ),
5037
  'http://wap.sonyericsson.com/UAprof/Xperia SolaR611.xml' => array( 'Sony', 'Xperia Sola', 'Android', TYPE_MOBILE ),
 
5038
  'http://uaprof.sonymobile.com/C5302R401.xml' => array( 'Sony', 'Xperia SP', 'Android', TYPE_MOBILE ),
 
 
5039
  'http://uaprof.sonymobile.com/C5303R401.xml' => array( 'Sony', 'Xperia SP', 'Android', TYPE_MOBILE ),
5040
  'http://uaprof.sonymobile.com/C5303R701.xml' => array( 'Sony', 'Xperia SP', 'Android', TYPE_MOBILE ),
5041
  'http://uaprof.sonymobile.com/C5306R1401.xml' => array( 'Sony', 'Xperia SP', 'Android', TYPE_MOBILE ),
 
5042
  'http://uaprof.sonymobile.com/C5306R401.xml' => array( 'Sony', 'Xperia SP', 'Android', TYPE_MOBILE ),
5043
  'http://uaprof.sonymobile.com/M35cR401.xml' => array( 'Sony', 'Xperia SP', 'Android', TYPE_MOBILE ),
 
5044
  'http://uaprof.sonymobile.com/M35hR401.xml' => array( 'Sony', 'Xperia SP', 'Android', TYPE_MOBILE ),
 
5045
  'http://uaprof.sonymobile.com/SO-05DR701.xml' => array( 'Sony', 'Xperia SX', 'Android', TYPE_MOBILE ),
5046
  'http://uaprof.sonymobile.com/SO-05DR911.xml' => array( 'Sony', 'Xperia SX', 'Android', TYPE_MOBILE ),
5047
  'http://uaprof.sonymobile.com/LT30aR1401.xml' => array( 'Sony', 'Xperia T', 'Android', TYPE_MOBILE ),
 
5048
  'http://uaprof.sonymobile.com/LT30aR701.xml' => array( 'Sony', 'Xperia T', 'Android', TYPE_MOBILE ),
5049
  'http://uaprof.sonymobile.com/LT30aR911.xml' => array( 'Sony', 'Xperia T', 'Android', TYPE_MOBILE ),
 
5050
  'http://uaprof.sonymobile.com/LT30pR701.xml' => array( 'Sony', 'Xperia T', 'Android', TYPE_MOBILE ),
5051
  'http://uaprof.sonymobile.com/LT30pR911.xml' => array( 'Sony', 'Xperia T', 'Android', TYPE_MOBILE ),
 
 
 
 
 
 
5052
  'http://uaprof.sonymobile.com/PolluxWindyR1002.xml' => array( 'Sony', 'Xperia Tablet Z', 'Android', TYPE_TABLET ),
5053
  'http://uaprof.sonymobile.com/SGP311R1002.xml' => array( 'Sony', 'Xperia Tablet Z', 'Android', TYPE_TABLET ),
5054
  'http://uaprof.sonymobile.com/SGP311R1003.xml' => array( 'Sony', 'Xperia Tablet Z', 'Android', TYPE_TABLET ),
 
5055
  'http://uaprof.sonymobile.com/SGP312R1002.xml' => array( 'Sony', 'Xperia Tablet Z', 'Android', TYPE_TABLET ),
5056
  'http://uaprof.sonymobile.com/SGP312R1003.xml' => array( 'Sony', 'Xperia Tablet Z', 'Android', TYPE_TABLET ),
 
5057
  'http://uaprof.sonymobile.com/SGP321R1002.xml' => array( 'Sony', 'Xperia Tablet Z', 'Android', TYPE_TABLET ),
5058
  'http://uaprof.sonymobile.com/SGP321R1003.xml' => array( 'Sony', 'Xperia Tablet Z', 'Android', TYPE_TABLET ),
 
5059
  'http://uaprof.sonymobile.com/SGP341R1002.xml' => array( 'Sony', 'Xperia Tablet Z', 'Android', TYPE_TABLET ),
 
 
 
5060
  'http://uaprof.sonymobile.com/SO-03ER1002.xml' => array( 'Sony', 'Xperia Tablet Z', 'Android', TYPE_TABLET ),
5061
  'http://uaprof.sonymobile.com/ST21aR402.xml' => array( 'Sony', 'Xperia Tipo', 'Android', TYPE_MOBILE ),
5062
  'http://uaprof.sonymobile.com/ST21iR402.xml' => array( 'Sony', 'Xperia Tipo', 'Android', TYPE_MOBILE ),
 
5063
  'http://wap.sonyericsson.com/UAprof/ST21R402.xml' => array( 'Sony', 'Xperia Tipo', 'Android', TYPE_MOBILE ),
5064
  'http://uaprof.sonymobile.com/ST21a2R402.xml' => array( 'Sony', 'Xperia Tipo Dual', 'Android', TYPE_MOBILE ),
5065
  'http://uaprof.sonymobile.com/ST21i2R402.xml' => array( 'Sony', 'Xperia Tipo Dual', 'Android', TYPE_MOBILE ),
@@ -5067,8 +5767,10 @@
5067
  'http://uaprof.sonymobile.com/LT30atR701.xml' => array( 'Sony', 'Xperia TL', 'Android', TYPE_MOBILE ),
5068
  'http://uaprof.sonymobile.com/LT30atR911.xml' => array( 'Sony', 'Xperia TL', 'Android', TYPE_MOBILE ),
5069
  'http://uaprof.sonymobile.com/LT29iR1002.xml' => array( 'Sony', 'Xperia TX', 'Android', TYPE_MOBILE ),
 
5070
  'http://uaprof.sonymobile.com/LT29iR701.xml' => array( 'Sony', 'Xperia TX', 'Android', TYPE_MOBILE ),
5071
  'http://uaprof.sonymobile.com/LT29iR911.xml' => array( 'Sony', 'Xperia TX', 'Android', TYPE_MOBILE ),
 
5072
  'http://wap.sonyericsson.com/UAprof/HayabusaR601.xml' => array( 'Sony', 'Xperia TX', 'Android', TYPE_MOBILE ),
5073
  'http://wap.sonyericsson.com/UAprof/LT29iR601.xml' => array( 'Sony', 'Xperia TX', 'Android', TYPE_MOBILE ),
5074
  'http://uaprof.sonymobile.com/ST25iR620.xml' => array( 'Sony', 'Xperia U', 'Android', TYPE_MOBILE ),
@@ -5077,58 +5779,104 @@
5077
  'http://wap.sonyericsson.com/UAprof/ST25iR601.xml' => array( 'Sony', 'Xperia U', 'Android', TYPE_MOBILE ),
5078
  'http://wap.sonyericsson.com/UAprof/ST25iR611.xml' => array( 'Sony', 'Xperia U', 'Android', TYPE_MOBILE ),
5079
  'http://uaprof.sonymobile.com/SOL22R1002.xml' => array( 'Sony', 'Xperia UL', 'Android', TYPE_MOBILE ),
 
 
5080
  'http://uaprof.sonymobile.com/LT25iR701.xml' => array( 'Sony', 'Xperia V', 'Android', TYPE_MOBILE ),
5081
  'http://uaprof.sonymobile.com/LT25iR901.xml' => array( 'Sony', 'Xperia V', 'Android', TYPE_MOBILE ),
5082
  'http://uaprof.sonymobile.com/LT25iR911.xml' => array( 'Sony', 'Xperia V', 'Android', TYPE_MOBILE ),
 
5083
  'http://uaprof.sonymobile.com/LT25cR901.xml' => array( 'Sony', 'Xperia VC', 'Android', TYPE_MOBILE ),
5084
  'http://uaprof.sonymobile.com/LT25cR911.xml' => array( 'Sony', 'Xperia VC', 'Android', TYPE_MOBILE ),
5085
  'http://uaprof.sonymobile.com/SOL21R901.xml' => array( 'Sony', 'Xperia VL', 'Android', TYPE_MOBILE ),
5086
  'http://uaprof.sonymobile.com/SOL21R911.xml' => array( 'Sony', 'Xperia VL', 'Android', TYPE_MOBILE ),
5087
  'http://uaprof.sonymobile.com/C6602R1002.xml' => array( 'Sony', 'Xperia Z', 'Android', TYPE_MOBILE ),
5088
  'http://uaprof.sonymobile.com/C6602R1003.xml' => array( 'Sony', 'Xperia Z', 'Android', TYPE_MOBILE ),
 
 
5089
  'http://uaprof.sonymobile.com/C6603R1002.xml' => array( 'Sony', 'Xperia Z', 'Android', TYPE_MOBILE ),
5090
  'http://uaprof.sonymobile.com/C6603R1003.xml' => array( 'Sony', 'Xperia Z', 'Android', TYPE_MOBILE ),
 
5091
  'http://uaprof.sonymobile.com/C6606R1002.xml' => array( 'Sony', 'Xperia Z', 'Android', TYPE_MOBILE ),
 
5092
  'http://uaprof.sonymobile.com/C6616R1002.xml' => array( 'Sony', 'Xperia Z', 'Android', TYPE_MOBILE ),
 
5093
  'http://uaprof.sonymobile.com/L36hR1002.xml' => array( 'Sony', 'Xperia Z', 'Android', TYPE_MOBILE ),
5094
  'http://uaprof.sonymobile.com/L36hR1003.xml' => array( 'Sony', 'Xperia Z', 'Android', TYPE_MOBILE ),
 
5095
  'http://uaprof.sonymobile.com/L36hR911.xml' => array( 'Sony', 'Xperia Z', 'Android', TYPE_MOBILE ),
5096
  'http://uaprof.sonymobile.com/SO-02ER1002.xml' => array( 'Sony', 'Xperia Z', 'Android', TYPE_MOBILE ),
5097
  'http://uaprof.sonymobile.com/SO-02ER1003.xml' => array( 'Sony', 'Xperia Z', 'Android', TYPE_MOBILE ),
 
5098
  'http://wap.sonyericsson.com/UAprof/C6603R611.xml' => array( 'Sony', 'Xperia Z', 'Android', TYPE_MOBILE ),
5099
  'http://uaprof.sonymobile.com/C6802R1002.xml' => array( 'Sony', 'Xperia Z Ultra', 'Android', TYPE_MOBILE ),
5100
  'http://uaprof.sonymobile.com/C6802R1401.xml' => array( 'Sony', 'Xperia Z Ultra', 'Android', TYPE_MOBILE ),
 
 
 
5101
  'http://uaprof.sonymobile.com/C6833R1401.xml' => array( 'Sony', 'Xperia Z Ultra', 'Android', TYPE_MOBILE ),
 
5102
  'http://uaprof.sonymobile.com/SOL24R1401.xml' => array( 'Sony', 'Xperia Z Ultra', 'Android', TYPE_MOBILE ),
5103
  'http://uaprof.sonymobile.com/XL39hR1401.xml' => array( 'Sony', 'Xperia Z Ultra', 'Android', TYPE_TABLET ),
 
 
5104
  'http://uaprof.sonymobile.com/C6902R1401.xml' => array( 'Sony', 'Xperia Z1', 'Android', TYPE_MOBILE ),
 
5105
  'http://uaprof.sonymobile.com/C6903R1401.xml' => array( 'Sony', 'Xperia Z1', 'Android', TYPE_MOBILE ),
5106
  'http://uaprof.sonymobile.com/C6903R1411.xml' => array( 'Sony', 'Xperia Z1', 'Android', TYPE_MOBILE ),
 
5107
  'http://uaprof.sonymobile.com/C6906R1401.xml' => array( 'Sony', 'Xperia Z1', 'Android', TYPE_MOBILE ),
 
 
 
 
 
5108
  'http://uaprof.sonymobile.com/L39hR1003.xml' => array( 'Sony', 'Xperia Z1', 'Android', TYPE_MOBILE ),
5109
  'http://uaprof.sonymobile.com/L39hR1401.xml' => array( 'Sony', 'Xperia Z1', 'Android', TYPE_MOBILE ),
 
 
 
 
 
5110
  'http://uaprof.sonymobile.com/SO-01FR1401.xml' => array( 'Sony', 'Xperia Z1', 'Android', TYPE_MOBILE ),
5111
  'http://uaprof.sonymobile.com/SOL23R1401.xml' => array( 'Sony', 'Xperia Z1', 'Android', TYPE_MOBILE ),
 
 
 
 
 
5112
  'http://uaprof.sonymobile.com/SO-02FR1401.xml' => array( 'Sony', 'Xperia Z1 f', 'Android', TYPE_MOBILE ),
 
 
 
5113
  'http://uaprof.sonymobile.com/C6502R1002.xml' => array( 'Sony', 'Xperia ZL', 'Android', TYPE_MOBILE ),
5114
  'http://uaprof.sonymobile.com/C6502R1003.xml' => array( 'Sony', 'Xperia ZL', 'Android', TYPE_MOBILE ),
 
5115
  'http://uaprof.sonymobile.com/C6503R1002.xml' => array( 'Sony', 'Xperia ZL', 'Android', TYPE_MOBILE ),
5116
  'http://uaprof.sonymobile.com/C6503R1003.xml' => array( 'Sony', 'Xperia ZL', 'Android', TYPE_MOBILE ),
 
 
5117
  'http://uaprof.sonymobile.com/C6503R701.xml' => array( 'Sony', 'Xperia ZL', 'Android', TYPE_MOBILE ),
5118
  'http://uaprof.sonymobile.com/C6506R1002.xml' => array( 'Sony', 'Xperia ZL', 'Android', TYPE_MOBILE ),
5119
  'http://uaprof.sonymobile.com/C6506R1003.xml' => array( 'Sony', 'Xperia ZL', 'Android', TYPE_MOBILE ),
 
 
5120
  'http://uaprof.sonymobile.com/L35hR1002.xml' => array( 'Sony', 'Xperia ZL', 'Android', TYPE_MOBILE ),
 
5121
  'http://uaprof.sonymobile.com/C5502R1002.xml' => array( 'Sony', 'Xperia ZR', 'Android', TYPE_MOBILE ),
5122
  'http://uaprof.sonymobile.com/C5502R1003.xml' => array( 'Sony', 'Xperia ZR', 'Android', TYPE_MOBILE ),
 
5123
  'http://uaprof.sonymobile.com/C5503R1002.xml' => array( 'Sony', 'Xperia ZR', 'Android', TYPE_MOBILE ),
5124
  'http://uaprof.sonymobile.com/C5503R1003.xml' => array( 'Sony', 'Xperia ZR', 'Android', TYPE_MOBILE ),
 
5125
  'http://uaprof.sonymobile.com/M36hR1002.xml' => array( 'Sony', 'Xperia ZR', 'Android', TYPE_MOBILE ),
5126
  'http://uaprof.sonymobile.com/M36hR1003.xml' => array( 'Sony', 'Xperia ZR', 'Android', TYPE_MOBILE ),
 
5127
  'http://wap.sonyericsson.com/UAprof/A100iR201.xml' => array( 'Sony Ericsson', 'A100i', NULL, TYPE_MOBILE ),
5128
  'http://wap.sonyericsson.com/UAprof/A260R101.xml' => array( 'Sony Ericsson', 'A260', NULL, TYPE_MOBILE ),
5129
  'http://wap.sonyericsson.com/UAprof/A270R101.xml' => array( 'Sony Ericsson', 'A270', NULL, TYPE_MOBILE ),
5130
  'http://wap.sonyericsson.com/UAprof/A290iR101.xml' => array( 'Sony Ericsson', 'A290i', NULL, TYPE_MOBILE ),
5131
  'http://wap.sonyericsson.com/UAprof/A8iR101.xml' => array( 'Sony Ericsson', 'A8i', 'Android', TYPE_MOBILE ),
 
5132
  'http://wap.sonyericsson.com/UAprof/M1iR101.xml' => array( 'Sony Ericsson', 'Aspen', 'Windows Mobile', TYPE_MOBILE ),
5133
  'http://wap.sonyericsson.com/UAprof/C123R101.xml' => array( 'Sony Ericsson', 'C123', NULL, TYPE_MOBILE ),
5134
  'http://wap.sonyericsson.com/UAprof/C510R101.xml' => array( 'Sony Ericsson', 'C510', NULL, TYPE_MOBILE ),
@@ -5136,7 +5884,9 @@
5136
  'http://wap.sonyericsson.com/UAprof/C901R101.xml' => array( 'Sony Ericsson', 'C901', NULL, TYPE_MOBILE ),
5137
  'http://wap.sonyericsson.com/UAprof/C902R101.xml' => array( 'Sony Ericsson', 'C902', NULL, TYPE_MOBILE ),
5138
  'http://wap.sonyericsson.com/UAprof/C905R101.xml' => array( 'Sony Ericsson', 'C905', NULL, TYPE_MOBILE ),
 
5139
  'http://wap.sonyericsson.com/UAprof/J10i2R101.xml' => array( 'Sony Ericsson', 'Elm', NULL, TYPE_MOBILE ),
 
5140
  'http://www.sonyericsson.com/uaprof/R300R101.xml' => array( 'Sony Ericsson', 'F300', NULL, TYPE_MOBILE ),
5141
  'http://www.sonyericsson.com/uaprof/F305R101.xml' => array( 'Sony Ericsson', 'F305', NULL, TYPE_MOBILE ),
5142
  'http://wap.sonyericsson.com/UAprof/G502R101.xml' => array( 'Sony Ericsson', 'G502', NULL, TYPE_MOBILE ),
@@ -5153,6 +5903,7 @@
5153
  'http://wap.sonyericsson.com/UAprof/K660iR101.xml' => array( 'Sony Ericsson', 'K660i', NULL, TYPE_MOBILE ),
5154
  'http://wap.sonyericsson.com/UAprof/K770iR201-3G.xml' => array( 'Sony Ericsson', 'K770i', NULL, TYPE_MOBILE ),
5155
  'http://wap.sonyericsson.com/UAprof/K790aR201.xml' => array( 'Sony Ericsson', 'K790a', NULL, TYPE_MOBILE ),
 
5156
  'http://wap.sonyericsson.com/UAprof/K800iR201.xml' => array( 'Sony Ericsson', 'K800i', NULL, TYPE_MOBILE ),
5157
  'http://wap.sonyericsson.com/UAprof/K850iR101.xml' => array( 'Sony Ericsson', 'K850i', NULL, TYPE_MOBILE ),
5158
  'http://uaprof.sonymobile.com/WT19iR1002.xml' => array( 'Sony Ericsson', 'Live with Walkman', 'Android', TYPE_MOBILE ),
@@ -5161,17 +5912,21 @@
5161
  'http://wap.sonyericsson.com/UAprof/WT19aR411.xml' => array( 'Sony Ericsson', 'Live with Walkman', 'Android', TYPE_MOBILE ),
5162
  'http://wap.sonyericsson.com/UAprof/WT19iR402.xml' => array( 'Sony Ericsson', 'Live with Walkman', 'Android', TYPE_MOBILE ),
5163
  'http://wap.sonyericsson.com/UAprof/WT19iR411.xml' => array( 'Sony Ericsson', 'Live with Walkman', 'Android', TYPE_MOBILE ),
 
5164
  'http://wap.sonyericsson.com/UAProf/M608cR100.xml' => array( 'Sony Ericsson', 'M608c', 'UIQ', TYPE_MOBILE ),
5165
  'http://wap.sonyericsson.com/uaprof/WT13iR101.xml' => array( 'Sony Ericsson', 'Mix Walkman', 'Android', TYPE_MOBILE ),
5166
  'http://wap.sonyericsson.com/UAprof/J105iR101.xml' => array( 'Sony Ericsson', 'Naite', NULL, TYPE_MOBILE ),
 
5167
  'http://wap.sonyericsson.com/UAprof/P800R101.xml' => array( 'Sony Ericsson', 'P800', 'UIQ', TYPE_MOBILE ),
5168
  'http://wap.sonyericsson.com/UAprof/P800R102.xml' => array( 'Sony Ericsson', 'P800', 'UIQ', TYPE_MOBILE ),
5169
  'http://wap.sonyericsson.com/UAprof/P900R101.xml' => array( 'Sony Ericsson', 'P900', 'UIQ', TYPE_MOBILE ),
5170
  'http://wap.sonyericsson.com/UAprof/P908R101.xml' => array( 'Sony Ericsson', 'P908', 'UIQ', TYPE_MOBILE ),
5171
  'http://wap.sonyericsson.com/UAProf/P990iR100.xml' => array( 'Sony Ericsson', 'P990i', 'UIQ', TYPE_MOBILE ),
5172
  'http://wap.sonyericsson.com/UAProf/P200R100.xml' => array( 'Sony Ericsson', 'Paris', 'UIQ', TYPE_MOBILE ),
 
5173
  'http://wap.sonyericsson.com/UAprof/U1aR000.xml' => array( 'Sony Ericsson', 'Satio', 'Series60', TYPE_MOBILE ),
5174
  'http://wap.sonyericsson.com/UAprof/U1iR000.xml' => array( 'Sony Ericsson', 'Satio', 'Series60', TYPE_MOBILE ),
 
5175
  'http://wap.sonyericsson.com/UAprof/T100R101.xml' => array( 'Sony Ericsson', 'T100', NULL, TYPE_MOBILE ),
5176
  'http://wap.sonyericsson.com/UAprof/T123iR101.xml' => array( 'Sony Ericsson', 'T123', NULL, TYPE_MOBILE ),
5177
  'http://wap.sonyericsson.com/UAprof/T200.xml' => array( 'Sony Ericsson', 'T200', NULL, TYPE_MOBILE ),
@@ -5219,8 +5974,10 @@
5219
  'http://wap.sonyericsson.com/UAprof/W20iR101.xml' => array( 'Sony Ericsson', 'W20i', NULL, TYPE_MOBILE ),
5220
  'http://wap.sonyericsson.com/UAprof/W300iR301.xml' => array( 'Sony Ericsson', 'W300i', NULL, TYPE_MOBILE ),
5221
  'http://www.sonyericsson.com/uaprof/W302R101.xml' => array( 'Sony Ericsson', 'W302', NULL, TYPE_MOBILE ),
 
5222
  'http://wap.sonyericsson.com/UAprof/W350iR201.xml' => array( 'Sony Ericsson', 'W350i', NULL, TYPE_MOBILE ),
5223
  'http://wap.sonyericsson.com/UAprof/W380iR201.xml' => array( 'Sony Ericsson', 'W380i', NULL, TYPE_MOBILE ),
 
5224
  'http://wap.sonyericsson.com/UAprof/W508R101.xml' => array( 'Sony Ericsson', 'W508', NULL, TYPE_MOBILE ),
5225
  'http://wap.sonyericsson.com/UAprof/W595R101.xml' => array( 'Sony Ericsson', 'W595', NULL, TYPE_MOBILE ),
5226
  'http://wap.sonyericsson.com/UAprof/W610iR201.xml' => array( 'Sony Ericsson', 'W610i', NULL, TYPE_MOBILE ),
@@ -5233,6 +5990,8 @@
5233
  'http://wap.sonyericsson.com/UAprof/W890iR101.xml' => array( 'Sony Ericsson', 'W890i', NULL, TYPE_MOBILE ),
5234
  'http://wap.sonyericsson.com/UAprof/W902R101.xml' => array( 'Sony Ericsson', 'W902', NULL, TYPE_MOBILE ),
5235
  'http://wap.sonyericsson.com/UAprof/W908cR101.xml' => array( 'Sony Ericsson', 'W908c', NULL, TYPE_MOBILE ),
 
 
5236
  'http://wap.sonyericsson.com/UAProf/W950iR100.xml' => array( 'Sony Ericsson', 'W950i', 'UIQ', TYPE_MOBILE ),
5237
  'http://wap.sonyericsson.com/UAprof/W995R101.xml' => array( 'Sony Ericsson', 'W995', NULL, TYPE_MOBILE ),
5238
  'http://wap.sonyericsson.com/UAprof/W995aR101.xml' => array( 'Sony Ericsson', 'W995a', NULL, TYPE_MOBILE ),
@@ -5329,6 +6088,7 @@
5329
  'http://wap.sonyericsson.com/UAprof/ST18aR401.xml' => array( 'Sony Ericsson', 'Xperia Ray', 'Android', TYPE_MOBILE ),
5330
  'http://wap.sonyericsson.com/UAprof/ST18aR402.xml' => array( 'Sony Ericsson', 'Xperia Ray', 'Android', TYPE_MOBILE ),
5331
  'http://wap.sonyericsson.com/UAprof/ST18aR411.xml' => array( 'Sony Ericsson', 'Xperia Ray', 'Android', TYPE_MOBILE ),
 
5332
  'http://wap.sonyericsson.com/UAprof/ST18iR401.xml' => array( 'Sony Ericsson', 'Xperia Ray', 'Android', TYPE_MOBILE ),
5333
  'http://wap.sonyericsson.com/UAprof/ST18iR402.xml' => array( 'Sony Ericsson', 'Xperia Ray', 'Android', TYPE_MOBILE ),
5334
  'http://wap.sonyericsson.com/UAprof/ST18iR411.xml' => array( 'Sony Ericsson', 'Xperia Ray', 'Android', TYPE_MOBILE ),
@@ -5386,6 +6146,8 @@
5386
  'http://msai.in/uaprof/spice/M6868n.xml' => array( 'Spice', 'M-6868 Flo', 'MTK', TYPE_MOBILE ),
5387
  'http://www.1066.cn/uaprof/prof/Spice/Mi-315.xml' => array( 'Spice', 'Mi-315', 'Android', TYPE_MOBILE ),
5388
  'http://www.lenovomobile.com/admin/module/product/DownFile/Spice_Mi350_UAProfile.xml' => array( 'Spice', 'Mi-350', 'Android', TYPE_MOBILE ),
 
 
5389
  'http://uap.cellon.com/Starmobile_KNIGHT.xml' => array( 'Starmobile', 'Knight', 'Android', TYPE_MOBILE ),
5390
  'http://www.htcmms.com.tw/tmo/ameo-1.0.xml' => array( 'T-Mobile', 'Ameo', 'Windows Mobile', TYPE_MOBILE ),
5391
  'http://www.htcmms.com.tw/tmo/ameo-1.1.xml' => array( 'T-Mobile', 'Ameo', 'Windows Mobile', TYPE_MOBILE ),
@@ -5426,6 +6188,9 @@
5426
  'http://www-ccpp.tcl-ta.com/files/TCL A986.xml' => array( 'TCL', 'A986', 'Android', TYPE_MOBILE ),
5427
  'http://www-ccpp.tcl-ta.com/files/TCL_A990.xml' => array( 'TCL', 'A990', 'Android', TYPE_MOBILE ),
5428
  'http://www-ccpp.tcl-ta.com/files/TCL A998.xml' => array( 'TCL', 'A998', 'Android', TYPE_MOBILE ),
 
 
 
5429
  'http://www-ccpp.tcl-ta.com/files/TCT_J630T.xml' => array( 'TCL', 'J630T', 'Android', TYPE_MOBILE ),
5430
  'http://www-ccpp.tcl-ta.com/files/TCL_J720.xml' => array( 'TCL', 'J720', 'Android', TYPE_MOBILE ),
5431
  'http://www-ccpp.tcl-ta.com/files/TCL_P600.xml' => array( 'TCL', 'P600', 'Android', TYPE_MOBILE ),
@@ -5433,10 +6198,14 @@
5433
  'http://www-ccpp.tcl-ta.com/files/TCL_P606T.xml' => array( 'TCL', 'P606T', 'Android', TYPE_MOBILE ),
5434
  'http://www-ccpp.tcl-ta.com/files/TCL_S820.xml' => array( 'TCL', 'S820', 'Android', TYPE_MOBILE ),
5435
  'http://www-ccpp.tcl-ta.com/files/TCL_S826L.xml' => array( 'TCL', 'S826', 'Android', TYPE_MOBILE ),
 
5436
  'http://www-ccpp.tcl-ta.com/files/TCL_S850.xml' => array( 'TCL', 'S850', 'Android', TYPE_MOBILE ),
5437
  'http://www-ccpp.tcl-ta.com/files/TCL_S860.xml' => array( 'TCL', 'S860', 'Android', TYPE_MOBILE ),
5438
  'http://www-ccpp.tcl-ta.com/files/TCL_S950.xml' => array( 'TCL', 'S950', 'Android', TYPE_MOBILE ),
5439
  'http://www-ccpp.tcl-ta.com/files/TCL_S950T.xml' => array( 'TCL', 'S950', 'Android', TYPE_MOBILE ),
 
 
 
5440
  'http://www-ccpp.tcl-ta.com/files/TCL_W939.xml' => array( 'TCL', 'W939', 'Android', TYPE_MOBILE ),
5441
  'http://www-ccpp.tcl-ta.com/files/TCL_W969.xml' => array( 'TCL', 'W969', 'Android', TYPE_MOBILE ),
5442
  'http://www-ccpp.tcl-ta.com/files/TCL_Y710.xml' => array( 'TCL', 'Y710', 'Android', TYPE_MOBILE ),
@@ -5510,6 +6279,7 @@
5510
  'http://www.sharp-mobile.com/UAProf/703SH_G001_base.xml' => array( 'Vodafone', '703SH', NULL, TYPE_MOBILE ),
5511
  'http://www.sharp-mobile.com/UAProf/V703SHf_SHJ001_3g.xml' => array( 'Vodafone', '703SH', NULL, TYPE_MOBILE ),
5512
  'http://www.sharp-mobile.com/UAProf/V705SH_SHJ001_3g.xml' => array( 'Vodafone', '705SH', NULL, TYPE_MOBILE ),
 
5513
  'http://gphone.toshiba.co.jp/tech/profiles/UAPROF/VFKK/Vodafone_803T_r100_3G.xml' => array( 'Vodafone', '803T', NULL, TYPE_MOBILE ),
5514
  'http://gphone.toshiba.co.jp/tech/profiles/UAPROF/VFKK/Vodafone_803T_r100_GPRS.xml' => array( 'Vodafone', '803T', NULL, TYPE_MOBILE ),
5515
  'http://www.sharp-mobile.com/UAProf/V804SH_SHJ001_3g.xml' => array( 'Vodafone', '804SH', NULL, TYPE_MOBILE ),
@@ -5532,10 +6302,12 @@
5532
  'http://www-ccpp.tcl-ta.com/files/Vodafone_975.xml' => array( 'Vodafone', '975', 'Android', TYPE_MOBILE ),
5533
  'http://www-ccpp.tcl-ta.com/files/Vodafone_975N.xml' => array( 'Vodafone', '975', 'Android', TYPE_MOBILE ),
5534
  'http://www-ccpp.tcl-ta.com/files/Vodafone_Chat_655W.rdf' => array( 'Vodafone', 'Chat 655', NULL, TYPE_MOBILE ),
 
5535
  'http://vodafone.51coolpad.com/UAProfile/vodafone/Smart-4G.xml' => array( 'Vodafone', 'Smart 4G', 'Android', TYPE_MOBILE ),
5536
  'http://www.zte.com.cn/mobile/uaprof/ZTE-SmartQ-WCDMA.xml' => array( 'Vodafone', 'Smart Chat', 'Android', TYPE_MOBILE ),
5537
  'http://www-ccpp.tcl-ta.com/files/Vodafone_Smart_II.xml' => array( 'Vodafone', 'Smart II', 'Android', TYPE_MOBILE ),
5538
  'http://www-ccpp.tcl-ta.com/files/Vodafone_Smart_II_3G.xml' => array( 'Vodafone', 'Smart II', 'Android', TYPE_MOBILE ),
 
5539
  'http://s3.lenovomm.com/Obelix_Profile.xml' => array( 'Vodafone', 'Smart Tab III 10', 'Android', TYPE_MOBILE ),
5540
  'http://s3.lenovomm.com/Asterix_Profile.xml' => array( 'Vodafone', 'Smart Tab III 7', 'Android', TYPE_TABLET ),
5541
  'http://www.zte.com.cn/mobile/uaprof/VodafoneSmartTab10.xml' => array( 'Vodafone', 'SmartTab 10', 'Android', TYPE_TABLET ),
@@ -5560,6 +6332,7 @@
5560
  'http://www.voxtel.ru/UAProf/Voxtel_vs400.xml' => array( 'Voxtel', 'VS400', NULL, TYPE_MOBILE ),
5561
  'http://www.ngm-mobile.com/UserAgentProfiles/ngmwilcojb.xml' => array( 'Walton', 'Primo G1', 'Android', TYPE_MOBILE ),
5562
  'http://www.wonutel.co.kr/UAProfile/WonuS1.xml' => array( 'Wonu', 'S1', NULL, TYPE_MOBILE ),
 
5563
  'http://nmsc.ctvap.cn/uaprof/YCT/YCT_TE600_1_20101228.xml' => array( 'YCT', 'TE600', 'Android', TYPE_MOBILE ),
5564
  'http://211.42.201.70/ua_profile/ZMEM1070.xml' => array( 'Zonda', 'ZMEM1070', NULL, TYPE_MOBILE ),
5565
  'http://211.42.201.70/ua_profile/ZMEM1075.xml' => array( 'Zonda', 'ZMEM1075', NULL, TYPE_MOBILE ),
@@ -5568,12 +6341,18 @@
5568
  'http://www.zte.com.cn/mobile/uaprof/ZTEA37.xml' => array( 'ZTE', 'A37', NULL, TYPE_MOBILE ),
5569
  'http://www.zte.com.cn/mobile/uaprof/Acqua.xml' => array( 'ZTE', 'Acqua', 'Android', TYPE_MOBILE ),
5570
  'http://www.zte.com.cn/mobile/uaprof/ARIZONA.xml' => array( 'ZTE', 'Arizona', 'Android', TYPE_MOBILE ),
 
5571
  'http://www.zte.com.cn/mobile/uaprof/a5.xml' => array( 'ZTE', 'Blade', 'Android', TYPE_MOBILE ),
5572
  'http://www.zte.com.cn/mobile/uaprof/ZTE Blade III Pro.xml' => array( 'ZTE', 'Blade III Pro', 'Android', TYPE_MOBILE ),
 
 
 
5573
  'http://www.zte.com.cn/mobile/uaprof/Blade S.xml' => array( 'ZTE', 'Blade S', 'Android', TYPE_MOBILE ),
 
5574
  'http://www.zte.com.cn/mobile/uaprof/ZTE-Crescent.xml' => array( 'ZTE', 'Crescent', 'Android', TYPE_MOBILE ),
5575
  'http://device.telusmobility.com/zte/ZTED90-0.rdf' => array( 'ZTE', 'D90', NULL, TYPE_MOBILE ),
5576
  'http://www.zte.com.cn/mobile/uaprof/ZTE-U-E850(Movilnet).xml' => array( 'ZTE', 'E850', NULL, TYPE_MOBILE ),
 
5577
  'http://www.zte.com.cn/mobile/uaprof/ZTE-F150.xml' => array( 'ZTE', 'F150', NULL, TYPE_MOBILE ),
5578
  'http://www.zte.com.cn/mobile/uaprof/ZTE-F151.xml' => array( 'ZTE', 'F151', NULL, TYPE_MOBILE ),
5579
  'http://www.zte.com.cn/mobile/uaprof/ZTE-F152.xml' => array( 'ZTE', 'F152', NULL, TYPE_MOBILE ),
@@ -5592,9 +6371,13 @@
5592
  'http://www.zte.com.cn/mobile/uaprof/ZTE-F880.xml' => array( 'ZTE', 'F880', NULL, TYPE_MOBILE ),
5593
  'http://www.zte.com.cn/mobile/uaprof/ZTE-F912.xml' => array( 'ZTE', 'F912', NULL, TYPE_MOBILE ),
5594
  'http://www.zte.com.cn/mobile/uaprof/ZTE-G X760.xml' => array( 'ZTE', 'G X760', NULL, TYPE_MOBILE ),
 
5595
  'http://www.zte.com.cn/mobile/uaprof/ZTE-A7.xml' => array( 'ZTE', 'Grand X2', 'Android', TYPE_MOBILE ),
5596
  'http://www.zte.com.cn/mobile/uaprof/ZTE-Jack-3G(Orange).xml' => array( 'ZTE', 'Jack', NULL, TYPE_MOBILE ),
5597
  'http://www.zte.com.cn/mobile/uaprof/ZTE KIS LITE.xml' => array( 'ZTE', 'Kis Lite', 'Android', TYPE_MOBILE ),
 
 
 
5598
  'http://www.zte.com.cn/mobile/uaprof/Light.xml' => array( 'ZTE', 'Light Tab', 'Android', TYPE_TABLET ),
5599
  'http://www.zte.com.cn/mobile/uaprof/V9.xml' => array( 'ZTE', 'Light Tab', 'Android', TYPE_TABLET ),
5600
  'http://www.zte.com.cn/mobile/uaprof/V9_VIVO.xml' => array( 'ZTE', 'Light Tab', 'Android', TYPE_TABLET ),
@@ -5604,7 +6387,9 @@
5604
  'http://www.zte.com.cn/mobile/uaprof/V9S.xml' => array( 'ZTE', 'Light Tab 3', 'Android', TYPE_MOBILE ),
5605
  'http://www.zte.com.cn/mobile/uaprof/V9C.xml' => array( 'ZTE', 'Light Tab Pro', 'Android', TYPE_TABLET ),
5606
  'http://www.zte.com.cn/mobile/uaprof/TNZ_V9.xml' => array( 'ZTE', 'Light Tab V9', 'Android', TYPE_TABLET ),
 
5607
  'http://mms.mycricket.com/A415_Uaprof.xml' => array( 'ZTE', 'Memo', NULL, TYPE_MOBILE ),
 
5608
  'http://www.zte.com.cn/mobile/uaprof/N5.xml' => array( 'ZTE', 'N5 Grand Memo', 'Android', TYPE_MOBILE ),
5609
  'http://www.zte.com.cn/mobile/uaprof/ZTE N5.xml' => array( 'ZTE', 'N5 Grand Memo', 'Android', TYPE_MOBILE ),
5610
  'http://www.zte.com.cn/mobile/uaprof/N5S.xml' => array( 'ZTE', 'N5S', 'Android', TYPE_MOBILE ),
@@ -5618,6 +6403,10 @@
5618
  'http://uaprof.qma.com.tw/ZTE N789.xml' => array( 'ZTE', 'N789', 'Android', TYPE_MOBILE ),
5619
  'http://www.zte.com.cn/mobile/uaprof/N790.xml' => array( 'ZTE', 'N790', 'Android', TYPE_MOBILE ),
5620
  'http://www.zte.com.cn/mobile/uaprof/N790S.xml' => array( 'ZTE', 'N790S', 'Android', TYPE_MOBILE ),
 
 
 
 
5621
  'http://www.zte.com.cn/mobile/uaprof/ZTE-N850PMI.xml' => array( 'ZTE', 'N850', 'Android', TYPE_MOBILE ),
5622
  'http://device.sprintpcs.com/ZTE/ZTEN850KT/N850V1.0.0B14.rdf' => array( 'ZTE', 'N850 Fury', 'Android', TYPE_MOBILE ),
5623
  'http://mms.revol.us/uaprofs/ZTE_N850.xml' => array( 'ZTE', 'N850 Fury', 'Android', TYPE_MOBILE ),
@@ -5635,6 +6424,7 @@
5635
  'http://www.zte.com.cn/mobile/uaprof/ZTE-N860PMI.xml' => array( 'ZTE', 'N860 Warp', 'Android', TYPE_MOBILE ),
5636
  'http://device.sprintpcs.com/ZTE/N861-BOOST/N861V1.0.0B07.rdf' => array( 'ZTE', 'N861 Warp II', 'Android', TYPE_MOBILE ),
5637
  'http://device.sprintpcs.com/ZTE/N861-BOOST/N861V1.0.0B09.rdf' => array( 'ZTE', 'N861 Warp II', 'Android', TYPE_MOBILE ),
 
5638
  'http://device.sprintpcs.com/ZTE/N861-Chameleon/latest' => array( 'ZTE', 'N861 Warp II', 'Android', TYPE_MOBILE ),
5639
  'http://www.zte.com.cn/mobile/uaprof/ZTE-N861PMI.xml' => array( 'ZTE', 'N861 Warp II', 'Android', TYPE_MOBILE ),
5640
  'http://www.zte.com.cn/mobile/uaprof/N880.xml' => array( 'ZTE', 'N880 Blade', 'Android', TYPE_MOBILE ),
@@ -5643,14 +6433,18 @@
5643
  'http://www.zte.com.cn/mobile/uaprof/N880E.xml' => array( 'ZTE', 'N880E', 'Android', TYPE_MOBILE ),
5644
  'http://www.zte.com.cn/mobile/uaprof/N900.xml' => array( 'ZTE', 'N900', 'Android', TYPE_MOBILE ),
5645
  'http://uaprof.qma.com.tw/ZTE-N909.xml' => array( 'ZTE', 'N909', 'Android', TYPE_MOBILE ),
 
5646
  'http://uaprof.metropcs.net/UAProf/ZTE-N910.xml' => array( 'ZTE', 'N910 Anthem', 'Android', TYPE_MOBILE ),
5647
  'http://device.sprintpcs.com/ZTE/N9100-BOOST/DroidSmith_Force_0.6_Beta.rdf' => array( 'ZTE', 'N9100 Force', 'Android', TYPE_MOBILE ),
5648
  'http://device.sprintpcs.com/ZTE/N9100-BOOST/N9100V1.0.0B09.rdf' => array( 'ZTE', 'N9100 Force', 'Android', TYPE_MOBILE ),
5649
  'http://www.zte.com.cn/mobile/uaprof/N9101.xml' => array( 'ZTE', 'N9101 Imperial', 'Android', TYPE_MOBILE ),
5650
  'http://device.sprintpcs.com/ZTE/N9500-BOOST/N9500V1.0.0B14.rdf' => array( 'ZTE', 'N9500 Flash', 'Android', TYPE_MOBILE ),
 
5651
  'http://device.sprintpcs.com/ZTE/N9500-SPRINT/N9500V1.0.0B13.rdf' => array( 'ZTE', 'N9500 Flash', 'Android', TYPE_MOBILE ),
5652
  'http://device.sprintpcs.com/ZTE/N9500-SPRINT/N9500V1.0.0B14.rdf' => array( 'ZTE', 'N9500 Flash', 'Android', TYPE_MOBILE ),
 
5653
  'http://www.zte.com.cn/mobile/uaprof/ZTE_N9511.xml' => array( 'ZTE', 'N9511', 'Android', TYPE_MOBILE ),
 
5654
  'http://device.sprintpcs.com/ZTE/N9520-Chameleon/latest' => array( 'ZTE', 'N9520 Stormer', 'Android', TYPE_MOBILE ),
5655
  'http://www.zte.com.cn/mobile/uaprof/ZTE N901.xml' => array( 'ZTE', 'N960', 'Android', TYPE_MOBILE ),
5656
  'http://www.zte.com.cn/mobile/uaprof/ZTE N970.xml' => array( 'ZTE', 'N970 Grand X', 'Android', TYPE_MOBILE ),
@@ -5659,7 +6453,9 @@
5659
  'http://device.sprintpcs.com/ZTE/N9810-SPRINT/N9810V1.0.0B06.rdf' => array( 'ZTE', 'N9810 Vital', 'Android', TYPE_MOBILE ),
5660
  'http://www.zte.com.cn/mobile/uaprof/N983.xml' => array( 'ZTE', 'N983', 'Android', TYPE_MOBILE ),
5661
  'http://www.zte.com.cn/mobile/uaprof/N986.xml' => array( 'ZTE', 'N986', 'Android', TYPE_MOBILE ),
 
5662
  'http://www.ztemt.com.cn/mobile/uaprof/ZTE_NX501_VE.xml' => array( 'ZTE', 'NX501', 'Android', TYPE_MOBILE ),
 
5663
  'http://device.sprintpcs.com/ZTE/ZTESV55TAB/B03.rdf' => array( 'ZTE', 'Optik', 'Android', TYPE_TABLET ),
5664
  'http://device.sprintpcs.com/ZTE/ZTESV55TAB/B12.rdf' => array( 'ZTE', 'Optik', 'Android', TYPE_TABLET ),
5665
  'http://www.zte.com.cn/mobile/uaprof/ZTE_C_R750_3_20100725.xml' => array( 'ZTE', 'R750', 'Android', TYPE_MOBILE ),
@@ -5670,16 +6466,21 @@
5670
  'http://www.zte.com.cn/mobile/uaprof/ZTE-Skate4.3.xml' => array( 'ZTE', 'Skate', 'Android', TYPE_MOBILE ),
5671
  'http://www.zte.com.cn/mobile/uaprof/ZTE_Skate_TME.xml' => array( 'ZTE', 'Skate', 'Android', TYPE_MOBILE ),
5672
  'http://www.zte.com.cn/mobile/uaprof/Skate-Pro.xml' => array( 'ZTE', 'Skate Pro', 'Android', TYPE_MOBILE ),
 
5673
  'http://www.zte.com.cn/mobile/uaprof/ZTE_T12.xml' => array( 'ZTE', 'T12', 'Android', TYPE_MOBILE ),
5674
  'http://www.zte.com.cn/mobile/uaprof/ZTE-T165i.xml' => array( 'ZTE', 'T165i', NULL, TYPE_MOBILE ),
5675
  'http://www.zte.com.cn/mobile/uaprof/ZTE_T760.xml' => array( 'ZTE', 'T760', 'Android', TYPE_MOBILE ),
5676
  'http://www.zte.com.cn/mobile/uaprof/ZTE-T82.xml' => array( 'ZTE', 'T82', 'Android', TYPE_MOBILE ),
 
 
5677
  'http://uaprofile.zte.com/uaprof/ZTE-T-U830-1.0.xml' => array( 'ZTE', 'TU830', 'Android', TYPE_MOBILE ),
5678
  'http://www.zte.com.cn/mobile/uaprof/ZTE-TUIRES.xml' => array( 'ZTE', 'Tuires', 'Android', TYPE_MOBILE ),
5679
  'http://www.zte.com.cn/mobile/uaprof/ZTE-T60.xml' => array( 'ZTE', 'Tureis', 'Android', TYPE_MOBILE ),
 
5680
  'http://www.zte.com.cn/mobile/uaprof/ZTEU790.xml' => array( 'ZTE', 'U790', 'Android', TYPE_MOBILE ),
5681
  'http://www.zte.com.cn/mobile/uaprof/ZTE_U791.xml' => array( 'ZTE', 'U791', 'Android', TYPE_MOBILE ),
5682
  'http://www.zte.com.cn/mobile/uaprof/ZTE-T U802.xml' => array( 'ZTE', 'U802', 'Android', TYPE_MOBILE ),
 
5683
  'http://www.zte.com.cn/mobile/uaprof/ZTE U879.xml' => array( 'ZTE', 'U879', 'Android', TYPE_MOBILE ),
5684
  'http://www.zte.com.cn/mobile/uaprof/ZTE-T U880.xml' => array( 'ZTE', 'U880 Blade', 'Android', TYPE_MOBILE ),
5685
  'http://www.zte.com.cn/mobile/uaprof/ZTE_U887_UAProfile.xml' => array( 'ZTE', 'U887', 'Android', TYPE_MOBILE ),
@@ -5694,7 +6495,11 @@
5694
  'http://www.zte.com.cn/mobile/uaprof/ZTE_V791.xml' => array( 'ZTE', 'V791', 'Android', TYPE_MOBILE ),
5695
  'http://www.zte.com.cn/mobile/uaprof/ZTE_V793.xml' => array( 'ZTE', 'V793', 'Android', TYPE_MOBILE ),
5696
  'http://www.zte.com.cn/mobile/uaprof/ZTE_V795_2.3.xml' => array( 'ZTE', 'V795', 'Android', TYPE_MOBILE ),
 
 
5697
  'http://www.zte.com.cn/mobile/uaprof/ZTE_V807.xml' => array( 'ZTE', 'V807 Blade C', 'Android', TYPE_MOBILE ),
 
 
5698
  'http://www.zte.com.cn/mobile/uaprof/ZTE_V818.xml' => array( 'ZTE', 'V818', 'Android', TYPE_MOBILE ),
5699
  'http://www.zte.com.cn/mobile/uaprof/ZTE-GV821.xml' => array( 'ZTE', 'V821', 'Android', TYPE_MOBILE ),
5700
  'http://www.zte.com.cn/mobile/uaprof/V852.xml' => array( 'ZTE', 'V852', 'Android', TYPE_MOBILE ),
@@ -5720,9 +6525,12 @@
5720
  'http://www.zte.com.cn/mobile/uaprof/ZTE Grand Memo LTE.xml' => array( 'ZTE', 'V9815 Grand Memo', 'Android', TYPE_MOBILE ),
5721
  'http://www.zte.com.cn/mobile/uaprof/Grand X Pro.xml' => array( 'ZTE', 'V983 Grand X Pro', 'Android', TYPE_MOBILE ),
5722
  'http://www.zte.com.cn/mobile/uaprof/ZTE V985.xml' => array( 'ZTE', 'V985 Grand Era', 'Android', TYPE_MOBILE ),
 
 
5723
  'http://www.zte.com.cn/mobile/uaprof/ZTE_V987.xml' => array( 'ZTE', 'V987', 'Android', TYPE_MOBILE ),
5724
  'http://www.zte.com.cn/mobile/uaprof/ZTE_V987_4.2.xml' => array( 'ZTE', 'V987', 'Android', TYPE_MOBILE ),
5725
  'http://www.zte.com.cn/mobile/uaprof/ZTE V988.xml' => array( 'ZTE', 'V988', 'Android', TYPE_MOBILE ),
 
5726
  'http://www.zte.com.cn/mobile/uaprof/ZTE Grand S.xml' => array( 'ZTE', 'V988 Grand S', 'Android', TYPE_MOBILE ),
5727
  'http://mmslab.mycricket.com/zte-x500.xml' => array( 'ZTE', 'X500 Score', 'Android', TYPE_MOBILE ),
5728
  'http://uaprof.metropcs.net/UAProf/ZTE-X500.xml' => array( 'ZTE', 'X500 Score', 'Android', TYPE_MOBILE ),
@@ -5733,12 +6541,17 @@
5733
  'http://www.ztemt.com/mobile/uaprof/X990_V2_Z10.xml' => array( 'ZTE', 'X990', NULL, TYPE_MOBILE ),
5734
  'http://www.zte.com.cn/mobile/uaprof/ZTE-Z431.xml' => array( 'ZTE', 'Z431', NULL, TYPE_MOBILE ),
5735
  'http://www.zte.com.cn/mobile/uaprof/ZTE-Z660G.xml' => array( 'ZTE', 'Z660', 'Android', TYPE_MOBILE ),
 
5736
  'http://www.zte.com.cn/mobile/uaprof/Z740.xml' => array( 'ZTE', 'Z740 Radiant', 'Android', TYPE_MOBILE ),
 
5737
  'http://www.zte.com.cn/mobile/uaprof/ZTE_V970.xml' => array( 'ZTE', 'Z970 Grand X', 'Android', TYPE_MOBILE ),
5738
  'http://www.zte.com.cn/mobile/uaprof/ZTE_V970M.xml' => array( 'ZTE', 'Z970 Grand X', 'Android', TYPE_MOBILE ),
5739
  'http://www.zte.com.cn/mobile/uaprof/ZTE_V970M_JB.xml' => array( 'ZTE', 'Z970 Grand X', 'Android', TYPE_MOBILE ),
5740
  'http://www.zte.com.cn/mobile/uaprof/ZTE-Z990.xml' => array( 'ZTE', 'Z990 Roamer', 'Android', TYPE_MOBILE ),
5741
  'http://www.zte.com.cn/mobile/uaprof/ZTE-Z990G.xml' => array( 'ZTE', 'Z990 Roamer', 'Android', TYPE_MOBILE ),
 
 
5742
  'http://www.zte.com.cn/mobile/uaprof/Z998.xml' => array( 'ZTE', 'Z998', 'Android', TYPE_MOBILE ),
 
5743
  'http://downloadmirror.intel.com/20932/eng/SP-A20i_UA_Profile.xml' => array( 'Мегафон', 'SP-A20i Mint', 'Android', TYPE_MOBILE ),
5744
  );
16
  'http://global-download.acer.com/SupportFiles/Files/UAProfile/XML/Acer_A1-811_JDQ39_Profile.xml' => array( 'Acer', 'Iconia A1-811', 'Android', TYPE_MOBILE ),
17
  'http://global-download.acer.com/SupportFiles/Files/UAProfile/XML/Acer_A1-812_JDQ39_Profile.xml' => array( 'Acer', 'Iconia A1-812', 'Android', TYPE_TABLET ),
18
  'http://go.acer.com/?id=5566' => array( 'Acer', 'Iconia A1-820', 'Android', TYPE_TABLET ),
19
+ 'http://go.acer.com/?id=17979' => array( 'Acer', 'Iconia A1-830', 'Android', TYPE_TABLET ),
20
+ 'http://go.acer.com/?id=17995' => array( 'Acer', 'Iconia One 7 B1-730 HD', 'Android', TYPE_TABLET ),
21
  'http://support.acer.com/UAprofile/Acer_S300_Profile.xml' => array( 'Acer', 'Iconia Smart', 'Android', TYPE_MOBILE ),
22
  'http://support.acer.com/UAprofile/Acer_A100_IML74K_Profile.xml' => array( 'Acer', 'Iconia Tab A100', 'Android', TYPE_TABLET ),
23
  'http://support.acer.com/UAprofile/Acer_A100_Profile.xml' => array( 'Acer', 'Iconia Tab A100', 'Android', TYPE_TABLET ),
47
  'http://support.acer.com/UAprofile/Acer_A701_JRO03H_Profile.xml' => array( 'Acer', 'Iconia Tab A701', 'Android', TYPE_TABLET ),
48
  'http://support.acer.com/UAprofile/Acer_S100_Profile.xml' => array( 'Acer', 'Liquid', 'Android', TYPE_MOBILE ),
49
  'http://go.acer.com?id=17494' => array( 'Acer', 'Liquid E2', 'Android', TYPE_MOBILE ),
50
+ 'http://go.acer.com?id=17895' => array( 'Acer', 'Liquid E3', 'Android', TYPE_MOBILE ),
51
  'http://support.acer.com/UAprofile/Acer_E210_Profile.xml' => array( 'Acer', 'Liquid Express', 'Android', TYPE_MOBILE ),
52
  'http://support.acer.com/UAprofile/Acer_E320_Profile.xml' => array( 'Acer', 'Liquid Express', 'Android', TYPE_MOBILE ),
53
  'http://support.acer.com/UAprofile/Acer_E310_Profile.xml' => array( 'Acer', 'Liquid mini', 'Android', TYPE_MOBILE ),
54
  'http://support.acer.com/UAprofile/Acer_S120_Profile.xml' => array( 'Acer', 'Liquid mt', 'Android', TYPE_MOBILE ),
55
  'http://global-download.acer.com/SupportFiles/Files/UAProfile/XML/Acer_S510_JDQ39_Profile.xml' => array( 'Acer', 'Liquid S', 'Android', TYPE_MOBILE ),
56
  'http://go.acer.com/?id=17873' => array( 'Acer', 'Liquid S', 'Android', TYPE_MOBILE ),
57
+ 'http://go.acer.com/?id=17891' => array( 'Acer', 'Liquid S2', 'Android', TYPE_MOBILE ),
58
  'http://support.acer.com/UAprofile/Acer_S520_JDQ39_Profile.xml' => array( 'Acer', 'Liquid S2', 'Android', TYPE_MOBILE ),
59
  'http://support.acer.com/UAprofile/Acer_Z110_UAProfile.xml' => array( 'Acer', 'Liquid Z', 'Android', TYPE_MOBILE ),
60
  'http://support.acer.com/UAprofile/Acer_Z120_UAProfile.xml' => array( 'Acer', 'Liquid Z2', 'Android', TYPE_MOBILE ),
61
+ 'http://global-download.acer.com/SupportFiles/Files/UAProfile/XML/Acer_Z130_JDQ39_Profile.xml' => array( 'Acer', 'Liquid Z3', 'Android', TYPE_MOBILE ),
62
+ 'http://go.acer.com/?id=17980' => array( 'Acer', 'Liquid Z4', 'Android', TYPE_MOBILE ),
63
+ 'http://go.acer.com/?id=17940' => array( 'Acer', 'Liquid Z5', 'Android', TYPE_MOBILE ),
64
  'http://support.acer.com/UAprofile/Acer_S200_Profile.xml' => array( 'Acer', 'neoTouch S200', 'Windows Mobile', TYPE_MOBILE ),
65
  'http://support.acer.com/UAprofile/Acer_S110_Profile.xml' => array( 'Acer', 'Stream', 'Android', TYPE_MOBILE ),
66
  'http://support.acer.com/UAprofile/Acer_TD600_profile.xml' => array( 'Acer', 'TD600', 'Android', TYPE_MOBILE ),
67
+ 'http://go.acer.com/?id=17684' => array( 'Acer', 'Touch and 3D Monitor DA245HQL', 'Android', ),
68
  'http://www.airnessmobile.com/uaprof/Airness-Air99.xml' => array( 'Airness', 'Air99', NULL, TYPE_MOBILE ),
69
  'http://www.airnessmobile.com/uaprof/HT-1.xml' => array( 'Airness', 'HT-1', NULL, TYPE_MOBILE ),
70
  'http://www.airnessmobile.com/uaprof/slide99.xml' => array( 'Airness', 'Slide99', NULL, TYPE_MOBILE ),
71
+ 'http://www-ccpp.tcl-ta.com/files/ALCATEL_A383G.rdf' => array( 'Alcatel', 'A383G', NULL, TYPE_MOBILE ),
72
  'http://www-ccpp-mpd.alcatel.com/files/ALCATEL-BF4_2.0.rdf' => array( 'Alcatel', 'BF4', NULL, TYPE_MOBILE ),
73
  'http://www-ccpp-mpd.alcatel.com/files/ALCATEL-BF5_1.0.rdf' => array( 'Alcatel', 'BF5', NULL, TYPE_MOBILE ),
74
  'http://www-ccpp.tcl-ta.com/odm/ALCATEL_D6.rdf' => array( 'Alcatel', 'D6', NULL, TYPE_MOBILE ),
80
  'http://www-ccpp.tcl-ta.com/files/ALCATEL-OT-802.rdf' => array( 'Alcatel', 'One Touch 802', NULL, TYPE_MOBILE ),
81
  'http://www-ccpp.tcl-ta.com/files/ALCATEL_one_touch_803A.rdf' => array( 'Alcatel', 'One Touch 803', NULL, TYPE_MOBILE ),
82
  'http://www-ccpp.tcl-ta.com/files/ALCATEL-OT-806.rdf' => array( 'Alcatel', 'One Touch 806', NULL, TYPE_MOBILE ),
83
+ 'http://www-ccpp.tcl-ta.com/files/ALCATEL-OT-807D.rdf' => array( 'Alcatel', 'One Touch 807', NULL, TYPE_MOBILE ),
84
  'http://www-ccpp.tcl-ta.com/files/ALCATEL_one_touch_813.rdf' => array( 'Alcatel', 'One Touch 813', NULL, TYPE_MOBILE ),
85
  'http://www-ccpp.tcl-ta.com/files/ALCATEL_one_touch_813A.rdf' => array( 'Alcatel', 'One Touch 813', NULL, TYPE_MOBILE ),
86
  'http://www-ccpp.tcl-ta.com/files/ALCATEL_one_touch_813D.rdf' => array( 'Alcatel', 'One Touch 813', NULL, TYPE_MOBILE ),
90
  'http://www-ccpp.tcl-ta.com/files/ALCATEL-OT871A.rdf' => array( 'Alcatel', 'One Touch 871A', NULL, TYPE_MOBILE ),
91
  'http://www-ccpp.tcl-ta.com/files/ALCATEL_one_touch_890.xml' => array( 'Alcatel', 'One Touch 890', 'Android', TYPE_MOBILE ),
92
  'http://www-ccpp.tcl-ta.com/files/ALCATEL_one_touch_890D.xml' => array( 'Alcatel', 'One Touch 890', 'Android', TYPE_MOBILE ),
93
+ 'http://www-ccpp.tcl-ta.com/files/ALCATEL_one_touch_900M.rdf' => array( 'Alcatel', 'One Touch 900M', NULL, TYPE_MOBILE ),
94
  'http://www-ccpp.tcl-ta.com/files/ALCATEL_one_touch_903.xml' => array( 'Alcatel', 'One Touch 903', 'Android', TYPE_MOBILE ),
95
  'http://www-ccpp.tcl-ta.com/files/ALCATEL_one_touch_903A.xml' => array( 'Alcatel', 'One Touch 903', 'Android', TYPE_MOBILE ),
96
  'http://www-ccpp.tcl-ta.com/files/ALCATEL_one_touch_903D.xml' => array( 'Alcatel', 'One Touch 903', 'Android', TYPE_MOBILE ),
128
  'http://www-ccpp.tcl-ta.com/files/ALCATEL_ONE_TOUCH_991.xml' => array( 'Alcatel', 'One Touch 991', 'Android', TYPE_MOBILE ),
129
  'http://www-ccpp.tcl-ta.com/files/ALCATEL_ONE_TOUCH_991A.xml' => array( 'Alcatel', 'One Touch 991', 'Android', TYPE_MOBILE ),
130
  'http://www-ccpp.tcl-ta.com/files/ALCATEL_ONE_TOUCH_991D.xml' => array( 'Alcatel', 'One Touch 991', 'Android', TYPE_MOBILE ),
131
+ 'http://www-ccpp.tcl-ta.com/files/ALCATEL_ONE_TOUCH_991_Orange.xml' => array( 'Alcatel', 'One Touch 991', 'Android', TYPE_MOBILE ),
132
  'http://www-ccpp.tcl-ta.com/files/ALCATEL_one_touch_992D.xml' => array( 'Alcatel', 'One Touch 992', 'Android', TYPE_MOBILE ),
133
  'http://www-ccpp.tcl-ta.com/files/ALCATEL_one_touch_993.xml' => array( 'Alcatel', 'One Touch 993', 'Android', TYPE_MOBILE ),
134
  'http://www-ccpp.tcl-ta.com/files/ALCATEL_one_touch_995.xml' => array( 'Alcatel', 'One Touch 995', 'Android', TYPE_MOBILE ),
144
  'http://www-ccpp.tcl-ta.com/files/onetouch_EVO7.xml' => array( 'Alcatel', 'One Touch Evo 7', 'Android', TYPE_TABLET ),
145
  'http://www-ccpp.tcl-ta.com/files/ONE_TOUCH_EVO7HD.xml' => array( 'Alcatel', 'One Touch Evo 7 HD', 'Android', TYPE_TABLET ),
146
  'http://www-ccpp.tcl-ta.com/files/ALCATEL_ONE_TOUCH_7024N.xml' => array( 'Alcatel', 'One Touch Fierce', 'Android', TYPE_MOBILE ),
147
+ 'http://www-ccpp.tcl-ta.com/files/ALCATEL_ONE_TOUCH_7024R.xml' => array( 'Alcatel', 'One Touch Fierce', 'Android', TYPE_MOBILE ),
148
  'http://www-ccpp.tcl-ta.com/files/ALCATEL_ONE_TOUCH_7024W.xml' => array( 'Alcatel', 'One Touch Fierce', 'Android', TYPE_MOBILE ),
149
+ 'http://www-ccpp.tcl-ta.com/files/ALCATELOneTouch4019X.xml' => array( 'Alcatel', 'One Touch Fire C', 'Firefox OS', TYPE_MOBILE ),
150
  'http://www-ccpp.tcl-ta.com/files/ALCATEL_ONE_TOUCH_6030A.xml' => array( 'Alcatel', 'One Touch Idol', 'Android', TYPE_MOBILE ),
151
  'http://www-ccpp.tcl-ta.com/files/ALCATEL_ONE_TOUCH_6030D.xml' => array( 'Alcatel', 'One Touch Idol', 'Android', TYPE_MOBILE ),
152
  'http://www-ccpp.tcl-ta.com/files/ALCATEL_ONE_TOUCH_6030X.xml' => array( 'Alcatel', 'One Touch Idol', 'Android', TYPE_MOBILE ),
153
  'http://www-ccpp.tcl-ta.com/files/ALCATEL_ONE_TOUCH_6030X_Orange.xml' => array( 'Alcatel', 'One Touch Idol', 'Android', TYPE_MOBILE ),
154
+ 'http://www-ccpp.tcl-ta.com/files/6016D.xml' => array( 'Alcatel', 'One Touch Idol 2 Mini', 'Android', TYPE_MOBILE ),
155
+ 'http://www-ccpp.tcl-ta.com/files/6036A.xml' => array( 'Alcatel', 'One Touch Idol 2 Mini S', 'Android', TYPE_MOBILE ),
156
+ 'http://www-ccpp.tcl-ta.com/files/6036X.xml' => array( 'Alcatel', 'One Touch Idol 2 Mini S', 'Android', TYPE_MOBILE ),
157
+ 'http://www-ccpp.tcl-ta.com/files/6036Y.xml' => array( 'Alcatel', 'One Touch Idol 2 Mini S', 'Android', TYPE_MOBILE ),
158
+ 'http://www-ccpp.tcl-ta.com/files/ALCATEL_ONETOUCH_6036X.xml' => array( 'Alcatel', 'One Touch Idol 2 Mini S', 'Android', TYPE_MOBILE ),
159
+ 'http://www-ccpp.tcl-ta.com/files/ALCATEL_ONE_TOUCH_6036X.xml' => array( 'Alcatel', 'One Touch Idol 2 Mini S', 'Android', TYPE_MOBILE ),
160
+ 'http://www-ccpp.tcl-ta.com/files/6050Y.xml' => array( 'Alcatel', 'One Touch Idol 2S', 'Android', TYPE_MOBILE ),
161
+ 'http://www-ccpp.tcl-ta.com/files/ONE_TOUCH_6012A.xml' => array( 'Alcatel', 'One Touch Idol Mini', 'Android', TYPE_MOBILE ),
162
  'http://www-ccpp.tcl-ta.com/files/ONE_TOUCH_6012D.xml' => array( 'Alcatel', 'One Touch Idol Mini', 'Android', TYPE_MOBILE ),
163
+ 'http://www-ccpp.tcl-ta.com/files/ONE_TOUCH_6012E.xml' => array( 'Alcatel', 'One Touch Idol Mini', 'Android', TYPE_MOBILE ),
164
  'http://www-ccpp.tcl-ta.com/files/ONE_TOUCH_6012X.xml' => array( 'Alcatel', 'One Touch Idol Mini', 'Android', TYPE_MOBILE ),
165
  'http://www-ccpp.tcl-ta.com/files/ALCATEL_ONE_TOUCH_6034M.xml' => array( 'Alcatel', 'One Touch Idol S', 'Android', TYPE_MOBILE ),
166
  'http://www-ccpp.tcl-ta.com/files/ALCATEL_ONE_TOUCH_6034R.xml' => array( 'Alcatel', 'One Touch Idol S', 'Android', TYPE_MOBILE ),
167
  'http://www-ccpp.tcl-ta.com/files/ALCATEL_ONE_TOUCH_6035R.xml' => array( 'Alcatel', 'One Touch Idol S', 'Android', TYPE_MOBILE ),
168
  'http://www-ccpp.tcl-ta.com/files/ALCATEL_ONE_TOUCH_6033A.xml' => array( 'Alcatel', 'One Touch Idol Ultra', 'Android', TYPE_MOBILE ),
169
  'http://www-ccpp.tcl-ta.com/files/ALCATEL_ONE_TOUCH_6033X.xml' => array( 'Alcatel', 'One Touch Idol Ultra', 'Android', TYPE_MOBILE ),
170
+ 'http://www-ccpp.tcl-ta.com/files/ALCATEL_ONE_TOUCH_6040A.xml' => array( 'Alcatel', 'One Touch Idol X', 'Android', TYPE_MOBILE ),
171
  'http://www-ccpp.tcl-ta.com/files/ALCATEL_ONE_TOUCH_6040D.xml' => array( 'Alcatel', 'One Touch Idol X', 'Android', TYPE_MOBILE ),
172
  'http://www-ccpp.tcl-ta.com/files/ALCATEL_ONE_TOUCH_6040X.xml' => array( 'Alcatel', 'One Touch Idol X', 'Android', TYPE_MOBILE ),
173
+ 'http://www-ccpp.tcl-ta.com/files/6043D.xml' => array( 'Alcatel', 'One Touch Idol X+', 'Android', TYPE_MOBILE ),
174
+ 'http://www-ccpp.tcl-ta.com/files/ALCATEL_ONE_TOUCH_6032.xml' => array( 'Alcatel', 'One Touch Idol α', 'Android', TYPE_MOBILE ),
175
+ 'http://www-ccpp.tcl-ta.com/files/ALCATEL_ONE_TOUCH_6032A.xml' => array( 'Alcatel', 'One Touch Idol α', 'Android', TYPE_MOBILE ),
176
  'http://www-ccpp.tcl-ta.com/files/ALCATEL_ONE_TOUCH_5020A.xml' => array( 'Alcatel', 'One Touch M\'Pop', 'Android', TYPE_MOBILE ),
177
  'http://www-ccpp.tcl-ta.com/files/ALCATEL_ONE_TOUCH_5020D.xml' => array( 'Alcatel', 'One Touch M\'Pop', 'Android', TYPE_MOBILE ),
178
  'http://www-ccpp.tcl-ta.com/files/ALCATEL_ONE_TOUCH_5020E.xml' => array( 'Alcatel', 'One Touch M\'Pop', 'Android', TYPE_MOBILE ),
179
+ 'http://www-ccpp.tcl-ta.com/files/ALCATEL_ONE_TOUCH_5020N.xml' => array( 'Alcatel', 'One Touch M\'Pop', 'Android', TYPE_MOBILE ),
180
  'http://www-ccpp.tcl-ta.com/files/ALCATEL_ONE_TOUCH_5020T.xml' => array( 'Alcatel', 'One Touch M\'Pop', 'Android', TYPE_MOBILE ),
181
  'http://www-ccpp.tcl-ta.com/files/ALCATEL_ONE_TOUCH_5020W.xml' => array( 'Alcatel', 'One Touch M\'Pop', 'Android', TYPE_MOBILE ),
182
  'http://www-ccpp.tcl-ta.com/files/ALCATEL_ONE_TOUCH_5020X.xml' => array( 'Alcatel', 'One Touch M\'Pop', 'Android', TYPE_MOBILE ),
183
+ 'http://www-ccpp.tcl-ta.com/files/ONE_TOUCH_4007A.xml' => array( 'Alcatel', 'One Touch Pixi', 'Android', TYPE_MOBILE ),
184
  'http://www-ccpp.tcl-ta.com/files/ONE_TOUCH_4007D.xml' => array( 'Alcatel', 'One Touch Pixi', 'Android', TYPE_MOBILE ),
185
  'http://www-ccpp.tcl-ta.com/files/ONE_TOUCH_4007X.xml' => array( 'Alcatel', 'One Touch Pixi', 'Android', TYPE_MOBILE ),
186
+ 'http://www-ccpp.tcl-ta.com/files/ALCATEL_4015T.xml' => array( 'Alcatel', 'One Touch Pop C1', 'Android', TYPE_MOBILE ),
187
+ 'http://www-ccpp.tcl-ta.com/files/ONE_TOUCH_4015T.xml' => array( 'Alcatel', 'One Touch Pop C1', 'Android', TYPE_MOBILE ),
188
+ 'http://www-ccpp.tcl-ta.com/files/ONE_TOUCH_4015X.xml' => array( 'Alcatel', 'One Touch Pop C1', 'Android', TYPE_MOBILE ),
189
+ 'http://www-ccpp.tcl-ta.com/files/ONE_TOUCH_4033A.xml' => array( 'Alcatel', 'One Touch Pop C3', 'Android', TYPE_MOBILE ),
190
  'http://www-ccpp.tcl-ta.com/files/ONE_TOUCH_4033D.xml' => array( 'Alcatel', 'One Touch Pop C3', 'Android', TYPE_MOBILE ),
191
  'http://www-ccpp.tcl-ta.com/files/ONE_TOUCH_4033X.xml' => array( 'Alcatel', 'One Touch Pop C3', 'Android', TYPE_MOBILE ),
192
+ 'http://www-ccpp.tcl-ta.com/files/ALCATEL_ONE_TOUCH_5036D.xml' => array( 'Alcatel', 'One Touch Pop C5', 'Android', TYPE_MOBILE ),
193
+ 'http://www-ccpp.tcl-ta.com/files/ALCATEL_ONE_TOUCH_5036X.xml' => array( 'Alcatel', 'One Touch Pop C5', 'Android', TYPE_MOBILE ),
194
+ 'http://www-ccpp.tcl-ta.com/files/ALCATEL_ONE_TOUCH_7040A.xml' => array( 'Alcatel', 'One Touch Pop C7', 'Android', TYPE_MOBILE ),
195
+ 'http://www-ccpp.tcl-ta.com/files/ALCATEL_ONE_TOUCH_7040D.xml' => array( 'Alcatel', 'One Touch Pop C7', 'Android', TYPE_MOBILE ),
196
+ 'http://www-ccpp.tcl-ta.com/files/ALCATEL_ONE_TOUCH_7041D.xml' => array( 'Alcatel', 'One Touch Pop C7', 'Android', TYPE_MOBILE ),
197
+ 'http://www-ccpp.tcl-ta.com/files/ALCATEL_ONE_TOUCH_7047A.xml' => array( 'Alcatel', 'One Touch Pop C9', 'Android', TYPE_MOBILE ),
198
+ 'http://www-ccpp.tcl-ta.com/files/ALCATEL_ONE_TOUCH_7047D.xml' => array( 'Alcatel', 'One Touch Pop C9', 'Android', TYPE_MOBILE ),
199
+ 'http://www-ccpp.tcl-ta.com/files/ALCATEL_ONE_TOUCH_7047E.xml' => array( 'Alcatel', 'One Touch Pop C9', 'Android', TYPE_MOBILE ),
200
+ 'http://www-ccpp.tcl-ta.com/files/7050Y.xml' => array( 'Alcatel', 'One Touch Pop S9', 'Android', TYPE_MOBILE ),
201
+ 'http://www-ccpp.tcl-ta.com/files/ALCATEL_ONE_TOUCH_7050Y.xml' => array( 'Alcatel', 'One Touch Pop S9', 'Android', TYPE_MOBILE ),
202
+ 'http://www-ccpp.tcl-ta.com/files/ALCATEL_ONE_TOUCH_P310A.xml' => array( 'Alcatel', 'One Touch POP7', 'Android', TYPE_TABLET ),
203
+ 'http://www-ccpp.tcl-ta.com/files/ALCATEL_ONE_TOUCH_P310X.xml' => array( 'Alcatel', 'One Touch POP7', 'Android', TYPE_MOBILE ),
204
  'http://www-ccpp.tcl-ta.com/files/ALCATEL_ONE_TOUCH_4030A.xml' => array( 'Alcatel', 'One Touch S\'Pop', 'Android', TYPE_MOBILE ),
205
  'http://www-ccpp.tcl-ta.com/files/ALCATEL_ONE_TOUCH_4030D.xml' => array( 'Alcatel', 'One Touch S\'Pop', 'Android', TYPE_MOBILE ),
206
  'http://www-ccpp.tcl-ta.com/files/ALCATEL_ONE_TOUCH_4030E.xml' => array( 'Alcatel', 'One Touch S\'Pop', 'Android', TYPE_MOBILE ),
216
  'http://www-ccpp.tcl-ta.com/files/ALCATEL_ONE_TOUCH_8008X.xml' => array( 'Alcatel', 'One Touch Scribe HD', 'Android', TYPE_MOBILE ),
217
  'http://www-ccpp.tcl-ta.com/files/ALCATEL_ONE_TOUCH_8020D.xml' => array( 'Alcatel', 'One Touch Scribe Pro', 'Android', TYPE_MOBILE ),
218
  'http://www-ccpp.tcl-ta.com/files/ONE_TOUCH_8020D.xml' => array( 'Alcatel', 'One Touch Scribe Pro', 'Android', TYPE_MOBILE ),
219
+ 'http://www-ccpp.tcl-ta.com/files/ONE_TOUCH_8020X.xml' => array( 'Alcatel', 'One Touch Scribe Pro', 'Android', TYPE_MOBILE ),
220
  'http://www-ccpp.tcl-ta.com/files/ALCATEL_7030L.xml' => array( 'Alcatel', 'One Touch Snap', 'Android', TYPE_MOBILE ),
221
  'http://www-ccpp.tcl-ta.com/files/ALCATEL_ONE_TOUCH_7025D.xml' => array( 'Alcatel', 'One Touch Snap', 'Android', TYPE_MOBILE ),
222
  'http://www-ccpp.tcl-ta.com/files/ALCATEL_ONE_TOUCH_7025X.xml' => array( 'Alcatel', 'One Touch Snap', 'Android', TYPE_MOBILE ),
240
  'http://www.amobile.com.cn/ua/Amoi-8512.xml' => array( 'Amoi', '8512', NULL, TYPE_MOBILE ),
241
  'http://www.amobile.com.cn/ua/Amoi-8709.xml' => array( 'Amoi', '8709', NULL, TYPE_MOBILE ),
242
  'http://www.amobile.com.cn/ua/Amoi-8710.xml' => array( 'Amoi', '8710', NULL, TYPE_MOBILE ),
243
+ 'http://www.oppo.com/resource/UA-PROF/OPPOAMOI A920W.xml' => array( 'Amoi', 'A920W', 'Android', TYPE_MOBILE ),
244
  'http://www.amobile.com.cn/ua/c200.xml' => array( 'Amoi', 'C200', NULL, TYPE_MOBILE ),
245
  'http://www.amobile.com.cn/ua/CA6.xml' => array( 'Amoi', 'CA6', NULL, TYPE_MOBILE ),
246
  'http://www.amobile.com.cn/ua/E610.xml' => array( 'Amoi', 'E610', NULL, TYPE_MOBILE ),
247
  'http://www.amobile.com.cn/ua/E72.xml' => array( 'Amoi', 'E72', NULL, TYPE_MOBILE ),
248
  'http://www.amobile.com.cn/ua/F8.xml' => array( 'Amoi', 'F8', NULL, TYPE_MOBILE ),
249
  'http://www.amobile.com.cn/ua/M636.xml' => array( 'Amoi', 'M636', NULL, TYPE_MOBILE ),
250
+ 'http://www.oppo.com/resource/UA-PROF/OPPOAMOI_N828.xml' => array( 'Amoi', 'N828', 'Android', TYPE_MOBILE ),
251
  'http://www.amobile.com.cn/ua/S6.xml' => array( 'Amoi', 'S6', NULL, TYPE_MOBILE ),
252
  'https://servicios.iusacell.com.mx/amoi/v810/v810v1.xml' => array( 'Amoi', 'V810', NULL, TYPE_MOBILE ),
253
  'http://www.apanda.com.cn/apanda-A60-ua-profile.xml' => array( 'Apanda', 'A60', 'Android', TYPE_MOBILE ),
258
  'http://uaprofile.asus.com/uaprof/ASUS-NAPA-MINI-1.0.xml' => array( 'Asus', 'Eee Pc T20', 'Android', TYPE_MOBILE ),
259
  'http://uaprofile.asus.com/uaprof/ASUS-ASUS-K00S.xml' => array( 'Asus', 'Fonepad', 'Android', TYPE_TABLET ),
260
  'http://uaprofile.asus.com/uaprof/ASUS-ME371MG-1.0.xml' => array( 'Asus', 'Fonepad', 'Android', TYPE_TABLET ),
261
+ 'http://uaprofile.asus.com/uaprof/ASUS-K00E.xml' => array( 'Asus', 'Fonepad 7', 'Android', TYPE_TABLET ),
262
+ 'http://uaprofile.asus.com/uaprof/ASUS-K00Z.xml' => array( 'Asus', 'Fonepad 7', 'Android', TYPE_TABLET ),
263
+ 'http://uaprofile.asus.com/uaprof/ASUS-ME175CG.xml' => array( 'Asus', 'Fonepad 7', 'Android', TYPE_TABLET ),
264
  'http://uaprofile.asus.com/uaprof/ASUS-ME372CG.xml' => array( 'Asus', 'Fonepad 7', 'Android', TYPE_TABLET ),
265
  'http://uaprofile.asus.com/uaprof/ASUS-K00G.xml' => array( 'Asus', 'Fonepad Note 6', 'Android', TYPE_TABLET ),
266
  'http://uaprofile.asus.com/uaprof/K00G.xml' => array( 'Asus', 'Fonepad Note 6', 'Android', TYPE_TABLET ),
267
  'http://uaprofile.asus.com/uaprof/ASUS-J501_UAProf.xml' => array( 'Asus', 'J501', NULL, TYPE_MOBILE ),
 
268
  'http://uaprofile.asus.com/uaprof/ASUS-M530w-1.0.xml' => array( 'Asus', 'M530w', 'Windows Mobile', TYPE_MOBILE ),
269
  'http://uaprofile.asus.com/uaprof/ASUS-M930-1.0.xml' => array( 'Asus', 'M930', 'Windows Mobile', TYPE_MOBILE ),
270
+ 'http://uaprofile.asus.com/uaprof/ASUS-K00F.xml' => array( 'Asus', 'MemoPad 10', 'Android', TYPE_TABLET ),
271
+ 'http://uaprofile.asus.com/uaprof/ASUS-K00L.xml' => array( 'Asus', 'MemoPad 8', 'Android', TYPE_TABLET ),
272
  'http://uaprofile.asus.com/uaprof/ASUS-ME302C-1.0.xml' => array( 'Asus', 'MemoPad FHD 10', 'Android', TYPE_TABLET ),
273
  'http://uaprofile.asus.com/uaprof/ASUS-grouper.xml' => array( 'Asus', 'Nexus 7', 'Android', TYPE_TABLET ),
274
  'http://uaprofile.asus.com/uaprof/grouper.xml' => array( 'Asus', 'Nexus 7', 'Android', TYPE_TABLET ),
287
  'http://uaprofile.asus.com/uaprof/ASUS-A86.xml' => array( 'Asus', 'Padfone Infinity', 'Android', TYPE_MOBILE ),
288
  'http://uaprofile.asus.com/uaprof/ASUS-ASUS-A86.xml' => array( 'Asus', 'Padfone Infinity', 'Android', TYPE_TABLET ),
289
  'http://uaprofile.asus.com/uaprof/ASUS-ASUS-T00C.xml' => array( 'Asus', 'Padfone Mini', 'Android', TYPE_MOBILE ),
290
+ 'http://uaprofile.asus.com/uaprof/ASUS-ASUS_T00E.xml' => array( 'Asus', 'Padfone Mini', 'Android', TYPE_MOBILE ),
291
+ 'http://uaprofile.asus.com/uaprof/ASUS-A91.xml' => array( 'Asus', 'Padfone X', 'Android', TYPE_TABLET ),
292
+ 'http://uaprofile.asus.com/uaprof/ASUS-TX201LA.xml' => array( 'Asus', 'Transformer Book Trio', 'Android', TYPE_TABLET ),
293
  'http://uaprofile.asus.com/uaprof/ASUS-TF300TG.xml' => array( 'Asus', 'Transformer Pad 300', 'Android', TYPE_TABLET ),
294
  'http://uaprofile.asus.com/uaprof/ASUS-TF300TL.xml' => array( 'Asus', 'Transformer Pad 300', 'Android', TYPE_TABLET ),
295
  'http://uaprofile.asus.com/uaprof/ASUS-K00C.xml' => array( 'Asus', 'Transformer Pad Infinity', 'Android', TYPE_TABLET ),
296
  'http://uaprofile.asus.com/uaprof/ASUS-TF700KL-1.0.xml' => array( 'Asus', 'Transformer Pad Infinity 700', 'Android', TYPE_TABLET ),
297
  'http://uaprofile.asus.com/uaprof/ASUS-TF700KL.xml' => array( 'Asus', 'Transformer Pad Infinity 700', 'Android', TYPE_TABLET ),
298
  'http://uaprofile.asus.com/uaprof/ASUS-V75_UAProf.xml' => array( 'Asus', 'V75', NULL, TYPE_MOBILE ),
299
+ 'http://uaprofile.asus.com/uaprof/ASUS-ASUS_T00I.xml' => array( 'Asus', 'ZenFone 4', 'Android', TYPE_MOBILE ),
300
+ 'http://uaprofile.asus.com/uaprof/AMAX-UAP.xml' => array( 'Asus', 'ZenFone 5', 'Android', TYPE_MOBILE ),
301
+ 'http://uaprofile.asus.com/uaprof/ASUS-ASUS_T00F.xml' => array( 'Asus', 'ZenFone 5', 'Android', TYPE_MOBILE ),
302
+ 'http://uaprofile.asus.com/uaprof/ASUS-ASUS_T00J.xml' => array( 'Asus', 'ZenFone 5', 'Android', TYPE_MOBILE ),
303
+ 'http://uaprofile.asus.com/uaprof/ASUS-ASUS_T00G.xml' => array( 'Asus', 'ZenFone 6', 'Android', TYPE_MOBILE ),
304
  'http://wap1.huawei.com/uaprof/HuaweiU8652GPRS-ATT.xml' => array( 'AT&T', 'Fusion', 'Android', TYPE_MOBILE ),
305
  'http://wap1.huawei.com/uaprof/HuaweiU8652WCDMA-ATT.xml' => array( 'AT&T', 'Fusion', 'Android', TYPE_MOBILE ),
306
  'http://device.sprintpcs.com/Audiovox/CDM-8450SP/T060SP2T36.rdf' => array( 'Audiovox', 'CDM-8450', NULL, TYPE_MOBILE ),
334
  'http://uap.benq.com/mb_s81/benq_s81_v1.xml' => array( 'BenQ-Siemens', 'S81', NULL, TYPE_MOBILE ),
335
  'http://uap.benq.com/mb_s82/benq_S82_voda_2g.xml' => array( 'BenQ-Siemens', 'S82', NULL, TYPE_MOBILE ),
336
  'http://uap.benq.com/mb_s88/benq_s88_v3_300k.xml' => array( 'BenQ-Siemens', 'S88', NULL, TYPE_MOBILE ),
337
+ 'http://www.bbk.com/uaprof/BBKV205.xml' => array( 'BKK', 'V205', NULL, TYPE_MOBILE ),
338
+ 'http://www.bluhelp.com/upload/xmlfiles/ADVANCE_3.5.XML' => array( 'BLU', 'Advance 3.5', 'Android', TYPE_MOBILE ),
339
+ 'http://www.zte.com.cn/mobile/uaprof/ZTE_U_V856_V3.xml' => array( 'BLU', 'Dash', 'Android', TYPE_MOBILE ),
340
+ 'http://www.bluhelp.com/upload/xmlfiles/DASH_3.5.XML' => array( 'BLU', 'Dash 3.5', 'Android', TYPE_MOBILE ),
341
+ 'http://www.bluhelp.com/upload/xmlfiles/DASH_4.0.XML' => array( 'BLU', 'Dash 4.0', 'Android', TYPE_MOBILE ),
342
  'http://www.bluhelp.com/upload/xmlfiles/dash_4.5.XML' => array( 'BLU', 'Dash 4.5', 'Android', TYPE_MOBILE ),
343
+ 'http://www.bluhelp.com/upload/xmlfiles/DASH_5.0.XML' => array( 'BLU', 'Dash 5.0', 'Android', TYPE_MOBILE ),
344
+ 'http://www.bluhelp.com/upload/xmlfiles/BLU_D140_UAP.xml' => array( 'BLU', 'Dash Jr', 'Android', TYPE_MOBILE ),
345
+ 'http://www.bluhelp.com/upload/xmlfiles/dashjr.4.0.xml' => array( 'BLU', 'Dash Jr 4.0', 'Android', TYPE_MOBILE ),
346
+ 'http://www.bluhelp.com/upload/xmlfiles/LifeOne.xml' => array( 'BLU', 'Life One', 'Android', TYPE_MOBILE ),
347
+ 'http://www.bluhelp.com/upload/xmlfiles/LIFE ONE X.XML' => array( 'BLU', 'Life One X', 'Android', TYPE_MOBILE ),
348
  'http://www.bluhelp.com/upload/xmlfiles/LifeView.xml' => array( 'BLU', 'Life View', 'Android', TYPE_MOBILE ),
349
  'http://www.bluhelp.com/upload/xmlfiles/STUDIO5.0.xml' => array( 'BLU', 'Studio 5.0', 'Android', TYPE_MOBILE ),
350
+ 'http://www.bluhelp.com/upload/xmlfiles/STUDIO5.0_2.xml' => array( 'BLU', 'Studio 5.0 II', 'Android', TYPE_MOBILE ),
351
+ 'http://www.zte.com.cn/mobile/uaprof/Bouygues Telecom Bs 351.xml' => array( 'Bouygues', 'Bs 351', 'Android', TYPE_MOBILE ),
352
  'http://www.zte.com.cn/mobile/uaprof/Bouygues_Telecom_Bs_402.xml' => array( 'Bouygues', 'Bs 402', 'Android', TYPE_MOBILE ),
353
  'http://www-ccpp.tcl-ta.com/files/BS471.xml' => array( 'Bouygues', 'Bs 471', 'Android', TYPE_MOBILE ),
354
+ 'http://files.bq.com/uaprof/bq_aquaris_45_JB.xml' => array( 'bq', 'Aquaris', 'Android', TYPE_MOBILE ),
355
  'http://uaprof.vtext.com/pcd/c771/c771.xml' => array( 'Casio', 'Gz\'One Commando', 'Android', TYPE_MOBILE ),
356
  'http://uaprof.vtext.com/pcd/vzw/vzw.xml' => array( 'Casio', 'Gz\'One Commando 811', 'Android', TYPE_MOBILE ),
357
+ 'http://uaprof.vtext.com/pcd/c811/c811.xml' => array( 'Casio', 'GzOne Commando 811', 'Android', TYPE_MOBILE ),
358
  'http://www.catphones.com/uaprof/Cat_B10-2_UAprofile.xml' => array( 'Cat', 'B15', 'Android', TYPE_MOBILE ),
359
  'http://uap.cellon.com/C2573.xml' => array( 'Cellon', 'C2573', NULL, TYPE_MOBILE ),
360
  'http://uap.cellon.com/C8660.xml' => array( 'Cellon', 'C8660', 'Android', TYPE_MOBILE ),
370
  'http://ota.ragentek.com:8002/RgkOTA/UAprofile/Coolpad8122_UAprofile.xml' => array( 'Coolpad', '8122', 'Android', TYPE_MOBILE ),
371
  'http://uaprofile.YuLong.com/uaprof/YuLong-CoolPad8809-1.0.xml' => array( 'CoolPad', '8809', 'Android', TYPE_MOBILE ),
372
  'http://nmsc.ctvap.cn/uaprof/YL/YL_Coolpad_E230_2_20100520.xml' => array( 'Coolpad', 'E230', 'Brew', TYPE_MOBILE ),
373
+ 'http://www.oppo.com/resource/UA-PROF/OPPOMC002.xml' => array( 'Dakele', 'MC002', 'Android', TYPE_MOBILE ),
374
  'http://ftp.us.dell.com/Factor_Software_Updates/Grappa_UA_Profile.xml' => array( 'Dell', 'Grappa', 'Android', TYPE_MOBILE ),
375
  'http://122.200.68.229/docs/mini3ix.xml' => array( 'Dell', 'Mini 3ix', 'Android', TYPE_MOBILE ),
376
  'http://www.zte.com.cn/mobile/uaprof/XCD35.xml' => array( 'Dell', 'XCD35', 'Android', TYPE_MOBILE ),
378
  'http://www.htcmms.com.tw/gen/Tachi-1.0.xml' => array( 'Dopod', 'T5399', 'Windows Mobile', TYPE_MOBILE ),
379
  'http://www.htcmms.com.tw/gen/Qilin-1.0.xml' => array( 'Dopod', 'T8388', 'Windows Mobile', TYPE_MOBILE ),
380
  'http://ua.doro.com/ua/Doro810_UAProfile.xml' => array( 'Doro', 'Liberto 810', 'Android', TYPE_MOBILE ),
381
+ 'http://ua.doro.com/ua/Doro820_UAProfile.xml' => array( 'Doro', 'Liberto 820', 'Android', TYPE_MOBILE ),
382
  'http://mobileinternet.ericsson.com/UAprof/R380e.xml' => array( 'Ericsson', 'R380', NULL, TYPE_MOBILE ),
383
  'http://wap.sonyericsson.com/UAprof/R520.xml' => array( 'Ericsson', 'R520', NULL, TYPE_MOBILE ),
384
  'http://wap.sonyericsson.com/UAprof/R600.xml' => array( 'Ericsson', 'R600', NULL, TYPE_MOBILE ),
402
  'http://www.fly-phone.ru/UAP/Fly_IQ237.xml' => array( 'Fly', 'IQ237 Dynamic', 'Android', TYPE_MOBILE ),
403
  'http://www.fly-phone.ru/UAP/Fly_IQ238.xml' => array( 'Fly', 'IQ238 Jazz', 'Android', TYPE_MOBILE ),
404
  'http://www.fly-phone.ru/UAP/Fly_IQ430.xml' => array( 'Fly', 'IQ430 Evoke', 'Android', TYPE_MOBILE ),
405
+ 'http://www.fly-phone.ru/UAP/Fly_IQ431.xml' => array( 'Fly', 'IQ431 Glory', 'Android', TYPE_MOBILE ),
406
  'http://www.fly-phone.ru/UAP/Fly_IQ440.xml' => array( 'Fly', 'IQ440 Energie', 'Android', TYPE_MOBILE ),
407
+ 'http://www.fly-phone.ru/UAP/Fly_IQ4403.xml' => array( 'Fly', 'IQ440 Energie', 'Android', TYPE_MOBILE ),
408
  'http://www.fly-phone.ru/UAP/Fly_IQ4404.xml' => array( 'Fly', 'IQ440 Energie', 'Android', TYPE_MOBILE ),
409
  'http://www.fly-phone.ru/UAP/Fly_IQ4410_Quad.xml' => array( 'Fly', 'IQ441 Radiance', 'Android', TYPE_MOBILE ),
410
+ 'http://www.fly-phone.ru/UAP/Fly_IQ4411_Quad.xml' => array( 'Fly', 'IQ441 Radiance', 'Android', TYPE_MOBILE ),
411
  'http://www.fly-phone.ru/UAP/Fly_IQ442.xml' => array( 'Fly', 'IQ442 Miracle', 'Android', TYPE_MOBILE ),
412
  'http://www.fly-phone.ru/UAP/Fly_IQ443.xml' => array( 'Fly', 'IQ443 Trend', 'Android', TYPE_MOBILE ),
413
  'http://www.fly-phone.ru/UAP/Fly_IQ444.xml' => array( 'Fly', 'IQ444 Diamond', 'Android', TYPE_MOBILE ),
414
  'http://www.fly-phone.ru/UAP/Fly_IQ444_Quattro.xml' => array( 'Fly', 'IQ444 Diamond', 'Android', TYPE_MOBILE ),
415
  'http://www.fly-phone.ru/UAP/Fly_IQ445.xml' => array( 'Fly', 'IQ445 Genius', 'Android', TYPE_MOBILE ),
416
  'http://www.fly-phone.ru/UAP/Fly_IQ446.xml' => array( 'Fly', 'IQ446 Magic', 'Android', TYPE_MOBILE ),
417
+ 'http://www.fly-phone.ru/UAP/Fly_IQ449.xml' => array( 'Fly', 'IQ449 Pronto', 'Android', TYPE_MOBILE ),
418
  'http://www.fly-phone.ru/UAP/Fly_IQ450_Quattro.xml' => array( 'Fly', 'IQ450 Horizon', 'Android', TYPE_MOBILE ),
419
  'http://www.fly-phone.ru/UAP/Fly_IQ451.xml' => array( 'Fly', 'IQ451 Vista', 'Android', TYPE_MOBILE ),
420
+ 'http://www.oppo.com/resource/UA-PROF/OPPOIQ451.xml' => array( 'Fly', 'IQ451 Vista', 'Android', TYPE_MOBILE ),
421
+ 'http://www.fly-phone.ru/UAP/Fly_IQ454.xml' => array( 'Fly', 'IQ454 Evo Tech 1', 'Android', TYPE_MOBILE ),
422
  'http://211.42.201.70/ua_profile/Fly-LX610.xml' => array( 'Fly', 'LX610', NULL, TYPE_MOBILE ),
423
  'http://www.fly-phone.ru/UAP/Fly_MC100.xml' => array( 'Fly', 'MC100', NULL, TYPE_MOBILE ),
424
  'http://www.fly-phone.ru/UAP/Fly_MC110.xml' => array( 'Fly', 'MC110', NULL, TYPE_MOBILE ),
455
  'http://eip2.gigabytecm.com/GIGABYTE-g-smart-vga.xml' => array( 'Gigabyte', 'GSmart T600', NULL, TYPE_MOBILE ),
456
  'http://wap1.huawei.com/uaprof/HuaweiU8510-1GPRS-GM_Turkey.xml' => array( 'GM', 'Ultimate Slim', 'Android', TYPE_MOBILE ),
457
  'http://mobile.haier.com/UAProf/uapA62.xml' => array( 'Haier', 'A62', NULL, TYPE_MOBILE ),
458
+ 'http://www.oppo.com/resource/UA-PROF/OPPOHT-I860.xml' => array( 'Haier', 'I860', 'Android', TYPE_MOBILE ),
459
+ 'http://www.yeezonetech.com/wap/SMDK4x12_UAProfile.xml' => array( 'Haier', 'I928', 'Android', TYPE_MOBILE ),
460
  'http://mobile.haier.com/UAProf/uapM1610.xml' => array( 'Haier', 'M1610', NULL, TYPE_MOBILE ),
461
  'http://www.ehaier.com/download/mobile/uapHaier-HW-N86W.xml' => array( 'Haier', 'N86W', 'Android', TYPE_MOBILE ),
462
  'http://www.ehaier.com/download/mobile/uapHaier-HW-N88W.xml' => array( 'Haier', 'N88W', 'Android', TYPE_MOBILE ),
465
  'http://mobile.haier.com/UAProf/uapV7000.xml' => array( 'Haier', 'V7000', NULL, TYPE_MOBILE ),
466
  'http://www.ehaier.com/download/mobile/uapHW-W910.xml' => array( 'Haier', 'W910', 'Android', TYPE_MOBILE ),
467
  'http://mobile.haier.com/UAProf/uapZ3000.xml' => array( 'Haier', 'Z3000', NULL, TYPE_MOBILE ),
468
+ 'http://www.oppo.com/resource/UA-PROF/OPPOAlpha Ice.xml' => array( 'Highscreen', 'Alpha Ice', 'Android', TYPE_MOBILE ),
469
+ 'http://phone.hisense.com/khfw/rjxz/201303/P020130307299783065342.xml' => array( 'Hisense', 'T820', 'Android', TYPE_MOBILE ),
470
  'http://phone.hisense.com/khfw/rjxz/201208/P020120809608224982262.xml' => array( 'Hisense', 'T830', 'Android', TYPE_MOBILE ),
471
  'http://phone.hisense.com/khfw/rjxz/201205/P020120521576380789573.xml' => array( 'Hisense', 'T860', 'Android', TYPE_MOBILE ),
472
  'http://phone.hisense.com/khfw/rjxz/201301/P020130130568107298317.xml' => array( 'Hisense', 'T912', 'Android', TYPE_MOBILE ),
485
  'http://www.hp.com/ipaqcarrier/hpipaqhw692xv10.xml' => array( 'HP', 'iPAQ hw6920', 'Windows Mobile', TYPE_MOBILE ),
486
  'http://www.hp.com/ipaqcarrier/hpipaqrw6815v10.xml' => array( 'HP', 'iPAQ rw6815', 'Windows Mobile', TYPE_MOBILE ),
487
  'http://www.hp.com/ipaqcarrier/HPiPAQVoiceMessenger10.xml' => array( 'HP', 'iPAQ Voice Messenger', 'Windows Mobile', TYPE_MOBILE ),
 
488
  'http://www.htcmms.com.tw/gen/Strk-1.0.xml' => array( 'HTC', '3100', 'Windows Mobile', TYPE_MOBILE ),
489
  'http://www.htcmms.com.tw/Android/Common/SongShan/ua-profile.xml' => array( 'HTC', 'A3360', 'Android', TYPE_MOBILE ),
490
  'http://www.htcmms.com.tw/Android/Common/Tianshan/ua-profile.xml' => array( 'HTC', 'A3380', 'Android', TYPE_MOBILE ),
513
  'http://www.htcmms.com.tw/Android/Orange/ChaChaCha/ua-profile.xml' => array( 'HTC', 'ChaCha', 'Android', TYPE_MOBILE ),
514
  'http://www.htcmms.com.tw/Android/Orange/PH06/ua-profile.xml' => array( 'HTC', 'ChaCha', 'Android', TYPE_MOBILE ),
515
  'http://www.htcmms.com.tw/Android/Common/PD11/ua-profile.xml' => array( 'HTC', 'Cullinan', 'Android', TYPE_MOBILE ),
516
+ 'http://mms.cellcom.com/uaprofs/cellcom_htc_DLX.xml' => array( 'HTC', 'Deluxe', 'Android', TYPE_MOBILE ),
517
  'http://www.htcmms.com.tw/Android/Bouygues/PO73/ua-profile.xml' => array( 'HTC', 'Desire', 'Android', TYPE_MOBILE ),
518
  'http://www.htcmms.com.tw/Android/Common/Bravo/HTC_Desire.xml' => array( 'HTC', 'Desire', 'Android', TYPE_MOBILE ),
519
  'http://www.htcmms.com.tw/Android/Common/Bravo/HTC_Desire_A8181.xml' => array( 'HTC', 'Desire', 'Android', TYPE_MOBILE ),
529
  'http://www.htcmms.com.tw/Android/Vodafone/L01/ua-profile.xml' => array( 'HTC', 'Desire', 'Android', TYPE_MOBILE ),
530
  'http://www.htcmms.com.tw/Android/Common/PO601/ua-profile.xml' => array( 'HTC', 'Desire 200', 'Android', TYPE_MOBILE ),
531
  'http://www.htcmms.com.tw/Android/Common/4WaXiSSfCP/ua-profile.xml' => array( 'HTC', 'Desire 300', 'Android', TYPE_MOBILE ),
532
+ 'http://www.htcmms.com.tw/Android/Common/l9kfHYvA01/ua-profile.xml' => array( 'HTC', 'Desire 310', 'Android', TYPE_MOBILE ),
533
+ 'http://www.htcmms.com.tw/Android/Common/vBSZ5hs37J/ua-profile.xml' => array( 'HTC', 'Desire 310', 'Android', TYPE_MOBILE ),
534
+ 'http://www.htcmms.com.tw/Android/O2/l9kfHYvA01/ua-profile.xml' => array( 'HTC', 'Desire 310', 'Android', TYPE_MOBILE ),
535
  'http://www.htcmms.com.tw/Android/Common/0P3Z1/ua-profile.xml' => array( 'HTC', 'Desire 500', 'Android', TYPE_MOBILE ),
536
  'http://www.htcmms.com.tw/Android/Common/0P3Z11/ua-profile.xml' => array( 'HTC', 'Desire 500', 'Android', TYPE_MOBILE ),
537
+ 'http://www.htcmms.com.tw/Android/Telcel/0P3Z1/ua-profile.xml' => array( 'HTC', 'Desire 500', 'Android', TYPE_MOBILE ),
538
  'http://www.htcmms.com.tw/Android/TIM/0P3Z11/ua-profile.xml' => array( 'HTC', 'Desire 500', 'Android', TYPE_MOBILE ),
539
+ 'http://www.htcmms.com.tw/Android/Vodafone/0P3Z11/ua-profile.xml' => array( 'HTC', 'Desire 500', 'Android', TYPE_MOBILE ),
540
+ 'http://www.htcmms.com.tw/Android/Common/0P3Z2/ua-profile.xml' => array( 'HTC', 'Desire 5088', 'Android', TYPE_MOBILE ),
541
  'http://www.htcmms.com.tw/Android/Common/PO49120/ua-profile.xml' => array( 'HTC', 'Desire 600', 'Android', TYPE_MOBILE ),
542
+ 'http://www.htcmms.com.tw/Android/Common/PO471/ua-profile.xml' => array( 'HTC', 'Desire 600c', 'Android', TYPE_MOBILE ),
543
+ 'http://device.sprintpcs.com/HTC/HTC0P4E1-VIRGIN/1106529.rdf' => array( 'HTC', 'Desire 601', 'Android', TYPE_MOBILE ),
544
+ 'http://www.htcmms.com.tw/Android/BM/CjnctPc6Sf/ua-profile.xml' => array( 'HTC', 'Desire 601', 'Android', TYPE_MOBILE ),
545
  'http://www.htcmms.com.tw/Android/Common/CjnctPc6Sf/ua-profile.xml' => array( 'HTC', 'Desire 601', 'Android', TYPE_MOBILE ),
546
+ 'http://www.htcmms.com.tw/Android/Common/SLl2AjRgr3/ua-profile.xml' => array( 'HTC', 'Desire 601', 'Android', TYPE_MOBILE ),
547
  'http://www.htcmms.com.tw/Android/Rogers/CjnctPc6Sf/ua-profile.xml' => array( 'HTC', 'Desire 601', 'Android', TYPE_MOBILE ),
548
+ 'http://www.htcmms.com.tw/Android/Videotron/CjnctPc6Sf/ua-profile.xml' => array( 'HTC', 'Desire 601', 'Android', TYPE_MOBILE ),
549
+ 'http://www.htcmms.com.tw/Android/WIND/CjnctPc6Sf/ua-profile.xml' => array( 'HTC', 'Desire 601', 'Android', TYPE_MOBILE ),
550
  'http://www.htcmms.com.tw/Android/Common/PO491/ua-profile.xml' => array( 'HTC', 'Desire 606w', 'Android', TYPE_MOBILE ),
551
  'http://www.htcmms.com.tw/Android/Common/PO481/ua-profile.xml' => array( 'HTC', 'Desire 608t', 'Android', TYPE_MOBILE ),
552
  'http://nmsc.ctvap.cn/uaprof/HTC/HTC_609d_1_20130501.XML' => array( 'HTC', 'Desire 609d', 'Android', TYPE_MOBILE ),
553
+ 'http://www.htcmms.com.tw/Android/Common/HQEJRedmsG/ua-profile.xml' => array( 'HTC', 'Desire 610', 'Android', TYPE_MOBILE ),
554
  'http://nmsc.ctvap.cn/uaprof/HTC/HTC_619d_1_20130815.XML' => array( 'HTC', 'Desire 619d', 'Android', TYPE_MOBILE ),
555
  'http://www.htcmms.com.tw/Android/Common/azxFLxeBCm/ua-profile.xml' => array( 'HTC', 'Desire 709d', 'Android', TYPE_MOBILE ),
556
+ 'http://www.htcmms.com.tw/Android/Common/7QtMcMcyB2/ua-profile.xml' => array( 'HTC', 'Desire 816', 'Android', TYPE_MOBILE ),
557
+ 'http://www.htcmms.com.tw/Android/Common/HRobRleNsO/ua-profile.xml' => array( 'HTC', 'Desire 816', 'Android', TYPE_MOBILE ),
558
+ 'http://www.htcmms.com.tw/Android/Common/miKNCjjDHJ/ua-profile.xml' => array( 'HTC', 'Desire 816', 'Android', TYPE_MOBILE ),
559
+ 'http://www.htcmms.com.tw/Android/Common/rLgUe79qmx/ua-profile.xml' => array( 'HTC', 'Desire 816', 'Android', TYPE_MOBILE ),
560
+ 'http://www.htcmms.com.tw/Android/Common/rYMdtoVVAt/ua-profile.xml' => array( 'HTC', 'Desire 816', 'Android', TYPE_MOBILE ),
561
  'http://mms.mycricket.com/htc_h1000c.xml' => array( 'HTC', 'Desire C', 'Android', TYPE_MOBILE ),
562
  'http://www.htcmms.com.tw/Android/Bell/A320a/ua-profile.xml' => array( 'HTC', 'Desire C', 'Android', TYPE_MOBILE ),
563
  'http://www.htcmms.com.tw/Android/Common/L01/ua-profile.xml' => array( 'HTC', 'Desire C', 'Android', TYPE_MOBILE ),
572
  'http://www.htcmms.com.tw/Android/Telus/DesireHD/ua-profile.xml' => array( 'HTC', 'Desire HD', 'Android', TYPE_MOBILE ),
573
  'http://www.htcmms.com.tw/Android/TMO/Ace/ua-profile.xml' => array( 'HTC', 'Desire HD', 'Android', TYPE_MOBILE ),
574
  'http://www.htcmms.com.tw/Android/Common/PM6014/ua-profile.xml' => array( 'HTC', 'Desire L', 'Android', TYPE_MOBILE ),
575
+ 'http://www.htcmms.com.tw/Android/Common/PM862/ua-profile.xml' => array( 'HTC', 'Desire P', 'Android', TYPE_MOBILE ),
576
  'http://www.htcmms.com.tw/Android/Common/DesireS/ua-profile.xml' => array( 'HTC', 'Desire S', 'Android', TYPE_MOBILE ),
577
  'http://www.htcmms.com.tw/Android/Common/PG88/ua-profile.xml' => array( 'HTC', 'Desire S', 'Android', TYPE_MOBILE ),
578
  'http://www.htcmms.com.tw/Android/Telstra/S510b/ua-profile.xml' => array( 'HTC', 'Desire S', 'Android', TYPE_MOBILE ),
591
  'http://www.htcmms.com.tw/Android/TMO/PO73/ua-profile.xml' => array( 'HTC', 'Desire X', 'Android', TYPE_MOBILE ),
592
  'http://www.htcmms.com.tw/Android/Bell/Vision/ua-profile.xml' => array( 'HTC', 'Desire Z', 'Android', TYPE_MOBILE ),
593
  'http://www.htcmms.com.tw/Android/Common/DesireZ/ua-profile.xml' => array( 'HTC', 'Desire Z', 'Android', TYPE_MOBILE ),
594
+ 'http://www.htcmms.com.tw/Android/Orange/DreamX/ua-profile-htc-dream-Orange.xml' => array( 'HTC', 'Dream', 'Android', TYPE_MOBILE ),
595
+ 'http://uaprof.vtext.com/htc/htc6435lvw/htc6435lvw.xml' => array( 'HTC', 'Droid DNA', 'Android', TYPE_MOBILE ),
596
  'http://uaprof.vtext.com/pcd/adr6435/adr6435.xml' => array( 'HTC', 'Droid DNA', 'Android', TYPE_MOBILE ),
597
  'http://www.htcmms.com.tw/Android/Common/PL832/ua-profile.xml' => array( 'HTC', 'Droid DNA', 'Android', TYPE_MOBILE ),
598
  'http://uaprof.vtext.com/adr62k/adr62k.xml' => array( 'HTC', 'Droid Eris', 'Android', TYPE_MOBILE ),
609
  'http://device.sprintpcs.com/HTC/APX325CKT/31565116.rdf' => array( 'HTC', 'EVO', 'Android', TYPE_MOBILE ),
610
  'http://device.sprintpcs.com/HTC/APX325CKT/3166513.rdf' => array( 'HTC', 'EVO', 'Android', TYPE_MOBILE ),
611
  'http://device.sprintpcs.com/HTC/APX325CKT/3176514.rdf' => array( 'HTC', 'EVO', 'Android', TYPE_MOBILE ),
612
+ 'http://device.sprintpcs.com/HTC/APX325CKT/3176515.rdf' => array( 'HTC', 'EVO', 'Android', TYPE_MOBILE ),
613
  'http://device.sprintpcs.com/HTC/APX325CKT/4036511.rdf' => array( 'HTC', 'EVO', 'Android', TYPE_MOBILE ),
614
+ 'http://device.sprintpcs.com/HTC/APX325CKT/4136513.rdf' => array( 'HTC', 'EVO', 'Android', TYPE_MOBILE ),
615
  'http://device.sprintpcs.com/HTC/APX515CKT/1116512.rdf' => array( 'HTC', 'EVO 3D', 'Android', TYPE_MOBILE ),
616
  'http://device.sprintpcs.com/HTC/APX515CKT/1116513.rdf' => array( 'HTC', 'EVO 3D', 'Android', TYPE_MOBILE ),
617
  'http://device.sprintpcs.com/HTC/APX515CKT/1136517.rdf' => array( 'HTC', 'EVO 3D', 'Android', TYPE_MOBILE ),
637
  'http://device.sprintpcs.com/HTC/APA9292KT/4536511.rdf' => array( 'HTC', 'EVO 4G', 'Android', TYPE_MOBILE ),
638
  'http://device.sprintpcs.com/HTC/APA9292KT/4546511.rdf' => array( 'HTC', 'EVO 4G', 'Android', TYPE_MOBILE ),
639
  'http://device.sprintpcs.com/HTC/APA9292KT/4676513.rdf' => array( 'HTC', 'EVO 4G', 'Android', TYPE_MOBILE ),
640
+ 'http://device.sprintpcs.com/HTC/APA9292KT/5076511.rdf' => array( 'HTC', 'EVO 4G', 'Android', TYPE_MOBILE ),
641
  'http://device.sprintpcs.com/HTC/APA9292KT/5076512.rdf' => array( 'HTC', 'EVO 4G', 'Android', TYPE_MOBILE ),
642
  'http://device.sprintpcs.com/HTC/APA9292KT/5076516.rdf' => array( 'HTC', 'EVO 4G', 'Android', TYPE_MOBILE ),
643
  'http://www.htcmms.com.tw/Android/KDDI/ISW11HT/ua-profile.xml' => array( 'HTC', 'EVO 4G', 'Android', TYPE_MOBILE ),
659
  'http://device.sprintpcs.com/HTC/ATP515CKIT/2236511.rdf' => array( 'HTC', 'EVO View 4G', 'Android', TYPE_MOBILE ),
660
  'http://www.htcmms.com.tw/Android/Common/PJ03/ua-profile.xml' => array( 'HTC', 'Explorer', 'Android', TYPE_MOBILE ),
661
  'http://uaprof.vtext.com/pcd/adr6410/adr6410.xml' => array( 'HTC', 'Fireball', 'Android', TYPE_MOBILE ),
662
+ 'http://www.htcmms.com.tw/Android/ATT/PM331/ua-profile.xml' => array( 'HTC', 'First', 'Android', TYPE_MOBILE ),
663
  'http://www.htcmms.com.tw/Android/Common/PG411/ua-profile.xml' => array( 'HTC', 'Flyer', 'Android', TYPE_TABLET ),
664
  'http://www.htcmms.com.tw/Brew/Aqua/F5151-1.0.xml' => array( 'HTC', 'Freestyle', 'Brew', TYPE_MOBILE ),
665
  'http://www.htcmms.com.tw/att/P4600-1.0.xml' => array( 'HTC', 'Fuze', 'Windows Mobile', TYPE_MOBILE ),
666
  'http://www.htcmms.com.tw/Android/Common/Gratia/ua-profile.xml' => array( 'HTC', 'Gratia', 'Android', TYPE_MOBILE ),
667
  'http://www.htcmms.com.tw/gen/HTC_HD_mini_T5555-1.0.xml' => array( 'HTC', 'HD mini', 'Windows Mobile', TYPE_MOBILE ),
668
  'http://www.htcmms.com.tw/gen/HTC_HD2_T8585-1.0.xml' => array( 'HTC', 'HD2', 'Windows Mobile', TYPE_MOBILE ),
669
+ 'http://www.htcmms.com.tw/gen/HTC_HD2_T9193-1.0.xml' => array( 'HTC', 'HD2', 'Windows Mobile', TYPE_MOBILE ),
670
  'http://www.htcmms.com.tw/gen/Leo-1.5.xml' => array( 'HTC', 'HD2', 'Windows Mobile', TYPE_MOBILE ),
671
  'http://www.htcmms.com.tw/voda/HTC_HD2-1.0.xml' => array( 'HTC', 'HD2', 'Windows Mobile', TYPE_MOBILE ),
672
+ 'http://device.sprintpcs.com/HTC/APA6277KT/1566512.rdf' => array( 'HTC', 'Hero', 'Android', TYPE_MOBILE ),
673
  'http://device.sprintpcs.com/HTC/APA6277KT/2276516.rdf' => array( 'HTC', 'Hero', 'Android', TYPE_MOBILE ),
674
  'http://device.sprintpcs.com/HTC/APA6277KT/2316517.rdf' => array( 'HTC', 'Hero', 'Android', TYPE_MOBILE ),
675
  'http://device.sprintpcs.com/HTC/APA6277KT/2326512.rdf' => array( 'HTC', 'Hero', 'Android', TYPE_MOBILE ),
676
  'http://www.htcmms.com.tw/Android/Common/Hero/ua-profile.xml' => array( 'HTC', 'Hero', 'Android', TYPE_MOBILE ),
677
  'http://www.htcmms.com.tw/Android/Telus/Hero/ua-profile.xml' => array( 'HTC', 'Hero', 'Android', TYPE_MOBILE ),
678
  'http://www.htcmms.com.tw/Android/ATT/PH39100/ua-profile.xml' => array( 'HTC', 'Holiday', 'Android', TYPE_MOBILE ),
679
+ 'http://www.htcmms.com.tw/Android/Alltel/Desire/ua-profile.xml' => array( 'HTC', 'HTC Desire', 'Android', TYPE_MOBILE ),
680
  'http://nmsc.ctvap.cn/uaprof/HTC/HTC_S710d_2_20110301.XML' => array( 'HTC', 'Incredible S', 'Android', TYPE_MOBILE ),
681
  'http://www.htcmms.com.tw/Android/Bell/Vivo/ua-profile.xml' => array( 'HTC', 'Incredible S', 'Android', TYPE_MOBILE ),
682
  'http://www.htcmms.com.tw/Android/Common/PG32/ua-profile.xml' => array( 'HTC', 'Incredible S', 'Android', TYPE_MOBILE ),
699
  'http://device.sprintpcs.com/HTC/PPC6800/3566510.rdf' => array( 'HTC', 'Mogul', 'Windows Mobile', TYPE_MOBILE ),
700
  'http://www.htcmms.com.tw/gen/Breeze-2.0.xml' => array( 'HTC', 'MTeoR', 'Windows Mobile', TYPE_MOBILE ),
701
  'http://www.htcmms.com.tw/Android/common/NexusOne/ua-profile.xml' => array( 'HTC', 'Nexus One', 'Android', TYPE_MOBILE ),
702
+ 'http://device.sprintpcs.com/HTC/HTCPN702-11/3056516.rdf' => array( 'HTC', 'One', 'Android', TYPE_MOBILE ),
703
+ 'http://device.sprintpcs.com/HTC/HTCPN702-2011011301/3046512.rdf' => array( 'HTC', 'One', 'Android', TYPE_MOBILE ),
704
  'http://device.sprintpcs.com/HTC/HTCPN702-Chameleon/12965110.rdf' => array( 'HTC', 'One', 'Android', TYPE_MOBILE ),
705
  'http://device.sprintpcs.com/HTC/HTCPN702-Chameleon/1296517.rdf' => array( 'HTC', 'One', 'Android', TYPE_MOBILE ),
706
  'http://device.sprintpcs.com/HTC/HTCPN702-Chameleon/1316512.rdf' => array( 'HTC', 'One', 'Android', TYPE_MOBILE ),
707
  'http://device.sprintpcs.com/HTC/HTCPN702-Chameleon/3046512.rdf' => array( 'HTC', 'One', 'Android', TYPE_MOBILE ),
708
+ 'http://device.sprintpcs.com/HTC/HTCPN702-Chameleon/3056516.rdf' => array( 'HTC', 'One', 'Android', TYPE_MOBILE ),
709
  'http://device.sprintpcs.com/HTC/HTCPN702-SPRINT/12965110.rdf' => array( 'HTC', 'One', 'Android', TYPE_MOBILE ),
710
  'http://device.sprintpcs.com/HTC/HTCPN702-SPRINT/1296517.rdf' => array( 'HTC', 'One', 'Android', TYPE_MOBILE ),
711
  'http://device.sprintpcs.com/HTC/HTCPN702-SPRINT/1316512.rdf' => array( 'HTC', 'One', 'Android', TYPE_MOBILE ),
712
  'http://device.sprintpcs.com/HTC/HTCPN702-SPRINT/3046512.rdf' => array( 'HTC', 'One', 'Android', TYPE_MOBILE ),
713
+ 'http://device.sprintpcs.com/HTC/HTCPN702-SPRINT/3056515.rdf' => array( 'HTC', 'One', 'Android', TYPE_MOBILE ),
714
+ 'http://device.sprintpcs.com/HTC/HTCPN702-SPRINT/3056516.rdf' => array( 'HTC', 'One', 'Android', TYPE_MOBILE ),
715
+ 'http://device.sprintpcs.com/HTC/HTCPN702-SPRINT/4066514.rdf' => array( 'HTC', 'One', 'Android', TYPE_MOBILE ),
716
+ 'http://device.sprintpcs.com/HTC/HTCPN702-SPRINT/4066519.rdf' => array( 'HTC', 'One', 'Android', TYPE_MOBILE ),
717
  'http://device.sprintpcs.com/HTC/HTCPN702-SPRINT/42ONE Inverted ROM v12.rdf' => array( 'HTC', 'One', 'Android', TYPE_MOBILE ),
718
  'http://device.sprintpcs.com/HTC/HTCPN702-SPRINT/Ava-OneV1//ALPHA1.rdf' => array( 'HTC', 'One', 'Android', TYPE_MOBILE ),
719
  'http://device.sprintpcs.com/HTC/HTCPN702-SPRINT/BSC Tranquil One RLS42.rdf' => array( 'HTC', 'One', 'Android', TYPE_MOBILE ),
720
  'http://device.sprintpcs.com/HTC/HTCPN702-SPRINT/RageOne CDMA v100.rdf' => array( 'HTC', 'One', 'Android', TYPE_MOBILE ),
721
+ 'http://device.sprintpcs.com/HTC/HTCPN702-SPRINT/RageOne v151.rdf' => array( 'HTC', 'One', 'Android', TYPE_MOBILE ),
722
  'http://device.sprintpcs.com/HTC/HTCPN702-SPRINT/Stock 12965110 Odex by -viperboy-.rdf' => array( 'HTC', 'One', 'Android', TYPE_MOBILE ),
723
  'http://device.sprintpcs.com/HTC/HTCPN702-SPRINT/Stock w Goodies One 115.rdf' => array( 'HTC', 'One', 'Android', TYPE_MOBILE ),
724
  'http://device.sprintpcs.com/HTC/HTCPN702-SPRINT/Stock w Goodies One 201.rdf' => array( 'HTC', 'One', 'Android', TYPE_MOBILE ),
725
  'http://device.sprintpcs.com/HTC/HTCPN702-SPRINT/Stock.rdf' => array( 'HTC', 'One', 'Android', TYPE_MOBILE ),
726
  'http://device.sprintpcs.com/HTC/HTCPN702-SPRINT/TrickDroid 551.rdf' => array( 'HTC', 'One', 'Android', TYPE_MOBILE ),
727
+ 'http://device.sprintpcs.com/HTC/HTCPN702-SPRINT/ViperOne 350.rdf' => array( 'HTC', 'One', 'Android', TYPE_MOBILE ),
728
  'http://device.sprintpcs.com/HTC/HTCPN702-SPRINT/viperROM One v102.rdf' => array( 'HTC', 'One', 'Android', TYPE_MOBILE ),
729
+ 'http://mms.cellcom.com/uaprofs/htc_M7_8M.xml' => array( 'HTC', 'One', 'Android', TYPE_MOBILE ),
730
  'http://nmsc.ctvap.cn/uaprof/HTC/HTC_802d_1_20130301.XML' => array( 'HTC', 'One', 'Android', TYPE_MOBILE ),
731
  'http://nmsc.ctvap.cn/uaprof/HTC/HTC_One_1_20130301.XML' => array( 'HTC', 'One', 'Android', TYPE_MOBILE ),
732
  'http://uaprof.qma.com.tw/HTC_802d.xml' => array( 'HTC', 'One', 'Android', TYPE_MOBILE ),
744
  'http://www.htcmms.com.tw/Android/Common/PN078T/ua-profile.xml' => array( 'HTC', 'One', 'Android', TYPE_MOBILE ),
745
  'http://www.htcmms.com.tw/Android/Common/PN078U/ua-profile.xml' => array( 'HTC', 'One', 'Android', TYPE_MOBILE ),
746
  'http://www.htcmms.com.tw/Android/Common/PN078W/ua-profile.xml' => array( 'HTC', 'One', 'Android', TYPE_MOBILE ),
747
+ 'http://www.htcmms.com.tw/Android/Nextel/PN071/ua-profile.xml' => array( 'HTC', 'One', 'Android', TYPE_MOBILE ),
748
  'http://www.htcmms.com.tw/Android/O2/PN071/ua-profile.xml' => array( 'HTC', 'One', 'Android', TYPE_MOBILE ),
749
  'http://www.htcmms.com.tw/Android/Orange/PN071/ua-profile.xml' => array( 'HTC', 'One', 'Android', TYPE_MOBILE ),
750
  'http://www.htcmms.com.tw/Android/Rogers/801a/ua-profile.xml' => array( 'HTC', 'One', 'Android', TYPE_MOBILE ),
757
  'http://www.htcmms.com.tw/Android/TNZ/PN071/ua-profile.xml' => array( 'HTC', 'One', 'Android', TYPE_MOBILE ),
758
  'http://www.htcmms.com.tw/Android/Vodafone/PN071/ua-profile.xml' => array( 'HTC', 'One', 'Android', TYPE_MOBILE ),
759
  'http://www.htcmms.com.tw/Android/WIND/PN071/ua-profile.xml' => array( 'HTC', 'One', 'Android', TYPE_MOBILE ),
760
+ 'http://device.sprintpcs.com/HTC/831C-Chameleon/11265117.rdf' => array( 'HTC', 'One (M8)', 'Android', TYPE_MOBILE ),
761
+ 'http://device.sprintpcs.com/HTC/831C-SPRINT/1546518.rdf' => array( 'HTC', 'One (M8)', 'Android', TYPE_MOBILE ),
762
+ 'http://www.htcmms.com.tw/Android/ATT/fL0fd1AcEY/ua-profile.xml' => array( 'HTC', 'One (M8)', 'Android', TYPE_MOBILE ),
763
+ 'http://www.htcmms.com.tw/Android/BM/fL0fd1AcEY/ua-profile.xml' => array( 'HTC', 'One (M8)', 'Android', TYPE_MOBILE ),
764
+ 'http://www.htcmms.com.tw/Android/Common/3EdRGieOMj/ua-profile.xml' => array( 'HTC', 'One (M8)', 'Android', TYPE_MOBILE ),
765
+ 'http://www.htcmms.com.tw/Android/Common/5iCu8aRdPo/ua-profile.xml' => array( 'HTC', 'One (M8)', 'Android', TYPE_MOBILE ),
766
+ 'http://www.htcmms.com.tw/Android/Common/fL0fd1AcEY/ua-profile.xml' => array( 'HTC', 'One (M8)', 'Android', TYPE_MOBILE ),
767
+ 'http://www.htcmms.com.tw/Android/Common/MaGxKOfxPJ/ua-profile.xml' => array( 'HTC', 'One (M8)', 'Android', TYPE_MOBILE ),
768
+ 'http://www.htcmms.com.tw/Android/Orange/fL0fd1AcEY/ua-profile.xml' => array( 'HTC', 'One (M8)', 'Android', TYPE_MOBILE ),
769
+ 'http://www.htcmms.com.tw/Android/Rogers/fL0fd1AcEY/ua-profile.xml' => array( 'HTC', 'One (M8)', 'Android', TYPE_MOBILE ),
770
+ 'http://www.htcmms.com.tw/Android/SFR/fL0fd1AcEY/ua-profile.xml' => array( 'HTC', 'One (M8)', 'Android', TYPE_MOBILE ),
771
+ 'http://www.htcmms.com.tw/Android/Telus/fL0fd1AcEY/ua-profile.xml' => array( 'HTC', 'One (M8)', 'Android', TYPE_MOBILE ),
772
+ 'http://www.htcmms.com.tw/Android/TMO/fL0fd1AcEY/ua-profile.xml' => array( 'HTC', 'One (M8)', 'Android', TYPE_MOBILE ),
773
+ 'http://www.htcmms.com.tw/Android/TMOUS/fL0fd1AcEY/ua-profile.xml' => array( 'HTC', 'One (M8)', 'Android', TYPE_MOBILE ),
774
+ 'http://www.htcmms.com.tw/Android/Vodafone/fL0fd1AcEY/ua-profile.xml' => array( 'HTC', 'One (M8)', 'Android', TYPE_MOBILE ),
775
+ 'http://www.htcmms.com.tw/Android/WIND/fL0fd1AcEY/ua-profile.xml' => array( 'HTC', 'One (M8)', 'Android', TYPE_MOBILE ),
776
  'http://device.sprintpcs.com/HTC/HTC0P3P7-Chameleon/%CDMA_ROM_VERSION%.rdf' => array( 'HTC', 'One Max', 'Android', TYPE_MOBILE ),
777
  'http://device.sprintpcs.com/HTC/HTC0P3P7-Chameleon/0576512.rdf' => array( 'HTC', 'One Max', 'Android', TYPE_MOBILE ),
778
+ 'http://device.sprintpcs.com/HTC/HTC0P3P7-SPRINT/1166514.rdf' => array( 'HTC', 'One Max', 'Android', TYPE_MOBILE ),
779
+ 'http://device.sprintpcs.com/HTC/HTC0P3P7-SPRINT/2096511.rdf' => array( 'HTC', 'One Max', 'Android', TYPE_MOBILE ),
780
+ 'http://www.htcmms.com.tw/Android/Common/0O5MHN0Mig/ua-profile.xml' => array( 'HTC', 'One Max', 'Android', TYPE_MOBILE ),
781
  'http://www.htcmms.com.tw/Android/Common/arYPBWMPCx/ua-profile.xml' => array( 'HTC', 'One Max', 'Android', TYPE_MOBILE ),
782
+ 'http://www.htcmms.com.tw/Android/Common/LDdI1qcVhL/ua-profile.xml' => array( 'HTC', 'One Max', 'Android', TYPE_MOBILE ),
783
  'http://www.htcmms.com.tw/Android/Common/V79ccMv3KO/ua-profile.xml' => array( 'HTC', 'One Max', 'Android', TYPE_MOBILE ),
784
  'http://www.htcmms.com.tw/Android/Common/w778dYholc/ua-profile.xml' => array( 'HTC', 'One Max', 'Android', TYPE_MOBILE ),
785
+ 'http://www.htcmms.com.tw/Android/Vodafone/w778dYholc/ua-profile.xml' => array( 'HTC', 'One Max', 'Android', TYPE_MOBILE ),
786
  'http://www.htcmms.com.tw/Android/ATT/PO582/ua-profile.xml' => array( 'HTC', 'One Mini', 'Android', TYPE_MOBILE ),
787
  'http://www.htcmms.com.tw/Android/Common/PO581/ua-profile.xml' => array( 'HTC', 'One Mini', 'Android', TYPE_MOBILE ),
788
  'http://www.htcmms.com.tw/Android/Common/PO582/ua-profile.xml' => array( 'HTC', 'One Mini', 'Android', TYPE_MOBILE ),
789
+ 'http://www.htcmms.com.tw/Android/O2/PO582/ua-profile.xml' => array( 'HTC', 'One Mini', 'Android', TYPE_MOBILE ),
790
+ 'http://www.htcmms.com.tw/Android/Orange/PO582/ua-profile.xml' => array( 'HTC', 'One Mini', 'Android', TYPE_MOBILE ),
791
  'http://www.htcmms.com.tw/Android/Rogers/PO582/ua-profile.xml' => array( 'HTC', 'One Mini', 'Android', TYPE_MOBILE ),
792
+ 'http://www.htcmms.com.tw/Android/Telstra/PO582//ua-profile.xml' => array( 'HTC', 'One Mini', 'Android', TYPE_MOBILE ),
793
+ 'http://www.htcmms.com.tw/Android/TIM/PO582/ua-profile.xml' => array( 'HTC', 'One Mini', 'Android', TYPE_MOBILE ),
794
  'http://www.htcmms.com.tw/Android/TMO/PO582/ua-profile.xml' => array( 'HTC', 'One mini', 'Android', TYPE_MOBILE ),
795
+ 'http://www.htcmms.com.tw/Android/Common/UlrIAz8JY9/ua-profile.xml' => array( 'HTC', 'One Mini 2', 'Android', TYPE_MOBILE ),
796
+ 'http://www.htcmms.com.tw/Android/Vodafone/UlrIAz8JY9/ua-profile.xml' => array( 'HTC', 'One Mini 2', 'Android', TYPE_MOBILE ),
797
  'http://www.htcmms.com.tw/Android/Bell/Z520m/ua-profile.xml' => array( 'HTC', 'One S', 'Android', TYPE_MOBILE ),
798
  'http://www.htcmms.com.tw/Android/Bouygues/PJ401/ua-profile.xml' => array( 'HTC', 'One S', 'Android', TYPE_MOBILE ),
799
  'http://www.htcmms.com.tw/Android/Canada/Z520m/ua-profile.xml' => array( 'HTC', 'One S', 'Android', TYPE_MOBILE ),
819
  'http://www.htcmms.com.tw/Android/Common/PM6012/ua-profile.xml' => array( 'HTC', 'One SU', 'Android', TYPE_MOBILE ),
820
  'http://device.sprintpcs.com/HTC/C525c-BOOST/1116531.rdf' => array( 'HTC', 'One SV', 'Android', TYPE_MOBILE ),
821
  'http://device.sprintpcs.com/HTC/C525c-BOOST/2066535.rdf' => array( 'HTC', 'One SV', 'Android', TYPE_MOBILE ),
822
+ 'http://device.sprintpcs.com/HTC/C525c-BOOST/3056533.rdf' => array( 'HTC', 'One SV', 'Android', TYPE_MOBILE ),
823
  'http://mms.mycricket.com/htc_h3000c.xml' => array( 'HTC', 'One SV', 'Android', TYPE_MOBILE ),
824
  'http://www.htcmms.com.tw/Android/Bouygues/PL801/ua-profile.xml' => array( 'HTC', 'One SV', 'Android', TYPE_MOBILE ),
825
  'http://www.htcmms.com.tw/Android/Common/PL801/ua-profile.xml' => array( 'HTC', 'One SV', 'Android', TYPE_MOBILE ),
861
  'http://www.htcmms.com.tw/Android/Vodafone/PJ831/ua-profile.xml' => array( 'HTC', 'One XL', 'Android', TYPE_MOBILE ),
862
  'http://www.htcmms.com.tw/Android/Common/PJ462/ua-profile.xml' => array( 'HTC', 'One XT', 'Android', TYPE_MOBILE ),
863
  'http://www.htcmms.com.tw/gen/Oxygen-1.0.xml' => array( 'HTC', 'Oxygen', 'Windows Mobile', TYPE_MOBILE ),
864
+ 'http://www.htcmms.com.tw/gen/CedarW-1.0.xml' => array( 'HTC', 'Ozone', 'Windows Mobile', TYPE_MOBILE ),
865
  'http://www.htcmms.com.tw/gen/wave-1.0.xml' => array( 'HTC', 'P3000', 'Windows Mobile', TYPE_MOBILE ),
866
  'http://www.htcmms.com.tw/gen/artemis-1.0.xml' => array( 'HTC', 'P3300', 'Windows Mobile', TYPE_MOBILE ),
867
  'http://www.htcmms.com.tw/gen/elf-1.0.xml' => array( 'HTC', 'P3450', 'Windows Mobile', TYPE_MOBILE ),
908
  'http://www.htcmms.com.tw/gen/Titan-1.0.xml' => array( 'HTC', 'Titan', 'Windows Mobile', TYPE_MOBILE ),
909
  'http://www.htcmms.com.tw/gen/tornado-2.0.xml' => array( 'HTC', 'Tornado', 'Windows Mobile', TYPE_MOBILE ),
910
  'http://www.htcmms.com.tw/brightstar/ELFIN-1.0.xml' => array( 'HTC', 'Touch', 'Windows Mobile', TYPE_MOBILE ),
911
+ 'http://www.htcmms.com.tw/gen/Elfin_Opera-1.0.xml' => array( 'HTC', 'Touch', 'Windows', TYPE_MOBILE ),
912
  'http://www.htcmms.com.tw/gen/HTC_Touch_Viva_T2223-1.0.xml' => array( 'HTC', 'Touch', 'Windows Mobile', TYPE_MOBILE ),
913
  'http://www.htcmms.com.tw/gen/HTC_Touch2_T3333-1.0.xml' => array( 'HTC', 'Touch 2', 'Windows Mobile', TYPE_MOBILE ),
914
  'http://www.htcmms.com.tw/gen/mega-1.0.xml' => array( 'HTC', 'Touch 2', 'Windows Mobile', TYPE_MOBILE ),
922
  'http://www.htcmms.com.tw/gen/VictorCT-1.0.xml' => array( 'HTC', 'Touch Diamond', 'Windows Mobile', TYPE_MOBILE ),
923
  'http://www.htcmms.com.tw/voda/diamond-1.0.xml' => array( 'HTC', 'Touch Diamond', 'Windows Mobile', TYPE_MOBILE ),
924
  'http://www.htcmms.com.tw/gen/HTC_Touch_Diamond2_T5353-1.0.xml' => array( 'HTC', 'Touch Diamond 2', 'Windows Mobile', TYPE_MOBILE ),
925
+ 'http://www.htcmms.com.tw/gen/HTC_Touch_Diamond2_T5360-1.0.xml' => array( 'HTC', 'Touch Diamond 2', 'Windows Mobile', TYPE_MOBILE ),
926
  'http://www.htcmms.com.tw/gen/neon-1.0.xml' => array( 'HTC', 'Touch Dual', 'Windows Mobile', TYPE_MOBILE ),
927
  'http://www.htcmms.com.tw/gen/NeonC_BM-1.0.xml' => array( 'HTC', 'Touch Dual', 'Windows Mobile', TYPE_MOBILE ),
928
  'http://www.htcmms.com.tw/gen/nike-1.0.xml' => array( 'HTC', 'Touch Dual', 'Windows Mobile', TYPE_MOBILE ),
944
  'http://www.htcmms.com.tw/Android/Telstra/A3335/ua-profile.xml' => array( 'HTC', 'Wildfire', 'Android', TYPE_MOBILE ),
945
  'http://www.htcmms.com.tw/Android/TME/Wildfire/ua-profile.xml' => array( 'HTC', 'Wildfire', 'Android', TYPE_MOBILE ),
946
  'http://www.htcmms.com.tw/Android/TMO/Buzz/ua-profile.xml' => array( 'HTC', 'Wildfire', 'Android', TYPE_MOBILE ),
947
+ 'http://www.htcmms.com.tw/Android/Alltel/Bee/ua-profile.xml' => array( 'HTC', 'Wildfire 6225', 'Android', TYPE_MOBILE ),
948
  'http://mmsc1.uscc.net/mmsc/MMS' => array( 'HTC', 'Wildfire S', 'Android', TYPE_MOBILE ),
949
  'http://nmsc.ctvap.cn/uaprof/HTC/HTC_A510c_1_20110425.XML' => array( 'HTC', 'Wildfire S', 'Android', TYPE_MOBILE ),
950
  'http://uaprof.metropcs.net/UAProf/HTC-PG762.xml' => array( 'HTC', 'Wildfire S', 'Android', TYPE_MOBILE ),
958
  'http://www.htcmms.com.tw/gen/Wizard-2.0.xml' => array( 'HTC', 'Wizard', 'Windows Mobile', TYPE_MOBILE ),
959
  'http://www.htcmms.com.tw/gen/X1i-1.0.xml' => array( 'HTC', 'X1i', 'Windows Mobile', TYPE_MOBILE ),
960
  'http://nmsc.ctvap.cn/uaprof/HTC/HTC_Z510d_1_20110831.XML' => array( 'HTC', 'Z510d', 'Android', TYPE_MOBILE ),
961
+ 'http://device.sprintpcs.com/HTC/HTC0P4E1-VIRGIN/1106526.rdf' => array( 'HTC', 'Zara', 'Android', TYPE_MOBILE ),
962
  'http://wap1.huawei.com/uaprof/HW_HUAWEI_A199_1_20130121.xml' => array( 'Huawei', 'A199', 'Android', TYPE_MOBILE ),
963
  'http://uaprof.metropcs.net/UAProf/Huawei-M920.xml' => array( 'Huawei', 'Activa 4G', 'Android', TYPE_MOBILE ),
964
  'http://mms.mycricket.com/Huawei-M860.xml' => array( 'Huawei', 'Ascend', 'Android', TYPE_MOBILE ),
965
+ 'http://wap1.huawei.com/uaprof/Huawei_M860_Normal.xml' => array( 'Huawei', 'Ascend', 'Android', TYPE_MOBILE ),
966
  'http://wap1.huawei.com/uaprof/HuaweiC8812CDMA-NORMAL.xml' => array( 'Huawei', 'Ascend C8812', 'Android', TYPE_MOBILE ),
967
  'http://wap1.huawei.com/uaprof/HuaweiC8812CDMA2000-NORMAL.xml' => array( 'Huawei', 'Ascend C8812', 'Android', TYPE_MOBILE ),
968
  'http://wap1.huawei.com/uaprof/HuaweiC8812WCDMA-NORMAL.xml' => array( 'Huawei', 'Ascend C8812', 'Android', TYPE_MOBILE ),
973
  'http://wap1.huawei.com/uaprof/HW_HUAWEI_C8813Q_1_20130108.xml' => array( 'Huawei', 'Ascend C8813', 'Android', TYPE_MOBILE ),
974
  'http://wap1.huawei.com/uaprof/HW_HUAWEI_C8813Q_1_20130425.xml' => array( 'Huawei', 'Ascend C8813', 'Android', TYPE_MOBILE ),
975
  'http://wap1.huawei.com/uaprof/HW_HUAWEI_C8813_1_20121018.xml' => array( 'Huawei', 'Ascend C8813', 'Android', TYPE_MOBILE ),
976
+ 'http://wap1.huawei.com/uaprof/HW_HUAWEI_C8813Q_1_20121018.xml' => array( 'Huawei', 'Ascend C8815', 'Android', TYPE_MOBILE ),
977
+ 'http://wap1.huawei.com/uaprof/HW_HUAWEI_C8816_1_20131106.xml' => array( 'Huawei', 'Ascend C8816', 'Android', TYPE_MOBILE ),
978
  'http://wap1.huawei.com/uaprof/HUAWEI_U9501L_UAProfile.xml' => array( 'Huawei', 'Ascend D LTE', 'Android', TYPE_MOBILE ),
979
  'http://wap1.huawei.com/uaprof/HUAWEI_U9510E_UAProfile.xml' => array( 'Huawei', 'Ascend D quad', 'Android', TYPE_MOBILE ),
980
  'http://wap1.huawei.com/uaprof/HUAWEI_U9510_UAProfile.xml' => array( 'Huawei', 'Ascend D quad', 'Android', TYPE_MOBILE ),
1005
  'http://wap1.huawei.com/uaprof/HW_HUAWEI_C8825D_1_20120530.xml' => array( 'Huawei', 'Ascend G330C', 'Android', TYPE_MOBILE ),
1006
  'http://wap1.huawei.com/uaprof/HuaweiU8836Dv100CHNC00WCDMA.xml' => array( 'Huawei', 'Ascend G500', 'Android', TYPE_MOBILE ),
1007
  'http://wap1.huawei.com/uaprof/HW_HUAWEI_C8826D_1_20120926.xml' => array( 'Huawei', 'Ascend G500C', 'Android', TYPE_MOBILE ),
1008
+ 'http://wap1.huawei.com/uaprof/HuaweiG510-0010GPRS-Normal.xml' => array( 'Huawei', 'Ascend G510', 'Android', TYPE_MOBILE ),
1009
  'http://wap1.huawei.com/uaprof/HuaweiG510-0010GPRS-UNICOM.xml' => array( 'Huawei', 'Ascend G510', 'Android', TYPE_MOBILE ),
1010
+ 'http://wap1.huawei.com/uaprof/HuaweiG510-0010GPRS.xml' => array( 'Huawei', 'Ascend G510', 'Android', TYPE_MOBILE ),
1011
  'http://wap1.huawei.com/uaprof/HuaweiG510-0100GPRS-FL.xml' => array( 'Huawei', 'Ascend G510', 'Android', TYPE_MOBILE ),
1012
  'http://wap1.huawei.com/uaprof/HuaweiG510-0100GPRS-NORMAL.xml' => array( 'Huawei', 'Ascend G510', 'Android', TYPE_MOBILE ),
1013
  'http://wap1.huawei.com/uaprof/HuaweiG510-0100GPRS-Vodafone.xml' => array( 'Huawei', 'Ascend G510', 'Android', TYPE_MOBILE ),
1014
  'http://wap1.huawei.com/uaprof/HuaweiG510-0100WCDMA-FL.xml' => array( 'Huawei', 'Ascend G510', 'Android', TYPE_MOBILE ),
1015
  'http://wap1.huawei.com/uaprof/HuaweiG510-0200GPRS-NORMAL.xml' => array( 'Huawei', 'Ascend G510', 'Android', TYPE_MOBILE ),
1016
  'http://wap1.huawei.com/uaprof/HuaweiG510-0200GPRS-Yoigo.xml' => array( 'Huawei', 'Ascend G510', 'Android', TYPE_MOBILE ),
1017
+ 'http://wap1.huawei.com/uaprof/HuaweiG510-0200GPRS.xml' => array( 'Huawei', 'Ascend G510', 'Android', TYPE_MOBILE ),
1018
  'http://wap1.huawei.com/uaprof/HuaweiG510-0251GPRS-DRM.xml' => array( 'Huawei', 'Ascend G510', 'Android', TYPE_MOBILE ),
1019
  'http://wap1.huawei.com/uaprof/HuaweiG510-0251GPRS-NORMAL.xml' => array( 'Huawei', 'Ascend G510', 'Android', TYPE_MOBILE ),
1020
  'http://wap1.huawei.com/uaprof/HUAWEI_T8951_UAProfile.xml' => array( 'Huawei', 'Ascend G510', 'Android', TYPE_MOBILE ),
1021
+ 'http://wap1.huawei.com/uaprof/HW_HUAWEI_U8951_1_20121018.xml' => array( 'Huawei', 'Ascend G510', 'Android', TYPE_MOBILE ),
1022
  'http://wap1.huawei.com/uaprof/HuaweiG520-0000GPRS-UNICOM.xml' => array( 'Huawei', 'Ascend G520', 'Android', TYPE_MOBILE ),
1023
  'http://wap1.huawei.com/uaprof/HUAWEI_G520-5000_UAProfile.xml' => array( 'Huawei', 'Ascend G520', 'Android', TYPE_MOBILE ),
1024
  'http://wap1.huawei.com/uaprof/HUAWEI_G520-T10_UAProfile.xml' => array( 'Huawei', 'Ascend G520', 'Android', TYPE_MOBILE ),
1025
  'http://wap1.huawei.com/uaprof/HuaweiG525-U00GPRS-NORMAL.xml' => array( 'Huawei', 'Ascend G525', 'Android', TYPE_MOBILE ),
1026
+ 'http://wap1.huawei.com/uaprof/HuaweiG525-U00GPRS-UNICOM.xml' => array( 'Huawei', 'Ascend G525', 'Android', TYPE_MOBILE ),
1027
  'http://wap1.huawei.com/uaprof/HuaweiG525-U00GPRS.xml' => array( 'Huawei', 'Ascend G525', 'Android', TYPE_MOBILE ),
1028
  'http://device.sprintpcs.com/HUAWEI/PLTFH882KT/H882LV100R001C378B145.rdf' => array( 'Huawei', 'Ascend G526', 'Android', TYPE_MOBILE ),
1029
  'http://wap1.huawei.com/uaprof/HuaweiG526-L11LTE-Normal.xml' => array( 'Huawei', 'Ascend G526', 'Android', TYPE_MOBILE ),
1030
  'http://wap1.huawei.com/uaprof/HuaweiG526-L22LTE-Normal.xml' => array( 'Huawei', 'Ascend G526', 'Android', TYPE_MOBILE ),
1031
  'http://wap1.huawei.com/uaprof/HuaweiG526-L33LTE-Normal.xml' => array( 'Huawei', 'Ascend G526', 'Android', TYPE_MOBILE ),
1032
+ 'http://wap1.huawei.com/uaprof/HUAWEI_G6-U10_UAProfile-DRM.xml' => array( 'Huawei', 'Ascend G6', 'Android', TYPE_MOBILE ),
1033
+ 'http://wap1.huawei.com/uaprof/HUAWEI_G6-U251_UAProfile.xml' => array( 'Huawei', 'Ascend G6', 'Android', TYPE_MOBILE ),
1034
  'http://wap1.huawei.com/uaprof/HUAWEI_G6_U00.xml' => array( 'Huawei', 'Ascend G6', 'Android', TYPE_MOBILE ),
1035
  'http://wap1.huawei.com/uaprof/HuaweiU8950-1GPRS-Normal.xml' => array( 'Huawei', 'Ascend G600', 'Android', TYPE_MOBILE ),
1036
  'http://wap1.huawei.com/uaprof/HuaweiU8950-51GPRS-Normal.xml' => array( 'Huawei', 'Ascend G600', 'Android', TYPE_MOBILE ),
1040
  'http://wap1.huawei.com/uaprof/HuaweiU8950N-51WCDMA-Normal.xml' => array( 'Huawei', 'Ascend G600', 'Android', TYPE_MOBILE ),
1041
  'http://wap1.huawei.com/uaprof/HUAWEI_T8950_UAProfile.xml' => array( 'Huawei', 'Ascend G600', 'Android', TYPE_MOBILE ),
1042
  'http://wap1.huawei.com/uaprof/HUAWEI_G610-T00_UAProfile.xml' => array( 'Huawei', 'Ascend G610', 'Android', TYPE_MOBILE ),
1043
+ 'http://wap1.huawei.com/uaprof/HUAWEI_G610-T11_UAProfile.xml' => array( 'Huawei', 'Ascend G610', 'Android', TYPE_MOBILE ),
1044
  'http://wap1.huawei.com/uaprof/HUAWEI_G610-U00_UAProfile.xml' => array( 'Huawei', 'Ascend G610', 'Android', TYPE_MOBILE ),
1045
  'http://wap1.huawei.com/uaprof/HUAWEI_G610-U15_UAProfile.xml' => array( 'Huawei', 'Ascend G610', 'Android', TYPE_MOBILE ),
1046
  'http://wap1.huawei.com/uaprof/HUAWEI_G610-U20_UAProfile.xml' => array( 'Huawei', 'Ascend G610', 'Android', TYPE_MOBILE ),
1047
+ 'http://wap1.huawei.com/uaprof/HUAWEI_G610-U30_UAProfile.xml' => array( 'Huawei', 'Ascend G610', 'Android', TYPE_MOBILE ),
1048
  'http://wap1.huawei.com/uaprof/HW_HUAWEI_G610-C00_1_20130108.xml' => array( 'Huawei', 'Ascend G610', 'Android', TYPE_MOBILE ),
1049
+ 'http://wap1.huawei.com/uaprof/HUAWEI_G616-T00_UAProfile.xml' => array( 'Huawei', 'Ascend G616', 'Android', TYPE_MOBILE ),
1050
  'http://wap1.huawei.com/uaprof/HW_HUAWEI_G620_1_20130917.xml' => array( 'Huawei', 'Ascend G620', 'Android', TYPE_MOBILE ),
1051
+ 'http://wap1.huawei.com/uaprof/HuaweiG630-U20-Normal.xml' => array( 'Huawei', 'Ascend G630', 'Android', TYPE_MOBILE ),
1052
+ 'http://wap1.huawei.com/uaprof/HUAWEI_G630_U00.xml' => array( 'Huawei', 'Ascend G630', 'Android', TYPE_MOBILE ),
1053
  'http://wap1.huawei.com/uaprof/HUAWEI_G700-T00_UAProfile.xml' => array( 'Huawei', 'Ascend G700', 'Android', TYPE_MOBILE ),
1054
  'http://wap1.huawei.com/uaprof/HUAWEI_G700-U00_UAProfile.xml' => array( 'Huawei', 'Ascend G700', 'Android', TYPE_MOBILE ),
1055
  'http://wap1.huawei.com/uaprof/HUAWEI_G700-U10_UAProfile.xml' => array( 'Huawei', 'Ascend G700', 'Android', TYPE_MOBILE ),
1056
  'http://wap1.huawei.com/uaprof/HUAWEI_G700-U20_UAProfile.xml' => array( 'Huawei', 'Ascend G700', 'Android', TYPE_MOBILE ),
1057
  'http://wap1.huawei.com/uaprof/HuaweiG716-L070LTE.xml' => array( 'Huawei', 'Ascend G716', 'Android', TYPE_MOBILE ),
1058
  'http://wap1.huawei.com/uaprof/HW_HUAWEI_G718_1_20130805.xml' => array( 'Huawei', 'Ascend G718', 'Android', TYPE_MOBILE ),
1059
+ 'http://wap1.huawei.com/uaprof/HUAWEI_G730-U00_UAProfile.xml' => array( 'Huawei', 'Ascend G730', 'Android', TYPE_MOBILE ),
1060
+ 'http://wap1.huawei.com/uaprof/HUAWEI_G730-U10_UAProfile.xml' => array( 'Huawei', 'Ascend G730', 'Android', TYPE_MOBILE ),
1061
+ 'http://wap1.huawei.com/uaprof/HW_HUAWEI_G730-C00_20130826.xml' => array( 'Huawei', 'Ascend G730', 'Android', TYPE_MOBILE ),
1062
  'http://wap1.huawei.com/uaprof/HW_HUAWEI_G730-C10_1_20130828.xml' => array( 'Huawei', 'Ascend G730', 'Android', TYPE_MOBILE ),
1063
+ 'http://wap1.huawei.com/uaprof/HuaweiG740-L00LTE-DRM.xml' => array( 'Huawei', 'Ascend G740', 'Android', TYPE_MOBILE ),
1064
+ 'http://wap1.huawei.com/uaprof/HUAWEI_G750-T01_UAProfile.xml' => array( 'Huawei', 'Ascend G750', 'Android', TYPE_MOBILE ),
1065
+ 'http://wap1.huawei.com/uaprof/HUAWEI_G750-U10_UAProfile.xml' => array( 'Huawei', 'Ascend G750', 'Android', TYPE_MOBILE ),
1066
+ 'http://wap1.huawei.com/uaprof/HW_HUAWEI_G760-L071.xml' => array( 'Huawei', 'Ascend G760', 'Android', TYPE_MOBILE ),
1067
  'http://mms.mycricket.com/Huawei-M865.xml' => array( 'Huawei', 'Ascend II', 'Android', TYPE_MOBILE ),
1068
  'http://uaprof.vtext.com/Huawei/ADR3310/ADR3310v1.xml' => array( 'Huawei', 'Ascend II', 'Android', TYPE_MOBILE ),
1069
  'http://wap1.huawei.com/uaprof/Huawei-M865C.xml' => array( 'Huawei', 'Ascend II', 'Android', TYPE_MOBILE ),
1070
+ 'http://wap1.huawei.com/uaprof/HUAWEI_MATE_T00_UAProfile.xml' => array( 'Huawei', 'Ascend Mate', 'Android', TYPE_MOBILE ),
1071
  'http://wap1.huawei.com/uaprof/HUAWEI_MATE_UAProfile.XML' => array( 'Huawei', 'Ascend Mate', 'Android', TYPE_MOBILE ),
1072
  'http://wap1.huawei.com/uaprof/HUAWEI_MATE_Wind_UAProfile.XML' => array( 'Huawei', 'Ascend Mate', 'Android', TYPE_MOBILE ),
1073
+ 'http://wap1.huawei.com/uaprof/HUAWEI_MT2_L05_UAProfile.xml' => array( 'Huawei', 'Ascend Mate 2', 'Android', TYPE_MOBILE ),
1074
+ 'http://wap1.huawei.com/uaprof/HW_HUAWEI_Mate2.xml' => array( 'Huawei', 'Ascend Mate 2', 'Android', TYPE_MOBILE ),
1075
+ 'http://wap1.huawei.com/uaprof/HW_HUAWEI_MT2-C00_1_20130425.xml' => array( 'Huawei', 'Ascend Mate 2', 'Android', TYPE_MOBILE ),
1076
+ 'http://wap1.huawei.com/uaprof/HW_HUAWEI_MT2-C00_1_20131227.xml' => array( 'Huawei', 'Ascend Mate 2', 'Android', TYPE_MOBILE ),
1077
  'http://wap1.huawei.com/uaprof/HUAWEI_GS03_UAProfile.xml' => array( 'Huawei', 'Ascend P1', 'Android', TYPE_MOBILE ),
1078
  'http://wap1.huawei.com/uaprof/HUAWEI_T9200_UAProfile.xml' => array( 'Huawei', 'Ascend P1', 'Android', TYPE_MOBILE ),
1079
  'http://wap1.huawei.com/uaprof/HUAWEI_U9200_UAProfile.xml' => array( 'Huawei', 'Ascend P1', 'Android', TYPE_MOBILE ),
1080
  'http://wap1.huawei.com/uaprof/HUAWEI_U9201L_UAProfile.xml' => array( 'Huawei', 'Ascend P1', 'Android', TYPE_MOBILE ),
1081
  'http://wap1.huawei.com/uaprof/HUAWEI_U9202L-1_UAProfile.xml' => array( 'Huawei', 'Ascend P1', 'Android', TYPE_MOBILE ),
1082
  'http://wap1.huawei.com/uaprof/HUAWEI_U9202L-3_UAProfile.xml' => array( 'Huawei', 'Ascend P1', 'Android', TYPE_MOBILE ),
1083
+ 'http://wap1.huawei.com/uaprof/HUAWEI_P2_NewZealand_UAProfile.xml' => array( 'Huawei', 'Ascend P2', 'Android', TYPE_MOBILE ),
1084
  'http://wap1.huawei.com/uaprof/HUAWEI_P2_UAProfile.xml' => array( 'Huawei', 'Ascend P2', 'Android', TYPE_MOBILE ),
1085
  'http://wap1.huawei.com/uaprof/HUAWEI_U9700L_UAProfile.xml' => array( 'Huawei', 'Ascend P2', 'Android', TYPE_MOBILE ),
1086
+ 'http://wap1.huawei.com/uaprof/HUAWEI_P6_S_U00_UAProfile.xml' => array( 'Huawei', 'Ascend P6', 'Android', TYPE_MOBILE ),
1087
  'http://wap1.huawei.com/uaprof/HUAWEI_P6_T00_UAProfile.xml' => array( 'Huawei', 'Ascend P6', 'Android', TYPE_MOBILE ),
1088
  'http://wap1.huawei.com/uaprof/HUAWEI_P6_U06_UAProfile.xml' => array( 'Huawei', 'Ascend P6', 'Android', TYPE_MOBILE ),
1089
+ 'http://wap1.huawei.com/uaprof/HUAWEI_P6_U06_Wind_UAProfile.xml' => array( 'Huawei', 'Ascend P6', 'Android', TYPE_MOBILE ),
1090
  'http://wap1.huawei.com/uaprof/HW_HUAWEI_P6-C00_1_20130425.xml' => array( 'Huawei', 'Ascend P6', 'Android', TYPE_MOBILE ),
1091
+ 'http://wap1.huawei.com/uaprof/HUAWEI_MT2_T00_UAProfile.xml' => array( 'Huawei', 'Ascend P7', 'Android', TYPE_MOBILE ),
1092
+ 'http://wap1.huawei.com/uaprof/HUAWEI_SOPHIA_L10_UAProfile.xml' => array( 'Huawei', 'Ascend P7', 'Android', TYPE_MOBILE ),
1093
+ 'http://wap1.huawei.com/uaprof/HW_HUAWEI_P7-L09_1_20140327.xml' => array( 'Huawei', 'Ascend P7', 'Android', TYPE_MOBILE ),
1094
  'http://uaprof.vtext.com/huawei/h881c/h881c.xml' => array( 'Huawei', 'Ascend Plus', 'Android', TYPE_MOBILE ),
1095
  'http://wap1.huawei.com/uaprof/HuaweiM660-Cricket.xml' => array( 'Huawei', 'Ascend Q', 'Android', TYPE_MOBILE ),
1096
  'http://wap1.huawei.com/uaprof/HuaweiU9000v100WCDMA.xml' => array( 'Huawei', 'Ascend X', 'Android', TYPE_MOBILE ),
1111
  'http://wap1.huawei.com/uaprof/HuaweiU8666N-1GPRS-NORMAL.xml' => array( 'Huawei', 'Ascend Y201', 'Android', TYPE_MOBILE ),
1112
  'http://wap1.huawei.com/uaprof/HuaweiU8666WCDMA-NORMAL.xml' => array( 'Huawei', 'Ascend Y201', 'Android', TYPE_MOBILE ),
1113
  'http://wap1.huawei.com/uaprof/HW_HUAWEI_C8655_20120206.xml' => array( 'Huawei', 'Ascend Y201C', 'Android', TYPE_MOBILE ),
1114
+ 'http://wap1.huawei.com/uaprof/HuaweiY210-C10CDMA-Orinoquia.xml' => array( 'Huawei', 'Ascend Y210', 'Android', TYPE_MOBILE ),
1115
  'http://wap1.huawei.com/uaprof/HW_HUAWEI_Y210-2010_1_20120206.xml' => array( 'Huawei', 'Ascend Y210', 'Android', TYPE_MOBILE ),
1116
  'http://wap1.huawei.com/uaprof/HW_HUAWEI_Y210S_1_20121105.xml' => array( 'Huawei', 'Ascend Y210', 'Android', TYPE_MOBILE ),
1117
  'http://wap1.huawei.com/uaprof/Y210-0010GPRS-NORMAL.xml' => array( 'Huawei', 'Ascend Y210', 'Android', TYPE_MOBILE ),
1124
  'http://wap1.huawei.com/uaprof/Y210-0151WCDMA-NORMAL.xml' => array( 'Huawei', 'Ascend Y210', 'Android', TYPE_MOBILE ),
1125
  'http://wap1.huawei.com/uaprof/Y210-0200GPRS-NORMAL.xml' => array( 'Huawei', 'Ascend Y210', 'Android', TYPE_MOBILE ),
1126
  'http://wap1.huawei.com/uaprof/Y210-0200WCDMA-NORMAL.xml' => array( 'Huawei', 'Ascend Y210', 'Android', TYPE_MOBILE ),
1127
+ 'http://wap1.huawei.com/uaprof/Y210-0251GPRS-NORMAL.xml' => array( 'Huawei', 'Ascend Y210', 'Android', TYPE_MOBILE ),
1128
  'http://wap1.huawei.com/uaprof/Y210-0251WCDMA-NORMAL.xml' => array( 'Huawei', 'Ascend Y210', 'Android', TYPE_MOBILE ),
1129
+ 'http://wap1.huawei.com/uaprof/HuaweiY220-U05_UAProfile.xml' => array( 'Huawei', 'Ascend Y220', 'Android', TYPE_MOBILE ),
1130
+ 'http://wap1.huawei.com/uaprof/HuaweiY220-U10_UAProfile.xml' => array( 'Huawei', 'Ascend Y220', 'Android', TYPE_MOBILE ),
1131
  'http://wap1.huawei.com/uaprof/HuaweiY300-0000GPRS-UNICOM.xml' => array( 'Huawei', 'Ascend Y300', 'Android', TYPE_MOBILE ),
1132
  'http://wap1.huawei.com/uaprof/HuaweiY300-0000GPRS.xml' => array( 'Huawei', 'Ascend Y300', 'Android', TYPE_MOBILE ),
1133
  'http://wap1.huawei.com/uaprof/HuaweiY300-0100GPRS-FL.xml' => array( 'Huawei', 'Ascend Y300', 'Android', TYPE_MOBILE ),
1134
+ 'http://wap1.huawei.com/uaprof/HuaweiY300-0100GPRS-MTN.xml' => array( 'Huawei', 'Ascend Y300', 'Android', TYPE_MOBILE ),
1135
+ 'http://wap1.huawei.com/uaprof/HuaweiY300-0100GPRS-NORMAL.xml' => array( 'Huawei', 'Ascend Y300', 'Android', TYPE_MOBILE ),
1136
  'http://wap1.huawei.com/uaprof/HuaweiY300-0100GPRS.xml' => array( 'Huawei', 'Ascend Y300', 'Android', TYPE_MOBILE ),
1137
  'http://wap1.huawei.com/uaprof/HuaweiY300-0100WCDMA-Yoigo.xml' => array( 'Huawei', 'Ascend Y300', 'Android', TYPE_MOBILE ),
1138
  'http://wap1.huawei.com/uaprof/HuaweiY300-0151GPRS-DRM.xml' => array( 'Huawei', 'Ascend Y300', 'Android', TYPE_MOBILE ),
1145
  'http://device.sprintpcs.com/HUAWEI/PLTFH882KT/H882LV100R001C378B170SP02.rdf' => array( 'Huawei', 'Ascend Y301', 'Android', TYPE_MOBILE ),
1146
  'http://wap1.huawei.com/uaprof/HuaweiY301-A1-Normal.xml' => array( 'Huawei', 'Ascend Y301', 'Android', TYPE_MOBILE ),
1147
  'http://wap1.huawei.com/uaprof/HuaweiY301-A2-Normal.xml' => array( 'Huawei', 'Ascend Y301', 'Android', TYPE_MOBILE ),
1148
+ 'http://wap1.huawei.com/uaprof/Beeline_Smart-v100WCDMA.xml' => array( 'Huawei', 'Ascend Y320', 'Android', TYPE_MOBILE ),
1149
  'http://wap1.huawei.com/uaprof/HuaweiY320-U01v100WCDMA.xml' => array( 'Huawei', 'Ascend Y320', 'Android', TYPE_MOBILE ),
1150
  'http://wap1.huawei.com/uaprof/HuaweiY320-U10v100WCDMA.xml' => array( 'Huawei', 'Ascend Y320', 'Android', TYPE_MOBILE ),
1151
  'http://wap1.huawei.com/uaprof/HuaweiY320-U151v100WCDMA.xml' => array( 'Huawei', 'Ascend Y320', 'Android', TYPE_MOBILE ),
1152
  'http://wap1.huawei.com/uaprof/HuaweiY320-U30v100WCDMA.xml' => array( 'Huawei', 'Ascend Y320', 'Android', TYPE_MOBILE ),
1153
+ 'http://wap1.huawei.com/uaprof/HuaweiY320-U351v100WCDMA.xml' => array( 'Huawei', 'Ascend Y320', 'Android', TYPE_MOBILE ),
1154
+ 'http://wap1.huawei.com/uaprof/HUAWEI_Y330-U01_UAProfile.xml' => array( 'Huawei', 'Ascend Y330', 'Android', TYPE_MOBILE ),
1155
  'http://wap1.huawei.com/uaprof/HuaweiY340-U081-Normal.xml' => array( 'Huawei', 'Ascend Y340', 'Android', TYPE_MOBILE ),
1156
  'http://wap1.huawei.com/uaprof/HUAWEI_Y511-U00.xml' => array( 'Huawei', 'Ascend Y511', 'Android', TYPE_MOBILE ),
1157
+ 'http://wap1.huawei.com/uaprof/HUAWEI_Y511-U251.xml' => array( 'Huawei', 'Ascend Y511', 'Android', TYPE_MOBILE ),
1158
+ 'http://wap1.huawei.com/uaprof/HUAWEI_Y511-U30.xml' => array( 'Huawei', 'Ascend Y511', 'Android', TYPE_MOBILE ),
1159
  'http://wap1.huawei.com/uaprof/Y511_TD_UAProfile.xml' => array( 'Huawei', 'Ascend Y516', 'Android', TYPE_MOBILE ),
1160
+ 'http://wap1.huawei.com/uaprof/Y518_TD_UAProfile.xml' => array( 'Huawei', 'Ascend Y518', 'Android', TYPE_MOBILE ),
1161
+ 'http://wap1.huawei.com/uaprof/HuaweiY530-U00-DT.xml' => array( 'Huawei', 'Ascend Y530', 'Android', TYPE_MOBILE ),
1162
+ 'http://wap1.huawei.com/uaprof/HuaweiY530-U00-Normal.xml' => array( 'Huawei', 'Ascend Y530', 'Android', TYPE_MOBILE ),
1163
  'http://wap1.huawei.com/uaprof/HuaweiY530-U051-Normal.xml' => array( 'Huawei', 'Ascend Y530', 'Android', TYPE_MOBILE ),
1164
+ 'http://wap1.huawei.com/uaprof/HuaweiY600-U00_UAProfile.xml' => array( 'Huawei', 'Ascend Y600', 'Android', TYPE_MOBILE ),
1165
  'http://wap1.huawei.com/uaprof/HW_HUAWEI_B199_1_20130806.xml' => array( 'Huawei', 'B199', 'Android', TYPE_MOBILE ),
1166
+ 'http://wap1.huawei.com/uaprof/HW_HUAWEI_B199_1_20131113.xml' => array( 'Huawei', 'B199', 'Android', TYPE_MOBILE ),
1167
  'http://wap1.huawei.com/uaprof/HuaweiU8350v100GPRS.xml' => array( 'Huawei', 'Boulder', 'Android', TYPE_MOBILE ),
1168
  'http://wap1.huawei.com/uaprof/HuaweiU8350v100WCDMA.xml' => array( 'Huawei', 'Boulder', 'Android', TYPE_MOBILE ),
1169
+ 'http://wap.huawei.com/uaprof/HuaweiC5720CDMA1X.xml' => array( 'Huawei', 'C5720', NULL, TYPE_MOBILE ),
1170
+ 'http://nmsc.ctvap.cn/uaprof/HW/HW_HUAWEI_C5735_1_20110406.xml' => array( 'Huawei', 'C5735', NULL, ),
1171
  'http://wap1.huawei.com/uaprof/HW_C8500_1_20100127.xml' => array( 'Huawei', 'C8500', 'Android', TYPE_MOBILE ),
1172
  'http://wap1.huawei.com/uaprof/HW_HUAWEI_C8500S_1_20110511.xml' => array( 'Huawei', 'C8500', 'Android', TYPE_MOBILE ),
1173
  'http://wap1.huawei.com/uaprof/HW_HUAWEI_C8511_1_20110511.xml' => array( 'Huawei', 'C8511', 'Android', TYPE_MOBILE ),
1174
  'http://wap1.huawei.com/uaprof/HW_HUAWEI_C8512_20110817.xml' => array( 'Huawei', 'C8512', 'Android', TYPE_MOBILE ),
1175
+ 'http://wap1.huawei.com/uaprof/HW_HUAWEI_C8550_1_20111103.xml' => array( 'Huawei', 'C8550', 'Android', TYPE_MOBILE ),
1176
  'http://wap1.huawei.com/uaprof/HW_C8600_1_20100127.xml' => array( 'Huawei', 'C8600', 'Android', TYPE_MOBILE ),
1177
  'http://wap1.huawei.com/uaprof/HW_HUAWEI_C8650PLUS_1_20111025.xml' => array( 'Huawei', 'C8650', 'Android', TYPE_MOBILE ),
1178
  'http://wap1.huawei.com/uaprof/HW_HUAWEI_C8650_1_20110512.xml' => array( 'Huawei', 'C8650', 'Android', TYPE_MOBILE ),
1179
  'http://wap1.huawei.com/uaprof/HW_HUAWEI_c8650_2_20111116.xml' => array( 'Huawei', 'C8650', 'Android', TYPE_MOBILE ),
1180
  'http://wap1.huawei.com/uaprof/HW_HUAWEI_C8815_1_20130425.xml' => array( 'Huawei', 'C8815', 'Android', TYPE_MOBILE ),
1181
+ 'http://wap1.huawei.com/uaprof/HW_HUAWEI_C8817L.xml' => array( 'Huawei', 'C8817', 'Android', TYPE_MOBILE ),
1182
  'http://wap1.huawei.com/uaprof/HuaweiC8850v100CDMA.xml' => array( 'Huawei', 'C8850', 'Android', TYPE_MOBILE ),
1183
  'http://wap1.huawei.com/uaprof/HuaweiU8687-Normal.xml' => array( 'Huawei', 'Chronos', 'Android', TYPE_MOBILE ),
1184
+ 'http://wap1.huawei.com/uaprof/HW_HUAWEI_CM990_1_20130108.xml' => array( 'Huawei', 'Evolución 3', 'Android', TYPE_MOBILE ),
1185
  'http://wap1.huawei.com/uaprof/HuaweiUM840v100GPRS.xml' => array( 'Huawei', 'Evolution', 'Android', TYPE_MOBILE ),
1186
  'http://wap1.huawei.com/uaprof/HuaweiUM840v100WCDMA.xml' => array( 'Huawei', 'Evolution', 'Android', TYPE_MOBILE ),
1187
  'http://wap1.huawei.com/uaprof/HW_HUAWEI_CM980.xml' => array( 'Huawei', 'Evolution II', 'Android', TYPE_MOBILE ),
1188
+ 'http://wap1.huawei.com/uaprof/HuaweiU8665GPRS-ATT.xml' => array( 'Huawei', 'Fusion 2', 'Android', TYPE_MOBILE ),
1189
  'http://wap1.huawei.com/uaprof/HuaweiU8665WCDMA-ATT.xml' => array( 'Huawei', 'Fusion 2', 'Android', TYPE_MOBILE ),
1190
+ 'http://wap1.huawei.com/uaprof/HuaweiG6L11.xml' => array( 'Huawei', 'G6', 'Android', TYPE_MOBILE ),
1191
+ 'http://wap1.huawei.com/uaprof/HUAWEI_G6_C00.xml' => array( 'Huawei', 'G6', 'Android', TYPE_MOBILE ),
1192
  'http://wap1.huawei.com/uaprof/G6609UAprofileV1.1.xml' => array( 'Huawei', 'G6609', 'MTK', TYPE_MOBILE ),
1193
  'http://wap1.huawei.com/uaprof/G7300UAprofileV1.1.xml' => array( 'Huawei', 'G7300', 'MTK', TYPE_MOBILE ),
1194
+ 'http://wap1.huawei.com/uaprof/HUAWEI_G750-T00_UAProfile.xml' => array( 'Huawei', 'G750', 'Android', TYPE_MOBILE ),
1195
  'http://wap1.huawei.com/uaprof/G7500_UAProfile.xml' => array( 'Huawei', 'G7500', 'Android', TYPE_MOBILE ),
1196
  'http://wap1.huawei.com/uaprof/HuaweiU8860-51GPRS-Normal.xml' => array( 'Huawei', 'Honor', 'Android', TYPE_MOBILE ),
1197
  'http://wap1.huawei.com/uaprof/HuaweiU8860-51WCDMA-Normal.xml' => array( 'Huawei', 'Honor', 'Android', TYPE_MOBILE ),
1202
  'http://wap1.huawei.com/uaprof/HuaweiU8860WCDMA-NORMAL-ICS.xml' => array( 'Huawei', 'Honor', 'Android', TYPE_MOBILE ),
1203
  'http://wap1.huawei.com/uaprof/HuaweiU8860WCDMA-NORMAL.xml' => array( 'Huawei', 'Honor', 'Android', TYPE_MOBILE ),
1204
  'http://wap1.huawei.com/uaprof/HW_HUAWEI_C8860E_1_20111103.xml' => array( 'Huawei', 'Honor', 'Android', TYPE_MOBILE ),
1205
+ 'http://wap1.huawei.com/uaprof/HW_HUAWEI_C8860_1_20110704.xml' => array( 'Huawei', 'Honor', 'Android', TYPE_MOBILE ),
1206
+ 'http://wap1.huawei.com/uaprof/HUAWEI_U9508_U06_UAProfile.xml' => array( 'Huawei', 'Honor 2', 'Android', TYPE_MOBILE ),
1207
  'http://wap1.huawei.com/uaprof/HUAWEI_U9508_UAProfile.xml' => array( 'Huawei', 'Honor 2', 'Android', TYPE_MOBILE ),
1208
+ 'http://wap1.huawei.com/uaprof/HUAWEI_H30-T00_UAProfile.xml' => array( 'Huawei', 'Honor 3C', 'Android', TYPE_MOBILE ),
1209
+ 'http://wap1.huawei.com/uaprof/HUAWEI_H30-U00_UAProfile.xml' => array( 'Huawei', 'Honor 3C', 'Android', TYPE_MOBILE ),
1210
+ 'http://wap1.huawei.com/uaprof/HUAWEI_H30-U10_Global_UAProfile.xml' => array( 'Huawei', 'Honor 3C', 'Android', TYPE_MOBILE ),
1211
+ 'http://wap1.huawei.com/uaprof/HW_HUAWEI_H30-C00_20140420.xml' => array( 'Huawei', 'Honor 3C', 'Android', TYPE_MOBILE ),
1212
  'http://wap1.huawei.com/uaprof/HW_HUAWEI_C8950D_1_20120704.xml' => array( 'Huawei', 'Honor+', 'Android', TYPE_MOBILE ),
1213
  'http://wap1.huawei.com/uaprof/HuaweiU8150v100WCDMA.xml' => array( 'Huawei', 'IDEOS', 'Android', TYPE_MOBILE ),
1214
  'http://wap.huawei.com/uaprof/Huawei-S7.xml' => array( 'Huawei', 'IDEOS S7', 'Android', TYPE_MOBILE ),
1250
  'http://wap1.huawei.com/uaprof/HuaweiU8800PROiGPRS-NORMAL.xml' => array( 'Huawei', 'IDEOS X5 Pro', 'Android', TYPE_MOBILE ),
1251
  'http://wap1.huawei.com/uaprof/HuaweiU8800prov100GPRS.xml' => array( 'Huawei', 'IDEOS X5 Pro', 'Android', TYPE_MOBILE ),
1252
  'http://wap1.huawei.com/uaprof/HuaweiU8800prov100WCDMA.xml' => array( 'Huawei', 'IDEOS X5 Pro', 'Android', TYPE_MOBILE ),
1253
+ 'http://wap1.huawei.com/uaprof/HuaweiU8800proWCDMA-NORMAL.xml' => array( 'Huawei', 'IDEOS X5 Pro', 'Android', TYPE_MOBILE ),
1254
  'http://wap1.huawei.com/uaprof/HuaweiH867GGPRS-Normal.xml' => array( 'Huawei', 'Inspira', 'Android', TYPE_MOBILE ),
1255
  'http://uaprof.metropcs.net/UAProf/Huawei-M328.xml' => array( 'Huawei', 'M328', NULL, TYPE_MOBILE ),
1256
+ 'http://uaprof.metropcs.net/UAProf/HUAWEI-M570.xml' => array( 'Huawei', 'M570', NULL, TYPE_MOBILE ),
1257
+ 'http://mms.mycricket.com/HUAWEI-M615.xml' => array( 'Huawei', 'M615', NULL, TYPE_MOBILE ),
1258
+ 'http://uaprof.metropcs.net/UAProf/Huawei-M635.xml' => array( 'Huawei', 'M635', NULL, TYPE_MOBILE ),
1259
  'http://uaprof.metropcs.net/UAProf/Huawei-M735.xml' => array( 'Huawei', 'M735', NULL, TYPE_MOBILE ),
1260
  'http://uaprof.metropcs.net/UAProf/Huawei-M835.xml' => array( 'Huawei', 'M835', 'Android', TYPE_MOBILE ),
1261
  'http://wap1.huawei.com/uaprof/HW_HUAWEI_M835_1_20110720.xml' => array( 'Huawei', 'M835', 'Android', TYPE_MOBILE ),
1268
  'http://wap1.huawei.com/uaprof/HuaweiMediaPadWIFIOnly_ICS.xml' => array( 'Huawei', 'MediaPad', 'Android', TYPE_TABLET ),
1269
  'http://wap1.huawei.com/uaprof/HuaweiMediaPad_201u.xml' => array( 'Huawei', 'MediaPad 10 Link', 'Android', TYPE_TABLET ),
1270
  'http://wap1.huawei.com/uaprof/HuaweiMediaPad_201wa.xml' => array( 'Huawei', 'MediaPad 10 Link', 'Android', TYPE_TABLET ),
1271
+ 'http://wap1.huawei.com/uaprof/HuaweiMediaPad_S10-231L.xml' => array( 'Huawei', 'MediaPad 10 Link', 'Android', TYPE_TABLET ),
1272
+ 'http://wap1.huawei.com/uaprof/HuaweiMediaPad_S10-231u.xml' => array( 'Huawei', 'MediaPad 10 Link', 'Android', TYPE_TABLET ),
1273
  'http://wap1.huawei.com/uaprof/MediaPad7LiteWCDMA_ICS.xml' => array( 'Huawei', 'MediaPad 7 Lite', 'Android', TYPE_TABLET ),
1274
  'http://wap1.huawei.com/uaprof/MediaPad7LiteWIFIOnly_ICS.xml' => array( 'Huawei', 'MediaPad 7 Lite', 'Android', TYPE_TABLET ),
1275
  'http://wap1.huawei.com/uaprof/HuaweiMediaPad71111WCDMA.xml' => array( 'Huawei', 'MediaPad 7 Vivid', 'Android', TYPE_TABLET ),
1277
  'http://wap1.huawei.com/uaprof/HuaweiMediaPad7601WCDMA.xml' => array( 'Huawei', 'MediaPad 7 Vogue', 'Android', TYPE_TABLET ),
1278
  'http://wap1.huawei.com/uaprof/HuaweiMediaPad7601WIFIOnly.xml' => array( 'Huawei', 'MediaPad 7 Vogue', 'Android', TYPE_TABLET ),
1279
  'http://wap1.huawei.com/uaprof/HuaweiMediaPad_S7-601c.xml' => array( 'Huawei', 'MediaPad 7 Vogue', 'Android', TYPE_TABLET ),
1280
+ 'http://wap1.huawei.com/uaprof/HuaweiMediaPad7701WIFIOnly.xml' => array( 'Huawei', 'MediaPad 7 Youth', 'Android', TYPE_TABLET ),
1281
  'http://wap1.huawei.com/uaprof/HuaweiMediaPad770XWCDMA.xml' => array( 'Huawei', 'MediaPad 7 Youth', 'Android', TYPE_TABLET ),
1282
+ 'http://wap1.huawei.com/uaprof/HuaweiMediaPad_S7-721w.xml' => array( 'Huawei', 'MediaPad 7 Youth 2', 'Android', TYPE_TABLET ),
1283
+ 'http://wap1.huawei.com/uaprof/HuaweiMediaPad_S8-301L.xml' => array( 'Huawei', 'MediaPad 8 Vogue', 'Android', TYPE_TABLET ),
1284
+ 'http://wap1.huawei.com/uaprof/HuaweiMediaPad_S8-301u.xml' => array( 'Huawei', 'MediaPad M1', 'Android', TYPE_TABLET ),
1285
+ 'http://wap1.huawei.com/uaprof/HuaweiMediaPad701XWCDMA.xml' => array( 'Huawei', 'MediaPad T1', 'Android', TYPE_TABLET ),
1286
+ 'http://wap1.huawei.com/uaprof/7D-501u.xml' => array( 'Huawei', 'MediaPad X1', 'Android', TYPE_TABLET ),
1287
+ 'http://wap1.huawei.com/uaprof/HuaweiMediaPad_7D-501L.xml' => array( 'Huawei', 'MediaPad X1', 'Android', TYPE_TABLET ),
1288
+ 'http://wap1.huawei.com/uaprof/HuaweiMediaPad_7D-501u.xml' => array( 'Huawei', 'MediaPad X1', 'Android', TYPE_TABLET ),
1289
  'http://mms.openmobilepr.com/uaprof/HuaweiM886.xml' => array( 'Huawei', 'Mercury', 'Android', TYPE_MOBILE ),
1290
  'http://provantage.cleartalk.csky.us/ua/huawei_M886.xml' => array( 'Huawei', 'Mercury', 'Android', TYPE_MOBILE ),
1291
  'http://wap1.huawei.com/uaprof/HuaweiM886-Cricket.xml' => array( 'Huawei', 'Mercury', 'Android', TYPE_MOBILE ),
1301
  'http://wap1.huawei.com/uaprof/HuaweiU8650WCDMA-Taiwan.xml' => array( 'Huawei', 'Sonic', 'Android', TYPE_MOBILE ),
1302
  'http://wap1.huawei.com/uaprof/HuaweiU8650WCDMA-Tele2-HR.xml' => array( 'Huawei', 'Sonic', 'Android', TYPE_MOBILE ),
1303
  'http://wap1.huawei.com/uaprof/HuaweiU8650WCDMA-Tele2-LT.xml' => array( 'Huawei', 'Sonic', 'Android', TYPE_MOBILE ),
1304
+ 'http://wap1.huawei.com/uaprof/HuaweiU8650WCDMA-Tele2-SE.xml' => array( 'Huawei', 'Sonic', 'Android', TYPE_MOBILE ),
1305
  'http://wap1.huawei.com/uaprof/HuaweiU8650WCDMA-UNICOM.xml' => array( 'Huawei', 'Sonic', 'Android', TYPE_MOBILE ),
1306
  'http://wap1.huawei.com/uaprof/HuaweiU8650WCDMA-Vodafone-It.xml' => array( 'Huawei', 'Sonic', 'Android', TYPE_MOBILE ),
1307
  'http://wap1.huawei.com/uaprof/HuaweiU8650WCDMA-Yoigo.xml' => array( 'Huawei', 'Sonic', 'Android', TYPE_MOBILE ),
1319
  'http://wap1.huawei.com/uaprof/HuaweiU120v100.xml' => array( 'Huawei', 'U120', NULL, TYPE_MOBILE ),
1320
  'http://wap1.huawei.com/uaprof/HUAWEI_U2800A_UAProfile.xml' => array( 'Huawei', 'U2800', NULL, TYPE_MOBILE ),
1321
  'http://wap1.huawei.com/uaprof/HUAWEI_U2801_UAProfile.xml' => array( 'Huawei', 'U2801', 'Brew', TYPE_MOBILE ),
1322
+ 'http://wap.huawei.com/uaprof/HuaweiU3100v100UNIWCDMA.xml' => array( 'Huawei', 'U3100', NULL, TYPE_MOBILE ),
1323
  'http://wap.huawei.com/uaprof/HuaweiU3300v100GPRS.xml' => array( 'Huawei', 'U3300', NULL, TYPE_MOBILE ),
1324
+ 'http://wap1.huawei.com/uaprof/HUAWEI_U5200_UAProfile.xml' => array( 'Huawei', 'U5200', 'Brew', TYPE_MOBILE ),
1325
  'http://wap.huawei.com/uaprof/HuaweiU526v100.xml' => array( 'Huawei', 'U526', NULL, TYPE_MOBILE ),
1326
  'http://wap.huawei.com/uaprof/HuaweiU528v100.xml' => array( 'Huawei', 'U528', NULL, TYPE_MOBILE ),
1327
  'http://wap1.huawei.com/uaprof/HUAWEI_U5300_UAProfile.xml' => array( 'Huawei', 'U5300', 'Brew', TYPE_MOBILE ),
1363
  'http://uap.cellon.com/i-mobile IQ XA.xml' => array( 'i-mobile', 'iQ XA', 'Android', TYPE_MOBILE ),
1364
  'http://www.1066.cn/uaprof/prof/BS/Brightstar_Avvio_760.xml' => array( 'Ilium', 'Avvio 760', 'Android', TYPE_MOBILE ),
1365
  'http://xmlsite3.webs.com/Brightstar_Avvio_760.xml' => array( 'Ilium', 'Avvio 760', 'Android', TYPE_MOBILE ),
1366
+ 'http://ua.tinno.com/profile/latinamerica/brightstar/Avvio765_UAProf.xml' => array( 'Ilium', 'AVVIO 765', 'Android', TYPE_MOBILE ),
1367
  'http://www.1066.cn/uaprof/prof/Brightstar/Avvio_790.xml' => array( 'Ilium', 'Avvio 790', 'Android', TYPE_MOBILE ),
1368
+ 'http://cn.c2dms.com/UAProfile/N26/IN260.xml' => array( 'InFocus', 'IN260', 'Android', TYPE_MOBILE ),
1369
+ 'http://www.c2dms.com/UAProfile/IVM/IN330.xml' => array( 'InFocus', 'IN330', 'Android', TYPE_MOBILE ),
1370
  'http://cn.c2dms.com/UAProfile/VKY/IN810.xml' => array( 'InFocus', 'IN810', 'Android', TYPE_MOBILE ),
1371
  'http://www.c2dms.com/UAProfile/VKY/IN810.xml' => array( 'InFocus', 'IN810', 'Android', TYPE_MOBILE ),
1372
+ 'http://cn.c2dms.com/UAProfile/H1W/M310.xml' => array( 'InFocus', 'M310', 'Android', TYPE_MOBILE ),
1373
+ 'http://cn.c2dms.com/UAProfile/D70/M320m.xml' => array( 'InFocus', 'M320', 'Android', TYPE_MOBILE ),
1374
+ 'http://www.c2dms.com/UAProfile/D70/M320u.xml' => array( 'InFocus', 'M320', 'Android', TYPE_MOBILE ),
1375
  'http://wap.innostream.com/uaprof/INNO30.xml' => array( 'Innostream', 'INNO 30', NULL, TYPE_MOBILE ),
1376
  'http://wap.innostream.com/uaprof/INNO55.xml' => array( 'Innostream', 'INNO 55', NULL, TYPE_MOBILE ),
1377
  'http://wap.innostream.com/uaprof/INNO89.xml' => array( 'Innostream', 'INNO 89', NULL, TYPE_MOBILE ),
1395
  'http://intextechnologies.com/wap/intex_Cloud-y2.xml' => array( 'Intex', 'Cloud Y2', 'Android', TYPE_MOBILE ),
1396
  'http://mobile.itelcospa.it/useragent/ITELCO-IT2500.xml' => array( 'Itelco', 'IT2500', NULL, TYPE_MOBILE ),
1397
  'http://uaprofs.scm.ixi.com:8080/UAProfs/ct-25m-scm-q0108.xml' => array( 'IXI', 'CT 25m', NULL, TYPE_MOBILE ),
1398
+ 'http://www.nyxmobile.com/UAProfile/zeuzhd/NYX_ZEUZ_HD.xml' => array( 'Jiayu', 'G4C', 'Android', TYPE_MOBILE ),
1399
  'http://nmsc.ctvap.cn/uaprof/TY/TY_E619+_1_20121123.xml' => array( 'K-Touch', 'E619', 'Android', TYPE_MOBILE ),
1400
  'http://nmsc.ctvap.cn/uaprof/TY/TY_K-Touch_E619+_1_20121203.xml' => array( 'K-Touch', 'E619', 'Android', TYPE_MOBILE ),
1401
  'http://uaprof.qma.com.tw/ktouch-e620.xml' => array( 'K-Touch', 'E620', 'Android', TYPE_MOBILE ),
1402
  'http://www.ontim.com.cn/ua/K-Touch_T580_uaprofile.xml' => array( 'K-Touch', 'T580', 'Android', TYPE_MOBILE ),
1403
  'http://114.251.81.153/t660/K-Touch_T660_profile_3G.xml' => array( 'K-Touch', 'T660', 'Android', TYPE_MOBILE ),
1404
+ 'http://114.251.81.153/UAProfile/U81t/K-Touch_U81t_UAProfile.xml' => array( 'K-Touch', 'U81t', 'Android', TYPE_MOBILE ),
1405
  'http://asmobile.ehosting.com.tw/uaprof/KingcomInjoyMS02.xml' => array( 'Kingcom', 'Injoy MS02', NULL, TYPE_MOBILE ),
1406
  'http://www.mobilesoft.com.cn/UAProfile/CMSMMS2003.xml' => array( 'Konka', 'C908', NULL, TYPE_MOBILE ),
1407
  'http://www.konkamobile.com/profile/konka_k3.xml' => array( 'Konka', 'K3', 'Android', TYPE_MOBILE ),
1408
  'http://www.konkamobile.com/uploadfile/KONKA_V926_UAProfile.xml' => array( 'Konka', 'V926', 'Android', TYPE_MOBILE ),
1409
  'http://www.kkcool.com/hw/KONKA_V936.xml' => array( 'Konka', 'V936', 'Android', TYPE_MOBILE ),
1410
  'http://www.kkcool.com/hw/KONKA_V980.xml' => array( 'Konka', 'V980', 'Android', TYPE_MOBILE ),
1411
+ 'http://www.konkamobile.com/profile/KONKA_V987.xml' => array( 'Konka', 'V987', 'Android', TYPE_MOBILE ),
1412
  'http://www.zte.com.cn/mobile/uaprof/KPN_Smart_300.xml' => array( 'KPN', 'Smart 300', 'Android', TYPE_MOBILE ),
1413
  'http://www.zte.com.cn/mobile/uaprof/Kyivstar Spark.xml' => array( 'Kyivstar', 'Spark', 'Android', TYPE_MOBILE ),
1414
  'http://device.sprintpcs.com/KYOCERA/S2151-PLB/1.001VM.rdf' => array( 'Kyocera', 'Coast S2151', 'Brew', TYPE_MOBILE ),
1421
  'http://nmsc.ctvap.cn/uaprof/JC/JC_KSP8000_4_20120308.xml' => array( 'Kyocera', 'Echo', 'Android', TYPE_MOBILE ),
1422
  'http://device.sprintpcs.com/KYOCERA/C5133-Chameleon/latest' => array( 'Kyocera', 'Event', 'Android', TYPE_MOBILE ),
1423
  'http://device.sprintpcs.com/KYOCERA/C5133-VIRGIN/1.005VM.rdf' => array( 'Kyocera', 'Event', 'Android', TYPE_MOBILE ),
1424
+ 'http://device.sprintpcs.com/KYOCERA/C5170-2012051001/1.001BT.rdf' => array( 'Kyocera', 'Hydro', 'Android', TYPE_MOBILE ),
1425
  'http://device.sprintpcs.com/KYOCERA/C5170-BOOST/1.000BT.rdf' => array( 'Kyocera', 'Hydro', 'Android', TYPE_MOBILE ),
1426
  'http://device.sprintpcs.com/KYOCERA/C5170-BOOST/1.001BT.rdf' => array( 'Kyocera', 'Hydro', 'Android', TYPE_MOBILE ),
1427
  'http://device.sprintpcs.com/KYOCERA/C5170-BOOST/1.006BT.rdf' => array( 'Kyocera', 'Hydro', 'Android', TYPE_MOBILE ),
1428
  'http://device.sprintpcs.com/KYOCERA/C5170-BOOST/1.010BT.rdf' => array( 'Kyocera', 'Hydro', 'Android', TYPE_MOBILE ),
1429
  'http://device.sprintpcs.com/Kyocera/C5170-BST/0510BT.rdf' => array( 'Kyocera', 'Hydro', 'Android', TYPE_MOBILE ),
1430
  'http://wapuaprof.mycricket.com/kyo_c5171.xml' => array( 'Kyocera', 'Hydro', 'Android', TYPE_MOBILE ),
1431
+ 'http://device.sprintpcs.com/KYOCERA/C5215-BOOST/1.001.rdf' => array( 'Kyocera', 'Hydro Edge', 'Android', TYPE_MOBILE ),
1432
  'http://device.sprintpcs.com/KYOCERA/C5215-BOOST/1.002.rdf' => array( 'Kyocera', 'Hydro Edge', 'Android', TYPE_MOBILE ),
1433
+ 'http://device.sprintpcs.com/KYOCERA/C5215-BOOST/1.010.rdf' => array( 'Kyocera', 'Hydro Edge', 'Android', TYPE_MOBILE ),
1434
  'http://device.sprintpcs.com/KYOCERA/C5215-Chameleon/latest' => array( 'Kyocera', 'Hydro Edge', 'Android', TYPE_MOBILE ),
1435
  'http://uaprof.publicmobile.ca/Kyocera/Hydro_C5216_0.200NP.rdf' => array( 'Kyocera', 'Hydro Edge', 'Android', TYPE_MOBILE ),
1436
  'http://uaprof.publicmobile.ca/Kyocera/Hydro_C5216_0.300NP.rdf' => array( 'Kyocera', 'Hydro Edge', 'Android', TYPE_MOBILE ),
1445
  'https://servicios.iusacell.com.mx/kyo/KX18.xml' => array( 'Kyocera', 'KX18', NULL, TYPE_MOBILE ),
1446
  'http://device.sprintpcs.com/Kyocera/C5120/1007SP.rdf' => array( 'Kyocera', 'Milano', 'Android', TYPE_MOBILE ),
1447
  'http://mms.revol.us/uaprofs/Oblique_C5121.xml' => array( 'Kyocera', 'Milano', 'Android', TYPE_MOBILE ),
1448
+ 'http://device.sprintpcs.com/KYOCERA/C5155-2011011301/1.011SP.rdf' => array( 'Kyocera', 'Rise', 'Android', TYPE_MOBILE ),
1449
  'http://device.sprintpcs.com/KYOCERA/C5155-SPRINT/1.003SP.rdf' => array( 'Kyocera', 'Rise', 'Android', TYPE_MOBILE ),
1450
  'http://device.sprintpcs.com/KYOCERA/C5155-SPRINT/1.005SP.rdf' => array( 'Kyocera', 'Rise', 'Android', TYPE_MOBILE ),
1451
  'http://device.sprintpcs.com/KYOCERA/C5155-SPRINT/1.011SP.rdf' => array( 'Kyocera', 'Rise', 'Android', TYPE_MOBILE ),
1459
  'http://device.sprintpcs.com/KYOCERA/E6710-SPRINT/1.006SP.rdf' => array( 'Kyocera', 'Torque', 'Android', TYPE_MOBILE ),
1460
  'http://device.sprintpcs.com/KYOCERA/E6710-SPRINT/1.007SP.rdf' => array( 'Kyocera', 'Torque', 'Android', TYPE_MOBILE ),
1461
  'http://device.sprintpcs.com/KYOCERA/E6710-SPRINT/2.002SP.rdf' => array( 'Kyocera', 'Torque', 'Android', TYPE_MOBILE ),
1462
+ 'http://device.sprintpcs.com/KYOCERA/E6710-SPRINT/2.300SP.rdf' => array( 'Kyocera', 'Torque', 'Android', TYPE_MOBILE ),
1463
+ 'http://device.sprintpcs.com/KYOCERA/E6710-SPRINT/2.602SP.rdf' => array( 'Kyocera', 'Torque', 'Android', TYPE_MOBILE ),
1464
  'http://device.sprintpcs.com/Sanyo/PL8600/1004PL.rdf' => array( 'Kyocera', 'Zio', 'Android', TYPE_MOBILE ),
1465
  'http://device.sprintpcs.com/Sanyo/PL8600/2103PL.rdf' => array( 'Kyocera', 'Zio', 'Android', TYPE_MOBILE ),
1466
  'http://device.sprintpcs.com/Sanyo/SCP8600/2200SP.rdf' => array( 'Kyocera', 'Zio', 'Android', TYPE_MOBILE ),
1467
+ 'http://www.lanixmobile.com/Profiles/Lanix_IliumS115.xml' => array( 'Lanix', 'Ilium S115', 'Android', TYPE_MOBILE ),
1468
+ 'http://www.lanixmobile.com/Profiles/Lanix_IliumS120.xml' => array( 'Lanix', 'Ilium S120', 'Android', TYPE_MOBILE ),
1469
  'http://www.lanixmobile.com/Profiles/Lanix_iliumS200.xml' => array( 'Lanix', 'Ilium S200', 'Android', TYPE_MOBILE ),
1470
  'http://www.lanixmobile.com/Profiles/Lanix_IliumS210.xml' => array( 'Lanix', 'Ilium S210', 'Android', TYPE_MOBILE ),
1471
  'http://www.lanixmobile.com/Profiles/Lanix_iliumS400.xml' => array( 'Lanix', 'Ilium S400', 'Android', TYPE_MOBILE ),
1472
+ 'http://www.lanixmobile.com/Profiles/Lanix_IliumS410.xml' => array( 'Lanix', 'Ilium S410', 'Android', TYPE_MOBILE ),
1473
  'http://www.lanixmobile.com/Profiles/Lanix_iliumS50.xml' => array( 'Lanix', 'Ilium S50', 'Android', TYPE_MOBILE ),
1474
  'http://www.lanixmobile.com/Profiles/Lanix_IliumS500.xml' => array( 'Lanix', 'Ilium S500', 'Android', TYPE_MOBILE ),
1475
+ 'http://www.lanixmobile.com/Profiles/Lanix_IliumS700.xml' => array( 'Lanix', 'Ilium S700', 'Android', TYPE_MOBILE ),
1476
  'http://www.1066.cn/uaprof/prof/lava/LAVA_IRIS_355.xml' => array( 'Lava', 'Iris 355', 'Android', TYPE_MOBILE ),
1477
  'http://www.1066.cn/uaprof/prof/lava/LAVA_IRIS356.xml' => array( 'Lava', 'Iris 356', 'Android', TYPE_MOBILE ),
1478
  'http://www.1066.cn/uaprof/prof/lava/LAVA_IRIS402.xml' => array( 'Lava', 'Iris 402', 'Android', TYPE_MOBILE ),
1479
  'http://www.1066.cn/uaprof/prof/lava/LAVA_IRIS_501.xml' => array( 'Lava', 'Iris 501', 'Android', TYPE_MOBILE ),
1480
  'http://www.1066.cn/uaprof/prof/lava/LAVA_IRIS504Q.xml' => array( 'Lava', 'Iris 504Q', 'Android', TYPE_MOBILE ),
1481
+ 'http://www.1066.cn/uaprof/prof/lava/LAVA_IRIS506Q.xml' => array( 'Lava', 'Iris 506Q', 'Android', TYPE_MOBILE ),
1482
  'http://www.msai.in/uaprof/XOLO/XOLO_A500L.xml' => array( 'Lava', 'XOLO A500L', 'Android', TYPE_MOBILE ),
1483
+ 'http://wap.msaiuap.in/xolo/Q1000S.xml' => array( 'Lava', 'XOLO Q1000S', 'Android', TYPE_MOBILE ),
1484
+ 'http://www.msai.in/uaprof/XOLO/XOLO_Q1010i.xml' => array( 'Lava', 'XOLO Q1010i', 'Android', TYPE_MOBILE ),
1485
+ 'http://www.msai.in/uaprof/XOLO/Q3000.xml' => array( 'Lava', 'XOLO Q3000', 'Android', TYPE_MOBILE ),
1486
+ 'http://www.msai.in/uaprof/XOLO/XOLO_Q900T.xml' => array( 'Lava', 'XOLO Q900T', 'Android', TYPE_MOBILE ),
1487
  'http://www.1066.cn/uaprof/prof/lava/Q700.xml' => array( 'Lava', 'XOLO X900', 'Android', TYPE_MOBILE ),
1488
  'http://www.lemonmobiles.com/UAP/LemonP3.xml' => array( 'Lemon', 'P3', 'Android', TYPE_MOBILE ),
1489
  'http://www.lenovomobile.com/admin/module/product/DownFile/Lenovo_A300_UAProfile.xml' => array( 'Lenovo', 'A300', 'Android', TYPE_MOBILE ),
1497
  'http://www.lenovomobile.com/admin/module/product/DownFile/Lenovo_A516_ROW_UAProfile.xml' => array( 'Lenovo', 'A516', 'Android', TYPE_MOBILE ),
1498
  'http://www.lenovomobile.com/admin/module/product/DownFile/Lenovo_A516_UAProfile.xml' => array( 'Lenovo', 'A516', 'Android', TYPE_MOBILE ),
1499
  'http://www.lenovomobile.com/admin/module/product/DownFile/Lenovo_A520_UAProfile.xml' => array( 'Lenovo', 'A520', 'Android', TYPE_MOBILE ),
1500
+ 'http://www.lenovomobile.com/admin/module/product/DownFile/Lenovo%20A526_ROW_UAProfile_0120.xml' => array( 'Lenovo', 'A526', 'Android', TYPE_MOBILE ),
1501
  'http://nmsc.ctvap.cn/uaprof/TYZ/LNV_Lenovo_A560e_1_20111220.xml' => array( 'Lenovo', 'A560', 'Android', TYPE_MOBILE ),
1502
  'http://www.lenovomobile.com/admin/module/product/DownFile/Lenovo_A60_UAProfile.xml' => array( 'Lenovo', 'A60', 'Android', TYPE_MOBILE ),
1503
  'http://www.lenovomobile.com/admin/module/product/DownFile/Lenovo_A630e_UAProfile.xml' => array( 'Lenovo', 'A630', 'Android', TYPE_MOBILE ),
1517
  'http://nmsc.ctvap.cn/uaprof/LNV/LNV_AE760_1_20111024.xml' => array( 'Lenovo', 'A790', 'Android', TYPE_MOBILE ),
1518
  'http://www.lenovomobile.com/admin/module/product/DownFile/Lenovo_A798t_UAProfile.xml' => array( 'Lenovo', 'A798', 'Android', TYPE_MOBILE ),
1519
  'http://www.lenovomobile.com/admin/module/product/DownFile/Lenovo_A800_UAProfile.xml' => array( 'Lenovo', 'A800', 'Android', TYPE_MOBILE ),
1520
+ 'http://www.lenovomobile.com/admin/module/product/DownFile/Lenovo_A806_UAprofile.xml' => array( 'Lenovo', 'A806', 'Android', TYPE_MOBILE ),
1521
+ 'http://www.lenovomobile.com/admin/module/product/DownFile/Lenovo_A808t_UAprofile.xml' => array( 'Lenovo', 'A808', 'Android', TYPE_MOBILE ),
1522
+ 'http://www.Lenovo.com.cn/mobile/uaprof/Lenovo_A820t.xml' => array( 'Lenovo', 'A820', 'Android', TYPE_MOBILE ),
1523
  'http://www.lenovomobile.com/admin/module/product/DownFile/Lenovo_A820t_UAProfile.xml' => array( 'Lenovo', 'A820', 'Android', TYPE_MOBILE ),
1524
  'http://www.lenovomobile.com/admin/module/product/DownFile/Lenovo_A820_UAProfile.xml' => array( 'Lenovo', 'A820', 'Android', TYPE_MOBILE ),
1525
  'http://www.lenovomobile.com/admin/module/product/DownFile/Lenovo_A830_UAProfile.xml' => array( 'Lenovo', 'A830', 'Android', TYPE_MOBILE ),
1526
+ 'http://www.lenovomobile.com/admin/module/product/DownFile/Lenovo_A850+_UAprofile.xml' => array( 'Lenovo', 'A850', 'Android', TYPE_MOBILE ),
1527
+ 'http://www.lenovomobile.com/admin/module/product/DownFile/Lenovo_A850plus_UAprofile.xml' => array( 'Lenovo', 'A850', 'Android', TYPE_MOBILE ),
1528
  'http://www.lenovomobile.com/admin/module/product/DownFile/Lenovo_A850_ROW_UAProfile.xml' => array( 'Lenovo', 'A850', 'Android', TYPE_MOBILE ),
1529
  'http://www.lenovomobile.com/admin/module/product/DownFile/Lenovo_A850_UAProfile.xml' => array( 'Lenovo', 'A850', 'Android', TYPE_MOBILE ),
1530
+ 'http://www.lenovomobile.com/admin/module/product/DownFile/Lenovo_A859_ROW_UAprofile.xml' => array( 'Lenovo', 'A859', 'Android', TYPE_MOBILE ),
1531
+ 'http://www.lenovomobile.com/admin/module/product/DownFile/Lenovo_B6000-HV_UAProfile.xml' => array( 'Lenovo', 'B6000 Yoga Tablet 8', 'Android', TYPE_TABLET ),
1532
+ 'http://www.lenovomobile.com/admin/module/product/DownFile/Lenovo_B6000-H_UAProfile.xml' => array( 'Lenovo', 'B6000 Yoga Tablet 8', 'Android', TYPE_TABLET ),
1533
  'http://www.lenovomobile.com/admin/module/product/DownFile/download_20071165379380.xml' => array( 'Lenovo', 'E303', NULL, TYPE_MOBILE ),
1534
  'http://www.lenovomobile.com/admin/module/product/DownFile/download_2006815893438.xml' => array( 'Lenovo', 'I720', NULL, TYPE_MOBILE ),
1535
  'http://www.lenovomobile.com/admin/module/product/DownFile/download_2007736634847.xml' => array( 'Lenovo', 'I906', NULL, TYPE_MOBILE ),
1536
  'http://www.lenovomobile.com/admin/module/product/DownFile/download_20075225142784.xml' => array( 'Lenovo', 'I908', NULL, TYPE_MOBILE ),
1537
+ 'http://www.lenovomobile.com/admin/module/product/DownFile/Lenovo_B8000-H_UAProfile.xml' => array( 'Lenovo', 'IdeaTab B8000', 'Android', TYPE_TABLET ),
1538
  'http://www.lenovomobile.com/admin/module/product/DownFile/Lenovo_S5000-H_UAProfile.xml' => array( 'Lenovo', 'IdeaTab S5000', 'Android', TYPE_MOBILE ),
1539
  'http://www.lenovomobile.com/admin/module/product/DownFile/Lenovo_P70_UAProfile.xml' => array( 'Lenovo', 'P70', 'Android', TYPE_MOBILE ),
1540
  'http://www.lenovomobile.com/admin/module/product/DownFile/download_20071236069306.xml' => array( 'Lenovo', 'P768', NULL, TYPE_MOBILE ),
1541
  'http://www.lenovomobile.com/admin/module/product/DownFile/Lenovo_P770_ROW_UAProfile.xml' => array( 'Lenovo', 'P770', 'Android', TYPE_MOBILE ),
1542
  'http://www.lenovomobile.com/admin/module/product/DownFile/Lenovo_P770_UAProfile.xml' => array( 'Lenovo', 'P770', 'Android', TYPE_MOBILE ),
1543
  'http://www.lenovomobile.com/admin/module/product/DownFile/download_20067105107369.xml' => array( 'Lenovo', 'P780', NULL, TYPE_MOBILE ),
1544
+ 'http://www.lenovomobile.com/admin/module/product/DownFile/Lenovo_P780_KK_UAProfile.xml' => array( 'Lenovo', 'P780', 'Android', TYPE_MOBILE ),
1545
  'http://www.lenovomobile.com/admin/module/product/DownFile/Lenovo_P780_ROW_UAProfile.xml' => array( 'Lenovo', 'P780', 'Android', TYPE_MOBILE ),
1546
  'http://www.lenovomobile.com/admin/module/product/DownFile/Lenovo_P780_UAProfile.xml' => array( 'Lenovo', 'P780', 'Android', TYPE_MOBILE ),
1547
+ 'http://www.oppo.com/resource/UA-PROF/OPPOLenovo P780.xml' => array( 'Lenovo', 'P780', 'Android', TYPE_MOBILE ),
1548
  'http://www.lenovomobile.com/admin/module/product/DownFile/Lenovo_S650_ROW_UAprofile.xml' => array( 'Lenovo', 'S650', 'Android', TYPE_MOBILE ),
1549
  'http://www.lenovomobile.com/admin/module/product/DownFile/Lenovo_S650_UAprofile.xml' => array( 'Lenovo', 'S650', 'Android', TYPE_MOBILE ),
1550
+ 'http://www.lenovomobile.com/admin/module/product/DownFile/Lenovo_S658t_KK_UAprofile.xml' => array( 'Lenovo', 'S658', 'Android', TYPE_MOBILE ),
1551
+ 'http://www.lenovomobile.com/admin/module/product/DownFile/Lenovo_S658t_UAprofile.xml' => array( 'Lenovo', 'S658', 'Android', TYPE_MOBILE ),
1552
  'http://www.lenovomobile.com/admin/module/product/DownFile/download_2008423595403.xml' => array( 'Lenovo', 'S707', NULL, TYPE_MOBILE ),
1553
  'http://www.lenovomobile.com/admin/module/product/DownFile/Lenovo_S720i_UAProfile.xml' => array( 'Lenovo', 'S720', 'Android', TYPE_MOBILE ),
1554
  'http://www.lenovomobile.com/admin/module/product/DownFile/Lenovo_S720_ROW_UAProfile.xml' => array( 'Lenovo', 'S720', 'Android', TYPE_MOBILE ),
1555
+ 'http://www.lenovomobile.com/admin/module/product/DownFile/Lenovo_S820_KK_UAprofile.xml' => array( 'Lenovo', 'S820', 'Android', TYPE_MOBILE ),
1556
  'http://www.lenovomobile.com/admin/module/product/DownFile/Lenovo_S820_ROW_UAProfile.xml' => array( 'Lenovo', 'S820', 'Android', TYPE_MOBILE ),
1557
  'http://www.lenovomobile.com/admin/module/product/DownFile/Lenovo_S820_UAProfile.xml' => array( 'Lenovo', 'S820', 'Android', TYPE_MOBILE ),
1558
+ 'http://www.lenovomobile.com/admin/module/product/DownFile/Lenovo_S850T_UAprofile.xml' => array( 'Lenovo', 'S850', 'Android', TYPE_MOBILE ),
1559
+ 'http://www.lenovomobile.com/admin/module/product/DownFile/Lenovo_S850_KK_UAprofile.xml' => array( 'Lenovo', 'S850', 'Android', TYPE_MOBILE ),
1560
+ 'http://www.lenovomobile.com/admin/module/product/DownFile/Lenovo_S850_UAprofile.xml' => array( 'Lenovo', 'S850', 'Android', TYPE_MOBILE ),
1561
+ 'http://www.lenovomobile.com/admin/module/product/DownFile/Lenovo_S860t_UAprofile.xml' => array( 'Lenovo', 'S860', 'Android', TYPE_MOBILE ),
1562
+ 'http://www.lenovomobile.com/admin/module/product/DownFile/Lenovo_S860_ROW_UAprofile.xml' => array( 'Lenovo', 'S860', 'Android', TYPE_MOBILE ),
1563
+ 'http://www.lenovomobile.com/admin/module/product/DownFile/Lenovo_S860_UAprofile.xml' => array( 'Lenovo', 'S860', 'Android', TYPE_MOBILE ),
1564
  'http://www.lenovomobile.com/admin/module/product/DownFile/Lenovo_S890i_UAProfile.xml' => array( 'Lenovo', 'S890', 'Android', TYPE_MOBILE ),
1565
  'http://www.lenovomobile.com/admin/module/product/DownFile/Lenovo_S890_ROW_UAProfile.xml' => array( 'Lenovo', 'S890', 'Android', TYPE_MOBILE ),
1566
+ 'http://www.lenovomobile.com/admin/module/product/DownFile/Lenovo_S898t+_UAProfile.xml' => array( 'Lenovo', 'S898', 'Android', TYPE_MOBILE ),
1567
  'http://www.lenovomobile.com/admin/module/product/DownFile/Lenovo_S898t_UAProfile.xml' => array( 'Lenovo', 'S898', 'Android', TYPE_MOBILE ),
1568
  'http://www.lenovomobile.com/admin/module/product/DownFile/download_20075256251113.xml' => array( 'Lenovo', 'S9', NULL, TYPE_MOBILE ),
1569
+ 'http://www.lenovomobile.com/admin/module/product/DownFile/Lenovo_S920_KK_UAProfile.xml' => array( 'Lenovo', 'S920', 'Android', TYPE_MOBILE ),
1570
  'http://www.lenovomobile.com/admin/module/product/DownFile/Lenovo_S920_ROW_UAProfile.xml' => array( 'Lenovo', 'S920', 'Android', TYPE_MOBILE ),
1571
  'http://www.lenovomobile.com/admin/module/product/DownFile/Lenovo_S920_UAProfile.xml' => array( 'Lenovo', 'S920', 'Android', TYPE_MOBILE ),
1572
+ 'http://www.lenovomobile.com/admin/module/product/DownFile/Lenovo_S930_KK_UAprofile.xml' => array( 'Lenovo', 'S930', 'Android', TYPE_MOBILE ),
1573
  'http://www.lenovomobile.com/admin/module/product/DownFile/Lenovo_S930_ROW_UAprofile.xml' => array( 'Lenovo', 'S930', 'Android', TYPE_MOBILE ),
1574
  'http://www.lenovomobile.com/admin/module/product/DownFile/Lenovo_S930_UAprofile.xml' => array( 'Lenovo', 'S930', 'Android', TYPE_MOBILE ),
1575
  'http://www.lenovomobile.com/admin/module/product/DownFile/Lenovo_S938t_UAprofile.xml' => array( 'Lenovo', 'S938t', 'Android', TYPE_MOBILE ),
1576
+ 'http://www.lenovomobile.com/admin/module/product/DownFile/Lenovo_S939_KK_UAprofile.xml' => array( 'Lenovo', 'S939', 'Android', TYPE_MOBILE ),
1577
  'http://www.lenovomobile.com/admin/module/product/DownFile/Lenovo_S939_UAprofile.xml' => array( 'Lenovo', 'S939', 'Android', TYPE_MOBILE ),
1578
+ 'http://www.lenovomobile.com/admin/module/product/DownFile/Lenovo_S960_KK_UAprofile.xml' => array( 'Lenovo', 'S960', 'Android', TYPE_MOBILE ),
1579
  'http://www.lenovomobile.com/admin/module/product/DownFile/Lenovo_S960_ROW_UAProfile.xml' => array( 'Lenovo', 'S960', 'Android', TYPE_MOBILE ),
1580
+ 'http://www.lenovomobile.com/admin/module/product/DownFile/Lenovo_S960_UAprofile.xml' => array( 'Lenovo', 'S960', 'Android', TYPE_MOBILE ),
1581
  'http://www.lenovomobile.com/admin/module/product/DownFile/Lenovo_S968t_UAProfile.xml' => array( 'Lenovo', 'S968t', 'Android', TYPE_MOBILE ),
1582
  'http://www.lenovomobile.com/admin/module/product/DownFile/download_20069185728203.xml' => array( 'Lenovo', 'V800', NULL, TYPE_MOBILE ),
1583
  'http://www.lenovomobile.com/admin/module/product/DownFile/download_200710186443397.xml' => array( 'Lenovo', 'X1', NULL, TYPE_MOBILE ),
1594
  'http://www.alltel.net/uaprof/lg/ax830/ax830.xml' => array( 'LG', 'AX830 Glimmer', NULL, TYPE_MOBILE ),
1595
  'http://www.alltel.net/uaprof/lg/ax8600/ax8600.xml' => array( 'LG', 'AX8600', NULL, TYPE_MOBILE ),
1596
  'http://gsm.lge.com/html/gsm/LG-B2070.xml' => array( 'LG', 'B2070', NULL, TYPE_MOBILE ),
1597
+ 'http://gsm.lge.com/html/gsm/BL40-M6-D2CL.xml' => array( 'LG', 'BL40', NULL, TYPE_MOBILE ),
1598
  'http://gsm.lge.com/html/gsm/LG-C130.xml' => array( 'LG', 'C130', NULL, TYPE_MOBILE ),
1599
  'http://gsm.lge.com/html/gsm/LG-C1300.xml' => array( 'LG', 'C1300', NULL, TYPE_MOBILE ),
1600
  'http://gsm.lge.com/html/gsm/LG-C1500.xml' => array( 'LG', 'C1500', NULL, TYPE_MOBILE ),
1604
  'http://gsm.lge.com/html/gsm/LG-C205-M3-D1.xml' => array( 'LG', 'C205', NULL, TYPE_MOBILE ),
1605
  'http://gsm.lge.com/html/gsm/LG-C207-M3-D1.xml' => array( 'LG', 'C207', NULL, TYPE_MOBILE ),
1606
  'http://gsm.lge.com/html/gsm/LG-C2500.xml' => array( 'LG', 'C2500', NULL, TYPE_MOBILE ),
1607
+ 'http://gsm.lge.com/html/gsm/LG-C365-M3-D1.xml' => array( 'LG', 'C365', NULL, TYPE_MOBILE ),
1608
+ 'http://gsm.lge.com/html/gsm/LG-C410.xml' => array( 'LG', 'C410', NULL, TYPE_MOBILE ),
1609
  'http://gsm.lge.com/html/gsm/LG-CB630.xml' => array( 'LG', 'CB630 Invision', NULL, TYPE_MOBILE ),
1610
  'http://gsm.lge.com/html/gsm/LG-CE110.xml' => array( 'LG', 'CE110', NULL, TYPE_MOBILE ),
1611
  'http://uaprof.metropcs.net/UAProf/LG-MS840.xml' => array( 'LG', 'Connect 4G', 'Android', TYPE_MOBILE ),
1618
  'http://device.sprintpcs.com/LG/LS696/LS696ZVF.rdf' => array( 'LG', 'Elite', 'Android', TYPE_MOBILE ),
1619
  'http://uaprof.vtext.com/lge/vs700/vs700.xml' => array( 'LG', 'Enlighten', 'Android', TYPE_MOBILE ),
1620
  'http://uaprof.vtext.com/lg/vx11000/vx11000.xml' => array( 'LG', 'Env Touch', NULL, TYPE_MOBILE ),
1621
+ 'http://uaprof.vtext.com/lg/vx9200/vx9200.xml' => array( 'LG', 'Env3', 'Brew', TYPE_MOBILE ),
1622
  'http://gsm.lge.com/html/gsm/P870-M10-D1.xml' => array( 'LG', 'Escape', 'Android', TYPE_MOBILE ),
1623
  'http://gsm.lge.com/html/gsm/P870-M6-D2.xml' => array( 'LG', 'Escape', 'Android', TYPE_MOBILE ),
1624
  'http://uaprof.metropcs.net/UAProf/LG-MS910.xml' => array( 'LG', 'Esteem', 'Android', TYPE_MOBILE ),
1625
  'http://gsm.lge.com/html/gsm/LG-F2200.xml' => array( 'LG', 'F2200', NULL, TYPE_MOBILE ),
1626
  'http://gsm.lge.com/html/gsm/LG-F3000.xml' => array( 'LG', 'F3000', NULL, TYPE_MOBILE ),
1627
+ 'http://gsm.lge.com/html/gsm/D315-M3-D1.xml' => array( 'LG', 'F70', 'Android', TYPE_MOBILE ),
1628
+ 'http://gsm.lge.com/html/gsm/D315-M6-D1.xml' => array( 'LG', 'F70', 'Android', TYPE_MOBILE ),
1629
+ 'http://gsm.lge.com/html/gsm/L31L-M10-D1.xml' => array( 'LG', 'F70', 'Android', TYPE_MOBILE ),
1630
  'http://gsm.lge.com/html/gsm/LG-F7250.xml' => array( 'LG', 'F7250', NULL, TYPE_MOBILE ),
1631
+ 'http://device.sprintpcs.com/LG/LS740-Chameleon/latest' => array( 'LG', 'F90', 'Android', TYPE_MOBILE ),
1632
+ 'http://device.sprintpcs.comLS740.rdf' => array( 'LG', 'F90', 'Android', TYPE_MOBILE ),
1633
  'http://gsm.lge.com/html/gsm/LG-F9100.xml' => array( 'LG', 'F9100', NULL, TYPE_MOBILE ),
1634
  'http://gsm.lge.com/html/gsm/LG-F9200.xml' => array( 'LG', 'F9200', NULL, TYPE_MOBILE ),
1635
+ 'http://device.sprintpcs.com/LG/LS995-Chameleon/latest' => array( 'LG', 'G Flex', 'Android', TYPE_MOBILE ),
1636
+ 'http://device.sprintpcs.com/LG/LS995-SPRINT/LS995ZV3.rdf' => array( 'LG', 'G Flex', 'Android', TYPE_MOBILE ),
1637
+ 'http://gsm.lge.com/html/gsm/D950-M10-D1-KK.xml' => array( 'LG', 'G Flex', 'Android', TYPE_MOBILE ),
1638
+ 'http://gsm.lge.com/html/gsm/D950-M10-D1.xml' => array( 'LG', 'G Flex', 'Android', TYPE_MOBILE ),
1639
  'http://gsm.lge.com/html/gsm/D955-M10-D1.xml' => array( 'LG', 'G Flex', 'Android', TYPE_MOBILE ),
1640
+ 'http://gsm.lge.com/html/gsm/D955-M3-D1-KK.xml' => array( 'LG', 'G Flex', 'Android', TYPE_MOBILE ),
1641
  'http://gsm.lge.com/html/gsm/D955-M3-D1.xml' => array( 'LG', 'G Flex', 'Android', TYPE_MOBILE ),
1642
+ 'http://gsm.lge.com/html/gsm/D955-M6-D1.xml' => array( 'LG', 'G Flex', 'Android', TYPE_MOBILE ),
1643
+ 'http://gsm.lge.com/html/gsm/D956-M3-D1.xml' => array( 'LG', 'G Flex', 'Android', TYPE_MOBILE ),
1644
  'http://gsm.lge.com/html/gsm/D958-M10-D1.xml' => array( 'LG', 'G Flex', 'Android', TYPE_MOBILE ),
1645
  'http://gsm.lge.com/html/gsm/D958-M3-D1.xml' => array( 'LG', 'G Flex', 'Android', TYPE_MOBILE ),
1646
+ 'http://gsm.lge.com/html/gsm/D959-M10-D1.xml' => array( 'LG', 'G Flex', 'Android', TYPE_MOBILE ),
1647
+ 'http://gsm.lge.com/html/gsm/D830-M3-D1.xml' => array( 'LG', 'G Pro 2', 'Android', TYPE_MOBILE ),
1648
+ 'http://gsm.lge.com/html/gsm/D838-M3-D1.xml' => array( 'LG', 'G Pro 2', 'Android', TYPE_MOBILE ),
1649
+ 'http://gsm.lge.com/html/gsm/F350L-M9-D1.xml' => array( 'LG', 'G Pro 2', 'Android', TYPE_MOBILE ),
1650
  'http://gsm.lge.com/html/gsm/D680-M10-D1.xml' => array( 'LG', 'G Pro Lite', 'Android', TYPE_MOBILE ),
1651
  'http://gsm.lge.com/html/gsm/D682-M3-D1.xml' => array( 'LG', 'G Pro Lite', 'Android', TYPE_MOBILE ),
1652
+ 'http://tool.xcdn.gdms.lge.com/html/uap/BZGZ3OH0HR/D682TR-M3-D1.xml' => array( 'LG', 'G Pro Lite', 'Android', TYPE_MOBILE ),
1653
+ 'http://gsm.lge.com/html/gsm/D685-M3-D1-KK.xml' => array( 'LG', 'G Pro Lite Dual', 'Android', TYPE_MOBILE ),
1654
  'http://gsm.lge.com/html/gsm/D685-M3-D1.xml' => array( 'LG', 'G Pro Lite Dual', 'Android', TYPE_MOBILE ),
1655
  'http://gsm.lge.com/html/gsm/D686-M3-D1.xml' => array( 'LG', 'G Pro Lite Dual', 'Android', TYPE_MOBILE ),
1656
  'http://gsm.lge.com/html/gsm/LG-G1610.xml' => array( 'LG', 'G1610', NULL, TYPE_MOBILE ),
1657
  'http://device.sprintpcs.com/LG/LS980-Chameleon/latest' => array( 'LG', 'G2', 'Android', TYPE_MOBILE ),
1658
  'http://device.sprintpcs.com/LG/LS980-SPRINT/LS980ZV7.rdf' => array( 'LG', 'G2', 'Android', TYPE_MOBILE ),
1659
+ 'http://device.sprintpcs.com/LG/LS980-SPRINT/LS980ZV8.rdf' => array( 'LG', 'G2', 'Android', TYPE_MOBILE ),
1660
+ 'http://device.sprintpcs.com/LG/LS980-SPRINT/LS980ZVA.rdf' => array( 'LG', 'G2', 'Android', TYPE_MOBILE ),
1661
+ 'http://device.sprintpcs.com/LG/LS980-SPRINT/LS980ZVC.rdf' => array( 'LG', 'G2', 'Android', TYPE_MOBILE ),
1662
+ 'http://device.sprintpcs.com/LG/LS980-SPRINT/OpTimuS.rdf' => array( 'LG', 'G2', 'Android', TYPE_MOBILE ),
1663
+ 'http://device.sprintpcs.comLS980ZV8.rdf' => array( 'LG', 'G2', 'Android', TYPE_MOBILE ),
1664
+ 'http://gsm.lge.com/html/gsm/D800-M10-D1-KK.xml' => array( 'LG', 'G2', 'Android', TYPE_MOBILE ),
1665
  'http://gsm.lge.com/html/gsm/D800-M10-D1.xml' => array( 'LG', 'G2', 'Android', TYPE_MOBILE ),
1666
+ 'http://gsm.lge.com/html/gsm/D800-M3-D1-KK.xml' => array( 'LG', 'G2', 'Android', TYPE_MOBILE ),
1667
+ 'http://gsm.lge.com/html/gsm/D800-M3-D1.xml' => array( 'LG', 'G2', 'Android', TYPE_MOBILE ),
1668
+ 'http://gsm.lge.com/html/gsm/D801-M10-D1-KK.xml' => array( 'LG', 'G2', 'Android', TYPE_MOBILE ),
1669
  'http://gsm.lge.com/html/gsm/D801-M10-D1.xml' => array( 'LG', 'G2', 'Android', TYPE_MOBILE ),
1670
+ 'http://gsm.lge.com/html/gsm/D802-M10-D1-KK.xml' => array( 'LG', 'G2', 'Android', TYPE_MOBILE ),
1671
  'http://gsm.lge.com/html/gsm/D802-M10-D1.xml' => array( 'LG', 'G2', 'Android', TYPE_MOBILE ),
1672
  'http://gsm.lge.com/html/gsm/D802-M20-D1.xml' => array( 'LG', 'G2', 'Android', TYPE_MOBILE ),
1673
+ 'http://gsm.lge.com/html/gsm/D802-M3-D1-KK.xml' => array( 'LG', 'G2', 'Android', TYPE_MOBILE ),
1674
  'http://gsm.lge.com/html/gsm/D802-M3-D1.xml' => array( 'LG', 'G2', 'Android', TYPE_MOBILE ),
1675
+ 'http://gsm.lge.com/html/gsm/D802-M5-D1-KK.xml' => array( 'LG', 'G2', 'Android', TYPE_MOBILE ),
1676
  'http://gsm.lge.com/html/gsm/D802-M5-D1.xml' => array( 'LG', 'G2', 'Android', TYPE_MOBILE ),
1677
+ 'http://gsm.lge.com/html/gsm/D802-M6-D1-KK.xml' => array( 'LG', 'G2', 'Android', TYPE_MOBILE ),
1678
  'http://gsm.lge.com/html/gsm/D802-M6-D1.xml' => array( 'LG', 'G2', 'Android', TYPE_MOBILE ),
1679
+ 'http://gsm.lge.com/html/gsm/D802T-M20-D1-KK.xml' => array( 'LG', 'G2', 'Android', TYPE_MOBILE ),
1680
+ 'http://gsm.lge.com/html/gsm/D802T-M3-D1.xml' => array( 'LG', 'G2', 'Android', TYPE_MOBILE ),
1681
+ 'http://gsm.lge.com/html/gsm/D802T-M5-D1.xml' => array( 'LG', 'G2', 'Android', TYPE_MOBILE ),
1682
+ 'http://gsm.lge.com/html/gsm/D802TR-M5-D1-KK.xml' => array( 'LG', 'G2', 'Android', TYPE_MOBILE ),
1683
+ 'http://gsm.lge.com/html/gsm/D802TR-M5-D1.xml' => array( 'LG', 'G2', 'Android', TYPE_MOBILE ),
1684
+ 'http://gsm.lge.com/html/gsm/D803-M10-D1-KK.xml' => array( 'LG', 'G2', 'Android', TYPE_MOBILE ),
1685
  'http://gsm.lge.com/html/gsm/D803-M10-D1.xml' => array( 'LG', 'G2', 'Android', TYPE_MOBILE ),
1686
+ 'http://gsm.lge.com/html/gsm/D803-M6-D1-KK.xml' => array( 'LG', 'G2', 'Android', TYPE_MOBILE ),
1687
  'http://gsm.lge.com/html/gsm/D803-M6-D1.xml' => array( 'LG', 'G2', 'Android', TYPE_MOBILE ),
1688
+ 'http://gsm.lge.com/html/gsm/D805-M10-D1-KK.xml' => array( 'LG', 'G2', 'Android', TYPE_MOBILE ),
1689
  'http://gsm.lge.com/html/gsm/D805-M10-D1.xml' => array( 'LG', 'G2', 'Android', TYPE_MOBILE ),
1690
+ 'http://gsm.lge.com/html/gsm/D805-M3-D1-KK.xml' => array( 'LG', 'G2', 'Android', TYPE_MOBILE ),
1691
  'http://gsm.lge.com/html/gsm/D805-M3-D1.xml' => array( 'LG', 'G2', 'Android', TYPE_MOBILE ),
1692
+ 'http://gsm.lge.com/html/gsm/D806-M3-D1.xml' => array( 'LG', 'G2', 'Android', TYPE_MOBILE ),
1693
  'http://gsm.lge.com/html/gsm/F320K-M10-D1.xml' => array( 'LG', 'G2', 'Android', TYPE_MOBILE ),
1694
+ 'http://gsm.lge.com/html/gsm/F320K-M3-D1.xml' => array( 'LG', 'G2', 'Android', TYPE_MOBILE ),
1695
+ 'http://gsm.lge.com/html/gsm/F320L-M3-D1.xml' => array( 'LG', 'G2', 'Android', TYPE_MOBILE ),
1696
  'http://gsm.lge.com/html/gsm/F320L-M9-D1.xml' => array( 'LG', 'G2', 'Android', TYPE_MOBILE ),
1697
+ 'http://gsm.lge.com/html/gsm/F320S-M3-D1.xml' => array( 'LG', 'G2', 'Android', TYPE_MOBILE ),
1698
+ 'http://tool.xcdn.gdms.lge.com/html/uap/C957NUJHUE/D802TR-M3-D1.xml' => array( 'LG', 'G2', 'Android', TYPE_MOBILE ),
1699
+ 'http://gsm.lge.com/html/gsm/618-M3-D1.xml' => array( 'LG', 'G2 mini', 'Android', TYPE_MOBILE ),
1700
+ 'http://gsm.lge.com/html/gsm/8-M3-D1.xml' => array( 'LG', 'G2 mini', 'Android', TYPE_MOBILE ),
1701
+ 'http://gsm.lge.com/html/gsm/D618-M3-D1.xml' => array( 'LG', 'G2 mini', 'Android', TYPE_MOBILE ),
1702
+ 'http://gsm.lge.com/html/gsm/D620-M3-D1.xml' => array( 'LG', 'G2 mini', 'Android', TYPE_MOBILE ),
1703
+ 'http://gsm.lge.com/html/gsm/D620-M6-D1.xml' => array( 'LG', 'G2 mini', 'Android', TYPE_MOBILE ),
1704
+ 'http://gsm.lge.com/html/gsm/D625-M10-D1.xml' => array( 'LG', 'G2 mini', 'Android', TYPE_MOBILE ),
1705
  'http://gsm.lge.com/html/gsm/LG-G282.xml' => array( 'LG', 'G282', NULL, TYPE_MOBILE ),
1706
  'http://gsm.lge.com/html/gsm/MX_LG_G4015.xml' => array( 'LG', 'G4015', NULL, TYPE_MOBILE ),
1707
  'http://gsm.lge.com/html/gsm/LG-G4020.xml' => array( 'LG', 'G4020', NULL, TYPE_MOBILE ),
1717
  'http://gsm.lge.com/html/gsm/GD880-M6-D1.xml' => array( 'LG', 'GD880', NULL, TYPE_MOBILE ),
1718
  'http://gsm.lge.com/html/gsm/GD880-M6-D2CL.xml' => array( 'LG', 'GD880', NULL, TYPE_MOBILE ),
1719
  'http://gsm.lge.com/html/gsm/LG-GM360-NS.xml' => array( 'LG', 'GM360 Viewty Snap', NULL, TYPE_MOBILE ),
1720
+ 'http://gsm.lge.com/html/gsm/LG-GM360.xml' => array( 'LG', 'GM360 Viewty Snap', NULL, TYPE_MOBILE ),
1721
  'http://gsm.lge.com/html/gsm/LG-GM630.xml' => array( 'LG', 'GM630', NULL, TYPE_MOBILE ),
1722
  'http://gsm.lge.com/html/gsm/LG-GR500.xml' => array( 'LG', 'GR500 Xenon', NULL, TYPE_MOBILE ),
1723
+ 'http://gsm.lge.com/html/gsm/LG-GS390.xml' => array( 'LG', 'GS390 Prime', NULL, TYPE_MOBILE ),
1724
  'http://gsm.lge.com/html/gsm/LG-GT500-TMO.xml' => array( 'LG', 'GT500 Puccini', NULL, TYPE_MOBILE ),
1725
+ 'http://gsm.lge.com/html/gsm/LG-GT505-ORG.xml' => array( 'LG', 'GT505', NULL, TYPE_MOBILE ),
1726
  'http://gsm.lge.com/html/gsm/LG-GW300.xml' => array( 'LG', 'GW300', NULL, TYPE_MOBILE ),
1727
  'http://gsm.lge.com/html/gsm/GW620-M6-D1.xml' => array( 'LG', 'GW620 Eve', 'Android', TYPE_MOBILE ),
1728
  'http://gsm.lge.com/html/gsm/LG-HB620T.xml' => array( 'LG', 'HB620T', NULL, TYPE_MOBILE ),
1772
  'http://gsm.lge.com/html/gsm/LG-KM380.xml' => array( 'LG', 'KM380', NULL, TYPE_MOBILE ),
1773
  'http://gsm.lge.com/html/gsm/LG-KM500.xml' => array( 'LG', 'KM500', NULL, TYPE_MOBILE ),
1774
  'http://gsm.lge.com/html/gsm/LG-KM501.xml' => array( 'LG', 'KM501', NULL, TYPE_MOBILE ),
1775
+ 'http://gsm.lge.com/html/gsm/LG-KM553.xml' => array( 'LG', 'KM553', NULL, TYPE_MOBILE ),
1776
  'http://gsm.lge.com/html/gsm/LG-KM900.xml' => array( 'LG', 'KM900 Arena', NULL, TYPE_MOBILE ),
1777
  'http://gsm.lge.com/html/gsm/LG-KP110.xml' => array( 'LG', 'KP110', NULL, TYPE_MOBILE ),
1778
  'http://gsm.lge.com/html/gsm/LG-KP130.xml' => array( 'LG', 'KP130', NULL, TYPE_MOBILE ),
1810
  'http://gsm.lge.com/html/gsm/MX_LG_L1150.xml' => array( 'LG', 'L1150', NULL, TYPE_MOBILE ),
1811
  'http://gsm.lge.com/html/gsm/LG-L1200.xml' => array( 'LG', 'L1200', NULL, TYPE_MOBILE ),
1812
  'http://gsm.lge.com/html/gsm/LG_L1400.xml' => array( 'LG', 'L1400', NULL, TYPE_MOBILE ),
1813
+ 'http://gsm.lge.com/html/gsm/D125f-M3-D1.xml' => array( 'LG', 'L30', 'Android', TYPE_MOBILE ),
1814
  'http://gsm.lge.com/html/gsm/LGL35G-M6-D1.xml' => array( 'LG', 'L35G', 'Android', TYPE_MOBILE ),
1815
+ 'http://gsm.lge.com/html/gsm/34C-M11-D1.xml' => array( 'LG', 'L40', 'Android', TYPE_MOBILE ),
1816
+ 'http://gsm.lge.com/html/gsm/D160-M20-D1.xml' => array( 'LG', 'L40', 'Android', TYPE_MOBILE ),
1817
+ 'http://gsm.lge.com/html/gsm/D160-M3-D1.xml' => array( 'LG', 'L40', 'Android', TYPE_MOBILE ),
1818
+ 'http://gsm.lge.com/html/gsm/D175f-M3-D1.xml' => array( 'LG', 'L40', 'Android', TYPE_MOBILE ),
1819
+ 'http://gsm.lge.com/html/gsm/L34C-M12-D1.xml' => array( 'LG', 'L40', 'Android', TYPE_MOBILE ),
1820
+ 'http://gsm.lge.com/html/gsm/D227-M3-D1.xml' => array( 'LG', 'L50', 'Android', TYPE_MOBILE ),
1821
  'http://gsm.lge.com/html/gsm/LG-L5100.xml' => array( 'LG', 'L5100', NULL, TYPE_MOBILE ),
1822
  'http://gsm.lge.com/html/gsm/LG-L600V.xml' => array( 'LG', 'L600v', NULL, TYPE_MOBILE ),
1823
+ 'http://gsm.lge.com/html/gsm/D280-M3-D1.xml' => array( 'LG', 'L65', 'Android', TYPE_MOBILE ),
1824
+ 'http://gsm.lge.com/html/gsm/D280-M5-D1.xml' => array( 'LG', 'L65', 'Android', TYPE_MOBILE ),
1825
+ 'http://gsm.lge.com/html/gsm/321-M10-D1.xml' => array( 'LG', 'L70', 'Android', TYPE_MOBILE ),
1826
+ 'http://gsm.lge.com/html/gsm/D320-M3-D1.xml' => array( 'LG', 'L70', 'Android', TYPE_MOBILE ),
1827
+ 'http://gsm.lge.com/html/gsm/D320n-M3-D1.xml' => array( 'LG', 'L70', 'Android', TYPE_MOBILE ),
1828
+ 'http://gsm.lge.com/html/gsm/D321-M10-D1.xml' => array( 'LG', 'L70', 'Android', TYPE_MOBILE ),
1829
+ 'http://gsm.lge.com/html/gsm/D325-M3-D1.xml' => array( 'LG', 'L70', 'Android', TYPE_MOBILE ),
1830
+ 'http://gsm.lge.com/html/gsm/D325f-M3-D1.xml' => array( 'LG', 'L70', 'Android', TYPE_MOBILE ),
1831
+ 'http://gsm.lge.com/html/gsm/LGL41C-M12-D1.xml' => array( 'LG', 'L70', 'Android', TYPE_MOBILE ),
1832
+ 'http://gsm.lge.com/html/gsm/LGMS323-M10-D1.xml' => array( 'LG', 'L70', 'Android', TYPE_MOBILE ),
1833
+ 'http://gsm.lge.com/html/gsm/MS323-M10-D1.xml' => array( 'LG', 'L70', 'Android', TYPE_MOBILE ),
1834
+ 'http://gsm.lge.com/html/gsm/D385-M3-D1.xml' => array( 'LG', 'L80', 'Android', TYPE_MOBILE ),
1835
+ 'http://gsm.lge.com/html/gsm/D405-M3-D1.xml' => array( 'LG', 'L90', 'Android', TYPE_MOBILE ),
1836
+ 'http://gsm.lge.com/html/gsm/D405-M6-D1.xml' => array( 'LG', 'L90', 'Android', TYPE_MOBILE ),
1837
+ 'http://gsm.lge.com/html/gsm/D410-M3-D1.xml' => array( 'LG', 'L90', 'Android', TYPE_MOBILE ),
1838
+ 'http://gsm.lge.com/html/gsm/D415-M10-D1.xml' => array( 'LG', 'L90', 'Android', TYPE_MOBILE ),
1839
+ 'http://gsm.lge.com/html/gsm/LGL996L-M10-D1.xml' => array( 'LG', 'L996L', 'Android', TYPE_MOBILE ),
1840
  'http://uaprof.bellmobilite.ca/LGE_LG160P.rdf' => array( 'LG', 'LG160', NULL, TYPE_MOBILE ),
1841
  'http://uaprof.bellmobilite.ca/LGE_LG160V.rdf' => array( 'LG', 'LG160', NULL, TYPE_MOBILE ),
1842
  'http://device.telusmobility.com/lg/LG200.rdf' => array( 'LG', 'LG200', NULL, TYPE_MOBILE ),
1845
  'http://uaprof.bellmobilite.ca/LGE_LG280.rdf' => array( 'LG', 'LG280', NULL, TYPE_MOBILE ),
1846
  'http://device.telusmobility.com/lg/LG285-1.rdf' => array( 'LG', 'LG285', NULL, TYPE_MOBILE ),
1847
  'http://uaprof.bellmobilite.ca/LGE_LG385.rdf' => array( 'LG', 'LG385', NULL, TYPE_MOBILE ),
1848
+ 'http://gsm.lge.com/html/gsm/LG-LG440G.xml' => array( 'LG', 'LG440G', NULL, TYPE_MOBILE ),
1849
  'http://device.telusmobility.com/lg/lg4600.rdf' => array( 'LG', 'LG4600', NULL, TYPE_MOBILE ),
1850
  'http://device.telusmobility.com/lg/LG490-0.rdf' => array( 'LG', 'LG490', NULL, TYPE_MOBILE ),
1851
  'http://uaprof.bellmobilite.ca/BMC_LG_LG5400_LG540V05.rdf' => array( 'LG', 'LG5400', NULL, TYPE_MOBILE ),
1866
  'http://device.telusmobility.com/lg/LG9700-0.rdf' => array( 'LG', 'LG9700 Dare', NULL, TYPE_MOBILE ),
1867
  'http://device.sprintpcs.com/LG/LX600/LX600V07.rdf' => array( 'LG', 'Lotus LX600', NULL, TYPE_MOBILE ),
1868
  'http://device.sprintpcs.com/LG/LX600/LX600V08.rdf' => array( 'LG', 'Lotus LX600', NULL, TYPE_MOBILE ),
 
1869
  'http://uaprof.vtext.com/lge/vs840/vs840.xml' => array( 'LG', 'Lucid', 'Android', TYPE_MOBILE ),
1870
  'http://uaprof.vmobl.com/LG/LX-140/VMU_lx140_UAProf.xml' => array( 'LG', 'LX140 Aloha', NULL, TYPE_MOBILE ),
1871
  'http://uaprof.vmobl.com/LG/lx165/VMU_lx165_UAProf.xml' => array( 'LG', 'LX165 Flare', NULL, TYPE_MOBILE ),
1873
  'http://device.sprintpcs.com/LG/5350/LX5350_11.rdf' => array( 'LG', 'LX5350', 'Android', TYPE_MOBILE ),
1874
  'http://device.sprintpcs.com/LG/LS860-Chameleon/latest' => array( 'LG', 'Mach', 'Android', TYPE_MOBILE ),
1875
  'http://device.sprintpcs.com/LG/LS860-SPRINT/LS860ZV7.rdf' => array( 'LG', 'Mach', 'Android', TYPE_MOBILE ),
1876
+ 'http://device.sprintpcs.com/LG/LS860-SPRINT/LS860ZV8.rdf' => array( 'LG', 'Mach', 'Android', TYPE_MOBILE ),
1877
  'http://device.sprintpcs.com/LG/LG855ABC/LG855ZV3.rdf' => array( 'LG', 'Marquee', 'Android', TYPE_MOBILE ),
1878
  'http://device.sprintpcs.com/LG/LG855ABC/LG855ZV4.rdf' => array( 'LG', 'Marquee', 'Android', TYPE_MOBILE ),
1879
  'http://device.sprintpcs.com/LG/LS855/LS855ZV1.rdf' => array( 'LG', 'Marquee', 'Android', TYPE_MOBILE ),
1919
  'http://gsm.lge.com/html/gsm/P880-M6-D2.xml' => array( 'LG', 'Optimus 4X HD', 'Android', TYPE_MOBILE ),
1920
  'http://gsm.lge.com/html/gsm/P880g-M10-D1.xml' => array( 'LG', 'Optimus 4X HD', 'Android', TYPE_MOBILE ),
1921
  'http://gsm.lge.com/html/gsm/P880g-M3-D1.xml' => array( 'LG', 'Optimus 4X HD', 'Android', TYPE_MOBILE ),
1922
+ 'http://device.sprintpcs.com/LG/L85C/LGL85CV1.rdf' => array( 'LG', 'Optimus Black', 'Android', TYPE_MOBILE ),
1923
  'http://gsm.lge.com/html/gsm/LG-P970-M3-D2.xml' => array( 'LG', 'Optimus Black', 'Android', TYPE_MOBILE ),
1924
  'http://gsm.lge.com/html/gsm/LG-P970-M6-D2.xml' => array( 'LG', 'Optimus Black', 'Android', TYPE_MOBILE ),
1925
  'http://gsm.lge.com/html/gsm/LG-P970h-M10-D1.xml' => array( 'LG', 'Optimus Black', 'Android', TYPE_MOBILE ),
1938
  'http://gsm.lge.com/html/gsm/P720-M3-D2.xml' => array( 'LG', 'Optimus Chic', 'Android', TYPE_MOBILE ),
1939
  'http://gsm.lge.com/html/gsm/P720h-M3-D2.xml' => array( 'LG', 'Optimus Chic', 'Android', TYPE_MOBILE ),
1940
  'http://gsm.lge.com/html/gsm/LGL38C-M12-D1.xml' => array( 'LG', 'Optimus Dynamic', 'Android', TYPE_MOBILE ),
1941
+ 'http://gsm.lge.com/html/gsm/L39C-M12-D1.xml' => array( 'LG', 'Optimus Dynamic II', 'Android', TYPE_MOBILE ),
1942
  'http://uaprof.vmobl.com/LG/VM696-VMUB/1.0/UAProf.xml' => array( 'LG', 'Optimus Elite', 'Android', TYPE_MOBILE ),
1943
  'http://gsm.lge.com/html/gsm/L40g-M6-D1.xml' => array( 'LG', 'Optimus Extreme', 'Android', TYPE_MOBILE ),
1944
  'http://device.sprintpcs.com/LG/LS720-Chameleon/latest' => array( 'LG', 'Optimus F3', 'Android', TYPE_MOBILE ),
1945
  'http://device.sprintpcs.com/LG/LS720-SPRINT/LS720Z06.rdf' => array( 'LG', 'Optimus F3', 'Android', TYPE_MOBILE ),
1946
  'http://device.sprintpcs.com/LG/LS720-VIRGIN/LS720ZV5.rdf' => array( 'LG', 'Optimus F3', 'Android', TYPE_MOBILE ),
1947
+ 'http://device.sprintpcs.com/LG/LS720-VIRGIN/LS720ZV6.rdf' => array( 'LG', 'Optimus F3', 'Android', TYPE_MOBILE ),
1948
  'http://gsm.lge.com/html/gsm/MS659-M10-D1.xml' => array( 'LG', 'Optimus F3', 'Android', TYPE_MOBILE ),
1949
  'http://gsm.lge.com/html/gsm/P659-M10-D1.xml' => array( 'LG', 'Optimus F3', 'Android', TYPE_MOBILE ),
1950
+ 'http://gsm.lge.com/html/gsm/D520-M10-D1.xml' => array( 'LG', 'Optimus F3Q', 'Android', TYPE_MOBILE ),
1951
  'http://gsm.lge.com/html/gsm/P875-M10-D1.xml' => array( 'LG', 'Optimus F5', 'Android', TYPE_MOBILE ),
1952
  'http://gsm.lge.com/html/gsm/P875-M3-D1.xml' => array( 'LG', 'Optimus F5', 'Android', TYPE_MOBILE ),
1953
  'http://gsm.lge.com/html/gsm/P875h-M3-D1.xml' => array( 'LG', 'Optimus F5', 'Android', TYPE_MOBILE ),
1954
  'http://gsm.lge.com/html/gsm/D500-M10-D1.xml' => array( 'LG', 'Optimus F6', 'Android', TYPE_MOBILE ),
1955
  'http://gsm.lge.com/html/gsm/D505-M3-D1.xml' => array( 'LG', 'Optimus F6', 'Android', TYPE_MOBILE ),
1956
+ 'http://gsm.lge.com/html/gsm/MS500-M10-D1.xml' => array( 'LG', 'Optimus F6', 'Android', TYPE_MOBILE ),
1957
  'http://device.sprintpcs.com/LG/LG870-BOOST/LG870ZV1.rdf' => array( 'LG', 'Optimus F7', 'Android', TYPE_MOBILE ),
1958
  'http://device.sprintpcs.com/LG/LG870-BOOST/LG870ZV4.rdf' => array( 'LG', 'Optimus F7', 'Android', TYPE_MOBILE ),
1959
+ 'http://device.sprintpcs.com/LG/LG870-BOOST/LG870ZV5.rdf' => array( 'LG', 'Optimus F7', 'Android', TYPE_MOBILE ),
1960
  'http://device.sprintpcs.com/LG/LG870-Chameleon/latest' => array( 'LG', 'Optimus F7', 'Android', TYPE_MOBILE ),
1961
  'http://device.sprintpcs.com/LG/LG870-SPRINT/LG870ZV4.rdf' => array( 'LG', 'Optimus F7', 'Android', TYPE_MOBILE ),
1962
+ 'http://mms.ntwls.net/uaprofs/AS780.xml' => array( 'LG', 'Optimus F7', 'Android', TYPE_MOBILE ),
1963
+ 'http://uaprof.ntelospcs.net/AS780.xml' => array( 'LG', 'Optimus F7', 'Android', TYPE_MOBILE ),
1964
  'http://device.sprintpcs.com/LG/LS970-2011011301/LS970ZVC.rdf' => array( 'LG', 'Optimus G', 'Android', TYPE_MOBILE ),
1965
  'http://device.sprintpcs.com/LG/LS970-Chameleon/latest' => array( 'LG', 'Optimus G', 'Android', TYPE_MOBILE ),
1966
  'http://device.sprintpcs.com/LG/LS970-SPRINT/LS970ZV7.rdf' => array( 'LG', 'Optimus G', 'Android', TYPE_MOBILE ),
1984
  'http://gsm.lge.com/html/gsm/E976-M3-D1.xml' => array( 'LG', 'Optimus G', 'Android', TYPE_MOBILE ),
1985
  'http://gsm.lge.com/html/gsm/E977-M3-D1.xml' => array( 'LG', 'Optimus G', 'Android', TYPE_MOBILE ),
1986
  'http://gsm.lge.com/html/gsm/E987-M3-D1.xml' => array( 'LG', 'Optimus G', 'Android', TYPE_MOBILE ),
1987
+ 'http://gsm.lge.com/html/gsm/980 4G-M12-D1.xml' => array( 'LG', 'Optimus G Pro', 'Android', TYPE_MOBILE ),
1988
+ 'http://gsm.lge.com/html/gsm/E980-M10-D1-KK.xml' => array( 'LG', 'Optimus G Pro', 'Android', TYPE_MOBILE ),
1989
  'http://gsm.lge.com/html/gsm/E980-M10-D1.xml' => array( 'LG', 'Optimus G Pro', 'Android', TYPE_MOBILE ),
1990
  'http://gsm.lge.com/html/gsm/E980h-M10-D1.xml' => array( 'LG', 'Optimus G Pro', 'Android', TYPE_MOBILE ),
1991
  'http://gsm.lge.com/html/gsm/E980h-M3-D1.xml' => array( 'LG', 'Optimus G Pro', 'Android', TYPE_MOBILE ),
1992
+ 'http://gsm.lge.com/html/gsm/E981h-M3-D1.xml' => array( 'LG', 'Optimus G Pro', 'Android', TYPE_MOBILE ),
1993
  'http://gsm.lge.com/html/gsm/E985-M3-D1.xml' => array( 'LG', 'Optimus G Pro', 'Android', TYPE_MOBILE ),
1994
+ 'http://gsm.lge.com/html/gsm/E985T-M3-D1.xml' => array( 'LG', 'Optimus G Pro', 'Android', TYPE_MOBILE ),
1995
  'http://gsm.lge.com/html/gsm/E986-M3-D1.xml' => array( 'LG', 'Optimus G Pro', 'Android', TYPE_MOBILE ),
1996
+ 'http://gsm.lge.com/html/gsm/E988-M3-D1-KK.xml' => array( 'LG', 'Optimus G Pro', 'Android', TYPE_MOBILE ),
1997
  'http://gsm.lge.com/html/gsm/E988-M3-D1.xml' => array( 'LG', 'Optimus G Pro', 'Android', TYPE_MOBILE ),
1998
  'http://gsm.lge.com/html/gsm/E989-M3-D1.xml' => array( 'LG', 'Optimus G Pro', 'Android', TYPE_MOBILE ),
1999
+ 'http://gsm.lge.com/html/gsm/F240L-M3-D1-KK.xml' => array( 'LG', 'Optimus G Pro', 'Android', TYPE_MOBILE ),
2000
  'http://gsm.lge.com/html/gsm/VS980-M10-D1.xml' => array( 'LG', 'Optimus G Pro', 'Android', TYPE_MOBILE ),
2001
  'http://gsm.lge.com/html/gsm/GT540.xml' => array( 'LG', 'Optimus GT540', 'Android', TYPE_MOBILE ),
2002
  'http://gsm.lge.com/html/gsm/GT540f_M3_D1_J.xml' => array( 'LG', 'Optimus GT540', 'Android', TYPE_MOBILE ),
2035
  'http://gsm.lge.com/html/gsm/E435f-M3-D1.xml' => array( 'LG', 'Optimus L3 II Dual', 'Android', TYPE_MOBILE ),
2036
  'http://gsm.lge.com/html/gsm/E440-M3-D1.xml' => array( 'LG', 'Optimus L4 II', 'Android', TYPE_MOBILE ),
2037
  'http://gsm.lge.com/html/gsm/E440g-M10-D1.xml' => array( 'LG', 'Optimus L4 II', 'Android', TYPE_MOBILE ),
2038
+ 'http://gsm.lge.com/html/gsm/E465g-M3-D1.xml' => array( 'LG', 'Optimus L4 II', 'Android', TYPE_MOBILE ),
2039
  'http://gsm.lge.com/html/gsm/E445-M3-D1.xml' => array( 'LG', 'Optimus L4 II Dual', 'Android', TYPE_MOBILE ),
2040
  'http://gsm.lge.com/html/gsm/E470f-M3-D1.xml' => array( 'LG', 'Optimus L4 II Triple', 'Android', TYPE_MOBILE ),
2041
  'http://gsm.lge.com/html/gsm/E610-M10-D1.xml' => array( 'LG', 'Optimus L5', 'Android', TYPE_MOBILE ),
2048
  'http://gsm.lge.com/html/gsm/E615-M3-D1.xml' => array( 'LG', 'Optimus L5 Dual', 'Android', TYPE_MOBILE ),
2049
  'http://gsm.lge.com/html/gsm/E615f-M3-D1.xml' => array( 'LG', 'Optimus L5 Dual', 'Android', TYPE_MOBILE ),
2050
  'http://gsm.lge.com/html/gsm/E450-M3-D1.xml' => array( 'LG', 'Optimus L5 II', 'Android', TYPE_MOBILE ),
2051
+ 'http://gsm.lge.com/html/gsm/E450B-M6-D1.xml' => array( 'LG', 'Optimus L5 II', 'Android', TYPE_MOBILE ),
2052
  'http://gsm.lge.com/html/gsm/E450f-M10-D1.xml' => array( 'LG', 'Optimus L5 II', 'Android', TYPE_MOBILE ),
2053
  'http://gsm.lge.com/html/gsm/E450f-M3-D1.xml' => array( 'LG', 'Optimus L5 II', 'Android', TYPE_MOBILE ),
2054
+ 'http://gsm.lge.com/html/gsm/E460-M10-D1.xml' => array( 'LG', 'Optimus L5 II', 'Android', TYPE_MOBILE ),
2055
  'http://gsm.lge.com/html/gsm/E460-M3-D1.xml' => array( 'LG', 'Optimus L5 II', 'Android', TYPE_MOBILE ),
2056
  'http://gsm.lge.com/html/gsm/E460-M5-D1.xml' => array( 'LG', 'Optimus L5 II', 'Android', TYPE_MOBILE ),
2057
+ 'http://gsm.lge.com/html/gsm/E460-M6-D1.xml' => array( 'LG', 'Optimus L5 II', 'Android', TYPE_MOBILE ),
2058
  'http://gsm.lge.com/html/gsm/E460f-M3-D1.xml' => array( 'LG', 'Optimus L5 II', 'Android', TYPE_MOBILE ),
2059
+ 'http://gsm.lge.com/html/gsm/E455-M3-D1-KK.xml' => array( 'LG', 'Optimus L5 II Dual', 'Android', TYPE_MOBILE ),
2060
  'http://gsm.lge.com/html/gsm/E455-M3-D1.xml' => array( 'LG', 'Optimus L5 II Dual', 'Android', TYPE_MOBILE ),
2061
  'http://gsm.lge.com/html/gsm/E455f-M3-D1.xml' => array( 'LG', 'Optimus L5 II Dual', 'Android', TYPE_MOBILE ),
2062
  'http://gsm.lge.com/html/gsm/P700-M3-D1.xml' => array( 'LG', 'Optimus L7', 'Android', TYPE_MOBILE ),
2063
+ 'http://gsm.lge.com/html/gsm/P700-M6-D2.xml' => array( 'LG', 'Optimus L7', 'Android', TYPE_MOBILE ),
2064
  'http://gsm.lge.com/html/gsm/P705-M3-D1.xml' => array( 'LG', 'Optimus L7', 'Android', TYPE_MOBILE ),
2065
  'http://gsm.lge.com/html/gsm/P705-M6-D2.xml' => array( 'LG', 'Optimus L7', 'Android', TYPE_MOBILE ),
2066
  'http://gsm.lge.com/html/gsm/P705f-M3-D1.xml' => array( 'LG', 'Optimus L7', 'Android', TYPE_MOBILE ),
2088
  'http://gsm.lge.com/html/gsm/P769-M10-D1.xml' => array( 'LG', 'Optimus L9', 'Android', TYPE_MOBILE ),
2089
  'http://gsm.lge.com/html/gsm/P769-M3-D1.xml' => array( 'LG', 'Optimus L9', 'Android', TYPE_MOBILE ),
2090
  'http://gsm.lge.com/html/gsm/P778-M3-D1.xml' => array( 'LG', 'Optimus L9', 'Android', TYPE_MOBILE ),
2091
+ 'http://gsm.lge.com/html/gsm/D605-M3-D1-KK.xml' => array( 'LG', 'Optimus L9 II', 'Android', TYPE_MOBILE ),
2092
  'http://gsm.lge.com/html/gsm/D605-M3-D1.xml' => array( 'LG', 'Optimus L9 II', 'Android', TYPE_MOBILE ),
2093
+ 'http://gsm.lge.com/html/gsm/D605-M5-D1-KK.xml' => array( 'LG', 'Optimus L9 II', 'Android', TYPE_MOBILE ),
2094
  'http://gsm.lge.com/html/gsm/P935-M10-D1-ICS.xml' => array( 'LG', 'Optimus LTE', 'Android', TYPE_MOBILE ),
2095
  'http://gsm.lge.com/html/gsm/P935-M10-D1.xml' => array( 'LG', 'Optimus LTE', 'Android', TYPE_MOBILE ),
2096
  'http://gsm.lge.com/html/gsm/P936-M3-D1.xml' => array( 'LG', 'Optimus LTE', 'Android', TYPE_MOBILE ),
2132
  'http://uaprof.vmobl.com/lg/vm670/1.0/VMU_VM670_UAProf.xml' => array( 'LG', 'Optimus V', 'Android', TYPE_MOBILE ),
2133
  'http://gsm.lge.com/html/gsm/P895-M6-D2.xml' => array( 'LG', 'Optimus Vu', 'Android', TYPE_MOBILE ),
2134
  'http://gsm.lge.com/html/gsm/P895qb-M10-D1.xml' => array( 'LG', 'Optimus Vu', 'Android', TYPE_MOBILE ),
2135
+ 'http://gsm.lge.com/html/gsm/P895qb-M6-D2.xml' => array( 'LG', 'Optimus Vu', 'Android', TYPE_MOBILE ),
2136
  'http://gsm.lge.com/html/gsm/P505-M6-D1.xml' => array( 'LG', 'Phoenix', 'Android', TYPE_MOBILE ),
2137
  'http://gsm.lge.com/html/gsm/P505R-M6-D1.xml' => array( 'LG', 'Phoenix', 'Android', TYPE_MOBILE ),
2138
  'http://device.sprintpcs.com/LG/PLS225/WL225V04.rdf' => array( 'LG', 'PLS225', NULL, TYPE_MOBILE ),
2173
  'http://gsm.lge.com/html/gsm/P925-M6-D1.xml' => array( 'LG', 'Thrill', 'Android', TYPE_MOBILE ),
2174
  'http://gsm.lge.com/html/gsm/P925g-M6-D1-ICS.xml' => array( 'LG', 'Thrill', 'Android', TYPE_MOBILE ),
2175
  'http://gsm.lge.com/html/gsm/P925g-M6-D1.xml' => array( 'LG', 'Thrill', 'Android', TYPE_MOBILE ),
2176
+ 'http://gsm.lge.com/html/gsm/LG-C333-M3-D1.xml' => array( 'LG', 'Tri Chip C333', NULL, TYPE_MOBILE ),
2177
  'http://gsm.lge.com/html/gsm/LG-TU575.xml' => array( 'LG', 'TU575', NULL, TYPE_MOBILE ),
2178
  'http://gsm.lge.com/html/gsm/LG-TU720.xml' => array( 'LG', 'TU720 Shine', NULL, TYPE_MOBILE ),
2179
  'http://gsm.lge.com/html/gsm/LG-TU915.xml' => array( 'LG', 'TU915 Vu', NULL, TYPE_MOBILE ),
2203
  'http://uaprof.vtext.com/lg/vx9400/vx9400.xml' => array( 'LG', 'VX9400', NULL, TYPE_MOBILE ),
2204
  'http://uaprof.vtext.com/lg/vx9700/vx9700.xml' => array( 'LG', 'VX9700 Dare', NULL, TYPE_MOBILE ),
2205
  'http://uaprof.vtext.com/lg/vx9900/vx9900.xml' => array( 'LG', 'VX9900 enV', NULL, TYPE_MOBILE ),
2206
+ 'http://gsm.lge.com/html/gsm/31L-M10-D1.xml' => array( 'LG', 'X3', 'Android', TYPE_MOBILE ),
2207
+ 'http://gsm.lge.com/html/gsm/LG-UAP-X330-v0.1.xml' => array( 'LG', 'X330T', NULL, TYPE_MOBILE ),
2208
  'http://www.m4tel.com/product/profiles/uaprof/M4TEL_SS990GPRS.xml' => array( 'M4Tel', 'E-Motion', 'Android', TYPE_MOBILE ),
2209
  'http://www.m4tel.com/product/profiles/uaprof/M4TEL_SS550GPRS.xml' => array( 'M4Tel', 'Genius', 'Android', TYPE_MOBILE ),
2210
  'http://www.m4tel.com/product/profiles/uaprof/M4TEL_SS880GPRS.xml' => array( 'M4Tel', 'Mirage', 'Android', TYPE_MOBILE ),
2211
  'http://www.m4tel.com/product/profiles/uaprof/M4_SS1090GPRS.xml' => array( 'M4Tel', 'SS1090', 'Android', TYPE_MOBILE ),
2212
+ 'http://www.zte.com.cn/mobile/uaprof/ZTE-SKATE.xml, http://www.zte.com.cn/mobile/uaprof/ZTE-SKATE.xml'=> array( 'Medion', 'Life P4310', 'Android', TYPE_MOBILE ),
2213
+ 'http://www.zte.com.cn/mobile/uaprof/MT7A.xml' => array( 'MegaFon', 'Login', 'Android', TYPE_TABLET ),
2214
  'http://www.zte.com.cn/mobile/uaprof/MegaFon_V9+.xml' => array( 'MegaFon', 'V9+', 'Android', TYPE_MOBILE ),
2215
  'http://www-ccpp.tcl-ta.com/files/smart_a17.xml' => array( 'MEO', 'Smart A17', 'Android', TYPE_MOBILE ),
2216
+ 'http://www.oppo.com/resource/UA-PROF/OPPOA110Q.xml' => array( 'Micromax', 'A110 Canvas 2', 'Android', TYPE_MOBILE ),
2217
+ 'http://www.1066.cn/uaprof/prof/Micromax/Micromax_A177.xml' => array( 'Micromax', 'A177 Canvas Juice', 'Android', TYPE_MOBILE ),
2218
+ 'http://www.bluhelp.com/upload/xmlfiles/ADVANCE4.0.xml' => array( 'Micromax', 'A47 Bolt', 'Android', TYPE_MOBILE ),
2219
  'http://ibu.joy3g.org/ibu/MCX_A54_20121119_ua.xml' => array( 'Micromax', 'A54 Ninja', 'Android', TYPE_MOBILE ),
2220
  'http://ibu.joy3g.org/ibu/MCX_A56_20120522_ua.xml' => array( 'Micromax', 'A56 Ninja 2', 'Android', TYPE_MOBILE ),
2221
  'http://ibu.joy3g.org/ibu/MCX_A57_20120725_ua.xml' => array( 'Micromax', 'A57 Ninja 3', 'Android', TYPE_MOBILE ),
2230
  'http://www.mitsubishi-telecom.com/profiles/mt560.ua' => array( 'Mitsubishi', 'Trium M 320', NULL, TYPE_MOBILE ),
2231
  'http://imatemms.imate.com/gen/UAProf_JAMA_v1.xml' => array( 'MobileXP', 'JAMA', NULL, TYPE_MOBILE ),
2232
  'http://asmobile.ehosting.com.tw/uaprof/Virgin_1.xml' => array( 'Modelabs', 'Virgin', NULL, TYPE_MOBILE ),
2233
+ 'http://www.zte.com.cn/mobile/uaprof/moii_E598.xml' => array( 'moii', 'E598', 'Android', TYPE_MOBILE ),
2234
  'http://www.zte.com.cn/mobile/uaprof/Momodesign_MD_Droid.xml' => array( 'Momodesign', 'MD Droid', 'Android', TYPE_MOBILE ),
2235
  'http://motorola.handango.com/phoneconfig/a1000/Profile/a1000.rdf' => array( 'Motorola', 'A1000', 'UIQ', TYPE_MOBILE ),
2236
  'http://nmsc.ctvap.cn/uaprof/MOT/MOT_A3300c_4_20091029.xml' => array( 'Motorola', 'A3300', 'Windows Mobile', TYPE_MOBILE ),
2303
  'http://uaprof.motorola.com/phoneconfig/em30/Profile/em30.rdf' => array( 'Motorola', 'EM30', NULL, TYPE_MOBILE ),
2304
  'http://uaprof.motorola.com/phoneconfig/em325/Profile/em325.rdf' => array( 'Motorola', 'EM325', NULL, TYPE_MOBILE ),
2305
  'http://uaprof.motorola.com/phoneconfig/es405b/Profile/es405b.rdf' => array( 'Motorola', 'ES405B', 'Windows Mobile', TYPE_MOBILE ),
2306
+ 'http://uaprof.motorola.com/phoneconfig/ex116/Profile/ex116.rdf' => array( 'Motorola', 'EX116', NULL, TYPE_MOBILE ),
2307
  'http://uaprof.motorola.com/phoneconfig/ex128/Profile/EX128_27390a3c7426da5686f20302b82926e1.rdf' => array( 'Motorola', 'EX128', NULL, TYPE_MOBILE ),
2308
  'http://uaprof.motorola.com/phoneconfig/ex226/Profile/ex226.rdf' => array( 'Motorola', 'EX226', 'MTK', TYPE_MOBILE ),
2309
  'http://uaprof.motorola.com/phoneconfig/xt311/Profile/xt311.rdf' => array( 'Motorola', 'FIRE', 'Android', TYPE_MOBILE ),
2322
  'http://motorola.handango.com/phoneconfig/K3/Profile/K3.rdf' => array( 'Motorola', 'KRZR K3', NULL, TYPE_MOBILE ),
2323
  'http://motorola.handango.com/phoneconfig/l6/Profile/l6.rdf' => array( 'Motorola', 'L6', NULL, TYPE_MOBILE ),
2324
  'http://motorola.handango.com/phoneconfig/l6i/Profile/l6i.rdf' => array( 'Motorola', 'L6i', NULL, TYPE_MOBILE ),
2325
+ 'http://device.sprintpcs.com/Motorola/MOTOXT603/' => array( 'Motorola', 'Master XT605', 'Android', TYPE_MOBILE ),
2326
  'http://uaprof.motorola.com/phoneconfig/MotoXT605/profile/MotoXT605.rdf' => array( 'Motorola', 'Master XT605', 'Android', TYPE_MOBILE ),
2327
+ 'http://uaprof.motorola.com/phoneconfig/mc65/Profile/mc65.rdf' => array( 'Motorola', 'MC65 Wireless Rugged Mobile Computer', 'Windows Mobile', TYPE_MOBILE ),
2328
  'http://uaprof.motorola.com/phoneconfig/milestonext720/Profile/milestonext720.rdf' => array( 'Motorola', 'Milestone', 'Android', TYPE_MOBILE ),
2329
  'http://uaprof.motorola.com/phoneconfig/MotoA953/profile/MotoA953.rdf' => array( 'Motorola', 'Milestone 2', 'Android', TYPE_MOBILE ),
2330
  'http://uaprof.motorola.com/phoneconfig/MotoA953/profile/MotoA953GB.rdf' => array( 'Motorola', 'Milestone 2', 'Android', TYPE_MOBILE ),
2343
  'http://uaprof.motorola.com/phoneconfig/motoxt626/Profile/Motoxt626.rdf' => array( 'Motorola', 'MOTO XT626', 'Android', TYPE_MOBILE ),
2344
  'http://nmsc.ctvap.cn/uaprof/MOT/MOT_XT681_1_20110930.XML' => array( 'Motorola', 'MOTO XT681', 'Android', TYPE_MOBILE ),
2345
  'http://nmsc.ctvap.cn/uaprof/MOT/MOT_XT681_1_20111012.XML' => array( 'Motorola', 'MOTO XT681', 'Android', TYPE_MOBILE ),
2346
+ 'http://uaprof.qma.com.tw/Motorola-XT681.xml' => array( 'Motorola', 'MOTO XT681', 'Android', TYPE_MOBILE ),
2347
  'http://uaprof.motorola.com/phoneconfig/xt685/Profile/xt685.rdf' => array( 'Motorola', 'MOTO XT685', 'Android', TYPE_MOBILE ),
2348
  'http://uaprof.motorola.com/phoneconfig/motomb860/Profile/motoxt882.rdf' => array( 'Motorola', 'MOTO XT882', 'Android', TYPE_MOBILE ),
2349
  'http://uaprof.motorola.com/phoneconfig/w450/profile/w450.rdf' => array( 'Motorola', 'MOTOACTV W450', NULL, TYPE_MOBILE ),
2386
  'http://uaprof.motorola.com/phoneconfig/motoxt890/Profile/motoxt890.rdf' => array( 'Motorola', 'RAZR i', 'Android', TYPE_MOBILE ),
2387
  'http://uaprof.motorola.com/phoneconfig/motoxt890/Profile/motoxt890_jb.rdf' => array( 'Motorola', 'RAZR i', 'Android', TYPE_MOBILE ),
2388
  'http://uaprof.motorola.com/phoneconfig/mt781/Profile/mt781.rdf' => array( 'Motorola', 'RAZR i', 'Android', TYPE_MOBILE ),
2389
+ 'http://uaprof.ntelospcs.net/motoxt908.xml' => array( 'Motorola', 'RAZR MAXX', 'Android', TYPE_MOBILE ),
2390
  'http://nmsc.ctvap.cn/uaprof/MOT/MOT_XT889_1_20120217.XML' => array( 'Motorola', 'RAZR V', 'Android', TYPE_MOBILE ),
2391
  'http://uaprof.motorola.com/phoneconfig/mt887/Profile/mt887.rdf' => array( 'Motorola', 'RAZR V', 'Android', TYPE_MOBILE ),
2392
  'http://uaprof.motorola.com/phoneconfig/xt885/Profile/xt885.rdf' => array( 'Motorola', 'RAZR V', 'Android', TYPE_MOBILE ),
2464
  'http://www-ccpp.tcl-ta.com/files/MTC_968.xml' => array( 'MTC', '968', 'Android', TYPE_MOBILE ),
2465
  'http://www-ccpp.tcl-ta.com/files/MTC_970.xml' => array( 'MTC', '970', 'Android', TYPE_MOBILE ),
2466
  'http://www-ccpp.tcl-ta.com/files/MTC_970H.xml' => array( 'MTC', '970H', 'Android', TYPE_MOBILE ),
2467
+ 'http://www-ccpp.tcl-ta.com/files/MTC_972.xml' => array( 'MTC', '972', 'Android', TYPE_MOBILE ),
2468
+ 'http://www-ccpp.tcl-ta.com/files/MTC_975.xml' => array( 'MTC', '975', 'Android', TYPE_MOBILE ),
2469
+ 'http://tpsolution.ru/uaprof/MTC980.xml' => array( 'MTC', '980', 'Android', TYPE_MOBILE ),
2470
+ 'http://tpsolution.ru/uaprof/MTC982O.xml' => array( 'MTC', '982O', 'Android', TYPE_MOBILE ),
2471
  'http://wap1.huawei.com/uaprof/HuaweiU8160GPRS-MTS.xml' => array( 'MTS', 'Mini', 'Android', TYPE_MOBILE ),
2472
  'http://www.nechdm.com/profiles/232/a232.rdf' => array( 'NEC', 'A232', NULL, TYPE_MOBILE ),
2473
  'http://www.nechdm.com/profiles/525/a525.rdf' => array( 'NEC', 'A525', NULL, TYPE_MOBILE ),
2512
  'http://nds1.nds.nokia.com/uaprof/N1680c-2r100.xml' => array( 'Nokia', '1680 classic', NULL, TYPE_MOBILE ),
2513
  'http://nds1.nds.nokia.com/uaprof/Nokia2052r100.xml' => array( 'Nokia', '2052', 'Series40', TYPE_MOBILE ),
2514
  'http://nds1.nds.nokia.com/uaprof/Nokia2055r100.xml' => array( 'Nokia', '2055', 'Series40', TYPE_MOBILE ),
2515
+ 'http://nds1.nds.nokia.com/uaprof/Nokia2060r100.xml' => array( 'Nokia', '2060', 'Series40', TYPE_MOBILE ),
2516
  'http://nds1.nds.nokia.com/uaprof/Nokia208.1r100.xml' => array( 'Nokia', '208', 'Series40', TYPE_MOBILE ),
2517
+ 'http://nds1.nds.nokia.com/uaprof/Nokia208.3r100.xml' => array( 'Nokia', '208', 'Series40', TYPE_MOBILE ),
2518
+ 'http://nds1.nds.nokia.com/uaprof/Nokia208.4r100.xml' => array( 'Nokia', '208', 'Series40', TYPE_MOBILE ),
2519
+ 'http://nds1.nds.nokia.com/uaprof/Nokia208r100.xml' => array( 'Nokia', '208', 'Series40', TYPE_MOBILE ),
2520
  'http://nds1.nds.nokia.com/uaprof/Nokia210.2r100.xml' => array( 'Nokia', '210', 'Series40', TYPE_MOBILE ),
2521
  'http://nds1.nds.nokia.com/uaprof/N2322cr100.xml' => array( 'Nokia', '2322 classic', 'Series40', TYPE_MOBILE ),
2522
  'http://nds1.nds.nokia.com/uaprof/N2600c-2r100.xml' => array( 'Nokia', '2600 classic', 'Series40', TYPE_MOBILE ),
2524
  'http://nds.nokia.com/uaprof/N2610r100.xml' => array( 'Nokia', '2610', 'Series40', TYPE_MOBILE ),
2525
  'http://nds.nokia.com/uaprof/N2626r100.xml' => array( 'Nokia', '2626', 'Series40', TYPE_MOBILE ),
2526
  'http://nds.nokia.com/uaprof/N2630r100.xml' => array( 'Nokia', '2630', 'Series40', TYPE_MOBILE ),
2527
+ 'http://nds1.nds.nokia.com/uaprof/N2630r100.xml' => array( 'Nokia', '2630', NULL, TYPE_MOBILE ),
2528
  'http://nds.nokia.com/uaprof/N2650r100.xml' => array( 'Nokia', '2650', 'Series40', TYPE_MOBILE ),
2529
  'http://nds.nokia.com/uaprof/N2650r200.xml' => array( 'Nokia', '2650', 'Series40', TYPE_MOBILE ),
2530
  'http://nds.nokia.com/uaprof/N2650r300.xml' => array( 'Nokia', '2650', 'Series40', TYPE_MOBILE ),
2533
  'http://nds1.nds.nokia.com/uaprof/N2690r100.xml' => array( 'Nokia', '2690', 'Series40', TYPE_MOBILE ),
2534
  'http://nds1.nds.nokia.com/uaprof/N2692r100.xml' => array( 'Nokia', '2692', 'Series40', TYPE_MOBILE ),
2535
  'http://nds1.nds.nokia.com/uaprof/N2700c-2r100.xml' => array( 'Nokia', '2700 classic', 'Series40', TYPE_MOBILE ),
2536
+ 'http://nds1.nds.nokia.com/uaprof/N2700cr100.xml' => array( 'Nokia', '2700 classic', 'Series40', TYPE_MOBILE ),
2537
+ 'http://nds1.nds.nokia.com/uaprof/N2710c-2r100.xml' => array( 'Nokia', '2710', 'Series40', TYPE_MOBILE ),
2538
  'http://nds1.nds.nokia.com/uaprof/N2720ar100.xml' => array( 'Nokia', '2720 fold', 'Series40', TYPE_MOBILE ),
2539
  'http://nds1.nds.nokia.com/uaprof/N2730c-1br100.xml' => array( 'Nokia', '2730 classic', 'Series40', TYPE_MOBILE ),
2540
  'http://nds1.nds.nokia.com/uaprof/N2730c-1r100.xml' => array( 'Nokia', '2730 classic', 'Series40', TYPE_MOBILE ),
2541
+ 'http://nds1.nds.nokia.com/uaprof/N2730cr100.xml' => array( 'Nokia', '2730 classic', 'Series40', TYPE_MOBILE ),
2542
  'http://nds.nokia.com/uaprof/N2760r100.xml' => array( 'Nokia', '2760', 'Series40', TYPE_MOBILE ),
2543
+ 'http://nds1.nds.nokia.com/uaprof/3000r100.xml' => array( 'Nokia', '3000', NULL, TYPE_MOBILE ),
2544
  'http://nds1.nds.nokia.com/uaprof/Nokia301.1r100.xml' => array( 'Nokia', '301', 'Series40', TYPE_MOBILE ),
2545
  'http://nds1.nds.nokia.com/uaprof/Nokia301r100.xml' => array( 'Nokia', '301', 'Series40', TYPE_MOBILE ),
2546
  'http://nds1.nds.nokia.com/uaprof/Nokia3020r100.xml' => array( 'Nokia', '3020', 'Series40', TYPE_MOBILE ),
2621
  'http://nds.nokia.com/uaprof/N5140r100.xml' => array( 'Nokia', '5140', 'Series40', TYPE_MOBILE ),
2622
  'http://nds.nokia.com/uaprof/N5140ir100.xml' => array( 'Nokia', '5140i', 'Series40', TYPE_MOBILE ),
2623
  'http://nds.nokia.com/uaprof/N5140ir200.xml' => array( 'Nokia', '5140i', 'Series40', TYPE_MOBILE ),
2624
+ 'http://nds1.nds.nokia.com/uaprof/Nokia515.2r100.xml' => array( 'Nokia', '515', 'Series40', TYPE_MOBILE ),
2625
  'http://nds.nokia.com/uaprof/N5200r100.xml' => array( 'Nokia', '5200', 'Series40', TYPE_MOBILE ),
2626
  'http://nds1.nds.nokia.com/uaprof/N5200r100.xml' => array( 'Nokia', '5200', 'Series40', TYPE_MOBILE ),
2627
  'http://nds.nokia.com/uaprof/N5210r100.xml' => array( 'Nokia', '5210', NULL, TYPE_MOBILE ),
2650
  'http://nds1.nds.nokia.com/uaprof/N5300r100.xml' => array( 'Nokia', '5300 XpressMusic', 'Series40', TYPE_MOBILE ),
2651
  'http://nds.nokia.com/uaprof/N5310r100.xml' => array( 'Nokia', '5310 XpressMusic', 'Series40', TYPE_MOBILE ),
2652
  'http://nds.nokia.com/uaprof/N5310XpressMusicr100.xml' => array( 'Nokia', '5310 XpressMusic', 'Series40', TYPE_MOBILE ),
2653
+ 'http://nds1.nds.nokia.com/uaprof/N5310r100.xml' => array( 'Nokia', '5310 XpressMusic', 'Series40', TYPE_MOBILE ),
2654
  'http://nds1.nds.nokia.com/uaprof/N5310XpressMusicr100.xml' => array( 'Nokia', '5310 XpressMusic', 'Series40', TYPE_MOBILE ),
2655
  'http://nds1.nds.nokia.com/uaprof/N5310XpressMusicVFr100.xml' => array( 'Nokia', '5310 XpressMusic', 'Series40', TYPE_MOBILE ),
2656
  'http://nds1.nds.nokia.com/uaprof/N5320c-1r100-3G.xml' => array( 'Nokia', '5320 XpressMusic', 'Series60', TYPE_MOBILE ),
2689
  'http://nds1.nds.nokia.com/uaprof/N603r300.xml' => array( 'Nokia', '603', 'Series60', TYPE_MOBILE ),
2690
  'http://nds.nokia.com/uaprof/N6030r100.xml' => array( 'Nokia', '6030', 'Series40', TYPE_MOBILE ),
2691
  'http://nds1.nds.nokia.com/uaprof/N6030br100.xml' => array( 'Nokia', '6030', NULL, TYPE_MOBILE ),
2692
+ 'http://nds1.nds.nokia.com/uaprof/N6030r100.xml' => array( 'Nokia', '6030', NULL, TYPE_MOBILE ),
2693
  'http://nds.nokia.com/uaprof/N6030br100.xml' => array( 'Nokia', '6030b', 'Series40', TYPE_MOBILE ),
2694
  'http://nds.nokia.com/uaprof/N6060r100.xml' => array( 'Nokia', '6060', 'Series40', TYPE_MOBILE ),
2695
  'http://nds.nokia.com/uaprof/N6060vr100.xml' => array( 'Nokia', '6060v', 'Series40', TYPE_MOBILE ),
2728
  'http://nds.nokia.com/uaprof/N6120cr100.xml' => array( 'Nokia', '6120 classic', 'Series60', TYPE_MOBILE ),
2729
  'http://nds1.nds.nokia.com/uaprof/N6120c-1r100-2G.xml' => array( 'Nokia', '6120 classic', 'Series60', TYPE_MOBILE ),
2730
  'http://nds1.nds.nokia.com/uaprof/N6120c-1r100-3G.xml' => array( 'Nokia', '6120 classic', 'Series60', TYPE_MOBILE ),
2731
+ 'http://nds1.nds.nokia.com/uaprof/N6120c-1r100-CV2G.xml' => array( 'Nokia', '6120 classic', 'Series60', TYPE_MOBILE ),
2732
  'http://nds1.nds.nokia.com/uaprof/N6120cr100.xml' => array( 'Nokia', '6120 classic', 'Series60', TYPE_MOBILE ),
2733
  'http://nds1.nds.nokia.com/uaprof/N6122cr100.xml' => array( 'Nokia', '6122 classic', 'Series60', TYPE_MOBILE ),
2734
  'http://nds1.nds.nokia.com/uaprof/N6124cr100-3G.xml' => array( 'Nokia', '6124 classic', 'Series60', TYPE_MOBILE ),
2801
  'http://nds.nokia.com/uaprof/N6233r500_3G.xml' => array( 'Nokia', '6233', 'Series40', TYPE_MOBILE ),
2802
  'http://nds.nokia.com/uaprof/N6233r501.xml' => array( 'Nokia', '6233', 'Series40', TYPE_MOBILE ),
2803
  'http://nds.nokia.com/uaprof/N6233r501_3G.xml' => array( 'Nokia', '6233', 'Series40', TYPE_MOBILE ),
2804
+ 'http://nds1.nds.nokia.com/uaprof/N6233r200.xml' => array( 'Nokia', '6233', 'Series40', TYPE_MOBILE ),
2805
  'http://nds1.nds.nokia.com/uaprof/N6233r500.xml' => array( 'Nokia', '6233', 'Series40', TYPE_MOBILE ),
2806
  'http://nds1.nds.nokia.com/uaprof/N6233r500_3G.xml' => array( 'Nokia', '6233', 'Series40', TYPE_MOBILE ),
2807
  'http://nds.nokia.com/uaprof/N6234r100.xml' => array( 'Nokia', '6234', 'Series40', TYPE_MOBILE ),
2905
  'http://nds.nokia.com/uaprof/N6301r100.xml' => array( 'Nokia', '6301', 'Series40', TYPE_MOBILE ),
2906
  'http://nds1.nds.nokia.com/uaprof/N6301r100.xml' => array( 'Nokia', '6301', 'Series40', TYPE_MOBILE ),
2907
  'http://nds1.nds.nokia.com/uaprof/N6303classicr100.xml' => array( 'Nokia', '6303 classic', 'Series40', TYPE_MOBILE ),
2908
+ 'http://nds1.nds.nokia.com/uaprof/N6303cr100.xml' => array( 'Nokia', '6303 classic', 'Series40', TYPE_MOBILE ),
2909
  'http://nds1.nds.nokia.com/uaprof/N6303iclassicr100.xml' => array( 'Nokia', '6303i classic', 'Series40', TYPE_MOBILE ),
2910
  'http://uaprof.vtext.com/nokia/6305/6305v1.xml' => array( 'Nokia', '6305i', NULL, TYPE_MOBILE ),
2911
  'http://nds.nokia.com/uaprof/N6310r100.xml' => array( 'Nokia', '6310', NULL, TYPE_MOBILE ),
2967
  'http://nds1.nds.nokia.com/uaprof/Nokia6710sr100-3G.xml' => array( 'Nokia', '6710 Navigator', 'Series60', TYPE_MOBILE ),
2968
  'http://nds1.nds.nokia.com/uaprof/Nokia6720cr100.xml' => array( 'Nokia', '6720 classic', 'Series60', TYPE_MOBILE ),
2969
  'http://nds1.nds.nokia.com/uaprof/N6730cr100.xml' => array( 'Nokia', '6730 classic', 'Series60', TYPE_MOBILE ),
2970
+ 'http://nds1.nds.nokia.com/uaprof/N6760s-1r100-2G.xml' => array( 'Nokia', '6760 slide', 'Series60', TYPE_MOBILE ),
2971
  'http://nds1.nds.nokia.com/uaprof/N6760s-1r100-3G.xml' => array( 'Nokia', '6760 slide', 'Series60', TYPE_MOBILE ),
2972
  'http://nds.nokia.com/uaprof/N6800r100.xml' => array( 'Nokia', '6800', 'Series40', TYPE_MOBILE ),
2973
  'http://nds.nokia.com/uaprof/N6800r200.xml' => array( 'Nokia', '6800', 'Series40', TYPE_MOBILE ),
3035
  'http://nds.nokia.com/uaprof/N7650r200.xml' => array( 'Nokia', '7650', 'Series60', TYPE_MOBILE ),
3036
  'http://nds.nokia.com/uaprof/N7710r100.xml' => array( 'Nokia', '7710', 'Series90', TYPE_MOBILE ),
3037
  'http://nds1.nds.nokia.com/uaprof/N7900r100.xml' => array( 'Nokia', '7900 Prism', 'Series40', TYPE_MOBILE ),
3038
+ 'http://nds1.nds.nokia.com/uaprof/N801Tr100.xml' => array( 'Nokia', '801T', 'Series60', TYPE_MOBILE ),
3039
  'http://nds1.nds.nokia.com/uaprof/N808PureViewr100.xml' => array( 'Nokia', '808 PureView', 'Series60', TYPE_MOBILE ),
3040
  'http://nds1.nds.nokia.com/uaprof/N808PureViewr200.xml' => array( 'Nokia', '808 PureView', 'Series60', TYPE_MOBILE ),
3041
  'http://nds1.nds.nokia.com/uaprof/N808r100.xml' => array( 'Nokia', '808 PureView', 'Series60', TYPE_MOBILE ),
3078
  'http://nds1.nds.nokia.com/uaprof/Nokia205r100.xml' => array( 'Nokia', 'Asha 205', 'Series40', TYPE_MOBILE ),
3079
  'http://nds1.nds.nokia.com/uaprof/Nokia206.1r100.xml' => array( 'Nokia', 'Asha 206', 'Series40', TYPE_MOBILE ),
3080
  'http://nds1.nds.nokia.com/uaprof/Nokia206r100.xml' => array( 'Nokia', 'Asha 206', 'Series40', TYPE_MOBILE ),
3081
+ 'http://nds1.nds.nokia.com/uaprof/Nokia210.3r100.xml' => array( 'Nokia', 'Asha 210', 'Series40', TYPE_MOBILE ),
3082
+ 'http://nds1.nds.nokia.com/uaprof/Nokia210.4r100.xml' => array( 'Nokia', 'Asha 210', 'Series40', TYPE_MOBILE ),
3083
  'http://nds1.nds.nokia.com/uaprof/Nokia210.5r100.xml' => array( 'Nokia', 'Asha 210', 'Series40', TYPE_MOBILE ),
3084
  'http://nds1.nds.nokia.com/uaprof/Nokia210r100.xml' => array( 'Nokia', 'Asha 210', 'Series40', TYPE_MOBILE ),
3085
+ 'http://nds1.nds.nokia.com/uaprof/NokiaAsha230DSr100.xml' => array( 'Nokia', 'Asha 230', 'Nokia Asha Platform', TYPE_MOBILE ),
3086
+ 'http://nds1.nds.nokia.com/uaprof/NokiaAsha230SSr100.xml' => array( 'Nokia', 'Asha 230', 'Nokia Asha Platform', TYPE_MOBILE ),
3087
  'http://nds1.nds.nokia.com/uaprof/300r100.xml' => array( 'Nokia', 'Asha 300', 'Series40', TYPE_MOBILE ),
3088
  'http://nds1.nds.nokia.com/uaprof/Nokia302r100.xml' => array( 'Nokia', 'Asha 302', 'Series40', TYPE_MOBILE ),
3089
  'http://nds1.nds.nokia.com/uaprof/Nokia303r100.xml' => array( 'Nokia', 'Asha 303', 'Series40', TYPE_MOBILE ),
3094
  'http://nds1.nds.nokia.com/uaprof/309r100.xml' => array( 'Nokia', 'Asha 309', 'Series40', TYPE_MOBILE ),
3095
  'http://nds1.nds.nokia.com/uaprof/Nokia310r100.xml' => array( 'Nokia', 'Asha 310', 'Series40', TYPE_MOBILE ),
3096
  'http://nds1.nds.nokia.com/uaprof/311r100.xml' => array( 'Nokia', 'Asha 311', 'Series40', TYPE_MOBILE ),
3097
+ 'http://nds1.nds.nokia.com/uaprof/NokiaAsha500DSr100.xml' => array( 'Nokia', 'Asha 500', 'Nokia Asha Platform', TYPE_MOBILE ),
3098
  'http://nds1.nds.nokia.com/uaprof/Nokia501.1r100.xml' => array( 'Nokia', 'Asha 501', 'Nokia Asha Platform', TYPE_MOBILE ),
3099
+ 'http://nds1.nds.nokia.com/uaprof/Nokia501.2r100.xml' => array( 'Nokia', 'Asha 501', 'Nokia Asha Platform', TYPE_MOBILE ),
3100
  'http://nds1.nds.nokia.com/uaprof/Nokia501r100.xml' => array( 'Nokia', 'Asha 501', 'Nokia Asha Platform', TYPE_MOBILE ),
3101
  'http://nds1.nds.nokia.com/uaprof/Nokia501sr100.xml' => array( 'Nokia', 'Asha 501', 'Nokia Asha Platform', TYPE_MOBILE ),
3102
+ 'http://nds1.nds.nokia.com/uaprof/Nokia502r100.xml' => array( 'Nokia', 'Asha 502', 'Nokia Asha Platform', TYPE_MOBILE ),
3103
+ 'http://nds1.nds.nokia.com/uaprof/Nokia503r100.xml' => array( 'Nokia', 'Asha 503', 'Nokia Asha Platform', TYPE_MOBILE ),
3104
  'http://nds1.nds.nokia.com/uaprof/Nokia503sr100.xml' => array( 'Nokia', 'Asha 503', 'Nokia Asha Platform', TYPE_MOBILE ),
3105
  'http://nds1.nds.nokia.com/uaprof/NokiaC1-01.1r100.xml' => array( 'Nokia', 'C1-01', 'Series40', TYPE_MOBILE ),
3106
  'http://nds1.nds.nokia.com/uaprof/NokiaC1-01r100.xml' => array( 'Nokia', 'C1-01', 'Series40', TYPE_MOBILE ),
3192
  'http://nds.nokia.com/uaprof/NE65-2r100.xml' => array( 'Nokia', 'E65', 'Series60', TYPE_MOBILE ),
3193
  'http://nds1.nds.nokia.com/uaprof/NE66-1r100-vf3g.xml' => array( 'Nokia', 'E66', 'Series60', TYPE_MOBILE ),
3194
  'http://nds1.nds.nokia.com/uaprof/NE66-1r100.xml' => array( 'Nokia', 'E66', 'Series60', TYPE_MOBILE ),
3195
+ 'http://nds1.nds.nokia.com/uaprof/NE66-2r100.xml' => array( 'Nokia', 'E66', 'Series60', TYPE_MOBILE ),
3196
  'http://nds1.nds.nokia.com/uaprof/NE66r100.xml' => array( 'Nokia', 'E66', 'Series60', TYPE_MOBILE ),
3197
  'http://nds1.nds.nokia.com/uaprof/NE7-00r100-VF2G.xml' => array( 'Nokia', 'E7-00', 'Series60', TYPE_MOBILE ),
3198
  'http://nds1.nds.nokia.com/uaprof/NE7-00r100-VF3G.xml' => array( 'Nokia', 'E7-00', 'Series60', TYPE_MOBILE ),
3265
  'http://nds1.nds.nokia.com/uaprof/NN78-1r100-VF3G.xml' => array( 'Nokia', 'N78', 'Series60', TYPE_MOBILE ),
3266
  'http://nds1.nds.nokia.com/uaprof/NN78-1r100.xml' => array( 'Nokia', 'N78', 'Series60', TYPE_MOBILE ),
3267
  'http://nds1.nds.nokia.com/uaprof/NN79-1r100.xml' => array( 'Nokia', 'N79', 'Series60', TYPE_MOBILE ),
3268
+ 'http://nds.nokia.com/uaprof/NC7-00r100.xml' => array( 'Nokia', 'N8-00', 'Series60', TYPE_MOBILE ),
3269
+ 'http://nds1.nds.nokia.com/uaprof/NN8-00.1r100-3G.xml' => array( 'Nokia', 'N8-00', 'Series60', TYPE_MOBILE ),
3270
  'http://nds1.nds.nokia.com/uaprof/NN8-00.1r200-3G.xml' => array( 'Nokia', 'N8-00', 'Series60', TYPE_MOBILE ),
3271
  'http://nds1.nds.nokia.com/uaprof/NN8-00.1r300-3G.xml' => array( 'Nokia', 'N8-00', 'Series60', TYPE_MOBILE ),
3272
  'http://nds1.nds.nokia.com/uaprof/NN8-00r100-3G.xml' => array( 'Nokia', 'N8-00', 'Series60', TYPE_MOBILE ),
3288
  'http://nds1.nds.nokia.com/uaprof/NN85-1r100-VF3G.xml' => array( 'Nokia', 'N85', 'Series60', TYPE_MOBILE ),
3289
  'http://nds1.nds.nokia.com/uaprof/NN85-1r100.xml' => array( 'Nokia', 'N85', 'Series60', TYPE_MOBILE ),
3290
  'http://nds1.nds.nokia.com/uaprof/NN85-3r100.xml' => array( 'Nokia', 'N85', 'Series60', TYPE_MOBILE ),
3291
+ 'http://nds1.nds.nokia.com/uaprof/NN85r100.xml' => array( 'Nokia', 'N85', 'Series60', TYPE_MOBILE ),
3292
  'http://nds1.nds.nokia.com/uaprof/NN86-1r100.xml' => array( 'Nokia', 'N86 8MP', 'Series60', TYPE_MOBILE ),
3293
  'http://nds1.nds.nokia.com/uaprof/NN86-3r100.xml' => array( 'Nokia', 'N86 8MP', 'Series60', TYPE_MOBILE ),
3294
  'http://nds.nokia.com/uaprof/NN90-1r100-VF2G.xml' => array( 'Nokia', 'N90', 'Series60', TYPE_MOBILE ),
3370
  'http://nds1.nds.nokia.com/uaprof/NX7-00r100-VF3G.xml' => array( 'Nokia', 'X7-00', 'Series60', TYPE_MOBILE ),
3371
  'http://nds1.nds.nokia.com/uaprof/NX7-00r200-3G.xml' => array( 'Nokia', 'X7-00', 'Series60', TYPE_MOBILE ),
3372
  'http://nds1.nds.nokia.com/uaprof/NX7-00r210-3G.xml' => array( 'Nokia', 'X7-00', 'Series60', TYPE_MOBILE ),
3373
+ 'http://www.ztemt.com/mobile/uaprof/nubia_NX501_Z54.xml' => array( 'Nubia', 'Z5', 'Android', TYPE_MOBILE ),
3374
  'http://nyxmobile.com/UAProfile/fly/NYX_FLY.xml' => array( 'Nyx', 'Fly', 'Android', TYPE_MOBILE ),
3375
  'http://www.seeo2.com/uaprofile/uaprof-atomlife.xml' => array( 'O2', 'Comet', NULL, TYPE_MOBILE ),
3376
  'http://www.seeo2.com/uaprofile/uaprof-atomexec.xml' => array( 'O2', 'Xda Exec', NULL, TYPE_MOBILE ),
3383
  'http://www.ondacommunication.com/ua/TT101.xml' => array( 'Onda', 'TT101', 'Android', TYPE_TABLET ),
3384
  'http://www.ondacommunication.com/ua/TT102.xml' => array( 'Onda', 'TT102', 'Android', TYPE_MOBILE ),
3385
  'http://www.zte.com.cn/mobile/uaprof/ZTE-ONIDA F970.xml' => array( 'Onida', 'F970', NULL, TYPE_MOBILE ),
3386
+ 'http://www.oppo.com/resource/UA-PROF/OPPOR827.xml' => array( 'Oppo', 'Find 5 mini R827', 'Android', TYPE_MOBILE ),
3387
  'http://www.oppo.com/resource/UA-PROF/OPPOX909T.xml' => array( 'Oppo', 'Find 5 X909', 'Android', TYPE_MOBILE ),
3388
  'http://www.oppo.com/resource/UA-PROF/OPPOR815.xml' => array( 'Oppo', 'Find Clover R815', 'Android', TYPE_MOBILE ),
3389
  'http://www.oppo.com/resource/UA-PROF/OPPOR815T.xml' => array( 'Oppo', 'Find Clover R815', 'Android', TYPE_MOBILE ),
3390
+ 'http://www.oppo.com/resource/UA-PROF/OPPOR821T.xml' => array( 'Oppo', 'Find Muse R821T', 'Android', TYPE_MOBILE ),
3391
+ 'http://ua.prof.oppo.com/resource/ua-PROF/OPPON1.xml' => array( 'Oppo', 'N1', 'Android', TYPE_MOBILE ),
3392
+ 'http://www.oppo.com/resource/UA-PROF/OPPON828.xml' => array( 'Oppo', 'N828', 'Android', TYPE_MOBILE ),
3393
+ 'http://www.oppo.com/resource/UA-PROF/OPPOR829T.xml' => array( 'Oppo', 'R1 R829T', 'Android', TYPE_MOBILE ),
3394
  'http://www.oppo.com/resource/UA-PROF/OPPOR809T.xml' => array( 'Oppo', 'R809', 'Android', TYPE_MOBILE ),
3395
  'http://www.oppo.com/resource/UA-PROF/OPPOR813T.xml' => array( 'Oppo', 'R813', 'Android', TYPE_MOBILE ),
3396
  'http://www.oppo.com/resource/UA-PROF/OPPOR819.xml' => array( 'Oppo', 'R819', 'Android', TYPE_MOBILE ),
3412
  'http://www-ccpp.tcl-ta.com/files/Infinity_X.xml' => array( 'Orange', 'Infinity X', 'Android', TYPE_MOBILE ),
3413
  'http://www-ccpp.tcl-ta.com/files/Orange-Kivo.xml' => array( 'Orange', 'Kivo', 'Android', TYPE_MOBILE ),
3414
  'http://www-ccpp.tcl-ta.com/files/Orange_Niva.xml' => array( 'Orange', 'Nivo', 'Android', TYPE_MOBILE ),
3415
+ 'http://www.zte.com.cn/mobile/uaprof/Orange_Reyo.xml' => array( 'Orange', 'Reyo', 'Android', TYPE_MOBILE ),
3416
  'http://www.zte.com.cn/mobile/uaprof/Orange-San-Francisco.xml' => array( 'Orange', 'San Francisco', 'Android', TYPE_MOBILE ),
3417
  'http://www.htcmms.com.tw/gen/Excal-1.0.xml' => array( 'Orange', 'SPV E600', NULL, TYPE_MOBILE ),
3418
  'http://www.htcmms.com.tw/gen/ph10cd-1.0.xml' => array( 'Orange', 'SPV M1500', 'Windows Mobile', TYPE_MOBILE ),
3419
  'http://www.htcmms.com.tw/gen/st21-1.0.xml' => array( 'Orange', 'SPV V550', 'Windows Mobile', TYPE_MOBILE ),
3420
  'http://www.modelabs.com/uaprofs/Orange-Tokyo.xml' => array( 'Orange', 'Tokyo', NULL, TYPE_MOBILE ),
3421
+ 'http://wap1.huawei.com/uaprof/HuaweiG740-L00LTE-OrangeYumo.xml' => array( 'Orange', 'Yumo', 'Android', TYPE_MOBILE ),
3422
+ 'http://www.zte.com.cn/mobile/uaprof/Orange-Zali.xml' => array( 'Orange', 'Zali', 'Android', TYPE_MOBILE ),
3423
  'http://support.acer.com/UAprofile/Acer_G100W_Profile.xml' => array( 'Packard Bell', 'Liberty Tab G100W', 'Android', TYPE_MOBILE ),
3424
  'http://www.palm.com/permalinks/mmsuaprofs/ASUS_Crown_1.xml' => array( 'Palm', 'Treo 500', 'Palm OS', TYPE_MOBILE ),
3425
  'http://www.handspring.com/profilespecs/Blazer300_OR.rdf' => array( 'Palm', 'Treo 600', 'Palm OS', TYPE_MOBILE ),
3449
  'http://mobileinternet.panasonicbox.com/UAprof/GU87/R1.xml' => array( 'Panasonic', 'GU87', NULL, TYPE_MOBILE ),
3450
  'http://www-ccpp.tcl-ta.com/files/Panasonic P51.xml' => array( 'Panasonic', 'P51', 'Android', TYPE_MOBILE ),
3451
  'http://mobileinternet.panasonicbox.com/UAprof/SA7/RP1.xml' => array( 'Panasonic', 'SA7', NULL, TYPE_MOBILE ),
3452
+ 'http://www-ccpp.tcl-ta.com/files/Panasonic_T31.xml' => array( 'Panasonic', 'T31', 'Android', TYPE_MOBILE ),
3453
  'http://mobileinternet.panasonicbox.com/UAprof/vs2/RP1.xml' => array( 'Panasonic', 'VS2', NULL, TYPE_MOBILE ),
3454
  'http://mobileinternet.panasonicbox.com/UAprof/VS7/RP1.xml' => array( 'Panasonic', 'VS7', NULL, TYPE_MOBILE ),
3455
  'http://mobileinternet.panasonicbox.com/UAprof/VS7aI/RJ1_3G.xml' => array( 'Panasonic', 'VS7', NULL, TYPE_MOBILE ),
3491
  'http://www.pantech.com/Uaprof/umts/PU-P9090R01.xml' => array( 'Pantech', 'Magnus', 'Android', TYPE_MOBILE ),
3492
  'http://uaprof.vtext.com/pcd/adr910l/adr910l.xml' => array( 'Pantech', 'Marauder', 'Android', TYPE_MOBILE ),
3493
  'http://www.pantech.com/Uaprof/umts/PU-C740.xml' => array( 'Pantech', 'Matrix', NULL, TYPE_MOBILE ),
3494
+ 'http://www.pantech.com/Uaprof/umts/PU-P6020.xml' => array( 'Pantech', 'P6020', 'Brew', TYPE_MOBILE ),
3495
+ 'http://www.pantech.com/Uaprof/umts/PU-P6030.xml' => array( 'Pantech', 'P6030', NULL, TYPE_MOBILE ),
3496
  'http://uaprof.vtext.com/pcd/adr930l/adr930l.xml' => array( 'Pantech', 'Perception', 'Android', TYPE_MOBILE ),
3497
  'http://device.telusmobility.com/pantech/PN3200-0.rdf' => array( 'Pantech', 'PN-3200', NULL, TYPE_MOBILE ),
3498
  'http://www.pantech.com/Uaprof/umts/PU-P9060.xml' => array( 'Pantech', 'Pocket', 'Android', TYPE_MOBILE ),
3513
  'http://www.consumer.philips.com/wbu/uapP199.xml' => array( 'Philips', 'P100', NULL, TYPE_MOBILE ),
3514
  'http://www.consumer.philips.com/wbu/uapP598.xml' => array( 'Philips', 'P598', NULL, TYPE_MOBILE ),
3515
  'http://www.consumer.philips.com/wbu/uapS890.XML' => array( 'Philips', 'S890', NULL, TYPE_MOBILE ),
3516
+ 'http://www.consumer.philips.com/wbu/uapW3568.xml' => array( 'Philips', 'W3568', 'Android', TYPE_MOBILE ),
3517
  'http://www.consumer.philips.com/wbu/uapX525.xml' => array( 'Philips', 'X331', 'MTK', TYPE_MOBILE ),
3518
  'http://uriver.co.kr/UAprof/UAprof_M801.xml' => array( 'PhoneOne', 'M801', NULL, TYPE_MOBILE ),
3519
  'http://www.coobery.com/mobile/Suning_S90w_UAProfile.xml' => array( 'Pioneer', 'S90w', 'Android', TYPE_MOBILE ),
3520
  'http://wap.dl.prestigio.com/uaprofile/tablets/PMP7280C3G_DUO_PL_V1.xml' => array( 'Prestigio', 'Multipad 2 Ultra Duo 8.0 3G', 'Android', TYPE_TABLET ),
3521
  'http://wap.dl.prestigio.com/uaprofile/tablets/PMP7280C3G_QUAD_V1.xml' => array( 'Prestigio', 'Multipad 2 Ultra Duo 8.0 3G', 'Android', TYPE_TABLET ),
3522
+ 'http://wap.dl.prestigio.com/uaprofile/tablets/PMP7079E3G_QUAD_V1.xml' => array( 'Prestigio', 'Multipad 4 Diamond 7.85 3G', 'Android', TYPE_TABLET ),
3523
+ 'http://wap.dl.prestigio.com/uaprofile/tablets/PMP7100D3G_QUAD_V1.xml' => array( 'Prestigio', 'Multipad 7100', 'Android', TYPE_TABLET ),
3524
+ 'http://wap.dl.prestigio.com/uaprofile/tablets/PMP7280D3G_QUAD_V1.xml' => array( 'Prestigio', 'Multipad 7280', 'Android', TYPE_TABLET ),
3525
+ 'http://wap.dl.prestigio.com/uaprofile/smartphones/PAP3350DUO_V1.xml' => array( 'Prestigio', 'Multiphone 3350 Duo', 'Android', TYPE_MOBILE ),
3526
+ 'http://wap.dl.prestigio.com/uaprofile/smartphones/PAP3400DUO_V1.xml' => array( 'Prestigio', 'Multiphone 3400 Duo', 'Android', TYPE_MOBILE ),
3527
+ 'http://wap.dl.prestigio.com/uaprofile/smartphones/PAP3540DUO_Polcomtel_V1.xml' => array( 'Prestigio', 'Multiphone 3540 Duo', 'Android', TYPE_MOBILE ),
3528
  'http://wap.dl.prestigio.com/uaprofile/smartphones/PAP3540DUO_V1.xml' => array( 'Prestigio', 'Multiphone 3540 Duo', 'Android', TYPE_MOBILE ),
3529
  'http://wap.dl.prestigio.com/uaprofile/smartphones/PAP4044DUO_V1.xml' => array( 'Prestigio', 'Multiphone 4044 Duo', 'Android', TYPE_MOBILE ),
3530
+ 'http://wap.dl.prestigio.com/uaprofile/smartphones/PAP4055DUO_V1.xml' => array( 'Prestigio', 'Multiphone 4055 Duo', 'Android', TYPE_MOBILE ),
3531
  'http://wap.dl.prestigio.com/uaprofile/smartphones/PAP4322DUO_V1.xml' => array( 'Prestigio', 'Multiphone 4322 Duo', 'Android', TYPE_MOBILE ),
3532
  'http://wap.dl.prestigio.com/uaprofile/smartphones/PAP4500TDUO_V1.XML' => array( 'Prestigio', 'Multiphone 4500 Duo', 'Android', TYPE_MOBILE ),
3533
  'http://wap.dl.prestigio.com/uaprofile/smartphones/PAP5000TDUO_V1.XML' => array( 'Prestigio', 'Multiphone 5000 Duo', 'Android', TYPE_MOBILE ),
3534
  'http://wap.dl.prestigio.com/uaprofile/smartphones/PAP5044DUO_V1.xml' => array( 'Prestigio', 'Multiphone 5044 Duo', 'Android', TYPE_MOBILE ),
3535
  'http://wap.dl.prestigio.com/uaprofile/smartphones/PAP5430_V1.xml' => array( 'Prestigio', 'Multiphone 5430', 'Android', TYPE_MOBILE ),
3536
+ 'http://wap.dl.prestigio.com/uaprofile/smartphones/PAP5450DUO_V1.xml' => array( 'Prestigio', 'Multiphone 5450 Duo', 'Android', TYPE_MOBILE ),
3537
+ 'http://wap.dl.prestigio.com/uaprofile/smartphones/PAP5500DUO_V1.xml' => array( 'Prestigio', 'Multiphone 5500 Duo', 'Android', TYPE_MOBILE ),
3538
+ 'http://wap.dl.prestigio.com/uaprofile/smartphones/PAP7600DUO_V1.xml' => array( 'Prestigio', 'Multiphone 7600 Duo', 'Android', TYPE_MOBILE ),
3539
  'http://www.blackberry.net/go/mobile/profiles/uaprof/Unknown_80211g/7.1.0.rdf' => array( 'RIM', 'BlackBerry', 'BlackBerry OS', TYPE_MOBILE ),
3540
  'http://www.blackberry.net/go/mobile/profiles/uaprof/Unknown_evdo/7.1.0.rdf' => array( 'RIM', 'BlackBerry', 'BlackBerry OS', TYPE_MOBILE ),
3541
  'http://www.blackberry.net/go/mobile/profiles/uaprof/5810/3.2.1.rdf' => array( 'RIM', 'BlackBerry 5810', 'BlackBerry OS', TYPE_MOBILE ),
3663
  'http://www.blackberry.net/go/mobile/profiles/uaprof/9620_80211g/7.1.0.rdf' => array( 'RIM', 'BlackBerry 9620', 'BlackBerry OS', TYPE_MOBILE ),
3664
  'http://www.blackberry.net/go/mobile/profiles/uaprof/9620_edge/7.1.0.rdf' => array( 'RIM', 'BlackBerry 9620', 'BlackBerry OS', TYPE_MOBILE ),
3665
  'http://www.blackberry.net/go/mobile/profiles/uaprof/9620_umts/7.1.0.rdf' => array( 'RIM', 'BlackBerry 9620', 'BlackBerry OS', TYPE_MOBILE ),
3666
+ 'http://www.blackberry.net/go/mobile/profiles/uaprof/9720/7.1.0.rdf' => array( 'RIM', 'BlackBerry 9720', 'BlackBerry OS', TYPE_MOBILE ),
3667
  'http://www.blackberry.net/go/mobile/profiles/uaprof/9720_80211g/7.1.0.rdf' => array( 'RIM', 'BlackBerry 9720', 'BlackBerry OS', TYPE_MOBILE ),
3668
  'http://www.blackberry.net/go/mobile/profiles/uaprof/9720_edge/7.1.0.rdf' => array( 'RIM', 'BlackBerry 9720', 'BlackBerry OS', TYPE_MOBILE ),
3669
  'http://www.blackberry.net/go/mobile/profiles/uaprof/9720_gprs/7.1.0.rdf' => array( 'RIM', 'BlackBerry 9720', 'BlackBerry OS', TYPE_MOBILE ),
3670
  'http://www.blackberry.net/go/mobile/profiles/uaprof/9720_umts/7.1.0.rdf' => array( 'RIM', 'BlackBerry 9720', 'BlackBerry OS', TYPE_MOBILE ),
3671
  'http://www.blackberry.net/go/mobile/profiles/uaprof/9000/4.6.0.rdf' => array( 'RIM', 'BlackBerry Bold 9000', 'BlackBerry OS', TYPE_MOBILE ),
3672
+ 'http://www.blackberry.net/go/mobile/profiles/uaprof/9000/5.0.0.rdf' => array( 'RIM', 'BlackBerry Bold 9000', 'BlackBerry OS', TYPE_MOBILE ),
3673
  'http://www.blackberry.net/go/mobile/profiles/uaprof/9000_80211a/5.0.0.rdf' => array( 'RIM', 'BlackBerry Bold 9000', 'BlackBerry OS', TYPE_MOBILE ),
3674
+ 'http://www.blackberry.net/go/mobile/profiles/uaprof/9000_80211b/5.0.0.rdf' => array( 'RIM', 'BlackBerry Bold 9000', 'BlackBerry OS', TYPE_MOBILE ),
3675
  'http://www.blackberry.net/go/mobile/profiles/uaprof/9000_80211g/4.6.0.rdf' => array( 'RIM', 'BlackBerry Bold 9000', 'BlackBerry OS', TYPE_MOBILE ),
3676
  'http://www.blackberry.net/go/mobile/profiles/uaprof/9000_80211g/5.0.0.rdf' => array( 'RIM', 'BlackBerry Bold 9000', 'BlackBerry OS', TYPE_MOBILE ),
3677
+ 'http://www.blackberry.net/go/mobile/profiles/uaprof/9000_edge/4.6.0.rdf' => array( 'RIM', 'BlackBerry Bold 9000', 'BlackBerry OS', TYPE_MOBILE ),
3678
  'http://www.blackberry.net/go/mobile/profiles/uaprof/9000_edge/5.0.0.rdf' => array( 'RIM', 'BlackBerry Bold 9000', 'BlackBerry OS', TYPE_MOBILE ),
3679
+ 'http://www.blackberry.net/go/mobile/profiles/uaprof/9000_umts/4.6.0.rdf' => array( 'RIM', 'BlackBerry Bold 9000', 'BlackBerry OS', TYPE_MOBILE ),
3680
  'http://www.blackberry.net/go/mobile/profiles/uaprof/9000_umts/5.0.0.rdf' => array( 'RIM', 'BlackBerry Bold 9000', 'BlackBerry OS', TYPE_MOBILE ),
3681
  'http://device.sprintpcs.com/RIM/BlackBerry9650/6.0.0.706.rdf' => array( 'RIM', 'BlackBerry Bold 9650', 'BlackBerry OS', TYPE_MOBILE ),
3682
  'http://device.sprintpcs.com/RIM/BlackBerry9650/6.0.0.723.rdf' => array( 'RIM', 'BlackBerry Bold 9650', 'BlackBerry OS', TYPE_MOBILE ),
3683
+ 'http://www.blackberry.net/go/mobile/profiles/uaprof/9650/6.0.0.rdf' => array( 'RIM', 'BlackBerry Bold 9650', 'BlackBerry OS', TYPE_MOBILE ),
3684
  'http://www.blackberry.net/go/mobile/profiles/uaprof/9650_1x/6.0.0.rdf' => array( 'RIM', 'BlackBerry Bold 9650', 'BlackBerry OS', TYPE_MOBILE ),
3685
+ 'http://www.blackberry.net/go/mobile/profiles/uaprof/9650_80211g/5.0.0.rdf' => array( 'RIM', 'BlackBerry Bold 9650', 'BlackBerry OS', TYPE_MOBILE ),
3686
  'http://www.blackberry.net/go/mobile/profiles/uaprof/9650_80211g/6.0.0.rdf' => array( 'RIM', 'BlackBerry Bold 9650', 'BlackBerry OS', TYPE_MOBILE ),
3687
  'http://www.blackberry.net/go/mobile/profiles/uaprof/9650_edge/5.0.0.rdf' => array( 'RIM', 'BlackBerry Bold 9650', 'BlackBerry OS', TYPE_MOBILE ),
3688
  'http://www.blackberry.net/go/mobile/profiles/uaprof/9650_edge/6.0.0.rdf' => array( 'RIM', 'BlackBerry Bold 9650', 'BlackBerry OS', TYPE_MOBILE ),
3689
  'http://www.blackberry.net/go/mobile/profiles/uaprof/9650_evdo/5.0.0.rdf' => array( 'RIM', 'BlackBerry Bold 9650', 'BlackBerry OS', TYPE_MOBILE ),
3690
  'http://www.blackberry.net/go/mobile/profiles/uaprof/9650_evdo/6.0.0.rdf' => array( 'RIM', 'BlackBerry Bold 9650', 'BlackBerry OS', TYPE_MOBILE ),
3691
+ 'http://www.blackberry.net/go/mobile/profiles/uaprof/9650_umts/5.0.0.rdf' => array( 'RIM', 'BlackBerry Bold 9650', 'BlackBerry OS', TYPE_MOBILE ),
3692
  'http://www.blackberry.net/go/mobile/profiles/uaprof/9650_umts/6.0.0.rdf' => array( 'RIM', 'BlackBerry Bold 9650', 'BlackBerry OS', TYPE_MOBILE ),
3693
+ 'http://www.blackberry.net/go/mobile/profiles/uaprof/9700/5.0.0.rdf' => array( 'RIM', 'BlackBerry Bold 9700', 'BlackBerry OS', TYPE_MOBILE ),
3694
+ 'http://www.blackberry.net/go/mobile/profiles/uaprof/9700/6.0.0.rdf' => array( 'RIM', 'BlackBerry Bold 9700', 'BlackBerry OS', TYPE_MOBILE ),
3695
  'http://www.blackberry.net/go/mobile/profiles/uaprof/9700_80211b/6.0.0.rdf' => array( 'RIM', 'BlackBerry Bold 9700', 'BlackBerry OS', TYPE_MOBILE ),
3696
  'http://www.blackberry.net/go/mobile/profiles/uaprof/9700_80211g/5.0.0.rdf' => array( 'RIM', 'BlackBerry Bold 9700', 'BlackBerry OS', TYPE_MOBILE ),
3697
  'http://www.blackberry.net/go/mobile/profiles/uaprof/9700_80211g/6.0.0.rdf' => array( 'RIM', 'BlackBerry Bold 9700', 'BlackBerry OS', TYPE_MOBILE ),
3698
  'http://www.blackberry.net/go/mobile/profiles/uaprof/9700_edge/5.0.0.rdf' => array( 'RIM', 'BlackBerry Bold 9700', 'BlackBerry OS', TYPE_MOBILE ),
3699
  'http://www.blackberry.net/go/mobile/profiles/uaprof/9700_edge/6.0.0.rdf' => array( 'RIM', 'BlackBerry Bold 9700', 'BlackBerry OS', TYPE_MOBILE ),
3700
+ 'http://www.blackberry.net/go/mobile/profiles/uaprof/9700_gprs/5.0.0.rdf' => array( 'RIM', 'BlackBerry Bold 9700', 'BlackBerry OS', TYPE_MOBILE ),
3701
  'http://www.blackberry.net/go/mobile/profiles/uaprof/9700_gprs/6.0.0.rdf' => array( 'RIM', 'BlackBerry Bold 9700', 'BlackBerry OS', TYPE_MOBILE ),
3702
  'http://www.blackberry.net/go/mobile/profiles/uaprof/9700_umts/5.0.0.rdf' => array( 'RIM', 'BlackBerry Bold 9700', 'BlackBerry OS', TYPE_MOBILE ),
3703
  'http://www.blackberry.net/go/mobile/profiles/uaprof/9700_umts/6.0.0.rdf' => array( 'RIM', 'BlackBerry Bold 9700', 'BlackBerry OS', TYPE_MOBILE ),
3704
+ 'http://www.blackberry.net/go/mobile/profiles/uaprof/9780/6.0.0.rdf' => array( 'RIM', 'BlackBerry Bold 9780', 'BlackBerry OS', TYPE_MOBILE ),
3705
  'http://www.blackberry.net/go/mobile/profiles/uaprof/9780_80211b/6.0.0.rdf' => array( 'RIM', 'BlackBerry Bold 9780', 'BlackBerry OS', TYPE_MOBILE ),
3706
  'http://www.blackberry.net/go/mobile/profiles/uaprof/9780_80211g/6.0.0.rdf' => array( 'RIM', 'BlackBerry Bold 9780', 'BlackBerry OS', TYPE_MOBILE ),
3707
  'http://www.blackberry.net/go/mobile/profiles/uaprof/9780_edge/6.0.0.rdf' => array( 'RIM', 'BlackBerry Bold 9780', 'BlackBerry OS', TYPE_MOBILE ),
3711
  'http://www.blackberry.net/go/mobile/profiles/uaprof/9788_80211g/6.0.0.rdf' => array( 'RIM', 'BlackBerry Bold 9788', 'BlackBerry OS', TYPE_MOBILE ),
3712
  'http://www.blackberry.net/go/mobile/profiles/uaprof/9788_edge/6.0.0.rdf' => array( 'RIM', 'BlackBerry Bold 9788', 'BlackBerry OS', TYPE_MOBILE ),
3713
  'http://www.blackberry.net/go/mobile/profiles/uaprof/9790/7.0.0.rdf' => array( 'RIM', 'BlackBerry Bold 9790', 'BlackBerry OS', TYPE_MOBILE ),
3714
+ 'http://www.blackberry.net/go/mobile/profiles/uaprof/9790/7.1.0.rdf' => array( 'RIM', 'BlackBerry Bold 9790', 'BlackBerry OS', TYPE_MOBILE ),
3715
  'http://www.blackberry.net/go/mobile/profiles/uaprof/9790_80211a/7.1.0.rdf' => array( 'RIM', 'BlackBerry Bold 9790', 'BlackBerry OS', TYPE_MOBILE ),
3716
  'http://www.blackberry.net/go/mobile/profiles/uaprof/9790_80211g/7.0.0.rdf' => array( 'RIM', 'BlackBerry Bold 9790', 'BlackBerry OS', TYPE_MOBILE ),
3717
  'http://www.blackberry.net/go/mobile/profiles/uaprof/9790_80211g/7.1.0.rdf' => array( 'RIM', 'BlackBerry Bold 9790', 'BlackBerry OS', TYPE_MOBILE ),
3750
  'http://www.blackberry.net/go/mobile/profiles/uaprof/8300/4.5.0.rdf' => array( 'RIM', 'BlackBerry Curve 8300', 'BlackBerry OS', TYPE_MOBILE ),
3751
  'http://www.blackberry.net/go/mobile/profiles/uaprof/8310/4.2.2.rdf' => array( 'RIM', 'BlackBerry Curve 8310', 'BlackBerry OS', TYPE_MOBILE ),
3752
  'http://www.blackberry.net/go/mobile/profiles/uaprof/8330/4.3.0.rdf' => array( 'RIM', 'BlackBerry Curve 8330', 'BlackBerry OS', TYPE_MOBILE ),
3753
+ 'http://www.blackberry.net/go/mobile/profiles/uaprof/8520/5.0.0.rdf' => array( 'RIM', 'BlackBerry Curve 8520', 'BlackBerry OS', TYPE_MOBILE ),
3754
+ 'http://www.blackberry.net/go/mobile/profiles/uaprof/8520_80211b/5.0.0.rdf' => array( 'RIM', 'BlackBerry Curve 8520', 'BlackBerry OS', TYPE_MOBILE ),
3755
  'http://www.blackberry.net/go/mobile/profiles/uaprof/8520_80211g/4.6.1.rdf' => array( 'RIM', 'BlackBerry Curve 8520', 'BlackBerry OS', TYPE_MOBILE ),
3756
  'http://www.blackberry.net/go/mobile/profiles/uaprof/8520_80211g/5.0.0.rdf' => array( 'RIM', 'BlackBerry Curve 8520', 'BlackBerry OS', TYPE_MOBILE ),
3757
  'http://www.blackberry.net/go/mobile/profiles/uaprof/8520_edge/4.6.1.rdf' => array( 'RIM', 'BlackBerry Curve 8520', 'BlackBerry OS', TYPE_MOBILE ),
3758
  'http://www.blackberry.net/go/mobile/profiles/uaprof/8520_edge/5.0.0.rdf' => array( 'RIM', 'BlackBerry Curve 8520', 'BlackBerry OS', TYPE_MOBILE ),
3759
+ 'http://www.blackberry.net/go/mobile/profiles/uaprof/8520_gprs/4.6.1.rdf' => array( 'RIM', 'BlackBerry Curve 8520', 'BlackBerry OS', TYPE_MOBILE ),
3760
  'http://www.blackberry.net/go/mobile/profiles/uaprof/8520_gprs/5.0.0.rdf' => array( 'RIM', 'BlackBerry Curve 8520', 'BlackBerry OS', TYPE_MOBILE ),
3761
  'http://www.blackberry.net/go/mobile/profiles/uaprof/8520_usb/5.0.0.rdf' => array( 'RIM', 'BlackBerry Curve 8520', 'BlackBerry OS', TYPE_MOBILE ),
3762
+ 'http://device.sprintpcs.com/RIM/BlackBerry8530/5.0.0.1000.rdf' => array( 'RIM', 'BlackBerry Curve 8530', 'BlackBerry OS', TYPE_MOBILE ),
3763
+ 'http://device.sprintpcs.com/RIM/BlackBerry8530/5.0.0.654.rdf' => array( 'RIM', 'BlackBerry Curve 8530', 'BlackBerry OS', TYPE_MOBILE ),
3764
+ 'http://device.sprintpcs.com/RIM/BlackBerry8530/5.0.0.973.rdf' => array( 'RIM', 'BlackBerry Curve 8530', 'BlackBerry OS', TYPE_MOBILE ),
3765
+ 'http://www.blackberry.net/go/mobile/profiles/uaprof/8530/5.0.0.rdf' => array( 'RIM', 'BlackBerry Curve 8530', 'BlackBerry OS', TYPE_MOBILE ),
3766
+ 'http://www.blackberry.net/go/mobile/profiles/uaprof/8530_1x/5.0.0.rdf' => array( 'RIM', 'BlackBerry Curve 8530', 'BlackBerry OS', TYPE_MOBILE ),
3767
  'http://www.blackberry.net/go/mobile/profiles/uaprof/8530_80211g/5.0.0.rdf' => array( 'RIM', 'BlackBerry Curve 8530', 'BlackBerry OS', TYPE_MOBILE ),
3768
  'http://www.blackberry.net/go/mobile/profiles/uaprof/8530_evdo/5.0.0.rdf' => array( 'RIM', 'BlackBerry Curve 8530', 'BlackBerry OS', TYPE_MOBILE ),
3769
+ 'http://www.blackberry.net/go/mobile/profiles/uaprof/8900/5.0.0.rdf' => array( 'RIM', 'BlackBerry Curve 8900', 'BlackBerry OS', TYPE_MOBILE ),
3770
  'http://www.blackberry.net/go/mobile/profiles/uaprof/8900_80211g/4.6.1.rdf' => array( 'RIM', 'BlackBerry Curve 8900', 'BlackBerry OS', TYPE_MOBILE ),
3771
  'http://www.blackberry.net/go/mobile/profiles/uaprof/8900_80211g/5.0.0.rdf' => array( 'RIM', 'BlackBerry Curve 8900', 'BlackBerry OS', TYPE_MOBILE ),
3772
+ 'http://www.blackberry.net/go/mobile/profiles/uaprof/8900_edge/4.6.1.rdf' => array( 'RIM', 'BlackBerry Curve 8900', 'BlackBerry OS', TYPE_MOBILE ),
3773
  'http://www.blackberry.net/go/mobile/profiles/uaprof/8900_edge/5.0.0.rdf' => array( 'RIM', 'BlackBerry Curve 8900', 'BlackBerry OS', TYPE_MOBILE ),
3774
+ 'http://www.blackberry.net/go/mobile/profiles/uaprof/9220/7.1.0.rdf' => array( 'RIM', 'BlackBerry Curve 9220', 'BlackBerry OS', TYPE_MOBILE ),
3775
  'http://www.blackberry.net/go/mobile/profiles/uaprof/9220_80211g/7.1.0.rdf' => array( 'RIM', 'BlackBerry Curve 9220', 'BlackBerry OS', TYPE_MOBILE ),
3776
  'http://www.blackberry.net/go/mobile/profiles/uaprof/9220_edge/7.1.0.rdf' => array( 'RIM', 'BlackBerry Curve 9220', 'BlackBerry OS', TYPE_MOBILE ),
3777
  'http://www.blackberry.net/go/mobile/profiles/uaprof/9220_gprs/7.1.0.rdf' => array( 'RIM', 'BlackBerry Curve 9220', 'BlackBerry OS', TYPE_MOBILE ),
3778
+ 'http://www.blackberry.net/go/mobile/profiles/uaprof/9300/5.0.0.rdf' => array( 'RIM', 'BlackBerry Curve 9300', 'BlackBerry OS', TYPE_MOBILE ),
3779
+ 'http://www.blackberry.net/go/mobile/profiles/uaprof/9300/6.0.0.rdf' => array( 'RIM', 'BlackBerry Curve 9300', 'BlackBerry OS', TYPE_MOBILE ),
3780
  'http://www.blackberry.net/go/mobile/profiles/uaprof/9300_80211g/5.0.0.rdf' => array( 'RIM', 'BlackBerry Curve 9300', 'BlackBerry OS', TYPE_MOBILE ),
3781
  'http://www.blackberry.net/go/mobile/profiles/uaprof/9300_80211g/6.0.0.rdf' => array( 'RIM', 'BlackBerry Curve 9300', 'BlackBerry OS', TYPE_MOBILE ),
3782
+ 'http://www.blackberry.net/go/mobile/profiles/uaprof/9300_edge/5.0.0.rdf' => array( 'RIM', 'BlackBerry Curve 9300', 'BlackBerry OS', TYPE_MOBILE ),
3783
  'http://www.blackberry.net/go/mobile/profiles/uaprof/9300_edge/6.0.0.rdf' => array( 'RIM', 'BlackBerry Curve 9300', 'BlackBerry OS', TYPE_MOBILE ),
3784
  'http://www.blackberry.net/go/mobile/profiles/uaprof/9300_gprs/6.0.0.rdf' => array( 'RIM', 'BlackBerry Curve 9300', 'BlackBerry OS', TYPE_MOBILE ),
3785
  'http://www.blackberry.net/go/mobile/profiles/uaprof/9300_umts/5.0.0.rdf' => array( 'RIM', 'BlackBerry Curve 9300', 'BlackBerry OS', TYPE_MOBILE ),
3786
  'http://www.blackberry.net/go/mobile/profiles/uaprof/9300_umts/6.0.0.rdf' => array( 'RIM', 'BlackBerry Curve 9300', 'BlackBerry OS', TYPE_MOBILE ),
3787
+ 'http://www.blackberry.net/go/mobile/profiles/uaprof/9310/7.1.0.rdf' => array( 'RIM', 'BlackBerry Curve 9310', 'BlackBerry OS', TYPE_MOBILE ),
3788
  'http://www.blackberry.net/go/mobile/profiles/uaprof/9310_80211g/7.1.0.rdf' => array( 'RIM', 'BlackBerry Curve 9310', 'BlackBerry OS', TYPE_MOBILE ),
3789
  'http://www.blackberry.net/go/mobile/profiles/uaprof/9310_evdo/7.1.0.rdf' => array( 'RIM', 'BlackBerry Curve 9310', 'BlackBerry OS', TYPE_MOBILE ),
3790
  'http://www.blackberry.net/go/mobile/profiles/uaprof/9315_80211g/7.1.0.rdf' => array( 'RIM', 'BlackBerry Curve 9315', 'BlackBerry OS', TYPE_MOBILE ),
3796
  'http://www.blackberry.net/go/mobile/profiles/uaprof/9320_umts/7.1.0.rdf' => array( 'RIM', 'BlackBerry Curve 9320', 'BlackBerry OS', TYPE_MOBILE ),
3797
  'http://www.blackberry.net/go/mobile/profiles/uaprof/9320_usb/7.1.0.rdf' => array( 'RIM', 'BlackBerry Curve 9320', 'BlackBerry OS', TYPE_MOBILE ),
3798
  'http://device.sprintpcs.com/RIM/BlackBerry9330/6.0.0.707.rdf' => array( 'RIM', 'BlackBerry Curve 9330', 'BlackBerry OS', TYPE_MOBILE ),
3799
+ 'http://www.blackberry.net/go/mobile/profiles/uaprof/9330/5.0.0.rdf' => array( 'RIM', 'BlackBerry Curve 9330', 'BlackBerry OS', TYPE_MOBILE ),
3800
+ 'http://www.blackberry.net/go/mobile/profiles/uaprof/9330/6.0.0.rdf' => array( 'RIM', 'BlackBerry Curve 9330', 'BlackBerry OS', TYPE_MOBILE ),
3801
  'http://www.blackberry.net/go/mobile/profiles/uaprof/9330_1x/6.0.0.rdf' => array( 'RIM', 'BlackBerry Curve 9330', 'BlackBerry OS', TYPE_MOBILE ),
3802
  'http://www.blackberry.net/go/mobile/profiles/uaprof/9330_80211g/6.0.0.rdf' => array( 'RIM', 'BlackBerry Curve 9330', 'BlackBerry OS', TYPE_MOBILE ),
3803
+ 'http://www.blackberry.net/go/mobile/profiles/uaprof/9330_evdo/5.0.0.rdf' => array( 'RIM', 'BlackBerry Curve 9330', 'BlackBerry OS', TYPE_MOBILE ),
3804
  'http://www.blackberry.net/go/mobile/profiles/uaprof/9330_evdo/6.0.0.rdf' => array( 'RIM', 'BlackBerry Curve 9330', 'BlackBerry OS', TYPE_MOBILE ),
3805
  'http://device.sprintpcs.com/RIM/BlackBerry9350/7.1.0.580.rdf' => array( 'RIM', 'BlackBerry Curve 9350', 'BlackBerry OS', TYPE_MOBILE ),
3806
  'http://device.sprintpcs.com/RIM/BlackBerry9350/7.1.0.714.rdf' => array( 'RIM', 'BlackBerry Curve 9350', 'BlackBerry OS', TYPE_MOBILE ),
3809
  'http://www.blackberry.net/go/mobile/profiles/uaprof/9350_80211g/7.1.0.rdf' => array( 'RIM', 'BlackBerry Curve 9350', 'BlackBerry OS', TYPE_MOBILE ),
3810
  'http://www.blackberry.net/go/mobile/profiles/uaprof/9350_evdo/7.0.0.rdf' => array( 'RIM', 'BlackBerry Curve 9350', 'BlackBerry OS', TYPE_MOBILE ),
3811
  'http://www.blackberry.net/go/mobile/profiles/uaprof/9350_evdo/7.1.0.rdf' => array( 'RIM', 'BlackBerry Curve 9350', 'BlackBerry OS', TYPE_MOBILE ),
3812
+ 'http://www.blackberry.net/go/mobile/profiles/uaprof/9360/7.0.0.rdf' => array( 'RIM', 'BlackBerry Curve 9360', 'BlackBerry OS', TYPE_MOBILE ),
3813
+ 'http://www.blackberry.net/go/mobile/profiles/uaprof/9360/7.1.0.rdf' => array( 'RIM', 'BlackBerry Curve 9360', 'BlackBerry OS', TYPE_MOBILE ),
3814
  'http://www.blackberry.net/go/mobile/profiles/uaprof/9360_80211g/7.0.0.rdf' => array( 'RIM', 'BlackBerry Curve 9360', 'BlackBerry OS', TYPE_MOBILE ),
3815
  'http://www.blackberry.net/go/mobile/profiles/uaprof/9360_80211g/7.1.0.rdf' => array( 'RIM', 'BlackBerry Curve 9360', 'BlackBerry OS', TYPE_MOBILE ),
3816
  'http://www.blackberry.net/go/mobile/profiles/uaprof/9360_edge/7.0.0.rdf' => array( 'RIM', 'BlackBerry Curve 9360', 'BlackBerry OS', TYPE_MOBILE ),
3826
  'http://www.blackberry.net/go/mobile/profiles/uaprof/9370_edge/7.1.0.rdf' => array( 'RIM', 'BlackBerry Curve 9370', 'BlackBerry OS', TYPE_MOBILE ),
3827
  'http://www.blackberry.net/go/mobile/profiles/uaprof/9370_evdo/7.0.0.rdf' => array( 'RIM', 'BlackBerry Curve 9370', 'BlackBerry OS', TYPE_MOBILE ),
3828
  'http://www.blackberry.net/go/mobile/profiles/uaprof/9370_evdo/7.1.0.rdf' => array( 'RIM', 'BlackBerry Curve 9370', 'BlackBerry OS', TYPE_MOBILE ),
3829
+ 'http://www.blackberry.net/go/mobile/profiles/uaprof/9380/7.0.0.rdf' => array( 'RIM', 'BlackBerry Curve 9380', 'BlackBerry OS', TYPE_MOBILE ),
3830
+ 'http://www.blackberry.net/go/mobile/profiles/uaprof/9380/7.1.0.rdf' => array( 'RIM', 'BlackBerry Curve 9380', 'BlackBerry OS', TYPE_MOBILE ),
3831
  'http://www.blackberry.net/go/mobile/profiles/uaprof/9380_80211g/7.0.0.rdf' => array( 'RIM', 'BlackBerry Curve 9380', 'BlackBerry OS', TYPE_MOBILE ),
3832
  'http://www.blackberry.net/go/mobile/profiles/uaprof/9380_80211g/7.1.0.rdf' => array( 'RIM', 'BlackBerry Curve 9380', 'BlackBerry OS', TYPE_MOBILE ),
3833
  'http://www.blackberry.net/go/mobile/profiles/uaprof/9380_edge/7.0.0.rdf' => array( 'RIM', 'BlackBerry Curve 9380', 'BlackBerry OS', TYPE_MOBILE ),
3838
  'http://www.blackberry.net/go/mobile/profiles/uaprof/9380_umts/7.1.0.rdf' => array( 'RIM', 'BlackBerry Curve 9380', 'BlackBerry OS', TYPE_MOBILE ),
3839
  'http://www.blackberry.net/go/mobile/profiles/uaprof/8100/4.2.1.rdf' => array( 'RIM', 'BlackBerry Pearl 8100', 'BlackBerry OS', TYPE_MOBILE ),
3840
  'http://www.blackberry.net/go/mobile/profiles/uaprof/8120/4.3.0.rdf' => array( 'RIM', 'BlackBerry Pearl 8120', 'BlackBerry OS', TYPE_MOBILE ),
3841
+ 'http://www.blackberry.net/go/mobile/profiles/uaprof/8220_80211g/4.6.0.rdf' => array( 'RIM', 'BlackBerry Pearl 8220', 'BlackBerry OS', TYPE_MOBILE ),
3842
  'http://www.blackberry.net/go/mobile/profiles/uaprof/9100/4.6.0.rdf' => array( 'RIM', 'BlackBerry Pearl 9100', 'BlackBerry OS', TYPE_MOBILE ),
3843
  'http://www.blackberry.net/go/mobile/profiles/uaprof/9100_80211g/6.0.0.rdf' => array( 'RIM', 'BlackBerry Pearl 9100', 'BlackBerry OS', TYPE_MOBILE ),
3844
  'http://www.blackberry.net/go/mobile/profiles/uaprof/9100_edge/6.0.0.rdf' => array( 'RIM', 'BlackBerry Pearl 9100', 'BlackBerry OS', TYPE_MOBILE ),
3845
  'http://www.blackberry.net/go/mobile/profiles/uaprof/9100_umts/6.0.0.rdf' => array( 'RIM', 'BlackBerry Pearl 9100', 'BlackBerry OS', TYPE_MOBILE ),
3846
+ 'http://www.blackberry.net/go/mobile/profiles/uaprof/9105/5.0.0.rdf' => array( 'RIM', 'BlackBerry Pearl 9105', 'BlackBerry OS', TYPE_MOBILE ),
3847
+ 'http://www.blackberry.net/go/mobile/profiles/uaprof/9105/6.0.0.rdf' => array( 'RIM', 'BlackBerry Pearl 9105', 'BlackBerry OS', TYPE_MOBILE ),
3848
  'http://www.blackberry.net/go/mobile/profiles/uaprof/9105_80211g/5.0.0.rdf' => array( 'RIM', 'BlackBerry Pearl 9105', 'BlackBerry OS', TYPE_MOBILE ),
3849
  'http://www.blackberry.net/go/mobile/profiles/uaprof/9105_80211g/6.0.0.rdf' => array( 'RIM', 'BlackBerry Pearl 9105', 'BlackBerry OS', TYPE_MOBILE ),
3850
  'http://www.blackberry.net/go/mobile/profiles/uaprof/9105_edge/5.0.0.rdf' => array( 'RIM', 'BlackBerry Pearl 9105', 'BlackBerry OS', TYPE_MOBILE ),
3859
  'http://www.blackberry.net/go/mobile/profiles/uaprof/9981_gprs/7.1.0.rdf' => array( 'RIM', 'BlackBerry Porsche P 9981', 'BlackBerry OS', TYPE_MOBILE ),
3860
  'http://www.blackberry.net/go/mobile/profiles/uaprof/9981_umts/7.0.0.rdf' => array( 'RIM', 'BlackBerry Porsche P 9981', 'BlackBerry OS', TYPE_MOBILE ),
3861
  'http://www.blackberry.net/go/mobile/profiles/uaprof/9981_umts/7.1.0.rdf' => array( 'RIM', 'BlackBerry Porsche P 9981', 'BlackBerry OS', TYPE_MOBILE ),
3862
+ 'http://www.blackberry.net/go/mobile/profiles/uaprof/9500/5.0.0.rdf' => array( 'RIM', 'BlackBerry Storm 9500', 'BlackBerry OS', TYPE_MOBILE ),
3863
  'http://www.blackberry.net/go/mobile/profiles/uaprof/9500_edge/4.7.0.rdf' => array( 'RIM', 'BlackBerry Storm 9500', 'BlackBerry OS', TYPE_MOBILE ),
3864
+ 'http://www.blackberry.net/go/mobile/profiles/uaprof/9500_edge/5.0.0.rdf' => array( 'RIM', 'BlackBerry Storm 9500', 'BlackBerry OS', TYPE_MOBILE ),
3865
+ 'http://www.blackberry.net/go/mobile/profiles/uaprof/9500_umts/4.7.0.rdf' => array( 'RIM', 'BlackBerry Storm 9500', 'BlackBerry OS', TYPE_MOBILE ),
3866
  'http://www.blackberry.net/go/mobile/profiles/uaprof/9500_umts/5.0.0.rdf' => array( 'RIM', 'BlackBerry Storm 9500', 'BlackBerry OS', TYPE_MOBILE ),
3867
  'http://www.blackberry.net/go/mobile/profiles/uaprof/9530_edge/5.0.0.rdf' => array( 'RIM', 'BlackBerry Storm 9530', 'BlackBerry OS', TYPE_MOBILE ),
3868
  'http://www.blackberry.net/go/mobile/profiles/uaprof/9530_evdo/4.6.0.rdf' => array( 'RIM', 'BlackBerry Storm 9530', 'BlackBerry OS', TYPE_MOBILE ),
3869
  'http://www.blackberry.net/go/mobile/profiles/uaprof/9530_gprs/4.7.0.rdf' => array( 'RIM', 'BlackBerry Storm 9530', 'BlackBerry OS', TYPE_MOBILE ),
3870
  'http://www.blackberry.net/go/mobile/profiles/uaprof/9530_umts/4.7.0.rdf' => array( 'RIM', 'BlackBerry Storm 9530', 'BlackBerry OS', TYPE_MOBILE ),
3871
+ 'http://www.blackberry.net/go/mobile/profiles/uaprof/9530_umts/5.0.0.rdf' => array( 'RIM', 'BlackBerry Storm 9530', 'BlackBerry OS', TYPE_MOBILE ),
3872
+ 'http://www.blackberry.net/go/mobile/profiles/uaprof/9550/5.0.0.rdf' => array( 'RIM', 'BlackBerry Storm 9550', 'BlackBerry OS', TYPE_MOBILE ),
3873
  'http://www.blackberry.net/go/mobile/profiles/uaprof/9550_80211g/5.0.0.rdf' => array( 'RIM', 'BlackBerry Storm 9550', 'BlackBerry OS', TYPE_MOBILE ),
3874
+ 'http://www.blackberry.net/go/mobile/profiles/uaprof/9550_edge/5.0.0.rdf' => array( 'RIM', 'BlackBerry Storm 9550', 'BlackBerry OS', TYPE_MOBILE ),
3875
  'http://www.blackberry.net/go/mobile/profiles/uaprof/9550_evdo/5.0.0.rdf' => array( 'RIM', 'BlackBerry Storm 9550', 'BlackBerry OS', TYPE_MOBILE ),
3876
+ 'http://www.blackberry.net/go/mobile/profiles/uaprof/9550_umts/5.0.0.rdf' => array( 'RIM', 'BlackBerry Storm 9550', 'BlackBerry OS', TYPE_MOBILE ),
3877
+ 'http://www.blackberry.net/go/mobile/profiles/uaprof/9520/5.0.0.rdf' => array( 'RIM', 'BlackBerry Storm2 9520', 'BlackBerry OS', TYPE_MOBILE ),
3878
  'http://www.blackberry.net/go/mobile/profiles/uaprof/9520_80211g/5.0.0.rdf' => array( 'RIM', 'BlackBerry Storm2 9520', 'BlackBerry OS', TYPE_MOBILE ),
3879
+ 'http://www.blackberry.net/go/mobile/profiles/uaprof/9520_edge/5.0.0.rdf' => array( 'RIM', 'BlackBerry Storm2 9520', 'BlackBerry OS', TYPE_MOBILE ),
3880
+ 'http://www.blackberry.net/go/mobile/profiles/uaprof/9520_gprs/5.0.0.rdf' => array( 'RIM', 'BlackBerry Storm2 9520', 'BlackBerry OS', TYPE_MOBILE ),
3881
+ 'http://www.blackberry.net/go/mobile/profiles/uaprof/9520_umts/5.0.0.rdf' => array( 'RIM', 'BlackBerry Storm2 9520', 'BlackBerry OS', TYPE_MOBILE ),
3882
+ 'http://device.sprintpcs.com/RIM/BlackBerry9670/6.0.0.706.rdf' => array( 'RIM', 'BlackBerry Style 9670', 'BlackBerry OS', TYPE_MOBILE ),
3883
+ 'http://www.blackberry.net/go/mobile/profiles/uaprof/9670/6.0.0.rdf' => array( 'RIM', 'BlackBerry Style 9670', 'BlackBerry OS', TYPE_MOBILE ),
3884
  'http://www.blackberry.net/go/mobile/profiles/uaprof/9670_1x/6.0.0.rdf' => array( 'RIM', 'BlackBerry Style 9670', 'BlackBerry OS', TYPE_MOBILE ),
3885
  'http://www.blackberry.net/go/mobile/profiles/uaprof/9670_80211b/6.0.0.rdf' => array( 'RIM', 'BlackBerry Style 9670', 'BlackBerry OS', TYPE_MOBILE ),
3886
  'http://www.blackberry.net/go/mobile/profiles/uaprof/9670_80211g/6.0.0.rdf' => array( 'RIM', 'BlackBerry Style 9670', 'BlackBerry OS', TYPE_MOBILE ),
3887
  'http://www.blackberry.net/go/mobile/profiles/uaprof/9670_evdo/6.0.0.rdf' => array( 'RIM', 'BlackBerry Style 9670', 'BlackBerry OS', TYPE_MOBILE ),
3888
  'http://www.blackberry.net/go/mobile/profiles/uaprof/9800/6.0.0.rdf' => array( 'RIM', 'BlackBerry Torch 9800', 'BlackBerry OS', TYPE_MOBILE ),
3889
+ 'http://www.blackberry.net/go/mobile/profiles/uaprof/9800_80211b/6.0.0.rdf' => array( 'RIM', 'BlackBerry Torch 9800', 'BlackBerry OS', TYPE_MOBILE ),
3890
  'http://www.blackberry.net/go/mobile/profiles/uaprof/9800_80211g/6.0.0.rdf' => array( 'RIM', 'BlackBerry Torch 9800', 'BlackBerry OS', TYPE_MOBILE ),
3891
  'http://www.blackberry.net/go/mobile/profiles/uaprof/9800_edge/6.0.0.rdf' => array( 'RIM', 'BlackBerry Torch 9800', 'BlackBerry OS', TYPE_MOBILE ),
3892
  'http://www.blackberry.net/go/mobile/profiles/uaprof/9800_gprs/6.0.0.rdf' => array( 'RIM', 'BlackBerry Torch 9800', 'BlackBerry OS', TYPE_MOBILE ),
3893
  'http://www.blackberry.net/go/mobile/profiles/uaprof/9800_umts/6.0.0.rdf' => array( 'RIM', 'BlackBerry Torch 9800', 'BlackBerry OS', TYPE_MOBILE ),
3894
  'http://www.blackberry.net/go/mobile/profiles/uaprof/9800_usb/6.0.0.rdf' => array( 'RIM', 'BlackBerry Torch 9800', 'BlackBerry OS', TYPE_MOBILE ),
3895
+ 'http://www.blackberry.net/go/mobile/profiles/uaprof/9810/7.0.0.rdf' => array( 'RIM', 'BlackBerry Torch 9810', 'BlackBerry OS', TYPE_MOBILE ),
3896
  'http://www.blackberry.net/go/mobile/profiles/uaprof/9810/7.1.0.rdf' => array( 'RIM', 'BlackBerry Torch 9810', 'BlackBerry OS', TYPE_MOBILE ),
3897
  'http://www.blackberry.net/go/mobile/profiles/uaprof/9810_80211g/6.1.0.rdf' => array( 'RIM', 'BlackBerry Torch 9810', 'BlackBerry OS', TYPE_MOBILE ),
3898
  'http://www.blackberry.net/go/mobile/profiles/uaprof/9810_80211g/7.0.0.rdf' => array( 'RIM', 'BlackBerry Torch 9810', 'BlackBerry OS', TYPE_MOBILE ),
3915
  'http://www.blackberry.net/go/mobile/profiles/uaprof/9850_umts/7.0.0.rdf' => array( 'RIM', 'BlackBerry Torch 9850', 'BlackBerry OS', TYPE_MOBILE ),
3916
  'http://www.blackberry.net/go/mobile/profiles/uaprof/9850_umts/7.1.0.rdf' => array( 'RIM', 'BlackBerry Torch 9850', 'BlackBerry OS', TYPE_MOBILE ),
3917
  'http://www.blackberry.net/go/mobile/profiles/uaprof/9860/7.0.0.rdf' => array( 'RIM', 'BlackBerry Torch 9860', 'BlackBerry OS', TYPE_MOBILE ),
3918
+ 'http://www.blackberry.net/go/mobile/profiles/uaprof/9860/7.1.0.rdf' => array( 'RIM', 'BlackBerry Torch 9860', 'BlackBerry OS', TYPE_MOBILE ),
3919
  'http://www.blackberry.net/go/mobile/profiles/uaprof/9860_80211g/6.1.0.rdf' => array( 'RIM', 'BlackBerry Torch 9860', 'BlackBerry OS', TYPE_MOBILE ),
3920
  'http://www.blackberry.net/go/mobile/profiles/uaprof/9860_80211g/7.0.0.rdf' => array( 'RIM', 'BlackBerry Torch 9860', 'BlackBerry OS', TYPE_MOBILE ),
3921
  'http://www.blackberry.net/go/mobile/profiles/uaprof/9860_80211g/7.1.0.rdf' => array( 'RIM', 'BlackBerry Torch 9860', 'BlackBerry OS', TYPE_MOBILE ),
3927
  'http://www.blackberry.net/go/mobile/profiles/uaprof/9860_umts/7.1.0.rdf' => array( 'RIM', 'BlackBerry Torch 9860', 'BlackBerry OS', TYPE_MOBILE ),
3928
  'http://www.blackberry.net/go/mobile/profiles/uaprof/9860_usb/7.0.0.rdf' => array( 'RIM', 'BlackBerry Torch 9860', 'BlackBerry OS', TYPE_MOBILE ),
3929
  'http://www.blackberry.net/go/mobile/profiles/uaprof/9860_usb/7.1.0.rdf' => array( 'RIM', 'BlackBerry Torch 9860', 'BlackBerry OS', TYPE_MOBILE ),
3930
+ 'http://device.sprintpcs.com/RIM/BlackBerry9630/5.0.0.624.rdf' => array( 'RIM', 'BlackBerry Tour 9630', 'BlackBerry OS', TYPE_MOBILE ),
3931
+ 'http://www.blackberry.net/go/mobile/profiles/uaprof/9630/5.0.0.rdf' => array( 'RIM', 'BlackBerry Tour 9630', 'BlackBerry OS', TYPE_MOBILE ),
3932
+ 'http://www.blackberry.net/go/mobile/profiles/uaprof/9630_edge/5.0.0.rdf' => array( 'RIM', 'BlackBerry Tour 9630', 'BlackBerry OS', TYPE_MOBILE ),
3933
+ 'http://www.blackberry.net/go/mobile/profiles/uaprof/9630_evdo/5.0.0.rdf' => array( 'RIM', 'BlackBerry Tour 9630', 'BlackBerry OS', TYPE_MOBILE ),
3934
+ 'http://www.blackberry.net/go/mobile/profiles/uaprof/9630_umts/5.0.0.rdf' => array( 'RIM', 'BlackBerry Tour 9630', 'BlackBerry OS', TYPE_MOBILE ),
3935
  'http://extranet.sagem.com/UAProfile/823044.xml' => array( 'Sagem', '3XXX', NULL, TYPE_MOBILE ),
3936
  'http://extranet.sagem.com/UAProfile/890054.xml' => array( 'Sagem', 'CO210', NULL, TYPE_MOBILE ),
3937
  'http://extranet.sagem.com/UAProfile/897807.xml' => array( 'Sagem', 'MC2007', NULL, TYPE_MOBILE ),
3980
  'http://extranet.sagem.com/UAProfile/P9521.xml' => array( 'Sagem', 'Porsche Design P9521', NULL, TYPE_MOBILE ),
3981
  'http://extranet.sagem.com/UAProfile/898770.xml' => array( 'Sagem', 'VF526', NULL, TYPE_MOBILE ),
3982
  'http://extranet.sagem.com/UAProfile/899483.xml' => array( 'Sagem', 'VF533', NULL, TYPE_MOBILE ),
3983
+ 'http://wap.samsungmobile.com/uaprof/SGH-A697.xml' => array( 'Samsung', 'A697 Sunburst', NULL, TYPE_MOBILE ),
3984
  'http://wap.samsungmobile.com/uaprof/SGH-A827.xml' => array( 'Samsung', 'Access', NULL, TYPE_MOBILE ),
3985
  'http://uaprof.qma.com.tw/SAMSUNG-SCH-I619_CHN_BRI.xml' => array( 'Samsung', 'Ace A+', 'Android', TYPE_MOBILE ),
3986
  'http://wap.samsungmobile.com/uaprof/GT-B6520.xml' => array( 'Samsung', 'B6520 OmniaPRO 5', 'Windows Mobile', TYPE_MOBILE ),
4013
  'http://wap.samsungmobile.com/uaprof/GT-E2262UAProf.xml' => array( 'Samsung', 'Ch@t 226', NULL, TYPE_MOBILE ),
4014
  'http://wap.samsungmobile.com/uaprof/GT-C3222.xml' => array( 'Samsung', 'Ch@t 322', NULL, TYPE_MOBILE ),
4015
  'http://wap.samsungmobile.com/uaprof/GT-C3222BR.xml' => array( 'Samsung', 'Ch@t 322', NULL, TYPE_MOBILE ),
4016
+ 'http://wap.samsungmobile.com/uaprof/GT-S3332BR.xml' => array( 'Samsung', 'Ch@t 333', NULL, TYPE_MOBILE ),
4017
  'http://wap.samsungmobile.com/uaprof/GT-S3350UAProf.xml' => array( 'Samsung', 'Ch@t 335', NULL, TYPE_MOBILE ),
4018
+ 'http://wap.samsungmobile.com/uaprof/GT-S3353UAProf.xml' => array( 'Samsung', 'Ch@t 335', NULL, TYPE_MOBILE ),
4019
  'http://wap.samsungmobile.com/uaprof/GT-C3500.xml' => array( 'Samsung', 'Ch@t 350', NULL, TYPE_MOBILE ),
4020
  'http://wap.samsungmobile.com/uaprof/GT-S3570.xml' => array( 'Samsung', 'Ch@t 357', NULL, TYPE_MOBILE ),
4021
+ 'http://wap.samsungmobile.com/uaprof/GT-S3572.xml' => array( 'Samsung', 'Ch@t 357', NULL, TYPE_MOBILE ),
4022
+ 'http://wap.samsungmobile.com/uaprof/GT-S5270LBR_3G.xml' => array( 'Samsung', 'Ch@t 527', NULL, TYPE_MOBILE ),
4023
  'http://wap.samsungmobile.com/uaprof/GT-S5270L_3G.xml' => array( 'Samsung', 'Ch@t 527', NULL, TYPE_MOBILE ),
4024
  'http://wap.samsungmobile.com/uaprof/GT-S5270Y_3G.xml' => array( 'Samsung', 'Ch@t 527', NULL, TYPE_MOBILE ),
4025
+ 'http://wap.samsungmobile.com/uaprof/GT-S5270_3G.rdf' => array( 'Samsung', 'Ch@t 527', NULL, TYPE_MOBILE ),
4026
  'http://wap.samsungmobile.com/uaprof/GT-C3300i.xml' => array( 'Samsung', 'Champ', 'Touchwiz', TYPE_MOBILE ),
4027
  'http://wap.samsungmobile.com/uaprof/GT-C3303.xml' => array( 'Samsung', 'Champ', 'Touchwiz', TYPE_MOBILE ),
4028
+ 'http://wap.samsungmobile.com/uaprof/GT-C3303i.xml' => array( 'Samsung', 'Champ', 'Touchwiz', TYPE_MOBILE ),
4029
  'http://wap.samsungmobile.com/uaprof/GT-C3330UAProf.xml' => array( 'Samsung', 'Champ 2', 'Touchwiz', TYPE_MOBILE ),
4030
  'http://wap.samsungmobile.com/uaprof/GT-C3332UAProf.xml' => array( 'Samsung', 'Champ 2', 'Touchwiz', TYPE_MOBILE ),
4031
  'http://wap.samsungmobile.com/uaprof/GT-S3770_2G.rdf' => array( 'Samsung', 'Champ 3G', 'TouchWiz', TYPE_MOBILE ),
4035
  'http://wap.samsungmobile.com/uaprof/GT-C3312RUAProf.xml' => array( 'Samsung', 'Champ Deluxe Duos', 'Touchwiz', TYPE_MOBILE ),
4036
  'http://wap.samsungmobile.com/uaprof/GT-C3312UAProf.xml' => array( 'Samsung', 'Champ Deluxe Duos', 'Touchwiz', TYPE_MOBILE ),
4037
  'http://wap.samsungmobile.com/uaprof/GT-E2652WUAProf.xml' => array( 'Samsung', 'Champ Duos', 'Touchwiz', TYPE_MOBILE ),
4038
+ 'http://wap.samsungmobile.com/uaprof/GT-C3262.xml' => array( 'Samsung', 'Champ Neo Duos', 'Touchwiz', TYPE_MOBILE ),
4039
  'http://device.sprintpcs.com/Samsung/SPH-D600/FE16.rdf' => array( 'Samsung', 'Conquer 4G', 'Android', TYPE_MOBILE ),
4040
  'http://wap.samsungmobile.com/uaprof/GT-B3310UAProf.xml' => array( 'Samsung', 'Corby', NULL, TYPE_MOBILE ),
4041
  'http://wap.samsungmobile.com/uaprof/GT-S3650.rdf' => array( 'Samsung', 'Corby', 'Touchwiz', TYPE_MOBILE ),
4042
  'http://wap.samsungmobile.com/uaprof/GT-S3650.xml' => array( 'Samsung', 'Corby', 'Touchwiz', TYPE_MOBILE ),
4043
+ 'http://wap.samsungmobile.com/uaprof/GT-S3650C.rdf' => array( 'Samsung', 'Corby', 'Touchwiz', TYPE_MOBILE ),
4044
  'http://wap.samsungmobile.com/uaprof/GT-S3653.rdf' => array( 'Samsung', 'Corby', 'Touchwiz', TYPE_MOBILE ),
4045
  'http://wap.samsungmobile.com/uaprof/GT-S3653W.rdf' => array( 'Samsung', 'Corby', 'Touchwiz', TYPE_MOBILE ),
4046
  'http://wap.samsungmobile.com/uaprof/GT-S3370.rdf' => array( 'Samsung', 'Corby 3G', 'Touchwiz', TYPE_MOBILE ),
4048
  'http://wap.samsungmobile.com/uaprof/GT-M3710TCE.xml' => array( 'Samsung', 'Corby Beat', 'Touchwiz', TYPE_MOBILE ),
4049
  'http://wap.samsungmobile.com/uaprof/GT-S3850.rdf' => array( 'Samsung', 'Corby II', 'Touchwiz', TYPE_MOBILE ),
4050
  'http://wap.samsungmobile.com/uaprof/GT-S3850BR.xml' => array( 'Samsung', 'Corby II', 'Touchwiz', TYPE_MOBILE ),
4051
+ 'http://wap.samsungmobile.com/uaprof/GT-B3313UAProf.xml' => array( 'Samsung', 'Corby Mate', NULL, TYPE_MOBILE ),
4052
  'http://wap.samsungmobile.com/uaprof/GT-C3510T.rdf' => array( 'Samsung', 'Corby Pop', NULL, TYPE_MOBILE ),
4053
  'http://wap.samsungmobile.com/uaprof/GT-B5310.rdf' => array( 'Samsung', 'Corby Pro', 'Touchwiz', TYPE_MOBILE ),
4054
  'http://wap.samsungmobile.com/uaprof/GT-B5310_3G.rdf' => array( 'Samsung', 'Corby Pro', 'Touchwiz', TYPE_MOBILE ),
4069
  'http://wap.samsungmobile.com/uaprof/SGH-A867.xml' => array( 'Samsung', 'Eternity', NULL, TYPE_MOBILE ),
4070
  'http://wap.samsungmobile.com/uaprof/SGH-T759.xml' => array( 'Samsung', 'Exhibit 4G', 'Android', TYPE_MOBILE ),
4071
  'http://nmsc.ctvap.cn/uaprof/SCH/SCH_F839_3_20090707.xml' => array( 'Samsung', 'F839', 'Brew', TYPE_MOBILE ),
4072
+ 'http://wap.samsungmobile.com/uaprof/SGH-G600.xml' => array( 'Samsung', 'G600', NULL, TYPE_MOBILE ),
4073
  'http://wap.samsungmobile.com/uaprof/GT-i5500.xml' => array( 'Samsung', 'Galaxy 5', 'Android', TYPE_MOBILE ),
4074
  'http://wap.samsungmobile.com/uaprof/GT-i5500B.xml' => array( 'Samsung', 'Galaxy 5', 'Android', TYPE_MOBILE ),
4075
  'http://wap.samsungmobile.com/uaprof/GT-i5500L.xml' => array( 'Samsung', 'Galaxy 5', 'Android', TYPE_MOBILE ),
4076
  'http://wap.samsungmobile.com/uaprof/GT-i5503.xml' => array( 'Samsung', 'Galaxy 5', 'Android', TYPE_MOBILE ),
4077
+ 'http://wap.samsungmobile.com/uaprof/GT-i5503T_Froyo.rdf' => array( 'Samsung', 'Galaxy 5', 'Android', TYPE_MOBILE ),
4078
  'http://wap.samsungmobile.com/uaprof/GT-i5510.xml' => array( 'Samsung', 'Galaxy 551', 'Android', TYPE_MOBILE ),
4079
  'http://wap.samsungmobile.com/uaprof/GT-I5510BR.xml' => array( 'Samsung', 'Galaxy 551', 'Android', TYPE_MOBILE ),
4080
  'http://wap.samsungmobile.com/uaprof/GT-I5510L.xml' => array( 'Samsung', 'Galaxy 551', 'Android', TYPE_MOBILE ),
4091
  'http://wap.samsungmobile.com/uaprof/GT-S5830L.xml' => array( 'Samsung', 'Galaxy Ace', 'Android', TYPE_MOBILE ),
4092
  'http://wap.samsungmobile.com/uaprof/GT-S5830M.xml' => array( 'Samsung', 'Galaxy Ace', 'Android', TYPE_MOBILE ),
4093
  'http://wap.samsungmobile.com/uaprof/GT-S5830T.xml' => array( 'Samsung', 'Galaxy Ace', 'Android', TYPE_MOBILE ),
4094
+ 'http://wap.samsungmobile.com/uaprof/GT-S5830V.xml' => array( 'Samsung', 'Galaxy Ace', 'Android', TYPE_MOBILE ),
4095
+ 'http://wap.samsungmobile.com/uaprof/GT-S5831i.xml' => array( 'Samsung', 'Galaxy Ace', 'Android', TYPE_MOBILE ),
4096
  'http://wap.samsungmobile.com/uaprof/GT-S5839i.xml' => array( 'Samsung', 'Galaxy Ace', 'Android', TYPE_MOBILE ),
4097
  'http://wap.samsungmobile.com/uaprof/GT-S5839iBO.xml' => array( 'Samsung', 'Galaxy Ace', 'Android', TYPE_MOBILE ),
4098
  'http://wap.samsungmobile.com/uaprof/GT-S5839iBV.xml' => array( 'Samsung', 'Galaxy Ace', 'Android', TYPE_MOBILE ),
4102
  'http://wap.samsungmobile.com/uaprof/GT-I8160L.xml' => array( 'Samsung', 'Galaxy Ace 2', 'Android', TYPE_MOBILE ),
4103
  'http://wap.samsungmobile.com/uaprof/GT-I8160P.xml' => array( 'Samsung', 'Galaxy Ace 2', 'Android', TYPE_MOBILE ),
4104
  'http://wap.samsungmobile.com/uaprof/GT-S7270.xml' => array( 'Samsung', 'Galaxy Ace 3', 'Android', TYPE_MOBILE ),
4105
+ 'http://wap.samsungmobile.com/uaprof/GT-S7270L.xml' => array( 'Samsung', 'Galaxy Ace 3', 'Android', TYPE_MOBILE ),
4106
+ 'http://wap.samsungmobile.com/uaprof/GT-S7275B.xml' => array( 'Samsung', 'Galaxy Ace 3', 'Android', TYPE_MOBILE ),
4107
+ 'http://wap.samsungmobile.com/uaprof/GT-S7275R.xml' => array( 'Samsung', 'Galaxy Ace 3', 'Android', TYPE_MOBILE ),
4108
+ 'http://wap.samsungmobile.com/uaprof/GT-S7275RBO.xml' => array( 'Samsung', 'Galaxy Ace 3', 'Android', TYPE_MOBILE ),
4109
+ 'http://wap.samsungmobile.com/uaprof/GT-S7275T.xml' => array( 'Samsung', 'Galaxy Ace 3', 'Android', TYPE_MOBILE ),
4110
+ 'http://wap.samsungmobile.com/uaprof/GT-S7275Y.xml' => array( 'Samsung', 'Galaxy Ace 3', 'Android', TYPE_MOBILE ),
4111
  'http://nmsc.ctvap.cn/uaprof/SCH/SCH_I619_1_20120112.xml' => array( 'Samsung', 'Galaxy Ace A+', 'Android', TYPE_MOBILE ),
4112
  'http://wap.samsungmobile.com/uaprof/SCH-I619.xml' => array( 'Samsung', 'Galaxy Ace A+', 'Android', TYPE_MOBILE ),
4113
  'http://nmsc.ctvap.cn/uaprof/SCH/SCH_i589_1_20110504.xml' => array( 'Samsung', 'Galaxy Ace Duos', 'Android', TYPE_MOBILE ),
4115
  'http://wap.samsungmobile.com/uaprof/GT-S6802.xml' => array( 'Samsung', 'Galaxy Ace Duos', 'Android', TYPE_MOBILE ),
4116
  'http://wap.samsungmobile.com/uaprof/GT-S6802B.xml' => array( 'Samsung', 'Galaxy Ace Duos', 'Android', TYPE_MOBILE ),
4117
  'http://wap.samsungmobile.com/uaprof/GT-S7560.xml' => array( 'Samsung', 'Galaxy Ace II x', 'Android', TYPE_MOBILE ),
4118
+ 'http://wap.samsungmobile.com/uaprof/GT-S7560BO.xml' => array( 'Samsung', 'Galaxy Ace II x', 'Android', TYPE_MOBILE ),
4119
  'http://wap.samsungmobile.com/uaprof/GT-S7560M.xml' => array( 'Samsung', 'Galaxy Ace II x', 'Android', TYPE_MOBILE ),
4120
  'http://nmsc.ctvap.cn/uaprof/SCH/SCH_I659_1_20120627.xml' => array( 'Samsung', 'Galaxy Ace Plus', 'Android', TYPE_MOBILE ),
4121
  'http://wap.samsungmobile.com/uaprof/GT-S7500.xml' => array( 'Samsung', 'Galaxy Ace Plus', 'Android', TYPE_MOBILE ),
4135
  'http://wap.samsungmobile.com/uaprof/GT-I8260L.xml' => array( 'Samsung', 'Galaxy Core', 'Android', TYPE_MOBILE ),
4136
  'http://wap.samsungmobile.com/uaprof/GT-I8262.xml' => array( 'Samsung', 'Galaxy Core', 'Android', TYPE_MOBILE ),
4137
  'http://wap.samsungmobile.com/uaprof/GT-I8262B.xml' => array( 'Samsung', 'Galaxy Core', 'Android', TYPE_MOBILE ),
4138
+ 'http://wap.samsungmobile.com/uaprof/SM-G386F.xml' => array( 'Samsung', 'Galaxy Core', 'Android', TYPE_MOBILE ),
4139
+ 'http://wap.samsungmobile.com/uaprof/SM-G350.xml' => array( 'Samsung', 'Galaxy Core Plus', 'Android', TYPE_MOBILE ),
4140
  'http://wap.samsungmobile.com/uaprof/SCH-S735C.xml' => array( 'Samsung', 'Galaxy Discover', 'Android', TYPE_MOBILE ),
4141
  'http://wap.samsungmobile.com/uaprof/SGH-S730G.xml' => array( 'Samsung', 'Galaxy Discover', 'Android', TYPE_MOBILE ),
4142
  'http://wap.samsungmobile.com/uaprof/SGH-S730M.xml' => array( 'Samsung', 'Galaxy Discover', 'Android', TYPE_MOBILE ),
4150
  'http://wap.samsungmobile.com/uaprof/GT-I8730T.xml' => array( 'Samsung', 'Galaxy Express', 'Android', TYPE_MOBILE ),
4151
  'http://wap.samsungmobile.com/uaprof/SGH-I437.xml' => array( 'Samsung', 'Galaxy Express', 'Android', TYPE_MOBILE ),
4152
  'http://wap.samsungmobile.com/uaprof/SGH-I437P.xml' => array( 'Samsung', 'Galaxy Express', 'Android', TYPE_MOBILE ),
4153
+ 'http://wap.samsungmobile.com/uaprof/SGH-I437Z.xml' => array( 'Samsung', 'Galaxy Express', 'Android', TYPE_MOBILE ),
4154
  'http://wap.samsungmobile.com/uaprof/GT-S6810.xml' => array( 'Samsung', 'Galaxy Fame', 'Android', TYPE_MOBILE ),
4155
  'http://wap.samsungmobile.com/uaprof/GT-S6810B.xml' => array( 'Samsung', 'Galaxy Fame', 'Android', TYPE_MOBILE ),
4156
+ 'http://wap.samsungmobile.com/uaprof/GT-S6810E.xml' => array( 'Samsung', 'Galaxy Fame', 'Android', TYPE_MOBILE ),
4157
  'http://wap.samsungmobile.com/uaprof/GT-S6810L.xml' => array( 'Samsung', 'Galaxy Fame', 'Android', TYPE_MOBILE ),
4158
  'http://wap.samsungmobile.com/uaprof/GT-S6810M.xml' => array( 'Samsung', 'Galaxy Fame', 'Android', TYPE_MOBILE ),
4159
  'http://wap.samsungmobile.com/uaprof/GT-S6810P.xml' => array( 'Samsung', 'Galaxy Fame', 'Android', TYPE_MOBILE ),
4167
  'http://wap.samsungmobile.com/uaprof/GT-S5660L.xml' => array( 'Samsung', 'Galaxy Gio', 'Android', TYPE_MOBILE ),
4168
  'http://wap.samsungmobile.com/uaprof/GT-S5660M.xml' => array( 'Samsung', 'Galaxy Gio', 'Android', TYPE_MOBILE ),
4169
  'http://wap.samsungmobile.com/uaprof/GT-S5660V.xml' => array( 'Samsung', 'Galaxy Gio', 'Android', TYPE_MOBILE ),
4170
+ 'http://nmsc.ctvap.cn/uaprof/SCH/SCH_SCH-I879E_1_20131122.xml' => array( 'Samsung', 'Galaxy Grand', 'Android', TYPE_MOBILE ),
4171
  'http://wap.samsungmobile.com/uaprof/GT-I9080L.xml' => array( 'Samsung', 'Galaxy Grand', 'Android', TYPE_MOBILE ),
4172
+ 'http://wap.samsungmobile.com/uaprof/SM-G7105.xml' => array( 'Samsung', 'Galaxy Grand 2', 'Android', TYPE_MOBILE ),
4173
  'http://wap.samsungmobile.com/uaprof/GT-I9082.xml' => array( 'Samsung', 'Galaxy Grand Duos', 'Android', TYPE_MOBILE ),
4174
  'http://wap.samsungmobile.com/uaprof/GT-I9082L.xml' => array( 'Samsung', 'Galaxy Grand Duos', 'Android', TYPE_MOBILE ),
4175
+ 'http://wap.samsungmobile.com/uaprof/SM-G7102.xml' => array( 'Samsung', 'Galaxy Grand II', 'Android', TYPE_MOBILE ),
4176
+ 'http://wap.samsungmobile.com/uaprof/GT-I9060.xml' => array( 'Samsung', 'Galaxy Grand Neo', 'Android', TYPE_MOBILE ),
4177
  'http://nmsc.ctvap.cn/uaprof/SCH/SCH_I759_1_20130111.xml' => array( 'Samsung', 'Galaxy Infinite', 'Android', TYPE_MOBILE ),
4178
  'http://uaprof.vtext.com/sam/SCH-I200PP/SCH-I200PP.xml' => array( 'Samsung', 'Galaxy Legend', 'Android', TYPE_MOBILE ),
4179
+ 'http://wap.samsungmobile.com/uaprof/SGH-T399.xml' => array( 'Samsung', 'Galaxy Light', 'Android', TYPE_MOBILE ),
4180
+ 'http://nmsc.ctvap.cn/uaprof/SCH/SCH_SCH-P709E_1_20140113.xml' => array( 'Samsung', 'Galaxy Mega 5.8', 'Android', TYPE_MOBILE ),
4181
  'http://wap.samsungmobile.com/uaprof/GT-I9150.xml' => array( 'Samsung', 'Galaxy Mega 5.8', 'Android', TYPE_MOBILE ),
4182
  'http://wap.samsungmobile.com/uaprof/GT-I9152.xml' => array( 'Samsung', 'Galaxy Mega 5.8 Duos', 'Android', TYPE_MOBILE ),
4183
  'http://device.sprintpcs.com/Samsung/SPH-L600-SPRINT/MI6.rdf' => array( 'Samsung', 'Galaxy Mega 6.3', 'Android', TYPE_MOBILE ),
4184
+ 'http://device.sprintpcs.com/Samsung/SPH-L600-SPRINT/MK1.rdf' => array( 'Samsung', 'Galaxy Mega 6.3', 'Android', TYPE_MOBILE ),
4185
+ 'http://device.sprintpcs.com/Samsung/SPH-L600-SPRINT/NA7.rdf' => array( 'Samsung', 'Galaxy Mega 6.3', 'Android', TYPE_MOBILE ),
4186
  'http://nmsc.ctvap.cn/uaprof/SCH/SCH_P729_1_20130510.xml' => array( 'Samsung', 'Galaxy Mega 6.3', 'Android', TYPE_MOBILE ),
4187
  'http://wap.samsungmobile.com/uaprof/GT-I9200.xml' => array( 'Samsung', 'Galaxy Mega 6.3', 'Android', TYPE_MOBILE ),
4188
  'http://wap.samsungmobile.com/uaprof/GT-I9205.xml' => array( 'Samsung', 'Galaxy Mega 6.3', 'Android', TYPE_MOBILE ),
4211
  'http://wap.samsungmobile.com/uaprof/GT-I9220.xml' => array( 'Samsung', 'Galaxy Note', 'Android', TYPE_MOBILE ),
4212
  'http://wap.samsungmobile.com/uaprof/GT-I9228.xml' => array( 'Samsung', 'Galaxy Note', 'Android', TYPE_MOBILE ),
4213
  'http://wap.samsungmobile.com/uaprof/GT-N7000.xml' => array( 'Samsung', 'Galaxy Note', 'Android', TYPE_MOBILE ),
4214
+ 'http://wap.samsungmobile.com/uaprof/GT-N7000.xmlhttp://wap.samsungmobile.com/uaprof/.xml' => array( 'Samsung', 'Galaxy Note', 'Android', TYPE_MOBILE ),
4215
  'http://wap.samsungmobile.com/uaprof/GT-N7000B.xml' => array( 'Samsung', 'Galaxy Note', 'Android', TYPE_MOBILE ),
4216
  'http://wap.samsungmobile.com/uaprof/GT-N7000BO.xml' => array( 'Samsung', 'Galaxy Note', 'Android', TYPE_MOBILE ),
4217
  'http://wap.samsungmobile.com/uaprof/GT-N7005.xml' => array( 'Samsung', 'Galaxy Note', 'Android', TYPE_MOBILE ),
4234
  'http://wap.samsungmobile.com/uaprof/SM-P600.xml' => array( 'Samsung', 'Galaxy Note 10.1 (2014)', 'Android', TYPE_TABLET ),
4235
  'http://wap.samsungmobile.com/uaprof/SM-P601.xml' => array( 'Samsung', 'Galaxy Note 10.1 (2014)', 'Android', TYPE_TABLET ),
4236
  'http://wap.samsungmobile.com/uaprof/SM-P605.xml' => array( 'Samsung', 'Galaxy Note 10.1 (2014)', 'Android', TYPE_TABLET ),
4237
+ 'http://wap.samsungmobile.com/uaprof/SM-P605BO.xml' => array( 'Samsung', 'Galaxy Note 10.1 (2014)', 'Android', TYPE_TABLET ),
4238
  'http://wap.samsungmobile.com/uaprof/SM-P605M.xml' => array( 'Samsung', 'Galaxy Note 10.1 (2014)', 'Android', TYPE_TABLET ),
4239
+ 'http://device.sprintpcs.com/Samsung/SM-N900P-Chameleon/AAA.rdf' => array( 'Samsung', 'Galaxy Note 3', 'Android', TYPE_MOBILE ),
4240
+ 'http://device.sprintpcs.com/Samsung/SM-N900P-Chameleon/ML9.rdf' => array( 'Samsung', 'Galaxy Note 3', 'Android', TYPE_MOBILE ),
4241
  'http://device.sprintpcs.com/Samsung/SM-N900P-SPRINT/MI3.rdf' => array( 'Samsung', 'Galaxy Note 3', 'Android', TYPE_MOBILE ),
4242
  'http://device.sprintpcs.com/Samsung/SM-N900P-SPRINT/MI5.rdf' => array( 'Samsung', 'Galaxy Note 3', 'Android', TYPE_MOBILE ),
4243
  'http://device.sprintpcs.com/Samsung/SM-N900P-SPRINT/MJ4.rdf' => array( 'Samsung', 'Galaxy Note 3', 'Android', TYPE_MOBILE ),
4244
+ 'http://device.sprintpcs.com/Samsung/SM-N900P-SPRINT/NAB.rdf' => array( 'Samsung', 'Galaxy Note 3', 'Android', TYPE_MOBILE ),
4245
+ 'http://device.sprintpcs.com/Samsung/SM-N900P-SPRINT/NC5.rdf' => array( 'Samsung', 'Galaxy Note 3', 'Android', TYPE_MOBILE ),
4246
  'http://nmsc.ctvap.cn/uaprof/SCH/SCH_SM-N9009_2_20130829.xml' => array( 'Samsung', 'Galaxy Note 3', 'Android', TYPE_MOBILE ),
4247
  'http://wap.samsungmobile.com/uaprof/SAMSUNG-SM-N900A.xml' => array( 'Samsung', 'Galaxy Note 3', 'Android', TYPE_MOBILE ),
4248
  'http://wap.samsungmobile.com/uaprof/SM-N900.xml' => array( 'Samsung', 'Galaxy Note 3', 'Android', TYPE_MOBILE ),
4249
  'http://wap.samsungmobile.com/uaprof/SM-N9005.xml' => array( 'Samsung', 'Galaxy Note 3', 'Android', TYPE_MOBILE ),
4250
  'http://wap.samsungmobile.com/uaprof/SM-N9005BO.xml' => array( 'Samsung', 'Galaxy Note 3', 'Android', TYPE_MOBILE ),
4251
+ 'http://wap.samsungmobile.com/uaprof/SM-N9005T.xml' => array( 'Samsung', 'Galaxy Note 3', 'Android', TYPE_MOBILE ),
4252
  'http://wap.samsungmobile.com/uaprof/SM-N9007.xml' => array( 'Samsung', 'Galaxy Note 3', 'Android', TYPE_MOBILE ),
4253
  'http://wap.samsungmobile.com/uaprof/SM-N900A.xml' => array( 'Samsung', 'Galaxy Note 3', 'Android', TYPE_MOBILE ),
4254
  'http://wap.samsungmobile.com/uaprof/SM-N900PET.xml' => array( 'Samsung', 'Galaxy Note 3', 'Android', TYPE_MOBILE ),
4255
+ 'http://wap.samsungmobile.com/uaprof/SM-N900PTR.xml' => array( 'Samsung', 'Galaxy Note 3', 'Android', TYPE_MOBILE ),
4256
  'http://wap.samsungmobile.com/uaprof/SM-N900T.xml' => array( 'Samsung', 'Galaxy Note 3', 'Android', TYPE_MOBILE ),
4257
+ 'http://wap.samsungmobile.com/uaprof/SM-N900V.xml' => array( 'Samsung', 'Galaxy Note 3', 'Android', TYPE_MOBILE ),
4258
  'http://wap.samsungmobile.com/uaprof/SM-N900W8.xml' => array( 'Samsung', 'Galaxy Note 3', 'Android', TYPE_MOBILE ),
4259
+ 'http://wap.samsungmobile.com/uaprof/SM-N750.xml' => array( 'Samsung', 'Galaxy Note 3 Neo', 'Android', TYPE_MOBILE ),
4260
  'http://wap.samsungmobile.com/uaprof/GT-N5100.xml' => array( 'Samsung', 'Galaxy Note 8.0', 'Android', TYPE_TABLET ),
4261
  'http://wap.samsungmobile.com/uaprof/GT-N5110.xml' => array( 'Samsung', 'Galaxy Note 8.0', 'Android', TYPE_TABLET ),
4262
  'http://wap.samsungmobile.com/uaprof/GT-N5120.xml' => array( 'Samsung', 'Galaxy Note 8.0', 'Android', TYPE_TABLET ),
4263
  'http://wap.samsungmobile.com/uaprof/SGH-I467.xml' => array( 'Samsung', 'Galaxy Note 8.0', 'Android', TYPE_TABLET ),
4264
  'http://wap.samsungmobile.com/uaprof/SGH-I467M.xml' => array( 'Samsung', 'Galaxy Note 8.0', 'Android', TYPE_TABLET ),
4265
  'http://device.sprintpcs.com/Samsung/SPH-L900-2011011301/MC2.rdf' => array( 'Samsung', 'Galaxy Note II', 'Android', TYPE_MOBILE ),
4266
+ 'http://device.sprintpcs.com/Samsung/SPH-L900-2011011301/MK4.rdf' => array( 'Samsung', 'Galaxy Note II', 'Android', TYPE_MOBILE ),
4267
  'http://device.sprintpcs.com/Samsung/SPH-L900-Chameleon/LJC.rdf' => array( 'Samsung', 'Galaxy Note II', 'Android', TYPE_MOBILE ),
4268
  'http://device.sprintpcs.com/Samsung/SPH-L900-Chameleon/MA7.rdf' => array( 'Samsung', 'Galaxy Note II', 'Android', TYPE_MOBILE ),
4269
  'http://device.sprintpcs.com/Samsung/SPH-L900-Chameleon/MC2.rdf' => array( 'Samsung', 'Galaxy Note II', 'Android', TYPE_MOBILE ),
4271
  'http://device.sprintpcs.com/Samsung/SPH-L900-SPRINT/LJ1.rdf' => array( 'Samsung', 'Galaxy Note II', 'Android', TYPE_MOBILE ),
4272
  'http://device.sprintpcs.com/Samsung/SPH-L900-SPRINT/LJ8.rdf' => array( 'Samsung', 'Galaxy Note II', 'Android', TYPE_MOBILE ),
4273
  'http://device.sprintpcs.com/Samsung/SPH-L900-SPRINT/LJC.rdf' => array( 'Samsung', 'Galaxy Note II', 'Android', TYPE_MOBILE ),
4274
+ 'http://device.sprintpcs.com/Samsung/SPH-L900-SPRINT/MA5.rdf' => array( 'Samsung', 'Galaxy Note II', 'Android', TYPE_MOBILE ),
4275
  'http://device.sprintpcs.com/Samsung/SPH-L900-SPRINT/MA7.rdf' => array( 'Samsung', 'Galaxy Note II', 'Android', TYPE_MOBILE ),
4276
  'http://device.sprintpcs.com/Samsung/SPH-L900-SPRINT/MC2.rdf' => array( 'Samsung', 'Galaxy Note II', 'Android', TYPE_MOBILE ),
4277
+ 'http://device.sprintpcs.com/Samsung/SPH-L900-SPRINT/MK4.rdf' => array( 'Samsung', 'Galaxy Note II', 'Android', TYPE_MOBILE ),
4278
  'http://device.sprintpcs.com/Samsung/SPH-L900/MC2.rdf' => array( 'Samsung', 'Galaxy Note II', 'Android', TYPE_MOBILE ),
4279
  'http://nmsc.ctvap.cn/uaprof/SCH/SCH_N719_1_20121012.xml' => array( 'Samsung', 'Galaxy Note II', 'Android', TYPE_MOBILE ),
4280
  'http://uaprof.vtext.com/sam/SCH-I605/SCH-I605.xml' => array( 'Samsung', 'Galaxy Note II', 'Android', TYPE_MOBILE ),
4284
  'http://wap.samsungmobile.com/uaprof/GT-N7105.xml' => array( 'Samsung', 'Galaxy Note II', 'Android', TYPE_MOBILE ),
4285
  'http://wap.samsungmobile.com/uaprof/GT-N7105BO.xml' => array( 'Samsung', 'Galaxy Note II', 'Android', TYPE_MOBILE ),
4286
  'http://wap.samsungmobile.com/uaprof/GT-N7105T.xml' => array( 'Samsung', 'Galaxy Note II', 'Android', TYPE_MOBILE ),
4287
+ 'http://wap.samsungmobile.com/uaprof/N7100T.xml' => array( 'Samsung', 'Galaxy Note II', 'Android', TYPE_MOBILE ),
4288
  'http://wap.samsungmobile.com/uaprof/SAMSUNG-SGH-I317.xml' => array( 'Samsung', 'Galaxy Note II', 'Android', TYPE_MOBILE ),
4289
  'http://wap.samsungmobile.com/uaprof/SGH-I317.xml' => array( 'Samsung', 'Galaxy Note II', 'Android', TYPE_MOBILE ),
4290
  'http://wap.samsungmobile.com/uaprof/SGH-I317M.xml' => array( 'Samsung', 'Galaxy Note II', 'Android', TYPE_MOBILE ),
4292
  'http://wap.samsungmobile.com/uaprof/SGH-T889V.xml' => array( 'Samsung', 'Galaxy Note II', 'Android', TYPE_MOBILE ),
4293
  'TRUEhttp://wap.samsungmobile.com/uaprof/GT-N7100.xml' => array( 'Samsung', 'Galaxy Note II', 'Android', TYPE_MOBILE ),
4294
  'http://wap.samsungmobile.com/uaprof/SC-05D.xml' => array( 'Samsung', 'Galaxy Note LTE', 'Android', TYPE_MOBILE ),
4295
+ 'http://wap.samsungmobile.com/uaprof/SM-P905.xml' => array( 'Samsung', 'Galaxy Note Pro', 'Android', TYPE_TABLET ),
4296
  'http://wap.samsungmobile.com/uaprof/YP-GB70D.xml' => array( 'Samsung', 'Galaxy Player 70 Plus', 'Android', ),
4297
  'http://wap.samsungmobile.com/uaprof/GT-S5300.xml' => array( 'Samsung', 'Galaxy Pocket', 'Android', TYPE_MOBILE ),
4298
  'http://wap.samsungmobile.com/uaprof/GT-S5300B.xml' => array( 'Samsung', 'Galaxy Pocket', 'Android', TYPE_MOBILE ),
4299
  'http://wap.samsungmobile.com/uaprof/GT-S5300L.xml' => array( 'Samsung', 'Galaxy Pocket', 'Android', TYPE_MOBILE ),
4300
  'http://wap.samsungmobile.com/uaprof/GT-S5310.xml' => array( 'Samsung', 'Galaxy Pocket 2', 'Android', TYPE_MOBILE ),
4301
  'http://wap.samsungmobile.com/uaprof/GT-S5310B.xml' => array( 'Samsung', 'Galaxy Pocket 2', 'Android', TYPE_MOBILE ),
4302
+ 'http://wap.samsungmobile.com/uaprof/GT-S5310BO.xml' => array( 'Samsung', 'Galaxy Pocket 2', 'Android', TYPE_MOBILE ),
4303
  'http://wap.samsungmobile.com/uaprof/GT-S5310L.xml' => array( 'Samsung', 'Galaxy Pocket 2', 'Android', TYPE_MOBILE ),
4304
+ 'http://wap.samsungmobile.com/uaprof/GT-S5310T.xml' => array( 'Samsung', 'Galaxy Pocket 2', 'Android', TYPE_MOBILE ),
4305
+ 'http://wap.samsungmobile.com/uaprof/GT-S5312.xml' => array( 'Samsung', 'Galaxy Pocket 2 Duos', 'Android', TYPE_MOBILE ),
4306
+ 'http://wap.samsungmobile.com/uaprof/GT-S5312B.xml' => array( 'Samsung', 'Galaxy Pocket 2 Duos', 'Android', TYPE_MOBILE ),
4307
  'http://wap.samsungmobile.com/uaprof/GT-S5302.xml' => array( 'Samsung', 'Galaxy Pocket Duos', 'Android', TYPE_MOBILE ),
4308
  'http://wap.samsungmobile.com/uaprof/GT-S5302B.xml' => array( 'Samsung', 'Galaxy Pocket Duos', 'Android', TYPE_MOBILE ),
4309
  'http://wap.samsungmobile.com/uaprof/GT-S5301B.xml' => array( 'Samsung', 'Galaxy Pocket Plus', 'Android', TYPE_MOBILE ),
4317
  'http://device.sprintpcs.com/Samsung/SPH-M820-BST/EE14.rdf' => array( 'Samsung', 'Galaxy Prevail', 'Android', TYPE_MOBILE ),
4318
  'http://device.sprintpcs.com/Samsung/SPH-M820-BST/EJ06.rdf' => array( 'Samsung', 'Galaxy Prevail', 'Android', TYPE_MOBILE ),
4319
  'http://device.sprintpcs.com/Samsung/SPH-M820-BST/FF19.rdf' => array( 'Samsung', 'Galaxy Prevail', 'Android', TYPE_MOBILE ),
4320
+ 'http://wap.samsungmobile.com/uaprof/SPH-M820-BST.xml' => array( 'Samsung', 'Galaxy Prevail', 'Android', TYPE_MOBILE ),
4321
  'http://wap.samsungmobile.com/uaprof/GT-B7510.xml' => array( 'Samsung', 'Galaxy Pro', 'Android', TYPE_MOBILE ),
4322
  'http://wap.samsungmobile.com/uaprof/GT-B7510B.xml' => array( 'Samsung', 'Galaxy Pro', 'Android', TYPE_MOBILE ),
4323
  'http://wap.samsungmobile.com/uaprof/GT-B7510L.xml' => array( 'Samsung', 'Galaxy Pro', 'Android', TYPE_MOBILE ),
4324
  'http://uaprof.vtext.com/sam/i110/i110.xml' => array( 'Samsung', 'Galaxy Proclaim', 'Android', TYPE_MOBILE ),
4325
  'http://wap.samsungmobile.com/uaprof/GT-I9103.xml' => array( 'Samsung', 'Galaxy R', 'Android', TYPE_MOBILE ),
4326
  'http://uaprof.vmobl.com/Samsung/SPH-M950-VMUB/1.0/UAProf.xml' => array( 'Samsung', 'Galaxy Reverb', 'Android', TYPE_MOBILE ),
4327
+ 'http://device.sprintpcs.com/Samsung/SPH-M840-BOOST/MH5.rdf' => array( 'Samsung', 'Galaxy Ring', 'Android', TYPE_MOBILE ),
4328
+ 'http://device.sprintpcs.com/Samsung/SPH-M840-Chameleon/MH5.rdf' => array( 'Samsung', 'Galaxy Ring', 'Android', TYPE_MOBILE ),
4329
  'http://device.sprintpcs.com/Samsung/SPH-M840-VIRGIN/ME3.rdf' => array( 'Samsung', 'Galaxy Ring', 'Android', TYPE_MOBILE ),
4330
  'http://device.sprintpcs.com/Samsung/SPH-M840-VIRGIN/MH5.rdf' => array( 'Samsung', 'Galaxy Ring', 'Android', TYPE_MOBILE ),
4331
  'http://wap.samsungmobile.com/uaprof/SGH-I547.xml' => array( 'Samsung', 'Galaxy Rugby Pro', 'Android', TYPE_MOBILE ),
4352
  'http://nmsc.ctvap.cn/uaprof/SCH/SCH_i919_1_20110615.xml' => array( 'Samsung', 'Galaxy S Duos', 'Android', TYPE_MOBILE ),
4353
  'http://wap.samsungmobile.com/uaprof/GT-S7562.xml' => array( 'Samsung', 'Galaxy S Duos', 'Android', TYPE_MOBILE ),
4354
  'http://wap.samsungmobile.com/uaprof/GT-S7562L.xml' => array( 'Samsung', 'Galaxy S Duos', 'Android', TYPE_MOBILE ),
4355
+ 'http://wap.samsungmobile.com/uaprof/GT-S7582L.xml' => array( 'Samsung', 'Galaxy S Duos 2', 'Android', TYPE_MOBILE ),
4356
+ 'http://wap.samsungmobile.com/uaprof/GT-S7583T.xml' => array( 'Samsung', 'Galaxy S Duos 2', 'Android', TYPE_MOBILE ),
4357
  'http://wap.samsungmobile.com/uaprof/SGH-T959D.xml' => array( 'Samsung', 'Galaxy S Fascinate 3G+', 'Android', TYPE_MOBILE ),
4358
  'http://wap.samsungmobile.com/uaprof/SGH-T959P.xml' => array( 'Samsung', 'Galaxy S Fascinate 4G', 'Android', TYPE_MOBILE ),
4359
  'http://device.sprintpcs.com/Samsung/DPH-D710/L14.rdf' => array( 'Samsung', 'Galaxy S II', 'Android', TYPE_MOBILE ),
4370
  'http://device.sprintpcs.com/Samsung/SCH-R760X/B28.rdf' => array( 'Samsung', 'Galaxy S II', 'Android', TYPE_MOBILE ),
4371
  'http://device.sprintpcs.com/Samsung/SPH-D710/A10.rdf' => array( 'Samsung', 'Galaxy S II', 'Android', TYPE_MOBILE ),
4372
  'http://device.sprintpcs.com/Samsung/SPH-D710/B27.rdf' => array( 'Samsung', 'Galaxy S II', 'Android', TYPE_MOBILE ),
4373
+ 'http://device.sprintpcs.com/Samsung/SPH-D710/EG30.rdf' => array( 'Samsung', 'Galaxy S II', 'Android', TYPE_MOBILE ),
4374
  'http://device.sprintpcs.com/Samsung/SPH-D710/EK02.rdf' => array( 'Samsung', 'Galaxy S II', 'Android', TYPE_MOBILE ),
4375
  'http://device.sprintpcs.com/Samsung/SPH-D710/EL29.rdf' => array( 'Samsung', 'Galaxy S II', 'Android', TYPE_MOBILE ),
4376
  'http://device.sprintpcs.com/Samsung/SPH-D710/FD19.rdf' => array( 'Samsung', 'Galaxy S II', 'Android', TYPE_MOBILE ),
4392
  'http://device.sprintpcs.com/Samsung/SPH-D710BST/FH29.rdf' => array( 'Samsung', 'Galaxy S II', 'Android', TYPE_MOBILE ),
4393
  'http://device.sprintpcs.com/Samsung/SPH-D710BST/FI22.rdf' => array( 'Samsung', 'Galaxy S II', 'Android', TYPE_MOBILE ),
4394
  'http://device.sprintpcs.com/Samsung/SPH-D710BST/FL24.rdf' => array( 'Samsung', 'Galaxy S II', 'Android', TYPE_MOBILE ),
4395
+ 'http://device.sprintpcs.com/Samsung/SPH-D710VMUB/.rdf' => array( 'Samsung', 'Galaxy S II', 'Android', TYPE_MOBILE ),
4396
  'http://device.sprintpcs.com/Samsung/SPH-D710VMUB/FL26.rdf' => array( 'Samsung', 'Galaxy S II', 'Android', TYPE_MOBILE ),
4397
  'http://device.sprintpcs.com/Samsung/SPH-D710VMUBVMUB/.rdf' => array( 'Samsung', 'Galaxy S II', 'Android', TYPE_MOBILE ),
4398
  'http://wap.samsungmobile.com/uaprof/GT-I9100.xml' => array( 'Samsung', 'Galaxy S II', 'Android', TYPE_MOBILE ),
4438
  'http://device.sprintpcs.com/Samsung/SCH-S960L/MD6.rdf' => array( 'Samsung', 'Galaxy S III', 'Android', TYPE_MOBILE ),
4439
  'http://device.sprintpcs.com/Samsung/SHV-E210S/LH7.rdf' => array( 'Samsung', 'Galaxy S III', 'Android', TYPE_MOBILE ),
4440
  'http://device.sprintpcs.com/Samsung/SPH-L710-BOOST/MG2.rdf' => array( 'Samsung', 'Galaxy S III', 'Android', TYPE_MOBILE ),
4441
+ 'http://device.sprintpcs.com/Samsung/SPH-L710-BOOST/MK5.rdf' => array( 'Samsung', 'Galaxy S III', 'Android', TYPE_MOBILE ),
4442
  'http://device.sprintpcs.com/Samsung/SPH-L710-VIRGIN/MD7.rdf' => array( 'Samsung', 'Galaxy S III', 'Android', TYPE_MOBILE ),
4443
  'http://device.sprintpcs.com/Samsung/SPH-L710-VIRGIN/MG2.rdf' => array( 'Samsung', 'Galaxy S III', 'Android', TYPE_MOBILE ),
4444
+ 'http://device.sprintpcs.com/Samsung/SPH-L710-VIRGIN/MK5.rdf' => array( 'Samsung', 'Galaxy S III', 'Android', TYPE_MOBILE ),
4445
  'http://device.sprintpcs.com/Samsung/SPH-L710/LE5.rdf' => array( 'Samsung', 'Galaxy S III', 'Android', TYPE_MOBILE ),
4446
  'http://device.sprintpcs.com/Samsung/SPH-L710/LEN.rdf' => array( 'Samsung', 'Galaxy S III', 'Android', TYPE_MOBILE ),
4447
  'http://device.sprintpcs.com/Samsung/SPH-L710/LF9.rdf' => array( 'Samsung', 'Galaxy S III', 'Android', TYPE_MOBILE ),
4457
  'http://device.sprintpcs.com/Samsung/SPH-L710/MB3.rdf' => array( 'Samsung', 'Galaxy S III', 'Android', TYPE_MOBILE ),
4458
  'http://device.sprintpcs.com/Samsung/SPH-L710/MC3.rdf' => array( 'Samsung', 'Galaxy S III', 'Android', TYPE_MOBILE ),
4459
  'http://device.sprintpcs.com/Samsung/SPH-L710/MD4.rdf' => array( 'Samsung', 'Galaxy S III', 'Android', TYPE_MOBILE ),
4460
+ 'http://device.sprintpcs.com/Samsung/SPH-L710/MK3.rdf' => array( 'Samsung', 'Galaxy S III', 'Android', TYPE_MOBILE ),
4461
+ 'http://device.sprintpcs.com/Samsung/SPH-L710/MK5.rdf' => array( 'Samsung', 'Galaxy S III', 'Android', TYPE_MOBILE ),
4462
+ 'http://device.sprintpcs.com/Samsung/SPH-L710/ND8.rdf' => array( 'Samsung', 'Galaxy S III', 'Android', TYPE_MOBILE ),
4463
+ 'http://nmsc.ctvap.cn/uaprof/SCH/SCH_I939D_1_20121031.xml' => array( 'Samsung', 'Galaxy S III', 'Android', TYPE_MOBILE ),
4464
  'http://nmsc.ctvap.cn/uaprof/SCH/SCH_I939_1_20120309.xml' => array( 'Samsung', 'Galaxy S III', 'Android', TYPE_MOBILE ),
4465
+ 'http://nmsc.ctvap.cn/uaprof/SCH/SCH_SCH-I939I_1_20140116.xml' => array( 'Samsung', 'Galaxy S III', 'Android', TYPE_MOBILE ),
4466
  'http://uaprof.metropcs.net/UAProf/SCH-R530M.xml' => array( 'Samsung', 'Galaxy S III', 'Android', TYPE_MOBILE ),
4467
  'http://uaprof.qma.com.tw/SAMSUNG-SCH-I939_CHN_BRI.xml' => array( 'Samsung', 'Galaxy S III', 'Android', TYPE_MOBILE ),
4468
  'http://uaprof.vtext.com/sam/GT-I9300/GT-I9300.xml' => array( 'Samsung', 'Galaxy S III', 'Android', TYPE_MOBILE ),
4469
+ 'http://uaprof.vtext.com/sam/r530/r530v1.xml' => array( 'Samsung', 'Galaxy S III', 'Android', TYPE_MOBILE ),
4470
  'http://uaprof.vtext.com/sam/SCH-I535/SCH-I535.xml' => array( 'Samsung', 'Galaxy S III', 'Android', TYPE_MOBILE ),
4471
  'http://uaprof.vtext.com/sam/SPH-L710/SPH-L710.xml' => array( 'Samsung', 'Galaxy S III', 'Android', TYPE_MOBILE ),
4472
  'http://wap.samsungmobile.com/uaprof/Galaxy S III.xml' => array( 'Samsung', 'Galaxy S III', 'Android', TYPE_MOBILE ),
4473
  'http://wap.samsungmobile.com/uaprof/GT-I9300.xml' => array( 'Samsung', 'Galaxy S III', 'Android', TYPE_MOBILE ),
4474
  'http://wap.samsungmobile.com/uaprof/GT-I9300BO.xml' => array( 'Samsung', 'Galaxy S III', 'Android', TYPE_MOBILE ),
4475
+ 'http://wap.samsungmobile.com/uaprof/GT-I9300I.xml' => array( 'Samsung', 'Galaxy S III', 'Android', TYPE_MOBILE ),
4476
  'http://wap.samsungmobile.com/uaprof/GT-I9300MIRS.xml' => array( 'Samsung', 'Galaxy S III', 'Android', TYPE_MOBILE ),
4477
  'http://wap.samsungmobile.com/uaprof/GT-I9300PCL.xml' => array( 'Samsung', 'Galaxy S III', 'Android', TYPE_MOBILE ),
4478
  'http://wap.samsungmobile.com/uaprof/GT-I9300T.xml' => array( 'Samsung', 'Galaxy S III', 'Android', TYPE_MOBILE ),
4479
  'http://wap.samsungmobile.com/uaprof/GT-I9305.xml' => array( 'Samsung', 'Galaxy S III', 'Android', TYPE_MOBILE ),
4480
  'http://wap.samsungmobile.com/uaprof/GT-I9305BO.xml' => array( 'Samsung', 'Galaxy S III', 'Android', TYPE_MOBILE ),
4481
  'http://wap.samsungmobile.com/uaprof/GT-I9305T.xml' => array( 'Samsung', 'Galaxy S III', 'Android', TYPE_MOBILE ),
4482
+ 'http://wap.samsungmobile.com/uaprof/SCH-S968C.xml' => array( 'Samsung', 'Galaxy S III', 'Android', TYPE_MOBILE ),
4483
  'http://wap.samsungmobile.com/uaprof/SGH-I747.xml' => array( 'Samsung', 'Galaxy S III', 'Android', TYPE_MOBILE ),
4484
  'http://wap.samsungmobile.com/uaprof/SGH-I747M.xml' => array( 'Samsung', 'Galaxy S III', 'Android', TYPE_MOBILE ),
4485
  'http://wap.samsungmobile.com/uaprof/SGH-I748.xml' => array( 'Samsung', 'Galaxy S III', 'Android', TYPE_MOBILE ),
4493
  'http://wap.samsungmobile.com/uaprof/GT-I8190NBO.xml' => array( 'Samsung', 'Galaxy S III Mini', 'Android', TYPE_MOBILE ),
4494
  'http://wap.samsungmobile.com/uaprof/GT-I8190T.xml' => array( 'Samsung', 'Galaxy S III Mini', 'Android', TYPE_MOBILE ),
4495
  'http://wap.samsungmobile.com/uaprof/SM-G730A.xml' => array( 'Samsung', 'Galaxy S III Mini', 'Android', TYPE_MOBILE ),
4496
+ 'http://wap.samsungmobile.com/uaprof/SM-G730W8.xml' => array( 'Samsung', 'Galaxy S III Mini', 'Android', TYPE_MOBILE ),
4497
  'http://wap.samsungmobile.com/uaprof/GT-I9001.xml' => array( 'Samsung', 'Galaxy S Plus', 'Android', TYPE_MOBILE ),
4498
  'http://wap.samsungmobile.com/uaprof/GT-I9001BO.xml' => array( 'Samsung', 'Galaxy S Plus', 'Android', TYPE_MOBILE ),
4499
  'http://wap.samsungmobile.com/uaprof/SGH-T699.xml' => array( 'Samsung', 'Galaxy S Relay', 'Android', TYPE_MOBILE ),
4500
  'http://wap.samsungmobile.com/uaprof/YP-GI1.xml' => array( 'Samsung', 'Galaxy S WiFi 4.2', 'Android', ),
4501
+ 'http://device.sprintpcs.com/Samsung/SM-G900P-SPRINT/NB4.rdf' => array( 'Samsung', 'Galaxy S4', 'Android', TYPE_MOBILE ),
4502
  'http://device.sprintpcs.com/Samsung/SM-N900P-Chameleon/latest' => array( 'Samsung', 'Galaxy S4', 'Android', TYPE_MOBILE ),
4503
+ 'http://device.sprintpcs.com/Samsung/SPH-L720-Chameleon/MCI.rdf' => array( 'Samsung', 'Galaxy S4', 'Android', TYPE_MOBILE ),
4504
+ 'http://device.sprintpcs.com/Samsung/SPH-L720-Chameleon/MDC.rdf' => array( 'Samsung', 'Galaxy S4', 'Android', TYPE_MOBILE ),
4505
  'http://device.sprintpcs.com/Samsung/SPH-L720-Chameleon/MDL.rdf' => array( 'Samsung', 'Galaxy S4', 'Android', TYPE_MOBILE ),
4506
  'http://device.sprintpcs.com/Samsung/SPH-L720-Chameleon/MF9.rdf' => array( 'Samsung', 'Galaxy S4', 'Android', TYPE_MOBILE ),
4507
  'http://device.sprintpcs.com/Samsung/SPH-L720-SPRINT/MDC.rdf' => array( 'Samsung', 'Galaxy S4', 'Android', TYPE_MOBILE ),
4508
  'http://device.sprintpcs.com/Samsung/SPH-L720-SPRINT/MDL.rdf' => array( 'Samsung', 'Galaxy S4', 'Android', TYPE_MOBILE ),
4509
  'http://device.sprintpcs.com/Samsung/SPH-L720-SPRINT/MF9.rdf' => array( 'Samsung', 'Galaxy S4', 'Android', TYPE_MOBILE ),
4510
  'http://device.sprintpcs.com/Samsung/SPH-L720-SPRINT/MJA.rdf' => array( 'Samsung', 'Galaxy S4', 'Android', TYPE_MOBILE ),
4511
+ 'http://device.sprintpcs.com/Samsung/SPH-L720-SPRINT/MK2.rdf' => array( 'Samsung', 'Galaxy S4', 'Android', TYPE_MOBILE ),
4512
+ 'http://device.sprintpcs.com/Samsung/SPH-L720-SPRINT/NAE.rdf' => array( 'Samsung', 'Galaxy S4', 'Android', TYPE_MOBILE ),
4513
+ 'http://device.sprintpcs.com/Samsung/SPH-L720T-SPRINT/MK5.rdf' => array( 'Samsung', 'Galaxy S4', 'Android', TYPE_MOBILE ),
4514
+ 'http://device.sprintpcs.com/Samsung/SPH-L720T-SPRINT/NAF.rdf' => array( 'Samsung', 'Galaxy S4', 'Android', TYPE_MOBILE ),
4515
+ 'http://device.sprintpcs.com/Samsung/SPH-L720T-SPRINT/NC6.rdf' => array( 'Samsung', 'Galaxy S4', 'Android', TYPE_MOBILE ),
4516
  'http://nmsc.ctvap.cn/uaprof/SCH/SCH_I959_1_20130319.xml' => array( 'Samsung', 'Galaxy S4', 'Android', TYPE_MOBILE ),
4517
  'http://nmsc.ctvap.cn/uaprof/SCH/SCH_I959_2_20131021.xml' => array( 'Samsung', 'Galaxy S4', 'Android', TYPE_MOBILE ),
4518
+ 'http://pix.cspire.com/UA/profile/samsung/r970x/r970x.xml' => array( 'Samsung', 'Galaxy S4', 'Android', TYPE_MOBILE ),
4519
  'http://pix.cspire.com/UA/profile/samsung/SCH-L710/SCH-L710.xml' => array( 'Samsung', 'Galaxy S4', 'Android', TYPE_MOBILE ),
4520
  'http://uaprof.vtext.com/sam/GT-I9500/GT-I9500.xml' => array( 'Samsung', 'Galaxy S4', 'Android', TYPE_MOBILE ),
4521
  'http://wap.samsungmobile.com/uaprof/GT-I9500.xml' => array( 'Samsung', 'Galaxy S4', 'Android', TYPE_MOBILE ),
4522
  'http://wap.samsungmobile.com/uaprof/GT-I9500MIRS.xml' => array( 'Samsung', 'Galaxy S4', 'Android', TYPE_MOBILE ),
4523
  'http://wap.samsungmobile.com/uaprof/GT-I9500PCL.xml' => array( 'Samsung', 'Galaxy S4', 'Android', TYPE_MOBILE ),
4524
+ 'http://wap.samsungmobile.com/uaprof/GT-I9500PET.xml' => array( 'Samsung', 'Galaxy S4', 'Android', TYPE_MOBILE ),
4525
  'http://wap.samsungmobile.com/uaprof/GT-I9505.xml' => array( 'Samsung', 'Galaxy S4', 'Android', TYPE_MOBILE ),
4526
  'http://wap.samsungmobile.com/uaprof/GT-I9505BO.xml' => array( 'Samsung', 'Galaxy S4', 'Android', TYPE_MOBILE ),
4527
  'http://wap.samsungmobile.com/uaprof/GT-I9505G.xml' => array( 'Samsung', 'Galaxy S4', 'Android', TYPE_MOBILE ),
4531
  'http://wap.samsungmobile.com/uaprof/SGH-I337.xml' => array( 'Samsung', 'Galaxy S4', 'Android', TYPE_MOBILE ),
4532
  'http://wap.samsungmobile.com/uaprof/SGH-I337M.xml' => array( 'Samsung', 'Galaxy S4', 'Android', TYPE_MOBILE ),
4533
  'http://wap.samsungmobile.com/uaprof/SGH-I337MBMC.xml' => array( 'Samsung', 'Galaxy S4', 'Android', TYPE_MOBILE ),
4534
+ 'http://wap.samsungmobile.com/uaprof/SGH-I337Z.xml' => array( 'Samsung', 'Galaxy S4', 'Android', TYPE_MOBILE ),
4535
  'http://wap.samsungmobile.com/uaprof/SGH-M919.xml' => array( 'Samsung', 'Galaxy S4', 'Android', TYPE_MOBILE ),
4536
+ 'http://wap.samsungmobile.com/uaprof/SGH-M919N.xml' => array( 'Samsung', 'Galaxy S4', 'Android', TYPE_MOBILE ),
4537
  'http://wap.samsungmobile.com/uaprof/SGH-M919V.xml' => array( 'Samsung', 'Galaxy S4', 'Android', TYPE_MOBILE ),
4538
  'http://wap.samsungmobile.com/uaprof/SGH-M919VLTN.xml' => array( 'Samsung', 'Galaxy S4', 'Android', TYPE_MOBILE ),
4539
  'http://wap.samsungmobile.com/uaprof/GT-I9295.xml' => array( 'Samsung', 'Galaxy S4 Active', 'Android', TYPE_MOBILE ),
4540
  'http://wap.samsungmobile.com/uaprof/SAMSUNG-SGH-I537.xml' => array( 'Samsung', 'Galaxy S4 Active', 'Android', TYPE_MOBILE ),
4541
  'http://wap.samsungmobile.com/uaprof/SGH-I537.xml' => array( 'Samsung', 'Galaxy S4 Active', 'Android', TYPE_MOBILE ),
4542
+ 'http://wap.samsungmobile.com/uaprof/GT-I9506.xml' => array( 'Samsung', 'Galaxy S4 Advance', 'Android', TYPE_MOBILE ),
4543
+ 'http://device.sprintpcs.com/Samsung/SPH-L520-Chameleon/ME3.rdf' => array( 'Samsung', 'Galaxy S4 Mini', 'Android', TYPE_MOBILE ),
4544
+ 'http://device.sprintpcs.com/Samsung/SPH-L520-SPRINT/MI3.rdf' => array( 'Samsung', 'Galaxy S4 Mini', 'Android', TYPE_MOBILE ),
4545
+ 'http://device.sprintpcs.com/Samsung/SPH-L520-SPRINT/MK2.rdf' => array( 'Samsung', 'Galaxy S4 Mini', 'Android', TYPE_MOBILE ),
4546
+ 'http://device.sprintpcs.com/Samsung/SPH-L520-SPRINT/NA7.rdf' => array( 'Samsung', 'Galaxy S4 Mini', 'Android', TYPE_MOBILE ),
4547
  'http://wap.samsungmobile.com/uaprof/GT-I9190.xml' => array( 'Samsung', 'Galaxy S4 Mini', 'Android', TYPE_MOBILE ),
4548
  'http://wap.samsungmobile.com/uaprof/GT-I9195.xml' => array( 'Samsung', 'Galaxy S4 Mini', 'Android', TYPE_MOBILE ),
4549
  'http://wap.samsungmobile.com/uaprof/GT-I9195BO.xml' => array( 'Samsung', 'Galaxy S4 Mini', 'Android', TYPE_MOBILE ),
4550
  'http://wap.samsungmobile.com/uaprof/GT-I9195L.xml' => array( 'Samsung', 'Galaxy S4 Mini', 'Android', TYPE_MOBILE ),
4551
  'http://wap.samsungmobile.com/uaprof/GT-I9195T.xml' => array( 'Samsung', 'Galaxy S4 Mini', 'Android', TYPE_MOBILE ),
4552
+ 'http://wap.samsungmobile.com/uaprof/GT-I9197.xml' => array( 'Samsung', 'Galaxy S4 Mini', 'Android', TYPE_MOBILE ),
4553
  'http://wap.samsungmobile.com/uaprof/SGH-I257M.xml' => array( 'Samsung', 'Galaxy S4 Mini', 'Android', TYPE_MOBILE ),
4554
  'http://wap.samsungmobile.com/uaprof/GT-I9192.xml' => array( 'Samsung', 'Galaxy S4 Mini Duos', 'Android', TYPE_MOBILE ),
4555
+ 'http://wap.samsungmobile.com/uaprof/GT-I9515.xml' => array( 'Samsung', 'Galaxy S4 Neo', 'Android', TYPE_MOBILE ),
4556
+ 'http://wap.samsungmobile.com/uaprof/SAMSUNG-SM-C105A.xml' => array( 'Samsung', 'Galaxy S4 Zoom', 'Android', TYPE_MOBILE ),
4557
  'http://wap.samsungmobile.com/uaprof/SM-C101.xml' => array( 'Samsung', 'Galaxy S4 Zoom', 'Android', TYPE_MOBILE ),
4558
  'http://wap.samsungmobile.com/uaprof/SM-C105.xml' => array( 'Samsung', 'Galaxy S4 Zoom', 'Android', TYPE_MOBILE ),
4559
  'http://wap.samsungmobile.com/uaprof/SM-C105A.xml' => array( 'Samsung', 'Galaxy S4 Zoom', 'Android', TYPE_MOBILE ),
4560
+ 'http://device.sprintpcs.com/Samsung/SM-G900P-Chameleon/latest' => array( 'Samsung', 'Galaxy S5', 'Android', TYPE_MOBILE ),
4561
+ 'http://device.sprintpcs.com/Samsung/SM-G900P-Chameleon/NCB.rdf' => array( 'Samsung', 'Galaxy S5', 'Android', TYPE_MOBILE ),
4562
+ 'http://device.sprintpcs.com/Samsung/SM-G900P-SPRINT/NCB.rdf' => array( 'Samsung', 'Galaxy S5', 'Android', TYPE_MOBILE ),
4563
+ 'http://device.sprintpcs.com/Samsung/SM-G900P-SPRINT/ND2.rdf' => array( 'Samsung', 'Galaxy S5', 'Android', TYPE_MOBILE ),
4564
+ 'http://nmsc.ctvap.cn/uaprof/SCH/SCH_SM-G9009D_1_20140227.xml' => array( 'Samsung', 'Galaxy S5', 'Android', TYPE_MOBILE ),
4565
+ 'http://wap.samsungmobile.com/uaprof/SM-G900A.xml' => array( 'Samsung', 'Galaxy S5', 'Android', TYPE_MOBILE ),
4566
+ 'http://wap.samsungmobile.com/uaprof/SM-G900F.xml' => array( 'Samsung', 'Galaxy S5', 'Android', TYPE_MOBILE ),
4567
+ 'http://wap.samsungmobile.com/uaprof/SM-G900FBO.xml' => array( 'Samsung', 'Galaxy S5', 'Android', TYPE_MOBILE ),
4568
+ 'http://wap.samsungmobile.com/uaprof/SM-G900FPTR.xml' => array( 'Samsung', 'Galaxy S5', 'Android', TYPE_MOBILE ),
4569
+ 'http://wap.samsungmobile.com/uaprof/SM-G900H.xml' => array( 'Samsung', 'Galaxy S5', 'Android', TYPE_MOBILE ),
4570
+ 'http://wap.samsungmobile.com/uaprof/SM-G900I.xml' => array( 'Samsung', 'Galaxy S5', 'Android', TYPE_MOBILE ),
4571
+ 'http://wap.samsungmobile.com/uaprof/SM-G900M.xml' => array( 'Samsung', 'Galaxy S5', 'Android', TYPE_MOBILE ),
4572
+ 'http://wap.samsungmobile.com/uaprof/SM-G900MD.xml' => array( 'Samsung', 'Galaxy S5', 'Android', TYPE_MOBILE ),
4573
+ 'http://wap.samsungmobile.com/uaprof/SM-G900T.xml' => array( 'Samsung', 'Galaxy S5', 'Android', TYPE_MOBILE ),
4574
+ 'http://wap.samsungmobile.com/uaprof/SM-G900T1.xml' => array( 'Samsung', 'Galaxy S5', 'Android', TYPE_MOBILE ),
4575
+ 'http://wap.samsungmobile.com/uaprof/SM-G900V.xml' => array( 'Samsung', 'Galaxy S5', 'Android', TYPE_MOBILE ),
4576
+ 'http://wap.samsungmobile.com/uaprof/SM-G900W8.xml' => array( 'Samsung', 'Galaxy S5', 'Android', TYPE_MOBILE ),
4577
+ 'http://wap.samsungmobile.com/uaprof/SM-G870A.xml' => array( 'Samsung', 'Galaxy S5 Active', 'Android', TYPE_MOBILE ),
4578
  'http://wap.samsungmobile.com/uaprof/GT-I9003.xml' => array( 'Samsung', 'Galaxy SL', 'Android', TYPE_MOBILE ),
4579
  'http://wap.samsungmobile.com/uaprof/GT-i9003L.xml' => array( 'Samsung', 'Galaxy SL', 'Android', TYPE_MOBILE ),
4580
  'http://wap.samsungmobile.com/uaprof/GT-i5700L.xml' => array( 'Samsung', 'Galaxy Spica', 'Android', TYPE_MOBILE ),
4582
  'http://wap.samsungmobile.com/uaprof/GT-S5280.xml' => array( 'Samsung', 'Galaxy Star', 'Android', TYPE_MOBILE ),
4583
  'http://wap.samsungmobile.com/uaprof/GT-S5282.xml' => array( 'Samsung', 'Galaxy Star', 'Android', TYPE_MOBILE ),
4584
  'http://uaprof.vtext.com/sam/SCH-I200/SCH-I200.xml' => array( 'Samsung', 'Galaxy Stellar', 'Android', TYPE_MOBILE ),
4585
+ 'http://device.sprintpcs.com/Samsung/SPH-P100/EA24.rdf' => array( 'Samsung', 'Galaxy Tab', 'Android', TYPE_TABLET ),
4586
  'http://device.sprintpcs.com/Samsung/SPH-P100/EF17.rdf' => array( 'Samsung', 'Galaxy Tab', 'Android', TYPE_TABLET ),
4587
  'http://wap.samsungmobile.com/uaprof/GT-p1000.xml' => array( 'Samsung', 'Galaxy Tab', 'Android', TYPE_TABLET ),
4588
  'http://wap.samsungmobile.com/uaprof/GT-P1000L.xml' => array( 'Samsung', 'Galaxy Tab', 'Android', TYPE_TABLET ),
4614
  'http://wap.samsungmobile.com/uaprof/GT-P5210.xml' => array( 'Samsung', 'Galaxy Tab 3 (10.1)', 'Android', TYPE_TABLET ),
4615
  'http://wap.samsungmobile.com/uaprof/GT-P5220.xml' => array( 'Samsung', 'Galaxy Tab 3 (10.1)', 'Android', TYPE_TABLET ),
4616
  'http://device.sprintpcs.com/Samsung/SM-T217S-SPRINT/MH9.rdf' => array( 'Samsung', 'Galaxy Tab 3 (7.0)', 'Android', TYPE_TABLET ),
4617
+ 'http://device.sprintpcs.com/Samsung/SM-T217S-SPRINT/NB8.rdf' => array( 'Samsung', 'Galaxy Tab 3 (7.0)', 'Android', TYPE_TABLET ),
4618
  'http://wap.samsungmobile.com/uaprof/SM-T210.xml' => array( 'Samsung', 'Galaxy Tab 3 (7.0)', 'Android', TYPE_TABLET ),
4619
  'http://wap.samsungmobile.com/uaprof/SM-T211.xml' => array( 'Samsung', 'Galaxy Tab 3 (7.0)', 'Android', TYPE_TABLET ),
4620
  'http://wap.samsungmobile.com/uaprof/SM-T215.xml' => array( 'Samsung', 'Galaxy Tab 3 (7.0)', 'Android', TYPE_TABLET ),
4621
  'http://wap.samsungmobile.com/uaprof/SM-T217A.xml' => array( 'Samsung', 'Galaxy Tab 3 (7.0)', 'Android', TYPE_TABLET ),
4622
+ 'http://wap.samsungmobile.com/uaprof/SM-T217T.xml' => array( 'Samsung', 'Galaxy Tab 3 (7.0)', 'Android', TYPE_TABLET ),
4623
  'http://wap.samsungmobile.com/uaprof/SM-T310.xml' => array( 'Samsung', 'Galaxy Tab 3 (8.0)', 'Android', TYPE_TABLET ),
4624
  'http://wap.samsungmobile.com/uaprof/SM-T311.xml' => array( 'Samsung', 'Galaxy Tab 3 (8.0)', 'Android', TYPE_TABLET ),
4625
+ 'http://wap.samsungmobile.com/uaprof/SM-T315.xml' => array( 'Samsung', 'Galaxy Tab 3 (8.0)', 'Android', TYPE_TABLET ),
4626
+ 'http://wap.samsungmobile.com/uaprof/SM-T110.xml' => array( 'Samsung', 'Galaxy Tab 3 Lite', 'Android', TYPE_TABLET ),
4627
+ 'http://wap.samsungmobile.com/uaprof/SM-T111.xml' => array( 'Samsung', 'Galaxy Tab 3 Lite', 'Android', TYPE_TABLET ),
4628
+ 'http://wap.samsungmobile.com/uaprof/SM-T111BO.xml' => array( 'Samsung', 'Galaxy Tab 3 Lite', 'Android', TYPE_TABLET ),
4629
+ 'http://wap.samsungmobile.com/uaprof/SM-T335.xml' => array( 'Samsung', 'Galaxy Tab 4 (8.0)', 'Android', TYPE_TABLET ),
4630
+ 'http://wap.samsungmobile.com/uaprof/SM-T337A.xml' => array( 'Samsung', 'Galaxy Tab 4 (8.0)', 'Android', TYPE_TABLET ),
4631
  'http://wap.samsungmobile.com/uaprof/SGH-I987.xml' => array( 'Samsung', 'Galaxy Tab 7.0', 'Android', TYPE_TABLET ),
4632
  'http://wap.samsungmobile.com/uaprof/SGH-T849.xml' => array( 'Samsung', 'Galaxy Tab 7.0', 'Android', TYPE_TABLET ),
4633
  'http://wap.samsungmobile.com/uaprof/GT-P6200.xml' => array( 'Samsung', 'Galaxy Tab 7.0 Plus', 'Android', TYPE_TABLET ),
4648
  'http://wap.samsungmobile.com/uaprof/SGH-I957R.xml' => array( 'Samsung', 'Galaxy Tab 8.9', 'Android', TYPE_TABLET ),
4649
  'http://wap.samsungmobile.com/uaprof/SHV-E140K.xml' => array( 'Samsung', 'Galaxy Tab 8.9', 'Android', TYPE_TABLET ),
4650
  'http://wap.samsungmobile.com/uaprof/SHV-E140S.xml' => array( 'Samsung', 'Galaxy Tab 8.9', 'Android', TYPE_TABLET ),
4651
+ 'http://wap.samsungmobile.com/uaprof/SM-T525.xml' => array( 'Samsung', 'Galaxy Tab Pro 10.1', 'Android', TYPE_TABLET ),
4652
+ 'http://wap.samsungmobile.com/uaprof/SM-T325.xml' => array( 'Samsung', 'Galaxy Tab Pro 8.4', 'Android', TYPE_TABLET ),
4653
  'http://nmsc.ctvap.cn/uaprof/SCH/SCH_I719_1_20120413.xml' => array( 'Samsung', 'Galaxy Trend', 'Android', TYPE_MOBILE ),
4654
+ 'http://wap.samsungmobile.com/uaprof/GT-S7392L.xml' => array( 'Samsung', 'Galaxy Trend', 'Android', TYPE_MOBILE ),
4655
  'http://wap.samsungmobile.com/uaprof/SCH-I699I.xml' => array( 'Samsung', 'Galaxy Trend', 'Android', TYPE_MOBILE ),
4656
  'http://wap.samsungmobile.com/uaprof/SCH-I699I_1_20130805.xml' => array( 'Samsung', 'Galaxy Trend', 'Android', TYPE_MOBILE ),
4657
+ 'http://nmsc.ctvap.cn/uaprof/SCH/SCH_SM-G3509_1_20130816.xml' => array( 'Samsung', 'Galaxy Trend 3', 'Android', TYPE_MOBILE ),
4658
+ 'http://nmsc.ctvap.cn/uaprof/SCH/SCH_SM-G3509_2_20130816.xml' => array( 'Samsung', 'Galaxy Trend 3', 'Android', TYPE_MOBILE ),
4659
+ 'http://nmsc.ctvap.cn/uaprof/SCH/SM-G3509I_1_20131030.xml' => array( 'Samsung', 'Galaxy Trend 3', 'Android', TYPE_MOBILE ),
4660
  'http://nmsc.ctvap.cn/uaprof/SCH/SCH_I739_1_20130122.XML' => array( 'Samsung', 'Galaxy Trend II', 'Android', TYPE_MOBILE ),
4661
+ 'http://wap.samsungmobile.com/uaprof/GT-S7580.xml' => array( 'Samsung', 'Galaxy Trend Plus', 'Android', TYPE_MOBILE ),
4662
+ 'http://wap.samsungmobile.com/uaprof/GT-S7580L.xml' => array( 'Samsung', 'Galaxy Trend Plus', 'Android', TYPE_MOBILE ),
4663
+ 'http://wap.samsungmobile.com/uaprof/`per`s.xml' => array( 'Samsung', 'Galaxy Trend Plus', 'Android', TYPE_MOBILE ),
4664
  'http://device.sprintpcs.com/Samsung/SPH-L300-Chameleon/LK5.rdf' => array( 'Samsung', 'Galaxy Victory 4G LTE', 'Android', TYPE_MOBILE ),
4665
+ 'http://device.sprintpcs.com/Samsung/SPH-L300-Chameleon/MG5.rdf' => array( 'Samsung', 'Galaxy Victory 4G LTE', 'Android', TYPE_MOBILE ),
4666
  'http://device.sprintpcs.com/Samsung/SPH-L300-VIRGIN/MA8.rdf' => array( 'Samsung', 'Galaxy Victory 4G LTE', 'Android', TYPE_MOBILE ),
4667
  'http://device.sprintpcs.com/Samsung/SPH-L300-VIRGIN/MC1.rdf' => array( 'Samsung', 'Galaxy Victory 4G LTE', 'Android', TYPE_MOBILE ),
4668
  'http://device.sprintpcs.com/Samsung/SPH-L300-VIRGIN/MG5.rdf' => array( 'Samsung', 'Galaxy Victory 4G LTE', 'Android', TYPE_MOBILE ),
4683
  'http://wap.samsungmobile.com/uaprof/GT-S5690R.xml' => array( 'Samsung', 'Galaxy Xcover', 'Android', TYPE_MOBILE ),
4684
  'http://wap.samsungmobile.com/uaprof/GT-S5698.xml' => array( 'Samsung', 'Galaxy Xcover', 'Android', TYPE_MOBILE ),
4685
  'http://wap.samsungmobile.com/uaprof/GT-S7710.xml' => array( 'Samsung', 'Galaxy Xcover 2', 'Android', TYPE_MOBILE ),
4686
+ 'http://wap.samsungmobile.com/uaprof/GT-S7710L.xml' => array( 'Samsung', 'Galaxy Xcover 2', 'Android', TYPE_MOBILE ),
4687
  'http://nmsc.ctvap.cn/uaprof/SCH/SCH_I509_1_20101216.xml' => array( 'Samsung', 'Galaxy Y', 'Android', TYPE_MOBILE ),
4688
  'http://uaprof.qma.com.tw/SAMSUNG-SCH-I509_CHN_BRI.xml' => array( 'Samsung', 'Galaxy Y', 'Android', TYPE_MOBILE ),
4689
  'http://wap.samsungmobile.com/uaprof/GT-S5360.xml' => array( 'Samsung', 'Galaxy Y', 'Android', TYPE_MOBILE ),
4693
  'http://wap.samsungmobile.com/uaprof/GT-S5360T.xml' => array( 'Samsung', 'Galaxy Y', 'Android', TYPE_MOBILE ),
4694
  'http://wap.samsungmobile.com/uaprof/GT-S5363.xml' => array( 'Samsung', 'Galaxy Y', 'Android', TYPE_MOBILE ),
4695
  'http://wap.samsungmobile.com/uaprof/GT-S5369.xml' => array( 'Samsung', 'Galaxy Y', 'Android', TYPE_MOBILE ),
4696
+ 'http://wap.samsungmobile.com/uaprof/Hamitsuka.xml' => array( 'Samsung', 'Galaxy Y', 'Android', TYPE_MOBILE ),
4697
  'http://wap.samsungmobile.com/uaprof/GT-S6102.xml' => array( 'Samsung', 'Galaxy Y Duos', 'Android', TYPE_MOBILE ),
4698
  'http://wap.samsungmobile.com/uaprof/GT-S6102B.xml' => array( 'Samsung', 'Galaxy Y Duos', 'Android', TYPE_MOBILE ),
4699
  'http://wap.samsungmobile.com/uaprof/GT-S6102E.xml' => array( 'Samsung', 'Galaxy Y Duos', 'Android', TYPE_MOBILE ),
4735
  'http://wap.samsungmobile.com/uaprof/GT-C3560UAProf.xml' => array( 'Samsung', 'GT-C3560', NULL, TYPE_MOBILE ),
4736
  'http://wap.samsungmobile.com/uaprof/GT-C3590UAProf.xml' => array( 'Samsung', 'GT-C3590', NULL, TYPE_MOBILE ),
4737
  'http://wap.samsungmobile.com/uaprof/GT-C3592UAProf.xml' => array( 'Samsung', 'GT-C3592', NULL, TYPE_MOBILE ),
4738
+ 'http://wap.samsungmobile.com/uaprof/GT-C3595_3G.rdf' => array( 'Samsung', 'GT-C3595', NULL, TYPE_MOBILE ),
4739
  'http://wap.samsungmobile.com/uaprof/GT-C3750UAProf.xml' => array( 'Samsung', 'GT-C3750', NULL, TYPE_MOBILE ),
4740
  'http://wap.samsungmobile.com/uaprof/GT-C3752UAProf.xml' => array( 'Samsung', 'GT-C3752', NULL, TYPE_MOBILE ),
4741
+ 'http://wap.samsungmobile.com/uaprof/GT-C5130UAProf.xml' => array( 'Samsung', 'GT-C5130', NULL, TYPE_MOBILE ),
4742
  'http://wap.samsungmobile.com/uaprof/GT-C5510UAProf.xml' => array( 'Samsung', 'GT-C5510', NULL, TYPE_MOBILE ),
4743
  'http://wap.samsungmobile.com/uaprof/GT-C5510UAProf3G.xml' => array( 'Samsung', 'GT-C5510', NULL, TYPE_MOBILE ),
4744
  'http://wap.samsungmobile.com/uaprof/GT-E2230UAProf.xml' => array( 'Samsung', 'GT-E2230', NULL, TYPE_MOBILE ),
4748
  'http://wap.samsungmobile.com/uaprof/GT-E2350BUAProf.xml' => array( 'Samsung', 'GT-E2350', NULL, TYPE_MOBILE ),
4749
  'http://wap.samsungmobile.com/uaprof/GT-E2530UAProf.xml' => array( 'Samsung', 'GT-E2530', NULL, TYPE_MOBILE ),
4750
  'http://wap.samsungmobile.com/uaprof/GT-E2600UAProf.xml' => array( 'Samsung', 'GT-E2600', NULL, TYPE_MOBILE ),
4751
+ 'http://wap.samsungmobile.com/uaprof/I6410UAProf3G.rdf' => array( 'Samsung', 'GT-I6410 M1', NULL, TYPE_MOBILE ),
4752
  'http://wap.samsungmobile.com/uaprof/GT-I8240.xml' => array( 'Samsung', 'GT-I8240', 'Android', TYPE_MOBILE ),
4753
  'http://wap.samsungmobile.com/uaprof/GT-I8245.xml' => array( 'Samsung', 'GT-I8245', 'Android', TYPE_MOBILE ),
4754
  'http://wap.samsungmobile.com/uaprof/GT-S3550UAProf.xml' => array( 'Samsung', 'GT-S3550', NULL, TYPE_MOBILE ),
4766
  'http://wap.samsungmobile.com/uaprof/I8320UAProf3G.rdf' => array( 'Samsung', 'H1', 'Android', TYPE_MOBILE ),
4767
  'http://device.sprintpcs.com/Samsung/SPH-M630/BI09.rdf' => array( 'Samsung', 'Highnote', NULL, TYPE_MOBILE ),
4768
  'http://www.alltel.net/uaprof/samsung/r500/r500.xml' => array( 'Samsung', 'Hue', NULL, TYPE_MOBILE ),
4769
+ 'http://wap.samsungmobile.com/uaprof/SGH-i637.xml' => array( 'Samsung', 'i637 Jack', 'Windows Mobile', TYPE_MOBILE ),
4770
  'http://wap.samsungmobile.com/uaprof/I7110-3G.xml' => array( 'Samsung', 'i7110', 'Series60', TYPE_MOBILE ),
4771
  'http://wap.samsungmobile.com/uaprof/I7110.xml' => array( 'Samsung', 'i7110', 'Series60', TYPE_MOBILE ),
4772
  'http://wap.samsungmobile.com/uaprof/I7110C_10.xml' => array( 'Samsung', 'i7110', 'Series60', TYPE_MOBILE ),
4782
  'http://device.sprintpcs.com/Samsung/SPH-M800/BE09.rdf' => array( 'Samsung', 'Instinct', NULL, TYPE_MOBILE ),
4783
  'http://device.sprintpcs.com/Samsung/SPH-M800/BF30.rdf' => array( 'Samsung', 'Instinct', NULL, TYPE_MOBILE ),
4784
  'http://uaprof.vmobl.com/Samsung/SPH-M910-VMUB/VMU_M910_UAProf.xml' => array( 'Samsung', 'Intercept', 'Android', TYPE_MOBILE ),
4785
+ 'http://uaprof.vmobl.com/Samsung/SPH-M910/DI06/VMU_M910_UAProf.xml' => array( 'Samsung', 'Intercept', 'Android', TYPE_MOBILE ),
4786
  'http://wap.samsungmobile.com/uaprof/S8000.rdf' => array( 'Samsung', 'Jet', 'Touchwiz', TYPE_MOBILE ),
4787
  'http://wap.samsungmobile.com/uaprof/S8000OP.rdf' => array( 'Samsung', 'Jet', 'Touchwiz', TYPE_MOBILE ),
4788
  'http://wap.samsungmobile.com/uaprof/S8000_3G.rdf' => array( 'Samsung', 'Jet', 'Touchwiz', TYPE_MOBILE ),
4805
  'http://wap.samsungmobile.com/uaprof/M8000.xml' => array( 'Samsung', 'M8000', NULL, TYPE_MOBILE ),
4806
  'http://wap.samsungmobile.com/uaprof/GT-S5560.rdf' => array( 'Samsung', 'Marvel', 'Touchwiz', TYPE_MOBILE ),
4807
  'http://wap.samsungmobile.com/uaprof/GT-S5560i.rdf' => array( 'Samsung', 'Marvel', 'Touchwiz', TYPE_MOBILE ),
4808
+ 'http://wap.samsungmobile.com/uaprof/GT-S5560i.xml' => array( 'Samsung', 'Marvel', 'Touchwiz', TYPE_MOBILE ),
4809
+ 'http://wap.samsungmobile.com/uaprof/GT-S5560LTCE.xml' => array( 'Samsung', 'Marvel', 'Touchwiz', TYPE_MOBILE ),
4810
  'http://wap.samsungmobile.com/uaprof/GT-S5560_3G.rdf' => array( 'Samsung', 'Marvel', 'Touchwiz', TYPE_MOBILE ),
4811
  'http://wap.samsungmobile.com/uaprof/SGH-T929.xml' => array( 'Samsung', 'Memoir', NULL, TYPE_MOBILE ),
4812
  'http://wap.samsungmobile.com/uaprof/S3310.rdf' => array( 'Samsung', 'Metro', NULL, TYPE_MOBILE ),
4820
  'http://wap.samsungmobile.com/uaprof/GT-S5620_2G.rdf' => array( 'Samsung', 'Monte', 'Touchwiz', TYPE_MOBILE ),
4821
  'http://wap.samsungmobile.com/uaprof/GT-S5620_3G.rdf' => array( 'Samsung', 'Monte', 'Touchwiz', TYPE_MOBILE ),
4822
  'http://wap.samsungmobile.com/uaprof/GT-C3200UAProf.xml' => array( 'Samsung', 'Monte Bar', NULL, TYPE_MOBILE ),
4823
+ 'http://wap.samsungmobile.com/uaprof/GT-S3310iUAProf.xml' => array( 'Samsung', 'Monte Bar', NULL, TYPE_MOBILE ),
4824
  'http://wap.samsungmobile.com/uaprof/sch_s239.xml' => array( 'Samsung', 'mPower TV', NULL, TYPE_MOBILE ),
4825
  'http://www.alltel.net/uaprof/samsung/u706/u706.xml' => array( 'Samsung', 'Muse', NULL, TYPE_MOBILE ),
4826
  'http://device.telusmobility.com/samsung/spha523-0.rdf' => array( 'Samsung', 'Mysto', NULL, TYPE_MOBILE ),
4840
  'http://wap.samsungmobile.com/uaprof/SGH-M8800_3G.rdf' => array( 'Samsung', 'Pixon', NULL, TYPE_MOBILE ),
4841
  'http://wap.samsungmobile.com/uaprof/GT-S5600.rdf' => array( 'Samsung', 'Preston', 'Touchwiz', TYPE_MOBILE ),
4842
  'http://wap.samsungmobile.com/uaprof/GT-S5600LUAProf.xml' => array( 'Samsung', 'Preston', 'Touchwiz', TYPE_MOBILE ),
4843
+ 'http://wap.samsungmobile.com/uaprof/GT-S5610_2G.rdf' => array( 'Samsung', 'Primo', NULL, TYPE_MOBILE ),
4844
+ 'http://wap.samsungmobile.com/uaprof/GT-S5610_3G.rdf' => array( 'Samsung', 'Primo', NULL, TYPE_MOBILE ),
4845
  'http://wap.samsungmobile.com/uaprof/SGH-A767.xml' => array( 'Samsung', 'Propel', NULL, TYPE_MOBILE ),
4846
  'http://device.sprintpcs.com/Samsung/SPH-M540/BI09.rdf' => array( 'Samsung', 'Rant', NULL, TYPE_MOBILE ),
4847
  'http://device.telusmobility.com/samsung/sphm540-0.rdf' => array( 'Samsung', 'Rant', NULL, TYPE_MOBILE ),
4848
+ 'http://uaprof.vtext.com/sch/u820/u820.xml' => array( 'Samsung', 'Reality', 'Brew', TYPE_MOBILE ),
4849
  'http://device.sprintpcs.com/Samsung/SPH-M580/EF27.rdf' => array( 'Samsung', 'Replenish', 'Android', TYPE_MOBILE ),
4850
  'http://device.sprintpcs.com/Samsung/SPH-M580/FA19.rdf' => array( 'Samsung', 'Replenish', 'Android', TYPE_MOBILE ),
4851
  'http://device.sprintpcs.com/Samsung/SPH-M580BST/FB03.rdf' => array( 'Samsung', 'Replenish', 'Android', TYPE_MOBILE ),
4860
  'http://wap.samsungmobile.com/uaprof/S3600.xml' => array( 'Samsung', 'S3600', NULL, TYPE_MOBILE ),
4861
  'http://wap.samsungmobile.com/uaprof/S7330UAProf.xml' => array( 'Samsung', 'S7330', NULL, TYPE_MOBILE ),
4862
  'http://wap.samsungmobile.com/uaprof/S7330UAProf3G.xml' => array( 'Samsung', 'S7330', NULL, TYPE_MOBILE ),
4863
+ 'http://wap.samsungmobile.com/uaprof/S7350UAProf3G.xml' => array( 'Samsung', 'S7350 Ultra S', NULL, TYPE_MOBILE ),
4864
  'http://wap.samsungmobile.com/uaprof/S9500UAProf.xml' => array( 'Samsung', 'S9500', NULL, TYPE_MOBILE ),
4865
  'http://nmsc.ctvap.cn/uaprof/SCH/SCH_I779_1_20110615.xml' => array( 'Samsung', 'Saga', 'Android', TYPE_MOBILE ),
4866
  'http://nmsc.ctvap.cn/uaprof/SCH/SCH_I779_1_20120220.xml' => array( 'Samsung', 'Saga', 'Android', TYPE_MOBILE ),
4869
  'http://device.telusmobility.com/samsung/scha650.rdf' => array( 'Samsung', 'SCH-A650', NULL, TYPE_MOBILE ),
4870
  'http://device.telusmobility.com/samsung/scha670.rdf' => array( 'Samsung', 'SCH-A670', NULL, TYPE_MOBILE ),
4871
  'http://device.telusmobility.com/samsung/scha870-0.rdf' => array( 'Samsung', 'SCH-A870', NULL, TYPE_MOBILE ),
4872
+ 'http://nmsc.ctvap.cn/uaprof/SCH/SCH_I339_1_20120220.xml' => array( 'Samsung', 'SCH-I339', 'Android', TYPE_MOBILE ),
4873
  'http://nmsc.ctvap.cn/uaprof/SCH/SCH_SCH-I629_1_20131010.xml' => array( 'Samsung', 'SCH-I629', 'Android', TYPE_MOBILE ),
4874
  'http://uaprof.vtext.com/sam/SCH-I665/SCH-I665.xml' => array( 'Samsung', 'SCH-I665', 'Android', TYPE_MOBILE ),
4875
+ 'http://nmsc.ctvap.cn/uaprof/SCH/SCH_SCH-I679_1_20131211.xml' => array( 'Samsung', 'SCH-I679', 'Android', TYPE_MOBILE ),
4876
  'http://uaprof.vtext.com/sch/n330/n330v1.xml' => array( 'Samsung', 'SCH-N330', NULL, TYPE_MOBILE ),
4877
  'http://uaprof.metropcs.net/UAProf/sam-r450.xml' => array( 'Samsung', 'SCH-R450', NULL, TYPE_MOBILE ),
4878
  'http://uaprof.bellmobilite.ca/Samsung_SCH-R610.rdf' => array( 'Samsung', 'SCH-R610', NULL, TYPE_MOBILE ),
4879
  'http://wap.samsungmobile.com/uaprof/SCH-R740C.xml' => array( 'Samsung', 'SCH-R740', 'Android', TYPE_MOBILE ),
4880
+ 'http://nmsc.ctvap.cn/uaprof/SCH/SCH_S579_1_20100427.xml' => array( 'Samsung', 'SCH-S579', 'Brew', TYPE_MOBILE ),
4881
  'http://www.alltel.net/uaprof/samsung/u340/u340.xml' => array( 'Samsung', 'SCH-U340', NULL, TYPE_MOBILE ),
4882
  'http://device.telusmobility.com/samsung/schu410t-0.rdf' => array( 'Samsung', 'SCH-U410', NULL, TYPE_MOBILE ),
4883
  'http://uaprof.vtext.com/sch/u430/u430v1.xml' => array( 'Samsung', 'SCH-U430', NULL, TYPE_MOBILE ),
4896
  'http://wap.samsungmobile.com/uaprof/SGH-A117.xml' => array( 'Samsung', 'SGH-A117', NULL, TYPE_MOBILE ),
4897
  'http://wap.samsungmobile.com/uaprof/a127_10.xml' => array( 'Samsung', 'SGH-A127', NULL, TYPE_MOBILE ),
4898
  'http://wap.samsungmobile.com/uaprof/SGH-A137.xml' => array( 'Samsung', 'SGH-A137', NULL, TYPE_MOBILE ),
4899
+ 'http://wap.samsungmobile.com/uaprof/SGH-A157V.xml' => array( 'Samsung', 'SGH-A157V', NULL, TYPE_MOBILE ),
4900
  'http://wap.samsungmobile.com/uaprof/SGH-A237.xml' => array( 'Samsung', 'SGH-A237', NULL, TYPE_MOBILE ),
4901
  'http://wap.samsungmobile.com/uaprof/SGH-A436.xml' => array( 'Samsung', 'SGH-A436', NULL, TYPE_MOBILE ),
4902
  'http://wap.samsungmobile.com/uaprof/SGH-A437.xml' => array( 'Samsung', 'SGH-A437', NULL, TYPE_MOBILE ),
4911
  'http://wap.samsungmobile.com/uaprof/A737UAProf.xml' => array( 'Samsung', 'SGH-A737', NULL, TYPE_MOBILE ),
4912
  'http://wap.samsungmobile.com/uaprof/SGH-A746.xml' => array( 'Samsung', 'SGH-A746', NULL, TYPE_MOBILE ),
4913
  'http://wap.samsungmobile.com/uaprof/A747UAProf.xml' => array( 'Samsung', 'SGH-A747', NULL, TYPE_MOBILE ),
4914
+ 'http://wap.samsungmobile.com/uaprof/L170UAProf.xml' => array( 'Samsung', 'SGH-A767', NULL, TYPE_MOBILE ),
4915
  'http://wap.samsungmobile.com/uaprof/SGH-A800.xml' => array( 'Samsung', 'SGH-A800', NULL, TYPE_MOBILE ),
4916
  'http://wap.samsungmobile.com/uaprof/SGH-A811_3G.xml' => array( 'Samsung', 'SGH-A811', NULL, TYPE_MOBILE ),
4917
  'http://wap.samsungmobile.com/uaprof/b100_10.xml' => array( 'Samsung', 'SGH-B100', NULL, TYPE_MOBILE ),
5254
  'http://wap.samsungmobile.com/uaprof/p900_10.xml' => array( 'Samsung', 'SGH-P900', NULL, TYPE_MOBILE ),
5255
  'http://wap.samsungmobile.com/uaprof/p908t_10.xml' => array( 'Samsung', 'SGH-P908', NULL, TYPE_MOBILE ),
5256
  'http://wap.samsungmobile.com/uaprof/P910UAProf2G.rdf' => array( 'Samsung', 'SGH-P910', NULL, TYPE_MOBILE ),
5257
+ 'http://wap.samsungmobile.com/uaprof/SGH-P960.rdf' => array( 'Samsung', 'SGH-P960', NULL, TYPE_MOBILE ),
5258
  'http://wap.samsungmobile.com/uaprof/SGH-P960_3G.rdf' => array( 'Samsung', 'SGH-P960', NULL, TYPE_MOBILE ),
5259
  'http://wap.samsungmobile.com/uaprof/s300m_00.xml' => array( 'Samsung', 'SGH-S300', NULL, TYPE_MOBILE ),
5260
  'http://wap.samsungmobile.com/uaprof/SGH-S500.xml' => array( 'Samsung', 'SGH-S500', NULL, TYPE_MOBILE ),
5391
  'http://wap.samsungmobile.com/uaprof/ZV30UAProf.rdf' => array( 'Samsung', 'SGH-ZV30', NULL, TYPE_MOBILE ),
5392
  'http://wap.samsungmobile.com/uaprof/ZV60UAProf3G.rdf' => array( 'Samsung', 'SGH-ZV60', NULL, TYPE_MOBILE ),
5393
  'http://wap.samsungmobile.com/uaprof/GT-S5350UAProf.xml' => array( 'Samsung', 'Shark', NULL, TYPE_MOBILE ),
 
5394
  'http://wap.samsungmobile.com/uaprof/SM-G3815.xml' => array( 'Samsung', 'SM-G3815', 'Android', TYPE_MOBILE ),
5395
  'http://nmsc.ctvap.cn/uaprof/SCH/SCH_SM-G3819D_1_20130821.xml' => array( 'Samsung', 'SM-G3819', 'Android', TYPE_MOBILE ),
5396
  'http://nmsc.ctvap.cn/uaprof/SCH/SCH_SM-W2014_1_20130916.xml' => array( 'Samsung', 'SM-W2014', 'Android', TYPE_MOBILE ),
5397
+ 'http://wap.samsungmobile.com/uaprof/SGH-T359.xml' => array( 'Samsung', 'Smiley :)', NULL, TYPE_MOBILE ),
5398
  'http://wap.samsungmobile.com/uaprof/SGH-A817.xml' => array( 'Samsung', 'Solstice II', NULL, TYPE_MOBILE ),
5399
  'http://wap.samsungmobile.com/uaprof/SGH-G400_3G.rdf' => array( 'Samsung', 'Soul', NULL, TYPE_MOBILE ),
5400
  'http://wap.samsungmobile.com/uaprof/U900UAProf.xml' => array( 'Samsung', 'Soul', NULL, TYPE_MOBILE ),
5414
  'http://device.sprintpcs.com/Samsung/SPH-A900P/ZH03.rdf' => array( 'Samsung', 'SPH-A900', NULL, TYPE_MOBILE ),
5415
  'http://device.sprintpcs.com/Samsung/SPH-A920/YK12.rdf' => array( 'Samsung', 'SPH-A920', NULL, TYPE_MOBILE ),
5416
  'http://device.sprintpcs.com/Samsung/SPH-i550/XE07.rdf' => array( 'Samsung', 'SPH-I550', 'Palm OS', TYPE_MOBILE ),
 
5417
  'http://device.telusmobility.com/samsung/sphm210-0.rdf' => array( 'Samsung', 'SPH-M210', NULL, TYPE_MOBILE ),
5418
  'http://device.sprintpcs.com/Samsung/SPH-M220/BG24.rdf' => array( 'Samsung', 'SPH-M220', NULL, TYPE_MOBILE ),
5419
  'http://uaprof.vmobl.com/samsung/m310/VMU_m310_UAProf.xml' => array( 'Samsung', 'SPH-M310', NULL, TYPE_MOBILE ),
5428
  'http://wap.samsungmobile.com/uaprof/GT-S5230.rdf' => array( 'Samsung', 'Star', 'Touchwiz', TYPE_MOBILE ),
5429
  'http://wap.samsungmobile.com/uaprof/GT-S5230G.rdf' => array( 'Samsung', 'Star', 'Touchwiz', TYPE_MOBILE ),
5430
  'http://wap.samsungmobile.com/uaprof/GT-S5230MR.rdf' => array( 'Samsung', 'Star', 'Touchwiz', TYPE_MOBILE ),
5431
+ 'http://wap.samsungmobile.com/uaprof/GT-S5230N.rdf' => array( 'Samsung', 'Star', 'Touchwiz', TYPE_MOBILE ),
5432
  'http://wap.samsungmobile.com/uaprof/GT-S5230W.rdf' => array( 'Samsung', 'Star', 'Touchwiz', TYPE_MOBILE ),
5433
  'http://wap.samsungmobile.com/uaprof/GT-S5230W_3G.rdf' => array( 'Samsung', 'Star', 'Touchwiz', TYPE_MOBILE ),
5434
  'http://wap.samsungmobile.com/uaprof/GT-S5233A.rdf' => array( 'Samsung', 'Star', 'Touchwiz', TYPE_MOBILE ),
5438
  'http://wap.samsungmobile.com/uaprof/GT-S5233W.rdf' => array( 'Samsung', 'Star', 'Touchwiz', TYPE_MOBILE ),
5439
  'http://wap.samsungmobile.com/uaprof/GT-S5233W.xml' => array( 'Samsung', 'Star', 'Touchwiz', TYPE_MOBILE ),
5440
  'http://wap.samsungmobile.com/uaprof/GT-S5220UAProf.xml' => array( 'Samsung', 'Star 3', 'Touchwiz', TYPE_MOBILE ),
5441
+ 'http://wap.samsungmobile.com/uaprof/GT-S5222BR.xml' => array( 'Samsung', 'Star 3 Duos', 'Touchwiz', TYPE_MOBILE ),
5442
  'http://wap.samsungmobile.com/uaprof/GT-S5222UAProf.xml' => array( 'Samsung', 'Star 3 Duos', 'Touchwiz', TYPE_MOBILE ),
5443
  'http://wap.samsungmobile.com/uaprof/GT-S5292UAProf.xml' => array( 'Samsung', 'Star Deluxe Duos', 'Touchwiz', TYPE_MOBILE ),
5444
  'http://wap.samsungmobile.com/uaprof/GT-B7722_2G.rdf' => array( 'Samsung', 'Star Duos', 'Touchwiz', TYPE_MOBILE ),
5466
  'http://device.sprintpcs.com/Samsung/SPH-M620/AC08.rdf' => array( 'Samsung', 'UpStage', NULL, TYPE_MOBILE ),
5467
  'http://wap.samsungmobile.com/uaprof/V804SSUAProf.rdf' => array( 'Samsung', 'V804', NULL, TYPE_MOBILE ),
5468
  'http://wap.samsungmobile.com/uaprof/SGH-T959.xml' => array( 'Samsung', 'Vibrant', 'Android', TYPE_MOBILE ),
5469
+ 'http://wap.samsungmobile.com/uaprof/sch_w259.xml' => array( 'Samsung', 'W169 Duos', NULL, TYPE_MOBILE ),
5470
  'http://wap.samsungmobile.com/uaprof/GT-S8500.rdf' => array( 'Samsung', 'Wave', 'Bada', TYPE_MOBILE ),
5471
  'http://wap.samsungmobile.com/uaprof/GT-S8500R.rdf' => array( 'Samsung', 'Wave', 'Bada', TYPE_MOBILE ),
5472
  'http://wap.samsungmobile.com/uaprof/GT-S8500_2G.rdf' => array( 'Samsung', 'Wave', 'Bada', TYPE_MOBILE ),
5513
  'http://wap.samsungmobile.com/uaprof/Z560UAProf3G.rdf' => array( 'Samsung', 'Z560', NULL, TYPE_MOBILE ),
5514
  'http://wap.samsungmobile.com/uaprof/z630_00.xml' => array( 'Samsung', 'Z630', NULL, TYPE_MOBILE ),
5515
  'http://wap.samsungmobile.com/uaprof/Z720UAProf3G.rdf' => array( 'Samsung', 'Z720', NULL, TYPE_MOBILE ),
5516
+ 'http://device.sprintpcs.com/Sanyo/6780Boost/1001Boost.rdf' => array( 'Sanyo', 'Innuendo', 'Brew', TYPE_MOBILE ),
5517
  'http://device.sprintpcs.com/Sanyo/SCP8500/1000SP.rdf' => array( 'Sanyo', 'Katana DLX', NULL, TYPE_MOBILE ),
5518
  'http://device.sprintpcs.com/Sanyo/SCPM1/1001SP.rdf' => array( 'Sanyo', 'M1', NULL, TYPE_MOBILE ),
5519
  'http://device.sprintpcs.com/Sanyo/MM5600/0702SP.rdf' => array( 'Sanyo', 'MM-5600', NULL, TYPE_MOBILE ),
5585
  'http://www.c2dms.com/UAProfile/S2U/SH631W.xml' => array( 'Sharp', 'SH631W', 'Android', TYPE_MOBILE ),
5586
  'http://wap1.sharp.com/uaprof/SharpSH8188U.xml' => array( 'Sharp', 'SH8188U', 'Android', TYPE_MOBILE ),
5587
  'http://sharp-mobile.com/UAprof/SHP_SH831T_3_20120214.xml' => array( 'Sharp', 'SH831T', 'Android', TYPE_MOBILE ),
5588
+ 'http://cn.c2dms.com/UAProfile/S1M/SH837M.xml' => array( 'Sharp', 'SH837M', 'Android', TYPE_MOBILE ),
5589
  'http://www.c2dms.com/UAProfile/S1U/SH837W.xml' => array( 'Sharp', 'SH837W', 'Android', TYPE_MOBILE ),
5590
  'http://cn.c2dms.com/UAProfile/VKY/SH931W.xml' => array( 'Sharp', 'SH931W', 'Android', TYPE_MOBILE ),
5591
  'http://www.sharp-mobile.com/UAprofTM/tm100.xml' => array( 'Sharp', 'TM100', NULL, TYPE_MOBILE ),
5623
  'http://communication-market.siemens.de/portal/UAProf/UAP.aspx?DeviceID=SX66' => array( 'Siemens', 'SX66', NULL, TYPE_MOBILE ),
5624
  'http://skyspring.co.kr/UAprof/UAprof_Sp710_wap20.xml' => array( 'Skyspring', 'SP710', NULL, TYPE_MOBILE ),
5625
  'http://skyspring.co.kr/UAprof/UAprof_SP770.xml' => array( 'Skyspring', 'SP770', NULL, TYPE_MOBILE ),
5626
+ 'http://wap.my-fun.cn/tclPortal/ua/Smartfren_E781A_20110928.xml' => array( 'Smartfren', 'Xstre@m', 'Brew', TYPE_MOBILE ),
5627
  'http://uaprof.softbank.ne.jp/uaprof/3G_103P.xml' => array( 'Softbank', '103P', NULL, TYPE_MOBILE ),
5628
  'http://wap1.huawei.com/uaprof/HuaweiY300-J1-Normal.xml' => array( 'Softbank', '204HW', 'Android', TYPE_MOBILE ),
5629
  'http://wap.samsungmobile.com/uaprof/705SCUAProf.rdf' => array( 'Softbank', '705SC', NULL, TYPE_MOBILE ),
5658
  'http://uaprof.sonymobile.com/SO-01ER911.xml' => array( 'Sony', 'Xperia AX', 'Android', TYPE_MOBILE ),
5659
  'http://uaprof.sonymobile.com/C2305R401.xml' => array( 'Sony', 'Xperia C', 'Android', TYPE_MOBILE ),
5660
  'http://uaprof.sonymobile.com/S39hR401.xml' => array( 'Sony', 'Xperia C', 'Android', TYPE_MOBILE ),
5661
+ 'http://uaprof.sonymobile.com/C1504 UnavailableR402.xml' => array( 'Sony', 'Xperia E', 'Android', TYPE_MOBILE ),
5662
  'http://uaprof.sonymobile.com/C1504R402.xml' => array( 'Sony', 'Xperia E', 'Android', TYPE_MOBILE ),
5663
  'http://uaprof.sonymobile.com/C1505R402.xml' => array( 'Sony', 'Xperia E', 'Android', TYPE_MOBILE ),
5664
+ 'http://uaprof.sonymobile.com/C1604JBR402.xml' => array( 'Sony', 'Xperia E dual', 'Android', TYPE_MOBILE ),
5665
  'http://uaprof.sonymobile.com/C1604R402.xml' => array( 'Sony', 'Xperia E dual', 'Android', TYPE_MOBILE ),
5666
  'http://uaprof.sonymobile.com/C1605JBR402.xml' => array( 'Sony', 'Xperia E dual', 'Android', TYPE_MOBILE ),
5667
  'http://uaprof.sonymobile.com/C1605R402.xml' => array( 'Sony', 'Xperia E dual', 'Android', TYPE_MOBILE ),
5668
+ 'http://uaprof.sonymobile.com/D5103R1411.xml' => array( 'Sony', 'Xperia G', 'Android', TYPE_MOBILE ),
5669
  'http://uaprof.sonymobile.com/LotusR620.xml' => array( 'Sony', 'Xperia Go', 'Android', TYPE_MOBILE ),
5670
  'http://uaprof.sonymobile.com/ST27aR620.xml' => array( 'Sony', 'Xperia Go', 'Android', TYPE_MOBILE ),
5671
  'http://uaprof.sonymobile.com/ST27iR620.xml' => array( 'Sony', 'Xperia Go', 'Android', TYPE_MOBILE ),
5714
  'http://wap.sonyericsson.com/UAprof/MT27iR611.xml' => array( 'Sony', 'Xperia Sola', 'Android', TYPE_MOBILE ),
5715
  'http://wap.sonyericsson.com/UAprof/pepperR611.xml' => array( 'Sony', 'Xperia Sola', 'Android', TYPE_MOBILE ),
5716
  'http://wap.sonyericsson.com/UAprof/Xperia SolaR611.xml' => array( 'Sony', 'Xperia Sola', 'Android', TYPE_MOBILE ),
5717
+ 'http://uaprof.sonymobile.com/C5302R1411.xml' => array( 'Sony', 'Xperia SP', 'Android', TYPE_MOBILE ),
5718
  'http://uaprof.sonymobile.com/C5302R401.xml' => array( 'Sony', 'Xperia SP', 'Android', TYPE_MOBILE ),
5719
+ 'http://uaprof.sonymobile.com/C5303R1211.xml' => array( 'Sony', 'Xperia SP', 'Android', TYPE_MOBILE ),
5720
+ 'http://uaprof.sonymobile.com/C5303R1411.xml' => array( 'Sony', 'Xperia SP', 'Android', TYPE_MOBILE ),
5721
  'http://uaprof.sonymobile.com/C5303R401.xml' => array( 'Sony', 'Xperia SP', 'Android', TYPE_MOBILE ),
5722
  'http://uaprof.sonymobile.com/C5303R701.xml' => array( 'Sony', 'Xperia SP', 'Android', TYPE_MOBILE ),
5723
  'http://uaprof.sonymobile.com/C5306R1401.xml' => array( 'Sony', 'Xperia SP', 'Android', TYPE_MOBILE ),
5724
+ 'http://uaprof.sonymobile.com/C5306R1411.xml' => array( 'Sony', 'Xperia SP', 'Android', TYPE_MOBILE ),
5725
  'http://uaprof.sonymobile.com/C5306R401.xml' => array( 'Sony', 'Xperia SP', 'Android', TYPE_MOBILE ),
5726
  'http://uaprof.sonymobile.com/M35cR401.xml' => array( 'Sony', 'Xperia SP', 'Android', TYPE_MOBILE ),
5727
+ 'http://uaprof.sonymobile.com/M35hR1411.xml' => array( 'Sony', 'Xperia SP', 'Android', TYPE_MOBILE ),
5728
  'http://uaprof.sonymobile.com/M35hR401.xml' => array( 'Sony', 'Xperia SP', 'Android', TYPE_MOBILE ),
5729
+ 'http://uaprof.sonymobile.com/M35tR401.xml' => array( 'Sony', 'Xperia SP', 'Android', TYPE_MOBILE ),
5730
  'http://uaprof.sonymobile.com/SO-05DR701.xml' => array( 'Sony', 'Xperia SX', 'Android', TYPE_MOBILE ),
5731
  'http://uaprof.sonymobile.com/SO-05DR911.xml' => array( 'Sony', 'Xperia SX', 'Android', TYPE_MOBILE ),
5732
  'http://uaprof.sonymobile.com/LT30aR1401.xml' => array( 'Sony', 'Xperia T', 'Android', TYPE_MOBILE ),
5733
+ 'http://uaprof.sonymobile.com/LT30aR1411.xml' => array( 'Sony', 'Xperia T', 'Android', TYPE_MOBILE ),
5734
  'http://uaprof.sonymobile.com/LT30aR701.xml' => array( 'Sony', 'Xperia T', 'Android', TYPE_MOBILE ),
5735
  'http://uaprof.sonymobile.com/LT30aR911.xml' => array( 'Sony', 'Xperia T', 'Android', TYPE_MOBILE ),
5736
+ 'http://uaprof.sonymobile.com/LT30pR1411.xml' => array( 'Sony', 'Xperia T', 'Android', TYPE_MOBILE ),
5737
  'http://uaprof.sonymobile.com/LT30pR701.xml' => array( 'Sony', 'Xperia T', 'Android', TYPE_MOBILE ),
5738
  'http://uaprof.sonymobile.com/LT30pR911.xml' => array( 'Sony', 'Xperia T', 'Android', TYPE_MOBILE ),
5739
+ 'http://uaprof.sonymobile.com/LT30pR921.xml' => array( 'Sony', 'Xperia T', 'Android', TYPE_MOBILE ),
5740
+ 'http://uaprof.sonymobile.com/D5303R1411.xml' => array( 'Sony', 'Xperia T2 Ultra', 'Android', TYPE_MOBILE ),
5741
+ 'http://uaprof.sonymobile.com/D5303R1903.xml' => array( 'Sony', 'Xperia T2 Ultra', 'Android', TYPE_MOBILE ),
5742
+ 'http://uaprof.sonymobile.com/D5322R1903.xml' => array( 'Sony', 'Xperia T2 Ultra', 'Android', TYPE_TABLET ),
5743
+ 'http://uaprof.sonymobile.com/XM50hR1911.xml' => array( 'Sony', 'Xperia T2 Ultra', 'Android', TYPE_TABLET ),
5744
+ 'http://uaprof.sonymobile.com/XM50tR1903.xml' => array( 'Sony', 'Xperia T2 Ultra', 'Android', TYPE_TABLET ),
5745
  'http://uaprof.sonymobile.com/PolluxWindyR1002.xml' => array( 'Sony', 'Xperia Tablet Z', 'Android', TYPE_TABLET ),
5746
  'http://uaprof.sonymobile.com/SGP311R1002.xml' => array( 'Sony', 'Xperia Tablet Z', 'Android', TYPE_TABLET ),
5747
  'http://uaprof.sonymobile.com/SGP311R1003.xml' => array( 'Sony', 'Xperia Tablet Z', 'Android', TYPE_TABLET ),
5748
+ 'http://uaprof.sonymobile.com/SGP311R1004.xml' => array( 'Sony', 'Xperia Tablet Z', 'Android', TYPE_TABLET ),
5749
  'http://uaprof.sonymobile.com/SGP312R1002.xml' => array( 'Sony', 'Xperia Tablet Z', 'Android', TYPE_TABLET ),
5750
  'http://uaprof.sonymobile.com/SGP312R1003.xml' => array( 'Sony', 'Xperia Tablet Z', 'Android', TYPE_TABLET ),
5751
+ 'http://uaprof.sonymobile.com/SGP312R1004.xml' => array( 'Sony', 'Xperia Tablet Z', 'Android', TYPE_MOBILE ),
5752
  'http://uaprof.sonymobile.com/SGP321R1002.xml' => array( 'Sony', 'Xperia Tablet Z', 'Android', TYPE_TABLET ),
5753
  'http://uaprof.sonymobile.com/SGP321R1003.xml' => array( 'Sony', 'Xperia Tablet Z', 'Android', TYPE_TABLET ),
5754
+ 'http://uaprof.sonymobile.com/SGP321R1004.xml' => array( 'Sony', 'Xperia Tablet Z', 'Android', TYPE_TABLET ),
5755
  'http://uaprof.sonymobile.com/SGP341R1002.xml' => array( 'Sony', 'Xperia Tablet Z', 'Android', TYPE_TABLET ),
5756
+ 'http://uaprof.sonymobile.com/SGP341R1003.xml' => array( 'Sony', 'Xperia Tablet Z', 'Android', TYPE_TABLET ),
5757
+ 'http://uaprof.sonymobile.com/SGP341R1004.xml' => array( 'Sony', 'Xperia Tablet Z', 'Android', TYPE_TABLET ),
5758
+ 'http://uaprof.sonymobile.com/SGP351R1002.xml' => array( 'Sony', 'Xperia Tablet Z', 'Android', TYPE_TABLET ),
5759
  'http://uaprof.sonymobile.com/SO-03ER1002.xml' => array( 'Sony', 'Xperia Tablet Z', 'Android', TYPE_TABLET ),
5760
  'http://uaprof.sonymobile.com/ST21aR402.xml' => array( 'Sony', 'Xperia Tipo', 'Android', TYPE_MOBILE ),
5761
  'http://uaprof.sonymobile.com/ST21iR402.xml' => array( 'Sony', 'Xperia Tipo', 'Android', TYPE_MOBILE ),
5762
+ 'http://wap.sonyericsson.com/UAprof/ST21iR402.xml' => array( 'Sony', 'Xperia Tipo', 'Android', TYPE_MOBILE ),
5763
  'http://wap.sonyericsson.com/UAprof/ST21R402.xml' => array( 'Sony', 'Xperia Tipo', 'Android', TYPE_MOBILE ),
5764
  'http://uaprof.sonymobile.com/ST21a2R402.xml' => array( 'Sony', 'Xperia Tipo Dual', 'Android', TYPE_MOBILE ),
5765
  'http://uaprof.sonymobile.com/ST21i2R402.xml' => array( 'Sony', 'Xperia Tipo Dual', 'Android', TYPE_MOBILE ),
5767
  'http://uaprof.sonymobile.com/LT30atR701.xml' => array( 'Sony', 'Xperia TL', 'Android', TYPE_MOBILE ),
5768
  'http://uaprof.sonymobile.com/LT30atR911.xml' => array( 'Sony', 'Xperia TL', 'Android', TYPE_MOBILE ),
5769
  'http://uaprof.sonymobile.com/LT29iR1002.xml' => array( 'Sony', 'Xperia TX', 'Android', TYPE_MOBILE ),
5770
+ 'http://uaprof.sonymobile.com/LT29iR1411.xml' => array( 'Sony', 'Xperia TX', 'Android', TYPE_MOBILE ),
5771
  'http://uaprof.sonymobile.com/LT29iR701.xml' => array( 'Sony', 'Xperia TX', 'Android', TYPE_MOBILE ),
5772
  'http://uaprof.sonymobile.com/LT29iR911.xml' => array( 'Sony', 'Xperia TX', 'Android', TYPE_MOBILE ),
5773
+ 'http://uaprof.sonymobile.com/LT29iR921.xml' => array( 'Sony', 'Xperia TX', 'Android', TYPE_MOBILE ),
5774
  'http://wap.sonyericsson.com/UAprof/HayabusaR601.xml' => array( 'Sony', 'Xperia TX', 'Android', TYPE_MOBILE ),
5775
  'http://wap.sonyericsson.com/UAprof/LT29iR601.xml' => array( 'Sony', 'Xperia TX', 'Android', TYPE_MOBILE ),
5776
  'http://uaprof.sonymobile.com/ST25iR620.xml' => array( 'Sony', 'Xperia U', 'Android', TYPE_MOBILE ),
5779
  'http://wap.sonyericsson.com/UAprof/ST25iR601.xml' => array( 'Sony', 'Xperia U', 'Android', TYPE_MOBILE ),
5780
  'http://wap.sonyericsson.com/UAprof/ST25iR611.xml' => array( 'Sony', 'Xperia U', 'Android', TYPE_MOBILE ),
5781
  'http://uaprof.sonymobile.com/SOL22R1002.xml' => array( 'Sony', 'Xperia UL', 'Android', TYPE_MOBILE ),
5782
+ 'http://uaprof.sonymobile.com/SOL22R1003.xml' => array( 'Sony', 'Xperia UL', 'Android', TYPE_MOBILE ),
5783
+ 'http://uaprof.sonymobile.com/LT25iR1411.xml' => array( 'Sony', 'Xperia V', 'Android', TYPE_MOBILE ),
5784
  'http://uaprof.sonymobile.com/LT25iR701.xml' => array( 'Sony', 'Xperia V', 'Android', TYPE_MOBILE ),
5785
  'http://uaprof.sonymobile.com/LT25iR901.xml' => array( 'Sony', 'Xperia V', 'Android', TYPE_MOBILE ),
5786
  'http://uaprof.sonymobile.com/LT25iR911.xml' => array( 'Sony', 'Xperia V', 'Android', TYPE_MOBILE ),
5787
+ 'http://uaprof.sonymobile.com/LT25iR921.xml' => array( 'Sony', 'Xperia V', 'Android', TYPE_MOBILE ),
5788
  'http://uaprof.sonymobile.com/LT25cR901.xml' => array( 'Sony', 'Xperia VC', 'Android', TYPE_MOBILE ),
5789
  'http://uaprof.sonymobile.com/LT25cR911.xml' => array( 'Sony', 'Xperia VC', 'Android', TYPE_MOBILE ),
5790
  'http://uaprof.sonymobile.com/SOL21R901.xml' => array( 'Sony', 'Xperia VL', 'Android', TYPE_MOBILE ),
5791
  'http://uaprof.sonymobile.com/SOL21R911.xml' => array( 'Sony', 'Xperia VL', 'Android', TYPE_MOBILE ),
5792
  'http://uaprof.sonymobile.com/C6602R1002.xml' => array( 'Sony', 'Xperia Z', 'Android', TYPE_MOBILE ),
5793
  'http://uaprof.sonymobile.com/C6602R1003.xml' => array( 'Sony', 'Xperia Z', 'Android', TYPE_MOBILE ),
5794
+ 'http://uaprof.sonymobile.com/C6602R1004.xml' => array( 'Sony', 'Xperia Z', 'Android', TYPE_MOBILE ),
5795
+ 'http://uaprof.sonymobile.com/C6602R402.xml' => array( 'Sony', 'Xperia Z', 'Android', TYPE_MOBILE ),
5796
  'http://uaprof.sonymobile.com/C6603R1002.xml' => array( 'Sony', 'Xperia Z', 'Android', TYPE_MOBILE ),
5797
  'http://uaprof.sonymobile.com/C6603R1003.xml' => array( 'Sony', 'Xperia Z', 'Android', TYPE_MOBILE ),
5798
+ 'http://uaprof.sonymobile.com/C6603R1004.xml' => array( 'Sony', 'Xperia Z', 'Android', TYPE_MOBILE ),
5799
  'http://uaprof.sonymobile.com/C6606R1002.xml' => array( 'Sony', 'Xperia Z', 'Android', TYPE_MOBILE ),
5800
+ 'http://uaprof.sonymobile.com/C6606R1003.xml' => array( 'Sony', 'Xperia Z', 'Android', TYPE_MOBILE ),
5801
  'http://uaprof.sonymobile.com/C6616R1002.xml' => array( 'Sony', 'Xperia Z', 'Android', TYPE_MOBILE ),
5802
+ 'http://uaprof.sonymobile.com/C6616R1004.xml' => array( 'Sony', 'Xperia Z', 'Android', TYPE_MOBILE ),
5803
  'http://uaprof.sonymobile.com/L36hR1002.xml' => array( 'Sony', 'Xperia Z', 'Android', TYPE_MOBILE ),
5804
  'http://uaprof.sonymobile.com/L36hR1003.xml' => array( 'Sony', 'Xperia Z', 'Android', TYPE_MOBILE ),
5805
+ 'http://uaprof.sonymobile.com/L36hR1004.xml' => array( 'Sony', 'Xperia Z', 'Android', TYPE_MOBILE ),
5806
  'http://uaprof.sonymobile.com/L36hR911.xml' => array( 'Sony', 'Xperia Z', 'Android', TYPE_MOBILE ),
5807
  'http://uaprof.sonymobile.com/SO-02ER1002.xml' => array( 'Sony', 'Xperia Z', 'Android', TYPE_MOBILE ),
5808
  'http://uaprof.sonymobile.com/SO-02ER1003.xml' => array( 'Sony', 'Xperia Z', 'Android', TYPE_MOBILE ),
5809
+ 'http://uaprof.sonymobile.com/SO-02ER1411.xml' => array( 'Sony', 'Xperia Z', 'Android', TYPE_MOBILE ),
5810
  'http://wap.sonyericsson.com/UAprof/C6603R611.xml' => array( 'Sony', 'Xperia Z', 'Android', TYPE_MOBILE ),
5811
  'http://uaprof.sonymobile.com/C6802R1002.xml' => array( 'Sony', 'Xperia Z Ultra', 'Android', TYPE_MOBILE ),
5812
  'http://uaprof.sonymobile.com/C6802R1401.xml' => array( 'Sony', 'Xperia Z Ultra', 'Android', TYPE_MOBILE ),
5813
+ 'http://uaprof.sonymobile.com/C6802R1411.xml' => array( 'Sony', 'Xperia Z Ultra', 'Android', TYPE_MOBILE ),
5814
+ 'http://uaprof.sonymobile.com/C6806R1411.xml' => array( 'Sony', 'Xperia Z Ultra', 'Android', TYPE_MOBILE ),
5815
+ 'http://uaprof.sonymobile.com/C6806R1421.xml' => array( 'Sony', 'Xperia Z Ultra', 'Android', TYPE_MOBILE ),
5816
  'http://uaprof.sonymobile.com/C6833R1401.xml' => array( 'Sony', 'Xperia Z Ultra', 'Android', TYPE_MOBILE ),
5817
+ 'http://uaprof.sonymobile.com/C6833R1411.xml' => array( 'Sony', 'Xperia Z Ultra', 'Android', TYPE_TABLET ),
5818
  'http://uaprof.sonymobile.com/SOL24R1401.xml' => array( 'Sony', 'Xperia Z Ultra', 'Android', TYPE_MOBILE ),
5819
  'http://uaprof.sonymobile.com/XL39hR1401.xml' => array( 'Sony', 'Xperia Z Ultra', 'Android', TYPE_TABLET ),
5820
+ 'http://uaprof.sonymobile.com/XL39hR1411.xml' => array( 'Sony', 'Xperia Z Ultra', 'Android', TYPE_MOBILE ),
5821
+ 'http://uaprof.sonymobile.com/XL39hR1421.xml' => array( 'Sony', 'Xperia Z Ultra', 'Android', TYPE_MOBILE ),
5822
  'http://uaprof.sonymobile.com/C6902R1401.xml' => array( 'Sony', 'Xperia Z1', 'Android', TYPE_MOBILE ),
5823
+ 'http://uaprof.sonymobile.com/C6902R1411.xml' => array( 'Sony', 'Xperia Z1', 'Android', TYPE_MOBILE ),
5824
  'http://uaprof.sonymobile.com/C6903R1401.xml' => array( 'Sony', 'Xperia Z1', 'Android', TYPE_MOBILE ),
5825
  'http://uaprof.sonymobile.com/C6903R1411.xml' => array( 'Sony', 'Xperia Z1', 'Android', TYPE_MOBILE ),
5826
+ 'http://uaprof.sonymobile.com/C6903R1421.xml' => array( 'Sony', 'Xperia Z1', 'Android', TYPE_MOBILE ),
5827
  'http://uaprof.sonymobile.com/C6906R1401.xml' => array( 'Sony', 'Xperia Z1', 'Android', TYPE_MOBILE ),
5828
+ 'http://uaprof.sonymobile.com/C6906R1411.xml' => array( 'Sony', 'Xperia Z1', 'Android', TYPE_MOBILE ),
5829
+ 'http://uaprof.sonymobile.com/C6906R1421.xml' => array( 'Sony', 'Xperia Z1', 'Android', TYPE_MOBILE ),
5830
+ 'http://uaprof.sonymobile.com/C6916R1411.xml' => array( 'Sony', 'Xperia Z1', 'Android', TYPE_MOBILE ),
5831
+ 'http://uaprof.sonymobile.com/C6943R1401.xml' => array( 'Sony', 'Xperia Z1', 'Android', TYPE_MOBILE ),
5832
+ 'http://uaprof.sonymobile.com/C6943R1411.xml' => array( 'Sony', 'Xperia Z1', 'Android', TYPE_MOBILE ),
5833
  'http://uaprof.sonymobile.com/L39hR1003.xml' => array( 'Sony', 'Xperia Z1', 'Android', TYPE_MOBILE ),
5834
  'http://uaprof.sonymobile.com/L39hR1401.xml' => array( 'Sony', 'Xperia Z1', 'Android', TYPE_MOBILE ),
5835
+ 'http://uaprof.sonymobile.com/L39hR1411.xml' => array( 'Sony', 'Xperia Z1', 'Android', TYPE_MOBILE ),
5836
+ 'http://uaprof.sonymobile.com/L39hR1421.xml' => array( 'Sony', 'Xperia Z1', 'Android', TYPE_MOBILE ),
5837
+ 'http://uaprof.sonymobile.com/L39hR911.xml' => array( 'Sony', 'Xperia Z1', 'Android', TYPE_MOBILE ),
5838
+ 'http://uaprof.sonymobile.com/L39tR1401.xml' => array( 'Sony', 'Xperia Z1', 'Android', TYPE_MOBILE ),
5839
+ 'http://uaprof.sonymobile.com/L39uR1401.xml' => array( 'Sony', 'Xperia Z1', 'Android', TYPE_MOBILE ),
5840
  'http://uaprof.sonymobile.com/SO-01FR1401.xml' => array( 'Sony', 'Xperia Z1', 'Android', TYPE_MOBILE ),
5841
  'http://uaprof.sonymobile.com/SOL23R1401.xml' => array( 'Sony', 'Xperia Z1', 'Android', TYPE_MOBILE ),
5842
+ 'http://uaprof.sonymobile.com/SOL23R1421.xml' => array( 'Sony', 'Xperia Z1', 'Android', TYPE_MOBILE ),
5843
+ 'http://uaprof.sonymobile.com/D5503R1411.xml' => array( 'Sony', 'Xperia Z1 Compact', 'Android', TYPE_MOBILE ),
5844
+ 'http://uaprof.sonymobile.com/D5503R1421.xml' => array( 'Sony', 'Xperia Z1 Compact', 'Android', TYPE_MOBILE ),
5845
+ 'http://uaprof.sonymobile.com/M51wR1411.xml' => array( 'Sony', 'Xperia Z1 Compact', 'Android', TYPE_MOBILE ),
5846
+ 'http://uaprof.sonymobile.com/M51wR1421.xml' => array( 'Sony', 'Xperia Z1 Compact', 'Android', TYPE_MOBILE ),
5847
  'http://uaprof.sonymobile.com/SO-02FR1401.xml' => array( 'Sony', 'Xperia Z1 f', 'Android', TYPE_MOBILE ),
5848
+ 'http://uaprof.sonymobile.com/D6503R1701.xml' => array( 'Sony', 'Xperia Z2', 'Android', TYPE_MOBILE ),
5849
+ 'http://uaprof.sonymobile.com/L50wR1701.xml' => array( 'Sony', 'Xperia Z2', 'Android', TYPE_MOBILE ),
5850
+ 'http://uaprof.sonymobile.com/SO-03FR1701.xml' => array( 'Sony', 'Xperia Z2', 'Android', TYPE_MOBILE ),
5851
  'http://uaprof.sonymobile.com/C6502R1002.xml' => array( 'Sony', 'Xperia ZL', 'Android', TYPE_MOBILE ),
5852
  'http://uaprof.sonymobile.com/C6502R1003.xml' => array( 'Sony', 'Xperia ZL', 'Android', TYPE_MOBILE ),
5853
+ 'http://uaprof.sonymobile.com/C6502R1004.xml' => array( 'Sony', 'Xperia ZL', 'Android', TYPE_MOBILE ),
5854
  'http://uaprof.sonymobile.com/C6503R1002.xml' => array( 'Sony', 'Xperia ZL', 'Android', TYPE_MOBILE ),
5855
  'http://uaprof.sonymobile.com/C6503R1003.xml' => array( 'Sony', 'Xperia ZL', 'Android', TYPE_MOBILE ),
5856
+ 'http://uaprof.sonymobile.com/C6503R1004.xml' => array( 'Sony', 'Xperia ZL', 'Android', TYPE_MOBILE ),
5857
+ 'http://uaprof.sonymobile.com/C6503R1411.xml' => array( 'Sony', 'Xperia ZL', 'Android', TYPE_MOBILE ),
5858
  'http://uaprof.sonymobile.com/C6503R701.xml' => array( 'Sony', 'Xperia ZL', 'Android', TYPE_MOBILE ),
5859
  'http://uaprof.sonymobile.com/C6506R1002.xml' => array( 'Sony', 'Xperia ZL', 'Android', TYPE_MOBILE ),
5860
  'http://uaprof.sonymobile.com/C6506R1003.xml' => array( 'Sony', 'Xperia ZL', 'Android', TYPE_MOBILE ),
5861
+ 'http://uaprof.sonymobile.com/C6506R1004.xml' => array( 'Sony', 'Xperia ZL', 'Android', TYPE_MOBILE ),
5862
+ 'http://uaprof.sonymobile.com/C6506R1005.xml' => array( 'Sony', 'Xperia ZL', 'Android', TYPE_MOBILE ),
5863
  'http://uaprof.sonymobile.com/L35hR1002.xml' => array( 'Sony', 'Xperia ZL', 'Android', TYPE_MOBILE ),
5864
+ 'http://uaprof.sonymobile.com/L35hR1003.xml' => array( 'Sony', 'Xperia ZL', 'Android', TYPE_MOBILE ),
5865
  'http://uaprof.sonymobile.com/C5502R1002.xml' => array( 'Sony', 'Xperia ZR', 'Android', TYPE_MOBILE ),
5866
  'http://uaprof.sonymobile.com/C5502R1003.xml' => array( 'Sony', 'Xperia ZR', 'Android', TYPE_MOBILE ),
5867
+ 'http://uaprof.sonymobile.com/C5502R1004.xml' => array( 'Sony', 'Xperia ZR', 'Android', TYPE_MOBILE ),
5868
  'http://uaprof.sonymobile.com/C5503R1002.xml' => array( 'Sony', 'Xperia ZR', 'Android', TYPE_MOBILE ),
5869
  'http://uaprof.sonymobile.com/C5503R1003.xml' => array( 'Sony', 'Xperia ZR', 'Android', TYPE_MOBILE ),
5870
+ 'http://uaprof.sonymobile.com/C5503R1004.xml' => array( 'Sony', 'Xperia ZR', 'Android', TYPE_MOBILE ),
5871
  'http://uaprof.sonymobile.com/M36hR1002.xml' => array( 'Sony', 'Xperia ZR', 'Android', TYPE_MOBILE ),
5872
  'http://uaprof.sonymobile.com/M36hR1003.xml' => array( 'Sony', 'Xperia ZR', 'Android', TYPE_MOBILE ),
5873
+ 'http://uaprof.sonymobile.com/M36hR1004.xml' => array( 'Sony', 'Xperia ZR', 'Android', TYPE_MOBILE ),
5874
  'http://wap.sonyericsson.com/UAprof/A100iR201.xml' => array( 'Sony Ericsson', 'A100i', NULL, TYPE_MOBILE ),
5875
  'http://wap.sonyericsson.com/UAprof/A260R101.xml' => array( 'Sony Ericsson', 'A260', NULL, TYPE_MOBILE ),
5876
  'http://wap.sonyericsson.com/UAprof/A270R101.xml' => array( 'Sony Ericsson', 'A270', NULL, TYPE_MOBILE ),
5877
  'http://wap.sonyericsson.com/UAprof/A290iR101.xml' => array( 'Sony Ericsson', 'A290i', NULL, TYPE_MOBILE ),
5878
  'http://wap.sonyericsson.com/UAprof/A8iR101.xml' => array( 'Sony Ericsson', 'A8i', 'Android', TYPE_MOBILE ),
5879
+ 'http://wap.sonyericsson.com/UAprof/U10iR101.xml' => array( 'Sony Ericsson', 'Aino', NULL, TYPE_MOBILE ),
5880
  'http://wap.sonyericsson.com/UAprof/M1iR101.xml' => array( 'Sony Ericsson', 'Aspen', 'Windows Mobile', TYPE_MOBILE ),
5881
  'http://wap.sonyericsson.com/UAprof/C123R101.xml' => array( 'Sony Ericsson', 'C123', NULL, TYPE_MOBILE ),
5882
  'http://wap.sonyericsson.com/UAprof/C510R101.xml' => array( 'Sony Ericsson', 'C510', NULL, TYPE_MOBILE ),
5884
  'http://wap.sonyericsson.com/UAprof/C901R101.xml' => array( 'Sony Ericsson', 'C901', NULL, TYPE_MOBILE ),
5885
  'http://wap.sonyericsson.com/UAprof/C902R101.xml' => array( 'Sony Ericsson', 'C902', NULL, TYPE_MOBILE ),
5886
  'http://wap.sonyericsson.com/UAprof/C905R101.xml' => array( 'Sony Ericsson', 'C905', NULL, TYPE_MOBILE ),
5887
+ 'http://wap.sonyericsson.com/UAprof/J108iR101.xml' => array( 'Sony Ericsson', 'Cedar', NULL, TYPE_MOBILE ),
5888
  'http://wap.sonyericsson.com/UAprof/J10i2R101.xml' => array( 'Sony Ericsson', 'Elm', NULL, TYPE_MOBILE ),
5889
+ 'http://wap.sonyericsson.com/UAprof/J10iR101.xml' => array( 'Sony Ericsson', 'Elm', NULL, TYPE_MOBILE ),
5890
  'http://www.sonyericsson.com/uaprof/R300R101.xml' => array( 'Sony Ericsson', 'F300', NULL, TYPE_MOBILE ),
5891
  'http://www.sonyericsson.com/uaprof/F305R101.xml' => array( 'Sony Ericsson', 'F305', NULL, TYPE_MOBILE ),
5892
  'http://wap.sonyericsson.com/UAprof/G502R101.xml' => array( 'Sony Ericsson', 'G502', NULL, TYPE_MOBILE ),
5903
  'http://wap.sonyericsson.com/UAprof/K660iR101.xml' => array( 'Sony Ericsson', 'K660i', NULL, TYPE_MOBILE ),
5904
  'http://wap.sonyericsson.com/UAprof/K770iR201-3G.xml' => array( 'Sony Ericsson', 'K770i', NULL, TYPE_MOBILE ),
5905
  'http://wap.sonyericsson.com/UAprof/K790aR201.xml' => array( 'Sony Ericsson', 'K790a', NULL, TYPE_MOBILE ),
5906
+ 'http://wap.sonyericsson.com/UAprof/K790iR201.xml' => array( 'Sony Ericsson', 'K790i', NULL, TYPE_MOBILE ),
5907
  'http://wap.sonyericsson.com/UAprof/K800iR201.xml' => array( 'Sony Ericsson', 'K800i', NULL, TYPE_MOBILE ),
5908
  'http://wap.sonyericsson.com/UAprof/K850iR101.xml' => array( 'Sony Ericsson', 'K850i', NULL, TYPE_MOBILE ),
5909
  'http://uaprof.sonymobile.com/WT19iR1002.xml' => array( 'Sony Ericsson', 'Live with Walkman', 'Android', TYPE_MOBILE ),
5912
  'http://wap.sonyericsson.com/UAprof/WT19aR411.xml' => array( 'Sony Ericsson', 'Live with Walkman', 'Android', TYPE_MOBILE ),
5913
  'http://wap.sonyericsson.com/UAprof/WT19iR402.xml' => array( 'Sony Ericsson', 'Live with Walkman', 'Android', TYPE_MOBILE ),
5914
  'http://wap.sonyericsson.com/UAprof/WT19iR411.xml' => array( 'Sony Ericsson', 'Live with Walkman', 'Android', TYPE_MOBILE ),
5915
+ 'http://wap.sonyericsson.com/UAProf/M600iR100.xml' => array( 'Sony Ericsson', 'M600i', NULL, TYPE_MOBILE ),
5916
  'http://wap.sonyericsson.com/UAProf/M608cR100.xml' => array( 'Sony Ericsson', 'M608c', 'UIQ', TYPE_MOBILE ),
5917
  'http://wap.sonyericsson.com/uaprof/WT13iR101.xml' => array( 'Sony Ericsson', 'Mix Walkman', 'Android', TYPE_MOBILE ),
5918
  'http://wap.sonyericsson.com/UAprof/J105iR101.xml' => array( 'Sony Ericsson', 'Naite', NULL, TYPE_MOBILE ),
5919
+ 'http://wap.sonyericsson.com/UAProf/P1iR100.xml' => array( 'Sony Ericsson', 'P1i', NULL, TYPE_MOBILE ),
5920
  'http://wap.sonyericsson.com/UAprof/P800R101.xml' => array( 'Sony Ericsson', 'P800', 'UIQ', TYPE_MOBILE ),
5921
  'http://wap.sonyericsson.com/UAprof/P800R102.xml' => array( 'Sony Ericsson', 'P800', 'UIQ', TYPE_MOBILE ),
5922
  'http://wap.sonyericsson.com/UAprof/P900R101.xml' => array( 'Sony Ericsson', 'P900', 'UIQ', TYPE_MOBILE ),
5923
  'http://wap.sonyericsson.com/UAprof/P908R101.xml' => array( 'Sony Ericsson', 'P908', 'UIQ', TYPE_MOBILE ),
5924
  'http://wap.sonyericsson.com/UAProf/P990iR100.xml' => array( 'Sony Ericsson', 'P990i', 'UIQ', TYPE_MOBILE ),
5925
  'http://wap.sonyericsson.com/UAProf/P200R100.xml' => array( 'Sony Ericsson', 'Paris', 'UIQ', TYPE_MOBILE ),
5926
+ 'http://wap.sonyericsson.com/UAprof/S500iR201.xml' => array( 'Sony Ericsson', 'S500i', NULL, TYPE_MOBILE ),
5927
  'http://wap.sonyericsson.com/UAprof/U1aR000.xml' => array( 'Sony Ericsson', 'Satio', 'Series60', TYPE_MOBILE ),
5928
  'http://wap.sonyericsson.com/UAprof/U1iR000.xml' => array( 'Sony Ericsson', 'Satio', 'Series60', TYPE_MOBILE ),
5929
+ 'http://wap.sonyericsson.com/UAprof/U_1R000.xml' => array( 'Sony Ericsson', 'Satio', 'Series60', TYPE_MOBILE ),
5930
  'http://wap.sonyericsson.com/UAprof/T100R101.xml' => array( 'Sony Ericsson', 'T100', NULL, TYPE_MOBILE ),
5931
  'http://wap.sonyericsson.com/UAprof/T123iR101.xml' => array( 'Sony Ericsson', 'T123', NULL, TYPE_MOBILE ),
5932
  'http://wap.sonyericsson.com/UAprof/T200.xml' => array( 'Sony Ericsson', 'T200', NULL, TYPE_MOBILE ),
5974
  'http://wap.sonyericsson.com/UAprof/W20iR101.xml' => array( 'Sony Ericsson', 'W20i', NULL, TYPE_MOBILE ),
5975
  'http://wap.sonyericsson.com/UAprof/W300iR301.xml' => array( 'Sony Ericsson', 'W300i', NULL, TYPE_MOBILE ),
5976
  'http://www.sonyericsson.com/uaprof/W302R101.xml' => array( 'Sony Ericsson', 'W302', NULL, TYPE_MOBILE ),
5977
+ 'http://www.sonyericsson.com/uaprof/W302R201.xml' => array( 'Sony Ericsson', 'W302', NULL, TYPE_MOBILE ),
5978
  'http://wap.sonyericsson.com/UAprof/W350iR201.xml' => array( 'Sony Ericsson', 'W350i', NULL, TYPE_MOBILE ),
5979
  'http://wap.sonyericsson.com/UAprof/W380iR201.xml' => array( 'Sony Ericsson', 'W380i', NULL, TYPE_MOBILE ),
5980
+ 'http://www.sonyericsson.com/downloads/W395R101.xml' => array( 'Sony Ericsson', 'W395', NULL, TYPE_MOBILE ),
5981
  'http://wap.sonyericsson.com/UAprof/W508R101.xml' => array( 'Sony Ericsson', 'W508', NULL, TYPE_MOBILE ),
5982
  'http://wap.sonyericsson.com/UAprof/W595R101.xml' => array( 'Sony Ericsson', 'W595', NULL, TYPE_MOBILE ),
5983
  'http://wap.sonyericsson.com/UAprof/W610iR201.xml' => array( 'Sony Ericsson', 'W610i', NULL, TYPE_MOBILE ),
5990
  'http://wap.sonyericsson.com/UAprof/W890iR101.xml' => array( 'Sony Ericsson', 'W890i', NULL, TYPE_MOBILE ),
5991
  'http://wap.sonyericsson.com/UAprof/W902R101.xml' => array( 'Sony Ericsson', 'W902', NULL, TYPE_MOBILE ),
5992
  'http://wap.sonyericsson.com/UAprof/W908cR101.xml' => array( 'Sony Ericsson', 'W908c', NULL, TYPE_MOBILE ),
5993
+ 'http://wap.sonyericsson.com/UAprof/W910iR101-3G.xml' => array( 'Sony Ericsson', 'W910i', NULL, TYPE_MOBILE ),
5994
+ 'http://wap.sonyericsson.com/UAprof/W910iR101-HS.xml' => array( 'Sony Ericsson', 'W910i', NULL, TYPE_MOBILE ),
5995
  'http://wap.sonyericsson.com/UAProf/W950iR100.xml' => array( 'Sony Ericsson', 'W950i', 'UIQ', TYPE_MOBILE ),
5996
  'http://wap.sonyericsson.com/UAprof/W995R101.xml' => array( 'Sony Ericsson', 'W995', NULL, TYPE_MOBILE ),
5997
  'http://wap.sonyericsson.com/UAprof/W995aR101.xml' => array( 'Sony Ericsson', 'W995a', NULL, TYPE_MOBILE ),
6088
  'http://wap.sonyericsson.com/UAprof/ST18aR401.xml' => array( 'Sony Ericsson', 'Xperia Ray', 'Android', TYPE_MOBILE ),
6089
  'http://wap.sonyericsson.com/UAprof/ST18aR402.xml' => array( 'Sony Ericsson', 'Xperia Ray', 'Android', TYPE_MOBILE ),
6090
  'http://wap.sonyericsson.com/UAprof/ST18aR411.xml' => array( 'Sony Ericsson', 'Xperia Ray', 'Android', TYPE_MOBILE ),
6091
+ 'http://wap.sonyericsson.com/UAprof/ST18i PremiumR402.xml' => array( 'Sony Ericsson', 'Xperia Ray', 'Android', TYPE_MOBILE ),
6092
  'http://wap.sonyericsson.com/UAprof/ST18iR401.xml' => array( 'Sony Ericsson', 'Xperia Ray', 'Android', TYPE_MOBILE ),
6093
  'http://wap.sonyericsson.com/UAprof/ST18iR402.xml' => array( 'Sony Ericsson', 'Xperia Ray', 'Android', TYPE_MOBILE ),
6094
  'http://wap.sonyericsson.com/UAprof/ST18iR411.xml' => array( 'Sony Ericsson', 'Xperia Ray', 'Android', TYPE_MOBILE ),
6146
  'http://msai.in/uaprof/spice/M6868n.xml' => array( 'Spice', 'M-6868 Flo', 'MTK', TYPE_MOBILE ),
6147
  'http://www.1066.cn/uaprof/prof/Spice/Mi-315.xml' => array( 'Spice', 'Mi-315', 'Android', TYPE_MOBILE ),
6148
  'http://www.lenovomobile.com/admin/module/product/DownFile/Spice_Mi350_UAProfile.xml' => array( 'Spice', 'Mi-350', 'Android', TYPE_MOBILE ),
6149
+ 'http://device.sprintpcs.com/Kyocera/KYE4255/1306SP.rdf' => array( 'Sprint', 'E4255', 'Brew', TYPE_MOBILE ),
6150
+ 'http://device.sprintpcs.com/KYOCERA/S2151/1.000SP.rdf' => array( 'Sprint', 'S2151', 'Brew', TYPE_MOBILE ),
6151
  'http://uap.cellon.com/Starmobile_KNIGHT.xml' => array( 'Starmobile', 'Knight', 'Android', TYPE_MOBILE ),
6152
  'http://www.htcmms.com.tw/tmo/ameo-1.0.xml' => array( 'T-Mobile', 'Ameo', 'Windows Mobile', TYPE_MOBILE ),
6153
  'http://www.htcmms.com.tw/tmo/ameo-1.1.xml' => array( 'T-Mobile', 'Ameo', 'Windows Mobile', TYPE_MOBILE ),
6188
  'http://www-ccpp.tcl-ta.com/files/TCL A986.xml' => array( 'TCL', 'A986', 'Android', TYPE_MOBILE ),
6189
  'http://www-ccpp.tcl-ta.com/files/TCL_A990.xml' => array( 'TCL', 'A990', 'Android', TYPE_MOBILE ),
6190
  'http://www-ccpp.tcl-ta.com/files/TCL A998.xml' => array( 'TCL', 'A998', 'Android', TYPE_MOBILE ),
6191
+ 'http://www-ccpp.tcl-ta.com/files/TCL_H900M.xml' => array( 'TCL', 'H900M', 'Android', TYPE_MOBILE ),
6192
+ 'http://www-ccpp.tcl-ta.com/files/TCL_Y910T.xml' => array( 'TCL', 'Hero N3', 'Android', TYPE_MOBILE ),
6193
+ 'http://www-ccpp.tcl-ta.com/files/TCT_J600T.xml' => array( 'TCL', 'J600T', 'Android', TYPE_MOBILE ),
6194
  'http://www-ccpp.tcl-ta.com/files/TCT_J630T.xml' => array( 'TCL', 'J630T', 'Android', TYPE_MOBILE ),
6195
  'http://www-ccpp.tcl-ta.com/files/TCL_J720.xml' => array( 'TCL', 'J720', 'Android', TYPE_MOBILE ),
6196
  'http://www-ccpp.tcl-ta.com/files/TCL_P600.xml' => array( 'TCL', 'P600', 'Android', TYPE_MOBILE ),
6198
  'http://www-ccpp.tcl-ta.com/files/TCL_P606T.xml' => array( 'TCL', 'P606T', 'Android', TYPE_MOBILE ),
6199
  'http://www-ccpp.tcl-ta.com/files/TCL_S820.xml' => array( 'TCL', 'S820', 'Android', TYPE_MOBILE ),
6200
  'http://www-ccpp.tcl-ta.com/files/TCL_S826L.xml' => array( 'TCL', 'S826', 'Android', TYPE_MOBILE ),
6201
+ 'http://www-ccpp.tcl-ta.com/files/TCL_S830U.xml' => array( 'TCL', 'S830U', 'Android', TYPE_MOBILE ),
6202
  'http://www-ccpp.tcl-ta.com/files/TCL_S850.xml' => array( 'TCL', 'S850', 'Android', TYPE_MOBILE ),
6203
  'http://www-ccpp.tcl-ta.com/files/TCL_S860.xml' => array( 'TCL', 'S860', 'Android', TYPE_MOBILE ),
6204
  'http://www-ccpp.tcl-ta.com/files/TCL_S950.xml' => array( 'TCL', 'S950', 'Android', TYPE_MOBILE ),
6205
  'http://www-ccpp.tcl-ta.com/files/TCL_S950T.xml' => array( 'TCL', 'S950', 'Android', TYPE_MOBILE ),
6206
+ 'http://www.oppo.com/resource/UA-PROF/OPPOTCL S950.xml' => array( 'TCL', 'S950', 'Android', TYPE_MOBILE ),
6207
+ 'http://www-ccpp.tcl-ta.com/files/TCL_S960.xml' => array( 'TCL', 'S960', 'Android', TYPE_MOBILE ),
6208
+ 'http://www-ccpp.tcl-ta.com/files/TCL_S960T.xml' => array( 'TCL', 'S960', 'Android', TYPE_MOBILE ),
6209
  'http://www-ccpp.tcl-ta.com/files/TCL_W939.xml' => array( 'TCL', 'W939', 'Android', TYPE_MOBILE ),
6210
  'http://www-ccpp.tcl-ta.com/files/TCL_W969.xml' => array( 'TCL', 'W969', 'Android', TYPE_MOBILE ),
6211
  'http://www-ccpp.tcl-ta.com/files/TCL_Y710.xml' => array( 'TCL', 'Y710', 'Android', TYPE_MOBILE ),
6279
  'http://www.sharp-mobile.com/UAProf/703SH_G001_base.xml' => array( 'Vodafone', '703SH', NULL, TYPE_MOBILE ),
6280
  'http://www.sharp-mobile.com/UAProf/V703SHf_SHJ001_3g.xml' => array( 'Vodafone', '703SH', NULL, TYPE_MOBILE ),
6281
  'http://www.sharp-mobile.com/UAProf/V705SH_SHJ001_3g.xml' => array( 'Vodafone', '705SH', NULL, TYPE_MOBILE ),
6282
+ 'http://wap.huawei.com/uaprof/HuaweiV735v100WCDMA.xml' => array( 'Vodafone', '735', NULL, TYPE_MOBILE ),
6283
  'http://gphone.toshiba.co.jp/tech/profiles/UAPROF/VFKK/Vodafone_803T_r100_3G.xml' => array( 'Vodafone', '803T', NULL, TYPE_MOBILE ),
6284
  'http://gphone.toshiba.co.jp/tech/profiles/UAPROF/VFKK/Vodafone_803T_r100_GPRS.xml' => array( 'Vodafone', '803T', NULL, TYPE_MOBILE ),
6285
  'http://www.sharp-mobile.com/UAProf/V804SH_SHJ001_3g.xml' => array( 'Vodafone', '804SH', NULL, TYPE_MOBILE ),
6302
  'http://www-ccpp.tcl-ta.com/files/Vodafone_975.xml' => array( 'Vodafone', '975', 'Android', TYPE_MOBILE ),
6303
  'http://www-ccpp.tcl-ta.com/files/Vodafone_975N.xml' => array( 'Vodafone', '975', 'Android', TYPE_MOBILE ),
6304
  'http://www-ccpp.tcl-ta.com/files/Vodafone_Chat_655W.rdf' => array( 'Vodafone', 'Chat 655', NULL, TYPE_MOBILE ),
6305
+ 'http://www-ccpp.tcl-ta.com/files/Vodafone_785.xml' => array( 'Vodafone', 'Smart 4 Mini', 'Android', TYPE_MOBILE ),
6306
  'http://vodafone.51coolpad.com/UAProfile/vodafone/Smart-4G.xml' => array( 'Vodafone', 'Smart 4G', 'Android', TYPE_MOBILE ),
6307
  'http://www.zte.com.cn/mobile/uaprof/ZTE-SmartQ-WCDMA.xml' => array( 'Vodafone', 'Smart Chat', 'Android', TYPE_MOBILE ),
6308
  'http://www-ccpp.tcl-ta.com/files/Vodafone_Smart_II.xml' => array( 'Vodafone', 'Smart II', 'Android', TYPE_MOBILE ),
6309
  'http://www-ccpp.tcl-ta.com/files/Vodafone_Smart_II_3G.xml' => array( 'Vodafone', 'Smart II', 'Android', TYPE_MOBILE ),
6310
+ 'http://www-ccpp.tcl-ta.com/files/Vodafone_Smart_Tab_4.xml' => array( 'Vodafone', 'Smart Tab 4', 'Android', TYPE_TABLET ),
6311
  'http://s3.lenovomm.com/Obelix_Profile.xml' => array( 'Vodafone', 'Smart Tab III 10', 'Android', TYPE_MOBILE ),
6312
  'http://s3.lenovomm.com/Asterix_Profile.xml' => array( 'Vodafone', 'Smart Tab III 7', 'Android', TYPE_TABLET ),
6313
  'http://www.zte.com.cn/mobile/uaprof/VodafoneSmartTab10.xml' => array( 'Vodafone', 'SmartTab 10', 'Android', TYPE_TABLET ),
6332
  'http://www.voxtel.ru/UAProf/Voxtel_vs400.xml' => array( 'Voxtel', 'VS400', NULL, TYPE_MOBILE ),
6333
  'http://www.ngm-mobile.com/UserAgentProfiles/ngmwilcojb.xml' => array( 'Walton', 'Primo G1', 'Android', TYPE_MOBILE ),
6334
  'http://www.wonutel.co.kr/UAProfile/WonuS1.xml' => array( 'Wonu', 'S1', NULL, TYPE_MOBILE ),
6335
+ 'http://apkupdate.miui.com/other/HM2013023_UAprofile.xml' => array( 'Xiaomi', 'Hongmi', 'Android', TYPE_MOBILE ),
6336
  'http://nmsc.ctvap.cn/uaprof/YCT/YCT_TE600_1_20101228.xml' => array( 'YCT', 'TE600', 'Android', TYPE_MOBILE ),
6337
  'http://211.42.201.70/ua_profile/ZMEM1070.xml' => array( 'Zonda', 'ZMEM1070', NULL, TYPE_MOBILE ),
6338
  'http://211.42.201.70/ua_profile/ZMEM1075.xml' => array( 'Zonda', 'ZMEM1075', NULL, TYPE_MOBILE ),
6341
  'http://www.zte.com.cn/mobile/uaprof/ZTEA37.xml' => array( 'ZTE', 'A37', NULL, TYPE_MOBILE ),
6342
  'http://www.zte.com.cn/mobile/uaprof/Acqua.xml' => array( 'ZTE', 'Acqua', 'Android', TYPE_MOBILE ),
6343
  'http://www.zte.com.cn/mobile/uaprof/ARIZONA.xml' => array( 'ZTE', 'Arizona', 'Android', TYPE_MOBILE ),
6344
+ 'http://ua.musn-mobile.com/TWN/A5.xml' => array( 'ZTE', 'Blade', 'Android', TYPE_MOBILE ),
6345
  'http://www.zte.com.cn/mobile/uaprof/a5.xml' => array( 'ZTE', 'Blade', 'Android', TYPE_MOBILE ),
6346
  'http://www.zte.com.cn/mobile/uaprof/ZTE Blade III Pro.xml' => array( 'ZTE', 'Blade III Pro', 'Android', TYPE_MOBILE ),
6347
+ 'http://www.zte.com.cn/mobile/uaprof/ZTE_Blade_L2.xml' => array( 'ZTE', 'Blade L2', 'Android', TYPE_MOBILE ),
6348
+ 'http://www.zte.com.cn/mobile/uaprof/ZTE_Blade_L2_4.4.xml' => array( 'ZTE', 'Blade L2', 'Android', TYPE_MOBILE ),
6349
+ 'http://www.zte.com.cn/mobile/uaprof/ZTE_Blade_Q_Mini.xml' => array( 'ZTE', 'Blade Q Mini', 'Android', TYPE_MOBILE ),
6350
  'http://www.zte.com.cn/mobile/uaprof/Blade S.xml' => array( 'ZTE', 'Blade S', 'Android', TYPE_MOBILE ),
6351
+ 'http://www.zte.com.cn/mobile/uaprof/Blade_Super.xml' => array( 'ZTE', 'Blade Super', 'Android', TYPE_MOBILE ),
6352
  'http://www.zte.com.cn/mobile/uaprof/ZTE-Crescent.xml' => array( 'ZTE', 'Crescent', 'Android', TYPE_MOBILE ),
6353
  'http://device.telusmobility.com/zte/ZTED90-0.rdf' => array( 'ZTE', 'D90', NULL, TYPE_MOBILE ),
6354
  'http://www.zte.com.cn/mobile/uaprof/ZTE-U-E850(Movilnet).xml' => array( 'ZTE', 'E850', NULL, TYPE_MOBILE ),
6355
+ 'http://www.zte.com.cn/mobile/uaprof/ZTE-F107(3UK).xml' => array( 'ZTE', 'F107', NULL, TYPE_MOBILE ),
6356
  'http://www.zte.com.cn/mobile/uaprof/ZTE-F150.xml' => array( 'ZTE', 'F150', NULL, TYPE_MOBILE ),
6357
  'http://www.zte.com.cn/mobile/uaprof/ZTE-F151.xml' => array( 'ZTE', 'F151', NULL, TYPE_MOBILE ),
6358
  'http://www.zte.com.cn/mobile/uaprof/ZTE-F152.xml' => array( 'ZTE', 'F152', NULL, TYPE_MOBILE ),
6371
  'http://www.zte.com.cn/mobile/uaprof/ZTE-F880.xml' => array( 'ZTE', 'F880', NULL, TYPE_MOBILE ),
6372
  'http://www.zte.com.cn/mobile/uaprof/ZTE-F912.xml' => array( 'ZTE', 'F912', NULL, TYPE_MOBILE ),
6373
  'http://www.zte.com.cn/mobile/uaprof/ZTE-G X760.xml' => array( 'ZTE', 'G X760', NULL, TYPE_MOBILE ),
6374
+ 'http://www.zte.com.cn/mobile/uaprof/G717C.xml' => array( 'ZTE', 'G717', 'Android', TYPE_MOBILE ),
6375
  'http://www.zte.com.cn/mobile/uaprof/ZTE-A7.xml' => array( 'ZTE', 'Grand X2', 'Android', TYPE_MOBILE ),
6376
  'http://www.zte.com.cn/mobile/uaprof/ZTE-Jack-3G(Orange).xml' => array( 'ZTE', 'Jack', NULL, TYPE_MOBILE ),
6377
  'http://www.zte.com.cn/mobile/uaprof/ZTE KIS LITE.xml' => array( 'ZTE', 'Kis Lite', 'Android', TYPE_MOBILE ),
6378
+ 'http://www.zte.com.cn/mobile/uaprof/ZTE-KisPro.xml' => array( 'ZTE', 'Kis Pro', 'Android', TYPE_MOBILE ),
6379
+ 'http://www.ztemt.com/mobile/uaprof/ZTE_LEO_M1.xml' => array( 'ZTE', 'LEO M1', 'Android', TYPE_MOBILE ),
6380
+ 'http://www.zte.com.cn/mobile/uaprof/ZTE_V765M.xml' => array( 'ZTE', 'LEO Q1', 'Android', TYPE_MOBILE ),
6381
  'http://www.zte.com.cn/mobile/uaprof/Light.xml' => array( 'ZTE', 'Light Tab', 'Android', TYPE_TABLET ),
6382
  'http://www.zte.com.cn/mobile/uaprof/V9.xml' => array( 'ZTE', 'Light Tab', 'Android', TYPE_TABLET ),
6383
  'http://www.zte.com.cn/mobile/uaprof/V9_VIVO.xml' => array( 'ZTE', 'Light Tab', 'Android', TYPE_TABLET ),
6387
  'http://www.zte.com.cn/mobile/uaprof/V9S.xml' => array( 'ZTE', 'Light Tab 3', 'Android', TYPE_MOBILE ),
6388
  'http://www.zte.com.cn/mobile/uaprof/V9C.xml' => array( 'ZTE', 'Light Tab Pro', 'Android', TYPE_TABLET ),
6389
  'http://www.zte.com.cn/mobile/uaprof/TNZ_V9.xml' => array( 'ZTE', 'Light Tab V9', 'Android', TYPE_TABLET ),
6390
+ 'http://www.zte.com.cn/mobile/uaprof/ZTE V9A(Telcel).xml' => array( 'ZTE', 'Light Tab V9', 'Android', TYPE_TABLET ),
6391
  'http://mms.mycricket.com/A415_Uaprof.xml' => array( 'ZTE', 'Memo', NULL, TYPE_MOBILE ),
6392
+ 'http://www.zte.com.cn/mobile/uaprof/zte-N295.xml' => array( 'ZTE', 'N295', NULL, TYPE_MOBILE ),
6393
  'http://www.zte.com.cn/mobile/uaprof/N5.xml' => array( 'ZTE', 'N5 Grand Memo', 'Android', TYPE_MOBILE ),
6394
  'http://www.zte.com.cn/mobile/uaprof/ZTE N5.xml' => array( 'ZTE', 'N5 Grand Memo', 'Android', TYPE_MOBILE ),
6395
  'http://www.zte.com.cn/mobile/uaprof/N5S.xml' => array( 'ZTE', 'N5S', 'Android', TYPE_MOBILE ),
6403
  'http://uaprof.qma.com.tw/ZTE N789.xml' => array( 'ZTE', 'N789', 'Android', TYPE_MOBILE ),
6404
  'http://www.zte.com.cn/mobile/uaprof/N790.xml' => array( 'ZTE', 'N790', 'Android', TYPE_MOBILE ),
6405
  'http://www.zte.com.cn/mobile/uaprof/N790S.xml' => array( 'ZTE', 'N790S', 'Android', TYPE_MOBILE ),
6406
+ 'http://www.zte.com.cn/mobile/uaprof/N799D.xml' => array( 'ZTE', 'N799', 'Android', TYPE_MOBILE ),
6407
+ 'http://device.sprintpcs.com/ZTE/N800-Chameleon/latest' => array( 'ZTE', 'N800 Awe', 'Android', TYPE_MOBILE ),
6408
+ 'http://device.sprintpcs.com/ZTE/N800-VIRGIN/N800V1.0.0B04.rdf' => array( 'ZTE', 'N800 Awe', 'Android', TYPE_MOBILE ),
6409
+ 'http://device.sprintpcs.com/ZTE/N800-VIRGIN/N800V1.0.0B05.rdf' => array( 'ZTE', 'N800 Awe', 'Android', TYPE_MOBILE ),
6410
  'http://www.zte.com.cn/mobile/uaprof/ZTE-N850PMI.xml' => array( 'ZTE', 'N850', 'Android', TYPE_MOBILE ),
6411
  'http://device.sprintpcs.com/ZTE/ZTEN850KT/N850V1.0.0B14.rdf' => array( 'ZTE', 'N850 Fury', 'Android', TYPE_MOBILE ),
6412
  'http://mms.revol.us/uaprofs/ZTE_N850.xml' => array( 'ZTE', 'N850 Fury', 'Android', TYPE_MOBILE ),
6424
  'http://www.zte.com.cn/mobile/uaprof/ZTE-N860PMI.xml' => array( 'ZTE', 'N860 Warp', 'Android', TYPE_MOBILE ),
6425
  'http://device.sprintpcs.com/ZTE/N861-BOOST/N861V1.0.0B07.rdf' => array( 'ZTE', 'N861 Warp II', 'Android', TYPE_MOBILE ),
6426
  'http://device.sprintpcs.com/ZTE/N861-BOOST/N861V1.0.0B09.rdf' => array( 'ZTE', 'N861 Warp II', 'Android', TYPE_MOBILE ),
6427
+ 'http://device.sprintpcs.com/ZTE/N861-BOOST/N861V1.0.0B12.rdf' => array( 'ZTE', 'N861 Warp II', 'Android', TYPE_MOBILE ),
6428
  'http://device.sprintpcs.com/ZTE/N861-Chameleon/latest' => array( 'ZTE', 'N861 Warp II', 'Android', TYPE_MOBILE ),
6429
  'http://www.zte.com.cn/mobile/uaprof/ZTE-N861PMI.xml' => array( 'ZTE', 'N861 Warp II', 'Android', TYPE_MOBILE ),
6430
  'http://www.zte.com.cn/mobile/uaprof/N880.xml' => array( 'ZTE', 'N880 Blade', 'Android', TYPE_MOBILE ),
6433
  'http://www.zte.com.cn/mobile/uaprof/N880E.xml' => array( 'ZTE', 'N880E', 'Android', TYPE_MOBILE ),
6434
  'http://www.zte.com.cn/mobile/uaprof/N900.xml' => array( 'ZTE', 'N900', 'Android', TYPE_MOBILE ),
6435
  'http://uaprof.qma.com.tw/ZTE-N909.xml' => array( 'ZTE', 'N909', 'Android', TYPE_MOBILE ),
6436
+ 'http://www.zte.com.cn/mobile/uaprof/N909.xml' => array( 'ZTE', 'N909', 'Android', TYPE_MOBILE ),
6437
  'http://uaprof.metropcs.net/UAProf/ZTE-N910.xml' => array( 'ZTE', 'N910 Anthem', 'Android', TYPE_MOBILE ),
6438
  'http://device.sprintpcs.com/ZTE/N9100-BOOST/DroidSmith_Force_0.6_Beta.rdf' => array( 'ZTE', 'N9100 Force', 'Android', TYPE_MOBILE ),
6439
  'http://device.sprintpcs.com/ZTE/N9100-BOOST/N9100V1.0.0B09.rdf' => array( 'ZTE', 'N9100 Force', 'Android', TYPE_MOBILE ),
6440
  'http://www.zte.com.cn/mobile/uaprof/N9101.xml' => array( 'ZTE', 'N9101 Imperial', 'Android', TYPE_MOBILE ),
6441
  'http://device.sprintpcs.com/ZTE/N9500-BOOST/N9500V1.0.0B14.rdf' => array( 'ZTE', 'N9500 Flash', 'Android', TYPE_MOBILE ),
6442
+ 'http://device.sprintpcs.com/ZTE/N9500-SPRINT/N9500V1.0.0B11.rdf' => array( 'ZTE', 'N9500 Flash', 'Android', TYPE_MOBILE ),
6443
  'http://device.sprintpcs.com/ZTE/N9500-SPRINT/N9500V1.0.0B13.rdf' => array( 'ZTE', 'N9500 Flash', 'Android', TYPE_MOBILE ),
6444
  'http://device.sprintpcs.com/ZTE/N9500-SPRINT/N9500V1.0.0B14.rdf' => array( 'ZTE', 'N9500 Flash', 'Android', TYPE_MOBILE ),
6445
+ 'http://device.sprintpcs.com/ZTE/N9510-BOOST/N9510V1.0.0B07.rdf' => array( 'ZTE', 'N9510 Warp', 'Android', TYPE_MOBILE ),
6446
  'http://www.zte.com.cn/mobile/uaprof/ZTE_N9511.xml' => array( 'ZTE', 'N9511', 'Android', TYPE_MOBILE ),
6447
+ 'http://device.sprintpcs.com/ZTE/N9520-BOOST/N9520V1.0.0B05.rdf' => array( 'ZTE', 'N9520 Stormer', 'Android', TYPE_MOBILE ),
6448
  'http://device.sprintpcs.com/ZTE/N9520-Chameleon/latest' => array( 'ZTE', 'N9520 Stormer', 'Android', TYPE_MOBILE ),
6449
  'http://www.zte.com.cn/mobile/uaprof/ZTE N901.xml' => array( 'ZTE', 'N960', 'Android', TYPE_MOBILE ),
6450
  'http://www.zte.com.cn/mobile/uaprof/ZTE N970.xml' => array( 'ZTE', 'N970 Grand X', 'Android', TYPE_MOBILE ),
6453
  'http://device.sprintpcs.com/ZTE/N9810-SPRINT/N9810V1.0.0B06.rdf' => array( 'ZTE', 'N9810 Vital', 'Android', TYPE_MOBILE ),
6454
  'http://www.zte.com.cn/mobile/uaprof/N983.xml' => array( 'ZTE', 'N983', 'Android', TYPE_MOBILE ),
6455
  'http://www.zte.com.cn/mobile/uaprof/N986.xml' => array( 'ZTE', 'N986', 'Android', TYPE_MOBILE ),
6456
+ 'http://www.ztemt.com.cn/mobile/uaprof/nubia_NX402_Z64.xml' => array( 'ZTE', 'Nubia Z5 mini', 'Android', TYPE_MOBILE ),
6457
  'http://www.ztemt.com.cn/mobile/uaprof/ZTE_NX501_VE.xml' => array( 'ZTE', 'NX501', 'Android', TYPE_MOBILE ),
6458
+ 'http://www.zte.com.cn/mobile/uaprof/OPENC.xml' => array( 'ZTE', 'Open C', 'Firefox OS', TYPE_MOBILE ),
6459
  'http://device.sprintpcs.com/ZTE/ZTESV55TAB/B03.rdf' => array( 'ZTE', 'Optik', 'Android', TYPE_TABLET ),
6460
  'http://device.sprintpcs.com/ZTE/ZTESV55TAB/B12.rdf' => array( 'ZTE', 'Optik', 'Android', TYPE_TABLET ),
6461
  'http://www.zte.com.cn/mobile/uaprof/ZTE_C_R750_3_20100725.xml' => array( 'ZTE', 'R750', 'Android', TYPE_MOBILE ),
6466
  'http://www.zte.com.cn/mobile/uaprof/ZTE-Skate4.3.xml' => array( 'ZTE', 'Skate', 'Android', TYPE_MOBILE ),
6467
  'http://www.zte.com.cn/mobile/uaprof/ZTE_Skate_TME.xml' => array( 'ZTE', 'Skate', 'Android', TYPE_MOBILE ),
6468
  'http://www.zte.com.cn/mobile/uaprof/Skate-Pro.xml' => array( 'ZTE', 'Skate Pro', 'Android', TYPE_MOBILE ),
6469
+ 'http://www.zte.com.cn/mobile/uaprof/ZTE S2002.xml' => array( 'ZTE', 'Star 1', 'Android', TYPE_MOBILE ),
6470
  'http://www.zte.com.cn/mobile/uaprof/ZTE_T12.xml' => array( 'ZTE', 'T12', 'Android', TYPE_MOBILE ),
6471
  'http://www.zte.com.cn/mobile/uaprof/ZTE-T165i.xml' => array( 'ZTE', 'T165i', NULL, TYPE_MOBILE ),
6472
  'http://www.zte.com.cn/mobile/uaprof/ZTE_T760.xml' => array( 'ZTE', 'T760', 'Android', TYPE_MOBILE ),
6473
  'http://www.zte.com.cn/mobile/uaprof/ZTE-T82.xml' => array( 'ZTE', 'T82', 'Android', TYPE_MOBILE ),
6474
+ 'http://www.zte.com.cn/mobile/uaprof/ZTE-T83.xml' => array( 'ZTE', 'T83', 'Android', TYPE_MOBILE ),
6475
+ 'http://www.zte.com.cn/mobile/uaprof/ZTE T86.xml' => array( 'ZTE', 'T86', 'Android', TYPE_MOBILE ),
6476
  'http://uaprofile.zte.com/uaprof/ZTE-T-U830-1.0.xml' => array( 'ZTE', 'TU830', 'Android', TYPE_MOBILE ),
6477
  'http://www.zte.com.cn/mobile/uaprof/ZTE-TUIRES.xml' => array( 'ZTE', 'Tuires', 'Android', TYPE_MOBILE ),
6478
  'http://www.zte.com.cn/mobile/uaprof/ZTE-T60.xml' => array( 'ZTE', 'Tureis', 'Android', TYPE_MOBILE ),
6479
+ 'http://www.access.co.jp/uaprof/NF3Prof.rdf' => array( 'ZTE', 'U236', NULL, TYPE_MOBILE ),
6480
  'http://www.zte.com.cn/mobile/uaprof/ZTEU790.xml' => array( 'ZTE', 'U790', 'Android', TYPE_MOBILE ),
6481
  'http://www.zte.com.cn/mobile/uaprof/ZTE_U791.xml' => array( 'ZTE', 'U791', 'Android', TYPE_MOBILE ),
6482
  'http://www.zte.com.cn/mobile/uaprof/ZTE-T U802.xml' => array( 'ZTE', 'U802', 'Android', TYPE_MOBILE ),
6483
+ 'http://www.zte.com.cn/mobile/uaprof/ZTE U808.xml' => array( 'ZTE', 'U808', 'Android', TYPE_MOBILE ),
6484
  'http://www.zte.com.cn/mobile/uaprof/ZTE U879.xml' => array( 'ZTE', 'U879', 'Android', TYPE_MOBILE ),
6485
  'http://www.zte.com.cn/mobile/uaprof/ZTE-T U880.xml' => array( 'ZTE', 'U880 Blade', 'Android', TYPE_MOBILE ),
6486
  'http://www.zte.com.cn/mobile/uaprof/ZTE_U887_UAProfile.xml' => array( 'ZTE', 'U887', 'Android', TYPE_MOBILE ),
6495
  'http://www.zte.com.cn/mobile/uaprof/ZTE_V791.xml' => array( 'ZTE', 'V791', 'Android', TYPE_MOBILE ),
6496
  'http://www.zte.com.cn/mobile/uaprof/ZTE_V793.xml' => array( 'ZTE', 'V793', 'Android', TYPE_MOBILE ),
6497
  'http://www.zte.com.cn/mobile/uaprof/ZTE_V795_2.3.xml' => array( 'ZTE', 'V795', 'Android', TYPE_MOBILE ),
6498
+ 'http://www.zte.com.cn/mobile/uaprof/ZTE_V795_2.3_Skinny.xml' => array( 'ZTE', 'V795', 'Android', TYPE_MOBILE ),
6499
+ 'http://www.zte.com.cn/mobile/uaprof/ZTE_V795_4.2.xml' => array( 'ZTE', 'V795', 'Android', TYPE_MOBILE ),
6500
  'http://www.zte.com.cn/mobile/uaprof/ZTE_V807.xml' => array( 'ZTE', 'V807 Blade C', 'Android', TYPE_MOBILE ),
6501
+ 'http://www.zte.com.cn/mobile/uaprof/ZTE_V809.xml' => array( 'ZTE', 'V809 Blade C2', 'Android', TYPE_MOBILE ),
6502
+ 'http://www.ztemt.com/mobile/uaprof/ZTE V8110.xml' => array( 'ZTE', 'V8110', 'Android', TYPE_MOBILE ),
6503
  'http://www.zte.com.cn/mobile/uaprof/ZTE_V818.xml' => array( 'ZTE', 'V818', 'Android', TYPE_MOBILE ),
6504
  'http://www.zte.com.cn/mobile/uaprof/ZTE-GV821.xml' => array( 'ZTE', 'V821', 'Android', TYPE_MOBILE ),
6505
  'http://www.zte.com.cn/mobile/uaprof/V852.xml' => array( 'ZTE', 'V852', 'Android', TYPE_MOBILE ),
6525
  'http://www.zte.com.cn/mobile/uaprof/ZTE Grand Memo LTE.xml' => array( 'ZTE', 'V9815 Grand Memo', 'Android', TYPE_MOBILE ),
6526
  'http://www.zte.com.cn/mobile/uaprof/Grand X Pro.xml' => array( 'ZTE', 'V983 Grand X Pro', 'Android', TYPE_MOBILE ),
6527
  'http://www.zte.com.cn/mobile/uaprof/ZTE V985.xml' => array( 'ZTE', 'V985 Grand Era', 'Android', TYPE_MOBILE ),
6528
+ 'http://www.oppo.com/resource/UA-PROF/OPPOZTE V 987.xml' => array( 'ZTE', 'V987', 'Android', TYPE_MOBILE ),
6529
+ 'http://www.oppo.com/resource/UA-PROF/OPPOZTE V987.xml' => array( 'ZTE', 'V987', 'Android', TYPE_MOBILE ),
6530
  'http://www.zte.com.cn/mobile/uaprof/ZTE_V987.xml' => array( 'ZTE', 'V987', 'Android', TYPE_MOBILE ),
6531
  'http://www.zte.com.cn/mobile/uaprof/ZTE_V987_4.2.xml' => array( 'ZTE', 'V987', 'Android', TYPE_MOBILE ),
6532
  'http://www.zte.com.cn/mobile/uaprof/ZTE V988.xml' => array( 'ZTE', 'V988', 'Android', TYPE_MOBILE ),
6533
+ 'http://www.zte.com.cn/mobile/uaprof/N988.xml' => array( 'ZTE', 'V988 Grand S', 'Android', TYPE_MOBILE ),
6534
  'http://www.zte.com.cn/mobile/uaprof/ZTE Grand S.xml' => array( 'ZTE', 'V988 Grand S', 'Android', TYPE_MOBILE ),
6535
  'http://mmslab.mycricket.com/zte-x500.xml' => array( 'ZTE', 'X500 Score', 'Android', TYPE_MOBILE ),
6536
  'http://uaprof.metropcs.net/UAProf/ZTE-X500.xml' => array( 'ZTE', 'X500 Score', 'Android', TYPE_MOBILE ),
6541
  'http://www.ztemt.com/mobile/uaprof/X990_V2_Z10.xml' => array( 'ZTE', 'X990', NULL, TYPE_MOBILE ),
6542
  'http://www.zte.com.cn/mobile/uaprof/ZTE-Z431.xml' => array( 'ZTE', 'Z431', NULL, TYPE_MOBILE ),
6543
  'http://www.zte.com.cn/mobile/uaprof/ZTE-Z660G.xml' => array( 'ZTE', 'Z660', 'Android', TYPE_MOBILE ),
6544
+ 'http://uaprof.vtext.com/zte/wsz665c/wsz665c.xml' => array( 'ZTE', 'Z665 Valet', 'Android', TYPE_MOBILE ),
6545
  'http://www.zte.com.cn/mobile/uaprof/Z740.xml' => array( 'ZTE', 'Z740 Radiant', 'Android', TYPE_MOBILE ),
6546
+ 'http://www.zte.com.cn/mobile/uaprof/ZTE-Z768G.xml' => array( 'ZTE', 'Z768', 'Android', TYPE_MOBILE ),
6547
  'http://www.zte.com.cn/mobile/uaprof/ZTE_V970.xml' => array( 'ZTE', 'Z970 Grand X', 'Android', TYPE_MOBILE ),
6548
  'http://www.zte.com.cn/mobile/uaprof/ZTE_V970M.xml' => array( 'ZTE', 'Z970 Grand X', 'Android', TYPE_MOBILE ),
6549
  'http://www.zte.com.cn/mobile/uaprof/ZTE_V970M_JB.xml' => array( 'ZTE', 'Z970 Grand X', 'Android', TYPE_MOBILE ),
6550
  'http://www.zte.com.cn/mobile/uaprof/ZTE-Z990.xml' => array( 'ZTE', 'Z990 Roamer', 'Android', TYPE_MOBILE ),
6551
  'http://www.zte.com.cn/mobile/uaprof/ZTE-Z990G.xml' => array( 'ZTE', 'Z990 Roamer', 'Android', TYPE_MOBILE ),
6552
+ 'http://www.zte.com.cn/mobile/uaprof/ZTE-Z992.xml' => array( 'ZTE', 'Z992 Avail 2', 'Android', TYPE_MOBILE ),
6553
+ 'http://www.zte.com.cn/mobile/uaprof/Z995.xml' => array( 'ZTE', 'Z995 Overture', 'Android', TYPE_MOBILE ),
6554
  'http://www.zte.com.cn/mobile/uaprof/Z998.xml' => array( 'ZTE', 'Z998', 'Android', TYPE_MOBILE ),
6555
+ 'http://www.zte.com.cn/mobile/uaprof/MS4A.xml' => array( 'Мегафон', '4G Turbo', 'Android', TYPE_MOBILE ),
6556
  'http://downloadmirror.intel.com/20932/eng/SP-A20i_UA_Profile.xml' => array( 'Мегафон', 'SP-A20i Mint', 'Android', TYPE_MOBILE ),
6557
  );
js/whichbrowser/{detect.js → detect.php} RENAMED
@@ -5,9 +5,10 @@
5
  header("Pragma: no-cache");
6
  header("Expires: 0");
7
 
8
- include('libraries/whichbrowser.php');
 
9
 
10
- $options = array('headers' => apache_request_headers());
11
  if (isset($_REQUEST['ua'])) $options['useragent'] = $_REQUEST['ua'];
12
  if (isset($_REQUEST['e'])) $options['engine'] = intval($_REQUEST['e']);
13
  if (isset($_REQUEST['f'])) $options['features'] = intval($_REQUEST['f']);
@@ -40,7 +41,7 @@ var WhichBrowser = (function(){
40
  valid = valid && this[x].name == arguments[1];
41
  }
42
 
43
- if (arguments.length >= 4 && typeof this[x].version && valid) {
44
  valid = valid && this[x].version.is(arguments[2], arguments[3]);
45
  }
46
 
@@ -52,7 +53,7 @@ var WhichBrowser = (function(){
52
  isOs: function() { var a = Array.prototype.slice.call(arguments); a.unshift('os'); return this.isX.apply(this, a); },
53
 
54
  isDevice: function(d) {
55
- return typeof this.device.model != 'undefined' && this.device.model == d;
56
  },
57
 
58
  isType: function() {
@@ -180,7 +181,7 @@ var WhichBrowser = (function(){
180
 
181
  toString: function() {
182
  if (this.identified)
183
- return (this.manufacturer ? this.manufacturer + ' ' : '') + (typeof this.model != 'undefined' && this.model ? this.model : '');
184
  else
185
  return (this.model ? 'unrecognized device (' + this.model + ')' : '');
186
  }
5
  header("Pragma: no-cache");
6
  header("Expires: 0");
7
 
8
+ include_once('libraries/utilities.php');
9
+ include_once('libraries/whichbrowser.php');
10
 
11
+ $options = array('headers' => getallheaders());
12
  if (isset($_REQUEST['ua'])) $options['useragent'] = $_REQUEST['ua'];
13
  if (isset($_REQUEST['e'])) $options['engine'] = intval($_REQUEST['e']);
14
  if (isset($_REQUEST['f'])) $options['features'] = intval($_REQUEST['f']);
41
  valid = valid && this[x].name == arguments[1];
42
  }
43
 
44
+ if (arguments.length >= 4 && this[x].version && valid) {
45
  valid = valid && this[x].version.is(arguments[2], arguments[3]);
46
  }
47
 
53
  isOs: function() { var a = Array.prototype.slice.call(arguments); a.unshift('os'); return this.isX.apply(this, a); },
54
 
55
  isDevice: function(d) {
56
+ return this.device.model == d;
57
  },
58
 
59
  isType: function() {
181
 
182
  toString: function() {
183
  if (this.identified)
184
+ return (this.manufacturer || '') + ' ' + (this.model || '');
185
  else
186
  return (this.model ? 'unrecognized device (' + this.model + ')' : '');
187
  }
js/whichbrowser/libraries/whichbrowser.php CHANGED
@@ -76,8 +76,9 @@
76
 
77
  function __construct($options) {
78
  $this->options = (object) $options;
79
- $this->headers = $this->options->headers;
80
-
 
81
  $this->browser = (object) array('stock' => true, 'hidden' => false, 'channel' => '', 'mode' => '');
82
  $this->engine = (object) array();
83
  $this->os = (object) array();
@@ -401,7 +402,7 @@
401
  }
402
 
403
  function analyseAlternativeUserAgent($ua) {
404
- $extra = new WhichBrowser(array("User-Agent" => $ua));
405
 
406
  if ($extra->device->type != TYPE_DESKTOP) {
407
  if (isset($extra->os->name)) $this->os = $extra->os;
@@ -429,7 +430,7 @@
429
  $this->browser->version = null;
430
  }
431
 
432
- $extra = new WhichBrowser(array("User-Agent" => $ua));
433
  if ($extra->device->type != TYPE_DESKTOP) {
434
  if (isset($extra->os->version)) $this->os = $extra->os;
435
  if ($extra->device->identified) $this->device = $extra->device;
@@ -931,6 +932,18 @@
931
  }
932
  }
933
 
 
 
 
 
 
 
 
 
 
 
 
 
934
  if (isset($this->device->manufacturer) && isset($this->device->model)) {
935
  if ($this->device->manufacturer == 'ARM' && $this->device->model == 'Touch') {
936
  $this->device->manufacturer = null;
@@ -1076,7 +1089,7 @@
1076
  $this->os->version = new Version(array('value' => $match[1], 'details' => 3));
1077
  }
1078
 
1079
- if (preg_match('/Android (2.[0-9].[0-9]+)-R-20[0-9]+/', $ua, $match)) {
1080
  $this->os->name = 'Aliyun OS';
1081
  $this->os->version = new Version(array('value' => $match[1], 'details' => 3));
1082
  }
@@ -1299,7 +1312,7 @@
1299
  $this->os->name = 'webOS';
1300
  }
1301
 
1302
- if (preg_match('/WebOS; Linux\/SmartTV/', $ua, $match)) {
1303
  $this->os->name = 'webOS';
1304
  $this->device->type = 'television';
1305
  }
@@ -1456,7 +1469,7 @@
1456
  $this->device->type = TYPE_MOBILE;
1457
 
1458
  if (preg_match('/\(([^;]+); ([^\/]+)\//', $ua, $match)) {
1459
- if ($match[1] != 'Linux') {
1460
  $this->device->manufacturer = $match[1];
1461
  $this->device->model = $match[2];
1462
  $this->device->identified = ID_PATTERN;
@@ -1470,12 +1483,12 @@
1470
  }
1471
  }
1472
 
1473
- if (preg_match('/;\s+([^;\)]+)\)/', $ua, $match)) {
1474
- if (substr($match[1], 0, 5) != 'Tizen') {
1475
- $this->device->model = $match[1];
1476
  $this->device->identified = ID_PATTERN;
1477
 
1478
- $device = DeviceModels::identify('tizen', $match[1]);
1479
 
1480
  if ($device->identified) {
1481
  $device->identified |= $this->device->identified;
@@ -1527,14 +1540,18 @@
1527
  * Brew
1528
  */
1529
 
1530
- if (preg_match('/BREW/i', $ua) || preg_match('/BMP( [0-9.]*)?; U/', $ua)) {
1531
  $this->os->name = 'Brew';
1532
 
1533
  if (preg_match('/BREW; U; ([0-9.]*)/i', $ua, $match)) {
1534
  $this->os->version = new Version(array('value' => $match[1]));
1535
  }
1536
 
1537
- else if (preg_match('/;BREW\/([0-9.]*)/i', $ua, $match)) {
 
 
 
 
1538
  $this->os->version = new Version(array('value' => $match[1]));
1539
  }
1540
 
@@ -1542,6 +1559,10 @@
1542
  $this->os->version = new Version(array('value' => $match[1]));
1543
  }
1544
 
 
 
 
 
1545
 
1546
  $this->device->type = TYPE_MOBILE;
1547
 
@@ -1606,12 +1627,32 @@
1606
  /****************************************************
1607
  * COS
1608
  */
1609
-
 
 
 
 
 
1610
  if (preg_match('/COSBrowser\/([0-9.]*)/i', $ua, $match)) {
1611
  $this->os->name = 'COS';
1612
  $this->os->version = new Version(array('value' => $match[1], 'details' => 2));
1613
  }
1614
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1615
  /****************************************************
1616
  * CrOS
1617
  */
@@ -2354,10 +2395,13 @@
2354
  $this->device->identified |= ID_PATTERN;
2355
 
2356
  switch($modelName) {
2357
- case 'GLOBAL_PLAT3': $this->device->model = 'NetCast TV'; $this->device->identified |= ID_MATCH_UA; break;
2358
- case 'GLOBAL_PLAT4': $this->device->model = 'NetCast TV'; $this->device->identified |= ID_MATCH_UA; break;
 
2359
  case 'SmartTV2012': $this->device->model = 'Smart TV 2012'; $this->device->identified |= ID_MATCH_UA; break;
2360
  case 'videoweb': $this->device->model = 'Videoweb'; $this->device->identified |= ID_MATCH_UA; break;
 
 
2361
  case 'hms1000sph2': $this->device->manufacturer = 'Humax'; $this->device->model = 'HMS-1000S'; $this->device->identified |= ID_MATCH_UA; break;
2362
  default: $this->device->model = $modelName;
2363
  }
@@ -2407,6 +2451,10 @@
2407
  if (preg_match('/^((?:SAMSUNG|TCL|ZTE) [^\s]+)/', $ua, $match)) {
2408
  array_push($candidates, $match[1]);
2409
  }
 
 
 
 
2410
 
2411
  if (preg_match('/[0-9]+x[0-9]+; ([^;]+)/', $ua, $match)) {
2412
  array_push($candidates, $match[1]);
@@ -2637,46 +2685,49 @@
2637
 
2638
  if (preg_match('/^Nokia-?([^\/]+)(?:\/|$)/i', $candidates[$i], $match)) {
2639
  $this->device->manufacturer = 'Nokia';
2640
- $this->device->model = DeviceModels::cleanup($match[1]);
2641
- $this->device->type = TYPE_MOBILE;
2642
- $this->device->identified = false;
2643
- $identified = true;
2644
-
2645
- if (!$this->device->identified) {
2646
- $device = DeviceModels::identify('s60', $this->device->model);
2647
- if ($device->identified) {
2648
- $device->identified |= $this->device->identified;
2649
- $this->device = $device;
2650
 
2651
- if (!isset($this->os->name) || $this->os->name != 'Series60') {
2652
- $this->os->name = 'Series60';
2653
- $this->os->version = null;
 
 
 
 
 
 
 
 
 
 
 
 
 
2654
  }
2655
  }
2656
- }
2657
-
2658
- if (!$this->device->identified) {
2659
- $device = DeviceModels::identify('s40', $this->device->model);
2660
- if ($device->identified) {
2661
- $device->identified |= $this->device->identified;
2662
- $this->device = $device;
2663
-
2664
- if (!isset($this->os->name) || $this->os->name != 'Series40') {
2665
- $this->os->name = 'Series40';
2666
- $this->os->version = null;
2667
  }
2668
  }
2669
- }
2670
-
2671
- if (!$this->device->identified) {
2672
- $device = DeviceModels::identify('asha', $this->device->model);
2673
- if ($device->identified) {
2674
- $device->identified |= $this->device->identified;
2675
- $this->device = $device;
2676
-
2677
- if (!isset($this->os->name) || $this->os->name != 'Nokia Asha Platform') {
2678
- $this->os->name = 'Nokia Asha Platform';
2679
- $this->os->version = null;
2680
  }
2681
  }
2682
  }
@@ -2871,6 +2922,15 @@
2871
  }
2872
  }
2873
 
 
 
 
 
 
 
 
 
 
2874
  if (!$this->device->identified) {
2875
  $device = DeviceModels::identify('feature', $this->device->model);
2876
  if ($device->identified) {
@@ -3095,12 +3155,26 @@
3095
  $this->device->type = TYPE_MOBILE;
3096
  }
3097
 
3098
- if (preg_match('/Mobile; rv/', $ua)) {
3099
  $this->device->type = TYPE_MOBILE;
 
 
 
 
 
 
 
3100
  }
3101
 
3102
- if (preg_match('/Tablet; rv/', $ua)) {
3103
  $this->device->type = TYPE_TABLET;
 
 
 
 
 
 
 
3104
  }
3105
 
3106
  if ($this->device->type == TYPE_MOBILE || $this->device->type == TYPE_TABLET) {
@@ -3218,7 +3292,7 @@
3218
  $this->browser->version = new Version(array('value' => $match[1]));
3219
 
3220
  if (isset($this->os->name) && $this->os->name == 'Android') {
3221
- switch (implode('.', array_splice(explode('.', $match[1]), 0, 3))) {
3222
  case '16.0.912':
3223
  $this->browser->channel = 'Beta';
3224
  break;
@@ -3228,6 +3302,9 @@
3228
  case '29.0.1547':
3229
  case '30.0.1599':
3230
  case '31.0.1650':
 
 
 
3231
  $this->browser->version->details = 1;
3232
  break;
3233
  default:
@@ -3236,7 +3313,7 @@
3236
  }
3237
 
3238
  /* Webview for Android 4.4 and higher */
3239
- if (implode('.', array_splice(explode('.', $match[1]), 1, 2)) == '0.0' && preg_match('/Version\//', $ua)) {
3240
  $this->browser->stock = true;
3241
  $this->browser->name = null;
3242
  $this->browser->version = null;
@@ -3265,7 +3342,7 @@
3265
  }
3266
 
3267
  else {
3268
- switch (implode('.', array_splice(explode('.', $match[1]), 0, 3))) {
3269
  case '0.2.149':
3270
  case '0.3.154':
3271
  case '0.4.154':
@@ -3304,6 +3381,9 @@
3304
  case '29.0.1547':
3305
  case '30.0.1599':
3306
  case '31.0.1650':
 
 
 
3307
  $this->browser->version->details = 1;
3308
  break;
3309
  default:
@@ -3498,6 +3578,7 @@
3498
 
3499
  if (preg_match('/NokiaBrowser/', $ua)) {
3500
  $this->browser->name = 'Nokia Browser';
 
3501
 
3502
  if (preg_match('/NokiaBrowser\/([0-9.]*)/', $ua, $match)) {
3503
  $this->browser->version = new Version(array('value' => $match[1], 'details' => 3));
@@ -3532,10 +3613,21 @@
3532
  $this->device->model = $match[1];
3533
  $this->device->identified |= ID_PATTERN;
3534
 
3535
- $device = DeviceModels::identify('s40', $this->device->model);
3536
- if ($device->identified) {
3537
- $device->identified |= $this->device->identified;
3538
- $this->device = $device;
 
 
 
 
 
 
 
 
 
 
 
3539
  }
3540
  }
3541
 
@@ -3763,12 +3855,12 @@
3763
  $this->browser->version = new Version(array('value' => $match[2]));
3764
  }
3765
 
3766
- if (preg_match('/Obigo-([A-Z])([0-9.]*)\//i', $ua, $match)) {
3767
  $this->browser->name = 'Obigo ' . $match[1];
3768
  $this->browser->version = new Version(array('value' => $match[2]));
3769
  }
3770
 
3771
- if (preg_match('/Browser\/(?:Obigo|Teleca)-(?:Browser\/)?([A-Z])([0-9.]*)/i', $ua, $match)) {
3772
  $this->browser->name = 'Obigo ' . $match[1];
3773
  $this->browser->version = new Version(array('value' => $match[2]));
3774
  }
@@ -4116,6 +4208,7 @@
4116
  array('name' => 'Baidu Browser', 'regexp' => '/FlyFlow\/([0-9.]*)/', 'details' => 2),
4117
  array('name' => 'Baidu Browser', 'regexp' => '/BIDUBrowser[ \/]([0-9.]*)/'),
4118
  array('name' => 'Baidu Browser', 'regexp' => '/BaiduHD\/([0-9.]*)/', 'details' => 2),
 
4119
  array('name' => 'Black Wren', 'regexp' => '/BlackWren\/([0-9.]*)/', 'details' => 2),
4120
  array('name' => 'BrightSign', 'regexp' => '/BrightSign\/([0-9.]*)/', 'type' => TYPE_SIGNAGE),
4121
  array('name' => 'Byffox', 'regexp' => '/Byffox\/([0-9.]*)/', 'type' => TYPE_DESKTOP),
@@ -4179,15 +4272,17 @@
4179
  array('name' => 'Openwave', 'regexp' => '/Openwave\/([0-9.]*)/', 'details' => 2),
4180
  array('name' => 'Orca', 'regexp' => '/Orca\/([0-9.]*)/'),
4181
  array('name' => 'Origyn', 'regexp' => '/Origyn Web Browser/'),
 
4182
  array('name' => 'Palemoon', 'regexp' => '/Pale[mM]oon\/([0-9.]*)/'),
4183
  array('name' => 'Phantom', 'regexp' => '/Phantom\/V([0-9.]*)/'),
4184
- array('name' => 'Polaris', 'regexp' => '/Polaris\/v?([0-9.]*)/i', 'details' => 2),
4185
  array('name' => 'Qihoo 360', 'regexp' => '/QIHU THEWORLD/'),
4186
  array('name' => 'QtCreator', 'regexp' => '/QtCreator\/([0-9.]*)/'),
4187
  array('name' => 'QtQmlViewer', 'regexp' => '/QtQmlViewer/'),
4188
  array('name' => 'QtTestBrowser', 'regexp' => '/QtTestBrowser\/([0-9.]*)/'),
4189
  array('name' => 'QtWeb', 'regexp' => '/QtWeb Internet Browser\/([0-9.]*)/'),
4190
- array('name' => 'QupZilla', 'regexp' => '/QupZilla\/([0-9.]*)/', 'type' => TYPE_DESKTOP),
 
4191
  array('name' => 'Roccat', 'regexp' => '/Roccat\/([0-9]\.[0-9.]*)/'),
4192
  array('name' => 'Raven for Mac', 'regexp' => '/Raven for Mac\/([0-9.]*)/'),
4193
  array('name' => 'rekonq', 'regexp' => '/rekonq(?:\/([0-9.]*))?/', 'type' => TYPE_DESKTOP),
@@ -4219,6 +4314,7 @@
4219
  array('name' => 'WebRender', 'regexp' => '/WebRender/'),
4220
  array('name' => 'Webster', 'regexp' => '/Webster ([0-9.]*)/'),
4221
  array('name' => 'Wyzo', 'regexp' => '/Wyzo\/([0-9.]*)/', 'details' => 3),
 
4222
  array('name' => 'Yandex Browser', 'regexp' => '/YaBrowser\/([0-9.]*)/', 'details' => 2),
4223
  array('name' => 'Yelang', 'regexp' => '/Yelang\/([0-9.]*)/', 'details' => 3), // see: wellgo.org
4224
  array('name' => 'YRC Weblink', 'regexp' => '/YRCWeblink\/([0-9.]*)/'),
@@ -4562,7 +4658,7 @@
4562
  class BrowserIds {
4563
  static $ANDROID_BROWSERS = array();
4564
 
4565
- function identify($type, $model) {
4566
  require_once(_BASEPATH_ . '../data/id-' . $type . '.php');
4567
 
4568
  switch($type) {
@@ -4572,7 +4668,7 @@
4572
  return false;
4573
  }
4574
 
4575
- function identifyList($list, $id) {
4576
  if (isset($list[$id])) {
4577
  return $list[$id];
4578
  }
@@ -4584,7 +4680,7 @@
4584
  class BuildIds {
4585
  static $ANDROID_BUILDS = array();
4586
 
4587
- function identify($type, $id) {
4588
  require_once(_BASEPATH_ . '../data/build-' . $type . '.php');
4589
 
4590
  switch($type) {
@@ -4594,7 +4690,7 @@
4594
  return false;
4595
  }
4596
 
4597
- function identifyList($list, $id) {
4598
  if (isset($list[$id])) {
4599
  return new Version(array('value' => $list[$id]));
4600
  }
@@ -4608,6 +4704,7 @@
4608
  static $ASHA_MODELS = array();
4609
  static $BADA_MODELS = array();
4610
  static $BREW_MODELS = array();
 
4611
  static $TIZEN_MODELS = array();
4612
  static $TOUCHWIZ_MODELS = array();
4613
  static $WINDOWS_MOBILE_MODELS = array();
@@ -4619,7 +4716,7 @@
4619
  static $IOS_MODELS = array();
4620
 
4621
 
4622
- function identify($type, $model) {
4623
  require_once(_BASEPATH_ . '../data/models-' . $type . '.php');
4624
 
4625
  switch($type) {
@@ -4628,6 +4725,7 @@
4628
  case 'bada': return DeviceModels::identifyList(DeviceModels::$BADA_MODELS, $model);
4629
  case 'blackberry': return DeviceModels::identifyBlackBerry($model);
4630
  case 'brew': return DeviceModels::identifyList(DeviceModels::$BREW_MODELS, $model);
 
4631
  case 'ios': return DeviceModels::identifyIOS($model);
4632
  case 'tizen': return DeviceModels::identifyList(DeviceModels::$TIZEN_MODELS, $model);
4633
  case 'touchwiz': return DeviceModels::identifyList(DeviceModels::$TOUCHWIZ_MODELS, $model);
@@ -4641,7 +4739,7 @@
4641
  return (object) array('type' => '', 'model' => $model, 'identified' => ID_NONE);
4642
  }
4643
 
4644
- function identifyIOS($model) {
4645
  $model = str_replace('Unknown ', '', $model);
4646
  $model = preg_replace("/iPh([0-9],[0-9])/", 'iPhone\\1', $model);
4647
  $model = preg_replace("/iPd([0-9],[0-9])/", 'iPod\\1', $model);
@@ -4649,7 +4747,7 @@
4649
  return DeviceModels::identifyList(DeviceModels::$IOS_MODELS, $model);
4650
  }
4651
 
4652
- function identifyAndroid($model) {
4653
  $result = DeviceModels::identifyList(DeviceModels::$ANDROID_MODELS, $model);
4654
 
4655
  if (!$result->identified) {
@@ -4667,7 +4765,7 @@
4667
  return $result;
4668
  }
4669
 
4670
- function identifyBlackBerry($model) {
4671
  $device = (object) array(
4672
  'type' => TYPE_MOBILE,
4673
  'identified' => ID_PATTERN,
@@ -4683,7 +4781,7 @@
4683
  return $device;
4684
  }
4685
 
4686
- function identifyList($list, $model) {
4687
  $model = DeviceModels::cleanup($model);
4688
 
4689
  $device = (object) array(
@@ -4718,7 +4816,7 @@
4718
  return $device;
4719
  }
4720
 
4721
- function cleanup($s = '') {
4722
  $s = preg_replace('/\/[^\/]+$/', '', $s);
4723
  $s = preg_replace('/\/[^\/]+ Android\/.*/', '', $s);
4724
 
@@ -4778,7 +4876,7 @@
4778
  class DeviceProfiles {
4779
  static $PROFILES = array();
4780
 
4781
- function identify($url) {
4782
  require_once(_BASEPATH_ . '../data/profiles.php');
4783
 
4784
  if (isset(DeviceProfiles::$PROFILES[$url])) {
@@ -4809,4 +4907,3 @@
4809
  return intval($this->value);
4810
  }
4811
  }
4812
-
76
 
77
  function __construct($options) {
78
  $this->options = (object) $options;
79
+ $this->headers = array();
80
+ if (isset($this->options->headers)) $this->headers = $this->options->headers;
81
+
82
  $this->browser = (object) array('stock' => true, 'hidden' => false, 'channel' => '', 'mode' => '');
83
  $this->engine = (object) array();
84
  $this->os = (object) array();
402
  }
403
 
404
  function analyseAlternativeUserAgent($ua) {
405
+ $extra = new WhichBrowser(array('headers' => array("User-Agent" => $ua)));
406
 
407
  if ($extra->device->type != TYPE_DESKTOP) {
408
  if (isset($extra->os->name)) $this->os = $extra->os;
430
  $this->browser->version = null;
431
  }
432
 
433
+ $extra = new WhichBrowser(array('headers' => array("User-Agent" => $ua)));
434
  if ($extra->device->type != TYPE_DESKTOP) {
435
  if (isset($extra->os->version)) $this->os = $extra->os;
436
  if ($extra->device->identified) $this->device = $extra->device;
932
  }
933
  }
934
 
935
+ if (preg_match('/WPDesktop; \s*([^;\s][^;]*);\s*([^;\)\s][^;\)]*)[;|\)]/', $ua, $match)) {
936
+ $this->device->manufacturer = $match[1];
937
+ $this->device->model = $match[2];
938
+ $this->device->identified |= ID_PATTERN;
939
+
940
+ $device = DeviceModels::identify('wp', $match[2]);
941
+ if ($device->identified) {
942
+ $device->identified |= $this->device->identified;
943
+ $this->device = $device;
944
+ }
945
+ }
946
+
947
  if (isset($this->device->manufacturer) && isset($this->device->model)) {
948
  if ($this->device->manufacturer == 'ARM' && $this->device->model == 'Touch') {
949
  $this->device->manufacturer = null;
1089
  $this->os->version = new Version(array('value' => $match[1], 'details' => 3));
1090
  }
1091
 
1092
+ if (preg_match('/Android ([12].[0-9].[0-9]+)-R-20[0-9]+/', $ua, $match)) {
1093
  $this->os->name = 'Aliyun OS';
1094
  $this->os->version = new Version(array('value' => $match[1], 'details' => 3));
1095
  }
1312
  $this->os->name = 'webOS';
1313
  }
1314
 
1315
+ if (preg_match('/Web[0O]S/', $ua) && preg_match('/Large Screen/', $ua)) {
1316
  $this->os->name = 'webOS';
1317
  $this->device->type = 'television';
1318
  }
1469
  $this->device->type = TYPE_MOBILE;
1470
 
1471
  if (preg_match('/\(([^;]+); ([^\/]+)\//', $ua, $match)) {
1472
+ if ($match[1] != 'Linux' && $match[1] != 'Tizen') {
1473
  $this->device->manufacturer = $match[1];
1474
  $this->device->model = $match[2];
1475
  $this->device->identified = ID_PATTERN;
1483
  }
1484
  }
1485
 
1486
+ if (preg_match('/\s*([^;]+);\s+([^;\)]+)\)/', $ua, $match)) {
1487
+ if ($match[1] != 'U' && substr($match[2], 0, 5) != 'Tizen') {
1488
+ $this->device->model = $match[2];
1489
  $this->device->identified = ID_PATTERN;
1490
 
1491
+ $device = DeviceModels::identify('tizen', $match[2]);
1492
 
1493
  if ($device->identified) {
1494
  $device->identified |= $this->device->identified;
1540
  * Brew
1541
  */
1542
 
1543
+ if (preg_match('/BREW/i', $ua) || preg_match('/BMP( [0-9.]*)?; U/', $ua) || preg_match('/BMP\/([0-9.]*)/', $ua)) {
1544
  $this->os->name = 'Brew';
1545
 
1546
  if (preg_match('/BREW; U; ([0-9.]*)/i', $ua, $match)) {
1547
  $this->os->version = new Version(array('value' => $match[1]));
1548
  }
1549
 
1550
+ else if (preg_match('/BREW MP ([0-9.]*)/i', $ua, $match)) {
1551
+ $this->os->version = new Version(array('value' => $match[1]));
1552
+ }
1553
+
1554
+ else if (preg_match('/;BREW[\/ ]([0-9.]*)/i', $ua, $match)) {
1555
  $this->os->version = new Version(array('value' => $match[1]));
1556
  }
1557
 
1559
  $this->os->version = new Version(array('value' => $match[1]));
1560
  }
1561
 
1562
+ else if (preg_match('/BMP\/([0-9.]*)/i', $ua, $match)) {
1563
+ $this->os->version = new Version(array('value' => $match[1]));
1564
+ }
1565
+
1566
 
1567
  $this->device->type = TYPE_MOBILE;
1568
 
1627
  /****************************************************
1628
  * COS
1629
  */
1630
+
1631
+ if (preg_match('/COS like Android/i', $ua, $match)) {
1632
+ $this->os->name = 'COS';
1633
+ $this->os->version = null;
1634
+ }
1635
+
1636
  if (preg_match('/COSBrowser\/([0-9.]*)/i', $ua, $match)) {
1637
  $this->os->name = 'COS';
1638
  $this->os->version = new Version(array('value' => $match[1], 'details' => 2));
1639
  }
1640
 
1641
+ if (preg_match('/\(Chinese Operating System ([0-9.]*);/i', $ua, $match)) {
1642
+ $this->os->name = 'COS';
1643
+ $this->os->version = new Version(array('value' => $match[1], 'details' => 2));
1644
+ }
1645
+
1646
+ if (preg_match('/\(COS ([0-9.]*);/i', $ua, $match)) {
1647
+ $this->os->name = 'COS';
1648
+ $this->os->version = new Version(array('value' => $match[1], 'details' => 2));
1649
+ }
1650
+
1651
+ if (preg_match('/\(COS;/i', $ua, $match)) {
1652
+ $this->os->name = 'COS';
1653
+ }
1654
+
1655
+
1656
  /****************************************************
1657
  * CrOS
1658
  */
2395
  $this->device->identified |= ID_PATTERN;
2396
 
2397
  switch($modelName) {
2398
+ case 'GLOBAL_PLAT3': $this->device->model = 'NetCast 3.0'; $this->device->identified |= ID_MATCH_UA; break;
2399
+ case 'GLOBAL_PLAT4': $this->device->model = 'NetCast 4.0'; $this->device->identified |= ID_MATCH_UA; break;
2400
+ case 'NetCast 4.0': $this->device->model = 'NetCast 4.0'; $this->device->identified |= ID_MATCH_UA; break;
2401
  case 'SmartTV2012': $this->device->model = 'Smart TV 2012'; $this->device->identified |= ID_MATCH_UA; break;
2402
  case 'videoweb': $this->device->model = 'Videoweb'; $this->device->identified |= ID_MATCH_UA; break;
2403
+ case 'VIERA 2013': $this->device->model = 'Smart Viera'; $this->device->identified |= ID_MATCH_UA; break;
2404
+ case 'VIERA 2014': $this->device->model = 'Smart Viera'; $this->device->identified |= ID_MATCH_UA; break;
2405
  case 'hms1000sph2': $this->device->manufacturer = 'Humax'; $this->device->model = 'HMS-1000S'; $this->device->identified |= ID_MATCH_UA; break;
2406
  default: $this->device->model = $modelName;
2407
  }
2451
  if (preg_match('/^((?:SAMSUNG|TCL|ZTE) [^\s]+)/', $ua, $match)) {
2452
  array_push($candidates, $match[1]);
2453
  }
2454
+
2455
+ if (preg_match('/(Samsung (?:GT|SCH|SGH|SHV|SHW|SPH)-[A-Z-0-9]+)/i', $ua, $match)) {
2456
+ array_push($candidates, $match[1]);
2457
+ }
2458
 
2459
  if (preg_match('/[0-9]+x[0-9]+; ([^;]+)/', $ua, $match)) {
2460
  array_push($candidates, $match[1]);
2685
 
2686
  if (preg_match('/^Nokia-?([^\/]+)(?:\/|$)/i', $candidates[$i], $match)) {
2687
  $this->device->manufacturer = 'Nokia';
 
 
 
 
 
 
 
 
 
 
2688
 
2689
+ if ($match[1] != 'Browser') {
2690
+ $this->device->model = DeviceModels::cleanup($match[1]);
2691
+ $this->device->type = TYPE_MOBILE;
2692
+ $this->device->identified = false;
2693
+ $identified = true;
2694
+
2695
+ if (!$this->device->identified) {
2696
+ $device = DeviceModels::identify('s60', $this->device->model);
2697
+ if ($device->identified) {
2698
+ $device->identified |= $this->device->identified;
2699
+ $this->device = $device;
2700
+
2701
+ if (!isset($this->os->name) || $this->os->name != 'Series60') {
2702
+ $this->os->name = 'Series60';
2703
+ $this->os->version = null;
2704
+ }
2705
  }
2706
  }
2707
+
2708
+ if (!$this->device->identified) {
2709
+ $device = DeviceModels::identify('s40', $this->device->model);
2710
+ if ($device->identified) {
2711
+ $device->identified |= $this->device->identified;
2712
+ $this->device = $device;
2713
+
2714
+ if (!isset($this->os->name) || $this->os->name != 'Series40') {
2715
+ $this->os->name = 'Series40';
2716
+ $this->os->version = null;
2717
+ }
2718
  }
2719
  }
2720
+
2721
+ if (!$this->device->identified) {
2722
+ $device = DeviceModels::identify('asha', $this->device->model);
2723
+ if ($device->identified) {
2724
+ $device->identified |= $this->device->identified;
2725
+ $this->device = $device;
2726
+
2727
+ if (!isset($this->os->name) || $this->os->name != 'Nokia Asha Platform') {
2728
+ $this->os->name = 'Nokia Asha Platform';
2729
+ $this->os->version = null;
2730
+ }
2731
  }
2732
  }
2733
  }
2922
  }
2923
  }
2924
 
2925
+ if (!$this->device->identified) {
2926
+ $device = DeviceModels::identify('brew', $this->device->model);
2927
+ if ($device->identified) {
2928
+ $device->identified |= $this->device->identified;
2929
+ $this->device = $device;
2930
+ $this->os->name = 'Brew';
2931
+ }
2932
+ }
2933
+
2934
  if (!$this->device->identified) {
2935
  $device = DeviceModels::identify('feature', $this->device->model);
2936
  if ($device->identified) {
3155
  $this->device->type = TYPE_MOBILE;
3156
  }
3157
 
3158
+ if (preg_match('/Mobile;(?: ([^;]+);)? rv/', $ua, $match)) {
3159
  $this->device->type = TYPE_MOBILE;
3160
+
3161
+ $device = DeviceModels::identify('firefoxos', $match[1]);
3162
+ if ($device->identified) {
3163
+ $device->identified |= $this->device->identified;
3164
+ $this->os->name = 'Firefox OS';
3165
+ $this->device = $device;
3166
+ }
3167
  }
3168
 
3169
+ if (preg_match('/Tablet;(?: ([^;]+);)? rv/', $ua, $match)) {
3170
  $this->device->type = TYPE_TABLET;
3171
+
3172
+ $device = DeviceModels::identify('firefoxos', $match[1]);
3173
+ if ($device->identified) {
3174
+ $device->identified |= $this->device->identified;
3175
+ $this->os->name = 'Firefox OS';
3176
+ $this->device = $device;
3177
+ }
3178
  }
3179
 
3180
  if ($this->device->type == TYPE_MOBILE || $this->device->type == TYPE_TABLET) {
3292
  $this->browser->version = new Version(array('value' => $match[1]));
3293
 
3294
  if (isset($this->os->name) && $this->os->name == 'Android') {
3295
+ switch (implode('.', array_splice((explode('.', $match[1])), 0, 3))) {
3296
  case '16.0.912':
3297
  $this->browser->channel = 'Beta';
3298
  break;
3302
  case '29.0.1547':
3303
  case '30.0.1599':
3304
  case '31.0.1650':
3305
+ case '32.0.1700':
3306
+ case '33.0.1750':
3307
+ case '34.0.1847':
3308
  $this->browser->version->details = 1;
3309
  break;
3310
  default:
3313
  }
3314
 
3315
  /* Webview for Android 4.4 and higher */
3316
+ if (implode('.', array_splice((explode('.', $match[1])), 1, 2)) == '0.0' && preg_match('/Version\//', $ua)) {
3317
  $this->browser->stock = true;
3318
  $this->browser->name = null;
3319
  $this->browser->version = null;
3342
  }
3343
 
3344
  else {
3345
+ switch (implode('.', array_splice((explode('.', $match[1])), 0, 3))) {
3346
  case '0.2.149':
3347
  case '0.3.154':
3348
  case '0.4.154':
3381
  case '29.0.1547':
3382
  case '30.0.1599':
3383
  case '31.0.1650':
3384
+ case '32.0.1700':
3385
+ case '33.0.1750':
3386
+ case '34.0.1847':
3387
  $this->browser->version->details = 1;
3388
  break;
3389
  default:
3578
 
3579
  if (preg_match('/NokiaBrowser/', $ua)) {
3580
  $this->browser->name = 'Nokia Browser';
3581
+ $this->browser->channel = null;
3582
 
3583
  if (preg_match('/NokiaBrowser\/([0-9.]*)/', $ua, $match)) {
3584
  $this->browser->version = new Version(array('value' => $match[1], 'details' => 3));
3613
  $this->device->model = $match[1];
3614
  $this->device->identified |= ID_PATTERN;
3615
 
3616
+ if (isset($this->device->model)) {
3617
+ $device = DeviceModels::identify('s40', $this->device->model);
3618
+ if ($device->identified) {
3619
+ $device->identified |= $this->device->identified;
3620
+ $this->device = $device;
3621
+ }
3622
+ }
3623
+
3624
+ if (isset($this->device->model)) {
3625
+ $device = DeviceModels::identify('asha', $this->device->model);
3626
+ if ($device->identified) {
3627
+ $device->identified |= $this->device->identified;
3628
+ $this->os->name = 'Nokia Asha Platform';
3629
+ $this->device = $device;
3630
+ }
3631
  }
3632
  }
3633
 
3855
  $this->browser->version = new Version(array('value' => $match[2]));
3856
  }
3857
 
3858
+ if (preg_match('/(?:Obigo|Teleca)[- ]([A-Z])([0-9.]*)[\/;]/i', $ua, $match)) {
3859
  $this->browser->name = 'Obigo ' . $match[1];
3860
  $this->browser->version = new Version(array('value' => $match[2]));
3861
  }
3862
 
3863
+ if (preg_match('/Browser\/(?:Obigo|Teleca)[_-](?:Browser\/)?([A-Z])([0-9.]*)/i', $ua, $match)) {
3864
  $this->browser->name = 'Obigo ' . $match[1];
3865
  $this->browser->version = new Version(array('value' => $match[2]));
3866
  }
4208
  array('name' => 'Baidu Browser', 'regexp' => '/FlyFlow\/([0-9.]*)/', 'details' => 2),
4209
  array('name' => 'Baidu Browser', 'regexp' => '/BIDUBrowser[ \/]([0-9.]*)/'),
4210
  array('name' => 'Baidu Browser', 'regexp' => '/BaiduHD\/([0-9.]*)/', 'details' => 2),
4211
+ array('name' => 'Baidu Spark', 'regexp' => '/BDSpark\/([0-9.]*)/', 'details' => 2),
4212
  array('name' => 'Black Wren', 'regexp' => '/BlackWren\/([0-9.]*)/', 'details' => 2),
4213
  array('name' => 'BrightSign', 'regexp' => '/BrightSign\/([0-9.]*)/', 'type' => TYPE_SIGNAGE),
4214
  array('name' => 'Byffox', 'regexp' => '/Byffox\/([0-9.]*)/', 'type' => TYPE_DESKTOP),
4272
  array('name' => 'Openwave', 'regexp' => '/Openwave\/([0-9.]*)/', 'details' => 2),
4273
  array('name' => 'Orca', 'regexp' => '/Orca\/([0-9.]*)/'),
4274
  array('name' => 'Origyn', 'regexp' => '/Origyn Web Browser/'),
4275
+ array('name' => 'Otter', 'regexp' => '/Otter Browser\/([0-9.]*)/'),
4276
  array('name' => 'Palemoon', 'regexp' => '/Pale[mM]oon\/([0-9.]*)/'),
4277
  array('name' => 'Phantom', 'regexp' => '/Phantom\/V([0-9.]*)/'),
4278
+ array('name' => 'Polaris', 'regexp' => '/Polaris[\/ ]v?([0-9.]*)/i', 'details' => 2),
4279
  array('name' => 'Qihoo 360', 'regexp' => '/QIHU THEWORLD/'),
4280
  array('name' => 'QtCreator', 'regexp' => '/QtCreator\/([0-9.]*)/'),
4281
  array('name' => 'QtQmlViewer', 'regexp' => '/QtQmlViewer/'),
4282
  array('name' => 'QtTestBrowser', 'regexp' => '/QtTestBrowser\/([0-9.]*)/'),
4283
  array('name' => 'QtWeb', 'regexp' => '/QtWeb Internet Browser\/([0-9.]*)/'),
4284
+ array('name' => 'QupZilla', 'regexp' => '/QupZilla\/([0-9.]*)/', 'type' => TYPE_DESKTOP),
4285
+ array('name' => 'Ryouko', 'regexp' => '/Ryouko\/([0-9.]*)/', 'type' => TYPE_DESKTOP), // see: https://github.com/foxhead128/ryouko
4286
  array('name' => 'Roccat', 'regexp' => '/Roccat\/([0-9]\.[0-9.]*)/'),
4287
  array('name' => 'Raven for Mac', 'regexp' => '/Raven for Mac\/([0-9.]*)/'),
4288
  array('name' => 'rekonq', 'regexp' => '/rekonq(?:\/([0-9.]*))?/', 'type' => TYPE_DESKTOP),
4314
  array('name' => 'WebRender', 'regexp' => '/WebRender/'),
4315
  array('name' => 'Webster', 'regexp' => '/Webster ([0-9.]*)/'),
4316
  array('name' => 'Wyzo', 'regexp' => '/Wyzo\/([0-9.]*)/', 'details' => 3),
4317
+ array('name' => 'Miui Browser', 'regexp' => '/XiaoMi\/MiuiBrowser\/([0-9.]*)/'),
4318
  array('name' => 'Yandex Browser', 'regexp' => '/YaBrowser\/([0-9.]*)/', 'details' => 2),
4319
  array('name' => 'Yelang', 'regexp' => '/Yelang\/([0-9.]*)/', 'details' => 3), // see: wellgo.org
4320
  array('name' => 'YRC Weblink', 'regexp' => '/YRCWeblink\/([0-9.]*)/'),
4658
  class BrowserIds {
4659
  static $ANDROID_BROWSERS = array();
4660
 
4661
+ static function identify($type, $model) {
4662
  require_once(_BASEPATH_ . '../data/id-' . $type . '.php');
4663
 
4664
  switch($type) {
4668
  return false;
4669
  }
4670
 
4671
+ static function identifyList($list, $id) {
4672
  if (isset($list[$id])) {
4673
  return $list[$id];
4674
  }
4680
  class BuildIds {
4681
  static $ANDROID_BUILDS = array();
4682
 
4683
+ static function identify($type, $id) {
4684
  require_once(_BASEPATH_ . '../data/build-' . $type . '.php');
4685
 
4686
  switch($type) {
4690
  return false;
4691
  }
4692
 
4693
+ static function identifyList($list, $id) {
4694
  if (isset($list[$id])) {
4695
  return new Version(array('value' => $list[$id]));
4696
  }
4704
  static $ASHA_MODELS = array();
4705
  static $BADA_MODELS = array();
4706
  static $BREW_MODELS = array();
4707
+ static $FIREFOXOS_MODELS = array();
4708
  static $TIZEN_MODELS = array();
4709
  static $TOUCHWIZ_MODELS = array();
4710
  static $WINDOWS_MOBILE_MODELS = array();
4716
  static $IOS_MODELS = array();
4717
 
4718
 
4719
+ static function identify($type, $model) {
4720
  require_once(_BASEPATH_ . '../data/models-' . $type . '.php');
4721
 
4722
  switch($type) {
4725
  case 'bada': return DeviceModels::identifyList(DeviceModels::$BADA_MODELS, $model);
4726
  case 'blackberry': return DeviceModels::identifyBlackBerry($model);
4727
  case 'brew': return DeviceModels::identifyList(DeviceModels::$BREW_MODELS, $model);
4728
+ case 'firefoxos': return DeviceModels::identifyList(DeviceModels::$FIREFOXOS_MODELS, $model);
4729
  case 'ios': return DeviceModels::identifyIOS($model);
4730
  case 'tizen': return DeviceModels::identifyList(DeviceModels::$TIZEN_MODELS, $model);
4731
  case 'touchwiz': return DeviceModels::identifyList(DeviceModels::$TOUCHWIZ_MODELS, $model);
4739
  return (object) array('type' => '', 'model' => $model, 'identified' => ID_NONE);
4740
  }
4741
 
4742
+ static function identifyIOS($model) {
4743
  $model = str_replace('Unknown ', '', $model);
4744
  $model = preg_replace("/iPh([0-9],[0-9])/", 'iPhone\\1', $model);
4745
  $model = preg_replace("/iPd([0-9],[0-9])/", 'iPod\\1', $model);
4747
  return DeviceModels::identifyList(DeviceModels::$IOS_MODELS, $model);
4748
  }
4749
 
4750
+ static function identifyAndroid($model) {
4751
  $result = DeviceModels::identifyList(DeviceModels::$ANDROID_MODELS, $model);
4752
 
4753
  if (!$result->identified) {
4765
  return $result;
4766
  }
4767
 
4768
+ static function identifyBlackBerry($model) {
4769
  $device = (object) array(
4770
  'type' => TYPE_MOBILE,
4771
  'identified' => ID_PATTERN,
4781
  return $device;
4782
  }
4783
 
4784
+ static function identifyList($list, $model) {
4785
  $model = DeviceModels::cleanup($model);
4786
 
4787
  $device = (object) array(
4816
  return $device;
4817
  }
4818
 
4819
+ static function cleanup($s = '') {
4820
  $s = preg_replace('/\/[^\/]+$/', '', $s);
4821
  $s = preg_replace('/\/[^\/]+ Android\/.*/', '', $s);
4822
 
4876
  class DeviceProfiles {
4877
  static $PROFILES = array();
4878
 
4879
+ static function identify($url) {
4880
  require_once(_BASEPATH_ . '../data/profiles.php');
4881
 
4882
  if (isset(DeviceProfiles::$PROFILES[$url])) {
4907
  return intval($this->value);
4908
  }
4909
  }
 
languages/en.pot CHANGED
@@ -548,9 +548,9 @@ msgid "Auto-Event Variable Macro"
548
  msgstr ""
549
 
550
  msgid ""
551
- "Here you can control which types of tags can be executed on your site "
552
- "regardless of what tags are included in your container on the Google Tag "
553
- "Manager site. Use this to increase security!"
554
  msgstr ""
555
 
556
  msgid ""
@@ -585,3 +585,78 @@ msgstr ""
585
 
586
  msgid "Block all, except the checked items below (whitelist)"
587
  msgstr ""
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
548
  msgstr ""
549
 
550
  msgid ""
551
+ "Here you can control which types of tags and macros can be executed on your "
552
+ "site regardless of what tags are included in your container on the Google "
553
+ "Tag Manager site. Use this to increase security!"
554
  msgstr ""
555
 
556
  msgid ""
585
 
586
  msgid "Block all, except the checked items below (whitelist)"
587
  msgstr ""
588
+
589
+ msgid ""
590
+ "Enable this to add <a href=\"%s\" target=\"_blank\">classic transaction</a> "
591
+ "data to the dataLayer after a successful order."
592
+ msgstr ""
593
+
594
+ msgid ""
595
+ "Enable this to fire a dataLayer event (gtm4wp.addProductToCart) when the "
596
+ "visitors adds a product to your cart."
597
+ msgstr ""
598
+
599
+ msgid ""
600
+ "Enable this to add Google AdWords dynamic remarketing variables to the "
601
+ "dataLayer"
602
+ msgstr ""
603
+
604
+ msgid "Weather data"
605
+ msgstr ""
606
+
607
+ msgid ""
608
+ "Check this option to include the current weather conditions around the "
609
+ "current visitor.<br /><strong>Attention!</strong> This feature uses <a href="
610
+ "\"%s\" target=\"_blank\">geoplugin.com</a> and <a href=\"%s\" target=\"_blank"
611
+ "\">openweathermap.org</a> to collect data.<br />Depending on your website's "
612
+ "traffic, additional fees may apply!<br />This plugin caches weather data for "
613
+ "1 hour to lower the need to access those services."
614
+ msgstr ""
615
+
616
+ msgid "Weather data units"
617
+ msgstr ""
618
+
619
+ msgid "Track classic e-commerce"
620
+ msgstr ""
621
+
622
+ msgid ""
623
+ "Choose this option if you would like to track e-commerce data using <a href="
624
+ "\"%s\" target=\"_blank\">classic transaction data</a>."
625
+ msgstr ""
626
+
627
+ msgid "Track enhanced e-commerce"
628
+ msgstr ""
629
+
630
+ msgid ""
631
+ "Choose this option if you would like to track e-commerce data using <a href="
632
+ "\"%s\" target=\"_blank\">enhanced ecommerce tracking</a>."
633
+ msgstr ""
634
+
635
+ msgid ""
636
+ "<br/>This feature is <strong>experimental</strong>. Currently it is not "
637
+ "recommended to be used in live environments!"
638
+ msgstr ""
639
+
640
+ msgid "Dismiss"
641
+ msgstr ""
642
+
643
+ msgid ""
644
+ "Notice: you should disable Google Analytics tracking <a href=\"admin.php?"
645
+ "page=woocommerce_settings&tab=integration&section=google_analytics\">in "
646
+ "WooCommerce settings</a> by leaving Google Analytics ID field empty if you "
647
+ "are using Google Analytics tags inside Google Tag Manager!"
648
+ msgstr ""
649
+
650
+ msgid ""
651
+ "Notice: you should deactivate the plugin \"WooCommerce Google Analytics "
652
+ "Integration\" if you are using Google Analytics tags inside Google Tag "
653
+ "Manager!"
654
+ msgstr ""
655
+
656
+ msgid ""
657
+ "Notice: you should deactivate the plugin \"Google Analytics for WordPress by "
658
+ "Yoast\" if you are using Google Analytics tags inside Google Tag Manager!"
659
+ msgstr ""
660
+
661
+ msgid "Select which temperature units you would like to use."
662
+ msgstr ""
languages/gtm4wp-lang-hu_HU.mo CHANGED
Binary file
languages/gtm4wp-lang-hu_HU.po CHANGED
@@ -658,20 +658,13 @@ msgid "Auto-Event Variable Macro"
658
  msgstr "Automatikus esemény változó makró"
659
 
660
  msgid ""
661
- "Here you can control which types of tags can be executed on your site "
662
- "regardless of what tags are included in your container on the Google Tag "
663
- "Manager site. Use this to increase security!"
664
  msgstr ""
665
- "Itt kezelheti, milyen típusú címkék jelenhetnek meg az oldalához rendelt "
666
- "tárolóból függetlenül attól, hogy mi lett létrehozva a Google Tag Manager "
667
- "oldalán. Használja a biztonság fokozására!"
668
-
669
- msgid ""
670
- "Here you can control which types of macros can work from your Google Tag "
671
- "Manager setup."
672
- msgstr ""
673
- "Itt beállíthatja, milyen makrók működhetnek a Google Tag Manager "
674
- "összeállításából."
675
 
676
  msgid ""
677
  "Do not modify if you do not know what to do since it can cause issues in "
@@ -704,3 +697,123 @@ msgstr "Minden engedélyezése, kivéve az alábbiakat (blacklist)"
704
 
705
  msgid "Block all, except the checked items below (whitelist)"
706
  msgstr "Minden tiltása, kivéve az alábbiakat (whitelist)"
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
658
  msgstr "Automatikus esemény változó makró"
659
 
660
  msgid ""
661
+ "Here you can control which types of tags and macros can be executed on your "
662
+ "site regardless of what tags are included in your container on the Google "
663
+ "Tag Manager site. Use this to increase security!"
664
  msgstr ""
665
+ "Itt kezelheti, milyen típusú címkék és makrók jelenhetnek meg az oldalához "
666
+ "rendelt tárolóból függetlenül attól, hogy mi lett létrehozva a Google Tag "
667
+ "Manager oldalán. Használja a biztonság fokozására!"
 
 
 
 
 
 
 
668
 
669
  msgid ""
670
  "Do not modify if you do not know what to do since it can cause issues in "
697
 
698
  msgid "Block all, except the checked items below (whitelist)"
699
  msgstr "Minden tiltása, kivéve az alábbiakat (whitelist)"
700
+
701
+ msgid "Posts"
702
+ msgstr "Bejegyzések"
703
+
704
+ msgid "Search"
705
+ msgstr "Keresés"
706
+
707
+ msgid "Visitors"
708
+ msgstr "Látogatók"
709
+
710
+ msgid "AdWords"
711
+ msgstr "AdWords"
712
+
713
+ msgid "Browser/OS/Device"
714
+ msgstr "Böngésző / Op. rendszer / Eszköz"
715
+
716
+ msgid ""
717
+ "Enable this to add <a href=\"%s\" target=\"_blank\">classic transaction</a> "
718
+ "data to the dataLayer after a successful order."
719
+ msgstr ""
720
+ "Engedélyezze ezt a beállítást <a href=\"%s\" target=\"_blank\">a klasszikus "
721
+ "tranzakció méréshez</a> sikeres rendelés során."
722
+
723
+ msgid ""
724
+ "Enable this to fire a dataLayer event (gtm4wp.addProductToCart) when the "
725
+ "visitors adds a product to your cart."
726
+ msgstr ""
727
+ "Engedélyezze ezt egy adatréteg esemény aktiválásához (gtm4wp."
728
+ "addProductToCart), amikor a felhasználó elhelyez egy terméket a kosárba."
729
+
730
+ msgid ""
731
+ "Enable this to add Google AdWords dynamic remarketing variables to the "
732
+ "dataLayer"
733
+ msgstr ""
734
+ "Engedélyezze ezt Google AdWords dinamikus remarketing változók "
735
+ "elhelyezéséhez az adatrétegben."
736
+
737
+ msgid "Weather data"
738
+ msgstr "Időjárás adatok"
739
+
740
+ msgid ""
741
+ "Check this option to include the current weather conditions around the "
742
+ "current visitor.<br /><strong>Attention!</strong> This feature uses <a href="
743
+ "\"%s\" target=\"_blank\">geoplugin.com</a> and <a href=\"%s\" target=\"_blank"
744
+ "\">openweathermap.org</a> to collect data.<br />Depending on your website's "
745
+ "traffic, additional fees may apply!<br />This plugin caches weather data for "
746
+ "1 hour to lower the need to access those services."
747
+ msgstr ""
748
+ "Kapcsolja ezt be, ha fel szeretné használni a látogató környezetében "
749
+ "tapasztalt időjárás adatokat.<br /><strong>Figyelem!</strong> Ez a funkció a "
750
+ "<a href=\"%s\" target=\"_blank\">geoplugin.com</a> és az <a href=\"%s\" "
751
+ "target=\"_blank\">openweathermap.org</a> szolgáltatásokat használja az "
752
+ "adatgyűjtéshez.<br />Weboldala forgalmától függően további költségek "
753
+ "terhelhetik!<br />Ez a plugin minden adatot egy órára eltárol az említett "
754
+ "szolgáltatások használatának csökkentésére."
755
+
756
+ msgid "Weather data units"
757
+ msgstr "Mértékegység"
758
+
759
+ msgid "Track classic e-commerce"
760
+ msgstr "Klasszikus e-kereskedelmi mérések"
761
+
762
+ msgid ""
763
+ "Choose this option if you would like to track e-commerce data using <a href="
764
+ "\"%s\" target=\"_blank\">classic transaction data</a>."
765
+ msgstr ""
766
+ "Kapcsolja ezt be, ha a <a href=\"%s\" target=\"_blank\">klasszikus "
767
+ "mérésekkel</a> szeretné mérni az e-kereskedelmi adatokat."
768
+
769
+ msgid "Track enhanced e-commerce"
770
+ msgstr "Fejlett e-kereskedelmi mérések"
771
+
772
+ msgid ""
773
+ "Choose this option if you would like to track e-commerce data using <a href="
774
+ "\"%s\" target=\"_blank\">enhanced ecommerce tracking</a>."
775
+ msgstr ""
776
+ "Kapcsolja ezt be, ha a <a href=\"%s\" target=\"_blank\">fejlett mérésekkel</"
777
+ "a> szeretné mérni az e-kereskedelmi adatokat."
778
+
779
+ msgid ""
780
+ "<br/>This feature is <strong>experimental</strong>. Currently it is not "
781
+ "recommended to be used in live environments!"
782
+ msgstr ""
783
+ "<br/>Ez a funkció <strong>kísérleti</strong>. Jelenleg nem javasolt éles "
784
+ "környezetben bekapcsolni!"
785
+
786
+ msgid "Dismiss"
787
+ msgstr "Elrejt"
788
+
789
+ msgid ""
790
+ "Notice: you should disable Google Analytics tracking <a href=\"admin.php?"
791
+ "page=woocommerce_settings&tab=integration&section=google_analytics\">in "
792
+ "WooCommerce settings</a> by leaving Google Analytics ID field empty if you "
793
+ "are using Google Analytics tags inside Google Tag Manager!"
794
+ msgstr ""
795
+ "Megjegyzés: érdemes kikapcsolni a Google Analytics mérést a <a href=\"admin."
796
+ "php?page=woocommerce_settings&tab=integration&section=google_analytics"
797
+ "\">WooCommerce beállításokban</a> a Google Analytics ID mező üresen "
798
+ "hagyásával, ha a Google Tag Manager tárolón belül Google Analytics mérést "
799
+ "használ!"
800
+
801
+ msgid ""
802
+ "Notice: you should deactivate the plugin \"WooCommerce Google Analytics "
803
+ "Integration\" if you are using Google Analytics tags inside Google Tag "
804
+ "Manager!"
805
+ msgstr ""
806
+ "Megjegyzés: érdemes kikapcsolni a \"WooCommerce Google Analytics Integration"
807
+ "\" plugint, ha Google Analytics címkéket használ a Google Tag Manager "
808
+ "tárolóján belül!"
809
+
810
+ msgid ""
811
+ "Notice: you should deactivate the plugin \"Google Analytics for WordPress by "
812
+ "Yoast\" if you are using Google Analytics tags inside Google Tag Manager!"
813
+ msgstr ""
814
+ "Megjegyzés: érdemes kikapcsolni a \"Google Analytics for WordPress by Yoast"
815
+ "\" plugint, ha Google Analytics címkéket használ a Google Tag Manager "
816
+ "tárolóján belül!"
817
+
818
+ msgid "Select which temperature units you would like to use."
819
+ msgstr "Válassza ki, milyen hőmérsékleti egységet szeretne használni."
public/frontend.php CHANGED
@@ -1,11 +1,11 @@
1
  <?php
2
- define( GTM4WP_WPFILTER_COMPILE_DATALAYER, "gtp4wp_compile_datalayer");
3
- define( GTM4WP_WPFILTER_COMPILE_REMARKTING, "gtp4wp_compile_remarkering");
4
 
5
- if ( $GLOBALS["gtm4wp_options"][ GTM4WP_OPTION_DATALAYER_NAME ] == "" ) {
6
- $GLOBALS["gtm4wp_datalayer_name"] = "dataLayer";
7
  } else {
8
- $GLOBALS["gtm4wp_datalayer_name"] = $GLOBALS["gtm4wp_options"][ GTM4WP_OPTION_DATALAYER_NAME ];
9
  }
10
 
11
  function gtm4wp_is_assoc($arr) {
@@ -44,7 +44,7 @@ function gtm4wp_add_basic_datalayer_data( $dataLayer ) {
44
  }
45
 
46
  if ( $gtm4wp_options[ GTM4WP_OPTION_INCLUDE_POSTTITLE ] ) {
47
- $dataLayer["pageTitle"] = wp_title( "|", false, "right" );
48
  }
49
 
50
  if ( is_singular() ) {
@@ -74,7 +74,10 @@ function gtm4wp_add_basic_datalayer_data( $dataLayer ) {
74
  }
75
 
76
  if ( $gtm4wp_options[ GTM4WP_OPTION_INCLUDE_AUTHOR ] ) {
77
- $dataLayer["pagePostAuthor"] = get_the_author();
 
 
 
78
  }
79
 
80
  if ( $gtm4wp_options[ GTM4WP_OPTION_INCLUDE_POSTDATE ] ) {
@@ -252,8 +255,8 @@ function gtm4wp_add_basic_datalayer_data( $dataLayer ) {
252
  $_gtmrestrictlistitems[] = "ua";
253
  }
254
 
255
- $_gtmwhitelist = array();
256
- $_gtmblacklist = array();
257
  if ( $gtm4wp_options[ GTM4WP_OPTION_BLACKLIST_ENABLE ] == 1 ) {
258
  $_gtmblacklist = array_merge($_gtmblacklist, $_gtmrestrictlistitems);
259
  } else {
@@ -307,10 +310,69 @@ function gtm4wp_add_basic_datalayer_data( $dataLayer ) {
307
  $dataLayer[ "gtm.whitelist" ] = $_gtmwhitelist;
308
  $dataLayer[ "gtm.blacklist" ] = $_gtmblacklist;
309
  }
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
310
 
311
  return $dataLayer;
312
  }
313
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
314
  function gtm4wp_get_the_gtm_tag() {
315
  global $gtm4wp_options, $gtm4wp_datalayer_name;
316
 
@@ -362,9 +424,8 @@ function gtm4wp_enqueue_scripts() {
362
  wp_enqueue_script( "gtm4wp-social-actions", $gtp4wp_plugin_url . "js/gtm4wp-social-tracker.js", array( "jquery" ), "1.0", false );
363
  }
364
 
365
- if ( $gtm4wp_options[ GTM4WP_OPTION_INTEGRATE_WOOCOMMERCE ] ) {
366
  require_once( dirname( __FILE__ ) . "/../integration/woocommerce.php" );
367
- // wp_enqueue_script( "gtm4wp-woocommerce-tracker", $gtp4wp_plugin_url . "js/gtm4wp-woocommerce-tracker.js", array( "jquery" ), "1.0", false );
368
  }
369
 
370
  if ( $gtm4wp_options[ GTM4WP_OPTION_SCROLLER_ENABLED ] ) {
@@ -465,6 +526,7 @@ add_action( "wp_enqueue_scripts", "gtm4wp_enqueue_scripts" );
465
  add_action( "wp_head", "gtm4wp_wp_header_begin", 1 );
466
  add_action( "wp_head", "gtm4wp_wp_header_end", 100 );
467
  add_action( "wp_footer", "gtm4wp_wp_footer" );
 
468
  add_filter( GTM4WP_WPFILTER_COMPILE_DATALAYER, "gtm4wp_add_basic_datalayer_data" );
469
 
470
  // to be able to easily migrate from other Google Tag Manager plugins
1
  <?php
2
+ define( 'GTM4WP_WPFILTER_COMPILE_DATALAYER', 'gtp4wp_compile_datalayer');
3
+ define( 'GTM4WP_WPFILTER_COMPILE_REMARKTING', 'gtp4wp_compile_remarkering');
4
 
5
+ if ( $GLOBALS[ "gtm4wp_options" ][ GTM4WP_OPTION_DATALAYER_NAME ] == "" ) {
6
+ $GLOBALS[ "gtm4wp_datalayer_name" ] = "dataLayer";
7
  } else {
8
+ $GLOBALS[ "gtm4wp_datalayer_name" ] = $GLOBALS[ "gtm4wp_options" ][ GTM4WP_OPTION_DATALAYER_NAME ];
9
  }
10
 
11
  function gtm4wp_is_assoc($arr) {
44
  }
45
 
46
  if ( $gtm4wp_options[ GTM4WP_OPTION_INCLUDE_POSTTITLE ] ) {
47
+ $dataLayer["pageTitle"] = strip_tags( wp_title( "|", false, "right" ) );
48
  }
49
 
50
  if ( is_singular() ) {
74
  }
75
 
76
  if ( $gtm4wp_options[ GTM4WP_OPTION_INCLUDE_AUTHOR ] ) {
77
+ $postuser = get_userdata( $GLOBALS["post"]->post_author );
78
+ if ( false !== $postuser ) {
79
+ $dataLayer["pagePostAuthor"] = $postuser->display_name;
80
+ }
81
  }
82
 
83
  if ( $gtm4wp_options[ GTM4WP_OPTION_INCLUDE_POSTDATE ] ) {
255
  $_gtmrestrictlistitems[] = "ua";
256
  }
257
 
258
+ $_gtmwhitelist = array();
259
+ $_gtmblacklist = array();
260
  if ( $gtm4wp_options[ GTM4WP_OPTION_BLACKLIST_ENABLE ] == 1 ) {
261
  $_gtmblacklist = array_merge($_gtmblacklist, $_gtmrestrictlistitems);
262
  } else {
310
  $dataLayer[ "gtm.whitelist" ] = $_gtmwhitelist;
311
  $dataLayer[ "gtm.blacklist" ] = $_gtmblacklist;
312
  }
313
+
314
+ if ( $gtm4wp_options[ GTM4WP_OPTION_INCLUDE_WEATHER ] ) {
315
+ $dataLayer[ "weatherCategory" ] = __( "(no wheather data available)", GTM4WP_TEXTDOMAIN );
316
+ $dataLayer[ "weatherDescription" ] = __( "(no wheather data available)", GTM4WP_TEXTDOMAIN );
317
+ $dataLayer[ "weatherTemp" ] = 0;
318
+ $dataLayer[ "weatherPressure" ] = 0;
319
+ $dataLayer[ "weatherWindSpeed" ] = 0;
320
+ $dataLayer[ "weatherWindDeg" ] = 0;
321
+
322
+ $gtm4wp_sessionid = array_key_exists( "gtm4wp_sessoionid", $_COOKIE ) ? $_COOKIE[ "gtm4wp_sessoionid" ] : "";
323
+ // this is needed so that nobody can do a hack by editing our cookie
324
+ $gtm4wp_sessionid = str_replace( "'", "", trim( basename( $gtm4wp_sessionid ) ) );
325
+
326
+ if ( "" !== $gtm4wp_sessionid ) {
327
+ $weatherdata = get_transient( 'gtm4wp-weatherdata-'.$gtm4wp_sessionid );
328
+
329
+ if ( false !== $weatherdata ) {
330
+ $dataLayer[ "weatherCategory" ] = $weatherdata->weather[0]->main;
331
+ $dataLayer[ "weatherDescription" ] = $weatherdata->weather[0]->description;
332
+ $dataLayer[ "weatherTemp" ] = $weatherdata->main->temp;
333
+ $dataLayer[ "weatherPressure" ] = $weatherdata->main->pressure;
334
+ $dataLayer[ "weatherWindSpeed" ] = $weatherdata->wind->speed;
335
+ $dataLayer[ "weatherWindDeg" ] = $weatherdata->wind->deg;
336
+ }
337
+ }
338
+ }
339
 
340
  return $dataLayer;
341
  }
342
 
343
+ function gtm4wp_wp_loaded() {
344
+ global $gtm4wp_options;
345
+
346
+ if ( $gtm4wp_options[ GTM4WP_OPTION_INCLUDE_WEATHER ] ) {
347
+ $gtm4wp_sessionid = array_key_exists( "gtm4wp_sessoionid", $_COOKIE ) ? $_COOKIE[ "gtm4wp_sessoionid" ] : "";
348
+ // this is needed so that nobody can do a hack by editing our cookie
349
+ $gtm4wp_sessionid = str_replace( "'", "", trim( basename( $gtm4wp_sessionid ) ) );
350
+
351
+ if ( "" === $gtm4wp_sessionid ) {
352
+ $gtm4wp_sessionid = substr( md5( date("Ymd_His").rand() ), 0, 20 );
353
+ setcookie( "gtm4wp_sessoionid", $gtm4wp_sessionid, time()+(60*60*24*365*2) );
354
+ }
355
+
356
+ $weatherdata = get_transient( 'gtm4wp-weatherdata-'.$gtm4wp_sessionid );
357
+
358
+ if ( false === $weatherdata ) {
359
+ $gtm4wp_geodata = @file_get_contents('http://www.geoplugin.net/php.gp?ip='.$_SERVER['REMOTE_ADDR']);
360
+ if ( $gtm4wp_geodata ) {
361
+ $gtm4wp_geodata = unserialize( $gtm4wp_geodata );
362
+ if ( array_key_exists( 'geoplugin_latitude', $gtm4wp_geodata ) && array_key_exists( 'geoplugin_longitude', $gtm4wp_geodata ) ) {
363
+ $weatherdata = @file_get_contents('http://api.openweathermap.org/data/2.5/weather?lat=' . $gtm4wp_geodata[ "geoplugin_latitude" ] . '&lon=' . $gtm4wp_geodata[ "geoplugin_longitude" ] . '&units=' . ($gtm4wp_options[ GTM4WP_OPTION_INCLUDE_WEATHERUNITS ] == 0 ? 'metric' : 'imperial'));
364
+ if ( $weatherdata ) {
365
+ $weatherdata = @json_decode( $weatherdata );
366
+ if ( is_object( $weatherdata ) ) {
367
+ set_transient( 'gtm4wp-weatherdata-'.$gtm4wp_sessionid, $weatherdata, 60 * 60 );
368
+ }
369
+ }
370
+ }
371
+ }
372
+ }
373
+ }
374
+ }
375
+
376
  function gtm4wp_get_the_gtm_tag() {
377
  global $gtm4wp_options, $gtm4wp_datalayer_name;
378
 
424
  wp_enqueue_script( "gtm4wp-social-actions", $gtp4wp_plugin_url . "js/gtm4wp-social-tracker.js", array( "jquery" ), "1.0", false );
425
  }
426
 
427
+ if ( isset ( $GLOBALS["woocommerce"] ) ) {
428
  require_once( dirname( __FILE__ ) . "/../integration/woocommerce.php" );
 
429
  }
430
 
431
  if ( $gtm4wp_options[ GTM4WP_OPTION_SCROLLER_ENABLED ] ) {
526
  add_action( "wp_head", "gtm4wp_wp_header_begin", 1 );
527
  add_action( "wp_head", "gtm4wp_wp_header_end", 100 );
528
  add_action( "wp_footer", "gtm4wp_wp_footer" );
529
+ add_action( "wp_loaded", "gtm4wp_wp_loaded" );
530
  add_filter( GTM4WP_WPFILTER_COMPILE_DATALAYER, "gtm4wp_add_basic_datalayer_data" );
531
 
532
  // to be able to easily migrate from other Google Tag Manager plugins
readme.txt CHANGED
@@ -3,8 +3,8 @@ Contributors: duracelltomi
3
  Donate link: http://duracelltomi.com/
4
  Tags: google tag manager, tag manager, gtm, google, adwords, google adwords, adwords remarketing, remarketing, google analytics, analytics
5
  Requires at least: 3.0.1
6
- Tested up to: 3.9
7
- Stable tag: 0.7.1
8
  License: GPLv3
9
  License URI: http://www.gnu.org/licenses/gpl.html
10
 
@@ -32,11 +32,6 @@ very easily since you can fire them using rules that include
32
  * logged in status
33
  * logged in user role
34
  * search data
35
- * browser data (name, version, engine) (!)
36
- * OS data (name, version) (!)
37
- * device data (type, manufacturer, model) (!)
38
-
39
- (!) Data is provided using the WhichBrowser library: http://whichbrowser.net/
40
 
41
  Use search data to generate Analytics events when an empty search result is being shown.
42
  This is useful to see what people are searching for that is not available on your site (for example a product).
@@ -44,9 +39,37 @@ This is useful to see what people are searching for that is not available on you
44
  Use post count to generate Analytics events when an empty result is being shown.
45
  This can be useful to catch empty (product) categories.
46
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
47
  = Tag Manager Events =
48
 
49
- This plugin can fire several Tag Manager events so that you can include special tags when
50
 
51
  * the visitor clicks on an outbound link
52
  * the visitor clicks on a download link
@@ -71,7 +94,7 @@ Scroll tracking is based on the solution originally created by
71
  * Eivind Savio
72
  * Justin Cutroni
73
 
74
- Oroginal script:
75
  http://cutroni.com/blog/2012/02/21/advanced-content-tracking-with-google-analytics-part-1/
76
 
77
  = Google AdWords remarketing =
@@ -97,9 +120,13 @@ Google Tag Manager for WordPress can integrate with several popular plugins.
97
 
98
  * Contact Form 7: fire an event after a successful form submission
99
  * WooCommerce:
100
- * fire event when visitors ads a product to your cart
101
- * include transaction data to be sent to Google/Universal Analytics
102
- * include necessary remarketing tags for Google AdWords Dynamic Remarketing
 
 
 
 
103
 
104
  More integration to come!
105
 
@@ -111,6 +138,22 @@ More integration to come!
111
 
112
  == Frequently Asked Questions ==
113
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
114
  = Why isn't there an option do blacklist tag/macro classes =
115
 
116
  Although Google recommends to blacklist tags and macros using classes, I found it complicated for people to understand
@@ -122,9 +165,9 @@ with any macro in your container.
122
 
123
  = How can I track add-to-cart events in WooCommerce =
124
 
125
- To track add-to-cart events you have to catch the dataLayer event gtm4wp.addToCart
126
 
127
- There are 3 additional dataLayer variables that can be accessed during the event:
128
 
129
  * productName: the name of the product where the cart button has been pressed
130
  * productSKU: the SKU you entered in your product settings
@@ -154,7 +197,7 @@ The ability to include a Google/Universal Analytics tag is only one feature you
154
 
155
  Therefore there is no need to have an option to exclude the container code snippet on certain cases.
156
 
157
- If you want to exclude logged in users or certain user roles, use the corresponting dataLayer variable (visitorType)
158
  and an exclude filter in Google Tag Manager.
159
 
160
  = How do I put the Google Tag Manager container code next to the opening body tag? =
@@ -171,7 +214,7 @@ If you can not find it, contact the author of the theme and ask for instructions
171
  In case you found the opening `<body>` tag, open a new line just after it and insert this line of code:
172
  `<?php if ( function_exists( 'gtm4wp_the_gtm_tag' ) ) { gtm4wp_the_gtm_tag(); } ?>`
173
 
174
- Be carefull not to include this line inside any `<div>`, `<p>`, `<header>`, `<article>` and so on.
175
  It can break you theme.
176
 
177
  = Why can not this plugin insert the container snippet after the opening body tag automatically? =
@@ -201,9 +244,18 @@ If you or your social plugin inserts the Facebook buttons using IFRAME-s (like S
201
 
202
  == Changelog ==
203
 
 
 
 
 
 
 
 
 
 
204
  = 0.7.1 =
205
 
206
- * Fixed: WooCommerce 2.1.x compatibility.
207
 
208
  = 0.7 =
209
 
@@ -223,7 +275,7 @@ If you or your social plugin inserts the Facebook buttons using IFRAME-s (like S
223
 
224
  = 0.5 =
225
  * Added: scroll tracking
226
- * Fixed: social tracking option on the admin panel was being shown as an edit box instead of a checbox
227
  * Fixed: WooCommerce transaction data was not included in the dataLayer if you selected "Custom" code placement
228
  * Fixed: do not do anything if you enabled WooCommerce integration but did not activate WooCommerce plugin itself
229
  * Updated: do not re-declare dataLayer variable if it already exists (because another script already created it before my plugin was run)
@@ -231,7 +283,7 @@ If you or your social plugin inserts the Facebook buttons using IFRAME-s (like S
231
  = 0.4 =
232
  * Added: you can now select container code placement. This way you can insert the code snippet after the opening body tag. Please read FAQ for details
233
  * Added: initial support for social event tracking for Facebook and Twitter buttons. Please read FAQ for details
234
- * Updated: event name on successful WooCommerce transacion: OrderCompleted -> gtm4wp.orderCompleted
235
  * Fixed: frontend JS codes did not load on some WordPress installs
236
 
237
  = 0.3 =
@@ -258,6 +310,12 @@ If you or your social plugin inserts the Facebook buttons using IFRAME-s (like S
258
 
259
  == Upgrade Notice ==
260
 
 
 
 
 
 
 
261
  = 0.7.1 =
262
 
263
  If you are using WooCommerce and updated to 2.1.x you SHOULD update immediatelly.
@@ -285,10 +343,10 @@ Important change: Tag Manager event name of a WooCommerce successful order has b
285
  See changelog for details.
286
 
287
  = 0.3 =
288
- This is a minor release. If you are using WooCommerce you should update to include more accurate adwords dynamic remarketing feature.
289
 
290
  = 0.2 =
291
- BACKWARD INCOMPATIBLE CHANGE: Names of Tag Manager click events has been changed to comply naming conventions.
292
  See changelog for details. Do not forget to update your Tag Manager container setup after upgrading this plugin!
293
 
294
  = 0.1 =
3
  Donate link: http://duracelltomi.com/
4
  Tags: google tag manager, tag manager, gtm, google, adwords, google adwords, adwords remarketing, remarketing, google analytics, analytics
5
  Requires at least: 3.0.1
6
+ Tested up to: 4.0
7
+ Stable tag: 0.8
8
  License: GPLv3
9
  License URI: http://www.gnu.org/licenses/gpl.html
10
 
32
  * logged in status
33
  * logged in user role
34
  * search data
 
 
 
 
 
35
 
36
  Use search data to generate Analytics events when an empty search result is being shown.
37
  This is useful to see what people are searching for that is not available on your site (for example a product).
39
  Use post count to generate Analytics events when an empty result is being shown.
40
  This can be useful to catch empty (product) categories.
41
 
42
+ = Browser / OS / Device data =
43
+
44
+ * browser data (name, version, engine)
45
+ * OS data (name, version)
46
+ * device data (type, manufacturer, model)
47
+
48
+ Data is provided using the WhichBrowser library: http://whichbrowser.net/
49
+
50
+ = Weather data =
51
+
52
+ Add the current weather conditions into the dataLayer so that you can use this information to generate special
53
+ remarketing lists and additional segmentation in your web analytics solution:
54
+
55
+ * weather category like clouds, rain, snow, etc.
56
+ * weather description: more detailed data
57
+ * temperature in Celsius or Fahrenheit
58
+ * air pressure
59
+ * wind speed and degrees
60
+
61
+ Weather data is queried from Open Weather Map. Depending on your websites traffic, additional fees may be applied:
62
+
63
+ http://openweathermap.org/price
64
+
65
+ To determine to current location of your visitor, this plugin uses geoplugin.net.
66
+ Depending on your websites traffic, additional fees may be applied:
67
+
68
+ http://www.geoplugin.com/premium
69
+
70
  = Tag Manager Events =
71
 
72
+ This plugin can fire several Tag Manager event so that you can include special tags when
73
 
74
  * the visitor clicks on an outbound link
75
  * the visitor clicks on a download link
94
  * Eivind Savio
95
  * Justin Cutroni
96
 
97
+ Original script:
98
  http://cutroni.com/blog/2012/02/21/advanced-content-tracking-with-google-analytics-part-1/
99
 
100
  = Google AdWords remarketing =
120
 
121
  * Contact Form 7: fire an event after a successful form submission
122
  * WooCommerce:
123
+ * Classic e-commerce:
124
+ * fire event when visitors ads a product to your cart
125
+ * include transaction data to be sent to Google/Universal Analytics
126
+ * include necessary remarketing tags for Google AdWords Dynamic Remarketing
127
+ * Enhanced e-commerce (experimental!):
128
+ * implementation of [Enhanced E-commerce](https://developers.google.com/tag-manager/enhanced-ecommerce)
129
+ * Does not include tracking of promotions since WooCommerce does not have such a feature (yet)
130
 
131
  More integration to come!
132
 
138
 
139
  == Frequently Asked Questions ==
140
 
141
+ = How can I implement enhanced e-commerce in Google Tag Manager =
142
+
143
+ First of all please remember that this feature of this plugin is still experimental and the feature of Google Analytics
144
+ is still in beta. Therefore it is recommended to create a separate web property to be used with enhanced e-commerce
145
+ in paralel to you current "classic" e-commerce tracking.
146
+
147
+ To be able to implement the necessary tags just follow the instructions shown on the official documentation of Google:
148
+ https://developers.google.com/tag-manager/enhanced-ecommerce
149
+
150
+ There is only one thing you have to change: event names:
151
+
152
+ * productClick -> gtm4wp.productClick
153
+ * addToCart -> gtm4wp.addProductToCart
154
+ * removeFromCart -> gtm4wp.removeProductFromCart
155
+ * promotionClick -> gtm4wp.promotionClick
156
+
157
  = Why isn't there an option do blacklist tag/macro classes =
158
 
159
  Although Google recommends to blacklist tags and macros using classes, I found it complicated for people to understand
165
 
166
  = How can I track add-to-cart events in WooCommerce =
167
 
168
+ To track add-to-cart events you have to catch the dataLayer event gtm4wp.addProductToCart
169
 
170
+ There are 3 additional dataLayer variables that can be accessed during the event using classic ecommerce tracking:
171
 
172
  * productName: the name of the product where the cart button has been pressed
173
  * productSKU: the SKU you entered in your product settings
197
 
198
  Therefore there is no need to have an option to exclude the container code snippet on certain cases.
199
 
200
+ If you want to exclude logged in users or certain user roles, use the corresponding dataLayer variable (visitorType)
201
  and an exclude filter in Google Tag Manager.
202
 
203
  = How do I put the Google Tag Manager container code next to the opening body tag? =
214
  In case you found the opening `<body>` tag, open a new line just after it and insert this line of code:
215
  `<?php if ( function_exists( 'gtm4wp_the_gtm_tag' ) ) { gtm4wp_the_gtm_tag(); } ?>`
216
 
217
+ Be careful not to include this line inside any `<div>`, `<p>`, `<header>`, `<article>` and so on.
218
  It can break you theme.
219
 
220
  = Why can not this plugin insert the container snippet after the opening body tag automatically? =
244
 
245
  == Changelog ==
246
 
247
+ = 0.8 =
248
+
249
+ * Updated: Added subtabs to the admin UI to make room for new features :-)
250
+ * Updated: WhichBrowser library to the latest version
251
+ * Added: You can now dismiss plugin notices permanently for each user
252
+ * Added: weather data. See updated plugin description for details
253
+ * Added: Enhanced E-commerce for WooCommerce (experimental!)
254
+ * Fixed: PHP notice in frontend.php script. Credit to Daniel Sousa
255
+
256
  = 0.7.1 =
257
 
258
+ * Fixed: WooCommerce 2.1.x compatibility
259
 
260
  = 0.7 =
261
 
275
 
276
  = 0.5 =
277
  * Added: scroll tracking
278
+ * Fixed: social tracking option on the admin panel was being shown as an edit box instead of a checkbox
279
  * Fixed: WooCommerce transaction data was not included in the dataLayer if you selected "Custom" code placement
280
  * Fixed: do not do anything if you enabled WooCommerce integration but did not activate WooCommerce plugin itself
281
  * Updated: do not re-declare dataLayer variable if it already exists (because another script already created it before my plugin was run)
283
  = 0.4 =
284
  * Added: you can now select container code placement. This way you can insert the code snippet after the opening body tag. Please read FAQ for details
285
  * Added: initial support for social event tracking for Facebook and Twitter buttons. Please read FAQ for details
286
+ * Updated: event name on successful WooCommerce transaction: OrderCompleted -> gtm4wp.orderCompleted
287
  * Fixed: frontend JS codes did not load on some WordPress installs
288
 
289
  = 0.3 =
310
 
311
  == Upgrade Notice ==
312
 
313
+ = 0.8 =
314
+
315
+ This version instroduces Enhanced E-commerce implementation for WooCommerce. Please note that this
316
+ feature of the plugin is still experimental and the feature of Google Analytics is still in beta.
317
+ Read the plugin FAQ for details.
318
+
319
  = 0.7.1 =
320
 
321
  If you are using WooCommerce and updated to 2.1.x you SHOULD update immediatelly.
343
  See changelog for details.
344
 
345
  = 0.3 =
346
+ This is a minor release. If you are using WooCommerce you should update to include more accurate AdWords dynamic remarketing feature.
347
 
348
  = 0.2 =
349
+ BACKWARD INCOMPATIBLE CHANGE: Names of Tag Manager click events has been changed to comply with naming conventions.
350
  See changelog for details. Do not forget to update your Tag Manager container setup after upgrading this plugin!
351
 
352
  = 0.1 =