diff --git a/.gitignore b/.gitignore
new file mode 100644
index 0000000..baff153
--- /dev/null
+++ b/.gitignore
@@ -0,0 +1,6 @@
+# Ignore configuration files that may contain sensitive information.
+sites/*/settings*.php
+
+# Ignore paths that contain user-generated content.
+sites/*/files
+sites/*/private
diff --git a/.htaccess b/.htaccess
index 9c4a161..9494b53 100644
--- a/.htaccess
+++ b/.htaccess
@@ -13,9 +13,6 @@ Options -Indexes
 # Follow symbolic links in this directory.
 Options +FollowSymLinks
 
-# Multiviews creates problems with aliased URLs and is not needed for Drupal.
-Options -Multiviews
-
 # Make Drupal handle any 404 errors.
 ErrorDocument 404 /index.php
 
@@ -138,5 +135,3 @@ DirectoryIndex index.php index.html index.htm
     </FilesMatch>
   </IfModule>
 </IfModule>
-
-# $Id$
diff --git a/CHANGELOG.txt b/CHANGELOG.txt
index 039a351..1b38308 100644
--- a/CHANGELOG.txt
+++ b/CHANGELOG.txt
@@ -1,8 +1,26 @@
 
-Drupal 8.0, xxxx-xx-xx (development version)
+Drupal 7.3-dev, xxxx-xx-xx (development version)
 ----------------------
 
-Drupal 7.0, 2011-01-05
+Drupal 7.2, 2011-05-25
+----------------------
+- Added a default .gitignore file.
+- Improved PostgreSQL and SQLite support.
+- Numerous critical performance improvements.
+- Numerous critical fixes to the upgrade path.
+- Numerous fixes to language and translation systems.
+- Numerous fixes to AJAX and #states systems.
+- Improvements to the locking system.
+- Numerous documentation fixes.
+- Numerous styling and theme system fixes.
+- Numerous fixes for schema mis-matches between Drupal 6 and 7.
+- Minor internal API clean-ups.
+
+Drupal 7.1, 2011-05-25
+----------------------
+- Fixed security issues (Cross site scripting, File access bypass), see SA-CORE-2011-001.
+
+Drupal 7.0, 2011-01-05 
 ----------------------
 - Database:
     * Fully rewritten database layer utilizing PHP 5's PDO abstraction layer.
@@ -221,6 +239,159 @@ Drupal 7.0, 2011-01-05
     * Added a locking framework to coordinate long-running operations across
       requests.
 
+Drupal 6.23-dev, xxxx-xx-xx (development release)
+-----------------------
+
+Drupal 6.22, 2011-05-25
+-----------------------
+- Made Drupal 6 work better with IIS and Internet Explorer.
+- Fixed .po file imports to work better with custom textgroups.
+- Improved code documentation at various places.
+- Fixed a variety of other bugs.
+
+Drupal 6.21, 2011-05-25
+----------------------
+- Fixed security issues (Cross site scripting), see SA-CORE-2011-001.
+
+Drupal 6.20, 2010-12-15
+----------------------
+- Fixed a variety of small bugs, improved code documentation.
+
+Drupal 6.19, 2010-08-11
+----------------------
+- Fixed a variety of small bugs, improved code documentation.
+
+Drupal 6.18, 2010-08-11
+----------------------
+- Fixed security issues (OpenID authentication bypass, File download access
+  bypass, Comment unpublishing bypass, Actions cross site scripting),
+  see SA-CORE-2010-002.
+
+Drupal 6.17, 2010-06-02
+----------------------
+- Improved PostgreSQL compatibility
+- Better PHP 5.3 and PHP 4 compatibility
+- Better browser compatibility of CSS and JS aggregation
+- Improved logging for login failures
+- Fixed an incompatibility with some contributed modules and the locking system
+- Fixed a variety of other bugs.
+
+Drupal 6.16, 2010-03-03
+----------------------
+- Fixed security issues (Installation cross site scripting, Open redirection,
+  Locale module cross site scripting, Blocked user session regeneration),
+  see SA-CORE-2010-001.
+- Better support for updated jQuery versions.
+- Reduced resource usage of update.module.
+- Fixed several issues relating to support of install profiles and
+  distributions.
+- Added a locking framework to avoid data corruption on long operations.
+- Fixed a variety of other bugs.
+
+Drupal 6.15, 2009-12-16
+----------------------
+- Fixed security issues (Cross site scripting), see SA-CORE-2009-009.
+- Fixed a variety of other bugs.
+
+Drupal 6.14, 2009-09-16
+----------------------
+- Fixed security issues (OpenID association cross site request forgeries,
+  OpenID impersonation and File upload), see SA-CORE-2009-008.
+- Changed the system modules page to not run all cache rebuilds; use the
+  button on the performance settings page to achieve the same effect.
+- Added support for PHP 5.3.0 out of the box.
+- Fixed a variety of small bugs.
+
+Drupal 6.13, 2009-07-01
+----------------------
+- Fixed security issues (Cross site scripting, Input format access bypass and
+  Password leakage in URL), see SA-CORE-2009-007.
+- Fixed a variety of small bugs.
+
+Drupal 6.12, 2009-05-13
+----------------------
+- Fixed security issues (Cross site scripting), see SA-CORE-2009-006.
+- Fixed a variety of small bugs.
+
+Drupal 6.11, 2009-04-29
+----------------------
+- Fixed security issues (Cross site scripting and limited information
+  disclosure), see SA-CORE-2009-005
+- Fixed performance issues with the menu router cache, the update
+  status cache and improved cache invalidation
+- Fixed a variety of small bugs.
+
+Drupal 6.10, 2009-02-25
+----------------------
+- Fixed a security issue, (Local file inclusion on Windows),
+  see SA-CORE-2009-003
+- Fixed node_feed() so custom fields can show up in RSS feeds.
+- Improved PostgreSQL compatibility.
+- Fixed a variety of small bugs.
+
+Drupal 6.9, 2009-01-14
+----------------------
+- Fixed security issues, (Access Bypass, Validation Bypass and Hardening
+  against SQL injection), see SA-CORE-2009-001
+- Made HTTP request checking more robust and informative.
+- Fixed HTTP_HOST checking to work again with HTTP 1.0 clients and
+  basic shell scripts.
+- Removed t() calls from all schema documentation. Suggested best practice
+  changed for contributed modules, see http://drupal.org/node/322731.
+- Fixed a variety of small bugs.
+
+Drupal 6.8, 2008-12-11
+----------------------
+- Removed a previous change incompatible with PHP 5.1.x and lower.
+
+Drupal 6.7, 2008-12-10
+----------------------
+- Fixed security issues, (Cross site request forgery and Cross site scripting), see SA-2008-073
+- Updated robots.txt and .htaccess to match current file use.
+- Fixed a variety of small bugs.
+
+Drupal 6.6, 2008-10-22
+----------------------
+- Fixed security issues, (File inclusion, Cross site scripting), see SA-2008-067
+- Fixed a variety of small bugs.
+
+Drupal 6.5, 2008-10-08
+----------------------
+- Fixed security issues, (File upload access bypass, Access rules bypass,
+  BlogAPI access bypass), see SA-2008-060.
+- Fixed a variety of small bugs.
+
+Drupal 6.4, 2008-08-13
+----------------------
+- Fixed a security issue (Cross site scripting, Arbitrary file uploads via
+  BlogAPI, Cross site request forgeries and Various Upload module
+  vulnerabilities), see SA-2008-047.
+- Improved error messages during installation.
+- Fixed a bug that prevented AHAH handlers to be attached to radios widgets.
+- Fixed a variety of small bugs.
+
+Drupal 6.3, 2008-07-09
+----------------------
+- Fixed security issues, (Cross site scripting, cross site request forgery,
+  session fixation and SQL injection), see SA-2008-044.
+- Slightly modified installation process to prevent file ownership issues on
+  shared hosts.
+- Improved PostgreSQL compatibility (rewritten queries; custom blocks).
+- Upgraded to jQuery 1.2.6.
+- Performance improvements to search, menu handling and form API caches.
+- Fixed Views compatibility issues (Views for Drupal 6 requires Drupal 6.3+).
+- Fixed a variety of small bugs.
+
+Drupal 6.2, 2008-04-09
+----------------------
+- Fixed a variety of small bugs.
+- Fixed a security issue (Access bypasses), see SA-2008-026.
+
+Drupal 6.1, 2008-02-27
+----------------------
+- Fixed a variety of small bugs.
+- Fixed a security issue (Cross site scripting), see SA-2008-018.
+
 Drupal 6.0, 2008-02-13
 ----------------------
 - New, faster and better menu system.
@@ -323,6 +494,95 @@ Drupal 6.0, 2008-02-13
 - Removed old system updates. Updates from Drupal versions prior to 5.x will
   require upgrading to 5.x before upgrading to 6.x.
 
+Drupal 5.23, 2010-08-11
+-----------------------
+- Fixed security issues (File download access bypass, Comment unpublishing
+  bypass), see SA-CORE-2010-002.
+
+Drupal 5.22, 2010-03-03
+-----------------------
+- Fixed security issues (Open redirection, Locale module cross site scripting,
+  Blocked user session regeneration), see SA-CORE-2010-001.
+
+Drupal 5.21, 2009-12-16
+-----------------------
+- Fixed a security issue (Cross site scripting), see SA-CORE-2009-009.
+- Fixed a variety of small bugs.
+
+Drupal 5.20, 2009-09-16
+-----------------------
+- Avoid security problems resulting from writing Drupal 6-style menu
+  declarations.
+- Fixed security issues (session fixation), see SA-CORE-2009-008.
+- Fixed a variety of small bugs.
+
+Drupal 5.19, 2009-07-01
+-----------------------
+- Fixed security issues (Cross site scripting and Password leakage in URL), see
+  SA-CORE-2009-007.          
+- Fixed a variety of small bugs.
+
+Drupal 5.18, 2009-05-13
+-----------------------
+- Fixed security issues (Cross site scripting), see SA-CORE-2009-006.
+- Fixed a variety of small bugs.
+
+Drupal 5.17, 2009-04-29
+-----------------------
+- Fixed security issues (Cross site scripting and limited information
+  disclosure) see SA-CORE-2009-005.
+- Fixed a variety of small bugs.
+
+Drupal 5.16, 2009-02-25
+-----------------------
+- Fixed a security issue, (Local file inclusion on Windows), see SA-CORE-2009-004.
+- Fixed a variety of small bugs.
+
+Drupal 5.15, 2009-01-14
+-----------------------
+- Fixed security issues, (Hardening against SQL injection), see
+  SA-CORE-2009-001
+- Fixed HTTP_HOST checking to work again with HTTP 1.0 clients and basic shell
+  scripts.
+- Fixed a variety of small bugs.
+
+Drupal 5.14, 2008-12-11
+-----------------------
+- removed a previous change incompatible with PHP 5.1.x and lower.
+
+Drupal 5.13, 2008-12-10
+-----------------------
+- fixed a variety of small bugs.
+- fixed security issues, (Cross site request forgery and Cross site scripting), see SA-2008-073
+- updated robots.txt and .htaccess to match current file use.
+
+Drupal 5.12, 2008-10-22
+-----------------------
+- fixed security issues, (File inclusion), see SA-2008-067
+
+Drupal 5.11, 2008-10-08
+-----------------------
+- fixed a variety of small bugs.
+- fixed security issues, (File upload access bypass, Access rules bypass,
+  BlogAPI access bypass, Node validation bypass), see SA-2008-060
+
+Drupal 5.10, 2008-08-13
+-----------------------
+- fixed a variety of small bugs.
+- fixed security issues, (Cross site scripting, Arbitrary file uploads via
+  BlogAPI and Cross site request forgery), see SA-2008-047
+
+Drupal 5.9, 2008-07-23
+----------------------
+- fixed a variety of small bugs.
+- fixed security issues, (Session fixation), see SA-2008-046
+
+Drupal 5.8, 2008-07-09
+----------------------
+- fixed a variety of small bugs.
+- fixed security issues, (Cross site scripting, cross site request forgery, and
+  session fixation), see SA-2008-044
+
 Drupal 5.7, 2008-01-28
 ----------------------
 - fixed the input format configuration page.
diff --git a/COPYRIGHT.txt b/COPYRIGHT.txt
index 693ca01..e983474 100644
--- a/COPYRIGHT.txt
+++ b/COPYRIGHT.txt
@@ -3,7 +3,8 @@ All Drupal code is Copyright 2001 - 2010 by the original authors.
 
 This program is free software; you can redistribute it and/or modify
 it under the terms of the GNU General Public License as published by
-the Free Software Foundation.
+the Free Software Foundation; either version 2 of the License, or (at
+your option) any later version.
 
 This program is distributed in the hope that it will be useful, but
 WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY
diff --git a/MAINTAINERS.txt b/MAINTAINERS.txt
index e94fdf9..97f2d63 100644
--- a/MAINTAINERS.txt
+++ b/MAINTAINERS.txt
@@ -10,8 +10,9 @@ particular areas of Drupal.  All of them are subject to change.
 Branch maintainers
 ------------------
 
-Drupal 8
+Drupal 7
 - Dries Buytaert 'dries' <http://drupal.org/user/1>
+- Angela Byron 'webchick' <http://drupal.org/user/24967>
 
 
 Component maintainers
@@ -125,7 +126,7 @@ Topic coordinators
 
 Accessibility
 - Everett Zufelt 'Everett Zufelt' <http://drupal.org/user/406552>
-- Brandon Bowersox 'brandonojc' <http://drupal.org/user/186415>
+- Brandon Bowersox 'brandonojc' <http://drupal.org/user/186415> 
 
 Documentation
 - Ariane Khachatourians 'arianek' <http://drupal.org/user/158886>
@@ -208,6 +209,7 @@ Node module
 - David Strauss 'David Strauss' <http://drupal.org/user/93254>
 
 OpenID module
+- Vojtech Kusy 'wojtha' <http://drupal.org/user/56154>
 - Heine Deelstra 'Heine' <http://drupal.org/user/17943>
 - Christian Schmidt 'c960657' <http://drupal.org/user/216078>
 - Damien Tournoud 'DamZ' <http://drupal.org/user/22211>
diff --git a/UPGRADE.txt b/UPGRADE.txt
index edef885..d4909d8 100644
--- a/UPGRADE.txt
+++ b/UPGRADE.txt
@@ -3,10 +3,10 @@ INTRODUCTION
 ------------
 This document describes how to:
 
-  * Update your Drupal site from one minor 8.x version to another minor 8.x
-    version; for example, from 8.8 to 8.9, or from 8.6 to 8.10.
+  * Update your Drupal site from one minor 7.x version to another minor 7.x
+    version; for example, from 7.8 to 7.9, or from 7.6 to 7.10.
 
-  * Upgrade your Drupal site's major version from 7.x to 8.x.
+  * Upgrade your Drupal site's major version from 6.x to 7.x.
 
 First steps and definitions:
 
@@ -43,7 +43,7 @@ More in-depth information on upgrading can be found at http://drupal.org/upgrade
 
 MINOR VERSION UPDATES
 ---------------------
-To update from one minor 8.x version of Drupal to any later 8.x version, after
+To update from one minor 7.x version of Drupal to any later 7.x version, after
 following the instructions in the INTRODUCTION section at the top of this file:
 
 1. Log in as a user with the permission "Administer software updates".
@@ -64,7 +64,7 @@ following the instructions in the INTRODUCTION section at the top of this file:
    giving the database name, user, and password) from the old settings.php to
    the new settings.php.
 
-4. Download the latest Drupal 8.x release from http://drupal.org to a
+4. Download the latest Drupal 7.x release from http://drupal.org to a
    directory outside of your web root. Extract the archive and copy the files
    into your Drupal directory.
 
@@ -113,31 +113,31 @@ following the instructions in the INTRODUCTION section at the top of this file:
 
 MAJOR VERSION UPGRADE
 ---------------------
-To upgrade from a previous major version of Drupal to Drupal 8.x, after
+To upgrade from a previous major version of Drupal to Drupal 7.x, after
 following the instructions in the INTRODUCTION section at the top of this file:
 
-1. Check on the Drupal 8 status of your contributed and custom modules and
+1. Check on the Drupal 7 status of your contributed and custom modules and
    themes. See http://drupal.org/node/948216 for information on upgrading
    contributed modules and themes. See http://drupal.org/node/895314 for a list
-   of modules that have been moved into core for Drupal 8, and instructions on
+   of modules that have been moved into core for Drupal 7, and instructions on
    how to update them. See http://drupal.org/update/modules for information on
    how to update your custom modules, and http://drupal.org/update/theme for
    custom themes.
 
    You may decide at this point that you cannot upgrade your site, because
-   needed modules or themes are not ready for Drupal 8
+   needed modules or themes are not ready for Drupal 7.
 
-2. Update to the latest available version of Drupal 7.x (if your current version
-   is Drupal 6.x, you have to upgrade to 7.x first). If you need to update,
-   download Drupal 7.x and follow the instructions in its UPGRADE.txt. This
-   document only applies for upgrades from 7.x to 8.x.
+2. Update to the latest available version of Drupal 6.x (if your current version
+   is Drupal 5.x, you have to upgrade to 6.x first). If you need to update,
+   download Drupal 6.x and follow the instructions in its UPGRADE.txt. This
+   document only applies for upgrades from 6.x to 7.x.
 
 3. Log in as user ID 1 (the site maintenance user).
 
 4. Go to Administer > Site configuration > Site maintenance. Select
    "Off-line" and save the configuration.
 
-5. Go to Administer > Site building > Themes. Enable "Bartik" and select it as
+5. Go to Administer > Site building > Themes. Enable "Garland" and select it as
    the default theme.
 
 6. Go to Administer > Site building > Modules. Disable all modules that are not
@@ -145,7 +145,7 @@ following the instructions in the INTRODUCTION section at the top of this file:
    modules cannot be disabled, because others depend on them. Repeat this step
    until all non-core modules are disabled.
 
-   If you know that you will not re-enable some modules for Drupal 8.x and you
+   If you know that you will not re-enable some modules for Drupal 7.x and you
    no longer need their data, then you can uninstall them under the Uninstall
    tab after disabling them.
 
@@ -161,9 +161,9 @@ following the instructions in the INTRODUCTION section at the top of this file:
 
 9. If you uninstalled any modules, remove them from the sites/all/modules and
    other sites/*/modules directories. Leave other modules in place, even though
-   they are incompatible with Drupal 8.x.
+   they are incompatible with Drupal 7.x.
 
-10. Download the latest Drupal 8.x release from http://drupal.org to a
+10. Download the latest Drupal 7.x release from http://drupal.org to a
    directory outside of your web root. Extract the archive and copy the files
    into your Drupal directory.
 
@@ -185,7 +185,7 @@ following the instructions in the INTRODUCTION section at the top of this file:
 11. Re-apply any modifications to files such as .htaccess or robots.txt.
 
 12. Make your settings.php file writeable, so that the update process can
-   convert it to the format of Drupal 8.x. settings.php is usually located in
+   convert it to the format of Drupal 7.x. settings.php is usually located in
 
      sites/default/settings.php
 
@@ -221,3 +221,4 @@ following the instructions in the INTRODUCTION section at the top of this file:
 
 To get started with Drupal 7 administration, visit
 http://drupal.org/getting-started/7/admin
+
diff --git a/includes/authorize.inc b/includes/authorize.inc
index 979a980..3617d7d 100644
--- a/includes/authorize.inc
+++ b/includes/authorize.inc
@@ -159,7 +159,7 @@ function _authorize_filetransfer_connection_settings($backend) {
  * Therefore, to properly add defaults, we need to walk through all the
  * children form elements and process those defaults recursively.
  *
- * @param &$element
+ * @param $element
  *   Reference to the Form API form element we're operating on.
  * @param $key
  *   The key for our current form element, if any.
diff --git a/includes/bootstrap.inc b/includes/bootstrap.inc
index 4875f4b..a5dec69 100644
--- a/includes/bootstrap.inc
+++ b/includes/bootstrap.inc
@@ -8,12 +8,12 @@
 /**
  * The current system version.
  */
-define('VERSION', '8.0-dev');
+define('VERSION', '7.3-dev');
 
 /**
  * Core API compatibility.
  */
-define('DRUPAL_CORE_COMPATIBILITY', '8.x');
+define('DRUPAL_CORE_COMPATIBILITY', '7.x');
 
 /**
  * Minimum supported version of PHP.
@@ -1250,6 +1250,10 @@ function drupal_unpack($obj, $field = 'data') {
  * then rearrange the string as necessary for the language (e.g., in Spanish,
  * it might be "blog de @name").
  *
+ * During the Drupal installation phase, some resources used by t() wil not be
+ * available to code that needs localization. See st() and get_t() for
+ * alternatives.
+ *
  * @param $string
  *   A string containing the English string to translate.
  * @param $args
@@ -1273,6 +1277,8 @@ function drupal_unpack($obj, $field = 'data') {
  * @return
  *   The translated string.
  *
+ * @see st()
+ * @see get_t()
  * @ingroup sanitization
  */
 function t($string, array $args = array(), array $options = array()) {
@@ -1515,8 +1521,8 @@ function watchdog($type, $message, $variables = array(), $severity = WATCHDOG_NO
  * messages without clearing them.
  *
  * @param $message
- *   The message should begin with a capital letter and always ends with a
- *   period '.'.
+ *   The message to be displayed to the user. For consistency with other
+ *   messages, it should begin with a capital letter and end with a period.
  * @param $type
  *   The type of the message. One of the following values are possible:
  *   - 'status'
@@ -2235,8 +2241,30 @@ function drupal_installation_attempted() {
 }
 
 /**
- * Return the name of the localization function. Use in code that needs to
- * run both during installation and normal operation.
+ * Returns the name of the proper localization function.
+ *
+ * get_t() exists to support localization for code that might run during
+ * the installation phase, when some elements of the system might not have
+ * loaded.
+ *
+ * This would include implementations of hook_install(), which could run
+ * during the Drupal installation phase, and might also be run during
+ * non-installation time, such as while installing the module from the the
+ * module administration page.
+ *
+ * Example useage:
+ * @code
+ *   $t = get_t();
+ *   $translated = $t('translate this');
+ * @endcode
+ *
+ * Use t() if your code will never run during the Drupal installation phase.
+ * Use st() if your code will only run during installation and never any other
+ * time. Use get_t() if your code could run in either circumstance.
+ *
+ * @see t()
+ * @see st()
+ * @ingroup sanitization
  */
 function get_t() {
   static $t;
@@ -2292,6 +2320,9 @@ function drupal_language_types() {
  * Return true if there is more than one language enabled.
  */
 function drupal_multilingual() {
+  // The "language_count" variable stores the number of enabled languages to
+  // avoid unnecessarily querying the database when building the list of
+  // enabled languages on monolingual sites.
   return variable_get('language_count', 1) > 1;
 }
 
@@ -2363,6 +2394,8 @@ function language_default($property = NULL) {
  *   base_path() returns "/drupalfolder/".
  * - http://example.com/path/alias (which is a path alias for node/306) returns
  *   "path/alias" as opposed to the internal path.
+ * - http://example.com/index.php returns an empty string (meaning: front page).
+ * - http://example.com/index.php?page=1 returns an empty string.
  *
  * @return
  *   The requested Drupal URL path.
@@ -2384,11 +2417,19 @@ function request_path() {
     $path = $_GET['q'];
   }
   elseif (isset($_SERVER['REQUEST_URI'])) {
-    // This is a request using a clean URL. Extract the path from REQUEST_URI.
+    // This request is either a clean URL, or 'index.php', or nonsense.
+    // Extract the path from REQUEST_URI.
     $request_path = strtok($_SERVER['REQUEST_URI'], '?');
     $base_path_len = strlen(rtrim(dirname($_SERVER['SCRIPT_NAME']), '\/'));
     // Unescape and strip $base_path prefix, leaving q without a leading slash.
     $path = substr(urldecode($request_path), $base_path_len + 1);
+    // If the path equals the script filename, either because 'index.php' was
+    // explicitly provided in the URL, or because the server added it to
+    // $_SERVER['REQUEST_URI'] even when it wasn't provided in the URL (some
+    // versions of Microsoft IIS do this), the front page should be served.
+    if ($path == basename($_SERVER['PHP_SELF'])) {
+      $path = '';
+    }
   }
   else {
     // This is the front page.
diff --git a/includes/common.inc b/includes/common.inc
index eb68850..c0f2351 100644
--- a/includes/common.inc
+++ b/includes/common.inc
@@ -626,15 +626,14 @@ function drupal_encode_path($path) {
  * This issues an on-site HTTP redirect. The function makes sure the redirected
  * URL is formatted correctly.
  *
- * If a destination was specified in the current request's URI (i.e.,
- * $_GET['destination']) then it will override the $path and $options values
- * passed to this function. This provides the flexibility to build a link to
- * user/login and override the default redirection so that the user is
- * redirected to a specific path after logging in:
- * @code
- *   $destination = array('destination' => "node/$node->nid");
- *   l(t('Log in'), array('@login' => url('user/login', array('query' => array($destination)))));
- * @endcode
+ * Usually the redirected URL is constructed from this function's input
+ * parameters. However you may override that behavior by setting a
+ * destination in either the $_REQUEST-array (i.e. by using
+ * the query string of an URI) This is used to direct the user back to
+ * the proper page after completing a form. For example, after editing
+ * a post on the 'admin/content'-page or after having logged on using the
+ * 'user login'-block in a sidebar. The function drupal_get_destination()
+ * can be used to help set the destination URL.
  *
  * Drupal will ensure that messages set by drupal_set_message() and other
  * session data are written to the database before the user is redirected.
@@ -915,7 +914,9 @@ function drupal_http_request($url, array $options = array()) {
     return $result;
   }
   // Parse response headers from the response body.
-  list($response, $result->data) = explode("\r\n\r\n", $response, 2);
+  // Be tolerant of malformed HTTP responses that separate header and body with
+  // \n\n or \r\r instead of \r\n\r\n.
+  list($response, $result->data) = preg_split("/\r\n\r\n|\n\n|\r\r/", $response, 2);
   $response = preg_split("/\r\n|\n|\r/", $response);
 
   // Parse the response status line.
@@ -2821,6 +2822,8 @@ function drupal_add_html_head_link($attributes, $header = FALSE) {
  *
  * @return
  *   An array of queued cascading stylesheets.
+ *
+ * @see drupal_get_css()
  */
 function drupal_add_css($data = NULL, $options = NULL) {
   $css = &drupal_static(__FUNCTION__, array());
@@ -2901,8 +2904,11 @@ function drupal_add_css($data = NULL, $options = NULL) {
  *   (optional) If set to TRUE, this function skips calling drupal_alter() on
  *   $css, useful when the calling function passes a $css array that has already
  *   been altered.
+ *
  * @return
  *   A string of XHTML CSS tags.
+ *
+ * @see drupal_add_css()
  */
 function drupal_get_css($css = NULL, $skip_alter = FALSE) {
   if (!isset($css)) {
@@ -3949,10 +3955,15 @@ function drupal_add_js($data = NULL, $options = NULL) {
     // Add jquery.js and drupal.js, as well as the basePath setting, the
     // first time a JavaScript file is added.
     if (empty($javascript)) {
+      // url() generates the prefix using hook_url_outbound_alter(). Instead of
+      // running the hook_url_outbound_alter() again here, extract the prefix
+      // from url().
+      url('', array('prefix' => &$prefix));
       $javascript = array(
         'settings' => array(
           'data' => array(
             array('basePath' => base_path()),
+            array('pathPrefix' => empty($prefix) ? '' : $prefix),
           ),
           'type' => 'setting',
           'scope' => 'header',
@@ -6309,7 +6320,7 @@ function drupal_array_set_nested_value(array &$array, array $parents, $value, $f
  *   The array from which to get the value.
  * @param $parents
  *   An array of parent keys of the value, starting with the outermost key.
- * @param &$key_exists
+ * @param $key_exists
  *   (optional) If given, an already defined variable that is altered by
  *   reference.
  *
@@ -7173,7 +7184,7 @@ function debug($data, $label = NULL, $print_r = FALSE) {
  * Parse a dependency for comparison by drupal_check_incompatibility().
  *
  * @param $dependency
- *   A dependency string, for example 'foo (>=8.x-4.5-beta5, 3.x)'.
+ *   A dependency string, for example 'foo (>=7.x-4.5-beta5, 3.x)'.
  * @return
  *   An associative array with three keys:
  *   - 'name' includes the name of the thing to depend on (e.g. 'foo').
@@ -7190,7 +7201,7 @@ function drupal_parse_dependency($dependency) {
   // We use named subpatterns and support every op that version_compare
   // supports. Also, op is optional and defaults to equals.
   $p_op = '(?P<operation>!=|==|=|<|<=|>|>=|<>)?';
-  // Core version is always optional: 8.x-2.x and 2.x is treated the same.
+  // Core version is always optional: 7.x-2.x and 2.x is treated the same.
   $p_core = '(?:' . preg_quote(DRUPAL_CORE_COMPATIBILITY) . '-)?';
   $p_major = '(?P<major>\d+)';
   // By setting the minor version to x, branches can be matched.
@@ -7425,7 +7436,8 @@ function entity_create_stub_entity($entity_type, $ids) {
  *   Whether to reset the internal cache for the requested entity type.
  *
  * @return
- *   An array of entity objects indexed by their ids.
+ *   An array of entity objects indexed by their ids. When no results are
+ *   found, an empty array is returned.
  *
  * @todo Remove $conditions in Drupal 8.
  */
@@ -7490,8 +7502,15 @@ function entity_get_controller($entity_type) {
  *   The type of entity, i.e. 'node', 'user'.
  * @param $entities
  *   The entity objects which are being prepared for view, keyed by object ID.
+ * @param $langcode
+ *   (optional) A language code to be used for rendering. Defaults to the global
+ *   content language of the current request.
  */
-function entity_prepare_view($entity_type, $entities) {
+function entity_prepare_view($entity_type, $entities, $langcode = NULL) {
+  if (!isset($langcode)) {
+    $langcode = $GLOBALS['language_content']->language;
+  }
+
   // To ensure hooks are only run once per entity, check for an
   // entity_view_prepared flag and only process items without it.
   // @todo: resolve this more generally for both entity and field level hooks.
@@ -7507,7 +7526,7 @@ function entity_prepare_view($entity_type, $entities) {
   }
 
   if (!empty($prepare)) {
-    module_invoke_all('entity_prepare_view', $prepare, $entity_type);
+    module_invoke_all('entity_prepare_view', $prepare, $entity_type, $langcode);
   }
 }
 
@@ -7582,7 +7601,7 @@ function entity_label($entity_type, $entity) {
   $label = FALSE;
   $info = entity_get_info($entity_type);
   if (isset($info['label callback']) && function_exists($info['label callback'])) {
-    $label = $info['label callback']($entity);
+    $label = $info['label callback']($entity, $entity_type);
   }
   elseif (!empty($info['entity keys']['label']) && isset($entity->{$info['entity keys']['label']})) {
     $label = $entity->{$info['entity keys']['label']};
diff --git a/includes/database/database.inc b/includes/database/database.inc
index 4a3cbb4..4cc1a33 100644
--- a/includes/database/database.inc
+++ b/includes/database/database.inc
@@ -320,7 +320,7 @@ abstract class DatabaseConnection extends PDO {
    *   PDO::FETCH_OBJ, PDO::FETCH_NUM, or a string representing the name of a
    *   class. If a string is specified, each record will be fetched into a new
    *   object of that class. The behavior of all other values is defined by PDO.
-   *   See http://www.php.net/PDOStatement-fetch
+   *   See http://php.net/manual/pdostatement.fetch.php
    * - return: Depending on the type of query, different return values may be
    *   meaningful. This directive instructs the system which type of return
    *   value is desired. The system will generally set the correct value
@@ -541,6 +541,63 @@ abstract class DatabaseConnection extends PDO {
   }
 
   /**
+   * Flatten an array of query comments into a single comment string.
+   *
+   * The comment string will be sanitized to avoid SQL injection attacks.
+   *
+   * @param $comments
+   *   An array of query comment strings.
+   *
+   * @return
+   *   A sanitized comment string.
+   */
+  public function makeComment($comments) {
+    if (empty($comments))
+      return '';
+
+    // Flatten the array of comments.
+    $comment = implode('; ', $comments);
+
+    // Sanitize the comment string so as to avoid SQL injection attacks.
+    return '/* ' . $this->filterComment($comment) . ' */ ';
+  }
+
+  /**
+   * Sanitize a query comment string.
+   *
+   * Ensure a query comment does not include strings such as "* /" that might
+   * terminate the comment early. This avoids SQL injection attacks via the
+   * query comment. The comment strings in this example are separated by a
+   * space to avoid PHP parse errors.
+   *
+   * For example, the comment:
+   * @code
+   * db_update('example')
+   *  ->condition('id', $id)
+   *  ->fields(array('field2' => 10))
+   *  ->comment('Exploit * / DROP TABLE node; --')
+   *  ->execute()
+   * @endcode
+   *
+   * Would result in the following SQL statement being generated:
+   * @code
+   * "/ * Exploit * / DROP TABLE node; -- * / UPDATE example SET field2=..."
+   * @endcode
+   *
+   * Unless the comment is sanitised first, the SQL server would drop the
+   * node table and ignore the rest of the SQL statement.
+   *
+   * @param $comment
+   *   A query comment string.
+   *
+   * @return
+   *   A sanitized version of the query comment string.
+   */
+  protected function filterComment($comment = '') {
+    return preg_replace('/(\/\*\s*)|(\s*\*\/)/', '', $comment);
+  }
+
+  /**
    * Executes a query string against the database.
    *
    * This method provides a central handler for the actual execution of every
diff --git a/includes/database/mysql/database.inc b/includes/database/mysql/database.inc
index 262cc60..bc31fea 100644
--- a/includes/database/mysql/database.inc
+++ b/includes/database/mysql/database.inc
@@ -133,6 +133,58 @@ class DatabaseConnection_mysql extends DatabaseConnection {
     catch (PDOException $e) {
     }
   }
+
+  /**
+   * Overridden to work around issues to MySQL not supporting transactional DDL.
+   */
+  public function popTransaction($name) {
+    if (!$this->supportsTransactions()) {
+      return;
+    }
+    if (!$this->inTransaction()) {
+      throw new DatabaseTransactionNoActiveException();
+    }
+
+    // Commit everything since SAVEPOINT $name.
+    while ($savepoint = array_pop($this->transactionLayers)) {
+      if ($savepoint != $name) {
+        continue;
+      }
+
+      // If there are no more layers left then we should commit.
+      if (empty($this->transactionLayers)) {
+        if (!PDO::commit()) {
+          throw new DatabaseTransactionCommitFailedException();
+        }
+      }
+      else {
+        // Attempt to release this savepoint in the standard way.
+        try {
+          $this->query('RELEASE SAVEPOINT ' . $name);
+        }
+        catch (PDOException $e) {
+          // However, in MySQL (InnoDB), savepoints are automatically committed
+          // when tables are altered or created (DDL transactions are not
+          // supported). This can cause exceptions due to trying to release
+          // savepoints which no longer exist.
+          //
+          // To avoid exceptions when no actual error has occurred, we silently
+          // succeed for PDOExceptions with SQLSTATE 42000 ("Syntax error or
+          // access rule violation") and MySQL error code 1305 ("SAVEPOINT does
+          // not exist").
+          if ($e->getCode() == '42000' && $e->errorInfo[1] == '1305') {
+            // If one SAVEPOINT was released automatically, then all were.
+            // Therefore, we keep just the topmost transaction.
+            $this->transactionLayers = array('drupal_transaction');
+          }
+          else {
+            throw $e;
+          }
+        }
+        break;
+      }
+    }
+  }
 }
 
 
diff --git a/includes/database/mysql/query.inc b/includes/database/mysql/query.inc
index f7fb52f..888b6a5 100644
--- a/includes/database/mysql/query.inc
+++ b/includes/database/mysql/query.inc
@@ -42,8 +42,8 @@ class InsertQuery_mysql extends InsertQuery {
   }
 
   public function __toString() {
-    // Create a comments string to prepend to the query.
-    $comments = (!empty($this->comments)) ? '/* ' . implode('; ', $this->comments) . ' */ ' : '';
+    // Create a sanitized comment string to prepend to the query.
+    $comments = $this->connection->makeComment($this->comments);
 
     // Default fields are always placed first for consistency.
     $insert_fields = array_merge($this->defaultFields, $this->insertFields);
@@ -92,8 +92,8 @@ class TruncateQuery_mysql extends TruncateQuery {
     // not transactional, and result in an implicit COMMIT. When we are in a
     // transaction, fallback to the slower, but transactional, DELETE.
     if ($this->connection->inTransaction()) {
-      // Create a comments string to prepend to the query.
-      $comments = (!empty($this->comments)) ? '/* ' . implode('; ', $this->comments) . ' */ ' : '';
+      // Create a comment string to prepend to the query.
+      $comments = $this->connection->makeComment($this->comments);
       return $comments . 'DELETE FROM {' . $this->connection->escapeTable($this->table) . '}';
     }
     else {
diff --git a/includes/database/pgsql/database.inc b/includes/database/pgsql/database.inc
index f01f7b5..98b954f 100644
--- a/includes/database/pgsql/database.inc
+++ b/includes/database/pgsql/database.inc
@@ -34,6 +34,15 @@ class DatabaseConnection_pgsql extends DatabaseConnection {
     if (empty($connection_options['password'])) {
       $connection_options['password'] = NULL;
     }
+    // If the password contains a backslash it is treated as an escape character
+    // http://bugs.php.net/bug.php?id=53217
+    // so backslashes in the password need to be doubled up.
+    // The bug was reported against pdo_pgsql 1.0.2, backslashes in passwords
+    // will break on this doubling up when the bug is fixed, so check the version
+    //elseif (phpversion('pdo_pgsql') < 'version_this_was_fixed_in') {
+    else {
+      $connection_options['password'] = str_replace('\\', '\\\\', $connection_options['password']);
+    }
 
     $this->connectionOptions = $connection_options;
 
diff --git a/includes/database/pgsql/query.inc b/includes/database/pgsql/query.inc
index fe7909e..f3783a9 100644
--- a/includes/database/pgsql/query.inc
+++ b/includes/database/pgsql/query.inc
@@ -103,8 +103,8 @@ class InsertQuery_pgsql extends InsertQuery {
   }
 
   public function __toString() {
-    // Create a comments string to prepend to the query.
-    $comments = (!empty($this->comments)) ? '/* ' . implode('; ', $this->comments) . ' */ ' : '';
+    // Create a sanitized comment string to prepend to the query.
+    $comments = $this->connection->makeComment($this->comments);
 
     // Default fields are always placed first for consistency.
     $insert_fields = array_merge($this->defaultFields, $this->insertFields);
diff --git a/includes/database/query.inc b/includes/database/query.inc
index 7f3e9ff..23b652f 100644
--- a/includes/database/query.inc
+++ b/includes/database/query.inc
@@ -361,6 +361,9 @@ abstract class Query implements QueryPlaceholderInterface {
    * for easier debugging and allows you to more easily find where a query
    * with a performance problem is being generated.
    *
+   * The comment string will be sanitized to remove * / and other characters
+   * that may terminate the string early so as to avoid SQL injection attacks.
+   *
    * @param $comment
    *   The comment string to be inserted into the query.
    *
@@ -623,9 +626,8 @@ class InsertQuery extends Query {
    *   The prepared statement.
    */
   public function __toString() {
-
-    // Create a comments string to prepend to the query.
-    $comments = (!empty($this->comments)) ? '/* ' . implode('; ', $this->comments) . ' */ ' : '';
+    // Create a sanitized comment string to prepend to the query.
+    $comments = $this->connection->makeComment($this->comments);
 
     // Default fields are always placed first for consistency.
     $insert_fields = array_merge($this->defaultFields, $this->insertFields);
@@ -815,9 +817,8 @@ class DeleteQuery extends Query implements QueryConditionInterface {
    *   The prepared statement.
    */
   public function __toString() {
-
-    // Create a comments string to prepend to the query.
-    $comments = (!empty($this->comments)) ? '/* ' . implode('; ', $this->comments) . ' */ ' : '';
+    // Create a sanitized comment string to prepend to the query.
+    $comments = $this->connection->makeComment($this->comments);
 
     $query = $comments . 'DELETE FROM {' . $this->connection->escapeTable($this->table) . '} ';
 
@@ -884,8 +885,8 @@ class TruncateQuery extends Query {
    *   The prepared statement.
    */
   public function __toString() {
-    // Create a comments string to prepend to the query.
-    $comments = (!empty($this->comments)) ? '/* ' . implode('; ', $this->comments) . ' */ ' : '';
+    // Create a sanitized comment string to prepend to the query.
+    $comments = $this->connection->makeComment($this->comments);
 
     return $comments . 'TRUNCATE {' . $this->connection->escapeTable($this->table) . '} ';
   }
@@ -1111,9 +1112,8 @@ class UpdateQuery extends Query implements QueryConditionInterface {
    *   The prepared statement.
    */
   public function __toString() {
-
-    // Create a comments string to prepend to the query.
-    $comments = (!empty($this->comments)) ? '/* ' . implode('; ', $this->comments) . ' */ ' : '';
+    // Create a sanitized comment string to prepend to the query.
+    $comments = $this->connection->makeComment($this->comments);
 
     // Expressions take priority over literal fields, so we process those first
     // and remove any literal fields that conflict.
diff --git a/includes/database/select.inc b/includes/database/select.inc
index 6e4b0dc..53be20a 100644
--- a/includes/database/select.inc
+++ b/includes/database/select.inc
@@ -414,7 +414,7 @@ interface SelectQueryInterface extends QueryConditionInterface, QueryAlterableIn
    * @param $start
    *   The first record from the result set to return. If NULL, removes any
    *   range directives that are set.
-   * @param $limit
+   * @param $length
    *   The number of records to return from the result set.
    * @return SelectQueryInterface
    *   The called object.
@@ -1439,9 +1439,8 @@ class SelectQuery extends Query implements SelectQueryInterface {
   }
 
   public function __toString() {
-
-    // Create a comments string to prepend to the query.
-    $comments = (!empty($this->comments)) ? '/* ' . implode('; ', $this->comments) . ' */ ' : '';
+    // Create a sanitized comment string to prepend to the query.
+    $comments = $this->connection->makeComment($this->comments);
 
     // SELECT
     $query = $comments . 'SELECT ';
diff --git a/includes/database/sqlite/query.inc b/includes/database/sqlite/query.inc
index d456afa..6b8a72f 100644
--- a/includes/database/sqlite/query.inc
+++ b/includes/database/sqlite/query.inc
@@ -32,8 +32,8 @@ class InsertQuery_sqlite extends InsertQuery {
   }
 
   public function __toString() {
-    // Create a comments string to prepend to the query.
-    $comments = (!empty($this->comments)) ? '/* ' . implode('; ', $this->comments) . ' */ ' : '';
+    // Create a sanitized comment string to prepend to the query.
+    $comments = $this->connection->makeComment($this->comments);
 
     // Produce as many generic placeholders as necessary.
     $placeholders = array_fill(0, count($this->insertFields), '?');
@@ -101,7 +101,7 @@ class UpdateQuery_sqlite extends UpdateQuery {
       }
       elseif (!isset($data)) {
         // The field will be set to NULL.
-        $condition->isNull($field);
+        $condition->isNotNull($field);
       }
       else {
         $condition->condition($field, $data, '<>');
@@ -148,8 +148,8 @@ class DeleteQuery_sqlite extends DeleteQuery {
  */
 class TruncateQuery_sqlite extends TruncateQuery {
   public function __toString() {
-    // Create a comments string to prepend to the query.
-    $comments = (!empty($this->comments)) ? '/* ' . implode('; ', $this->comments) . ' */ ' : '';
+    // Create a sanitized comment string to prepend to the query.
+    $comments = $this->connection->makeComment($this->comments);
 
     return $comments . 'DELETE FROM {' . $this->connection->escapeTable($this->table) . '} ';
   }
diff --git a/includes/entity.inc b/includes/entity.inc
index 33c768c..9ee7889 100644
--- a/includes/entity.inc
+++ b/includes/entity.inc
@@ -39,7 +39,8 @@ interface DrupalEntityControllerInterface {
    *   An array of conditions in the form 'field' => $value.
    *
    * @return
-   *   An array of entity objects indexed by their ids.
+   *   An array of entity objects indexed by their ids. When no results are
+   *   found, an empty array is returned.
    */
   public function load($ids = array(), $conditions = array());
 }
@@ -408,7 +409,7 @@ class EntityFieldQueryException extends Exception {}
  * direct access to the collected properties in order to handle alternate
  * execution routines. We therefore use public properties for simplicity. Note
  * that code that is simply creating and running a field query should still use
- * the appropriate methods add conditions on the query.
+ * the appropriate methods to add conditions on the query.
  *
  * Storage engines are not required to support every type of query. By default,
  * an EntityFieldQueryException will be raised if an unsupported condition is
@@ -650,7 +651,11 @@ class EntityFieldQuery {
    */
   public function fieldCondition($field, $column = NULL, $value = NULL, $operator = NULL, $delta_group = NULL, $language_group = NULL) {
     if (is_scalar($field)) {
-      $field = field_info_field($field);
+      $field_definition = field_info_field($field);
+      if (empty($field_definition)) {
+        throw new EntityFieldQueryException(t('Unknown field: @field_name', array('@field_name' => $field)));
+      }
+      $field = $field_definition;
     }
     // Ensure the same index is used for fieldConditions as for fields.
     $index = count($this->fields);
@@ -752,7 +757,11 @@ class EntityFieldQuery {
    */
   public function fieldOrderBy($field, $column, $direction = 'ASC') {
     if (is_scalar($field)) {
-      $field = field_info_field($field);
+      $field_definition = field_info_field($field);
+      if (empty($field_definition)) {
+        throw new EntityFieldQueryException(t('Unknown field: @field_name', array('@field_name' => $field)));
+      }
+      $field = $field_definition;
     }
     // Save the index used for the new field, for later use in field storage.
     $index = count($this->fields);
diff --git a/includes/errors.inc b/includes/errors.inc
index 3a97b6d..be72428 100644
--- a/includes/errors.inc
+++ b/includes/errors.inc
@@ -172,9 +172,9 @@ function error_displayable($error = NULL) {
  * Log a PHP error or exception, display an error page in fatal cases.
  *
  * @param $error
- *   An array with the following keys: %type, !message, %function, %file, %line.
- *   All the parameters are plain-text, exception message, which needs to be
- *   a safe HTML string.
+ *   An array with the following keys: %type, !message, %function, %file, %line
+ *   and severity_level. All the parameters are plain-text, with the exception of
+ *   !message, which needs to be a safe HTML string.
  * @param $fatal
  *   TRUE if the error is fatal.
  */
diff --git a/includes/file.inc b/includes/file.inc
index 26a6c41..6dc7f88 100644
--- a/includes/file.inc
+++ b/includes/file.inc
@@ -422,7 +422,7 @@ function file_create_url($uri) {
  * Directories need to have execute permissions to be considered a directory by
  * FTP servers, etc.
  *
- * @param &$directory
+ * @param $directory
  *   A string reference containing the name of a directory path or URI. A
  *   trailing slash will be trimmed from a path.
  * @param $options
diff --git a/includes/form.inc b/includes/form.inc
index c0163ca..b024918 100644
--- a/includes/form.inc
+++ b/includes/form.inc
@@ -201,7 +201,7 @@ function drupal_get_form($form_id) {
  *   can implement hook_forms(), which maps different $form_id values to the
  *   proper form constructor function. Examples may be found in node_forms(),
  *   search_forms(), and user_forms().
- * @param &$form_state
+ * @param $form_state
  *   An array which stores information about the form. This is passed as a
  *   reference so that the caller can use it to examine what in the form changed
  *   when the form submission process is complete. Furthermore, it may be used
@@ -2061,7 +2061,7 @@ function _form_button_was_clicked($element, &$form_state) {
  * - form_build_id
  * - op
  *
- * @param &$form_state
+ * @param $form_state
  *   A keyed array containing the current state of the form, including
  *   submitted form values; altered by reference.
  */
@@ -3377,7 +3377,7 @@ function form_validate_machine_name(&$element, &$form_state) {
  * Adds fieldsets to the specified group or adds group members to this
  * fieldset.
  *
- * @param &$element
+ * @param $element
  *   An associative array containing the properties and children of the
  *   fieldset. Note that $element must be taken by reference here, so processed
  *   child elements are taken over into $form_state.
@@ -3955,7 +3955,7 @@ function theme_form_element_label($variables) {
  *
  * Adds 'required' and 'error' classes as needed.
  *
- * @param &$element
+ * @param $element
  *   The form element.
  * @param $name
  *   Array of new class names to be added.
@@ -4015,7 +4015,9 @@ function _form_set_class(&$element, $class = array()) {
  * Note: if the batch 'title', 'init_message', 'progress_message', or
  * 'error_message' could contain any user input, it is the responsibility of
  * the code calling batch_set() to sanitize them first with a function like
- * check_plain() or filter_xss().
+ * check_plain() or filter_xss(). Furthermore, if the batch operation
+ * returns any user input in the 'results' or 'message' keys of $context,
+ * it must also sanitize them first.
  *
  * Sample batch operations:
  * @code
@@ -4038,8 +4040,8 @@ function _form_set_class(&$element, $class = array()) {
  *   //   and the batch processing can continue to the next operation.
  *
  *   $node = node_load(array('uid' => $uid, 'type' => $type));
- *   $context['results'][] = $node->nid . ' : ' . $node->title;
- *   $context['message'] = $node->title;
+ *   $context['results'][] = $node->nid . ' : ' . check_plain($node->title);
+ *   $context['message'] = check_plain($node->title);
  * }
  *
  * // More advanced example: multi-step operation - load all nodes, five by five
@@ -4058,10 +4060,10 @@ function _form_set_class(&$element, $class = array()) {
  *     ->execute();
  *   foreach ($result as $row) {
  *     $node = node_load($row->nid, NULL, TRUE);
- *     $context['results'][] = $node->nid . ' : ' . $node->title;
+ *     $context['results'][] = $node->nid . ' : ' . check_plain($node->title);
  *     $context['sandbox']['progress']++;
  *     $context['sandbox']['current_node'] = $node->nid;
- *     $context['message'] = $node->title;
+ *     $context['message'] = check_plain($node->title);
  *   }
  *   if ($context['sandbox']['progress'] != $context['sandbox']['max']) {
  *     $context['finished'] = $context['sandbox']['progress'] / $context['sandbox']['max'];
@@ -4072,6 +4074,8 @@ function _form_set_class(&$element, $class = array()) {
  * Sample 'finished' callback:
  * @code
  * function batch_test_finished($success, $results, $operations) {
+ *   // The 'success' parameter means no fatal PHP errors were detected. All
+ *   // other error management should be handled using 'results'.
  *   if ($success) {
  *     $message = format_plural(count($results), 'One post processed.', '@count posts processed.');
  *   }
diff --git a/includes/graph.inc b/includes/graph.inc
index 8b89b73..416fad6 100644
--- a/includes/graph.inc
+++ b/includes/graph.inc
@@ -74,15 +74,15 @@ function drupal_depth_first_search(&$graph) {
 /**
  * Helper function to perform a depth first sort.
  *
- * @param &$graph
+ * @param $graph
  *   A three dimensional associated graph array.
- * @param &$state
+ * @param $state
  *   An associative array. The key 'last_visit_order' stores a list of the
  *   vertices visited. The key components stores list of vertices belonging
  *   to the same the component.
  * @param $start
  *   An arbitrary vertex where we started traversing the graph.
- * @param &$component
+ * @param $component
  *   The component of the last vertex.
  *
  * @see drupal_depth_first_search()
diff --git a/includes/install.inc b/includes/install.inc
index 14b5d7e..089cdee 100644
--- a/includes/install.inc
+++ b/includes/install.inc
@@ -547,7 +547,7 @@ abstract class DatabaseTasks {
    *
    * @param $database
    *   An array of driver specific configuration options.
-   * 
+   *
    * @return
    *   An array of driver configuration errors, keyed by form element name.
    */
@@ -570,7 +570,7 @@ abstract class DatabaseTasks {
 }
 
 /**
- * @class Exception class used to throw error if the DatabaseInstaller fails.
+ * Exception thrown if the database installer fails.
  */
 class DatabaseTaskException extends Exception {
 }
@@ -782,44 +782,12 @@ function drupal_uninstall_modules($module_list = array(), $uninstall_dependents
   }
 
   foreach ($module_list as $module) {
-    // First, retrieve all the module's menu paths from db.
-    drupal_load('module', $module);
-    $paths = module_invoke($module, 'menu');
-
     // Uninstall the module.
     module_load_install($module);
     module_invoke($module, 'uninstall');
     drupal_uninstall_schema($module);
 
     watchdog('system', '%module module uninstalled.', array('%module' => $module), WATCHDOG_INFO);
-
-    // Now remove the menu links for all paths declared by this module.
-    if (!empty($paths)) {
-      $paths = array_keys($paths);
-      // Clean out the names of load functions.
-      foreach ($paths as $index => $path) {
-        $parts = explode('/', $path, MENU_MAX_PARTS);
-        foreach ($parts as $k => $part) {
-          if (preg_match('/^%[a-z_]*$/', $part)) {
-            $parts[$k] = '%';
-          }
-        }
-        $paths[$index] = implode('/', $parts);
-      }
-
-      $result = db_select('menu_links')
-        ->fields('menu_links')
-        ->condition('router_path', $paths, 'IN')
-        ->condition('external', 0)
-        ->orderBy('depth')
-        ->execute();
-      // Remove all such items. Starting from those with the greatest depth will
-      // minimize the amount of re-parenting done by menu_link_delete().
-      foreach ($result as $item) {
-        _menu_delete_item($item, TRUE);
-      }
-    }
-
     drupal_set_installed_schema_version($module, SCHEMA_UNINSTALLED);
   }
 
@@ -1054,7 +1022,12 @@ function install_goto($path) {
  * Used during the install process, when database, theme, and localization
  * system is possibly not yet available.
  *
+ * Use t() if your code will never run during the Drupal installation phase.
+ * Use st() if your code will only run during installation and never any other
+ * time. Use get_t() if your code could run in either circumstance.
+ *
  * @see t()
+ * @see get_t()
  * @ingroup sanitization
  */
 function st($string, array $args = array(), array $options = array()) {
diff --git a/includes/language.inc b/includes/language.inc
index eb13eac..b7057f2 100644
--- a/includes/language.inc
+++ b/includes/language.inc
@@ -84,6 +84,44 @@ function language_types_disable($types) {
 }
 
 /**
+ * Updates the language type configuration.
+ */
+function language_types_set() {
+  // Ensure that we are getting the defined language negotiation information. An
+  // invocation of module_enable() or module_disable() could outdate the cached
+  // information.
+  drupal_static_reset('language_types_info');
+  drupal_static_reset('language_negotiation_info');
+
+  // Determine which language types are configurable and which not by checking
+  // whether the 'fixed' key is defined. Non-configurable (fixed) language types
+  // have their language negotiation settings stored there.
+  $defined_providers = language_negotiation_info();
+  foreach (language_types_info() as $type => $info) {
+    if (isset($info['fixed'])) {
+      $language_types[$type] = FALSE;
+      $negotiation = array();
+      foreach ($info['fixed'] as $weight => $id) {
+        if (isset($defined_providers[$id])) {
+          $negotiation[$id] = $weight;
+        }
+      }
+      language_negotiation_set($type, $negotiation);
+    }
+    else {
+      $language_types[$type] = TRUE;
+    }
+  }
+
+  // Save language types.
+  variable_set('language_types', $language_types);
+
+  // Ensure that subsequent calls of language_types_configurable() return the
+  // updated language type information.
+  drupal_static_reset('language_types_configurable');
+}
+
+/**
  * Check if a language provider is enabled.
  *
  * This has two possible behaviors:
@@ -173,6 +211,28 @@ function language_negotiation_get_switch_links($type, $path) {
   return $links;
 }
 
+/**
+ * Updates language configuration to remove any language provider that is no longer defined.
+ */
+function language_negotiation_purge() {
+  // Ensure that we are getting the defined language negotiation information. An
+  // invocation of module_enable() or module_disable() could outdate the cached
+  // information.
+  drupal_static_reset('language_negotiation_info');
+  drupal_static_reset('language_types_info');
+
+  $defined_providers = language_negotiation_info();
+  foreach (language_types_info() as $type => $type_info) {
+    $weight = 0;
+    $negotiation = array();
+    foreach (variable_get("language_negotiation_$type", array()) as $id => $provider) {
+      if (isset($defined_providers[$id])) {
+        $negotiation[$id] = $weight++;
+      }
+    }
+    language_negotiation_set($type, $negotiation);
+  }
+}
 
 /**
  * Save a list of language providers.
@@ -180,7 +240,8 @@ function language_negotiation_get_switch_links($type, $path) {
  * @param $type
  *   The language negotiation type.
  * @param $language_providers
- *   An array of language provider ids.
+ *   An array of language provider weights keyed by id.
+ *   @see language_provider_weight()
  */
 function language_negotiation_set($type, $language_providers) {
   // Save only the necessary fields.
@@ -189,7 +250,7 @@ function language_negotiation_set($type, $language_providers) {
   $negotiation = array();
   $providers_weight = array();
   $defined_providers = language_negotiation_info();
-  $default_types = language_types_configurable();
+  $default_types = language_types_configurable(FALSE);
 
   // Initialize the providers weight list.
   foreach ($language_providers as $id => $provider) {
diff --git a/includes/lock.inc b/includes/lock.inc
index 2eb7b9a..42f1906 100644
--- a/includes/lock.inc
+++ b/includes/lock.inc
@@ -187,7 +187,7 @@ function lock_may_be_available($name) {
  * lock. This will block further execution until the lock is available or the
  * specified delay in seconds is reached. This should not be used with locks
  * that are acquired very frequently, since the lock is likely to be acquired
- * again by a different request during the sleep().
+ * again by a different request while waiting.
  *
  * @param $name
  *   The name of the lock.
@@ -198,12 +198,32 @@ function lock_may_be_available($name) {
  *   TRUE if the lock holds, FALSE if it is available.
  */
 function lock_wait($name, $delay = 30) {
-  $delay = (int) $delay;
-  while ($delay--) {
+  // Pause the process for short periods between calling
+  // lock_may_be_available(). This prevents hitting the database with constant
+  // database queries while waiting, which could lead to performance issues.
+  // However, if the wait period is too long, there is the potential for a
+  // large number of processes to be blocked waiting for a lock, especially
+  // if the item being rebuilt is commonly requested. To address both of these
+  // concerns, begin waiting for 25ms, then add 25ms to the wait period each
+  // time until it reaches 500ms. After this point polling will continue every
+  // 500ms until $delay is reached.
+
+  // $delay is passed in seconds, but we will be using usleep(), which takes
+  // microseconds as a parameter. Multiply it by 1 million so that all
+  // further numbers are equivalent.
+  $delay = (int) $delay * 1000000;
+
+  // Begin sleeping at 25ms.
+  $sleep = 25000;
+  while ($delay > 0) {
     // This function should only be called by a request that failed to get a
     // lock, so we sleep first to give the parallel request a chance to finish
     // and release the lock.
-    sleep(1);
+    usleep($sleep);
+    // After each sleep, increase the value of $sleep until it reaches
+    // 500ms, to reduce the potential for a lock stampede.
+    $delay = $delay - $sleep;
+    $sleep = min(500000, $sleep + 25000, $delay);
     if (lock_may_be_available($name)) {
       // No longer need to wait.
       return FALSE;
diff --git a/includes/menu.inc b/includes/menu.inc
index e7abda7..cfd35c7 100644
--- a/includes/menu.inc
+++ b/includes/menu.inc
@@ -1044,7 +1044,7 @@ function menu_tree_output($tree) {
     }
 
     // Allow menu-specific theme overrides.
-    $element['#theme'] = 'menu_link__' . $data['link']['menu_name'];
+    $element['#theme'] = 'menu_link__' . strtr($data['link']['menu_name'], '-', '_');
     $element['#attributes']['class'] = $class;
     $element['#title'] = $data['link']['title'];
     $element['#href'] = $data['link']['href'];
@@ -2321,11 +2321,11 @@ function menu_set_active_trail($new_trail = NULL) {
       }
       list($key, $curr) = each($tree);
     }
-    // Make sure the current page is in the trail (needed for the page title),
-    // if the link's type allows it to be shown in the breadcrumb. Also exclude
-    // it if we are on the front page.
+    // Make sure the current page is in the trail to build the page title, by
+    // appending either the preferred link or the menu router item for the
+    // current page. Exclude it if we are on the front page.
     $last = end($trail);
-    if ($last['href'] != $preferred_link['href'] && ($preferred_link['type'] & MENU_VISIBLE_IN_BREADCRUMB) == MENU_VISIBLE_IN_BREADCRUMB && !drupal_is_front_page()) {
+    if ($last['href'] != $preferred_link['href'] && !drupal_is_front_page()) {
       $trail[] = $preferred_link;
     }
   }
@@ -2566,7 +2566,10 @@ function menu_reset_static_cache() {
  *
  * This function will clear and populate the {menu_router} table, add entries
  * to {menu_links} for new router items, then remove stale items from
- * {menu_links}.
+ * {menu_links}. If called from update.php or install.php, it will also
+ * schedule a call to itself on the first real page load from
+ * menu_execute_active_handler(), because the maintenance page environment
+ * is different and leaves stale data in the menu tables.
  *
  * @return
  *   TRUE if the menu was rebuilt, FALSE if another thread was rebuilding
@@ -2590,8 +2593,13 @@ function menu_rebuild() {
     // Clear the menu, page and block caches.
     menu_cache_clear_all();
     _menu_clear_page_cache();
-    // Indicate that the menu has been successfully rebuilt.
-    variable_del('menu_rebuild_needed');
+
+    if (defined('MAINTENANCE_MODE')) {
+      variable_set('menu_rebuild_needed', TRUE);
+    }
+    else {
+      variable_del('menu_rebuild_needed');
+    }
   }
   catch (Exception $e) {
     $transaction->rollback();
@@ -2899,18 +2907,26 @@ function _menu_delete_item($item, $force = FALSE) {
 }
 
 /**
- * Save a menu link.
+ * Saves a menu link.
+ *
+ * After calling this function, rebuild the menu cache using
+ * menu_cache_clear_all().
  *
  * @param $item
- *   An array representing a menu link item. The only mandatory keys are
- *   link_path and link_title. Possible keys are:
- *   - menu_name: Default is navigation
- *   - weight: Default is 0
- *   - expanded: Whether the item is expanded.
- *   - options: An array of options, see l() for more.
- *   - mlid: Set to an existing value, or 0 or NULL to insert a new link.
- *   - plid: The mlid of the parent.
- *   - router_path: The path of the relevant router item.
+ *   An associative array representing a menu link item, with elements:
+ *   - link_path: (required) The path of the menu item, which should be
+ *     normalized first by calling drupal_get_normal_path() on it.
+ *   - link_title: (required) Title to appear in menu for the link.
+ *   - menu_name: (optional) The machine name of the menu for the link.
+ *     Defaults to 'navigation'.
+ *   - weight: (optional) Integer to determine position in menu. Default is 0.
+ *   - expanded: (optional) Boolean that determines if the item is expanded.
+ *   - options: (optional) An array of options, see l() for more.
+ *   - mlid: (optional) Menu link identifier, the primary integer key for each
+ *     menu link. Can be set to an existing value, or to 0 or NULL
+ *     to insert a new link.
+ *   - plid: (optional) The mlid of the parent.
+ *   - router_path: (optional) The path of the relevant router item.
  *
  * @return
  *   The mlid of the saved menu link, or FALSE if the menu link could not be
diff --git a/includes/module.inc b/includes/module.inc
index 08749f3..779b668 100644
--- a/includes/module.inc
+++ b/includes/module.inc
@@ -890,14 +890,14 @@ function drupal_required_modules() {
  *   values in $type. For example, when Form API is using drupal_alter() to
  *   execute both hook_form_alter() and hook_form_FORM_ID_alter()
  *   implementations, it passes array('form', 'form_' . $form_id) for $type.
- * @param &$data
+ * @param $data
  *   The variable that will be passed to hook_TYPE_alter() implementations to be
  *   altered. The type of this variable depends on the value of the $type
  *   argument. For example, when altering a 'form', $data will be a structured
  *   array. When altering a 'profile', $data will be an object.
- * @param &$context1
+ * @param $context1
  *   (optional) An additional variable that is passed by reference.
- * @param &$context2
+ * @param $context2
  *   (optional) An additional variable that is passed by reference. If more
  *   context needs to be provided to implementations, then this should be an
  *   associative array as described above.
diff --git a/includes/password.inc b/includes/password.inc
index 13659f8..93d34f8 100644
--- a/includes/password.inc
+++ b/includes/password.inc
@@ -230,8 +230,7 @@ function user_hash_password($password, $count_log2 = 0) {
 function user_check_password($password, $account) {
   if (substr($account->pass, 0, 2) == 'U$') {
     // This may be an updated password from user_update_7000(). Such hashes
-    // have 'U' added as the first character and need an extra md5() (see the
-    // Drupal 7 documentation).
+    // have 'U' added as the first character and need an extra md5().
     $stored_hash = substr($account->pass, 1);
     $password = md5($password);
   }
@@ -265,7 +264,7 @@ function user_check_password($password, $account) {
  * password is available. A new hash is needed when the desired iteration count
  * has changed through a change in the variable password_count_log2 or
  * DRUPAL_HASH_COUNT or if the user's password hash was generated in an update
- * like user_update_7000() (see the Drupal 7 documentation).
+ * like user_update_7000().
  *
  * Alternative implementations of this function might use other criteria based
  * on the fields in $account.
diff --git a/includes/stream_wrappers.inc b/includes/stream_wrappers.inc
index df380a8..7df1f9d 100644
--- a/includes/stream_wrappers.inc
+++ b/includes/stream_wrappers.inc
@@ -383,7 +383,7 @@ abstract class DrupalLocalStreamWrapper implements DrupalStreamWrapperInterface
    *   The file mode ("r", "wb" etc.).
    * @param $options
    *   A bit mask of STREAM_USE_PATH and STREAM_REPORT_ERRORS.
-   * @param &$opened_path
+   * @param $opened_path
    *   A string containing the path actually opened.
    *
    * @return
diff --git a/includes/theme.inc b/includes/theme.inc
index 573bbe2..3ae5000 100644
--- a/includes/theme.inc
+++ b/includes/theme.inc
@@ -985,7 +985,7 @@ function drupal_find_theme_functions($cache, $prefixes) {
       // start with. The default is the name of the hook followed by '__'. An
       // 'base hook' key is added to each entry made for a found suggestion,
       // so that common functionality can be implemented for all suggestions of
-      // the same base hook. To keep things simple, deep heirarchy of
+      // the same base hook. To keep things simple, deep hierarchy of
       // suggestions is not supported: each suggestion's 'base hook' key
       // refers to a base hook, not to another suggestion, and all suggestions
       // are found using the base hook's pattern, not a pattern from an
@@ -995,7 +995,7 @@ function drupal_find_theme_functions($cache, $prefixes) {
         $matches = preg_grep('/^' . $prefix . '_' . $pattern . '/', $functions['user']);
         if ($matches) {
           foreach ($matches as $match) {
-            $new_hook = str_replace($prefix . '_', '', $match);
+            $new_hook = substr($match, strlen($prefix) + 1);
             $arg_name = isset($info['variables']) ? 'variables' : 'render element';
             $implementations[$new_hook] = array(
               'function' => $match,
@@ -1302,7 +1302,7 @@ function theme_disable($theme_list) {
   menu_rebuild();
   drupal_theme_rebuild();
 
-  // Invoke hook_themes_enabled after the themes have been enabled.
+  // Invoke hook_themes_disabled after the themes have been disabled.
   module_invoke_all('themes_disabled', $theme_list);
 }
 
@@ -1760,10 +1760,10 @@ function theme_table($variables) {
  */
 function theme_tablesort_indicator($variables) {
   if ($variables['style'] == "asc") {
-    return theme('image', array('path' => 'misc/arrow-asc.png', 'alt' => t('sort ascending'), 'title' => t('sort ascending')));
+    return theme('image', array('path' => 'misc/arrow-asc.png', 'width' => 13, 'height' => 13, 'alt' => t('sort ascending'), 'title' => t('sort ascending')));
   }
   else {
-    return theme('image', array('path' => 'misc/arrow-desc.png', 'alt' => t('sort descending'), 'title' => t('sort descending')));
+    return theme('image', array('path' => 'misc/arrow-desc.png', 'width' => 13, 'height' => 13, 'alt' => t('sort descending'), 'title' => t('sort descending')));
   }
 }
 
@@ -1876,7 +1876,7 @@ function theme_more_help_link($variables) {
  */
 function theme_feed_icon($variables) {
   $text = t('Subscribe to @feed-title', array('@feed-title' => $variables['title']));
-  if ($image = theme('image', array('path' => 'misc/feed.png', 'alt' => $text))) {
+  if ($image = theme('image', array('path' => 'misc/feed.png', 'width' => 16, 'height' => 16, 'alt' => $text))) {
     return l($image, $variables['url'], array('html' => TRUE, 'attributes' => array('class' => array('feed-icon'), 'title' => $text)));
   }
 }
diff --git a/includes/token.inc b/includes/token.inc
index c31f9e6..edc8a96 100644
--- a/includes/token.inc
+++ b/includes/token.inc
@@ -4,20 +4,20 @@
  * @file
  * Drupal placeholder/token replacement system.
  *
- * Provides a set of extensible API functions for replacing placeholders in text
- * with meaningful values.
+ * API functions for replacing placeholders in text with meaningful values.
  *
- * For example: When configuring automated emails, an administrator enters standard
- * text for the email. Variables like the title of a node and the date the email
- * was sent can be entered as placeholders like [node:title] and [date:short].
- * When a Drupal module prepares to send the email, it can call the token_replace()
- * function, passing in the text. The token system will scan the text for placeholder
- * tokens, give other modules an opportunity to replace them with meaningful text,
- * then return the final product to the original module.
+ * For example: When configuring automated emails, an administrator enters
+ * standard text for the email. Variables like the title of a node and the date
+ * the email was sent can be entered as placeholders like [node:title] and
+ * [date:short]. When a Drupal module prepares to send the email, it can call
+ * the token_replace() function, passing in the text. The token system will
+ * scan the text for placeholder tokens, give other modules an opportunity to
+ * replace them with meaningful text, then return the final product to the
+ * original module.
  *
  * Tokens follow the form: [$type:$name], where $type is a general class of
  * tokens like 'node', 'user', or 'comment' and $name is the name of a given
- * placeholder. For example, [node:title].
+ * placeholder. For example, [node:title] or [node:created:since].
  *
  * In addition to raw text containing placeholders, modules may pass in an array
  * of objects to be used when performing the replacement. The objects should be
@@ -37,8 +37,8 @@
  * Some tokens may be chained in the form of [$type:$pointer:$name], where $type
  * is a normal token type, $pointer is a reference to another token type, and
  * $name is the name of a given placeholder. For example, [node:author:mail]. In
- * that example, 'author' is a pointer to the 'user' account that created the node,
- * and 'mail' is a placeholder available for any 'user'.
+ * that example, 'author' is a pointer to the 'user' account that created the
+ * node, and 'mail' is a placeholder available for any 'user'.
  *
  * @see token_replace()
  * @see hook_tokens()
@@ -46,7 +46,7 @@
  */
 
 /**
- * Replace all tokens in a given string with appropriate values.
+ * Replaces all tokens in a given string with appropriate values.
  *
  * @param $text
  *   A string potentially containing replaceable tokens.
@@ -54,22 +54,25 @@
  *   (optional) An array of keyed objects. For simple replacement scenarios
  *   'node', 'user', and others are common keys, with an accompanying node or
  *   user object being the value. Some token types, like 'site', do not require
- *   any explicit information from $data and can be replaced even if it is empty.
+ *   any explicit information from $data and can be replaced even if it is
+ *   empty.
  * @param $options
  *   (optional) A keyed array of settings and flags to control the token
  *   replacement process. Supported options are:
  *   - language: A language object to be used when generating locale-sensitive
  *     tokens.
  *   - callback: A callback function that will be used to post-process the array
- *     of token replacements after they are generated. For example, a module using
- *     tokens in a text-only email might provide a callback to strip HTML
+ *     of token replacements after they are generated. For example, a module
+ *     using tokens in a text-only email might provide a callback to strip HTML
  *     entities from token values before they are inserted into the final text.
  *   - clear: A boolean flag indicating that tokens should be removed from the
  *     final text if no replacement value can be generated.
  *   - sanitize: A boolean flag indicating that tokens should be sanitized for
- *     display to a web browser. Defaults to TRUE. Developers who set this option
- *     to FALSE assume responsibility for running filter_xss(), check_plain() or
- *     other appropriate scrubbing functions before displaying data to users.
+ *     display to a web browser. Defaults to TRUE. Developers who set this
+ *     option to FALSE assume responsibility for running filter_xss(),
+ *     check_plain() or other appropriate scrubbing functions before displaying
+ *     data to users.
+ *
  * @return
  *   Text with tokens replaced.
  */
@@ -95,17 +98,25 @@ function token_replace($text, array $data = array(), array $options = array()) {
 }
 
 /**
- * Build a list of all token-like patterns that appear in the text.
+ * Builds a list of all token-like patterns that appear in the text.
  *
  * @param $text
  *   The text to be scanned for possible tokens.
+ *
  * @return
  *   An associative array of discovered tokens, grouped by type.
  */
 function token_scan($text) {
-  // Matches tokens with the following pattern: [$type:$token]
-  // $type and $token may not contain white spaces.
-  preg_match_all('/\[([^\s\]:]*):([^\s\]]*)\]/', $text, $matches);
+  // Matches tokens with the following pattern: [$type:$name]
+  // $type and $name may not contain  [ ] or whitespace characters.
+  // $type may not contain : characters, but $name may.
+  preg_match_all('/
+    \[             # [ - pattern start
+    ([^\s\[\]:]*)  # match $type not containing whitespace : [ or ]
+    :              # : - separator
+    ([^\s\[\]]*)   # match $name not containing whitespace [ or ]
+    \]             # ] - pattern end
+    /x', $text, $matches);
 
   $types = $matches[1];
   $tokens = $matches[2];
@@ -122,7 +133,7 @@ function token_scan($text) {
 }
 
 /**
- * Generate replacement values for a list of tokens.
+ * Generates replacement values for a list of tokens.
  *
  * @param $type
  *   The type of token being replaced. 'node', 'user', and 'date' are common.
@@ -133,20 +144,22 @@ function token_scan($text) {
  *   (optional) An array of keyed objects. For simple replacement scenarios
  *   'node', 'user', and others are common keys, with an accompanying node or
  *   user object being the value. Some token types, like 'site', do not require
- *   any explicit information from $data and can be replaced even if it is empty.
+ *   any explicit information from $data and can be replaced even if it is
+ *   empty.
  * @param $options
  *   (optional) A keyed array of settings and flags to control the token
  *   replacement process. Supported options are:
- *   - 'language' A language object to be used when generating locale-sensitive
+ *   - language: A language object to be used when generating locale-sensitive
  *     tokens.
- *   - 'callback' A callback function that will be used to post-process the array
- *     of token replacements after they are generated. Can be used when modules
- *     require special formatting of token text, for example URL encoding or
- *     truncation to a specific length.
- *   - 'sanitize' A boolean flag indicating that tokens should be sanitized for
+ *   - callback: A callback function that will be used to post-process the
+ *     array of token replacements after they are generated. Can be used when
+ *     modules require special formatting of token text, for example URL
+ *     encoding or truncation to a specific length.
+ *   - sanitize: A boolean flag indicating that tokens should be sanitized for
  *     display to a web browser. Developers who set this option to FALSE assume
  *     responsibility for running filter_xss(), check_plain() or other
  *     appropriate scrubbing functions before displaying data to users.
+ *
  * @return
  *   An associative array of replacement values, keyed by the original 'raw'
  *   tokens that were found in the source text. For example:
@@ -172,7 +185,7 @@ function token_generate($type, array $tokens, array $data = array(), array $opti
 }
 
 /**
- * Given a list of tokens, return those that begin with a specific prefix.
+ * Given a list of tokens, returns those that begin with a specific prefix.
  *
  * Used to extract a group of 'chained' tokens (such as [node:author:name]) from
  * the full list of tokens found in text. For example:
@@ -180,7 +193,7 @@ function token_generate($type, array $tokens, array $data = array(), array $opti
  *   $data = array(
  *     'author:name' => '[node:author:name]',
  *     'title'       => '[node:title]',
- *     'created'     => '[node:author:name]',
+ *     'created'     => '[node:created]',
  *   );
  *   $results = token_find_with_prefix($data, 'author');
  *   $results == array('name' => '[node:author:name]');
@@ -193,6 +206,7 @@ function token_generate($type, array $tokens, array $data = array(), array $opti
  * @param $delimiter
  *   An optional string containing the character that separates the prefix from
  *   the rest of the token. Defaults to ':'.
+ *
  * @return
  *   An associative array of discovered tokens, with the prefix and delimiter
  *   stripped from the key.
@@ -229,6 +243,7 @@ function token_find_with_prefix(array $tokens, $prefix, $delimiter = ':') {
  *     'type' => 'user',
  *   );
  * @endcode
+ *
  * @return
  *   An associative array of token information, grouped by token type.
  */
diff --git a/includes/unicode.inc b/includes/unicode.inc
index 81ba00a..9dde2ca 100644
--- a/includes/unicode.inc
+++ b/includes/unicode.inc
@@ -169,7 +169,7 @@ function unicode_requirements() {
  * This is also where unsupported encodings will be converted. Callers should
  * take this into account: $data might have been changed after the call.
  *
- * @param &$data
+ * @param $data
  *   The XML data which will be parsed later.
  *
  * @return
diff --git a/includes/update.inc b/includes/update.inc
index f7a8fd6..1eb7a1d 100644
--- a/includes/update.inc
+++ b/includes/update.inc
@@ -9,14 +9,14 @@
  */
 
 /**
- * Minimum schema version of Drupal 7 required for upgrade to Drupal 8.
+ * Minimum schema version of Drupal 6 required for upgrade to Drupal 7.
  *
- * Upgrades from Drupal 7 to Drupal 8 require that Drupal 7 be running
+ * Upgrades from Drupal 6 to Drupal 7 require that Drupal 6 be running
  * the most recent version, or the upgrade could fail. We can't easily
- * check the Drupal 7 version once the update process has begun, so instead
+ * check the Drupal 6 version once the update process has begun, so instead
  * we check the schema version of system.module in the system table.
  */
-define('REQUIRED_D7_SCHEMA_VERSION', '7069');
+define('REQUIRED_D6_SCHEMA_VERSION', '6055');
 
 /**
  * Disable any items in the {system} table that are not core compatible.
@@ -68,56 +68,817 @@ function update_check_incompatibility($name, $type = 'module') {
 }
 
 /**
- * Performs extra steps required to bootstrap when using a Drupal 7 database.
+ * Performs extra steps required to bootstrap when using a Drupal 6 database.
  *
- * Users who still have a Drupal 7 database (and are in the process of
- * updating to Drupal 8) need extra help before a full bootstrap can be
+ * Users who still have a Drupal 6 database (and are in the process of
+ * updating to Drupal 7) need extra help before a full bootstrap can be
  * achieved. This function does the necessary preliminary work that allows
  * the bootstrap to be successful.
  *
  * No access check has been performed when this function is called, so no
  * irreversible changes to the database are made here.
  */
-function update_prepare_d8_bootstrap() {
+function update_prepare_d7_bootstrap() {
+  // Allow the bootstrap to proceed even if a Drupal 6 settings.php file is
+  // still being used.
+  include_once DRUPAL_ROOT . '/includes/install.inc';
+  drupal_bootstrap(DRUPAL_BOOTSTRAP_CONFIGURATION);
+  global $databases, $db_url, $db_prefix, $update_rewrite_settings;
+  if (empty($databases) && !empty($db_url)) {
+    $databases = update_parse_db_url($db_url, $db_prefix);
+    // Record the fact that the settings.php file will need to be rewritten.
+    $update_rewrite_settings = TRUE;
+    $settings_file = conf_path() . '/settings.php';
+    $writable = drupal_verify_install_file($settings_file, FILE_EXIST|FILE_READABLE|FILE_WRITABLE);
+    $requirements = array(
+      'settings file' => array(
+        'title' => 'Settings file',
+        'value' => $writable ? 'The settings file is writable.' : 'The settings file is not writable.',
+        'severity' => $writable ? REQUIREMENT_OK : REQUIREMENT_ERROR,
+        'description' => $writable ? '' : 'Drupal requires write permissions to <em>' . $settings_file . '</em> during the update process. If you are unsure how to grant file permissions, consult the <a href="http://drupal.org/server-permissions">online handbook</a>.',
+      ),
+    );
+    update_extra_requirements($requirements);
+  }
+
+  // The new {blocked_ips} table is used in Drupal 7 to store a list of
+  // banned IP addresses. If this table doesn't exist then we are still
+  // running on a Drupal 6 database, so we suppress the unavoidable errors
+  // that occur by creating a static list.
+  $GLOBALS['conf']['blocked_ips'] = array();
+
+  // Check that PDO is available and that the correct PDO database driver is
+  // loaded. Bootstrapping to DRUPAL_BOOTSTRAP_DATABASE will result in a fatal
+  // error otherwise.
+  $message = '';
+  $pdo_link = 'http://drupal.org/requirements/pdo';
+  // Check that PDO is loaded.
+  if (!extension_loaded('pdo')) {
+    $message = '<h2>PDO is required!</h2><p>Drupal 7 requires PHP ' . DRUPAL_MINIMUM_PHP . ' or higher with the PHP Data Objects (PDO) extension enabled.</p>';
+  }
+  // The PDO::ATTR_DEFAULT_FETCH_MODE constant is not available in the PECL
+  // version of PDO.
+  elseif (!defined('PDO::ATTR_DEFAULT_FETCH_MODE')) {
+    $message = '<h2>The wrong version of PDO is installed!</h2><p>Drupal 7 requires the PHP Data Objects (PDO) extension from PHP core to be enabled. This system has the older PECL version installed.';
+    $pdo_link = 'http://drupal.org/requirements/pdo#pecl';
+  }
+  // Check that the correct driver is loaded for the database being updated.
+  // If we have no driver information (for example, if someone tried to create
+  // the Drupal 7 $databases array themselves but did not do it correctly),
+  // this message will be confusing, so do not perform the check; instead, just
+  // let the database connection fail in the code that follows.
+  elseif (isset($databases['default']['default']['driver']) && !in_array($databases['default']['default']['driver'], PDO::getAvailableDrivers())) {
+    $message = '<h2>A PDO database driver is required!</h2><p>You need to enable the PDO_' . strtoupper($databases['default']['default']['driver']) . ' database driver for PHP ' . DRUPAL_MINIMUM_PHP . ' or higher so that Drupal 7 can access the database.</p>';
+  }
+  if ($message) {
+    print $message . '<p>See the <a href="' . $pdo_link . '">system requirements page</a> for more information.</p>';
+    exit();
+  }
+
   // Allow the database system to work even if the registry has not been
   // created yet.
-  include_once DRUPAL_ROOT . '/includes/install.inc';
   drupal_bootstrap(DRUPAL_BOOTSTRAP_DATABASE);
 
-  // If the site has not updated to Drupal 8 yet, check to make sure that it is
-  // running an up-to-date version of Drupal 7 before proceeding. Note this has
+  // If the site has not updated to Drupal 7 yet, check to make sure that it is
+  // running an up-to-date version of Drupal 6 before proceeding. Note this has
   // to happen AFTER the database bootstraps because of
   // drupal_get_installed_schema_version().
   $system_schema = drupal_get_installed_schema_version('system');
-  if ($system_schema < 8000) {
-    $has_required_schema = $system_schema >= REQUIRED_D7_SCHEMA_VERSION;
+  if ($system_schema < 7000) {
+    $has_required_schema = $system_schema >= REQUIRED_D6_SCHEMA_VERSION;
     $requirements = array(
-      'drupal 7 version' => array(
-        'title' => 'Drupal 7 version',
-        'value' => $has_required_schema ? 'You are running a current version of Drupal 7.' : 'You are not running a current version of Drupal 7',
+      'drupal 6 version' => array(
+        'title' => 'Drupal 6 version',
+        'value' => $has_required_schema ? 'You are running a current version of Drupal 6.' : 'You are not running a current version of Drupal 6',
         'severity' => $has_required_schema ? REQUIREMENT_OK : REQUIREMENT_ERROR,
-        'description' => $has_required_schema ? '' : 'Please update your Drupal 7 installation to the most recent version before attempting to upgrade to Drupal 8',
+        'description' => $has_required_schema ? '' : 'Please update your Drupal 6 installation to the most recent version before attempting to upgrade to Drupal 7',
       ),
     );
+
+    // Make sure that the database environment is properly set up.
+    try {
+      db_run_tasks(db_driver());
+    }
+    catch (DatabaseTaskException $e) {
+      $requirements['database tasks'] = array(
+        'title' => 'Database environment',
+        'value' => 'There is a problem with your database environment',
+        'severity' => REQUIREMENT_ERROR,
+        'description' => $e->getMessage(),
+      );
+    }
+
+    update_extra_requirements($requirements);
+
+    // Allow a D6 session to work, since the upgrade has not been performed yet.
+    $d6_session_name = update_get_d6_session_name();
+    if (!empty($_COOKIE[$d6_session_name])) {
+      // Set the current sid to the one found in the D6 cookie.
+      $sid = $_COOKIE[$d6_session_name];
+      $_COOKIE[session_name()] = $sid;
+      session_id($sid);
+    }
+  }
+
+  // Create the registry tables.
+  if (!db_table_exists('registry')) {
+    $schema['registry'] = array(
+      'fields' => array(
+        'name'   => array('type' => 'varchar', 'length' => 255, 'not null' => TRUE, 'default' => ''),
+        'type'   => array('type' => 'varchar', 'length' => 9, 'not null' => TRUE, 'default' => ''),
+        'filename'   => array('type' => 'varchar', 'length' => 255, 'not null' => TRUE, 'default' => ''),
+        'module'   => array('type' => 'varchar', 'length' => 255, 'not null' => TRUE, 'default' => ''),
+        'weight'   => array('type' => 'int', 'not null' => TRUE, 'default' => 0),
+      ),
+      'primary key' => array('name', 'type'),
+      'indexes' => array(
+        'hook' => array('type', 'weight', 'module'),
+      ),
+    );
+    db_create_table('registry', $schema['registry']);
+  }
+  if (!db_table_exists('registry_file')) {
+    $schema['registry_file'] = array(
+      'fields' => array(
+        'filename'   => array('type' => 'varchar', 'length' => 255, 'not null' => TRUE),
+        'hash'   => array('type' => 'varchar', 'length' => 64, 'not null' => TRUE),
+      ),
+      'primary key' => array('filename'),
+    );
+    db_create_table('registry_file', $schema['registry_file']);
+  }
+
+  // Older versions of Drupal 6 do not include the semaphore table, which is
+  // required to bootstrap, so we add it now so that we can bootstrap and
+  // provide a reasonable error message.
+  if (!db_table_exists('semaphore')) {
+    $semaphore = array(
+      'description' => 'Table for holding semaphores, locks, flags, etc. that cannot be stored as Drupal variables since they must not be cached.',
+      'fields' => array(
+        'name' => array(
+          'description' => 'Primary Key: Unique name.',
+          'type' => 'varchar',
+          'length' => 255,
+          'not null' => TRUE,
+          'default' => ''
+        ),
+        'value' => array(
+          'description' => 'A value for the semaphore.',
+          'type' => 'varchar',
+          'length' => 255,
+          'not null' => TRUE,
+          'default' => ''
+        ),
+        'expire' => array(
+          'description' => 'A Unix timestamp with microseconds indicating when the semaphore should expire.',
+          'type' => 'float',
+          'size' => 'big',
+          'not null' => TRUE
+        ),
+      ),
+      'indexes' => array(
+        'value' => array('value'),
+        'expire' => array('expire'),
+      ),
+      'primary key' => array('name'),
+    );
+    db_create_table('semaphore', $semaphore);
+  }
+
+  // The new cache_bootstrap bin is required to bootstrap to
+  // DRUPAL_BOOTSTRAP_SESSION, so create it here rather than in
+  // update_fix_d7_requirements().
+  if (!db_table_exists('cache_bootstrap')) {
+    $cache_bootstrap = array(
+      'description' => 'Cache table for data required to bootstrap Drupal, may be routed to a shared memory cache.',
+      'fields' => array(
+        'cid' => array(
+          'description' => 'Primary Key: Unique cache ID.',
+          'type' => 'varchar',
+          'length' => 255,
+          'not null' => TRUE,
+          'default' => '',
+        ),
+        'data' => array(
+          'description' => 'A collection of data to cache.',
+          'type' => 'blob',
+          'not null' => FALSE,
+          'size' => 'big',
+        ),
+        'expire' => array(
+          'description' => 'A Unix timestamp indicating when the cache entry should expire, or 0 for never.',
+          'type' => 'int',
+          'not null' => TRUE,
+          'default' => 0,
+        ),
+        'created' => array(
+          'description' => 'A Unix timestamp indicating when the cache entry was created.',
+          'type' => 'int',
+          'not null' => TRUE,
+          'default' => 0,
+        ),
+        'serialized' => array(
+          'description' => 'A flag to indicate whether content is serialized (1) or not (0).',
+          'type' => 'int',
+          'size' => 'small',
+          'not null' => TRUE,
+          'default' => 0,
+        ),
+      ),
+      'indexes' => array(
+        'expire' => array('expire'),
+      ),
+      'primary key' => array('cid'),
+    );
+    db_create_table('cache_bootstrap', $cache_bootstrap);
+  }
+
+  // Set a valid timezone for 6 -> 7 upgrade process.
+  drupal_bootstrap(DRUPAL_BOOTSTRAP_VARIABLES);
+  $timezone_offset = variable_get('date_default_timezone', 0);
+  if (is_numeric($timezone_offset)) {
+    // Save the original offset.
+    variable_set('date_temporary_timezone', $timezone_offset);
+    // Set the timezone for this request only.
+    $GLOBALS['conf']['date_default_timezone'] = 'UTC';
+  }
+}
+
+/**
+ * A helper function that modules can use to assist with the transformation
+ * from numeric block deltas to string block deltas during the 6.x -> 7.x
+ * upgrade.
+ *
+ * @todo This function should be removed in 8.x.
+ *
+ * @param $sandbox
+ *   An array holding data for the batch process.
+ * @param $renamed_deltas
+ *   An associative array.  Keys are module names, values an associative array
+ *   mapping the old block deltas to the new block deltas for the module.
+ *   Example:
+ *   @code
+ *     $renamed_deltas = array(
+ *       'mymodule' =>
+ *         array(
+ *           0 => 'mymodule-block-1',
+ *           1 => 'mymodule-block-2',
+ *         ),
+ *     );
+ *   @endcode
+ * @param $moved_deltas
+ *   An associative array. Keys are source module names, values an associative
+ *   array mapping the (possibly renamed) block name to the new module name.
+ *   Example:
+ *   @code
+ *     $moved_deltas = array(
+ *       'user' =>
+ *         array(
+ *           'navigation' => 'system',
+ *         ),
+ *     );
+ *   @endcode
+ */
+function update_fix_d7_block_deltas(&$sandbox, $renamed_deltas, $moved_deltas) {
+  // Loop through each block and make changes to the block tables.
+  // Only run this the first time through the batch update.
+  if (!isset($sandbox['progress'])) {
+    // Determine whether to use the old or new block table names.
+    $block_tables = db_table_exists('blocks') ? array('blocks', 'blocks_roles') : array('block', 'block_role');
+    foreach ($block_tables as $table) {
+      foreach ($renamed_deltas as $module => $deltas) {
+        foreach ($deltas as $old_delta => $new_delta) {
+          // Only do the update if the old block actually exists.
+          $block_exists = db_query("SELECT COUNT(*) FROM {" . $table . "} WHERE module = :module AND delta = :delta", array(
+              ':module' => $module,
+              ':delta' => $old_delta,
+            ))
+            ->fetchField();
+          if ($block_exists) {
+            db_update($table)
+              ->fields(array('delta' => $new_delta))
+              ->condition('module', $module)
+              ->condition('delta', $old_delta)
+              ->execute();
+          }
+        }
+      }
+      foreach ($moved_deltas as $old_module => $deltas) {
+        foreach ($deltas as $delta => $new_module) {
+          // Only do the update if the old block actually exists.
+          $block_exists = db_query("SELECT COUNT(*) FROM {" . $table . "} WHERE module = :module AND delta = :delta", array(
+              ':module' => $old_module,
+              ':delta' => $delta,
+            ))
+            ->fetchField();
+          if ($block_exists) {
+            db_update($table)
+              ->fields(array('module' => $new_module))
+              ->condition('module', $old_module)
+              ->condition('delta', $delta)
+              ->execute();
+          }
+        }
+      }
+    }
+
+    // Initialize batch update information.
+    $sandbox['progress'] = 0;
+    $sandbox['last_user_processed'] = -1;
+    $sandbox['max'] = db_query("SELECT COUNT(*) FROM {users} WHERE data IS NOT NULL")->fetchField();
+  }
+  // Now do the batch update of the user-specific block visibility settings.
+  $limit = 100;
+  $result = db_select('users', 'u')
+    ->fields('u', array('uid', 'data'))
+    ->condition('uid', $sandbox['last_user_processed'], '>')
+    ->orderBy('uid', 'ASC')
+    ->where('data IS NOT NULL')
+    ->range(0, $limit)
+    ->execute();
+  foreach ($result as $row) {
+    $data = unserialize($row->data);
+    $user_needs_update = FALSE;
+    foreach ($renamed_deltas as $module => $deltas) {
+      foreach ($deltas as $old_delta => $new_delta) {
+        if (isset($data['block'][$module][$old_delta])) {
+          // Transfer the old block visibility settings to the newly-renamed
+          // block, and mark this user for a database update.
+          $data['block'][$module][$new_delta] = $data['block'][$module][$old_delta];
+          unset($data['block'][$module][$old_delta]);
+          $user_needs_update = TRUE;
+        }
+      }
+    }
+    foreach ($moved_deltas as $old_module => $deltas) {
+      foreach ($deltas as $delta => $new_module) {
+        if (isset($data['block'][$old_module][$delta])) {
+          // Transfer the old block visibility settings to the moved
+          // block, and mark this user for a database update.
+          $data['block'][$new_module][$delta] = $data['block'][$old_module][$delta];
+          unset($data['block'][$old_module][$delta]);
+          $user_needs_update = TRUE;
+        }
+      }
+    }
+    // Update the current user.
+    if ($user_needs_update) {
+      db_update('users')
+        ->fields(array('data' => serialize($data)))
+        ->condition('uid', $row->uid)
+        ->execute();
+    }
+    // Update our progress information for the batch update.
+    $sandbox['progress']++;
+    $sandbox['last_user_processed'] = $row->uid;
+  }
+  // Indicate our current progress to the batch update system.
+  if ($sandbox['progress'] < $sandbox['max']) {
+    $sandbox['#finished'] = $sandbox['progress'] / $sandbox['max'];
   }
 }
 
 /**
- * Perform Drupal 7.x to 8.x updates that are required for update.php
+ * Perform Drupal 6.x to 7.x updates that are required for update.php
  * to function properly.
  *
- * This function runs when update.php is run the first time for 8.x,
+ * This function runs when update.php is run the first time for 7.x,
  * even before updates are selected or performed. It is important
  * that if updates are not ultimately performed that no changes are
  * made which make it impossible to continue using the prior version.
  */
-function update_fix_d8_requirements() {
+function update_fix_d7_requirements() {
   global $conf;
 
-  if (drupal_get_installed_schema_version('system') < 8000 && !variable_get('update_d8_requirements', FALSE)) {
-    // @todo: Make critical, first-run changes to the database here.
-    variable_set('update_d8_requirements', TRUE);
+  // Rewrite the settings.php file if necessary, see
+  // update_prepare_d7_bootstrap().
+  global $update_rewrite_settings, $db_url, $db_prefix;
+  if (!empty($update_rewrite_settings)) {
+    $databases = update_parse_db_url($db_url, $db_prefix);
+    $salt = drupal_hash_base64(drupal_random_bytes(55));
+    file_put_contents(conf_path() . '/settings.php', "\n" . '$databases = ' . var_export($databases, TRUE) . ";\n\$drupal_hash_salt = '$salt';", FILE_APPEND);
+  }
+  if (drupal_get_installed_schema_version('system') < 7000 && !variable_get('update_d7_requirements', FALSE)) {
+    // Change 6.x system table field values to 7.x equivalent.
+    // Change field values.
+    db_change_field('system', 'schema_version', 'schema_version', array(
+     'type' => 'int',
+     'size' => 'small',
+     'not null' => TRUE,
+     'default' => -1)
+    );
+    db_change_field('system', 'status', 'status', array(
+      'type' => 'int', 'not null' => TRUE, 'default' => 0));
+    db_change_field('system', 'weight', 'weight', array(
+      'type' => 'int', 'not null' => TRUE, 'default' => 0));
+    db_change_field('system', 'bootstrap', 'bootstrap', array(
+      'type' => 'int', 'not null' => TRUE, 'default' => 0));
+    // Drop and recreate 6.x indexes.
+    db_drop_index('system', 'bootstrap');
+    db_add_index('system', 'bootstrap', array(
+      'status', 'bootstrap', array('type', 12), 'weight', 'name'));
+
+    db_drop_index('system' ,'modules');
+    db_add_index('system', 'modules', array(array(
+      'type', 12), 'status', 'weight', 'name'));
+
+    db_drop_index('system', 'type_name');
+    db_add_index('system', 'type_name', array(array('type', 12), 'name'));
+    // Add 7.x indexes.
+    db_add_index('system', 'system_list', array('weight', 'name'));
+
+    // Add the cache_path table.
+    if (db_table_exists('cache_path')) {
+      db_drop_table('cache_path');
+    }
+    require_once('./modules/system/system.install');
+    $schema['cache_path'] = system_schema_cache_7054();
+    $schema['cache_path']['description'] = 'Cache table used for path alias lookups.';
+    db_create_table('cache_path', $schema['cache_path']);
+
+    // system_update_7042() renames columns, but these are needed to bootstrap.
+    // Add empty columns for now.
+    db_add_field('url_alias', 'source', array('type' => 'varchar', 'length' => 255, 'not null' => TRUE, 'default' => ''));
+    db_add_field('url_alias', 'alias', array('type' => 'varchar', 'length' => 255, 'not null' => TRUE, 'default' => ''));
+
+    // Add new columns to {menu_router}.
+    db_add_field('menu_router', 'delivery_callback', array('type' => 'varchar', 'length' => 255, 'not null' => TRUE, 'default' => ''));
+    db_add_field('menu_router', 'context', array(
+      'description' => 'Only for local tasks (tabs) - the context of a local task to control its placement.',
+      'type' => 'int',
+      'not null' => TRUE,
+      'default' => 0,
+    ));
+    db_drop_index('menu_router', 'tab_parent');
+    db_add_index('menu_router', 'tab_parent', array(array('tab_parent', 64), 'weight', 'title'));
+    db_add_field('menu_router', 'theme_callback', array('type' => 'varchar', 'length' => 255, 'not null' => TRUE, 'default' => ''));
+    db_add_field('menu_router', 'theme_arguments', array('type' => 'varchar', 'length' => 255, 'not null' => TRUE, 'default' => ''));
+
+    // Add the role_permission table.
+    $schema['role_permission'] = array(
+      'fields' => array(
+        'rid' => array(
+        'type' => 'int',
+        'unsigned' => TRUE,
+        'not null' => TRUE,
+      ),
+      'permission' => array(
+        'type' => 'varchar',
+        'length' => 128,
+        'not null' => TRUE,
+        'default' => '',
+      ),
+    ),
+    'primary key' => array('rid', 'permission'),
+    'indexes' => array(
+      'permission' => array('permission'),
+      ),
+    );
+    db_create_table('role_permission', $schema['role_permission']);
+
+    // Drops and recreates semaphore value index.
+    db_drop_index('semaphore', 'value');
+    db_add_index('semaphore', 'value', array('value'));
+
+    $schema['date_format_type'] = array(
+      'description' => 'Stores configured date format types.',
+      'fields' => array(
+        'type' => array(
+          'description' => 'The date format type, e.g. medium.',
+          'type' => 'varchar',
+          'length' => 64,
+          'not null' => TRUE,
+        ),
+        'title' => array(
+          'description' => 'The human readable name of the format type.',
+          'type' => 'varchar',
+          'length' => 255,
+          'not null' => TRUE,
+        ),
+        'locked' => array(
+          'description' => 'Whether or not this is a system provided format.',
+          'type' => 'int',
+          'size' => 'tiny',
+          'default' => 0,
+          'not null' => TRUE,
+        ),
+      ),
+      'primary key' => array('type'),
+    );
+
+    $schema['date_formats'] = array(
+      'description' => 'Stores configured date formats.',
+      'fields' => array(
+        'dfid' => array(
+          'description' => 'The date format identifier.',
+          'type' => 'serial',
+          'not null' => TRUE,
+          'unsigned' => TRUE,
+        ),
+        'format' => array(
+          'description' => 'The date format string.',
+          'type' => 'varchar',
+          'length' => 100,
+          'not null' => TRUE,
+        ),
+        'type' => array(
+          'description' => 'The date format type, e.g. medium.',
+          'type' => 'varchar',
+          'length' => 64,
+          'not null' => TRUE,
+        ),
+        'locked' => array(
+          'description' => 'Whether or not this format can be modified.',
+          'type' => 'int',
+          'size' => 'tiny',
+          'default' => 0,
+          'not null' => TRUE,
+        ),
+      ),
+      'primary key' => array('dfid'),
+      'unique keys' => array('formats' => array('format', 'type')),
+    );
+
+    $schema['date_format_locale'] = array(
+      'description' => 'Stores configured date formats for each locale.',
+      'fields' => array(
+        'format' => array(
+          'description' => 'The date format string.',
+          'type' => 'varchar',
+          'length' => 100,
+          'not null' => TRUE,
+        ),
+        'type' => array(
+          'description' => 'The date format type, e.g. medium.',
+          'type' => 'varchar',
+          'length' => 64,
+          'not null' => TRUE,
+        ),
+        'language' => array(
+          'description' => 'A {languages}.language for this format to be used with.',
+          'type' => 'varchar',
+          'length' => 12,
+          'not null' => TRUE,
+        ),
+      ),
+      'primary key' => array('type', 'language'),
+    );
+
+    db_create_table('date_format_type', $schema['date_format_type']);
+    // Sites that have the Drupal 6 Date module installed already have the
+    // following tables.
+    if (db_table_exists('date_formats')) {
+      db_rename_table('date_formats', 'd6_date_formats');
+    }
+    db_create_table('date_formats', $schema['date_formats']);
+    if (db_table_exists('date_format_locale')) {
+      db_rename_table('date_format_locale', 'd6_date_format_locale');
+    }
+    db_create_table('date_format_locale', $schema['date_format_locale']);
+
+    // Add the queue table.
+    $schema['queue'] = array(
+      'description' => 'Stores items in queues.',
+      'fields' => array(
+        'item_id' => array(
+          'type' => 'serial',
+          'unsigned' => TRUE,
+          'not null' => TRUE,
+          'description' => 'Primary Key: Unique item ID.',
+        ),
+        'name' => array(
+          'type' => 'varchar',
+          'length' => 255,
+          'not null' => TRUE,
+          'default' => '',
+          'description' => 'The queue name.',
+        ),
+        'data' => array(
+          'type' => 'blob',
+          'not null' => FALSE,
+          'size' => 'big',
+          'serialize' => TRUE,
+          'description' => 'The arbitrary data for the item.',
+        ),
+        'expire' => array(
+          'type' => 'int',
+          'not null' => TRUE,
+          'default' => 0,
+          'description' => 'Timestamp when the claim lease expires on the item.',
+        ),
+        'created' => array(
+          'type' => 'int',
+          'not null' => TRUE,
+          'default' => 0,
+          'description' => 'Timestamp when the item was created.',
+        ),
+      ),
+      'primary key' => array('item_id'),
+      'indexes' => array(
+        'name_created' => array('name', 'created'),
+        'expire' => array('expire'),
+      ),
+    );
+    // Check for queue table that may remain from D5 or D6, if found
+    //drop it.
+    if (db_table_exists('queue')) {
+      db_drop_table('queue');
+    }
+
+    db_create_table('queue', $schema['queue']);
+
+    // Create the sequences table.
+    $schema['sequences'] = array(
+      'description' => 'Stores IDs.',
+      'fields' => array(
+        'value' => array(
+          'description' => 'The value of the sequence.',
+          'type' => 'serial',
+          'unsigned' => TRUE,
+          'not null' => TRUE,
+        ),
+       ),
+      'primary key' => array('value'),
+    );
+    // Check for sequences table that may remain from D5 or D6, if found
+    //drop it.
+    if (db_table_exists('sequences')) {
+      db_drop_table('sequences');
+    }
+    db_create_table('sequences', $schema['sequences']);
+    // Initialize the table with the maximum current increment of the tables
+    // that will rely on it for their ids.
+    $max_aid = db_query('SELECT MAX(aid) FROM {actions_aid}')->fetchField();
+    $max_uid = db_query('SELECT MAX(uid) FROM {users}')->fetchField();
+    $max_batch_id = db_query('SELECT MAX(bid) FROM {batch}')->fetchField();
+    db_insert('sequences')->fields(array('value' => max($max_aid, $max_uid, $max_batch_id)))->execute();
+
+    // Add column for locale context.
+    if (db_table_exists('locales_source')) {
+      db_add_field('locales_source', 'context', array('type' => 'varchar', 'length' => 255, 'not null' => TRUE, 'default' => '', 'description' => 'The context this string applies to.'));
+    }
+
+    // Rename 'site_offline_message' variable to 'maintenance_mode_message'
+    // and 'site_offline' variable to 'maintenance_mode'.
+    // Old variable is removed in update for system.module, see
+    // system_update_7036().
+    if ($message = variable_get('site_offline_message', NULL)) {
+      variable_set('maintenance_mode_message', $message);
+    }
+    // Old variable is removed in update for system.module, see
+    // system_update_7069().
+    $site_offline = variable_get('site_offline', -1);
+    if ($site_offline != -1) {
+      variable_set('maintenance_mode', $site_offline);
+    }
+
+    // Add ssid column and index.
+    db_add_field('sessions', 'ssid', array('description' => "Secure session ID. The value is generated by Drupal's session handlers.", 'type' => 'varchar', 'length' => 128, 'not null' => TRUE, 'default' => ''));
+    db_add_index('sessions', 'ssid', array('ssid'));
+    // Drop existing primary key.
+    db_drop_primary_key('sessions');
+    // Add new primary key.
+    db_add_primary_key('sessions', array('sid', 'ssid'));
+
+    // Allow longer javascript file names.
+    if (db_table_exists('languages')) {
+      db_change_field('languages', 'javascript', 'javascript', array('type' => 'varchar', 'length' => 64, 'not null' => TRUE, 'default' => ''));
+    }
+
+    // Rename action description to label.
+    db_change_field('actions', 'description', 'label', array('type' => 'varchar', 'length' => 255, 'not null' => TRUE, 'default' => '0'));
+
+    variable_set('update_d7_requirements', TRUE);
   }
+
+  update_fix_d7_install_profile();
+}
+
+/**
+ * Register the currently installed profile in the system table.
+ *
+ * Install profiles are now treated as modules by Drupal, and have an upgrade
+ * path based on their schema version in the system table.
+ *
+ * The install profile will be set to schema_version 0, as it has already been
+ * installed. Any other hook_update_N functions provided by the install profile
+ * will be run by update.php.
+ */
+function update_fix_d7_install_profile() {
+  $profile = drupal_get_profile();
+
+  $results = db_select('system', 's')
+    ->fields('s', array('name', 'schema_version'))
+    ->condition('name', $profile)
+    ->condition('type', 'module')
+    ->execute()
+    ->fetchAll();
+
+  if (empty($results)) {
+    $filename = 'profiles/' . $profile . '/' . $profile . '.profile';
+
+    // Read profile info file
+    $info = drupal_parse_info_file(dirname($filename) . '/' . $profile . '.info');
+
+    // Merge in defaults.
+    $info = $info + array(
+      'dependencies' => array(),
+      'description' => '',
+      'package' => 'Other',
+      'version' => NULL,
+      'php' => DRUPAL_MINIMUM_PHP,
+      'files' => array(),
+    );
+
+    // The install profile is always required.
+    $file->info['required'] = TRUE;
+
+    $values = array(
+      'filename' => $filename,
+      'name' => $profile,
+      'info' => serialize($info),
+      'schema_version' => 0,
+      'type' => 'module',
+      'status' => 1,
+      'owner' => '',
+    );
+
+    // Install profile hooks are always executed last by the module system
+    $values['weight'] = 1000;
+
+    // Initializing the system table entry for the install profile
+    db_insert('system')
+      ->fields(array_keys($values))
+      ->values($values)
+      ->execute();
+
+    // Reset the cached schema version.
+    drupal_get_installed_schema_version($profile, TRUE);
+
+    // Load the updates again to make sure the install profile updates are loaded
+    drupal_load_updates();
+  }
+}
+
+/**
+ * Parse pre-Drupal 7 database connection URLs and return D7 compatible array.
+ *
+ * @return
+ *   Drupal 7 DBTNG compatible array of database connection information.
+ */
+function update_parse_db_url($db_url, $db_prefix) {
+  $databases = array();
+  if (!is_array($db_url)) {
+    $db_url = array('default' => $db_url);
+  }
+  foreach ($db_url as $database => $url) {
+    $url = parse_url($url);
+    $databases[$database]['default'] = array(
+      // MySQLi uses the mysql driver.
+      'driver' => $url['scheme'] == 'mysqli' ? 'mysql' : $url['scheme'],
+      // Remove the leading slash to get the database name.
+      'database' => substr(urldecode($url['path']), 1),
+      'username' => urldecode($url['user']),
+      'password' => isset($url['pass']) ? urldecode($url['pass']) : '',
+      'host' => urldecode($url['host']),
+      'port' => isset($url['port']) ? urldecode($url['port']) : '',
+    );
+    if (isset($db_prefix)) {
+      $databases[$database]['default']['prefix'] = $db_prefix;
+    }
+  }
+  return $databases;
+}
+
+/**
+ * Constructs a session name compatible with a D6 environment.
+ *
+ * @return
+ *   D6-compatible session name string.
+ *
+ * @see drupal_settings_initialize()
+ */
+function update_get_d6_session_name() {
+  global $base_url, $cookie_domain;
+  $cookie_secure = ini_get('session.cookie_secure');
+
+  // If a custom cookie domain is set in settings.php, that variable forms
+  // the basis of the session name. Re-compute the D7 hashing method to find
+  // out if $cookie_domain was used as the session name.
+  if (($cookie_secure ? 'SSESS' : 'SESS') . substr(hash('sha256', $cookie_domain), 0, 32) == session_name()) {
+    $session_name = $cookie_domain;
+  }
+  else {
+    // Otherwise use $base_url as session name, without the protocol
+    // to use the same session identifiers across http and https.
+    list( , $session_name) = explode('://', $base_url, 2);
+  }
+
+  if ($cookie_secure) {
+    $session_name .= 'SSL';
+  }
+
+  return 'SESS' . md5($session_name);
 }
 
 /**
@@ -511,10 +1272,10 @@ function update_get_update_function_list($starting_updates) {
  * requirement that the first update function needs to run before the second.
  * For example, consider this graph:
  *
- * system_update_8000 ---> system_update_8001 ---> system_update_8002
+ * system_update_7000 ---> system_update_7001 ---> system_update_7002
  *
- * Visually, this indicates that system_update_8000() must run before
- * system_update_8001(), which in turn must run before system_update_8002().
+ * Visually, this indicates that system_update_7000() must run before
+ * system_update_7001(), which in turn must run before system_update_7002().
  *
  * The function takes into account standard dependencies within each module, as
  * shown above (i.e., the fact that each module's updates must run in numerical
@@ -661,15 +1422,15 @@ function update_retrieve_dependencies() {
               // implementation of hook_update_dependencies() required this
               // ordering:
               //
-              // system_update_8001 ---> user_update_8000
+              // system_update_7001 ---> user_update_7000
               //
               // but another module's implementation of the hook required this
               // one:
               //
-              // system_update_8002 ---> user_update_8000
+              // system_update_7002 ---> user_update_7000
               //
-              // we record the second one, since system_update_8001() is always
-              // guaranteed to run before system_update_8002() anyway (within
+              // we record the second one, since system_update_7001() is always
+              // guaranteed to run before system_update_7002() anyway (within
               // an individual module, updates are always run in numerical
               // order).
               if (!isset($return[$module][$update][$module_dependency]) || $update_dependency > $return[$module][$update][$module_dependency]) {
@@ -686,7 +1447,7 @@ function update_retrieve_dependencies() {
 }
 
 /**
- * @defgroup update-api-7.x-to-8.x Update versions of API functions
+ * @defgroup update-api-6.x-to-7.x Update versions of API functions
  * @{
  * Functions similar to normal API function but not firing hooks.
  *
@@ -696,5 +1457,5 @@ function update_retrieve_dependencies() {
  */
 
 /**
- * @} End of "defgroup update-api-7.x-to-8.x"
+ * @} End of "defgroup update-api-6.x-to-7.x"
  */
diff --git a/misc/watchdog-error.png b/misc/watchdog-error.png
index f7e60e5..db05365 100644
Binary files a/misc/watchdog-error.png and b/misc/watchdog-error.png differ
diff --git a/misc/watchdog-ok.png b/misc/watchdog-ok.png
index 6ebea3e..1d7baa0 100644
Binary files a/misc/watchdog-ok.png and b/misc/watchdog-ok.png differ
diff --git a/misc/watchdog-warning.png b/misc/watchdog-warning.png
index 5d33a51..d8dced8 100644
Binary files a/misc/watchdog-warning.png and b/misc/watchdog-warning.png differ
diff --git a/modules/aggregator/aggregator.info b/modules/aggregator/aggregator.info
index f147740..988111e 100644
--- a/modules/aggregator/aggregator.info
+++ b/modules/aggregator/aggregator.info
@@ -2,7 +2,7 @@ name = Aggregator
 description = "Aggregates syndicated content (RSS, RDF, and Atom feeds)."
 package = Core
 version = VERSION
-core = 8.x
+core = 7.x
 files[] = aggregator.test
 configure = admin/config/services/aggregator/settings
 stylesheets[all][] = aggregator.css
diff --git a/modules/aggregator/aggregator.install b/modules/aggregator/aggregator.install
index eecd14f..f19d7de 100644
--- a/modules/aggregator/aggregator.install
+++ b/modules/aggregator/aggregator.install
@@ -278,3 +278,31 @@ function aggregator_schema() {
 
   return $schema;
 }
+
+/**
+ * Add hash column to aggregator_feed table.
+ */
+function aggregator_update_7000() {
+  db_add_field('aggregator_feed', 'hash', array('type' => 'varchar', 'length' => 64, 'not null' => TRUE, 'default' => ''));
+}
+
+/**
+ * Add aggregator teaser length to settings from old global default teaser length
+ */
+function aggregator_update_7001() {
+  variable_set('aggregator_teaser_length', variable_get('teaser_length'));
+}
+
+/**
+ * Add queued timestamp.
+ */
+function aggregator_update_7002() {
+  db_add_field('aggregator_feed', 'queued', array(
+    'type' => 'int',
+    'not null' => TRUE,
+    'default' => 0,
+    'description' => 'Time when this feed was queued for refresh, 0 if not queued.',
+  ));
+  db_add_index('aggregator_feed', 'queued', array('queued'));
+}
+
diff --git a/modules/aggregator/tests/aggregator_test.info b/modules/aggregator/tests/aggregator_test.info
index 583a7fc..b8dd19d 100644
--- a/modules/aggregator/tests/aggregator_test.info
+++ b/modules/aggregator/tests/aggregator_test.info
@@ -2,5 +2,5 @@ name = "Aggregator module tests"
 description = "Support module for aggregator related testing."
 package = Testing
 version = VERSION
-core = 8.x
+core = 7.x
 hidden = TRUE
diff --git a/modules/block/block.admin.inc b/modules/block/block.admin.inc
index 3981de9..7cf299c 100644
--- a/modules/block/block.admin.inc
+++ b/modules/block/block.admin.inc
@@ -16,7 +16,7 @@ function block_admin_demo($theme = NULL) {
 /**
  * Menu callback for admin/structure/block.
  *
- * @param $theme
+ * @param $theme
  *   The theme to display the administration page for. If not provided, defaults
  *   to the currently used theme.
  */
diff --git a/modules/block/block.api.php b/modules/block/block.api.php
index 90e23bd..d33f594 100644
--- a/modules/block/block.api.php
+++ b/modules/block/block.api.php
@@ -205,23 +205,27 @@ function hook_block_save($delta = '', $edit = array()) {
  * @see hook_block_view_MODULE_DELTA_alter()
  */
 function hook_block_view($delta = '') {
-  // This example comes from node.module. Note that you can also return a
-  // renderable array rather than rendered HTML for 'content'.
+  // This example is adapted from node.module.
   $block = array();
 
   switch ($delta) {
     case 'syndicate':
       $block['subject'] = t('Syndicate');
-      $block['content'] = theme('feed_icon', array('url' => url('rss.xml'), 'title' => t('Syndicate')));
+      $block['content'] = array(
+        '#theme' => 'feed_icon',
+        '#url' => 'rss.xml',
+        '#title' => t('Syndicate'),
+      );
       break;
 
     case 'recent':
       if (user_access('access content')) {
         $block['subject'] = t('Recent content');
         if ($nodes = node_get_recent(variable_get('node_recent_block_count', 10))) {
-          $block['content'] = theme('node_recent_block', array(
-            'nodes' => $nodes,
-          ));
+          $block['content'] = array(
+            '#theme' => 'node_recent_block',
+            '#nodes' => $nodes,
+          );
         } else {
           $block['content'] = t('No content available.');
         }
diff --git a/modules/block/block.info b/modules/block/block.info
index 6ad58ad..f8c0f0c 100644
--- a/modules/block/block.info
+++ b/modules/block/block.info
@@ -2,6 +2,6 @@ name = Block
 description = Controls the visual building blocks a page is constructed with. Blocks are boxes of content rendered into an area, or region, of a web page.
 package = Core
 version = VERSION
-core = 8.x
+core = 7.x
 files[] = block.test
 configure = admin/structure/block
diff --git a/modules/block/block.install b/modules/block/block.install
index deed13a..c45b076 100644
--- a/modules/block/block.install
+++ b/modules/block/block.install
@@ -185,3 +185,288 @@ function block_install() {
     ->condition('name', 'block')
     ->execute();
 }
+
+/**
+ * Implements hook_update_dependencies().
+ */
+function block_update_dependencies() {
+  // Block update 7005 needs to query the list of existing text formats and
+  // therefore must run after filter_update_7000().
+  $dependencies['block'][7005] = array(
+    'filter' => 7000,
+  );
+  // Ensure that format columns are only changed after Filter module has changed
+  // the primary records.
+  $dependencies['block'][7007] = array(
+    'filter' => 7010,
+  );
+
+  return $dependencies;
+}
+
+/**
+ * @addtogroup updates-6.x-to-7.x
+ * @{
+ */
+
+/**
+ * Set system.weight to a low value for block module.
+ *
+ * Block should go first so that other modules can alter its output
+ * during hook_page_alter(). Almost everything on the page is a block,
+ * so before block module runs, there will not be much to alter.
+ */
+function block_update_7000() {
+  db_update('system')
+    ->fields(array('weight' => '-5'))
+    ->condition('name', 'block')
+    ->execute();
+}
+
+/**
+ * Rename {blocks} table to {block}, {blocks_roles} to {block_role} and
+ * {boxes} to {block_custom}.
+ */
+function block_update_7002() {
+  db_drop_index('blocks', 'list');
+  db_rename_table('blocks', 'block');
+  db_rename_table('blocks_roles', 'block_role');
+  db_rename_table('boxes', 'block_custom');
+}
+
+/**
+ * Change the weight column to normal int.
+ */
+function block_update_7003() {
+  db_change_field('block', 'weight', 'weight', array(
+    'type' => 'int',
+    'not null' => TRUE,
+    'default' => 0,
+    'description' => 'Block weight within region.',
+  ), array(
+    'indexes' => array(
+      'list' => array('theme', 'status', 'region', 'weight', 'module'),
+    ),
+  ));
+}
+
+/**
+ * Add new blocks to new regions, migrate custom variables to blocks.
+ */
+function block_update_7004() {
+  // Collect a list of themes with blocks.
+  $themes_with_blocks = array();
+  $result = db_query("SELECT s.name FROM {system} s INNER JOIN {block} b ON s.name = b.theme WHERE s.type = 'theme' GROUP by s.name");
+
+  $insert = db_insert('block')->fields(array('module', 'delta', 'theme', 'status', 'weight', 'region', 'pages', 'cache'));
+  foreach ($result as $theme) {
+    $themes_with_blocks[] = $theme->name;
+    // Add new system generated help block.
+    $insert->values(array(
+      'module' => 'system',
+      'delta' => 'help',
+      'theme' => $theme->name,
+      'status' => 1,
+      'weight' => 0,
+      'region' => 'help',
+      'pages' => '',
+      'cache' => DRUPAL_CACHE_PER_ROLE,
+    ));
+    // Add new system generated main page content block.
+    $insert->values(array(
+      'module' => 'system',
+      'delta' => 'main',
+      'theme' => $theme->name,
+      'status' => 1,
+      'weight' => 0,
+      'region' => 'content',
+      'pages' => '',
+      'cache' => DRUPAL_NO_CACHE,
+    ));
+  }
+  $insert->execute();
+
+  // Migrate blocks from left/right regions to first/second regions.
+  db_update('block')
+    ->fields(array('region' => 'sidebar_first'))
+    ->condition('region', 'left')
+    ->execute();
+  db_update('block')
+    ->fields(array('region' => 'sidebar_second'))
+    ->condition('region', 'right')
+    ->execute();
+
+  // Migrate contact form information.
+  $default_format = variable_get('filter_default_format', 1);
+  if ($contact_help = variable_get('contact_form_information', '')) {
+    $bid = db_insert('block_custom')
+      ->fields(array(
+        'body' => $contact_help,
+        'info' => 'Contact page help',
+        'format' => $default_format,
+      ))
+      ->execute();
+
+    $insert = db_insert('block')->fields(array('module', 'delta', 'theme', 'status', 'weight', 'region', 'visibility', 'pages', 'cache'));
+    foreach ($themes_with_blocks as $theme) {
+      // Add contact help block for themes, which had blocks.
+      $insert->values(array(
+        'module' => 'block',
+        'delta' => $bid,
+        'theme' => $theme,
+        'status' => 1,
+        'weight' => 5,
+        'region' => 'help',
+        'visibility' => BLOCK_VISIBILITY_LISTED,
+        'pages' => 'contact',
+        'cache' => DRUPAL_NO_CACHE,
+      ));
+    }
+    drupal_set_message('The contact form information setting was migrated to <a href="' . url('admin/structure/block/manage/block/' . $bid . '/configure') . '">a custom block</a> and set up to only show on the site-wide contact page. The block was set to use the default text format, which might differ from the HTML based format used before. Check the block and ensure that the output is right.');
+  }
+  $insert->execute();
+
+  // Migrate user help setting.
+  if ($user_help = variable_get('user_registration_help', '')) {
+    $bid = db_insert('block_custom')->fields(array('body' => $user_help, 'info' => 'User registration guidelines', 'format' => $default_format))->execute();
+
+    $insert = db_insert('block')->fields(array('module', 'delta', 'theme', 'status', 'weight', 'region', 'visibility', 'pages', 'cache'));
+    foreach ($themes_with_blocks as $theme) {
+      // Add user registration help block for themes, which had blocks.
+      $insert->values(array(
+        'module' => 'block',
+        'delta' => $bid,
+        'theme' => $theme,
+        'status' => 1,
+        'weight' => 5,
+        'region' => 'help',
+        'visibility' => BLOCK_VISIBILITY_LISTED,
+        'pages' => 'user/register',
+        'cache' => DRUPAL_NO_CACHE,
+      ));
+    }
+    drupal_set_message('The user registration guidelines were migrated to <a href="' . url('admin/structure/block/manage/block/' . $bid . '/configure') . '">a custom block</a> and set up to only show on the user registration page. The block was set to use the default text format, which might differ from the HTML based format used before. Check the block and ensure that the output is right.');
+    $insert->execute();
+  }
+
+  // Migrate site mission setting.
+  if ($mission = variable_get('site_mission')) {
+    $bid = db_insert('block_custom')->fields(array('body' => $mission, 'info' => 'Site mission', 'format' => $default_format))->execute();
+
+    $insert = db_insert('block')->fields(array('module', 'delta', 'theme', 'status', 'weight', 'region', 'visibility', 'pages', 'cache'));
+    foreach ($themes_with_blocks as $theme) {
+      // Add mission block for themes, which had blocks.
+      $insert->values(array(
+        'module' => 'block',
+        'delta' => $bid,
+        'theme' => $theme,
+        'status' => 1,
+        'weight' => 0,
+        'region' => 'highlighted',
+        'visibility' => BLOCK_VISIBILITY_LISTED,
+        'pages' => '<front>',
+        'cache' => DRUPAL_NO_CACHE,
+      ));
+    }
+    drupal_set_message('The site mission was migrated to <a href="' . url('admin/structure/block/manage/block/' . $bid . '/configure') . '">a custom block</a> and set up to only show on the front page in the highlighted content region. The block was set to use the default text format, which might differ from the HTML based format used before. Check the block and ensure that the output is right. If your theme does not have a highlighted content region, you might need to <a href="' . url('admin/structure/block') . '">relocate the block</a>.');
+    $insert->execute();
+    // Migrate mission to RSS site description.
+    variable_set('feed_description', $mission);
+  }
+
+  // Migrate site footer message to a custom block.
+  if ($footer_message = variable_get('site_footer', '')) {
+    $bid = db_insert('block_custom')->fields(array('body' => $footer_message, 'info' => 'Footer message', 'format' => $default_format))->execute();
+
+    $insert = db_insert('block')->fields(array('module', 'delta', 'theme', 'status', 'weight', 'region', 'pages', 'cache'));
+    foreach ($themes_with_blocks as $theme) {
+      // Add site footer block for themes, which had blocks.
+      // Set low weight, so the block comes early (it used to be
+      // before the other blocks).
+      $insert->values(array(
+        'module' => 'block',
+        'delta' => $bid,
+        'theme' => $theme,
+        'status' => 1,
+        'weight' => -10,
+        'region' => 'footer',
+        'pages' => '',
+        'cache' => DRUPAL_NO_CACHE,
+      ));
+    }
+    drupal_set_message('The footer message was migrated to <a href="' . url('admin/structure/block/manage/block/' . $bid . '/configure') . '">a custom block</a> and set up to appear in the footer. The block was set to use the default text format, which might differ from the HTML based format used before. Check the block and ensure that the output is right. If your theme does not have a footer region, you might need to <a href="' . url('admin/structure/block') . '">relocate the block</a>.');
+    $insert->execute();
+  }
+
+  // Remove the variables (even if they were saved empty on the admin interface),
+  // to avoid keeping clutter in the variables table.
+  variable_del('contact_form_information');
+  variable_del('user_registration_help');
+  variable_del('site_mission');
+  variable_del('site_footer');
+
+  // Rebuild theme data, so the new 'help' region is identified.
+  system_rebuild_theme_data();
+}
+
+/**
+ * Update the {block_custom}.format column.
+ */
+function block_update_7005() {
+  // For an explanation of these updates, see the code comments in
+  // user_update_7010().
+  db_change_field('block_custom', 'format', 'format', array(
+    'type' => 'int',
+    'unsigned' => TRUE,
+    'not null' => FALSE,
+    'description' => 'The {filter_format}.format of the block body.',
+  ));
+  db_update('block_custom')
+    ->fields(array('format' => NULL))
+    ->condition('body', '')
+    ->condition('format', 0)
+    ->execute();
+  $existing_formats = db_query("SELECT format FROM {filter_format}")->fetchCol();
+  $default_format = variable_get('filter_default_format', 1);
+  db_update('block_custom')
+    ->fields(array('format' => $default_format))
+    ->isNotNull('format')
+    ->condition('format', $existing_formats, 'NOT IN')
+    ->execute();
+}
+
+/**
+ * Recreates cache_block table.
+ *
+ * Converts fields that hold serialized variables from text to blob.
+ * Removes 'headers' column.
+ */
+function block_update_7006() {
+  $schema = system_schema_cache_7054();
+
+  db_drop_table('cache_block');
+  db_create_table('cache_block', $schema);
+}
+
+/**
+ * Change {block_custom}.format into varchar.
+ */
+function block_update_7007() {
+  db_change_field('block_custom', 'format', 'format', array(
+    'type' => 'varchar',
+    'length' => 255,
+    'not null' => FALSE,
+    'description' => 'The {filter_format}.format of the block body.',
+  ));
+}
+
+/**
+ * Update database to match Drupal 7 schema.
+ */
+function block_update_7008() {
+  db_drop_field('block', 'throttle');
+}
+
+/**
+ * @} End of "addtogroup updates-6.x-to-7.x"
+ */
diff --git a/modules/block/block.module b/modules/block/block.module
index c5e229b..73eba33 100644
--- a/modules/block/block.module
+++ b/modules/block/block.module
@@ -148,7 +148,7 @@ function block_menu() {
       'type' => $key == $default_theme ? MENU_DEFAULT_LOCAL_TASK : MENU_LOCAL_TASK,
       'weight' => $key == $default_theme ? -10 : 0,
       'access callback' => '_block_themes_access',
-      'access arguments' => array($key),
+      'access arguments' => array($theme),
       'file' => 'block.admin.inc',
     );
     if ($key != $default_theme) {
@@ -167,7 +167,7 @@ function block_menu() {
       'page arguments' => array($key),
       'type' => MENU_CALLBACK,
       'access callback' => '_block_themes_access',
-      'access arguments' => array($key),
+      'access arguments' => array($theme),
       'theme callback' => '_block_custom_theme',
       'theme arguments' => array($key),
       'file' => 'block.admin.inc',
@@ -355,7 +355,7 @@ function _block_get_renderable_array($list = array()) {
 /**
  * Update the 'block' DB table with the blocks currently exported by modules.
  *
- * @param $theme
+ * @param $theme
  *   The theme to rehash blocks for. If not provided, defaults to the currently
  *   used theme.
  *
@@ -943,7 +943,15 @@ function template_preprocess_block(&$variables) {
 
   $variables['theme_hook_suggestions'][] = 'block__' . $variables['block']->region;
   $variables['theme_hook_suggestions'][] = 'block__' . $variables['block']->module;
-  $variables['theme_hook_suggestions'][] = 'block__' . $variables['block']->module . '__' . $variables['block']->delta;
+  // Hyphens (-) and underscores (_) play a special role in theme suggestions.
+  // Theme suggestions should only contain underscores, because within
+  // drupal_find_theme_templates(), underscores are converted to hyphens to
+  // match template file names, and then converted back to underscores to match
+  // pre-processing and other function names. So if your theme suggestion
+  // contains a hyphen, it will end up as an underscore after this conversion,
+  // and your function names won't be recognized. So, we need to convert
+  // hyphens to underscores in block deltas for the theme suggestions.
+  $variables['theme_hook_suggestions'][] = 'block__' . $variables['block']->module . '__' . strtr($variables['block']->delta, '-', '_');
 
   // Create a valid HTML ID and make sure it is unique.
   $variables['block_html_id'] = drupal_html_id('block-' . $variables['block']->module . '-' . $variables['block']->delta);
diff --git a/modules/block/block.test b/modules/block/block.test
index d036d36..022bf38 100644
--- a/modules/block/block.test
+++ b/modules/block/block.test
@@ -414,7 +414,7 @@ class BlockAdminThemeTestCase extends DrupalWebTestCase {
   public static function getInfo() {
     return array(
       'name' => 'Admin theme block admin accessibility',
-      'description' => "Check whether the block administer page for a disabled theme acccessible if and only if it's the admin theme.",
+      'description' => "Check whether the block administer page for a disabled theme accessible if and only if it's the admin theme.",
       'group' => 'Block',
     );
   }
@@ -666,3 +666,45 @@ class BlockHTMLIdTestCase extends DrupalWebTestCase {
     $this->assertRaw('block-block-test-test-html-id', t('HTML id for test block is valid.'));
   }
 }
+
+
+/**
+ * Unit tests for template_preprocess_block().
+ */
+class BlockTemplateSuggestionsUnitTest extends DrupalUnitTestCase {
+  public static function getInfo() {
+    return array(
+      'name' => 'Block template suggestions',
+      'description' => 'Test the template_preprocess_block() function.',
+      'group' => 'Block',
+    );
+  }
+
+  /**
+   * Test if template_preprocess_block() handles the suggestions right.
+   */
+  function testBlockThemeHookSuggestions() {
+    // Define block delta with underscore to be preprocessed
+    $block1 = new stdClass();
+    $block1->module = 'block';
+    $block1->delta = 'underscore_test';
+    $block1->region = 'footer';
+    $variables1 = array();
+    $variables1['elements']['#block'] = $block1;
+    $variables1['elements']['#children'] = '';
+    template_preprocess_block($variables1);
+    $this->assertEqual($variables1['theme_hook_suggestions'], array('block__footer', 'block__block', 'block__block__underscore_test'), t('Found expected block suggestions for delta with underscore'));
+
+    // Define block delta with hyphens to be preprocessed. Hyphens should be
+    // replaced with underscores.
+    $block2 = new stdClass();
+    $block2->module = 'block';
+    $block2->delta = 'hyphen-test';
+    $block2->region = 'footer';
+    $variables2 = array();
+    $variables2['elements']['#block'] = $block2;
+    $variables2['elements']['#children'] = '';
+    template_preprocess_block($variables2);
+    $this->assertEqual($variables2['theme_hook_suggestions'], array('block__footer', 'block__block', 'block__block__hyphen_test'), t('Hyphens (-) in block delta were replaced by underscore (_)'));
+  }
+}
diff --git a/modules/block/tests/block_test.info b/modules/block/tests/block_test.info
index 7efb99c..879f251 100644
--- a/modules/block/tests/block_test.info
+++ b/modules/block/tests/block_test.info
@@ -2,5 +2,5 @@ name = Block test
 description = Provides test blocks.
 package = Testing
 version = VERSION
-core = 8.x
+core = 7.x
 hidden = TRUE
diff --git a/modules/blog/blog.info b/modules/blog/blog.info
index b962d28..801abfb 100644
--- a/modules/blog/blog.info
+++ b/modules/blog/blog.info
@@ -2,5 +2,5 @@ name = Blog
 description = Enables multi-user blogs.
 package = Core
 version = VERSION
-core = 8.x
+core = 7.x
 files[] = blog.test
diff --git a/modules/blog/blog.install b/modules/blog/blog.install
index f591e71..fffb14b 100644
--- a/modules/blog/blog.install
+++ b/modules/blog/blog.install
@@ -14,3 +14,10 @@ function blog_install() {
   $types = node_type_get_types();
   node_add_body_field($types['blog']);
 }
+
+/**
+ * Implements hook_uninstall().
+ */
+function blog_uninstall() {
+  variable_del('blog_block_count');
+}
diff --git a/modules/blog/blog.module b/modules/blog/blog.module
index 98ebe51..731bd2f 100644
--- a/modules/blog/blog.module
+++ b/modules/blog/blog.module
@@ -26,6 +26,7 @@ function blog_user_view($account) {
     $account->content['summary']['blog'] =  array(
       '#type' => 'user_profile_item',
       '#title' => t('Blog'),
+      // l() escapes the attributes, so we should not escape !username here.
       '#markup' => l(t('View recent blog entries'), "blog/$account->uid", array('attributes' => array('title' => t("Read !username's latest blog entries.", array('!username' => format_username($account)))))),
       '#attributes' => array('class' => array('blog')),
     );
@@ -67,7 +68,7 @@ function blog_form($node, $form_state) {
  */
 function blog_view($node, $view_mode) {
   if ($view_mode == 'full' && node_is_page($node)) {
-    // Breadcrumb navigation.
+    // Breadcrumb navigation.  l() escapes title, so we should not escape !name.
     drupal_set_breadcrumb(array(l(t('Home'), NULL), l(t('Blogs'), 'blog'), l(t("!name's blog", array('!name' => format_username($node))), 'blog/' . $node->uid)));
   }
   return $node;
@@ -79,6 +80,7 @@ function blog_view($node, $view_mode) {
 function blog_node_view($node, $view_mode) {
   if ($view_mode != 'rss') {
     if ($node->type == 'blog' && (arg(0) != 'blog' || arg(1) != $node->uid)) {
+      // This goes to l(), which escapes !username in both title and attributes.
       $links['blog_usernames_blog'] = array(
         'title' => t("!username's blog", array('!username' => format_username($node))),
         'href' => "blog/$node->uid",
diff --git a/modules/book/book.info b/modules/book/book.info
index 0f4d2b1..2c7311f 100644
--- a/modules/book/book.info
+++ b/modules/book/book.info
@@ -2,7 +2,7 @@ name = Book
 description = Allows users to create and organize related content in an outline.
 package = Core
 version = VERSION
-core = 8.x
+core = 7.x
 files[] = book.test
 configure = admin/content/book/settings
 stylesheets[all][] = book.css
diff --git a/modules/book/book.install b/modules/book/book.install
index 1bd094c..e92aca6 100644
--- a/modules/book/book.install
+++ b/modules/book/book.install
@@ -17,6 +17,10 @@ function book_install() {
  * Implements hook_uninstall().
  */
 function book_uninstall() {
+  variable_del('book_allowed_types');
+  variable_del('book_child_type');
+  variable_del('book_block_mode');
+
   // Delete menu links.
   db_delete('menu_links')
     ->condition('module', 'book')
diff --git a/modules/book/book.module b/modules/book/book.module
index 82d38f7..de9561f 100644
--- a/modules/book/book.module
+++ b/modules/book/book.module
@@ -279,10 +279,10 @@ function book_block_view($delta = '') {
   }
   elseif ($current_bid) {
     // Only display this block when the user is browsing a book.
-    $select = db_select('node');
-    $select->addField('node', 'title');
-    $select->condition('nid', $node->book['bid']);
-    $select->addTag('node_access');
+  $select = db_select('node', 'n')
+    ->fields('n', array('title'))
+    ->condition('nid', $node->book['bid'])
+    ->addTag('node_access');
     $title = $select->execute()->fetchField();
     // Only show the block if the user has view access for the top-level node.
     if ($title) {
diff --git a/modules/color/color.info b/modules/color/color.info
index c25e123..b1b862d 100644
--- a/modules/color/color.info
+++ b/modules/color/color.info
@@ -2,5 +2,5 @@ name = Color
 description = Allows administrators to change the color scheme of compatible themes.
 package = Core
 version = VERSION
-core = 8.x
+core = 7.x
 files[] = color.test
diff --git a/modules/color/color.install b/modules/color/color.install
index 5705ade..b0eb95e 100644
--- a/modules/color/color.install
+++ b/modules/color/color.install
@@ -40,3 +40,18 @@ function color_requirements($phase) {
 
   return $requirements;
 }
+
+/**
+ * Warn site administrator if unsafe CSS color codes are found in the database.
+ */
+function color_update_7001() {
+  $theme_palettes = db_query("SELECT name FROM {variable} WHERE name LIKE 'color_%_palette'")->fetchCol();
+  foreach ($theme_palettes as $name) {
+    $palette = variable_get($name, array());
+    foreach ($palette as $key => $color) {
+      if (!preg_match('/^#([a-f0-9]{3}){1,2}$/iD', $color)) {
+        drupal_set_message('Some of the custom CSS color codes specified via the color module are invalid. Please examine the themes which are making use of the color module at the <a href="'. url('admin/appearance/settings') .'">Appearance settings</a> page to verify their CSS color values.', 'warning');
+      }
+    }
+  }
+}
diff --git a/modules/color/color.module b/modules/color/color.module
index ff6c70e..f3fafe7 100644
--- a/modules/color/color.module
+++ b/modules/color/color.module
@@ -42,6 +42,7 @@ function color_form_system_theme_settings_alter(&$form, &$form_state) {
       '#theme' => 'color_scheme_form',
     );
     $form['color'] += color_scheme_form($form, $form_state, $theme);
+    $form['#validate'][] = 'color_scheme_form_validate';
     $form['#submit'][] = 'color_scheme_form_submit';
   }
 }
@@ -271,6 +272,18 @@ function theme_color_scheme_form($variables) {
 }
 
 /**
+ * Validation handler for color change form.
+ */
+function color_scheme_form_validate($form, &$form_state) {
+  // Only accept hexadecimal CSS color strings to avoid XSS upon use.
+  foreach ($form_state['values']['palette'] as $key => $color) {
+    if (!preg_match('/^#([a-f0-9]{3}){1,2}$/iD', $color)) {
+      form_set_error('palette][' . $key, t('%name must be a valid hexadecimal CSS color value.', array('%name' => $form['color']['palette'][$key]['#title'])));
+    }
+  }
+}
+
+/**
  * Submit handler for color change form.
  */
 function color_scheme_form_submit($form, &$form_state) {
diff --git a/modules/comment/comment.css b/modules/comment/comment.css
index 4a2675a..a55f527 100644
--- a/modules/comment/comment.css
+++ b/modules/comment/comment.css
@@ -8,6 +8,6 @@
 .comment-unpublished {
   background-color: #fff4f4;
 }
-.preview .comment {
+.comment-preview {
   background-color: #ffffea;
 }
diff --git a/modules/comment/comment.info b/modules/comment/comment.info
index a5837af..7cbe246 100644
--- a/modules/comment/comment.info
+++ b/modules/comment/comment.info
@@ -2,7 +2,7 @@ name = Comment
 description = Allows users to comment on and discuss published content.
 package = Core
 version = VERSION
-core = 8.x
+core = 7.x
 dependencies[] = text
 files[] = comment.module
 files[] = comment.test
diff --git a/modules/comment/comment.install b/modules/comment/comment.install
index 44b323f..d64b3ac 100644
--- a/modules/comment/comment.install
+++ b/modules/comment/comment.install
@@ -79,6 +79,295 @@ function comment_modules_enabled($modules) {
 }
 
 /**
+ * Implements hook_update_dependencies().
+ */
+function comment_update_dependencies() {
+  // Comment update 7005 creates the comment body field and therefore must run
+  // after text module has been enabled and entities have been updated.
+  $dependencies['comment'][7005] = array(
+    'system' => 7021,
+  );
+
+  // Comment update 7006 needs to query the list of existing text formats and
+  // therefore must run after filter_update_7000().
+  $dependencies['comment'][7006] = array(
+    'filter' => 7000,
+  );
+
+  return $dependencies;
+}
+
+/**
+ * @addtogroup updates-6.x-to-7.x
+ * @{
+ */
+
+/**
+ * Rename comment display setting variables.
+ */
+function comment_update_7000() {
+  $types = _update_7000_node_get_types();
+  foreach ($types as $type => $type_object) {
+    variable_del('comment_default_order' . $type);
+
+    // Drupal 6 had four display modes:
+    // - COMMENT_MODE_FLAT_COLLAPSED = 1
+    // - COMMENT_MODE_FLAT_EXPANDED = 2
+    // - COMMENT_MODE_THREADED_COLLAPSED = 3
+    // - COMMENT_MODE_THREADED_EXPANDED = 4
+    //
+    // Drupal 7 doesn't support collapsed/expanded modes anymore, so we
+    // migrate all the flat modes to COMMENT_MODE_FLAT (0) and all the threaded
+    // modes to COMMENT_MODE_THREADED (1).
+    $setting = variable_get('comment_default_mode_' . $type, 4);
+    if ($setting == 3 || $setting == 4) {
+      variable_set('comment_default_mode_' . $type, 1);
+    }
+    else {
+      variable_set('comment_default_mode_' . $type, 0);
+    }
+
+    // There were only two comment modes in the past:
+    // - 1 was 'required' previously, convert into DRUPAL_REQUIRED (2).
+    // - 0 was 'optional' previously, convert into DRUPAL_OPTIONAL (1).
+    $preview = variable_get('comment_preview_' . $type, 1) ? 2 : 1;
+    variable_set('comment_preview_' . $type, $preview);
+  }
+}
+
+/**
+ * Change comment status from published being 0 to being 1
+ */
+function comment_update_7001() {
+  // Choose a temporary status value different from the existing status values.
+  $tmp_status = db_query('SELECT MAX(status) FROM {comments}')->fetchField() + 1;
+
+  $changes = array(
+    0 => $tmp_status,
+    1 => 0,
+    $tmp_status => 1,
+  );
+
+  foreach ($changes as $old => $new) {
+    db_update('comments')
+      ->fields(array('status' => $new))
+      ->condition('status', $old)
+      ->execute();
+  }
+}
+
+/**
+ * Rename {comments} table to {comment} and upgrade it.
+ */
+function comment_update_7002() {
+  db_rename_table('comments', 'comment');
+
+  // Add user-related indexes.
+  db_add_index('comment', 'comment_uid', array('uid'));
+  db_add_index('node_comment_statistics', 'last_comment_uid', array('last_comment_uid'));
+
+  // Create a language column.
+  db_add_field('comment', 'language', array(
+    'type' => 'varchar',
+    'length' => 12,
+    'not null' => TRUE,
+    'default' => '',
+  ));
+  db_add_index('comment', 'comment_nid_language', array('nid', 'language'));
+}
+
+/**
+ * Split {comment}.timestamp into 'created' and 'changed', improve indexing on {comment}.
+ */
+function comment_update_7003() {
+  // Drop the old indexes.
+  db_drop_index('comment', 'status');
+  db_drop_index('comment', 'pid');
+
+  // Create a created column.
+  db_add_field('comment', 'created', array(
+    'type' => 'int',
+    'not null' => TRUE,
+    'default' => 0,
+  ));
+
+  // Rename the timestamp column to changed.
+  db_change_field('comment', 'timestamp', 'changed', array(
+    'type' => 'int',
+    'not null' => TRUE,
+    'default' => 0,
+  ));
+
+  // Migrate the data.
+  // @todo db_update() should support this.
+  db_query('UPDATE {comment} SET created = changed');
+
+  // Recreate the indexes.
+  // The 'comment_num_new' index is optimized for comment_num_new()
+  // and comment_new_page_count().
+  db_add_index('comment', 'comment_num_new', array('nid', 'status', 'created', 'cid', 'thread'));
+  db_add_index('comment', 'comment_pid_status', array('pid', 'status'));
+}
+
+/**
+ * Upgrade the {node_comment_statistics} table.
+ */
+function comment_update_7004() {
+  db_add_field('node_comment_statistics', 'cid', array(
+    'type' => 'int',
+    'not null' => TRUE,
+    'default' => 0,
+    'description' => 'The {comment}.cid of the last comment.',
+  ));
+  db_add_index('node_comment_statistics', 'cid', array('cid'));
+
+  // Add an index on the comment_count.
+  db_add_index('node_comment_statistics', 'comment_count', array('comment_count'));
+}
+
+/**
+ * Create the comment_body field.
+ */
+function comment_update_7005() {
+  // Create comment body field.
+  $field = array(
+    'field_name' => 'comment_body',
+    'type' => 'text_long',
+    'module' => 'text',
+    'entity_types' => array(
+      'comment',
+    ),
+    'settings' => array(),
+    'cardinality' => 1,
+  );
+  _update_7000_field_create_field($field);
+
+  // Add the field to comments for all existing bundles.
+  $generic_instance = array(
+    'entity_type' => 'comment',
+    'label' => t('Comment'),
+    'settings' => array(
+      'text_processing' => 1,
+    ),
+    'required' => TRUE,
+    'display' => array(
+      'default' => array(
+        'label' => 'hidden',
+        'type' => 'text_default',
+        'weight' => 0,
+        'settings' => array(),
+        'module' => 'text',
+      ),
+    ),
+    'widget' => array(
+      'type' => 'text_textarea',
+      'settings' => array(
+        'rows' => 5,
+      ),
+      'weight' => 0,
+      'module' => 'text',
+    ),
+    'description' => '',
+  );
+
+  $types = _update_7000_node_get_types();
+  foreach ($types as $type => $type_object) {
+    $instance = $generic_instance;
+    $instance['bundle'] = 'comment_node_' . $type;
+    _update_7000_field_create_instance($field, $instance);
+  }
+}
+
+/**
+ * Migrate data from the comment field to field storage.
+ */
+function comment_update_7006(&$sandbox) {
+  // This is a multipass update. First set up some comment variables.
+  if (empty($sandbox['total'])) {
+    $comments = (bool) db_query_range('SELECT 1 FROM {comment}', 0, 1)->fetchField();
+    $sandbox['types'] = array();
+    if ($comments) {
+      $sandbox['types'] = array_keys(_update_7000_node_get_types());
+    }
+    $sandbox['total'] = count($sandbox['types']);
+  }
+
+  if (!empty($sandbox['types'])) {
+    $type = array_shift($sandbox['types']);
+
+    $query = db_select('comment', 'c');
+    $query->innerJoin('node', 'n', 'c.nid = n.nid AND n.type = :type', array(':type' => $type));
+    $query->addField('c', 'cid', 'entity_id');
+    $query->addExpression("'comment_node_$type'", 'bundle');
+    $query->addExpression("'comment'", 'entity_type');
+    $query->addExpression('0', 'deleted');
+    $query->addExpression("'" . LANGUAGE_NONE . "'", 'language');
+    $query->addExpression('0', 'delta');
+    $query->addField('c', 'comment', 'comment_body_value');
+    $query->addField('c', 'format', 'comment_body_format');
+
+    db_insert('field_data_comment_body')
+      ->from($query)
+      ->execute();
+
+    $sandbox['#finished'] = 1 - count($sandbox['types']) / $sandbox['total'];
+  }
+
+  // On the last pass of the update, $sandbox['types'] will be empty.
+  if (empty($sandbox['types'])) {
+    // Update the comment body text formats. For an explanation of these
+    // updates, see the code comments in user_update_7010().
+    db_update('field_data_comment_body')
+      ->fields(array('comment_body_format' => NULL))
+      ->condition('comment_body_value', '')
+      ->condition('comment_body_format', 0)
+      ->execute();
+    $existing_formats = db_query("SELECT format FROM {filter_format}")->fetchCol();
+    $default_format = variable_get('filter_default_format', 1);
+    db_update('field_data_comment_body')
+      ->fields(array('comment_body_format' => $default_format))
+      ->isNotNull('comment_body_format')
+      ->condition('comment_body_format', $existing_formats, 'NOT IN')
+      ->execute();
+
+    // Finally, remove the old comment data.
+    db_drop_field('comment', 'comment');
+    db_drop_field('comment', 'format');
+  }
+}
+
+/**
+ * Add an index to the created column.
+ */
+function comment_update_7007() {
+  db_add_index('comment', 'comment_created', array('created'));
+}
+
+/**
+ * Update database to match Drupal 7 schema.
+ */
+function comment_update_7008() {
+  // Update default status to 1.
+  db_change_field('comment', 'status', 'status', array(
+    'type' => 'int',
+    'unsigned' => TRUE,
+    'not null' => TRUE,
+    'default' => 1,
+    'size' => 'tiny',
+  ));
+
+  // Realign indexes.
+  db_drop_index('comment', 'comment_status_pid');
+  db_add_index('comment', 'comment_status_pid', array('pid', 'status'));
+  db_drop_index('comment', 'comment_pid_status');
+  db_drop_index('comment', 'nid');
+}
+
+/**
+ * @} End of "addtogroup updates-6.x-to-7.x"
+ */
+
+/**
  * Implements hook_schema().
  */
 function comment_schema() {
@@ -179,6 +468,7 @@ function comment_schema() {
       'comment_num_new' => array('nid', 'status', 'created', 'cid', 'thread'),
       'comment_uid' => array('uid'),
       'comment_nid_language' => array('nid', 'language'),
+      'comment_created' => array('created'),
     ),
     'primary key' => array('cid'),
     'foreign keys' => array(
diff --git a/modules/comment/comment.module b/modules/comment/comment.module
index f8c3a01..4a73755 100644
--- a/modules/comment/comment.module
+++ b/modules/comment/comment.module
@@ -494,6 +494,7 @@ function comment_permalink($cid) {
  *
  * @param integer $number
  *   (optional) The maximum number of comments to find. Defaults to 10.
+ *
  * @return
  *   An array of comment objects or an empty array if there are no recent
  *   comments visible to the current user.
@@ -501,15 +502,12 @@ function comment_permalink($cid) {
 function comment_get_recent($number = 10) {
   $query = db_select('comment', 'c');
   $query->innerJoin('node', 'n', 'n.nid = c.nid');
-  $query->innerJoin('node_comment_statistics', 'ncs', 'ncs.nid = c.nid');
   $query->addTag('node_access');
   $comments = $query
     ->fields('c')
-    ->condition('ncs.comment_count', 0, '>')
     ->condition('c.status', COMMENT_PUBLISHED)
     ->condition('n.status', NODE_PUBLISHED)
-    ->orderBy('ncs.last_comment_timestamp', 'DESC')
-    ->orderBy('c.cid', 'DESC')
+    ->orderBy('c.created', 'DESC')
     ->range(0, $number)
     ->execute()
     ->fetchAll();
@@ -988,8 +986,8 @@ function comment_build_content($comment, $node, $view_mode = 'full', $langcode =
   $comment->content = array();
 
   // Build fields content.
-  field_attach_prepare_view('comment', array($comment->cid => $comment), $view_mode);
-  entity_prepare_view('comment', array($comment->cid => $comment));
+  field_attach_prepare_view('comment', array($comment->cid => $comment), $view_mode, $langcode);
+  entity_prepare_view('comment', array($comment->cid => $comment), $langcode);
   $comment->content += field_attach_view('comment', $comment, $view_mode, $langcode);
 
   $comment->content['links'] = array(
@@ -1091,8 +1089,8 @@ function comment_links($comment, $node) {
  *   An array in the format expected by drupal_render().
  */
 function comment_view_multiple($comments, $node, $view_mode = 'full', $weight = 0, $langcode = NULL) {
-  field_attach_prepare_view('comment', $comments, $view_mode);
-  entity_prepare_view('comment', $comments);
+  field_attach_prepare_view('comment', $comments, $view_mode, $langcode);
+  entity_prepare_view('comment', $comments, $langcode);
 
   $build = array(
     '#sorted' => TRUE,
@@ -1467,28 +1465,15 @@ function comment_save($comment) {
     module_invoke_all('entity_presave', $comment, 'comment');
 
     if ($comment->cid) {
-      // Update the comment in the database.
-      db_update('comment')
-        ->fields(array(
-          'status' => $comment->status,
-          'created' => $comment->created,
-          'changed' => $comment->changed,
-          'subject' => $comment->subject,
-          'uid' => $comment->uid,
-          'name' => $comment->name,
-          'mail' => $comment->mail,
-          'homepage' => $comment->homepage,
-          'language' => $comment->language,
-        ))
-        ->condition('cid', $comment->cid)
-        ->execute();
+
+      drupal_write_record('comment', $comment, 'cid');
 
       // Ignore slave server temporarily to give time for the
       // saved comment to be propagated to the slave.
       db_ignore_slave();
 
       // Update the {node_comment_statistics} table prior to executing hooks.
-       _comment_update_node_statistics($comment->nid);
+      _comment_update_node_statistics($comment->nid);
 
       field_attach_update('comment', $comment);
       // Allow modules to respond to the updating of a comment.
@@ -1553,23 +1538,16 @@ function comment_save($comment) {
         $comment->name = $user->name;
       }
 
-      $comment->cid = db_insert('comment')
-        ->fields(array(
-          'nid' => $comment->nid,
-          'pid' => empty($comment->pid) ? 0 : $comment->pid,
-          'uid' => $comment->uid,
-          'subject' => $comment->subject,
-          'hostname' => ip_address(),
-          'created' => $comment->created,
-          'changed' => $comment->changed,
-          'status' => $comment->status,
-          'thread' => $thread,
-          'name' => $comment->name,
-          'mail' => $comment->mail,
-          'homepage' => $comment->homepage,
-          'language' => $comment->language,
-        ))
-        ->execute();
+      // Ensure the parent id (pid) has a value set.
+      if (empty($comment->pid)) {
+        $comment->pid = 0;
+      }
+
+      // Add the values which aren't passed into the function.
+      $comment->thread = $thread;
+      $comment->hostname = ip_address();
+
+      drupal_write_record('comment', $comment);
 
       // Ignore slave server temporarily to give time for the
       // created comment to be propagated to the slave.
@@ -1928,11 +1906,9 @@ function comment_form($form, &$form_state, $comment) {
       '#default_value' => $author,
       '#maxlength' => 60,
       '#size' => 30,
+      '#description' => t('Leave blank for %anonymous.', array('%anonymous' => variable_get('anonymous', t('Anonymous')))),
+      '#autocomplete_path' => 'user/autocomplete',
     );
-    // If the comment is by a registered user, allow to autocomplete username.
-    if ($comment->registered_name != '') {
-      $form['author']['name']['#autocomplete_path'] = 'user/autocomplete';
-    }
   }
   elseif ($user->uid) {
     $form['author']['_author'] = array(
@@ -2113,18 +2089,21 @@ function comment_form_validate($form, &$form_state) {
   entity_form_field_validate('comment', $form, $form_state);
 
   if (!empty($form_state['values']['cid'])) {
+    // Verify the name in case it is being changed from being anonymous.
+    $account = user_load_by_name($form_state['values']['name']);
+    $form_state['values']['uid'] = $account ? $account->uid : 0;
+
     if ($form_state['values']['date'] && strtotime($form_state['values']['date']) === FALSE) {
       form_set_error('date', t('You have to specify a valid date.'));
     }
-    if ($form_state['values']['name'] && !$form_state['values']['is_anonymous'] && !$account = user_load_by_name($form_state['values']['name'])) {
+    if ($form_state['values']['name'] && !$form_state['values']['is_anonymous'] && !$account) {
       form_set_error('name', t('You have to specify a valid author.'));
     }
   }
-
-  // Validate anonymous comment author fields (if given).
-  if ($form_state['values']['is_anonymous']) {
-    // If the (original) author of this comment was an anonymous user, verify
-    // that no registered user with this name exists.
+  elseif ($form_state['values']['is_anonymous']) {
+    // Validate anonymous comment author fields (if given). If the (original)
+    // author of this comment was an anonymous user, verify that no registered
+    // user with this name exists.
     if ($form_state['values']['name']) {
       $query = db_select('users', 'u');
       $query->addField('u', 'uid', 'uid');
diff --git a/modules/comment/comment.test b/modules/comment/comment.test
index 26e9b28..770e01d 100644
--- a/modules/comment/comment.test
+++ b/modules/comment/comment.test
@@ -307,6 +307,26 @@ class CommentInterfaceTest extends CommentHelperCase {
     $this->drupalLogin($this->admin_user);
     $this->setCommentSubject(TRUE);
     $this->setCommentPreview(DRUPAL_OPTIONAL);
+
+    // Test changing the comment author to "Anonymous".
+    $this->drupalGet('comment/' . $comment->id . '/edit');
+    $comment = $this->postComment(NULL, $comment->comment, $comment->subject, array('name' => ''));
+    $comment_loaded = comment_load($comment->id);
+    $this->assertTrue(empty($comment_loaded->name) && $comment_loaded->uid == 0, t('Comment author successfully changed to anonymous.'));
+
+    // Test changing the comment author to an unverified user.
+    $random_name = $this->randomName();
+    $this->drupalGet('comment/' . $comment->id . '/edit');
+    $comment = $this->postComment(NULL, $comment->comment, $comment->subject, array('name' => $random_name));
+    $this->drupalGet('node/' . $this->node->nid);
+    $this->assertText($random_name . ' (' . t('not verified') . ')', t('Comment author successfully changed to an unverified user.'));
+
+    // Test changing the comment author to a verified user.
+    $this->drupalGet('comment/' . $comment->id . '/edit');
+    $comment = $this->postComment(NULL, $comment->comment, $comment->subject, array('name' => $this->web_user->name));
+    $comment_loaded = comment_load($comment->id);
+    $this->assertTrue($comment_loaded->name == $this->web_user->name && $comment_loaded->uid == $this->web_user->uid, t('Comment author successfully changed to a registered user.'));
+
     $this->drupalLogout();
 
     // Reply to comment #2 creating comment #3 with optional preview and no
diff --git a/modules/contact/contact.info b/modules/contact/contact.info
index dd2ac0f..9430045 100644
--- a/modules/contact/contact.info
+++ b/modules/contact/contact.info
@@ -2,6 +2,6 @@ name = Contact
 description = Enables the use of both personal and site-wide contact forms.
 package = Core
 version = VERSION
-core = 8.x
+core = 7.x
 files[] = contact.test
 configure = admin/structure/contact
diff --git a/modules/contact/contact.install b/modules/contact/contact.install
index 7ddea45..6e8ec70 100644
--- a/modules/contact/contact.install
+++ b/modules/contact/contact.install
@@ -87,3 +87,63 @@ function contact_uninstall() {
   variable_del('contact_threshold_limit');
   variable_del('contact_threshold_window');
 }
+
+/**
+ * @addtogroup updates-6.x-to-7.x
+ * @{
+ */
+
+/**
+ * Rename the threshold limit variable.
+ */
+function contact_update_7000() {
+  variable_set('contact_threshold_limit', variable_get('contact_hourly_threshold', 5));
+  variable_del('contact_hourly_threshold');
+}
+
+/**
+ * Rename the administer contact forms permission.
+ */
+function contact_update_7001() {
+  db_update('role_permission')
+    ->fields(array('permission' => 'administer contact forms'))
+    ->condition('permission', 'administer site-wide contact form')
+    ->execute();
+}
+
+/**
+ * Enable the 'access user contact forms' for registered users by default.
+ */
+function contact_update_7002() {
+  // Do not use user_role_grant_permission() since it relies on
+  // hook_permission(), which will not run for contact module if it is
+  // disabled.
+  db_merge('role_permission')
+    ->key(array(
+      'rid' => DRUPAL_AUTHENTICATED_RID,
+      'permission' => 'access user contact forms',
+      'module' => 'contact',
+    ))
+    ->execute();
+}
+
+/**
+ * Change the weight column to normal int.
+ */
+function contact_update_7003() {
+  db_drop_index('contact', 'list');
+  db_change_field('contact', 'weight', 'weight', array(
+    'type' => 'int',
+    'not null' => TRUE,
+    'default' => 0,
+    'description' => "The category's weight.",
+  ), array(
+    'indexes' => array(
+      'list' => array('weight', 'category'),
+    ),
+  ));
+}
+
+/**
+ * @} End of "addtogroup updates-6.x-to-7.x"
+ */
diff --git a/modules/contextual/contextual.info b/modules/contextual/contextual.info
index a006377..ffaabaf 100644
--- a/modules/contextual/contextual.info
+++ b/modules/contextual/contextual.info
@@ -2,4 +2,4 @@ name = Contextual links
 description = Provides contextual links to perform actions related to elements on a page.
 package = Core
 version = VERSION
-core = 8.x
+core = 7.x
diff --git a/modules/dashboard/dashboard-rtl.css b/modules/dashboard/dashboard-rtl.css
index 2ab5381..cfccfa0 100644
--- a/modules/dashboard/dashboard-rtl.css
+++ b/modules/dashboard/dashboard-rtl.css
@@ -1,5 +1,3 @@
-/* $Id */
-
 #dashboard div.dashboard-region {
   float: right;
 }
diff --git a/modules/dashboard/dashboard.info b/modules/dashboard/dashboard.info
index f98b235..41f4c9d 100644
--- a/modules/dashboard/dashboard.info
+++ b/modules/dashboard/dashboard.info
@@ -1,6 +1,6 @@
 name = Dashboard
 description = Provides a dashboard page in the administrative interface for organizing administrative tasks and tracking information within your site.
-core = 8.x
+core = 7.x
 package = Core
 version = VERSION
 files[] = dashboard.test
diff --git a/modules/dblog/dblog.info b/modules/dblog/dblog.info
index 2aa61fc..608bdd7 100644
--- a/modules/dblog/dblog.info
+++ b/modules/dblog/dblog.info
@@ -2,5 +2,5 @@ name = Database logging
 description = Logs and records system events to the database.
 package = Core
 version = VERSION
-core = 8.x
+core = 7.x
 files[] = dblog.test
diff --git a/modules/dblog/dblog.install b/modules/dblog/dblog.install
index 23f85ba..759c7bc 100644
--- a/modules/dblog/dblog.install
+++ b/modules/dblog/dblog.install
@@ -97,3 +97,46 @@ function dblog_schema() {
 function dblog_uninstall() {
   variable_del('dblog_row_limit');
 }
+
+/**
+ * @addtogroup updates-6.x-to-7.x
+ * @{
+ */
+
+/**
+ * Update the {watchdog} table.
+ */
+function dblog_update_7001() {
+  // Allow NULL values for links.
+  db_change_field('watchdog', 'link', 'link', array(
+    'type' => 'varchar',
+    'length' => 255,
+    'not null' => FALSE,
+    'default' => '',
+    'description' => 'Link to view the result of the event.',
+  ));
+
+  // Add an index on uid.
+  db_add_index('watchdog', 'uid', array('uid'));
+
+  // Allow longer type values.
+  db_change_field('watchdog', 'type', 'type', array(
+    'type' => 'varchar',
+    'length' => 64,
+    'not null' => TRUE,
+    'default' => '',
+    'description' => 'Type of log message, for example "user" or "page not found."',
+  ));
+
+  // Convert the variables field (that stores serialized variables) from text to blob.
+  db_change_field('watchdog', 'variables', 'variables', array(
+    'type' => 'blob',
+    'not null' => TRUE,
+    'size' => 'big',
+    'description' => 'Serialized array of variables that match the message string and that is passed into the t() function.',
+  ));
+}
+
+/**
+ * @} End of "addtogroup updates-6.x-to-7.x"
+ */
diff --git a/modules/field/field.api.php b/modules/field/field.api.php
index e21c281..fae598d 100644
--- a/modules/field/field.api.php
+++ b/modules/field/field.api.php
@@ -256,8 +256,8 @@ function hook_field_schema($field) {
   }
   $columns += array(
     'format' => array(
-      'type' => 'int',
-      'unsigned' => TRUE,
+      'type' => 'varchar',
+      'length' => 255,
       'not null' => FALSE,
     ),
   );
@@ -1318,7 +1318,7 @@ function hook_field_attach_view_alter(&$output, $context) {
  *
  * This hook is invoked after the field module has performed the operation.
  *
- * @param &$entity
+ * @param $entity
  *   The entity being prepared for translation.
  * @param $context
  *   An associative array containing:
@@ -1361,7 +1361,7 @@ function hook_field_language_alter(&$display_language, $context) {
  * This hook is invoked from field_available_languages() to allow modules to
  * alter the array of available languages for the given field.
  *
- * @param &$languages
+ * @param $languages
  *   A reference to an array of language codes to be made available.
  * @param $context
  *   An associative array containing:
diff --git a/modules/field/field.attach.inc b/modules/field/field.attach.inc
index 82aabc0..4ca15f5 100644
--- a/modules/field/field.attach.inc
+++ b/modules/field/field.attach.inc
@@ -257,9 +257,9 @@ function _field_invoke($op, $entity_type, $entity, &$a = NULL, &$b = NULL, $opti
  *  - 'deleted': If TRUE, the function will operate on deleted fields
  *    as well as non-deleted fields. If unset or FALSE, only
  *    non-deleted fields are operated on.
- *  - 'language': A language code or an array of language codes keyed by field
- *    name. It will be used to narrow down to a single value the available
- *    languages to act on.
+ *  - 'language': A language code or an array of arrays of language codes keyed
+ *    by entity id and field name. It will be used to narrow down to a single
+ *    value the available languages to act on.
  *
  * @return
  *   An array of returned values keyed by entity id.
@@ -311,7 +311,8 @@ function _field_invoke_multiple($op, $entity_type, $entities, &$a = NULL, &$b =
         // Unless a language suggestion is provided we iterate on all the
         // available languages.
         $available_languages = field_available_languages($entity_type, $field);
-        $languages = _field_language_suggestion($available_languages, $options['language'], $field_name);
+        $language = !empty($options['language'][$id]) ? $options['language'][$id] : $options['language'];
+        $languages = _field_language_suggestion($available_languages, $language, $field_name);
         foreach ($languages as $langcode) {
           $grouped_items[$field_id][$langcode][$id] = isset($entity->{$field_name}[$langcode]) ? $entity->{$field_name}[$langcode] : array();
         }
@@ -347,7 +348,7 @@ function _field_invoke_multiple($op, $entity_type, $entities, &$a = NULL, &$b =
     // fields with an empty array (those are not equivalent on update).
     foreach ($grouped_entities[$field_id] as $id => $entity) {
       foreach ($grouped_items[$field_id] as $langcode => $items) {
-        if ($grouped_items[$field_id][$langcode][$id] !== array() || isset($entity->{$field_name}[$langcode])) {
+        if (isset($grouped_items[$field_id][$langcode][$id]) && ($grouped_items[$field_id][$langcode][$id] !== array() || isset($entity->{$field_name}[$langcode]))) {
           $entity->{$field_name}[$langcode] = $grouped_items[$field_id][$langcode][$id];
         }
       }
@@ -1074,8 +1075,13 @@ function field_attach_delete_revision($entity_type, $entity) {
  *   An array of entities, keyed by entity id.
  * @param $view_mode
  *   View mode, e.g. 'full', 'teaser'...
+ * @param $langcode
+ *   (Optional) The language the field values are to be shown in. If no language
+ *   is provided the current language is used.
  */
-function field_attach_prepare_view($entity_type, $entities, $view_mode) {
+function field_attach_prepare_view($entity_type, $entities, $view_mode, $langcode = NULL) {
+  $options = array('language' => array());
+
   // To ensure hooks are only run once per entity, only process items without
   // the _field_view_prepared flag.
   // @todo: resolve this more generally for both entity and field level hooks.
@@ -1085,17 +1091,22 @@ function field_attach_prepare_view($entity_type, $entities, $view_mode) {
       // Add this entity to the items to be prepared.
       $prepare[$id] = $entity;
 
+      // Determine the actual language to display for each field, given the
+      // languages available in the field data.
+      $options['language'][$id] = field_language($entity_type, $entity, NULL, $langcode);
+
       // Mark this item as prepared.
       $entity->_field_view_prepared = TRUE;
     }
   }
 
+  $null = NULL;
   // First let the field types do their preparation.
-  _field_invoke_multiple('prepare_view', $entity_type, $prepare);
+  _field_invoke_multiple('prepare_view', $entity_type, $prepare, $null, $null, $options);
   // Then let the formatters do their own specific massaging.
   // field_default_prepare_view() takes care of dispatching to the correct
   // formatters according to the display settings for the view mode.
-  _field_invoke_multiple_default('prepare_view', $entity_type, $prepare, $view_mode);
+  _field_invoke_multiple_default('prepare_view', $entity_type, $prepare, $view_mode, $null, $options);
 }
 
 /**
diff --git a/modules/field/field.default.inc b/modules/field/field.default.inc
index 93b5bea..a10d138 100644
--- a/modules/field/field.default.inc
+++ b/modules/field/field.default.inc
@@ -81,7 +81,7 @@ function field_default_validate($entity_type, $entity, $field, $instance, $langc
   if ($field['cardinality'] != FIELD_CARDINALITY_UNLIMITED && count($items) > $field['cardinality']) {
     $errors[$field['field_name']][$langcode][0][] = array(
       'error' => 'field_cardinality',
-      'message' => t('%name: this field cannot hold more than @count values.', array('%name' => t($instance['label']), '@count' => $field['cardinality'])),
+      'message' => t('%name: this field cannot hold more than @count values.', array('%name' => $instance['label'], '@count' => $field['cardinality'])),
     );
   }
 }
@@ -214,7 +214,7 @@ function field_default_view($entity_type, $entity, $field, $instance, $langcode,
         $info = array(
           '#theme' => 'field',
           '#weight' => $display['weight'],
-          '#title' => t($instance['label']),
+          '#title' => $instance['label'],
           '#access' => field_access('view', $field, $entity_type, $entity),
           '#label_display' => $display['label'],
           '#view_mode' => $view_mode,
diff --git a/modules/field/field.form.inc b/modules/field/field.form.inc
index f578281..845f041 100644
--- a/modules/field/field.form.inc
+++ b/modules/field/field.form.inc
@@ -69,7 +69,7 @@ function field_default_form($entity_type, $entity, $field, $instance, $langcode,
           '#language' => $langcode,
           '#field_parents' => $parents,
           '#columns' => array_keys($field['columns']),
-          '#title' => check_plain(t($instance['label'])),
+          '#title' => check_plain($instance['label']),
           '#description' => field_filter_xss($instance['description']),
           // Only the first widget should be required.
           '#required' => $delta == 0 && $instance['required'],
@@ -151,8 +151,8 @@ function field_multiple_value_form($field, $instance, $langcode, $items, &$form,
       break;
   }
 
-  $title = check_plain(t($instance['label']));
-  $description = field_filter_xss(t($instance['description']));
+  $title = check_plain($instance['label']);
+  $description = field_filter_xss($instance['description']);
 
   $id_prefix = implode('-', array_merge($parents, array($field_name)));
   $wrapper_id = drupal_html_id($id_prefix . '-add-more-wrapper');
diff --git a/modules/field/field.info b/modules/field/field.info
index bf419e3..f8a331a 100644
--- a/modules/field/field.info
+++ b/modules/field/field.info
@@ -2,7 +2,7 @@ name = Field
 description = Field API to add fields to entities like nodes and users.
 package = Core
 version = VERSION
-core = 8.x
+core = 7.x
 files[] = field.module
 files[] = field.attach.inc
 files[] = tests/field.test
diff --git a/modules/field/field.info.inc b/modules/field/field.info.inc
index 93c1629..02707f6 100644
--- a/modules/field/field.info.inc
+++ b/modules/field/field.info.inc
@@ -286,8 +286,6 @@ function _field_info_prepare_field($field) {
  *   Field instance array.
  */
 function _field_info_prepare_instance($instance, $field) {
-  $field_type = field_info_field_types($field['type']);
-
   // Make sure all expected instance settings are present.
   $instance['settings'] += field_info_instance_settings($field['type']);
 
@@ -734,7 +732,7 @@ function field_info_instance($entity_type, $field_name, $bundle_name) {
  *         'default' => array(
  *           'weight' => The weight of the component in displayed entities in
  *             this view mode,
- *           'visibility' => Whether the component is visible or hidden in
+ *           'visible' => TRUE if the component is visible, FALSE if hidden, in
  *             displayed entities in this view mode,
  *         ),
  *         'teaser' => array(
diff --git a/modules/field/field.install b/modules/field/field.install
index 2d7d28f..d56eb90 100644
--- a/modules/field/field.install
+++ b/modules/field/field.install
@@ -170,9 +170,12 @@ function field_schema() {
 /**
  * Utility function: create a field by writing directly to the database.
  *
- * @ingroup update-api-7.x-to-8.x
+ * This function can be used for databases whose schema is at field module
+ * version 7000 or higher.
+ *
+ * @ingroup update-api-6.x-to-7.x
  */
-function _update_8000_field_create_field(&$field) {
+function _update_7000_field_create_field(&$field) {
   // Merge in default values.`
   $field += array(
     'entity_types' => array(),
@@ -243,14 +246,17 @@ function _update_8000_field_create_field(&$field) {
  * To protect user data, this function can only be used to delete fields once
  * all information it stored is gone. Delete all data from the
  * field_data_$field_name table before calling by either manually issuing
- * delete queries against it or using _update_8000_field_delete_instance().
+ * delete queries against it or using _update_7000_field_delete_instance().
+ *
+ * This function can be used for databases whose schema is at field module
+ * version 7000 or higher.
  *
  * @param $field_name
  *   The field name to delete.
  *
- * @ingroup update-api-7.x-to-8.x
+ * @ingroup update-api-6.x-to-7.x
  */
-function _update_8000_field_delete_field($field_name) {
+function _update_7000_field_delete_field($field_name) {
   $table_name = 'field_data_' . $field_name;
   if (db_select($table_name)->range(0, 1)->countQuery()->execute()->fetchField()) {
     $t = get_t();
@@ -277,9 +283,11 @@ function _update_8000_field_delete_field($field_name) {
  *
  * BEWARE: this function deletes user data from the field storage tables.
  *
- * @ingroup update-api-7.x-to-8.x
+ * This function is valid for a database schema version 7000.
+ *
+ * @ingroup update-api-6.x-to-7.x
  */
-function _update_8000_field_delete_instance($field_name, $entity_type, $bundle) {
+function _update_7000_field_delete_instance($field_name, $entity_type, $bundle) {
   // Delete field instance configuration data.
   db_delete('field_config_instance')
     ->condition('field_name', $field_name)
@@ -315,9 +323,8 @@ function _update_8000_field_delete_instance($field_name, $entity_type, $bundle)
  * @return
  *   An array of fields matching $conditions, keyed by the property specified
  *   by the $key parameter.
- * @ingroup update-api-7.x-to-8.x
  */
-function _update_8000_field_read_fields(array $conditions = array(), $key = 'id') {
+function _update_7000_field_read_fields(array $conditions = array(), $key = 'id') {
   $fields = array();
   $query = db_select('field_config', 'fc', array('fetch' => PDO::FETCH_ASSOC))
     ->fields('fc');
@@ -347,9 +354,12 @@ function _update_8000_field_read_fields(array $conditions = array(), $key = 'id'
 /**
  * Utility function: write a field instance directly to the database.
  *
- * @ingroup update-api-7.x-to-8.x
+ * This function can be used for databases whose schema is at field module
+ * version 7000 or higher.
+ *
+ * @ingroup update-api-6.x-to-7.x
  */
-function _update_8000_field_create_instance($field, &$instance) {
+function _update_7000_field_create_instance($field, &$instance) {
   // Merge in defaults.
   $instance += array(
     'field_id' => $field['id'],
@@ -375,3 +385,55 @@ function _update_8000_field_create_instance($field, &$instance) {
     ->fields($record)
     ->execute();
 }
+
+/**
+ * @addtogroup updates-6.x-to-7.x
+ * @{
+ */
+
+/**
+ * Field update version placeholder.
+ */
+function field_update_7000() {
+  // Some update helper functions (such as _update_7000_field_create_field())
+  // modify the database directly. They can be used safely only if the database
+  // schema matches the field module schema established for Drupal 7.0 (i.e.
+  // version 7000). This function exists solely to set the schema version to
+  // 7000, so that update functions calling those helpers can do so safely
+  // by declaring a dependency on field_update_7000().
+}
+
+/**
+ * Fix fields definitions created during the d6 to d7 upgrade path.
+ */
+function field_update_7001() {
+  $fields = _update_7000_field_read_fields();
+  foreach ($fields as $field) {
+    // _update_7000_field_create_field() was broken in d7 RC2, and the fields
+    // created during a d6 to d7 upgrade do not correcly store the 'index'
+    // entry. See http://drupal.org/node/996160.
+
+    module_load_install($field['module']);
+    $schema = (array) module_invoke($field['module'], 'field_schema', $field);
+    $schema += array('indexes' => array());
+    // 'indexes' can be both hardcoded in the field type, and specified in the
+    // incoming $field definition.
+    $field['indexes'] += $schema['indexes'];
+
+    // Place the updated entries in the existing serialized 'data' column.
+    $data = db_query("SELECT data FROM {field_config} WHERE id = :id", array(':id' => $field['id']))->fetchField();
+    $data = unserialize($data);
+    $data['columns'] = $field['columns'];
+    $data['indexes'] = $field['indexes'];
+
+    // Save the new data.
+    $query = db_update('field_config')
+      ->condition('id', $field['id'])
+      ->fields(array('data' => serialize($data)))
+      ->execute();
+  }
+}
+
+/**
+ * @} End of "addtogroup updates-6.x-to-7.x"
+ */
diff --git a/modules/field/field.module b/modules/field/field.module
index 163f448..b808e59 100644
--- a/modules/field/field.module
+++ b/modules/field/field.module
@@ -558,7 +558,7 @@ function _field_sort_items_value_helper($a, $b) {
  *         // the 'default' mode:
  *         'default' => array(
  *           'weight' => The weight of the pseudo-field,
- *           'visibility' => Whether the pseudo-field is visible or hidden,
+ *           'visible' => TRUE if the pseudo-field is visible, FALSE if hidden,
  *         ),
  *         'full' => ...
  *       ),
@@ -825,6 +825,8 @@ function field_view_value($entity_type, $entity, $field_name, $item, $display =
  *   render($content[FIELD_NAME]) instead.
  * - Do not use to display all fields in an entity, use
  *   field_attach_prepare_view() and field_attach_view() instead.
+ * - The field_view_value() function can be used to output a single formatted
+ *   field value, without label or wrapping field markup.
  *
  * The function takes care of invoking the prepare_view steps. It also respects
  * field access permissions.
@@ -864,6 +866,8 @@ function field_view_value($entity_type, $entity, $field_name, $item, $display =
  *   used.
  * @return
  *   A renderable array for the field value.
+ *
+ * @see field_view_value()
  */
 function field_view_field($entity_type, $entity, $field_name, $display = array(), $langcode = NULL) {
   $output = array();
@@ -1136,7 +1140,7 @@ function template_process_field(&$variables, $hook) {
  *   - label_hidden: A boolean indicating to show or hide the field label.
  *   - title_attributes: A string containing the attributes for the title.
  *   - label: The label for the field.
- *   - content_attributes: A string containing the attaributes for the content's
+ *   - content_attributes: A string containing the attributes for the content's
  *     div.
  *   - items: An array of field items.
  *   - item_attributes: An array of attributes for each item.
diff --git a/modules/field/field.multilingual.inc b/modules/field/field.multilingual.inc
index 00adf92..5373d97 100644
--- a/modules/field/field.multilingual.inc
+++ b/modules/field/field.multilingual.inc
@@ -20,7 +20,7 @@
  * - For untranslatable fields this set only contains LANGUAGE_NONE.
  * - For translatable fields this set can contain any language code. By default
  *   it is the list returned by field_content_languages(), which contains all
- *   enabled languages with the addition of LANGUAGE_NONE. This default can be
+ *   installed languages with the addition of LANGUAGE_NONE. This default can be
  *   altered by modules implementing hook_field_available_languages_alter().
  *
  * The available languages for a particular field are returned by
diff --git a/modules/field/modules/field_sql_storage/field_sql_storage.info b/modules/field/modules/field_sql_storage/field_sql_storage.info
index ee1ae57..9313850 100644
--- a/modules/field/modules/field_sql_storage/field_sql_storage.info
+++ b/modules/field/modules/field_sql_storage/field_sql_storage.info
@@ -2,7 +2,7 @@ name = Field SQL storage
 description = Stores field data in an SQL database.
 package = Core
 version = VERSION
-core = 8.x
+core = 7.x
 dependencies[] = field
 files[] = field_sql_storage.test
 required = TRUE
diff --git a/modules/field/modules/field_sql_storage/field_sql_storage.install b/modules/field/modules/field_sql_storage/field_sql_storage.install
index 930686d..647296e 100644
--- a/modules/field/modules/field_sql_storage/field_sql_storage.install
+++ b/modules/field/modules/field_sql_storage/field_sql_storage.install
@@ -27,9 +27,12 @@ function field_sql_storage_schema() {
 /**
  * Utility function: write field data directly to SQL storage.
  *
- * @ingroup update-api-7.x-to-8.x
+ * This function can be used for databases whose schema is at field module
+ * version 7000 or higher.
+ *
+ * @ingroup update-api-6.x-to-7.x
  */
-function _update_8000_field_sql_storage_write($entity_type, $bundle, $entity_id, $revision_id, $field_name, $data) {
+function _update_7000_field_sql_storage_write($entity_type, $bundle, $entity_id, $revision_id, $field_name, $data) {
   $table_name = "field_data_{$field_name}";
   $revision_name = "field_revision_{$field_name}";
 
@@ -77,3 +80,136 @@ function _update_8000_field_sql_storage_write($entity_type, $bundle, $entity_id,
     $revision_query->execute();
   }
 }
+
+/**
+ * @addtogroup updates-6.x-to-7.x
+ * @{
+ */
+
+/**
+ * Field SQL storage update version placeholder.
+ */
+function field_sql_storage_update_7000() {
+  // Some update helper functions (such as
+  // _update_7000_field_sql_storage_write()) modify the database directly. They
+  // can be used safely only if the database schema matches the field module
+  // schema established for Drupal 7.0 (i.e. version 7000). This function exists
+  // solely to set the schema version to 7000, so that update functions calling
+  // those helpers can do so safely by declaring a dependency on
+  // field_sql_storage_update_7000().
+}
+
+/**
+ * Remove the field_config_entity_type table and store 'entity_type' strings.
+ */
+function field_sql_storage_update_7001(&$sandbox) {
+  if (!isset($sandbox['progress'])) {
+    // Collect current etids.
+    $sandbox['etids'] = db_query('SELECT etid, type FROM {field_config_entity_type}')->fetchAllKeyed();
+
+    // Collect affected tables: field data, field revision data, 'deleted'
+    // tables.
+    $sandbox['tables'] = array();
+    $results = db_select('field_config', 'fc', array('fetch' => PDO::FETCH_ASSOC))
+      ->fields('fc')
+      ->condition('storage_module', 'field_sql_storage')
+      ->execute();
+    foreach ($results as $field) {
+      if ($field['deleted']) {
+        $sandbox['tables']["field_deleted_data_{$field['id']}"] = 'data';
+        $sandbox['tables']["field_deleted_revision_{$field['id']}"] = 'revision';
+      }
+      else {
+        $sandbox['tables']["field_data_{$field['field_name']}"] = 'data';
+        $sandbox['tables']["field_revision_{$field['field_name']}"] = 'revision';
+      }
+    }
+    reset($sandbox['tables']);
+
+    $sandbox['total'] = count($sandbox['tables']);
+    $sandbox['progress'] = 0;
+  }
+
+  if ($sandbox['tables']) {
+    // Grab the next table to process.
+    $table = key($sandbox['tables']);
+    $type = array_shift($sandbox['tables']);
+
+    if (db_table_exists($table)) {
+      // Add the 'entity_type' column.
+      if (!db_field_exists($table, 'entity_type')) {
+        $column = array(
+          'type' => 'varchar',
+          'length' => 128,
+          'not null' => TRUE,
+          'default' => '',
+          'description' => 'The entity type this data is attached to.',
+        );
+        db_add_field($table, 'entity_type', $column);
+
+        // Populate the 'entity_type' column based on the 'etid' column.
+        foreach ($sandbox['etids'] as $etid => $entity_type) {
+          db_update($table)
+            ->fields(array('entity_type' => $entity_type))
+            ->condition('etid', $etid)
+            ->execute();
+        }
+
+        // Index the new column.
+        db_add_index($table, 'entity_type', array('entity_type'));
+      }
+
+      // Use the 'entity_type' column in the primary key.
+      db_drop_primary_key($table);
+      $primary_keys = array(
+        'data' => array('entity_type', 'entity_id', 'deleted', 'delta', 'language'),
+        'revision' => array('entity_type', 'entity_id', 'revision_id', 'deleted', 'delta', 'language'),
+      );
+      db_add_primary_key($table, $primary_keys[$type]);
+
+      // Drop the 'etid' column.
+      if (db_field_exists($table, 'etid')) {
+        db_drop_field($table, 'etid');
+      }
+    }
+
+    // Report progress.
+    $sandbox['progress']++;
+    $sandbox['#finished'] = min(0.99, $sandbox['progress'] / $sandbox['total']);
+  }
+  else {
+    // No more tables left: drop the field_config_entity_type table.
+    db_drop_table('field_config_entity_type');
+
+    // Drop the previous 'field_sql_storage_ENTITYTYPE_etid' system variables.
+    foreach ($sandbox['etids'] as $etid => $entity_type) {
+      variable_del('field_sql_storage_' . $entity_type . '_etid');
+    }
+
+    // We're done.
+    $sandbox['#finished'] = 1;
+  }
+}
+
+/**
+ * Fix primary keys in field revision data tables.
+ */
+function field_sql_storage_update_7002() {
+  $results = db_select('field_config', 'fc', array('fetch' => PDO::FETCH_ASSOC))
+    ->fields('fc')
+    ->condition('storage_module', 'field_sql_storage')
+    ->execute();
+  foreach ($results as $field) {
+    // Revision tables of deleted fields do not need to be fixed, since no new
+    // data is written to them.
+    if (!$field['deleted']) {
+      $table = "field_revision_{$field['field_name']}";
+      db_drop_primary_key($table);
+      db_add_primary_key($table, array('entity_type', 'entity_id', 'revision_id', 'deleted', 'delta', 'language'));
+    }
+  }
+}
+
+/**
+ * @} End of "addtogroup updates-6.x-to-7.x"
+ */
diff --git a/modules/field/modules/list/list.info b/modules/field/modules/list/list.info
index 6eb7117..6bcec5d 100644
--- a/modules/field/modules/list/list.info
+++ b/modules/field/modules/list/list.info
@@ -2,7 +2,7 @@ name = List
 description = Defines list field types. Use with Options to create selection lists.
 package = Core
 version = VERSION
-core = 8.x
+core = 7.x
 dependencies[] = field
 dependencies[] = options
 files[] = tests/list.test
diff --git a/modules/field/modules/list/list.install b/modules/field/modules/list/list.install
index c86a219..91c7649 100644
--- a/modules/field/modules/list/list.install
+++ b/modules/field/modules/list/list.install
@@ -44,3 +44,86 @@ function list_field_schema($field) {
     ),
   );
 }
+
+/**
+ * Rename the list field types and change 'allowed_values' format.
+ */
+function list_update_7001() {
+  $fields = _update_7000_field_read_fields(array('module' => 'list'));
+  foreach ($fields as $field) {
+    $update = array();
+
+    // Translate the old string format into the new array format.
+    $allowed_values = $field['settings']['allowed_values'];
+    if (is_string($allowed_values)) {
+      $position_keys = ($field['type'] == 'list');
+      $allowed_values = _list_update_7001_extract_allowed_values($allowed_values, $position_keys);
+
+      // Additionally, float keys need to be disambiguated ('.5' is '0.5').
+      if ($field['type'] == 'list_number' && !empty($allowed_values)) {
+        $keys = array_map(create_function('$a', 'return (string) (float) $a;'), array_keys($allowed_values));
+        $allowed_values = array_combine($keys, array_values($allowed_values));
+      }
+
+      // Place the new setting in the existing serialized 'data' column.
+      $data = db_query("SELECT data FROM {field_config} WHERE id = :id", array(':id' => $field['id']))->fetchField();
+      $data = unserialize($data);
+      $data['settings']['allowed_values'] = $allowed_values;
+      $update['data'] = serialize($data);
+    }
+
+    // Rename field types.
+    $types = array('list' => 'list_integer', 'list_number' => 'list_float');
+    if (isset($types[$field['type']])) {
+      $update['type'] = $types[$field['type']];
+    }
+
+    // Save the new data.
+    if ($update) {
+      $query = db_update('field_config')
+        ->condition('id', $field['id'])
+        ->fields($update)
+        ->execute();
+    }
+  }
+}
+
+/**
+ * Helper function for list_update_7001: extract allowed values from a string.
+ *
+ * This reproduces the parsing logic in use before D7 RC2.
+ */
+function _list_update_7001_extract_allowed_values($string, $position_keys) {
+  $values = array();
+
+  $list = explode("\n", $string);
+  $list = array_map('trim', $list);
+  $list = array_filter($list, 'strlen');
+
+  foreach ($list as $key => $value) {
+    // Check for a manually specified key.
+    if (strpos($value, '|') !== FALSE) {
+      list($key, $value) = explode('|', $value);
+    }
+    // Otherwise see if we need to use the value as the key. The "list" type
+    // will automatically convert non-keyed lines to integers.
+    elseif (!$position_keys) {
+      $key = $value;
+    }
+    $values[$key] = (isset($value) && $value !== '') ? $value : $key;
+  }
+
+  return $values;
+}
+
+/**
+ * Re-apply list_update_7001() for deleted fields.
+ */
+function list_update_7002() {
+  // See http://drupal.org/node/1022924: list_update_7001() intitally
+  // overlooked deleted fields, which then caused fatal errors when the fields
+  // were being purged.
+  // list_update_7001() has the required checks to ensure it is reentrant, so
+  // it can simply be executed once more..
+  list_update_7001();
+}
\ No newline at end of file
diff --git a/modules/field/modules/list/list.module b/modules/field/modules/list/list.module
index f7ac951..608679b 100644
--- a/modules/field/modules/list/list.module
+++ b/modules/field/modules/list/list.module
@@ -379,7 +379,7 @@ function list_field_validate($entity_type, $entity, $field, $instance, $langcode
       if (!empty($allowed_values) && !isset($allowed_values[$item['value']])) {
         $errors[$field['field_name']][$langcode][$delta][] = array(
           'error' => 'list_illegal_value',
-          'message' => t('%name: illegal value.', array('%name' => t($instance['label']))),
+          'message' => t('%name: illegal value.', array('%name' => $instance['label'])),
         );
       }
     }
diff --git a/modules/field/modules/list/tests/list_test.info b/modules/field/modules/list/tests/list_test.info
index 32c1d69..83ae747 100644
--- a/modules/field/modules/list/tests/list_test.info
+++ b/modules/field/modules/list/tests/list_test.info
@@ -1,6 +1,6 @@
 name = "List test"
 description = "Support module for the List module tests."
-core = 8.x
+core = 7.x
 package = Testing
 version = VERSION
 hidden = TRUE
diff --git a/modules/field/modules/number/number.info b/modules/field/modules/number/number.info
index f38cbb4..203d85d 100644
--- a/modules/field/modules/number/number.info
+++ b/modules/field/modules/number/number.info
@@ -2,6 +2,6 @@ name = Number
 description = Defines numeric field types.
 package = Core
 version = VERSION
-core = 8.x
+core = 7.x
 dependencies[] = field
 files[] = number.test
diff --git a/modules/field/modules/number/number.module b/modules/field/modules/number/number.module
index fe1221c..20e3807 100644
--- a/modules/field/modules/number/number.module
+++ b/modules/field/modules/number/number.module
@@ -138,13 +138,13 @@ function number_field_validate($entity_type, $entity, $field, $instance, $langco
       if (is_numeric($instance['settings']['min']) && $item['value'] < $instance['settings']['min']) {
         $errors[$field['field_name']][$langcode][$delta][] = array(
           'error' => 'number_min',
-          'message' => t('%name: the value may be no less than %min.', array('%name' => t($instance['label']), '%min' => $instance['settings']['min'])),
+          'message' => t('%name: the value may be no less than %min.', array('%name' => $instance['label'], '%min' => $instance['settings']['min'])),
         );
       }
       if (is_numeric($instance['settings']['max']) && $item['value'] > $instance['settings']['max']) {
         $errors[$field['field_name']][$langcode][$delta][] = array(
           'error' => 'number_max',
-          'message' => t('%name: the value may be no greater than %max.', array('%name' => t($instance['label']), '%max' => $instance['settings']['max'])),
+          'message' => t('%name: the value may be no greater than %max.', array('%name' => $instance['label'], '%max' => $instance['settings']['max'])),
         );
       }
     }
@@ -367,12 +367,12 @@ function number_field_widget_validate($element, &$form_state) {
       case 'float':
       case 'decimal':
         $regexp = '@[^-0-9\\' . $field['settings']['decimal_separator'] . ']@';
-        $message = t('Only numbers and the decimal separator (@separator) allowed in %field.', array('%field' => t($instance['label']), '@separator' => $field['settings']['decimal_separator']));
+        $message = t('Only numbers and the decimal separator (@separator) allowed in %field.', array('%field' => $instance['label'], '@separator' => $field['settings']['decimal_separator']));
         break;
 
       case 'integer':
         $regexp = '@[^-0-9]@';
-        $message = t('Only numbers are allowed in %field.', array('%field' => t($instance['label'])));
+        $message = t('Only numbers are allowed in %field.', array('%field' => $instance['label']));
         break;
     }
     if ($value != preg_replace($regexp, '', $value)) {
diff --git a/modules/field/modules/options/options.info b/modules/field/modules/options/options.info
index 1cc6faf..985a74c 100644
--- a/modules/field/modules/options/options.info
+++ b/modules/field/modules/options/options.info
@@ -2,6 +2,6 @@ name = Options
 description = Defines selection, check box and radio button widgets for text and numeric fields.
 package = Core
 version = VERSION
-core = 8.x
+core = 7.x
 dependencies[] = field
 files[] = options.test
diff --git a/modules/field/modules/text/text.info b/modules/field/modules/text/text.info
index b424d2d..976e299 100644
--- a/modules/field/modules/text/text.info
+++ b/modules/field/modules/text/text.info
@@ -2,7 +2,7 @@ name = Text
 description = Defines simple text field types.
 package = Core
 version = VERSION
-core = 8.x
+core = 7.x
 dependencies[] = field
 files[] = text.test
 required = TRUE
diff --git a/modules/field/modules/text/text.install b/modules/field/modules/text/text.install
index 1b8d00b..b9bd25f 100644
--- a/modules/field/modules/text/text.install
+++ b/modules/field/modules/text/text.install
@@ -65,3 +65,44 @@ function text_field_schema($field) {
     ),
   );
 }
+
+/**
+ * Implements hook_update_dependencies().
+ */
+function text_update_dependencies() {
+  // Ensure that format columns are only changed after Filter module has changed
+  // the primary records.
+  $dependencies['text'][7000] = array(
+    'filter' => 7010,
+  );
+
+  return $dependencies;
+}
+
+/**
+ * Change text field 'format' columns into varchar.
+ */
+function text_update_7000() {
+  $spec = array(
+    'type' => 'varchar',
+    'length' => 255,
+    'not null' => FALSE,
+  );
+  $fields = _update_7000_field_read_fields(array(
+    'module' => 'text',
+    'storage_type' => 'field_sql_storage',
+  ));
+  foreach ($fields as $field) {
+    if ($field['deleted']) {
+      $table = "field_deleted_data_{$field['id']}";
+      $revision_table = "field_deleted_revision_{$field['id']}";
+    }
+    else {
+      $table = "field_data_{$field['field_name']}";
+      $revision_table = "field_revision_{$field['field_name']}";
+    }
+    $column = $field['field_name'] . '_' . 'format';
+    db_change_field($table, $column, $column, $spec);
+    db_change_field($revision_table, $column, $column, $spec);
+  }
+}
diff --git a/modules/field/tests/field.test b/modules/field/tests/field.test
index 97510e4..9281273 100644
--- a/modules/field/tests/field.test
+++ b/modules/field/tests/field.test
@@ -2690,7 +2690,7 @@ class FieldTranslationsTestCase extends FieldTestCase {
     $extra_languages = mt_rand(1, 4);
     $languages = $available_languages = field_available_languages($this->entity_type, $this->field);
     for ($i = 0; $i < $extra_languages; ++$i) {
-      $languages[] = $this->randomString(2);
+      $languages[] = $this->randomName(2);
     }
 
     // For each given language provide some random values.
@@ -2715,10 +2715,14 @@ class FieldTranslationsTestCase extends FieldTestCase {
    * Test the multilanguage logic of _field_invoke_multiple().
    */
   function testFieldInvokeMultiple() {
+    // Enable field translations for the entity.
+    field_test_entity_info_translatable('test_entity', TRUE);
+
     $values = array();
+    $options = array();
     $entities = array();
     $entity_type = 'test_entity';
-    $entity_count = mt_rand(1, 5);
+    $entity_count = mt_rand(2, 5);
     $available_languages = field_available_languages($this->entity_type, $this->field);
 
     for ($id = 1; $id <= $entity_count; ++$id) {
@@ -2729,29 +2733,55 @@ class FieldTranslationsTestCase extends FieldTestCase {
       // correctly uses the result of field_available_languages().
       $extra_languages = mt_rand(1, 4);
       for ($i = 0; $i < $extra_languages; ++$i) {
-        $languages[] = $this->randomString(2);
+        $languages[] = $this->randomName(2);
       }
 
       // For each given language provide some random values.
-      foreach ($languages as $langcode) {
-        for ($delta = 0; $delta < $this->field['cardinality']; $delta++) {
-          $values[$id][$langcode][$delta]['value'] = mt_rand(1, 127);
+      $language_count = count($languages);
+      for ($i = 0; $i < $language_count; ++$i) {
+        $langcode = $languages[$i];
+        // Avoid to populate at least one field translation to check that
+        // per-entity language suggestions work even when available field values
+        // are different for each language.
+        if ($i !== $id) {
+          for ($delta = 0; $delta < $this->field['cardinality']; $delta++) {
+            $values[$id][$langcode][$delta]['value'] = mt_rand(1, 127);
+          }
+        }
+        // Ensure that a language for which there is no field translation is
+        // used as display language to prepare per-entity language suggestions.
+        elseif (!isset($display_language)) {
+          $display_language = $langcode;
         }
       }
+
       $entity->{$this->field_name} = $values[$id];
       $entities[$id] = $entity;
+
+      // Store per-entity language suggestions.
+      $options['language'][$id] = field_language($entity_type, $entity, NULL, $display_language);
     }
 
     $grouped_results = _field_invoke_multiple('test_op_multiple', $entity_type, $entities);
     foreach ($grouped_results as $id => $results) {
       foreach ($results as $langcode => $result) {
-        $hash = hash('sha256', serialize(array($entity_type, $entities[$id], $this->field_name, $langcode, $values[$id][$langcode])));
-        // Check whether the parameters passed to _field_invoke() were correctly
-        // forwarded to the callback function.
-        $this->assertEqual($hash, $result, t('The result for entity %id/%language is correctly stored.', array('%id' => $id, '%language' => $langcode)));
+        if (isset($values[$id][$langcode])) {
+          $hash = hash('sha256', serialize(array($entity_type, $entities[$id], $this->field_name, $langcode, $values[$id][$langcode])));
+          // Check whether the parameters passed to _field_invoke() were correctly
+          // forwarded to the callback function.
+          $this->assertEqual($hash, $result, t('The result for entity %id/%language is correctly stored.', array('%id' => $id, '%language' => $langcode)));
+        }
       }
       $this->assertEqual(count($results), count($available_languages), t('No unavailable language has been processed for entity %id.', array('%id' => $id)));
     }
+
+    $null = NULL;
+    $grouped_results = _field_invoke_multiple('test_op_multiple', $entity_type, $entities, $null, $null, $options);
+    foreach ($grouped_results as $id => $results) {
+      foreach ($results as $langcode => $result) {
+        $this->assertTrue(isset($options['language'][$id]), t('The result language %language for entity %id was correctly suggested (display language: %display_language).', array('%id' => $id, '%language' => $langcode, '%display_language' => $display_language)));
+      }
+    }
   }
 
   /**
diff --git a/modules/field/tests/field_test.info b/modules/field/tests/field_test.info
index 5fc9b27..6d11706 100644
--- a/modules/field/tests/field_test.info
+++ b/modules/field/tests/field_test.info
@@ -1,6 +1,6 @@
 name = "Field API Test"
 description = "Support module for the Field API tests."
-core = 8.x
+core = 7.x
 package = Testing
 files[] = field_test.entity.inc
 version = VERSION
diff --git a/modules/field/tests/field_test.module b/modules/field/tests/field_test.module
index 09415e2..9e2fef6 100644
--- a/modules/field/tests/field_test.module
+++ b/modules/field/tests/field_test.module
@@ -88,7 +88,9 @@ function field_test_field_test_op($entity_type, $entity, $field, $instance, $lan
 function field_test_field_test_op_multiple($entity_type, $entities, $field, $instances, $langcode, &$items) {
   $result = array();
   foreach ($entities as $id => $entity) {
-    $result[$id] = array($langcode => hash('sha256', serialize(array($entity_type, $entity, $field['field_name'], $langcode, $items[$id]))));
+    if (isset($items[$id])) {
+      $result[$id] = array($langcode => hash('sha256', serialize(array($entity_type, $entity, $field['field_name'], $langcode, $items[$id]))));
+    }
   }
   return $result;
 }
diff --git a/modules/field_ui/field_ui.info b/modules/field_ui/field_ui.info
index 87bab94..41d0999 100644
--- a/modules/field_ui/field_ui.info
+++ b/modules/field_ui/field_ui.info
@@ -2,6 +2,6 @@ name = Field UI
 description = User interface for the Field API.
 package = Core
 version = VERSION
-core = 8.x
+core = 7.x
 dependencies[] = field
 files[] = field_ui.test
diff --git a/modules/field_ui/field_ui.module b/modules/field_ui/field_ui.module
index 28ac0e1..7355e87 100644
--- a/modules/field_ui/field_ui.module
+++ b/modules/field_ui/field_ui.module
@@ -60,6 +60,12 @@ function field_ui_menu() {
     'file' => 'field_ui.admin.inc',
   );
 
+  // Ensure the following is not executed until field_bundles is working and
+  // tables are updated. Needed to avoid errors on initial installation.
+  if (defined('MAINTENANCE_MODE')) {
+    return $items;
+  }
+
   // Create tabs for all possible bundles.
   foreach (entity_get_info() as $entity_type => $entity_info) {
     if ($entity_info['fieldable']) {
@@ -227,7 +233,7 @@ function field_ui_menu_load($field_name, $entity_type, $bundle_name, $bundle_pos
  * Menu title callback.
  */
 function field_ui_menu_title($instance) {
-  return t($instance['label']);
+  return $instance['label'];
 }
 
 /**
@@ -356,4 +362,3 @@ function field_ui_form_node_type_form_submit($form, &$form_state) {
     $form_state['redirect'] = _field_ui_bundle_admin_path('node', $form_state['values']['type']) .'/fields';
   }
 }
-
diff --git a/modules/field_ui/field_ui.test b/modules/field_ui/field_ui.test
index 2429a19..5d2ff9b 100644
--- a/modules/field_ui/field_ui.test
+++ b/modules/field_ui/field_ui.test
@@ -10,8 +10,15 @@
  */
 class FieldUITestCase extends DrupalWebTestCase {
 
-  function setUp($modules = array()) {
-    array_unshift($modules, 'field_test');
+  function setUp() {
+    // Since this is a base class for many test cases, support the same
+    // flexibility that DrupalWebTestCase::setUp() has for the modules to be
+    // passed in as either an array or a variable number of string arguments.
+    $modules = func_get_args();
+    if (isset($modules[0]) && is_array($modules[0])) {
+      $modules = $modules[0];
+    }
+    $modules[] = 'field_test';
     parent::setUp($modules);
 
     // Create test user.
@@ -388,7 +395,7 @@ class FieldUIManageFieldsTestCase extends FieldUITestCase {
       'bundle' => $this->type,
       'entity_type' => 'node',
       'label' => t('Hidden field'),
-      'widget_type' => 'test_field_widget',
+      'widget' => array('type' => 'test_field_widget'),
     );
     field_create_instance($instance);
     $this->assertTrue(field_read_instance('node', $field_name, $this->type), t('An instance of the field %field was created programmatically.', array('%field' => $field_name)));
diff --git a/modules/file/file.api.php b/modules/file/file.api.php
index 70410df..76fb986 100644
--- a/modules/file/file.api.php
+++ b/modules/file/file.api.php
@@ -41,7 +41,7 @@ function hook_file_download_access($field, $entity_type, $entity) {
  *
  * @see hook_file_download_access().
  *
- * @param &$grants
+ * @param $grants
  *   An array of grants gathered by hook_file_download_access(). The array is
  *   keyed by the module that defines the entity type's access control; the
  *   values are Boolean grant responses for each module.
diff --git a/modules/file/file.field.inc b/modules/file/file.field.inc
index 5508b9b..2af3cb6 100644
--- a/modules/file/file.field.inc
+++ b/modules/file/file.field.inc
@@ -567,14 +567,17 @@ function file_field_widget_upload_validators($field, $instance) {
  *   A field array.
  * @param $instance
  *   A field instance array.
+ * @param $data
+ *   An array of token objects to pass to token_replace().
  * @return
  *   A file directory URI with tokens replaced.
+ *
+ * @see token_replace()
  */
-function file_field_widget_uri($field, $instance, $account = NULL) {
+function file_field_widget_uri($field, $instance, $data = array()) {
   $destination = trim($instance['settings']['file_directory'], '/');
 
   // Replace tokens.
-  $data = array('user' => isset($account) ? $account : $GLOBALS['user']);
   $destination = token_replace($destination, $data);
 
   return $field['settings']['uri_scheme'] . '://' . $destination;
diff --git a/modules/file/file.info b/modules/file/file.info
index 39daffc..eda79f9 100644
--- a/modules/file/file.info
+++ b/modules/file/file.info
@@ -2,6 +2,6 @@ name = File
 description = Defines a file field type.
 package = Core
 version = VERSION
-core = 8.x
+core = 7.x
 dependencies[] = field
 files[] = tests/file.test
diff --git a/modules/file/file.module b/modules/file/file.module
index 4002701..3e45251 100644
--- a/modules/file/file.module
+++ b/modules/file/file.module
@@ -976,7 +976,7 @@ function file_get_file_references($file, $field = NULL, $age = FIELD_LOAD_REVISI
     }
   }
 
-  return isset($field) ? $references[$field['field_name']] : $references;
+  return isset($field) ? $references[$field['field_name']] : array_filter($references);
 }
 
 /**
diff --git a/modules/file/tests/file.test b/modules/file/tests/file.test
index 99f95b4..ea8c5c6 100644
--- a/modules/file/tests/file.test
+++ b/modules/file/tests/file.test
@@ -932,7 +932,7 @@ class FileFieldPathTestCase extends FileFieldTestCase {
 
     // Check the path when used with tokens.
     // Change the path to contain multiple token directories.
-    $field = $this->updateFileField($field_name, $type_name, array('file_directory' => '[user:uid]/[user:name]'));
+    $field = $this->updateFileField($field_name, $type_name, array('file_directory' => '[current-user:uid]/[current-user:name]'));
 
     // Upload a new file into the token subdirectories.
     $nid = $this->uploadNodeFile($test_file, $field_name, $type_name);
@@ -940,6 +940,8 @@ class FileFieldPathTestCase extends FileFieldTestCase {
     // Check that the file was uploaded into the subdirectory.
     $node = node_load($nid, NULL, TRUE);
     $node_file = (object) $node->{$field_name}[LANGUAGE_NONE][0];
+    // Do token replacement using the same user which uploaded the file, not
+    // the user running the test case.
     $data = array('user' => $this->admin_user);
     $subdirectory = token_replace('[user:uid]/[user:name]', $data);
     $this->assertPathMatch('public://' . $subdirectory . '/' . $test_file->filename, $node_file->uri, t('The file %file was uploaded to the correct path with token replacements.', array('%file' => $node_file->uri)));
diff --git a/modules/file/tests/file_module_test.info b/modules/file/tests/file_module_test.info
index d83441c..8db907b 100644
--- a/modules/file/tests/file_module_test.info
+++ b/modules/file/tests/file_module_test.info
@@ -2,5 +2,5 @@ name = File test
 description = Provides hooks for testing File module functionality.
 package = Core
 version = VERSION
-core = 8.x
+core = 7.x
 hidden = TRUE
diff --git a/modules/filter/filter.info b/modules/filter/filter.info
index 022e9ed..0aebbf8 100644
--- a/modules/filter/filter.info
+++ b/modules/filter/filter.info
@@ -2,7 +2,7 @@ name = Filter
 description = Filters content in preparation for display.
 package = Core
 version = VERSION
-core = 8.x
+core = 7.x
 files[] = filter.test
 required = TRUE
 configure = admin/config/content/formats
diff --git a/modules/filter/filter.install b/modules/filter/filter.install
index da9ecb8..84512cd 100644
--- a/modules/filter/filter.install
+++ b/modules/filter/filter.install
@@ -147,3 +147,347 @@ function filter_install() {
   // Set the fallback format to plain text.
   variable_set('filter_fallback_format', $plain_text_format->format);
 }
+
+/**
+ * Implements hook_update_dependencies().
+ */
+function filter_update_dependencies() {
+  // Filter update 7007 migrates permissions and therefore needs to run after
+  // the {role} table is properly set up.
+  $dependencies['filter'][7005] = array(
+    'user' => 7007,
+  );
+
+  return $dependencies;
+}
+/**
+ * @addtogroup updates-6.x-to-7.x
+ * @{
+ */
+
+/**
+ * Upgrade the {filter_formats} table and rename it to {filter_format}.
+ */
+function filter_update_7000() {
+  db_rename_table('filter_formats', 'filter_format');
+
+  // Add the new {filter_format}.status and {filter_format}.weight column.
+  db_add_field('filter_format', 'status', array(
+    'type' => 'int',
+    'unsigned' => TRUE,
+    'not null' => TRUE,
+    'default' => 1,
+    'size' => 'tiny',
+    'description' => 'The status of the text format. (1 = enabled, 0 = disabled)',
+  ));
+  db_add_field('filter_format', 'weight', array(
+    'type' => 'int',
+    'not null' => TRUE,
+    'default' => 0,
+    'description' => 'Weight of text format to use when listing.',
+  ), array(
+    'indexes' => array(
+      'status_weight' => array('status', 'weight'),
+    ),
+  ));
+}
+
+/**
+ * Break out "escape HTML filter" option to its own filter.
+ */
+function filter_update_7001() {
+  $result = db_query("SELECT format FROM {filter_format}")->fetchCol();
+  $insert = db_insert('filters')->fields(array('format', 'module', 'delta', 'weight'));
+
+  foreach ($result as $format_id) {
+    // Deprecated constants FILTER_HTML_STRIP = 1 and FILTER_HTML_ESCAPE = 2.
+    if (variable_get('filter_html_' . $format_id, 1) == 2) {
+      $insert->values(array(
+        'format' => $format_id,
+        'module' => 'filter',
+        'delta' => 4,
+        'weight' => 0,
+      ));
+    }
+    variable_del('filter_html_' . $format_id);
+  }
+
+  $insert->execute();
+}
+
+/**
+ * Upgrade the {filter} table for core filters.
+ */
+function filter_update_7003() {
+  // Duplicates the {filters} table since core cannot take care of the potential
+  // contributed module filters.
+  db_rename_table('filters', 'd6_upgrade_filter');
+  // Creates the Drupal 7 filter table.
+  $filter_table =  array(
+    'description' => 'Table that maps filters (HTML corrector) to text formats (Filtered HTML).',
+    'fields' => array(
+      'format' => array(
+        'type' => 'int',
+        'not null' => TRUE,
+        'default' => 0,
+        'description' => 'Foreign key: The {filter_format}.format to which this filter is assigned.',
+      ),
+      'module' => array(
+        'type' => 'varchar',
+        'length' => 64,
+        'not null' => TRUE,
+        'default' => '',
+        'description' => 'The origin module of the filter.',
+      ),
+      'name' => array(
+        'type' => 'varchar',
+        'length' => 32,
+        'not null' => TRUE,
+        'default' => '',
+        'description' => 'Name of the filter being referenced.',
+      ),
+      'weight' => array(
+        'type' => 'int',
+        'not null' => TRUE,
+        'default' => 0,
+        'description' => 'Weight of filter within format.',
+      ),
+      'status' => array(
+        'type' => 'int',
+        'not null' => TRUE,
+        'default' => 0,
+        'description' => 'Filter enabled status. (1 = enabled, 0 = disabled)',
+      ),
+      'settings' => array(
+        'type' => 'blob',
+        'not null' => FALSE,
+        'size' => 'big',
+        'serialize' => TRUE,
+        'description' => 'A serialized array of name value pairs that store the filter settings for the specific format.',
+      ),
+    ),
+    'primary key' => array('format', 'name'),
+    'indexes' => array(
+      'list' => array('weight', 'module', 'name'),
+    ),
+  );
+  db_create_table('filter', $filter_table);
+
+  // Get an array of the renamed filter deltas, organized by module.
+  $renamed_deltas = array(
+    'filter' => array(
+      '0' => 'filter_html',
+      '1' => 'filter_autop',
+      '2' => 'filter_url',
+      '3' => 'filter_htmlcorrector',
+      '4' => 'filter_html_escape',
+    ),
+    'php' => array(
+      '0' => 'php_code',
+    ),
+  );
+
+  // Loop through each filter and make changes to the core filter table by
+  // each record from the old to the new table.
+  foreach ($renamed_deltas as $module => $deltas) {
+    foreach ($deltas as $old_delta => $new_name) {
+      $query = db_select('d6_upgrade_filter')
+        ->fields('d6_upgrade_filter', array('format', 'weight'))
+        ->condition('module', $module)
+        ->condition('delta', $old_delta)
+        ->distinct();
+
+      foreach ($query->execute() as $record) {
+        // Port the filter settings.
+        $settings = array();
+        if ($new_name == 'filter_html') {
+          if ($setting = variable_get("allowed_html_{$record->format}", NULL)) {
+            $settings['allowed_html'] = $setting;
+            variable_del("allowed_html_{$record->format}");
+          }
+          if ($setting = variable_get("filter_html_help_{$record->format}", NULL)) {
+            $settings['filter_html_help'] = $setting;
+            variable_del("filter_html_help_{$record->format}");
+          }
+          if ($setting = variable_get("filter_html_nofollow_{$record->format}", NULL)) {
+            $settings['filter_html_nofollow'] = $setting;
+            variable_del("filter_html_nofollow_{$record->format}");
+          }
+        }
+        elseif ($new_name == 'filter_url') {
+          if ($setting = variable_get("filter_url_length_{$record->format}", NULL)) {
+            $settings['filter_url_length'] = $setting;
+            variable_del("filter_url_length_{$record->format}");
+          }
+        }
+
+        db_insert('filter')
+          ->fields(array(
+            'format' => $record->format,
+            'module' => $module,
+            'name' => $new_name,
+            'weight' => $record->weight,
+            'settings' => serialize($settings),
+            'status' => 1,
+          ))
+          ->execute();
+      }
+      db_delete('d6_upgrade_filter')
+        ->condition('module', $module)
+        ->condition('delta', $old_delta)
+        ->execute();
+    }
+  }
+}
+
+/**
+ * Integrate text formats with the user permissions system.
+ *
+ * This function converts text format role assignments to use the new text
+ * format permissions introduced in Drupal 7, creates a fallback (plain text)
+ * format that is available to all users, and explicitly sets the text format
+ * in cases that used to rely on a single site-wide default.
+ */
+function filter_update_7005() {
+  // Move role data from the filter system to the user permission system.
+  $all_roles = array_keys(user_roles());
+  $default_format = variable_get('filter_default_format', 1);
+  $result = db_query("SELECT * FROM {filter_format}");
+  foreach ($result as $format) {
+    // We need to assign the default format to all roles (regardless of what
+    // was stored in the database) to preserve the behavior of the site at the
+    // moment of the upgrade.
+    $format_roles = ($format->format == $default_format ? $all_roles : explode(',', $format->roles));
+    foreach ($format_roles as $format_role) {
+      if (in_array($format_role, $all_roles)) {
+        _update_7000_user_role_grant_permissions($format_role, array('use text format ' . $format->format), 'filter');
+      }
+    }
+  }
+
+  // Drop the roles field from the {filter_format} table.
+  db_drop_field('filter_format', 'roles');
+
+  // Add a fallback text format which outputs plain text and appears last on
+  // the list for all users. Generate a unique name for it, starting with
+  // "Plain text".
+  $start_name = 'Plain text';
+  $format_name = $start_name;
+  while ($format = db_query('SELECT format FROM {filter_format} WHERE name = :name', array(':name' => $format_name))->fetchField()) {
+    $id = empty($id) ? 2 : $id + 1;
+    $format_name = $start_name . ' ' . $id;
+  }
+
+  // Insert the filter format.
+  $format_id = db_insert('filter_format')
+    ->fields(array(
+      'name' => $format_name,
+      'cache' => 1,
+      'weight' => 1,
+      'status' => 1,
+    ))
+    ->execute();
+
+  // This format should output plain text, so we escape all HTML and apply the
+  // line break and URL filters only.
+  db_insert('filter')
+    ->fields(array(
+      'format',
+      'name',
+      'weight',
+      'status',
+      'module',
+      'settings',
+    ))
+    ->values(array(
+      'format' => $format_id,
+      'name' => 'filter_html_escape',
+      'weight' => 0,
+      'status' => 1,
+      'module' => 'filter',
+      'settings' => serialize(array()),
+    ))
+    ->values(array(
+      'format' => $format_id,
+      'name' => 'filter_url',
+      'weight' => 1,
+      'status' => 1,
+      'module' => 'filter',
+      'settings' => serialize(array()),
+    ))
+    ->values(array(
+      'format' => $format_id,
+      'name' => 'filter_autop',
+      'weight' => 2,
+      'status' => 1,
+      'module' => 'filter',
+      'settings' => serialize(array()),
+    ))
+    ->execute();
+
+  variable_set('filter_fallback_format', $format_id);
+  drupal_set_message('A new <em>Plain text</em> format has been created which will be available to all users. You can configure this text format on the <a href="' . url('admin/config/content/formats/' . $format) . '">text format configuration page</a>.');
+
+  // Move the former site-wide default text format to the top of the list, so
+  // that it continues to be the default text format for all users.
+  db_update('filter_format')
+    ->fields(array('weight' => -1))
+    ->condition('format', $default_format)
+    ->execute();
+
+  // We do not delete the 'filter_default_format' variable, since other modules
+  // need it in their update functions; for an example, see user_update_7010().
+  // @todo This variable can be deleted in Drupal 8.
+}
+
+/**
+ * Grant usage of all text formats to user roles having the 'administer filters' permission.
+ */
+function filter_update_7008() {
+  // Build the list of permissions to grant.
+  $permissions = array();
+  foreach (db_query('SELECT format FROM {filter_format}')->fetchCol() as $format_id) {
+    if ($format_id != variable_get('filter_fallback_format')) {
+      $permissions[] = 'use text format ' . $format_id;
+    }
+  }
+  // Grant text format permissions to all roles that can 'administer filters'.
+  // Albeit anonymous users *should not* have the permission, we cannot presume
+  // that they do not or must not.
+  if ($roles = user_roles(FALSE, 'administer filters')) {
+    foreach ($roles as $rid => $name) {
+      _update_7000_user_role_grant_permissions($rid, $permissions, 'filter');
+    }
+  }
+}
+
+/**
+ * Converts fields that store serialized variables from text to blob.
+ */
+function filter_update_7009() {
+  $schema = system_schema_cache_7054();
+  db_drop_table('cache_filter');
+  db_create_table('cache_filter', $schema);
+}
+
+/**
+ * Change {filter_format}.format and {filter}.format into varchar.
+ */
+function filter_update_7010() {
+  db_change_field('filter_format', 'format', 'format', array(
+    'type' => 'varchar',
+    'length' => 255,
+    'not null' => TRUE,
+    'description' => 'Primary Key: Unique machine name of the format.',
+  ));
+  db_change_field('filter', 'format', 'format', array(
+    'type' => 'varchar',
+    'length' => 255,
+    'not null' => TRUE,
+    'description' => 'Foreign key: The {filter_format}.format to which this filter is assigned.',
+  ));
+}
+
+/**
+ * @} End of "addtogroup updates-6.x-to-7.x"
+ */
diff --git a/modules/forum/forum.info b/modules/forum/forum.info
index cb6e3e7..b18a0e5 100644
--- a/modules/forum/forum.info
+++ b/modules/forum/forum.info
@@ -4,7 +4,7 @@ dependencies[] = taxonomy
 dependencies[] = comment
 package = Core
 version = VERSION
-core = 8.x
+core = 7.x
 files[] = forum.test
 configure = admin/structure/forum
 stylesheets[all][] = forum.css
diff --git a/modules/forum/forum.install b/modules/forum/forum.install
index 8e41be7..62777d6 100644
--- a/modules/forum/forum.install
+++ b/modules/forum/forum.install
@@ -46,7 +46,7 @@ function forum_enable() {
   // Create the 'taxonomy_forums' field if it doesn't already exist.
   if (!field_info_field('taxonomy_forums')) {
     $field = array(
-      'field_name' => 'taxonomy_' . $vocabulary->machine_name,
+      'field_name' => 'taxonomy_forums',
       'type' => 'taxonomy_term_reference',
       'settings' => array(
         'allowed_values' => array(
@@ -59,8 +59,6 @@ function forum_enable() {
     );
     field_create_field($field);
 
-    variable_set('forum_nav_vocabulary', $vocabulary->vid);
-
     // Create a default forum so forum posts can be created.
     $edit = array(
       'name' => t('General discussion'),
@@ -73,7 +71,7 @@ function forum_enable() {
 
     // Create the instance on the bundle.
     $instance = array(
-      'field_name' => 'taxonomy_' . $vocabulary->machine_name,
+      'field_name' => 'taxonomy_forums',
       'entity_type' => 'node',
       'label' => $vocabulary->name,
       'bundle' => 'forum',
@@ -215,7 +213,7 @@ function forum_schema() {
       ),
     ),
     'indexes' => array(
-      'forum_topics' => array('tid', 'sticky', 'last_comment_timestamp'),
+      'forum_topics' => array('nid', 'tid', 'sticky', 'last_comment_timestamp'),
     ),
     'foreign keys' => array(
       'tracked_node' => array(
@@ -234,3 +232,201 @@ function forum_schema() {
 
   return $schema;
 }
+
+/**
+ * Add new index to forum table.
+ */
+function forum_update_7000() {
+  db_drop_index('forum', 'nid');
+  db_add_index('forum', 'forum_topic', array('nid', 'tid'));
+}
+
+/**
+ * Create new {forum_index} table.
+ */
+function forum_update_7001() {
+  $forum_index = array(
+    'description' => 'Maintains denormalized information about node/term relationships.',
+    'fields' => array(
+      'nid' => array(
+        'description' => 'The {node}.nid this record tracks.',
+        'type' => 'int',
+        'unsigned' => TRUE,
+        'not null' => TRUE,
+        'default' => 0,
+      ),
+      'title' => array(
+        'description' => 'The title of this node, always treated as non-markup plain text.',
+        'type' => 'varchar',
+        'length' => 255,
+        'not null' => TRUE,
+        'default' => '',
+      ),
+      'tid' => array(
+         'description' => 'The term ID.',
+         'type' => 'int',
+         'unsigned' => TRUE,
+         'not null' => TRUE,
+         'default' => 0,
+      ),
+      'sticky' => array(
+        'description' => 'Boolean indicating whether the node is sticky.',
+        'type' => 'int',
+        'not null' => FALSE,
+        'default' => 0,
+        'size' => 'tiny',
+      ),
+      'created' => array(
+        'description' => 'The Unix timestamp when the node was created.',
+        'type' => 'int',
+        'unsigned' => TRUE,
+        'not null' => TRUE,
+        'default'=> 0,
+      ),
+      'last_comment_timestamp' => array(
+        'type' => 'int',
+        'not null' => TRUE,
+        'default' => 0,
+        'description' => 'The Unix timestamp of the last comment that was posted within this node, from {comment}.timestamp.',
+      ),
+      'comment_count' => array(
+        'type' => 'int',
+        'unsigned' => TRUE,
+        'not null' => TRUE,
+        'default' => 0,
+        'description' => 'The total number of comments on this node.',
+      ),
+    ),
+    'indexes' => array(
+      'forum_topics' => array('tid', 'sticky', 'last_comment_timestamp'),
+    ),
+    'foreign keys' => array(
+      'tracked_node' => array(
+        'table' => 'node',
+        'columns' => array('nid' => 'nid'),
+      ),
+      'term' => array(
+        'table' => 'taxonomy_term_data',
+        'columns' => array(
+          'tid' => 'tid',
+        ),
+      ),
+    ),
+  );
+  db_create_table('forum_index', $forum_index);
+
+  $select = db_select('node', 'n');
+  $forum_alias = $select->join('forum', 'f', 'n.vid = f.vid');
+  $ncs_alias = $select->join('node_comment_statistics', 'ncs', 'n.nid = ncs.nid');
+  $select
+    ->fields('n', array('nid', 'title', 'sticky', 'created'))
+    ->fields($forum_alias, array('tid'))
+    ->fields($ncs_alias, array('last_comment_timestamp', 'comment_count'));
+
+  db_insert('forum_index')
+    ->fields(array('nid', 'title', 'sticky', 'created', 'tid', 'last_comment_timestamp', 'comment_count'))
+    ->from($select)
+    ->execute();
+}
+
+/**
+ * Add new index to forum_index table.
+ */
+function forum_update_7002() {
+  db_drop_index('forum_index', 'forum_topics');
+  db_add_index('forum_index', 'forum_topics', array('nid', 'tid', 'sticky', 'last_comment_timestamp'));
+}
+
+/**
+ * @addtogroup updates-7.x-extra
+ * @{
+ */
+
+/**
+ * Rename field to 'taxonomy_forums'.
+ */
+function forum_update_7003() {
+  $messages = array();
+
+  $new_field_name = 'taxonomy_forums';
+
+  // Test to see if the taxonomy_forums field exists.
+  $fields = _update_7000_field_read_fields(array('field_name' => $new_field_name));
+  if ($fields) {
+    // Since the field exists, we're done.
+    return;
+  }
+
+  // Calculate the old field name.
+  $vid = variable_get('forum_nav_vocabulary', 0);
+  $vocabulary_machine_name = db_select('taxonomy_vocabulary', 'tv')
+    ->fields('tv', array('machine_name'))
+    ->condition('vid', $vid)
+    ->execute()
+    ->fetchField();
+  $old_field_name = 'taxonomy_' . $vocabulary_machine_name;
+
+  // Read the old fields.
+  $old_fields = _update_7000_field_read_fields(array('field_name' => $old_field_name));
+  foreach ($old_fields as $old_field) {
+    if ($old_field['storage']['type'] != 'field_sql_storage') {
+      $messages[] = t('Cannot rename field %id (%old_field_name) to %new_field_name because it does not use the field_sql_storage storage type.', array(
+        '%id' => $old_field['id'],
+        '%old_field_name' => $old_field_name,
+        '%new_field_name' => $new_field_name,
+      ));
+      continue;
+    }
+
+    // Update {field_config}.
+    db_update('field_config')
+      ->fields(array('field_name' => $new_field_name))
+      ->condition('id', $old_field['id'])
+      ->execute();
+
+    // Update {field_config_instance}.
+    db_update('field_config_instance')
+      ->fields(array('field_name' => $new_field_name))
+      ->condition('field_id', $old_field['id'])
+      ->execute();
+
+    // The tables that need updating in the form 'old_name' => 'new_name'.
+    $tables = array(
+      'field_data_' . $old_field_name => 'field_data_' . $new_field_name,
+      'field_revision_' . $old_field_name => 'field_revision_' . $new_field_name,
+    );
+    foreach ($tables as $old_table => $new_table) {
+      $old_column_name = $old_field_name . '_tid';
+      $new_column_name = $new_field_name . '_tid';
+
+      // Rename the column.
+      db_drop_index($old_table, $old_column_name);
+      db_change_field($old_table, $old_column_name, $new_column_name, array(
+        'type' => 'int',
+        'unsigned' => TRUE,
+        'not null' => FALSE,
+      ));
+      db_drop_index($old_table, $new_column_name);
+      db_add_index($old_table, $new_column_name, array($new_column_name));
+
+      // Rename the table.
+      db_rename_table($old_table, $new_table);
+    }
+  }
+
+  cache_clear_all('*', 'cache_field', TRUE);
+
+  return $messages;
+}
+
+/**
+ * Recreate the forum_topics index to resolve a bad index definition on upgraded sites.
+ */
+function forum_update_7004() {
+  db_drop_index('forum_index', 'forum_topics');
+  db_add_index('forum_index', 'forum_topics', array('nid', 'tid', 'sticky', 'last_comment_timestamp'));
+}
+
+/**
+ * @} End of "addtogroup updates-7.x-extra"
+ */
diff --git a/modules/forum/forum.module b/modules/forum/forum.module
index b5e4226..c58b5c9 100644
--- a/modules/forum/forum.module
+++ b/modules/forum/forum.module
@@ -169,12 +169,9 @@ function forum_menu_local_tasks_alter(&$data, $router_item, $root_path) {
     $tid = (isset($router_item['page_arguments'][0]) ? $router_item['page_arguments'][0]->tid : 0);
     $forum_term = forum_forum_load($tid);
     if ($forum_term) {
-      $vid = variable_get('forum_nav_vocabulary', 0);
-      $vocabulary = taxonomy_vocabulary_load($vid);
-
       $links = array();
       // Loop through all bundles for forum taxonomy vocabulary field.
-      $field = field_info_field('taxonomy_' . $vocabulary->machine_name);
+      $field = field_info_field('taxonomy_forums');
       foreach ($field['bundles']['node'] as $type) {
         if (node_access('create', $type)) {
           $links[$type] = array(
@@ -879,7 +876,6 @@ function forum_get_topics($tid, $sortby, $forum_per_page) {
     ->addTag('node_access')
     ->orderBy('f.sticky', 'DESC')
     ->orderByHeader($forum_topic_list_header)
-    ->orderBy('f.last_comment_timestamp', 'DESC')
     ->limit($forum_per_page);
 
   $count_query = db_select('forum_index', 'f');
@@ -894,7 +890,29 @@ function forum_get_topics($tid, $sortby, $forum_per_page) {
     $nids[] = $record->nid;
   }
   if ($nids) {
-    $result = db_query("SELECT n.title, n.nid, n.type, n.sticky, n.created, n.uid, n.comment AS comment_mode, ncs.*, f.tid AS forum_tid, u.name, CASE ncs.last_comment_uid WHEN 0 THEN ncs.last_comment_name ELSE u2.name END AS last_comment_name FROM {node} n INNER JOIN {node_comment_statistics} ncs ON n.nid = ncs.nid INNER JOIN {forum} f ON n.vid = f.vid INNER JOIN {users} u ON n.uid = u.uid INNER JOIN {users} u2 ON ncs.last_comment_uid = u2.uid WHERE n.nid IN (:nids)", array(':nids' => $nids));
+    $query = db_select('node', 'n')->extend('TableSort');
+    $query->fields('n', array('title', 'nid', 'type', 'sticky', 'created', 'uid'));
+    $query->addField('n', 'comment', 'comment_mode');
+
+    $query->join('node_comment_statistics', 'ncs', 'n.nid = ncs.nid');
+    $query->fields('ncs', array('cid', 'last_comment_uid', 'last_comment_timestamp', 'comment_count'));
+
+    $query->join('forum_index', 'f', 'f.nid = ncs.nid');
+    $query->addField('f', 'tid', 'forum_tid');
+
+    $query->join('users', 'u', 'n.uid = u.uid');
+    $query->addField('u', 'name');
+
+    $query->join('users', 'u2', 'ncs.last_comment_uid = u2.uid');
+
+    $query->addExpression('CASE ncs.last_comment_uid WHEN 0 THEN ncs.last_comment_name ELSE u2.name END', 'last_comment_name');
+
+    $query
+      ->orderBy('f.sticky', 'DESC')
+      ->orderByHeader($forum_topic_list_header)
+      ->condition('n.nid', $nids);
+
+    $result = $query->execute();
   }
   else {
     $result = array();
@@ -1193,16 +1211,16 @@ function _forum_user_last_visit($nid) {
 function _forum_get_topic_order($sortby) {
   switch ($sortby) {
     case 1:
-      return array('field' => 'ncs.last_comment_timestamp', 'sort' => 'desc');
+      return array('field' => 'f.last_comment_timestamp', 'sort' => 'desc');
       break;
     case 2:
-      return array('field' => 'ncs.last_comment_timestamp', 'sort' => 'asc');
+      return array('field' => 'f.last_comment_timestamp', 'sort' => 'asc');
       break;
     case 3:
-      return array('field' => 'ncs.comment_count', 'sort' => 'desc');
+      return array('field' => 'f.comment_count', 'sort' => 'desc');
       break;
     case 4:
-      return array('field' => 'ncs.comment_count', 'sort' => 'asc');
+      return array('field' => 'f.comment_count', 'sort' => 'asc');
       break;
   }
 }
diff --git a/modules/help/help.info b/modules/help/help.info
index b01a8ae..d4c1b36 100644
--- a/modules/help/help.info
+++ b/modules/help/help.info
@@ -2,5 +2,5 @@ name = Help
 description = Manages the display of online help.
 package = Core
 version = VERSION
-core = 8.x
+core = 7.x
 files[] = help.test
diff --git a/modules/image/image.info b/modules/image/image.info
index 5f9b651..d7eece1 100644
--- a/modules/image/image.info
+++ b/modules/image/image.info
@@ -2,7 +2,7 @@ name = Image
 description = Provides image manipulation tools.
 package = Core
 version = VERSION
-core = 8.x
+core = 7.x
 dependencies[] = file
 files[] = image.test
 configure = admin/config/media/image-styles
diff --git a/modules/image/image.install b/modules/image/image.install
index 121e8c7..fbd20de 100644
--- a/modules/image/image.install
+++ b/modules/image/image.install
@@ -144,6 +144,106 @@ function image_field_schema($field) {
 }
 
 /**
+ * Install the schema for users upgrading from the contributed module.
+ */
+function image_update_7000() {
+  if (!db_table_exists('image_styles')) {
+    $schema = array();
+
+    $schema['cache_image'] = system_schema_cache_7054();
+    $schema['cache_image']['description'] = 'Cache table used to store information about image manipulations that are in-progress.';
+
+    $schema['image_styles'] = array(
+      'description' => 'Stores configuration options for image styles.',
+      'fields' => array(
+        'isid' => array(
+          'description' => 'The primary identifier for an image style.',
+          'type' => 'serial',
+          'unsigned' => TRUE,
+          'not null' => TRUE,
+        ),
+        'name' => array(
+          'description' => 'The style name.',
+          'type' => 'varchar',
+          'length' => 255,
+          'not null' => TRUE,
+        ),
+      ),
+      'primary key' => array('isid'),
+      'unique keys' => array(
+        'name' => array('name'),
+      ),
+    );
+
+    $schema['image_effects'] = array(
+      'description' => 'Stores configuration options for image effects.',
+      'fields' => array(
+        'ieid' => array(
+          'description' => 'The primary identifier for an image effect.',
+          'type' => 'serial',
+          'unsigned' => TRUE,
+          'not null' => TRUE,
+        ),
+        'isid' => array(
+          'description' => 'The {image_styles}.isid for an image style.',
+          'type' => 'int',
+          'unsigned' => TRUE,
+          'not null' => TRUE,
+          'default' => 0,
+        ),
+        'weight' => array(
+          'description' => 'The weight of the effect in the style.',
+          'type' => 'int',
+          'unsigned' => FALSE,
+          'not null' => TRUE,
+          'default' => 0,
+        ),
+        'name' => array(
+          'description' => 'The unique name of the effect to be executed.',
+          'type' => 'varchar',
+          'length' => 255,
+          'not null' => TRUE,
+        ),
+        'data' => array(
+          'description' => 'The configuration data for the effect.',
+          'type' => 'blob',
+          'not null' => TRUE,
+          'size' => 'big',
+          'serialize' => TRUE,
+        ),
+      ),
+      'primary key' => array('ieid'),
+      'indexes' => array(
+        'isid' => array('isid'),
+        'weight' => array('weight'),
+      ),
+      'foreign keys' => array(
+        'image_style' => array(
+          'table' => 'image_styles',
+          'columns' => array('isid' => 'isid'),
+        ),
+      ),
+    );
+
+    db_create_table('cache_image', $schema['cache_image']);
+    db_create_table('image_styles', $schema['image_styles']);
+    db_create_table('image_effects', $schema['image_effects']);
+  }
+}
+
+/**
+ * Rename possibly misnamed {image_effect} table to {image_effects}.
+ */
+function image_update_7001() {
+  // Due to a bug in earlier versions of image_update_7000() it is possible
+  // to end up with an {image_effect} table where there should be an
+  // {image_effects} table.
+  if (!db_table_exists('image_effects') && db_table_exists('image_effect')) {
+    db_rename_table('image_effect', 'image_effects');
+  }
+}
+
+/**
  * Implements hook_requirements() to check the PHP GD Library.
  *
  * @param $phase
diff --git a/modules/image/tests/image_module_test.info b/modules/image/tests/image_module_test.info
index 01d4d71..db7eacd 100644
--- a/modules/image/tests/image_module_test.info
+++ b/modules/image/tests/image_module_test.info
@@ -2,6 +2,6 @@ name = Image test
 description = Provides hook implementations for testing Image module functionality.
 package = Core
 version = VERSION
-core = 8.x
+core = 7.x
 files[] = image_module_test.module
 hidden = TRUE
diff --git a/modules/locale/locale.admin.inc b/modules/locale/locale.admin.inc
index 3e4c6f1..d8201db 100644
--- a/modules/locale/locale.admin.inc
+++ b/modules/locale/locale.admin.inc
@@ -467,6 +467,9 @@ function locale_languages_delete_form_submit($form, &$form_state) {
       ->fields(array('language' => ''))
       ->condition('language', $form_state['values']['langcode'])
       ->execute();
+    if ($languages[$form_state['values']['langcode']]->enabled) {
+      variable_set('language_count', variable_get('language_count', 1) - 1);
+    }
     module_invoke_all('multilingual_settings_changed');
     $variables = array('%locale' => $languages[$form_state['values']['langcode']]->name);
     drupal_set_message(t('The language %locale has been removed.', $variables));
@@ -538,6 +541,12 @@ function _locale_languages_configure_form_language_table(&$form, $type) {
   asort($providers_weight);
 
   foreach ($providers_weight as $id => $weight) {
+    // A language provider might be no more available if the defining module has
+    // been disabled after the last configuration saving.
+    if (!isset($language_providers[$id])) {
+      continue;
+    }
+
     $enabled = isset($enabled_providers[$id]);
     $provider = $language_providers[$id];
 
@@ -655,7 +664,6 @@ function theme_locale_languages_configure_form($variables) {
  * Submit handler for language negotiation settings.
  */
 function locale_languages_configure_form_submit($form, &$form_state) {
-  $language_types = array();
   $configurable_types = $form['#language_types'];
 
   foreach ($configurable_types as $type) {
@@ -663,7 +671,6 @@ function locale_languages_configure_form_submit($form, &$form_state) {
     $enabled_providers = $form_state['values'][$type]['enabled'];
     $enabled_providers[LANGUAGE_NEGOTIATION_DEFAULT] = TRUE;
     $providers_weight = $form_state['values'][$type]['weight'];
-    $language_types[$type] = TRUE;
 
     foreach ($providers_weight as $id => $weight) {
       if ($enabled_providers[$id]) {
@@ -677,27 +684,11 @@ function locale_languages_configure_form_submit($form, &$form_state) {
     variable_set("locale_language_providers_weight_$type", $providers_weight);
   }
 
-  // Save non-configurable language types negotiation.
-  $language_types_info = language_types_info();
-  $defined_providers = $form['#language_providers'];
-  foreach ($language_types_info as $type => $info) {
-    if (isset($info['fixed'])) {
-      $language_types[$type] = FALSE;
-      $negotiation = array();
-      foreach ($info['fixed'] as $weight => $id) {
-        if (isset($defined_providers[$id])) {
-          $negotiation[$id] = $defined_providers[$id];
-          $negotiation[$id]['weight'] = $weight;
-        }
-      }
-      language_negotiation_set($type, $negotiation);
-    }
-  }
-
-  // Save language types.
-  variable_set('language_types', $language_types);
+  // Update non-configurable language types and the related language negotiation
+  // configuration.
+  language_types_set();
 
-  $form_state['redirect'] = 'admin/config/regional/language';
+  $form_state['redirect'] = 'admin/config/regional/language/configure';
   drupal_set_message(t('Language negotiation configuration saved.'));
 }
 
diff --git a/modules/locale/locale.info b/modules/locale/locale.info
index 748d274..1d6bdcf 100644
--- a/modules/locale/locale.info
+++ b/modules/locale/locale.info
@@ -2,6 +2,6 @@ name = Locale
 description = Adds language handling functionality and enables the translation of the user interface to languages other than English.
 package = Core
 version = VERSION
-core = 8.x
+core = 7.x
 files[] = locale.test
 configure = admin/config/regional/language
diff --git a/modules/locale/locale.install b/modules/locale/locale.install
index a144813..80b20c4 100644
--- a/modules/locale/locale.install
+++ b/modules/locale/locale.install
@@ -27,6 +27,117 @@ function locale_install() {
 }
 
 /**
+ * @addtogroup updates-6.x-to-7.x
+ * @{
+ */
+
+/**
+ * Add context field index and allow longer location.
+ */
+function locale_update_7000() {
+  db_drop_index('locales_source', 'source');
+  db_add_index('locales_source', 'source_context', array(array('source', 30), 'context'));
+
+  // Also drop the 'textgroup_location' index added by the i18nstrings module
+  // of the i18n project, which prevents the below schema update from running.
+  if (db_index_exists('locales_source', 'textgroup_location')) {
+    db_drop_index('locales_source', 'textgroup_location');
+  }
+
+  db_change_field('locales_source', 'location', 'location', array(
+    'type' => 'text',
+    'not null' => FALSE,
+    'size' => 'big',
+    'description' => 'Drupal path in case of online discovered translations or file path in case of imported strings.',
+  ));
+}
+
+/**
+ * Upgrade language negotiation settings.
+ */
+function locale_update_7001() {
+  require_once DRUPAL_ROOT . '/includes/language.inc';
+  require_once DRUPAL_ROOT . '/includes/locale.inc';
+  require_once DRUPAL_ROOT . '/modules/locale/locale.module';
+
+  switch (variable_get('language_negotiation', 0)) {
+    // LANGUAGE_NEGOTIATION_NONE.
+    case 0:
+      $negotiation = array();
+      break;
+
+    // LANGUAGE_NEGOTIATION_PATH_DEFAULT.
+    case 1:
+      $negotiation = array(LOCALE_LANGUAGE_NEGOTIATION_URL);
+      // In Drupal 6 path prefixes are shown for the default language only when
+      // language negotiation is set to LANGUAGE_NEGOTIATION_PATH, while in
+      // Drupal 7 path prefixes are always shown if not empty. Hence we need to
+      // ensure that the default language has an empty prefix to avoid breaking
+      // the site URLs with a prefix that previously was missing.
+      $default = language_default();
+      $default->prefix = '';
+      variable_set('language_default', $default);
+      db_update('languages')
+        ->fields(array('prefix' => $default->prefix))
+        ->condition('language', $default->language)
+        ->execute();
+      break;
+
+    // LANGUAGE_NEGOTIATION_PATH.
+    case 2:
+      $negotiation = array(LOCALE_LANGUAGE_NEGOTIATION_URL, LOCALE_LANGUAGE_NEGOTIATION_USER, LOCALE_LANGUAGE_NEGOTIATION_BROWSER);
+      break;
+
+    // LANGUAGE_NEGOTIATION_DOMAIN.
+    case 3:
+      variable_set('locale_language_negotiation_url_part', LOCALE_LANGUAGE_NEGOTIATION_URL_DOMAIN);
+      $negotiation = array(LOCALE_LANGUAGE_NEGOTIATION_URL);
+      break;
+  }
+
+  // Save the new language negotiation options.
+  language_negotiation_set(LANGUAGE_TYPE_INTERFACE, array_flip($negotiation));
+  language_negotiation_set(LANGUAGE_TYPE_CONTENT, array(LOCALE_LANGUAGE_NEGOTIATION_INTERFACE => 0));
+  language_negotiation_set(LANGUAGE_TYPE_URL, array(LOCALE_LANGUAGE_NEGOTIATION_URL => 0));
+
+  // Save admininstration UI settings.
+  $type = LANGUAGE_TYPE_INTERFACE;
+  $provider_weights = array_flip(array_keys(locale_language_negotiation_info()));
+  variable_set("locale_language_providers_weight_$type", $provider_weights);
+
+  // Unset the old language negotiation system variable.
+  variable_del('language_negotiation');
+
+  return array();
+}
+
+/**
+ * Updates URL language negotiation by adding the URL fallback detection method.
+ */
+function locale_update_7002() {
+  // language.inc may not have been included during bootstrap if there is not
+  // more than one language currently enabled.
+  require_once DRUPAL_ROOT . '/includes/language.inc';
+  $language_types_info = language_types_info();
+  $info = $language_types_info[LANGUAGE_TYPE_URL];
+  if (isset($info['fixed'])) {
+    language_negotiation_set(LANGUAGE_TYPE_URL, array_flip($info['fixed']));
+  }
+}
+
+/**
+ * Update "language_count" variable.
+ */
+function locale_update_7003() {
+  $languages = language_list('enabled');
+  variable_set('language_count', count($languages[1]));
+}
+
+/**
+ * @} End of "addtogroup updates-6.x-to-7.x"
+ */
+
+/**
  * Implements hook_uninstall().
  */
 function locale_uninstall() {
@@ -262,3 +373,4 @@ function locale_schema() {
 
   return $schema;
 }
+
diff --git a/modules/locale/locale.module b/modules/locale/locale.module
index 9505f72..0788461 100644
--- a/modules/locale/locale.module
+++ b/modules/locale/locale.module
@@ -59,9 +59,9 @@ function locale_help($path, $arg) {
       return '<p>' . t('This page exports the translated strings used by your site. An export file may be in Gettext Portable Object (<em>.po</em>) form, which includes both the original string and the translation (used to share translations with others), or in Gettext Portable Object Template (<em>.pot</em>) form, which includes the original strings only (used to create new translations with a Gettext translation editor).') . '</p>';
     case 'admin/config/regional/translate/translate':
       return '<p>' . t('This page allows a translator to search for specific translated and untranslated strings, and is used when creating or editing translations. (Note: For translation tasks involving many strings, it may be more convenient to <a href="@export">export</a> strings for offline editing in a desktop Gettext translation editor.) Searches may be limited to strings found within a specific text group or in a specific language.', array('@export' => url('admin/config/regional/translate/export'))) . '</p>';
-    case 'admin/structure/block/manage':
-      if ($arg[4] == 'locale' && $arg[5] == 0) {
-        return '<p>' . t('This block is only shown if <a href="@languages">at least two languages are enabled</a> and <a href="@configuration">language negotiation</a> is set to something other than <em>None</em>.', array('@languages' => url('admin/config/regional/language'), '@configuration' => url('admin/config/regional/language/configure'))) . '</p>';
+    case 'admin/structure/block/manage/%/%':
+      if ($arg[4] == 'locale' && $arg[5] == 'language') {
+        return '<p>' . t('This block is only shown if <a href="@languages">at least two languages are enabled</a> and <a href="@configuration">language negotiation</a> is set to <em>URL</em> or <em>Session</em>.', array('@languages' => url('admin/config/regional/language'), '@configuration' => url('admin/config/regional/language/configure'))) . '</p>';
       }
       break;
   }
@@ -513,6 +513,8 @@ function locale_language_types_info() {
       'description' => t('Order of language detection methods for user interface text. If a translation of user interface text is available in the detected language, it will be displayed.'),
     ),
     LANGUAGE_TYPE_CONTENT => array(
+      'name' => t('Content'),
+      'description' => t('Order of language detection methods for content. If a version of content is available in the detected language, it will be displayed.'),
       'fixed' => array(LOCALE_LANGUAGE_NEGOTIATION_INTERFACE),
     ),
     LANGUAGE_TYPE_URL => array(
@@ -593,6 +595,22 @@ function locale_language_negotiation_info() {
   return $providers;
 }
 
+/**
+ * Implements hook_modules_enabled().
+ */
+function locale_modules_enabled($modules) {
+  include_once DRUPAL_ROOT . '/includes/language.inc';
+  language_types_set();
+  language_negotiation_purge();
+}
+
+/**
+ * Implements hook_modules_disabled().
+ */
+function locale_modules_disabled($modules) {
+  locale_modules_enabled($modules);
+}
+
 // ---------------------------------------------------------------------------------
 // Locale core functionality
 
@@ -928,7 +946,7 @@ function locale_block_info() {
   include_once DRUPAL_ROOT . '/includes/language.inc';
   $block = array();
   $info = language_types_info();
-  foreach (language_types_configurable() as $type) {
+  foreach (language_types_configurable(FALSE) as $type) {
     $block[$type] = array(
       'info' => t('Language switcher (@type)', array('@type' => $info[$type]['name'])),
       // Not worth caching.
diff --git a/modules/locale/locale.test b/modules/locale/locale.test
index 765bfb6..42a6dbc 100644
--- a/modules/locale/locale.test
+++ b/modules/locale/locale.test
@@ -17,6 +17,7 @@
  *  - a functional test for multilingual support by content type and on nodes.
  *  - a functional test for multilingual fields.
  *  - a functional test for comment language.
+ *  - a functional test fot language types/negotiation info.
  */
 
 
@@ -129,7 +130,7 @@ class LocaleConfigurationTest extends DrupalWebTestCase {
     $this->drupalGet('admin/config/regional/language');
     $this->clickLink(t('delete'));
     $this->assertText(t('Are you sure you want to delete the language'), t('"delete" link is correct.'));
-    // Delete the language.
+    // Delete an enabled language.
     $this->drupalGet('admin/config/regional/language/delete/' . $langcode);
     // First test the 'cancel' link.
     $this->clickLink(t('Cancel'));
@@ -144,6 +145,31 @@ class LocaleConfigurationTest extends DrupalWebTestCase {
     // Verify that language is no longer found.
     $this->drupalGet('admin/config/regional/language/delete/' . $langcode);
     $this->assertResponse(404, t('Language no longer found.'));
+    // Make sure the "language_count" variable has been updated correctly.
+    drupal_static_reset('language_list');
+    $enabled = language_list('enabled');
+    $this->assertEqual(variable_get('language_count', 1), count($enabled[1]), t('Language count is correct.'));
+    // Delete a disabled language.
+    // Disable an enabled language.
+    $edit = array(
+      'enabled[fr]' => FALSE,
+    );
+    $this->drupalPost($path, $edit, t('Save configuration'));
+    $this->assertNoFieldChecked('edit-enabled-fr', t('French language disabled.'));
+    // Get the count of enabled languages.
+    drupal_static_reset('language_list');
+    $enabled = language_list('enabled');
+    // Delete the disabled language.
+    $this->drupalPost('admin/config/regional/language/delete/fr', array(), t('Delete'));
+    // We need raw here because %locale will add HTML.
+    $this->assertRaw(t('The language %locale has been removed.', array('%locale' => 'French')), t('Disabled language has been removed.'));
+    $this->assertEqual($this->getUrl(), url('admin/config/regional/language', array('absolute' => TRUE)), t('Correct page redirection.'));
+    // Verify that language is no longer found.
+    $this->drupalGet('admin/config/regional/language/delete/fr');
+    $this->assertResponse(404, t('Language no longer found.'));
+    // Make sure the "language_count" variable has not changed.
+    $this->assertEqual(variable_get('language_count', 1), count($enabled[1]), t('Language count is correct.'));
+
 
     // Ensure we can't delete the English language.
     $this->drupalGet('admin/config/regional/language/delete/en');
@@ -2223,10 +2249,13 @@ class LocaleCommentLanguageFunctionalTest extends DrupalWebTestCase {
     variable_set('locale_test_content_language_type', TRUE);
 
     // Set interface language detection to user and content language detection
-    // to URL.
+    // to URL. Disable inheritance from interface language to ensure content
+    // language will fall back to the default language if no URL language can be
+    // detected.
     $edit = array(
       'language[enabled][locale-user]' => TRUE,
-      'language_content[enabled][locale-url]' => TRUE
+      'language_content[enabled][locale-url]' => TRUE,
+      'language_content[enabled][locale-interface]' => FALSE,
     );
     $this->drupalPost('admin/config/regional/language/configure', $edit, t('Save settings'));
 
@@ -2348,3 +2377,158 @@ class LocaleDateFormatsFunctionalTest extends DrupalWebTestCase {
     $this->assertText($french_date, t('French date format appears'));
   }
 }
+
+/**
+ * Functional test for language types/negotiation info.
+ */
+class LocaleLanguageNegotiationInfoFunctionalTest extends DrupalWebTestCase {
+
+  public static function getInfo() {
+    return array(
+      'name' => 'Language negotiation info',
+      'description' => 'Tests alterations to language types/negotiation info.',
+      'group' => 'Locale',
+    );
+  }
+
+  function setUp() {
+    parent::setUp('locale');
+    require_once DRUPAL_ROOT .'/includes/language.inc';
+    $admin_user = $this->drupalCreateUser(array('administer languages', 'access administration pages', 'view the administration theme'));
+    $this->drupalLogin($admin_user);
+    $this->drupalPost('admin/config/regional/language/add', array('langcode' => 'it'), t('Add language'));
+  }
+
+  /**
+   * Tests alterations to language types/negotiation info.
+   */
+  function testInfoAlterations() {
+    // Enable language type/negotiation info alterations.
+    variable_set('locale_test_language_types', TRUE);
+    variable_set('locale_test_language_negotiation_info', TRUE);
+    $this->languageNegotiationUpdate();
+
+    // Check that fixed language types are properly configured without the need
+    // of saving the language negotiation settings.
+    $this->checkFixedLanguageTypes();
+
+    // Make the content language type configurable by updating the language
+    // negotiation settings with the proper flag enabled.
+    variable_set('locale_test_content_language_type', TRUE);
+    $this->languageNegotiationUpdate();
+    $type = LANGUAGE_TYPE_CONTENT;
+    $language_types = variable_get('language_types', drupal_language_types());
+    $this->assertTrue($language_types[$type], t('Content language type is configurable.'));
+
+    // Enable some core and custom language providers. The test language type is
+    // supposed to be configurable.
+    $test_type = 'test_language_type';
+    $provider = LOCALE_LANGUAGE_NEGOTIATION_INTERFACE;
+    $test_provider = 'test_language_provider';
+    $form_field = $type . '[enabled]['. $provider .']';
+    $edit = array(
+      $form_field => TRUE,
+      $type . '[enabled][' . $test_provider . ']' => TRUE,
+      $test_type . '[enabled][' . $test_provider . ']' => TRUE,
+    );
+    $this->drupalPost('admin/config/regional/language/configure', $edit, t('Save settings'));
+
+    // Remove the interface language provider by updating the language
+    // negotiation settings with the proper flag enabled.
+    variable_set('locale_test_language_negotiation_info_alter', TRUE);
+    $this->languageNegotiationUpdate();
+    $negotiation = variable_get("language_negotiation_$type", array());
+    $this->assertFalse(isset($negotiation[$provider]), t('Interface language provider removed from the stored settings.'));
+    $this->assertNoFieldByXPath("//input[@name=\"$form_field\"]", NULL, t('Interface language provider unavailable.'));
+
+    // Check that type-specific language providers can be assigned only to the
+    // corresponding language types.
+    foreach (language_types_configurable() as $type) {
+      $form_field = $type . '[enabled][test_language_provider_ts]';
+      if ($type == $test_type) {
+        $this->assertFieldByXPath("//input[@name=\"$form_field\"]", NULL, t('Type-specific test language provider available for %type.', array('%type' => $type)));
+      }
+      else {
+        $this->assertNoFieldByXPath("//input[@name=\"$form_field\"]", NULL, t('Type-specific test language provider unavailable for %type.', array('%type' => $type)));
+      }
+    }
+
+    // Check language negotiation results.
+    $this->drupalGet('');
+    $last = variable_get('locale_test_language_negotiation_last', array());
+    foreach (language_types() as $type) {
+      $langcode = $last[$type];
+      $value = $type == LANGUAGE_TYPE_CONTENT || strpos($type, 'test') !== FALSE ? 'it' : 'en';
+      $this->assertEqual($langcode, $value, t('The negotiated language for %type is %language', array('%type' => $type, '%language' => $langcode)));
+    }
+
+    // Disable locale_test and check that everything is set back to the original
+    // status.
+    $this->languageNegotiationUpdate('disable');
+
+    // Check that only the core language types are available.
+    foreach (language_types() as $type) {
+      $this->assertTrue(strpos($type, 'test') === FALSE, t('The %type language is still available', array('%type' => $type)));
+    }
+
+    // Check that fixed language types are properly configured, even those
+    // previously set to configurable.
+    $this->checkFixedLanguageTypes();
+
+    // Check that unavailable language providers are not present in the
+    // negotiation settings.
+    $negotiation = variable_get("language_negotiation_$type", array());
+    $this->assertFalse(isset($negotiation[$test_provider]), t('The disabled test language provider is not part of the content language negotiation settings.'));
+
+    // Check that configuration page presents the correct options and settings.
+    $this->assertNoRaw(t('Test language detection'), t('No test language type configuration available.'));
+    $this->assertNoRaw(t('This is a test language provider'), t('No test language provider available.'));
+  }
+
+  /**
+   * Update language types/negotiation information.
+   *
+   * Manually invoke locale_modules_enabled()/locale_modules_disabled() since
+   * they would not be invoked after enabling/disabling locale_test the first
+   * time.
+   */
+  private function languageNegotiationUpdate($op = 'enable') {
+    static $last_op = NULL;
+    $modules = array('locale_test');
+
+    // Enable/disable locale_test only if we did not already before.
+    if ($last_op != $op) {
+      $function = "module_{$op}";
+      $function($modules);
+      // Reset hook implementation cache.
+      module_implements(NULL, FALSE, TRUE);
+    }
+
+    drupal_static_reset('language_types_info');
+    drupal_static_reset('language_negotiation_info');
+    $function = "locale_modules_{$op}d";
+    if (function_exists($function)) {
+      $function($modules);
+    }
+
+    $this->drupalGet('admin/config/regional/language/configure');
+  }
+
+  /**
+   * Check that language negotiation for fixed types matches the stored one.
+   */
+  private function checkFixedLanguageTypes() {
+    drupal_static_reset('language_types_info');
+    foreach (language_types_info() as $type => $info) {
+      if (isset($info['fixed'])) {
+        $negotiation = variable_get("language_negotiation_$type", array());
+        $equal = count($info['fixed']) == count($negotiation);
+        while ($equal && list($id) = each($negotiation)) {
+          list(, $info_id) = each($info['fixed']);
+          $equal = $info_id == $id;
+        }
+        $this->assertTrue($equal, t('language negotiation for %type is properly set up', array('%type' => $type)));
+      }
+    }
+  }
+}
diff --git a/modules/locale/tests/locale_test.info b/modules/locale/tests/locale_test.info
index 83cae4f..3744a9e 100644
--- a/modules/locale/tests/locale_test.info
+++ b/modules/locale/tests/locale_test.info
@@ -1,6 +1,6 @@
 name = "Locale Test"
 description = "Support module for the locale layer tests."
-core = 8.x
+core = 7.x
 package = Testing
 version = VERSION
 hidden = TRUE
diff --git a/modules/locale/tests/locale_test.module b/modules/locale/tests/locale_test.module
index f256b5c..14a2588 100644
--- a/modules/locale/tests/locale_test.module
+++ b/modules/locale/tests/locale_test.module
@@ -28,13 +28,88 @@ function locale_test_boot() {
 }
 
 /**
+ * Implements hook_init().
+ */
+function locale_test_init() {
+  locale_test_store_language_negotiation();
+}
+
+/**
+ * Implements hook_language_types_info().
+ */
+function locale_test_language_types_info() {
+  if (variable_get('locale_test_language_types', FALSE)) {
+    return array(
+      'test_language_type' => array(
+        'name' => t('Test'),
+        'description' => t('A test language type.'),
+      ),
+      'fixed_test_language_type' => array(
+        'fixed' => array('test_language_provider'),
+      ),
+    );
+  }
+}
+
+/**
  * Implements hook_language_types_info_alter().
  */
 function locale_test_language_types_info_alter(array &$language_types) {
   if (variable_get('locale_test_content_language_type', FALSE)) {
-    $language_types[LANGUAGE_TYPE_CONTENT] = array(
-      'name' => t('Content'),
-      'description' => t('Order of language detection methods for content. If a version of content is available in the detected language, it will be displayed.'),
+    unset($language_types[LANGUAGE_TYPE_CONTENT]['fixed']);
+  }
+}
+
+/**
+ * Implements hook_language_negotiation_info().
+ */
+function locale_test_language_negotiation_info() {
+  if (variable_get('locale_test_language_negotiation_info', FALSE)) {
+    $info = array(
+      'callbacks' => array(
+        'language' => 'locale_test_language_provider',
+      ),
+      'file' => drupal_get_path('module', 'locale_test') .'/locale_test.module',
+      'weight' => -10,
+      'description' => t('This is a test language provider.'),
     );
+
+    return array(
+      'test_language_provider' => array(
+        'name' => t('Test'),
+        'types' => array(LANGUAGE_TYPE_CONTENT, 'test_language_type', 'fixed_test_language_type'),
+      ) + $info,
+      'test_language_provider_ts' => array(
+        'name' => t('Type-specific test'),
+        'types' => array('test_language_type'),
+      ) + $info,
+    );
+  }
+}
+
+/**
+ * Implements hook_language_negotiation_info_alter().
+ */
+function locale_test_language_negotiation_info_alter(array &$language_providers) {
+  if (variable_get('locale_test_language_negotiation_info_alter', FALSE)) {
+    unset($language_providers[LOCALE_LANGUAGE_NEGOTIATION_INTERFACE]);
   }
 }
+
+/**
+ * Store the last negotiated languages.
+ */
+function locale_test_store_language_negotiation() {
+  $last = array();
+  foreach (language_types() as $type) {
+    $last[$type] = $GLOBALS[$type]->language;
+  }
+  variable_set('locale_test_language_negotiation_last', $last);
+}
+
+/**
+ * Test language provider.
+ */
+function locale_test_language_provider($languages) {
+  return 'it';
+}
diff --git a/modules/menu/menu.admin.inc b/modules/menu/menu.admin.inc
index 1f3c4f7..7b5882c 100644
--- a/modules/menu/menu.admin.inc
+++ b/modules/menu/menu.admin.inc
@@ -678,7 +678,7 @@ function menu_configure() {
     '#empty_option' => t('No Secondary links'),
     '#options' => $menu_options,
     '#tree' => FALSE,
-    '#description' => t('Select the source for the Secondary links. An advanced option allows you to use the same source for both Main links (currently %main) and Secondary links: if your source menu has two levels of hierarchy, the top level menu links will appear in the Main links, and the children of the active link will appear in the Secondary links.', array('%main' => $menu_options[$main])),
+    '#description' => t('Select the source for the Secondary links. An advanced option allows you to use the same source for both Main links (currently %main) and Secondary links: if your source menu has two levels of hierarchy, the top level menu links will appear in the Main links, and the children of the active link will appear in the Secondary links.', array('%main' => $main ? $menu_options[$main] : 'none')),
   );
 
   return system_settings_form($form);
diff --git a/modules/menu/menu.info b/modules/menu/menu.info
index d93c542..2219f69 100644
--- a/modules/menu/menu.info
+++ b/modules/menu/menu.info
@@ -2,6 +2,6 @@ name = Menu
 description = Allows administrators to customize the site navigation menu.
 package = Core
 version = VERSION
-core = 8.x
+core = 7.x
 files[] = menu.test
 configure = admin/structure/menu
diff --git a/modules/menu/menu.install b/modules/menu/menu.install
index 05aed28..717c5e7 100644
--- a/modules/menu/menu.install
+++ b/modules/menu/menu.install
@@ -69,3 +69,46 @@ function menu_uninstall() {
   menu_rebuild();
 }
 
+/**
+ * @defgroup updates-7.x-extra Extra updates for 7.x
+ * @{
+ */
+
+/**
+ * Migrate the "Default menu for content" setting to individual node types.
+ */
+function menu_update_7000() {
+  // Act only on sites originally on Drupal 6 that have a custom "Default menu
+  // for content" setting.
+  $default_node_menu = variable_get('menu_default_node_menu');
+  if (isset($default_node_menu)) {
+    // Remove variable no longer used in Drupal 7.
+    variable_del('menu_default_node_menu');
+
+    // Make sure the menu chosen as the default still exists.
+    $defined_menus = db_query('SELECT * FROM {menu_custom}')->fetchAllAssoc('menu_name', PDO::FETCH_ASSOC);
+    // If the menu does not exist, do nothing; nodes will use the default D7
+    // node menu settings.
+    if (!isset($defined_menus[$default_node_menu])) {
+      return;
+    }
+
+    // Update the menu settings for each node type.
+    foreach (_update_7000_node_get_types() as $type => $type_object) {
+      $type_menus = variable_get('menu_options_' . $type);
+      // If the site already has a custom menu setting for this node type (set
+      // on the initial upgrade to Drupal 7.0), don't override it.
+      if (!isset($type_menus)) {
+        // Set up this node type so that the Drupal 6 "Default menu for content"
+        // is still available in the "Menu settings" section.
+        variable_set('menu_options_' . $type, array($default_node_menu));
+        variable_set('menu_parent_' . $type, $default_node_menu . ':0');
+      }
+    }
+  }
+}
+
+/**
+ * @} End of "defgroup updates-7.x-extra"
+ * The next series of updates should start at 8000.
+ */
diff --git a/modules/menu/menu.module b/modules/menu/menu.module
index 3edf158..fc8f68a 100644
--- a/modules/menu/menu.module
+++ b/modules/menu/menu.module
@@ -540,18 +540,23 @@ function menu_node_delete($node) {
 function menu_node_prepare($node) {
   if (empty($node->menu)) {
     // Prepare the node for the edit form so that $node->menu always exists.
-    $menu_name = variable_get('menu_parent_' . $node->type, 'main-menu:0');
+    $menu_name = strtok(variable_get('menu_parent_' . $node->type, 'main-menu:0'), ':');
     $item = array();
     if (isset($node->nid)) {
+      $mlid = FALSE;
       // Give priority to the default menu
-      $mlid = db_query_range("SELECT mlid FROM {menu_links} WHERE link_path = :path AND menu_name = :menu_name AND module = 'menu' ORDER BY mlid ASC", 0, 1, array(
-        ':path' => 'node/' . $node->nid,
-        ':menu_name' => $menu_name,
-      ))->fetchField();
-      // Check all menus if a link does not exist in the default menu.
-      if (!$mlid) {
-        $mlid = db_query_range("SELECT mlid FROM {menu_links} WHERE link_path = :path AND module = 'menu' ORDER BY mlid ASC", 0, 1, array(
+      $type_menus = variable_get('menu_options_' . $node->type, array('main-menu' => 'main-menu'));
+      if (in_array($menu_name, $type_menus)) {
+        $mlid = db_query_range("SELECT mlid FROM {menu_links} WHERE link_path = :path AND menu_name = :menu_name AND module = 'menu' ORDER BY mlid ASC", 0, 1, array(
           ':path' => 'node/' . $node->nid,
+          ':menu_name' => $menu_name,
+        ))->fetchField();
+      }
+      // Check all allowed menus if a link does not exist in the default menu.
+      if (!$mlid && !empty($type_menus)) {
+        $mlid = db_query_range("SELECT mlid FROM {menu_links} WHERE link_path = :path AND module = 'menu' AND menu_name IN (:type_menus) ORDER BY mlid ASC", 0, 1, array(
+          ':path' => 'node/' . $node->nid,
+          ':type_menus' => array_values($type_menus),
         ))->fetchField();
       }
       if ($mlid) {
diff --git a/modules/menu/menu.test b/modules/menu/menu.test
index 6c11da6..b457177 100644
--- a/modules/menu/menu.test
+++ b/modules/menu/menu.test
@@ -379,7 +379,7 @@ class MenuTestCase extends DrupalWebTestCase {
   /**
    * Modify a menu link using the menu module UI.
    *
-   * @param array &$item Menu link passed by reference.
+   * @param array $item Menu link passed by reference.
    */
   function modifyMenuLink(&$item) {
     $item['link_title'] = $this->randomName(16);
@@ -664,5 +664,21 @@ class MenuNodeTestCase extends DrupalWebTestCase {
     // Assert that there is no link for the node.
     $this->drupalGet('');
     $this->assertNoLink($node_title);
+
+    // Add a menu link to the Management menu.
+    $item = array(
+      'link_path' => 'node/' . $node->nid,
+      'link_title' => $this->randomName(16),
+      'menu_name' => 'management',
+    );
+    menu_link_save($item);
+
+    // Assert that disabled Management menu is not shown on the node/$nid/edit page.
+    $this->drupalGet('node/' . $node->nid . '/edit');
+    $this->assertText('Provide a menu link', t('Link in not allowed menu not shown in node edit form'));
+    // Assert that the link is still in the management menu after save.
+    $this->drupalPost('node/' . $node->nid . '/edit', $edit, t('Save'));
+    $link = menu_link_load($item['mlid']);
+    $this->assertTrue($link, t('Link in not allowed menu still exists after saving node'));
   }
 }
diff --git a/modules/node/content_types.inc b/modules/node/content_types.inc
index ab4b2e6..d58bc31 100644
--- a/modules/node/content_types.inc
+++ b/modules/node/content_types.inc
@@ -69,13 +69,21 @@ function theme_node_admin_overview($variables) {
   $type = $variables['type'];
 
   $output = check_plain($name);
-  $output .= ' <small> (Machine name: ' . check_plain($type->type) . ')</small>';
+  $output .= ' <small>' . t('(Machine name: @type)', array('@type' => $type->type)) . '</small>';
   $output .= '<div class="description">' . filter_xss_admin($type->description) . '</div>';
   return $output;
 }
 
 /**
- * Generates the node type editing form.
+ * Form constructor for the node type editing form.
+ *
+ * @param $type
+ *   (optional) The machine name of the node type when editing an existing node
+ *   type.
+ *
+ * @see node_type_form_validate()
+ * @see node_type_form_submit()
+ * @ingroup forms
  */
 function node_type_form($form, &$form_state, $type = NULL) {
   if (!isset($type->type)) {
@@ -241,7 +249,9 @@ function _node_characters($length) {
 }
 
 /**
- * Validates the content type submission form generated by node_type_form().
+ * Form validation handler for node_type_form().
+ *
+ * @see node_type_form_submit()
  */
 function node_type_form_validate($form, &$form_state) {
   $type = new stdClass();
@@ -269,7 +279,9 @@ function node_type_form_validate($form, &$form_state) {
 }
 
 /**
- * Implements hook_form_submit().
+ * Form submission handler for node_type_form().
+ *
+ * @see node_type_form_validate()
  */
 function node_type_form_submit($form, &$form_state) {
   $op = isset($form_state['values']['op']) ? $form_state['values']['op'] : '';
diff --git a/modules/node/node.api.php b/modules/node/node.api.php
index 7353117..d7a98c6 100644
--- a/modules/node/node.api.php
+++ b/modules/node/node.api.php
@@ -37,6 +37,7 @@
  * - Creating a new node (calling node_save() on a new node):
  *   - field_attach_presave()
  *   - hook_node_presave() (all)
+ *   - hook_entity_presave() (all)
  *   - Node and revision records are written to the database
  *   - hook_insert() (node-type-specific)
  *   - field_attach_insert()
@@ -47,6 +48,7 @@
  * - Updating an existing node (calling node_save() on an existing node):
  *   - field_attach_presave()
  *   - hook_node_presave() (all)
+ *   - hook_entity_presave() (all)
  *   - Node and revision records are written to the database
  *   - hook_update() (node-type-specific)
  *   - field_attach_update()
@@ -69,6 +71,9 @@
  *   - hook_entity_prepare_view() (all)
  *   - field_attach_view()
  *   - hook_node_view() (all)
+ *   - hook_entity_view() (all)
+ *   - hook_node_view_alter() (all)
+ *   - hook_entity_view_alter() (all)
  * - Viewing multiple nodes (calling node_view_multiple() - note that the input
  *   to node_view_multiple() is a set of loaded nodes, so the Loading steps
  *   above are already done):
@@ -77,13 +82,16 @@
  *   - hook_view() (node-type-specific)
  *   - field_attach_view()
  *   - hook_node_view() (all)
+ *   - hook_entity_view() (all)
  *   - hook_node_view_alter() (all)
+ *   - hook_entity_view_alter() (all)
  * - Deleting a node (calling node_delete() or node_delete_multiple()):
  *   - Node is loaded (see Loading section above)
- *   - Node and revision information is deleted from database
  *   - hook_delete() (node-type-specific)
  *   - hook_node_delete() (all)
+ *   - hook_entity_delete() (all)
  *   - field_attach_delete()
+ *   - Node and revision information are deleted from database
  * - Deleting a node revision (calling node_revision_delete()):
  *   - Node is loaded (see Loading section above)
  *   - Revision information is deleted from database
@@ -314,7 +322,7 @@ function hook_node_access_records($node) {
  * @see hook_node_grants()
  * @see hook_node_grants_alter()
  *
- * @param &$grants
+ * @param $grants
  *   The $grants array returned by hook_node_access_records().
  * @param $node
  *   The node for which the grants were acquired.
@@ -359,7 +367,7 @@ function hook_node_access_records_alter(&$grants, $node) {
  * @see hook_node_access_records()
  * @see hook_node_access_records_alter()
  *
- * @param &$grants
+ * @param $grants
  *   The $grants array returned by hook_node_grants().
  * @param $account
  *   The user account requesting access to content.
@@ -453,9 +461,10 @@ function hook_node_operations() {
 /**
  * Respond to node deletion.
  *
- * This hook is invoked from node_delete_multiple() after the node has been
- * removed from the node table in the database, after the type-specific
- * hook_delete() has been invoked, and before field_attach_delete() is called.
+ * This hook is invoked from node_delete_multiple() after the type-specific
+ * hook_delete() has been invoked, but before hook_entity_delete and
+ * field_attach_delete() are called, and before the node is removed from the
+ * node table in the database.
  *
  * @param $node
  *   The node that is being deleted.
@@ -749,7 +758,7 @@ function hook_node_validate($node, $form, &$form_state) {
  * properties.
  *
  * @param $node
- *   The node being updated in response to a form submission.
+ *   The node object being updated in response to a form submission.
  * @param $form
  *   The form being used to edit the node.
  * @param $form_state
diff --git a/modules/node/node.info b/modules/node/node.info
index 7f2c7ff..85866e7 100644
--- a/modules/node/node.info
+++ b/modules/node/node.info
@@ -2,7 +2,7 @@ name = Node
 description = Allows content to be submitted to the site and displayed on pages.
 package = Core
 version = VERSION
-core = 8.x
+core = 7.x
 files[] = node.module
 files[] = node.test
 required = TRUE
diff --git a/modules/node/node.install b/modules/node/node.install
index 4632916..852c111 100644
--- a/modules/node/node.install
+++ b/modules/node/node.install
@@ -444,10 +444,421 @@ function node_install() {
 }
 
 /**
+ * Implements hook_update_dependencies().
+ */
+function node_update_dependencies() {
+  // Node update 7006 migrates node data to fields and therefore must run after
+  // the Field module has been enabled, but before upgrading field data.
+  $dependencies['node'][7006] = array(
+    'system' => 7049,
+    // It must also run after filter_update_7000() because it needs to query
+    // the list of existing text formats.
+    'filter' => 7000,
+  );
+  $dependencies['system'][7050] = array(
+    'node' => 7006,
+  );
+  return $dependencies;
+}
+
+/**
  * Utility function: fetch the node types directly from the database.
  *
- * @ingroup update-api-7.x-to-8.x
+ * This function is valid for a database schema version 7000.
+ *
+ * @ingroup update-api-6.x-to-7.x
+ */
+function _update_7000_node_get_types() {
+  $node_types = db_query('SELECT * FROM {node_type}')->fetchAllAssoc('type', PDO::FETCH_OBJ);
+
+  // Create default settings for orphan nodes.
+  $all_types = db_query('SELECT DISTINCT type FROM {node}')->fetchCol();
+  $extra_types = array_diff($all_types, array_keys($node_types));
+
+  foreach ($extra_types as $type) {
+    $type_object = new stdClass;
+    $type_object->type = $type;
+
+    // In Drupal 6, whether you have a body field or not is a flag in the node
+    // type table. If it's enabled, nodes may or may not have an empty string
+    // for the bodies. As we can't detect what this setting should be in
+    // Drupal 7 without access to the Drupal 6 node type settings, we assume
+    // the default, which is to enable the body field.
+    $type_object->has_body = 1;
+    $type_object->body_label = 'Body';
+    $node_types[$type_object->type] = $type_object;
+  }
+  return $node_types;
+}
+
+/**
+ * @addtogroup updates-6.x-to-7.x
+ * @{
+ */
+
+/**
+ * Upgrade the node type table and fix node type 'module' attribute to avoid name-space conflicts.
+ */
+function node_update_7000() {
+  // Rename the module column to base.
+  db_change_field('node_type', 'module', 'base', array('type' => 'varchar', 'length' => 255, 'not null' => TRUE));
+
+  db_add_field('node_type', 'module', array(
+    'description' => 'The module defining this node type.',
+    'type' => 'varchar',
+    'default' => '',
+    'length' => 255,
+    'not null' => TRUE,
+  ));
+
+  db_add_field('node_type', 'disabled', array(
+    'description' => 'A boolean indicating whether the node type is disabled.',
+    'type' => 'int',
+    'not null' => TRUE,
+    'default' => 0,
+    'size' => 'tiny'
+  ));
+
+  $modules = db_select('system', 's')
+    ->fields('s', array('name'))
+    ->condition('type', 'module');
+  db_update('node_type')
+    ->expression('module', 'base')
+    ->condition('base', $modules, 'IN')
+    ->execute();
+
+  db_update('node_type')
+    ->fields(array('base' => 'node_content'))
+    ->condition('base', 'node')
+    ->execute();
+}
+
+/**
+ * Rename {node_revisions} table to {node_revision}.
+ */
+function node_update_7001() {
+  db_rename_table('node_revisions', 'node_revision');
+}
+
+/**
+ * Extend the node_promote_status index to include all fields required for the node page query.
  */
-function _update_8000_node_get_types() {
-  return db_query('SELECT * FROM {node_type}')->fetchAllAssoc('type', PDO::FETCH_OBJ);
+function node_update_7002() {
+  db_drop_index('node', 'node_promote_status');
+  db_add_index('node', 'node_frontpage', array('promote', 'status', 'sticky', 'created'));
 }
+
+/**
+ * Remove the node_counter if the statistics module is uninstalled.
+ */
+function node_update_7003() {
+  if (drupal_get_installed_schema_version('statistics') == SCHEMA_UNINSTALLED) {
+    db_drop_table('node_counter');
+  }
+}
+
+/**
+ * Extend the existing default preview and teaser settings to all node types.
+ */
+function node_update_7004() {
+  // Get original settings and all types.
+  $original_length = variable_get('teaser_length', 600);
+  $original_preview = variable_get('node_preview', 0);
+
+  // Map old preview setting to new values order.
+  $original_preview ? $original_preview = 2 : $original_preview = 1;
+  node_type_cache_reset();
+
+  // Apply original settings to all types.
+  foreach (_update_7000_node_get_types() as $type => $type_object) {
+    variable_set('teaser_length_' . $type, $original_length);
+    variable_set('node_preview_' . $type, $original_preview);
+  }
+  // Delete old variable but leave 'teaser_length' for aggregator module upgrade.
+  variable_del('node_preview');
+}
+
+/**
+ * Add status/comment/promote and sticky columns to the {node_revision} table.
+ */
+function node_update_7005() {
+  foreach (array('status', 'comment', 'promote', 'sticky') as $column) {
+    db_add_field('node_revision', $column, array(
+      'type' => 'int',
+      'not null' => TRUE,
+      'default' => 0,
+    ));
+  }
+}
+
+/**
+ * Convert body and teaser from node properties to fields, and migrate status/comment/promote and sticky columns to the {node_revision} table.
+ */
+function node_update_7006(&$sandbox) {
+  $sandbox['#finished'] = 0;
+
+  // Get node type info for every invocation.
+  node_type_cache_reset();
+
+  if (!isset($sandbox['total'])) {
+    // Initial invocation.
+
+    // First, create the body field.
+    $body_field = array(
+      'field_name' => 'body',
+      'type' => 'text_with_summary',
+      'module' => 'text',
+      'cardinality' => 1,
+      'entity_types' => array('node'),
+      'translatable' => TRUE,
+    );
+    _update_7000_field_create_field($body_field);
+
+    $default_trim_length = variable_get('teaser_length', 600);
+
+    // Get node type info, specifically the body field settings.
+    $node_types = _update_7000_node_get_types();
+
+    // Add body field instances for existing node types.
+    foreach ($node_types as $node_type) {
+      if ($node_type->has_body) {
+        $trim_length = variable_get('teaser_length_' . $node_type->type, $default_trim_length);
+
+        $instance = array(
+          'entity_type' => 'node',
+          'bundle' => $node_type->type,
+          'label' => $node_type->body_label,
+          'widget' => array(
+            'type' => 'text_textarea_with_summary',
+            'settings' => array(
+              'rows' => 20,
+              'summary_rows' => 5,
+            ),
+            'weight' => -4,
+            'module' => 'text',
+          ),
+          'settings' => array('display_summary' => TRUE),
+          'display' => array(
+            'default' => array(
+              'label' => 'hidden',
+              'type' => 'text_default',
+            ),
+            'teaser' => array(
+              'label' => 'hidden',
+              'type' => 'text_summary_or_trimmed',
+              'trim_length' => $trim_length,
+            ),
+          ),
+        );
+        _update_7000_field_create_instance($body_field, $instance);
+        variable_del('teaser_length_' . $node_type->type);
+      }
+      // Leave 'teaser_length' variable for aggregator module upgrade.
+
+      $sandbox['node_types_info'][$node_type->type] = array(
+        'has_body' => $node_type->has_body,
+      );
+    }
+
+    // Used below when updating the stored text format of each node body.
+    $sandbox['existing_text_formats'] = db_query("SELECT format FROM {filter_format}")->fetchCol();
+
+    // Initialize state for future calls.
+    $sandbox['last'] = 0;
+    $sandbox['count'] = 0;
+
+    $query = db_select('node', 'n');
+    $query->join('node_revision', 'nr', 'n.nid = nr.nid');
+    $sandbox['total'] = $query->countQuery()->execute()->fetchField();
+
+    $sandbox['body_field_id'] = $body_field['id'];
+  }
+  else {
+    // Subsequent invocations.
+
+    $found = FALSE;
+    if ($sandbox['total']) {
+      // Operate on every revision of every node (whee!), in batches.
+      $batch_size = 200;
+      $query = db_select('node_revision', 'nr');
+      $query->innerJoin('node', 'n', 'n.nid = nr.nid');
+      $query
+        ->fields('nr', array('nid', 'vid', 'body', 'teaser', 'format'))
+        ->fields('n', array('type', 'status', 'comment', 'promote', 'sticky', 'language'))
+        ->condition('nr.vid', $sandbox['last'], '>')
+        ->orderBy('nr.vid', 'ASC')
+        ->range(0, $batch_size);
+      $revisions = $query->execute();
+
+      // Load each revision of each node, set up 'body'
+      // appropriately, and save the node's field data.  Note that
+      // node_load() will not return the body or teaser values from
+      // {node_revision} because those columns have been removed from the
+      // schema structure in memory (but not yet from the database),
+      // so we get the values from the explicit query of the table
+      // instead.
+      foreach ($revisions as $revision) {
+        $found = TRUE;
+
+        if ($sandbox['node_types_info'][$revision->type]['has_body']) {
+          $node = (object) array(
+            'nid' => $revision->nid,
+            'vid' => $revision->vid,
+            'type' => $revision->type,
+          );
+          // After node_update_7009() we will always have LANGUAGE_NONE as
+          // language neutral language code, but here we still have empty
+          // strings.
+          $langcode = empty($revision->language) ? LANGUAGE_NONE : $revision->language;
+          if (!empty($revision->teaser) && $revision->teaser != text_summary($revision->body)) {
+            $node->body[$langcode][0]['summary'] = $revision->teaser;
+          }
+          // Do this after text_summary() above.
+          $break = '<!--break-->';
+          if (substr($revision->body, 0, strlen($break)) == $break) {
+            $revision->body = substr($revision->body, strlen($break));
+          }
+          $node->body[$langcode][0]['value'] = $revision->body;
+          // Update the revision's text format for the changes to the Drupal 7
+          // filter system. This uses the same kind of logic that occurs, for
+          // example, in user_update_7010(), but we do this here rather than
+          // via a separate set of database queries, since we are already
+          // migrating the data.
+          if (empty($revision->body) && empty($revision->format)) {
+            $node->body[$langcode][0]['format'] = NULL;
+          }
+          elseif (!in_array($revision->format, $sandbox['existing_text_formats'])) {
+            $node->body[$langcode][0]['format'] = variable_get('filter_default_format', 1);
+          }
+          else {
+            $node->body[$langcode][0]['format'] = $revision->format;
+          }
+          // This is a core update and no contrib modules are enabled yet, so
+          // we can assume default field storage for a faster update.
+          _update_7000_field_sql_storage_write('node', $node->type, $node->nid, $node->vid, 'body', $node->body);
+        }
+
+        // Migrate the status columns to the {node_revision} table.
+        db_update('node_revision')
+          ->fields(array(
+            'status' => $revision->status,
+            'comment' => $revision->comment,
+            'promote' => $revision->promote,
+            'sticky' => $revision->sticky,
+          ))
+          ->condition('vid', $revision->vid)
+          ->execute();
+
+        $sandbox['last'] = $revision->vid;
+        $sandbox['count'] += 1;
+      }
+
+      $sandbox['#finished'] = min(0.99, $sandbox['count'] / $sandbox['total']);
+    }
+
+    if (!$found) {
+      // All nodes are processed.
+
+      // Remove the now-obsolete body info from node_revision.
+      db_drop_field('node_revision', 'body');
+      db_drop_field('node_revision', 'teaser');
+      db_drop_field('node_revision', 'format');
+
+      // Remove node_type properties related to the former 'body'.
+      db_drop_field('node_type', 'has_body');
+      db_drop_field('node_type', 'body_label');
+
+      // We're done.
+      $sandbox['#finished'] = 1;
+    }
+  }
+}
+
+/**
+ * Remove column min_word_count.
+ */
+function node_update_7007() {
+  db_drop_field('node_type', 'min_word_count');
+}
+
+/**
+ * Split the 'administer nodes' permission from 'access content overview'.
+ */
+function node_update_7008() {
+  $roles = user_roles(FALSE, 'administer nodes');
+  foreach ($roles as $rid => $role) {
+    _update_7000_user_role_grant_permissions($rid, array('access content overview'), 'node');
+  }
+}
+
+/**
+ * Convert node languages from the empty string to LANGUAGE_NONE.
+ */
+function node_update_7009() {
+  db_update('node')
+    ->fields(array('language' => LANGUAGE_NONE))
+    ->condition('language', '')
+    ->execute();
+}
+
+/**
+ * Add the {block_node_type} table.
+ */
+function node_update_7010() {
+  $schema['block_node_type'] = array(
+    'description' => 'Sets up display criteria for blocks based on content types',
+    'fields' => array(
+      'module' => array(
+        'type' => 'varchar',
+        'length' => 64,
+        'not null' => TRUE,
+        'description' => "The block's origin module, from {block}.module.",
+      ),
+      'delta' => array(
+        'type' => 'varchar',
+        'length' => 32,
+        'not null' => TRUE,
+        'description' => "The block's unique delta within module, from {block}.delta.",
+      ),
+      'type' => array(
+        'type' => 'varchar',
+        'length' => 32,
+        'not null' => TRUE,
+        'description' => "The machine-readable name of this type from {node_type}.type.",
+      ),
+    ),
+    'primary key' => array('module', 'delta', 'type'),
+    'indexes' => array(
+      'type' => array('type'),
+    ),
+  );
+
+  db_create_table('block_node_type', $schema['block_node_type']);
+}
+
+/**
+ * Update the database from Drupal 6 to match the schema.
+ */
+function node_update_7011() {
+  // Drop node moderation field.
+  db_drop_field('node', 'moderate');
+  db_drop_index('node', 'node_moderate');
+
+  // Change {node_revision}.status field to default to 1.
+  db_change_field('node_revision', 'status', 'status', array(
+    'type' => 'int',
+    'not null' => TRUE,
+    'default' => 1,
+  ));
+
+  // Change {node_type}.module field default.
+  db_change_field('node_type', 'module', 'module', array(
+    'type' => 'varchar',
+    'length' => 255,
+    'not null' => TRUE,
+  ));
+}
+
+/**
+ * @} End of "addtogroup updates-6.x-to-7.x"
+ */
diff --git a/modules/node/node.module b/modules/node/node.module
index a59a5b1..2dd1926 100644
--- a/modules/node/node.module
+++ b/modules/node/node.module
@@ -489,7 +489,6 @@ function node_type_load($name) {
  *   Status flag indicating outcome of the operation.
  */
 function node_type_save($info) {
-  $is_existing = FALSE;
   $existing_type = !empty($info->old_type) ? $info->old_type : $info->type;
   $is_existing = (bool) db_query_range('SELECT 1 FROM {node_type} WHERE type = :type', 0, 1, array(':type' => $existing_type))->fetchField();
   $type = node_type_set_defaults($info);
@@ -569,7 +568,7 @@ function node_add_body_field($type, $label = 'Body') {
       'entity_type' => 'node',
       'bundle' => $type->type,
       'label' => $label,
-      'widget_type' => 'text_textarea_with_summary',
+      'widget' => array('type' => 'text_textarea_with_summary'),
       'settings' => array('display_summary' => TRUE),
       'display' => array(
         'default' => array(
@@ -1351,15 +1350,15 @@ function node_build_content($node, $view_mode = 'full', $langcode = NULL) {
   // The 'view' hook can be implemented to overwrite the default function
   // to display nodes.
   if (node_hook($node, 'view')) {
-    $node = node_invoke($node, 'view', $view_mode);
+    $node = node_invoke($node, 'view', $view_mode, $langcode);
   }
 
   // Build fields content.
   // In case of a multiple view, node_view_multiple() already ran the
   // 'prepare_view' step. An internal flag prevents the operation from running
   // twice.
-  field_attach_prepare_view('node', array($node->nid => $node), $view_mode);
-  entity_prepare_view('node', array($node->nid => $node));
+  field_attach_prepare_view('node', array($node->nid => $node), $view_mode, $langcode);
+  entity_prepare_view('node', array($node->nid => $node), $langcode);
   $node->content += field_attach_view('node', $node, $view_mode, $langcode);
 
   // Always display a read more link on teasers because we have no way
@@ -1452,14 +1451,11 @@ function template_preprocess_node(&$variables) {
   $variables['title']     = check_plain($node->title);
   $variables['page']      = $variables['view_mode'] == 'full' && node_is_page($node);
 
-  if (!empty($node->in_preview)) {
-    unset($node->content['links']);
-  }
-
   // Flatten the node object's member fields.
   $variables = array_merge((array) $node, $variables);
 
   // Helpful $content variable for templates.
+  $variables['content'] = array();
   foreach (element_children($variables['elements']) as $key) {
     $variables['content'][$key] = $variables['elements'][$key];
   }
@@ -2518,8 +2514,8 @@ function node_feed($nids = FALSE, $channel = array()) {
  *   An array in the format expected by drupal_render().
  */
 function node_view_multiple($nodes, $view_mode = 'teaser', $weight = 0, $langcode = NULL) {
-  field_attach_prepare_view('node', $nodes, $view_mode);
-  entity_prepare_view('node', $nodes);
+  field_attach_prepare_view('node', $nodes, $view_mode, $langcode);
+  entity_prepare_view('node', $nodes, $langcode);
   $build = array();
   foreach ($nodes as $node) {
     $build['nodes'][$node->nid] = node_view($node, $view_mode, $langcode);
diff --git a/modules/node/tests/node_access_test.info b/modules/node/tests/node_access_test.info
index 4de1c2d..dc5e530 100644
--- a/modules/node/tests/node_access_test.info
+++ b/modules/node/tests/node_access_test.info
@@ -2,5 +2,5 @@ name = "Node module access tests"
 description = "Support module for node permission testing."
 package = Testing
 version = VERSION
-core = 8.x
+core = 7.x
 hidden = TRUE
diff --git a/modules/node/tests/node_test.info b/modules/node/tests/node_test.info
index 86eed52..fa6c093 100644
--- a/modules/node/tests/node_test.info
+++ b/modules/node/tests/node_test.info
@@ -2,5 +2,5 @@ name = "Node module tests"
 description = "Support module for node related testing."
 package = Testing
 version = VERSION
-core = 8.x
+core = 7.x
 hidden = TRUE
diff --git a/modules/node/tests/node_test_exception.info b/modules/node/tests/node_test_exception.info
index 3289912..1a339e0 100644
--- a/modules/node/tests/node_test_exception.info
+++ b/modules/node/tests/node_test_exception.info
@@ -2,5 +2,5 @@ name = "Node module exception tests"
 description = "Support module for node related exception testing."
 package = Testing
 version = VERSION
-core = 8.x
+core = 7.x
 hidden = TRUE
diff --git a/modules/openid/openid.inc b/modules/openid/openid.inc
index dfa71a9..6945f34 100644
--- a/modules/openid/openid.inc
+++ b/modules/openid/openid.inc
@@ -188,32 +188,33 @@ function _openid_select_service(array $services) {
   // Extensible Resource Identifier (XRI) Resolution Version 2.0, section 4.3.3:
   // Find the service with the highest priority (lowest integer value). If there
   // is a tie, select a random one, not just the first in the XML document.
-  $selected_service = NULL;
   shuffle($services);
+  $selected_service = NULL;
+  $selected_type_priority = FALSE;
 
   // Search for an OP Identifier Element.
   foreach ($services as $service) {
     if (!empty($service['uri'])) {
+      $type_priority = FALSE;
       if (in_array('http://specs.openid.net/auth/2.0/server', $service['types'])) {
         $service['version'] = 2;
+        $type_priority = 1;
+      }
+      elseif (in_array('http://specs.openid.net/auth/2.0/signon', $service['types'])) {
+        $service['version'] = 2;
+        $type_priority = 2;
       }
       elseif (in_array(OPENID_NS_1_0, $service['types']) || in_array(OPENID_NS_1_1, $service['types'])) {
         $service['version'] = 1;
+        $type_priority = 3;
       }
-      if (isset($service['version']) && (!$selected_service || $service['priority'] < $selected_service['priority'])) {
-        $selected_service = $service;
-      }
-    }
-  }
 
-  if (!$selected_service) {
-    // Search for Claimed Identifier Element.
-    foreach ($services as $service) {
-      if (!empty($service['uri']) && in_array('http://specs.openid.net/auth/2.0/signon', $service['types'])) {
-        $service['version'] = 2;
-        if (!$selected_service || $service['priority'] < $selected_service['priority']) {
-          $selected_service = $service;
-        }
+      if ($type_priority
+          && (!$selected_service
+              || $type_priority < $selected_type_priority
+              || ($type_priority == $selected_type_priority && $service['priority'] < $selected_service['priority']))) {
+        $selected_service = $service;
+        $selected_type_priority = $type_priority;
       }
     }
   }
diff --git a/modules/openid/openid.info b/modules/openid/openid.info
index 9ecdba0..6a1843c 100644
--- a/modules/openid/openid.info
+++ b/modules/openid/openid.info
@@ -2,5 +2,5 @@ name = OpenID
 description = "Allows users to log into your site using OpenID."
 version = VERSION
 package = Core
-core = 8.x
+core = 7.x
 files[] = openid.test
diff --git a/modules/openid/tests/openid_test.info b/modules/openid/tests/openid_test.info
index 94d125d..755a5ee 100644
--- a/modules/openid/tests/openid_test.info
+++ b/modules/openid/tests/openid_test.info
@@ -2,6 +2,6 @@ name = OpenID dummy provider
 description = "OpenID provider used for testing."
 package = Testing
 version = VERSION
-core = 8.x
+core = 7.x
 dependencies[] = openid
 hidden = TRUE
diff --git a/modules/openid/tests/openid_test.module b/modules/openid/tests/openid_test.module
index d2afa9f..bad1184 100644
--- a/modules/openid/tests/openid_test.module
+++ b/modules/openid/tests/openid_test.module
@@ -105,6 +105,10 @@ function openid_test_yadis_xrds() {
           <Service>
             <Type>http://example.com/this-is-ignored</Type>
           </Service>
+          <Service priority="5">
+            <Type>http://openid.net/signon/1.0</Type>
+            <URI>http://example.com/this-is-only-openid-1.0</URI>
+          </Service>
           <Service priority="10">
             <Type>http://specs.openid.net/auth/2.0/signon</Type>
             <Type>http://openid.net/srv/ax/1.0</Type>
@@ -133,7 +137,7 @@ function openid_test_yadis_xrds() {
     }
     elseif (arg(3) == 'delegate') {
       print '
-          <Service priority="5">
+          <Service priority="0">
             <Type>http://specs.openid.net/auth/2.0/signon</Type>
             <Type>http://openid.net/srv/ax/1.0</Type>
             <URI>' . url('openid-test/endpoint', array('absolute' => TRUE)) . '</URI>
diff --git a/modules/overlay/overlay-parent.js b/modules/overlay/overlay-parent.js
index 67c97b8..8f11df6 100644
--- a/modules/overlay/overlay-parent.js
+++ b/modules/overlay/overlay-parent.js
@@ -350,8 +350,9 @@ Drupal.overlay.isAdminLink = function (url) {
 
   // Turn the list of administrative paths into a regular expression.
   if (!this.adminPathRegExp) {
-    var adminPaths = '^(' + Drupal.settings.overlay.paths.admin.replace(/\s+/g, ')$|^(') + ')$';
-    var nonAdminPaths = '^(' + Drupal.settings.overlay.paths.non_admin.replace(/\s+/g, ')$|^(') + ')$';
+    var regExpPrefix = '^' + Drupal.settings.pathPrefix + '(';
+    var adminPaths = regExpPrefix + Drupal.settings.overlay.paths.admin.replace(/\s+/g, ')$|' + regExpPrefix) + ')$';
+    var nonAdminPaths = regExpPrefix + Drupal.settings.overlay.paths.non_admin.replace(/\s+/g, ')$|'+ regExpPrefix) + ')$';
     adminPaths = adminPaths.replace(/\*/g, '.*');
     nonAdminPaths = nonAdminPaths.replace(/\*/g, '.*');
     this.adminPathRegExp = new RegExp(adminPaths);
diff --git a/modules/overlay/overlay.info b/modules/overlay/overlay.info
index a782792..5fb354d 100644
--- a/modules/overlay/overlay.info
+++ b/modules/overlay/overlay.info
@@ -2,4 +2,4 @@ name = Overlay
 description = Displays the Drupal administration interface in an overlay.
 package = Core
 version = VERSION
-core = 8.x
+core = 7.x
diff --git a/modules/path/path.info b/modules/path/path.info
index 55b6f9c..8b6b67c 100644
--- a/modules/path/path.info
+++ b/modules/path/path.info
@@ -2,6 +2,6 @@ name = Path
 description = Allows users to rename URLs.
 package = Core
 version = VERSION
-core = 8.x
+core = 7.x
 files[] = path.test
 configure = admin/config/search/path
diff --git a/modules/php/php.info b/modules/php/php.info
index 669a138..cf86362 100644
--- a/modules/php/php.info
+++ b/modules/php/php.info
@@ -2,5 +2,5 @@ name = PHP filter
 description = Allows embedded PHP code/snippets to be evaluated.
 package = Core
 version = VERSION
-core = 8.x
+core = 7.x
 files[] = php.test
diff --git a/modules/poll/poll.info b/modules/poll/poll.info
index de6ac25..9297727 100644
--- a/modules/poll/poll.info
+++ b/modules/poll/poll.info
@@ -2,6 +2,6 @@ name = Poll
 description = Allows your site to capture votes on different topics in the form of multiple choice questions.
 package = Core
 version = VERSION
-core = 8.x
+core = 7.x
 files[] = poll.test
 stylesheets[all][] = poll.css
diff --git a/modules/poll/poll.install b/modules/poll/poll.install
index c848445..8c73cf4 100644
--- a/modules/poll/poll.install
+++ b/modules/poll/poll.install
@@ -147,3 +147,60 @@ function poll_schema() {
 
   return $schema;
 }
+
+/**
+ * Use the poll_choice primary key to record votes in poll_votes rather than
+ * the choice order. Rename chorder to weight.
+ *
+ * Rename {poll_choices} table to {poll_choice} and {poll_votes} to {poll_vote}.
+ */
+function poll_update_7001() {
+  // Add chid column and convert existing votes.
+  db_add_field('poll_votes', 'chid', array('type' => 'int', 'unsigned' => TRUE, 'not null' => TRUE, 'default' => 0));
+  db_add_index('poll_votes', 'chid', array('chid'));
+  db_update('poll_votes')
+    ->expression('chid', Database::getConnection()->prefixTables('COALESCE((SELECT chid FROM {poll_choices} c WHERE {poll_votes}.chorder = c.chorder AND {poll_votes}.nid = c.nid), 0)'))
+    ->execute();
+  // Delete invalid votes.
+  db_delete('poll_votes')->condition('chid', 0)->execute();
+  // Remove old chorder column.
+  db_drop_field('poll_votes', 'chorder');
+
+  // Change the chorder column to weight in poll_choices.
+  db_change_field('poll_choices', 'chorder', 'weight', array('type' => 'int', 'not null' => TRUE, 'default' => 0, 'size' => 'tiny'));
+
+  db_rename_table('poll_votes', 'poll_vote');
+  db_rename_table('poll_choices', 'poll_choice');
+}
+
+/**
+ * Add timestamp field to {poll_vote}.
+ */
+function poll_update_7002() {
+  $field = array(
+    'type' => 'int',
+    'not null' => TRUE,
+    'default' => 0,
+  );
+  db_add_field('poll_vote', 'timestamp', $field);
+}
+
+/**
+ * Change the weight column to normal int.
+ */
+function poll_update_7003() {
+  db_change_field('poll_choice', 'weight', 'weight', array(
+    'type' => 'int',
+    'not null' => TRUE,
+    'default' => 0,
+    'description' => 'The sort order of this choice among all choices for the same node.',
+  ));
+}
+
+/**
+ * Update the database to match the schema.
+ */
+function poll_update_7004() {
+  // Remove field default.
+  db_change_field('poll_vote', 'chid', 'chid', array('type' => 'int', 'unsigned' => TRUE, 'not null' => TRUE));
+}
diff --git a/modules/profile/profile.info b/modules/profile/profile.info
index f4c8699..e45f4c5 100644
--- a/modules/profile/profile.info
+++ b/modules/profile/profile.info
@@ -2,7 +2,7 @@ name = Profile
 description = Supports configurable user profiles.
 package = Core
 version = VERSION
-core = 8.x
+core = 7.x
 files[] = profile.test
 configure = admin/config/people/profile
 ; The Profile module is deprecated, and included in Drupal 7 for legacy
diff --git a/modules/profile/profile.install b/modules/profile/profile.install
index c5747cf..5e4a17c 100644
--- a/modules/profile/profile.install
+++ b/modules/profile/profile.install
@@ -150,3 +150,23 @@ function profile_schema() {
 
   return $schema;
 }
+
+/**
+ * Rename {profile_fields} table to {profile_field} and {profile_values} to {profile_value}.
+ */
+function profile_update_7001() {
+  db_rename_table('profile_fields', 'profile_field');
+  db_rename_table('profile_values', 'profile_value');
+}
+
+/**
+ * Change the weight column to normal int.
+ */
+function profile_update_7002() {
+  db_change_field('profile_field', 'weight', 'weight', array(
+    'type' => 'int',
+    'not null' => TRUE,
+    'default' => 0,
+    'description' => 'Weight of field in relation to other profile fields.',
+  ));
+}
diff --git a/modules/rdf/rdf.info b/modules/rdf/rdf.info
index a27d680..dd5c63b 100644
--- a/modules/rdf/rdf.info
+++ b/modules/rdf/rdf.info
@@ -2,5 +2,5 @@ name = RDF
 description = Enriches your content with metadata to let other applications (e.g. search engines, aggregators) better understand its relationships and attributes.
 package = Core
 version = VERSION
-core = 8.x
+core = 7.x
 files[] = rdf.test
diff --git a/modules/rdf/tests/rdf_test.info b/modules/rdf/tests/rdf_test.info
index b168815..b64e9a5 100644
--- a/modules/rdf/tests/rdf_test.info
+++ b/modules/rdf/tests/rdf_test.info
@@ -2,5 +2,5 @@ name = "RDF module tests"
 description = "Support module for RDF module testing."
 package = Testing
 version = VERSION
-core = 8.x
+core = 7.x
 hidden = TRUE
diff --git a/modules/search/search.api.php b/modules/search/search.api.php
index a703c88..557a56e 100644
--- a/modules/search/search.api.php
+++ b/modules/search/search.api.php
@@ -107,10 +107,6 @@ function hook_search_reset() {
 /**
  * Report the status of indexing.
  *
- * The core search module only invokes this hook on active modules.
- * Implementing modules do not need to check whether they are active
- * calculating their return values.
- *
  * @return
  *  An associative array with the key-value pairs:
  *  - 'remaining': The number of items left to index.
diff --git a/modules/search/search.info b/modules/search/search.info
index d8d7baa..77cab05 100644
--- a/modules/search/search.info
+++ b/modules/search/search.info
@@ -2,7 +2,7 @@ name = Search
 description = Enables site-wide keyword searching.
 package = Core
 version = VERSION
-core = 8.x
+core = 7.x
 files[] = search.extender.inc
 files[] = search.test
 configure = admin/config/search/settings
diff --git a/modules/search/search.install b/modules/search/search.install
index c450f05..f0113b3 100644
--- a/modules/search/search.install
+++ b/modules/search/search.install
@@ -153,3 +153,30 @@ function search_schema() {
 
   return $schema;
 }
+
+/**
+ * Replace unique keys in 'search_dataset' and 'search_index' by primary keys.
+ */
+function search_update_7000() {
+  db_drop_unique_key('search_dataset', 'sid_type');
+  $dataset_type_spec = array(
+    'type' => 'varchar',
+    'length' => 16,
+    'not null' => TRUE,
+    'description' => 'Type of item, e.g. node.',
+  );
+  db_change_field('search_dataset', 'type', 'type', $dataset_type_spec);
+  db_add_primary_key('search_dataset', array('sid', 'type'));
+
+  db_drop_index('search_index', 'word');
+  db_drop_unique_key('search_index', 'word_sid_type');
+  $index_type_spec = array(
+    'type' => 'varchar',
+    'length' => 16,
+    'not null' => TRUE,
+    'description' => 'The {search_dataset}.type of the searchable item to which the word belongs.',
+  );
+  db_change_field('search_index', 'type', 'type', $index_type_spec);
+  db_add_primary_key('search_index', array('word', 'sid', 'type'));
+}
+
diff --git a/modules/search/tests/search_embedded_form.info b/modules/search/tests/search_embedded_form.info
index 2dad9ee..02e4c1f 100644
--- a/modules/search/tests/search_embedded_form.info
+++ b/modules/search/tests/search_embedded_form.info
@@ -2,5 +2,5 @@ name = "Search embedded form"
 description = "Support module for search module testing of embedded forms."
 package = Testing
 version = VERSION
-core = 8.x
+core = 7.x
 hidden = TRUE
diff --git a/modules/search/tests/search_extra_type.info b/modules/search/tests/search_extra_type.info
index 23f4dea..5c3293c 100644
--- a/modules/search/tests/search_extra_type.info
+++ b/modules/search/tests/search_extra_type.info
@@ -2,5 +2,5 @@ name = "Test search type"
 description = "Support module for search module testing."
 package = Testing
 version = VERSION
-core = 8.x
+core = 7.x
 hidden = TRUE
diff --git a/modules/shortcut/shortcut.info b/modules/shortcut/shortcut.info
index 0030605..8132b3c 100644
--- a/modules/shortcut/shortcut.info
+++ b/modules/shortcut/shortcut.info
@@ -2,6 +2,6 @@ name = Shortcut
 description = Allows users to manage customizable lists of shortcut links.
 package = Core
 version = VERSION
-core = 8.x
+core = 7.x
 files[] = shortcut.test
 configure = admin/config/user-interface/shortcut
diff --git a/modules/simpletest/simpletest.info b/modules/simpletest/simpletest.info
index 54b020d..f51804c 100644
--- a/modules/simpletest/simpletest.info
+++ b/modules/simpletest/simpletest.info
@@ -2,7 +2,7 @@ name = Testing
 description = Provides a framework for unit and functional testing.
 package = Core
 version = VERSION
-core = 8.x
+core = 7.x
 files[] = simpletest.test
 files[] = drupal_web_test_case.php
 configure = admin/config/development/testing/settings
@@ -37,3 +37,13 @@ files[] = tests/theme.test
 files[] = tests/unicode.test
 files[] = tests/update.test
 files[] = tests/xmlrpc.test
+files[] = tests/upgrade/upgrade.test
+files[] = tests/upgrade/upgrade.comment.test
+files[] = tests/upgrade/upgrade.filter.test
+files[] = tests/upgrade/upgrade.forum.test
+files[] = tests/upgrade/upgrade.locale.test
+files[] = tests/upgrade/upgrade.menu.test
+files[] = tests/upgrade/upgrade.node.test
+files[] = tests/upgrade/upgrade.taxonomy.test
+files[] = tests/upgrade/upgrade.upload.test
+files[] = tests/upgrade/upgrade.user.test
diff --git a/modules/simpletest/simpletest.pages.inc b/modules/simpletest/simpletest.pages.inc
index 732d641..31d0b2c 100644
--- a/modules/simpletest/simpletest.pages.inc
+++ b/modules/simpletest/simpletest.pages.inc
@@ -82,8 +82,8 @@ function theme_simpletest_test_table($variables) {
   // Define the images used to expand/collapse the test groups.
   $js = array(
     'images' => array(
-      theme('image', array('path' => 'misc/menu-collapsed.png', 'alt' => t('Expand'), 'title' => t('Expand'))) . ' <a href="#" class="simpletest-collapse">(' . t('Expand') . ')</a>',
-      theme('image', array('path' => 'misc/menu-expanded.png', 'alt' => t('Collapse'), 'title' => t('Collapse'))) . ' <a href="#" class="simpletest-collapse">(' . t('Collapse') . ')</a>',
+      theme('image', array('path' => 'misc/menu-collapsed.png', 'width' => 7, 'height' => 7, 'alt' => t('Expand'), 'title' => t('Expand'))) . ' <a href="#" class="simpletest-collapse">(' . t('Expand') . ')</a>',
+      theme('image', array('path' => 'misc/menu-expanded.png', 'width' => 7, 'height' => 7, 'alt' => t('Collapse'), 'title' => t('Collapse'))) . ' <a href="#" class="simpletest-collapse">(' . t('Collapse') . ')</a>',
     ),
   );
 
@@ -426,10 +426,10 @@ function simpletest_result_status_image($status) {
 
   if (!isset($map)) {
     $map = array(
-      'pass' => theme('image', array('path' => 'misc/watchdog-ok.png', 'alt' => t('Pass'))),
-      'fail' => theme('image', array('path' => 'misc/watchdog-error.png', 'alt' => t('Fail'))),
-      'exception' => theme('image', array('path' => 'misc/watchdog-warning.png', 'alt' => t('Exception'))),
-      'debug' => theme('image', array('path' => 'misc/watchdog-warning.png', 'alt' => t('Debug'))),
+      'pass' => theme('image', array('path' => 'misc/watchdog-ok.png', 'width' => 18, 'height' => 18, 'alt' => t('Pass'))),
+      'fail' => theme('image', array('path' => 'misc/watchdog-error.png', 'width' => 18, 'height' => 18, 'alt' => t('Fail'))),
+      'exception' => theme('image', array('path' => 'misc/watchdog-warning.png', 'width' => 18, 'height' => 18, 'alt' => t('Exception'))),
+      'debug' => theme('image', array('path' => 'misc/watchdog-warning.png', 'width' => 18, 'height' => 18, 'alt' => t('Debug'))),
     );
   }
   if (isset($map[$status])) {
diff --git a/modules/simpletest/tests/actions_loop_test.info b/modules/simpletest/tests/actions_loop_test.info
index 3507511..4350d3d 100644
--- a/modules/simpletest/tests/actions_loop_test.info
+++ b/modules/simpletest/tests/actions_loop_test.info
@@ -2,5 +2,5 @@ name = Actions loop test
 description = Support module for action loop testing.
 package = Testing
 version = VERSION
-core = 8.x
+core = 7.x
 hidden = TRUE
diff --git a/modules/simpletest/tests/ajax_forms_test.info b/modules/simpletest/tests/ajax_forms_test.info
index 987ee25..c1d7dd4 100644
--- a/modules/simpletest/tests/ajax_forms_test.info
+++ b/modules/simpletest/tests/ajax_forms_test.info
@@ -1,6 +1,6 @@
 name = "AJAX form test mock module"
 description = "Test for AJAX form calls."
-core = 8.x
+core = 7.x
 package = Testing
 version = VERSION
 hidden = TRUE
diff --git a/modules/simpletest/tests/ajax_test.info b/modules/simpletest/tests/ajax_test.info
index dda7f55..1f56482 100644
--- a/modules/simpletest/tests/ajax_test.info
+++ b/modules/simpletest/tests/ajax_test.info
@@ -2,5 +2,5 @@ name = AJAX Test
 description = Support module for AJAX framework tests.
 package = Testing
 version = VERSION
-core = 8.x
+core = 7.x
 hidden = TRUE
diff --git a/modules/simpletest/tests/batch_test.info b/modules/simpletest/tests/batch_test.info
index cf2cc30..f354097 100644
--- a/modules/simpletest/tests/batch_test.info
+++ b/modules/simpletest/tests/batch_test.info
@@ -2,5 +2,5 @@ name = "Batch API test"
 description = "Support module for Batch API tests."
 package = Testing
 version = VERSION
-core = 8.x
+core = 7.x
 hidden = TRUE
diff --git a/modules/simpletest/tests/common.test b/modules/simpletest/tests/common.test
index 4664f04..d618ddb 100644
--- a/modules/simpletest/tests/common.test
+++ b/modules/simpletest/tests/common.test
@@ -1170,6 +1170,8 @@ class JavaScriptTestCase extends DrupalWebTestCase {
     $this->assertTrue(array_key_exists('misc/drupal.js', $javascript), t('Drupal.js is added when file is added.'));
     $this->assertTrue(array_key_exists('misc/collapse.js', $javascript), t('JavaScript files are correctly added.'));
     $this->assertEqual(base_path(), $javascript['settings']['data'][0]['basePath'], t('Base path JavaScript setting is correctly set.'));
+    url('', array('prefix' => &$prefix));
+    $this->assertEqual(empty($prefix) ? '' : $prefix, $javascript['settings']['data'][1]['pathPrefix'], t('Path prefix JavaScript setting is correctly set.'));
   }
 
   /**
@@ -1177,8 +1179,8 @@ class JavaScriptTestCase extends DrupalWebTestCase {
    */
   function testAddSetting() {
     $javascript = drupal_add_js(array('drupal' => 'rocks', 'dries' => 280342800), 'setting');
-    $this->assertEqual(280342800, $javascript['settings']['data'][1]['dries'], t('JavaScript setting is set correctly.'));
-    $this->assertEqual('rocks', $javascript['settings']['data'][1]['drupal'], t('The other JavaScript setting is set correctly.'));
+    $this->assertEqual(280342800, $javascript['settings']['data'][2]['dries'], t('JavaScript setting is set correctly.'));
+    $this->assertEqual('rocks', $javascript['settings']['data'][2]['drupal'], t('The other JavaScript setting is set correctly.'));
   }
 
   /**
@@ -1208,6 +1210,7 @@ class JavaScriptTestCase extends DrupalWebTestCase {
     $javascript = drupal_get_js('header');
     $this->assertTrue(strpos($javascript, 'basePath') > 0, t('Rendered JavaScript header returns basePath setting.'));
     $this->assertTrue(strpos($javascript, 'misc/jquery.js') > 0, t('Rendered JavaScript header includes jQuery.'));
+    $this->assertTrue(strpos($javascript, 'pathPrefix') > 0, t('Rendered JavaScript header returns pathPrefix setting.'));
 
     // Test whether drupal_add_js can be used to override a previous setting.
     $this->assertTrue(strpos($javascript, 'commonTestShouldAppear') > 0, t('Rendered JavaScript header returns custom setting.'));
diff --git a/modules/simpletest/tests/common_test.info b/modules/simpletest/tests/common_test.info
index 9e6d24f..aced983 100644
--- a/modules/simpletest/tests/common_test.info
+++ b/modules/simpletest/tests/common_test.info
@@ -2,7 +2,7 @@ name = "Common Test"
 description = "Support module for Common tests."
 package = Testing
 version = VERSION
-core = 8.x
+core = 7.x
 stylesheets[all][] = common_test.css
 stylesheets[print][] = common_test.print.css
 hidden = TRUE
diff --git a/modules/simpletest/tests/database_test.info b/modules/simpletest/tests/database_test.info
index 7f38661..7141235 100644
--- a/modules/simpletest/tests/database_test.info
+++ b/modules/simpletest/tests/database_test.info
@@ -1,6 +1,6 @@
 name = "Database Test"
 description = "Support module for Database layer tests."
-core = 8.x
+core = 7.x
 package = Testing
 version = VERSION
 hidden = TRUE
diff --git a/modules/simpletest/tests/database_test.test b/modules/simpletest/tests/database_test.test
index 2a086ce..143640d 100644
--- a/modules/simpletest/tests/database_test.test
+++ b/modules/simpletest/tests/database_test.test
@@ -719,6 +719,21 @@ class DatabaseUpdateTestCase extends DatabaseTestCase {
   }
 
   /**
+   * Confirm updating to NULL.
+   */
+  function testSimpleNullUpdate() {
+    $this->ensureSampleDataNull();
+    $num_updated = db_update('test_null')
+      ->fields(array('age' => NULL))
+      ->condition('name', 'Kermit')
+      ->execute();
+    $this->assertIdentical($num_updated, 1, t('Updated 1 record.'));
+
+    $saved_age = db_query('SELECT age FROM {test_null} WHERE name = :name', array(':name' => 'Kermit'))->fetchField();
+    $this->assertNull($saved_age, t('Updated name successfully.'));
+  }
+
+  /**
    * Confirm that we can update a multiple records successfully.
    */
   function testMultiUpdate() {
@@ -1310,6 +1325,27 @@ class DatabaseSelectTestCase extends DatabaseTestCase {
   }
 
   /**
+   * Test query COMMENT system against vulnerabilities.
+   */
+  function testVulnerableComment() {
+    $query = db_select('test')->comment('Testing query comments */ SELECT nid FROM {node}; --');
+    $name_field = $query->addField('test', 'name');
+    $age_field = $query->addField('test', 'age', 'age');
+    $result = $query->execute();
+
+    $num_records = 0;
+    foreach ($result as $record) {
+      $num_records++;
+    }
+
+    $query = (string)$query;
+    $expected = "/* Testing query comments SELECT nid FROM {node}; -- */ SELECT test.name AS name, test.age AS age\nFROM \n{test} test";
+
+    $this->assertEqual($num_records, 4, t('Returned the correct number of rows.'));
+    $this->assertEqual($query, $expected, t('The flattened query contains the sanitised comment string.'));
+  }
+
+  /**
    * Test basic conditionals on SELECT statements.
    */
   function testSimpleSelectConditional() {
@@ -3215,8 +3251,10 @@ class DatabaseTransactionTestCase extends DatabaseTestCase {
    *   Suffix to add to field values to differentiate tests.
    * @param $rollback
    *   Whether or not to try rolling back the transaction when we're done.
+   * @param $ddl_statement
+   *   Whether to execute a DDL statement during the inner transaction.
    */
-  protected function transactionOuterLayer($suffix, $rollback = FALSE) {
+  protected function transactionOuterLayer($suffix, $rollback = FALSE, $ddl_statement = FALSE) {
     $connection = Database::getConnection();
     $depth = $connection->transactionDepth();
     $txn = db_transaction();
@@ -3233,7 +3271,7 @@ class DatabaseTransactionTestCase extends DatabaseTestCase {
 
     // We're already in a transaction, but we call ->transactionInnerLayer
     // to nest another transaction inside the current one.
-    $this->transactionInnerLayer($suffix, $rollback);
+    $this->transactionInnerLayer($suffix, $rollback, $ddl_statement);
 
     $this->assertTrue($connection->inTransaction(), t('In transaction after calling nested transaction.'));
 
@@ -3253,12 +3291,12 @@ class DatabaseTransactionTestCase extends DatabaseTestCase {
    *   Suffix to add to field values to differentiate tests.
    * @param $rollback
    *   Whether or not to try rolling back the transaction when we're done.
+   * @param $ddl_statement
+   *   Whether to execute a DDL statement during the transaction.
    */
-  protected function transactionInnerLayer($suffix, $rollback = FALSE) {
+  protected function transactionInnerLayer($suffix, $rollback = FALSE, $ddl_statement = FALSE) {
     $connection = Database::getConnection();
 
-    $this->assertTrue($connection->inTransaction(), t('In transaction in nested transaction.'));
-
     $depth = $connection->transactionDepth();
     // Start a transaction. If we're being called from ->transactionOuterLayer,
     // then we're already in a transaction. Normally, that would make starting
@@ -3279,6 +3317,22 @@ class DatabaseTransactionTestCase extends DatabaseTestCase {
 
     $this->assertTrue($connection->inTransaction(), t('In transaction inside nested transaction.'));
 
+    if ($ddl_statement) {
+      $table = array(
+        'fields' => array(
+          'id' => array(
+            'type' => 'serial',
+            'unsigned' => TRUE,
+            'not null' => TRUE,
+          ),
+        ),
+        'primary key' => array('id'),
+      );
+      db_create_table('database_test_1', $table);
+
+      $this->assertTrue($connection->inTransaction(), t('In transaction inside nested transaction.'));
+    }
+
     if ($rollback) {
       // Roll back the transaction, if requested.
       // This rollback should propagate to the last savepoint.
@@ -3360,6 +3414,43 @@ class DatabaseTransactionTestCase extends DatabaseTestCase {
       $this->fail($e->getMessage());
     }
   }
+
+  /**
+   * Test the compatibility of transactions with DDL statements.
+   */
+  function testTransactionWithDdlStatement() {
+    // First, test that a commit works normally, even with DDL statements.
+    try {
+      $this->transactionOuterLayer('D', FALSE, TRUE);
+
+      // Because we committed, the inserted rows should both be present.
+      $saved_age = db_query('SELECT age FROM {test} WHERE name = :name', array(':name' => 'DavidD'))->fetchField();
+      $this->assertIdentical($saved_age, '24', t('Can retrieve DavidD row after commit.'));
+      $saved_age = db_query('SELECT age FROM {test} WHERE name = :name', array(':name' => 'DanielD'))->fetchField();
+      $this->assertIdentical($saved_age, '19', t('Can retrieve DanielD row after commit.'));
+      // The created table should also exist.
+      $count = db_query('SELECT COUNT(id) FROM {database_test_1}')->fetchField();
+      $this->assertIdentical($count, '0', t('Table was successfully created inside a transaction.'));
+    }
+    catch (Exception $e) {
+      $this->fail($e->getMessage());
+    }
+
+    // If we rollback the transaction, an exception might be thrown.
+    try {
+      $this->transactionOuterLayer('E', TRUE, TRUE);
+
+      // Because we rolled back, the inserted rows shouldn't be present.
+      $saved_age = db_query('SELECT age FROM {test} WHERE name = :name', array(':name' => 'DavidE'))->fetchField();
+      $this->assertNotIdentical($saved_age, '24', t('Cannot retrieve DavidE row after rollback.'));
+      $saved_age = db_query('SELECT age FROM {test} WHERE name = :name', array(':name' => 'DanielE'))->fetchField();
+      $this->assertNotIdentical($saved_age, '19', t('Cannot retrieve DanielE row after rollback.'));
+    }
+    catch (Exception $e) {
+      // An exception also lets the test pass.
+      $this->assertTrue(true, t('Exception thrown on rollback after a DDL statement was executed.'));
+    }
+  }
 }
 
 
diff --git a/modules/simpletest/tests/drupal_system_listing_compatible_test/drupal_system_listing_compatible_test.info b/modules/simpletest/tests/drupal_system_listing_compatible_test/drupal_system_listing_compatible_test.info
index 53515e7..085c335 100644
--- a/modules/simpletest/tests/drupal_system_listing_compatible_test/drupal_system_listing_compatible_test.info
+++ b/modules/simpletest/tests/drupal_system_listing_compatible_test/drupal_system_listing_compatible_test.info
@@ -2,5 +2,5 @@ name = "Drupal system listing compatible test"
 description = "Support module for testing the drupal_system_listing function."
 package = Testing
 version = VERSION
-core = 8.x
+core = 7.x
 hidden = TRUE
diff --git a/modules/simpletest/tests/drupal_system_listing_incompatible_test/drupal_system_listing_incompatible_test.info b/modules/simpletest/tests/drupal_system_listing_incompatible_test/drupal_system_listing_incompatible_test.info
index 8753eda..8e5875e 100644
--- a/modules/simpletest/tests/drupal_system_listing_incompatible_test/drupal_system_listing_incompatible_test.info
+++ b/modules/simpletest/tests/drupal_system_listing_incompatible_test/drupal_system_listing_incompatible_test.info
@@ -2,5 +2,5 @@ name = "Drupal system listing incompatible test"
 description = "Support module for testing the drupal_system_listing function."
 package = Testing
 version = VERSION
-core = 8.x
+core = 7.x
 hidden = TRUE
diff --git a/modules/simpletest/tests/entity_cache_test.info b/modules/simpletest/tests/entity_cache_test.info
index c13496e..405cefa 100644
--- a/modules/simpletest/tests/entity_cache_test.info
+++ b/modules/simpletest/tests/entity_cache_test.info
@@ -2,6 +2,6 @@ name = "Entity cache test"
 description = "Support module for testing entity cache."
 package = Testing
 version = VERSION
-core = 8.x
+core = 7.x
 dependencies[] = entity_cache_test_dependency
 hidden = TRUE
diff --git a/modules/simpletest/tests/entity_cache_test_dependency.info b/modules/simpletest/tests/entity_cache_test_dependency.info
index 17d551c..f0dc7b6 100644
--- a/modules/simpletest/tests/entity_cache_test_dependency.info
+++ b/modules/simpletest/tests/entity_cache_test_dependency.info
@@ -2,5 +2,5 @@ name = "Entity cache test dependency"
 description = "Support dependency module for testing entity cache."
 package = Testing
 version = VERSION
-core = 8.x
+core = 7.x
 hidden = TRUE
diff --git a/modules/simpletest/tests/entity_crud_hook_test.info b/modules/simpletest/tests/entity_crud_hook_test.info
index 28ce1b5..b37114d 100644
--- a/modules/simpletest/tests/entity_crud_hook_test.info
+++ b/modules/simpletest/tests/entity_crud_hook_test.info
@@ -1,6 +1,6 @@
 name = "Entity CRUD Hooks Test"
 description = "Support module for CRUD hook tests."
-core = 8.x
+core = 7.x
 package = Testing
 version = VERSION
 hidden = TRUE
diff --git a/modules/simpletest/tests/error_test.info b/modules/simpletest/tests/error_test.info
index d5db3ee..1764ae3 100644
--- a/modules/simpletest/tests/error_test.info
+++ b/modules/simpletest/tests/error_test.info
@@ -2,5 +2,5 @@ name = "Error test"
 description = "Support module for error and exception testing."
 package = Testing
 version = VERSION
-core = 8.x
+core = 7.x
 hidden = TRUE
diff --git a/modules/simpletest/tests/file_test.info b/modules/simpletest/tests/file_test.info
index b71f2a0..4edfcea 100644
--- a/modules/simpletest/tests/file_test.info
+++ b/modules/simpletest/tests/file_test.info
@@ -2,6 +2,6 @@ name = "File test"
 description = "Support module for file handling tests."
 package = Testing
 version = VERSION
-core = 8.x
+core = 7.x
 files[] = file_test.module
 hidden = TRUE
diff --git a/modules/simpletest/tests/filter_test.info b/modules/simpletest/tests/filter_test.info
index ee27c29..4b887ca 100644
--- a/modules/simpletest/tests/filter_test.info
+++ b/modules/simpletest/tests/filter_test.info
@@ -2,5 +2,5 @@ name = Filter test module
 description = Tests filter hooks and functions.
 package = Testing
 version = VERSION
-core = 8.x
+core = 7.x
 hidden = TRUE
diff --git a/modules/simpletest/tests/form_test.info b/modules/simpletest/tests/form_test.info
index 5354350..ac1d864 100644
--- a/modules/simpletest/tests/form_test.info
+++ b/modules/simpletest/tests/form_test.info
@@ -2,5 +2,5 @@ name = "FormAPI Test"
 description = "Support module for Form API tests."
 package = Testing
 version = VERSION
-core = 8.x
+core = 7.x
 hidden = TRUE
diff --git a/modules/simpletest/tests/image_test.info b/modules/simpletest/tests/image_test.info
index becc207..a9ef05a 100644
--- a/modules/simpletest/tests/image_test.info
+++ b/modules/simpletest/tests/image_test.info
@@ -2,5 +2,5 @@ name = "Image test"
 description = "Support module for image toolkit tests."
 package = Testing
 version = VERSION
-core = 8.x
+core = 7.x
 hidden = TRUE
diff --git a/modules/simpletest/tests/menu.test b/modules/simpletest/tests/menu.test
index 24c0023..5642fce 100644
--- a/modules/simpletest/tests/menu.test
+++ b/modules/simpletest/tests/menu.test
@@ -34,6 +34,18 @@ class MenuRouterTestCase extends DrupalWebTestCase {
   }
 
   /**
+   * Tests page title of MENU_CALLBACKs.
+   */
+  function testTitleMenuCallback() {
+    // Verify that the menu router item title is not visible.
+    $this->drupalGet('');
+    $this->assertNoText(t('Menu Callback Title'));
+    // Verify that the menu router item title is output as page title.
+    $this->drupalGet('menu_callback_title');
+    $this->assertText(t('Menu Callback Title'));
+  }
+
+  /**
    * Test the theme callback when it is set to use an administrative theme.
    */
   function testThemeCallbackAdministrative() {
@@ -845,6 +857,64 @@ class MenuTreeDataTestCase extends DrupalUnitTestCase {
 }
 
 /**
+ * Menu tree output related tests.
+ */
+class MenuTreeOutputTestCase extends DrupalWebTestCase {
+  /**
+   * Dummy link structure acceptable for menu_tree_output().
+   */
+  var $tree_data = array(
+    '1'=> array(
+      'link' => array( 'menu_name' => 'main-menu', 'mlid' => 1, 'hidden'=>0, 'has_children' => 1, 'title' => 'Item 1', 'in_active_trail' => 1, 'access'=>1, 'href' => 'a', 'localized_options' => array('attributes' => array('title' =>'')) ),
+      'below' => array(
+        '2' => array('link' => array( 'menu_name' => 'main-menu', 'mlid' => 2, 'hidden'=>0, 'has_children' => 1, 'title' => 'Item 2', 'in_active_trail' => 1, 'access'=>1, 'href' => 'a/b', 'localized_options' => array('attributes' => array('title' =>'')) ),
+          'below' => array(
+            '3' => array('link' => array( 'menu_name' => 'main-menu', 'mlid' => 3, 'hidden'=>0, 'has_children' => 0, 'title' => 'Item 3', 'in_active_trail' => 0, 'access'=>1, 'href' => 'a/b/c', 'localized_options' => array('attributes' => array('title' =>'')) ),
+              'below' => array() ),
+            '4' => array('link' => array( 'menu_name' => 'main-menu', 'mlid' => 4, 'hidden'=>0, 'has_children' => 0, 'title' => 'Item 4', 'in_active_trail' => 0, 'access'=>1, 'href' => 'a/b/d', 'localized_options' => array('attributes' => array('title' =>'')) ),
+              'below' => array() )
+            )
+          )
+        )
+      ),
+    '5' => array('link' => array( 'menu_name' => 'main-menu', 'mlid' => 5, 'hidden'=>1, 'has_children' => 0, 'title' => 'Item 5', 'in_active_trail' => 0, 'access'=>1, 'href' => 'e', 'localized_options' => array('attributes' => array('title' =>'')) ), 'below' => array( ) ),
+    '6' => array('link' => array( 'menu_name' => 'main-menu', 'mlid' => 6, 'hidden'=>0, 'has_children' => 0, 'title' => 'Item 6', 'in_active_trail' => 0, 'access'=>0, 'href' => 'f', 'localized_options' => array('attributes' => array('title' =>'')) ), 'below' => array( ) ),
+    '7' => array('link' => array( 'menu_name' => 'main-menu', 'mlid' => 7, 'hidden'=>0, 'has_children' => 0, 'title' => 'Item 7', 'in_active_trail' => 0, 'access'=>1, 'href' => 'g', 'localized_options' => array('attributes' => array('title' =>'')) ), 'below' => array( ) )
+  );
+
+  public static function getInfo() {
+    return array(
+      'name' => 'Menu tree output',
+      'description' => 'Tests menu tree output functions.',
+      'group' => 'Menu',
+    );
+  }
+  
+  function setUp() {
+    parent::setUp();
+  }
+
+  /**
+   * Validate the generation of a proper menu tree output.
+   */
+  function testMenuTreeData() {
+    $output = menu_tree_output($this->tree_data);
+
+    // Validate that the - in main-menu is changed into an underscore
+    $this->assertEqual( $output['1']['#theme'], 'menu_link__main_menu', t('Hyphen is changed to a dash on menu_link'));
+    $this->assertEqual( $output['#theme_wrappers'][0], 'menu_tree__main_menu', t('Hyphen is changed to a dash on menu_tree wrapper'));
+    // Looking for child items in the data
+    $this->assertEqual( $output['1']['#below']['2']['#href'], 'a/b', t('Checking the href on a child item'));
+    $this->assertTrue( in_array('active-trail',$output['1']['#below']['2']['#attributes']['class']) , t('Checking the active trail class'));
+    // Validate that the hidden and no access items are missing
+    $this->assertFalse( isset($output['5']), t('Hidden item should be missing'));
+    $this->assertFalse( isset($output['6']), t('False access should be missing'));
+    // Item 7 is after a couple hidden items. Just to make sure that 5 and 6 are skipped and 7 still included
+    $this->assertTrue( isset($output['7']), t('Item after hidden items is present'));
+  }
+}
+
+/**
  * Menu breadcrumbs related tests.
  */
 class MenuBreadcrumbTestCase extends DrupalWebTestCase {
diff --git a/modules/simpletest/tests/menu_test.info b/modules/simpletest/tests/menu_test.info
index 4549a25..c1c39c1 100644
--- a/modules/simpletest/tests/menu_test.info
+++ b/modules/simpletest/tests/menu_test.info
@@ -2,5 +2,5 @@ name = "Hook menu tests"
 description = "Support module for menu hook testing."
 package = Testing
 version = VERSION
-core = 8.x
+core = 7.x
 hidden = TRUE
diff --git a/modules/simpletest/tests/menu_test.module b/modules/simpletest/tests/menu_test.module
index 8e8173e..3046a04 100644
--- a/modules/simpletest/tests/menu_test.module
+++ b/modules/simpletest/tests/menu_test.module
@@ -15,6 +15,13 @@ function menu_test_menu() {
     'page callback' => 'node_save',
     'menu_name' => menu_test_menu_name(),
   );
+  // This item is of type MENU_CALLBACK with no parents to test title.
+  $items['menu_callback_title'] = array(
+    'title' => 'Menu Callback Title',
+    'page callback' => 'menu_test_callback',
+    'type' => MENU_CALLBACK,
+    'access arguments' => array('access content'),
+  );
   // Use FALSE as 'title callback' to bypass t().
   $items['menu_no_title_callback'] = array(
     'title' => 'A title with @placeholder',
diff --git a/modules/simpletest/tests/module_test.info b/modules/simpletest/tests/module_test.info
index c0b243c..0a0f3c0 100644
--- a/modules/simpletest/tests/module_test.info
+++ b/modules/simpletest/tests/module_test.info
@@ -2,5 +2,5 @@ name = "Module test"
 description = "Support module for module system testing."
 package = Testing
 version = VERSION
-core = 8.x
+core = 7.x
 hidden = TRUE
diff --git a/modules/simpletest/tests/module_test.module b/modules/simpletest/tests/module_test.module
index bd85049..d781350 100644
--- a/modules/simpletest/tests/module_test.module
+++ b/modules/simpletest/tests/module_test.module
@@ -46,7 +46,7 @@ function module_test_system_info_alter(&$info, $file, $type) {
     }
     elseif ($file->name == 'php') {
       // Set php module to a version compatible with the above.
-      $info['version'] = '8.x-1.0';
+      $info['version'] = '7.x-1.0';
     }
   }
   if ($file->name == 'seven' && $type == 'theme') {
diff --git a/modules/simpletest/tests/requirements1_test.info b/modules/simpletest/tests/requirements1_test.info
index f4d6ed5..ef39535 100644
--- a/modules/simpletest/tests/requirements1_test.info
+++ b/modules/simpletest/tests/requirements1_test.info
@@ -2,5 +2,5 @@ name = Requirements 1 Test
 description = "Tests that a module is not installed when it fails hook_requirements('install')."
 package = Core
 version = VERSION
-core = 8.x
+core = 7.x
 hidden = TRUE
diff --git a/modules/simpletest/tests/requirements2_test.info b/modules/simpletest/tests/requirements2_test.info
index 79d16cf..0cf8647 100644
--- a/modules/simpletest/tests/requirements2_test.info
+++ b/modules/simpletest/tests/requirements2_test.info
@@ -4,5 +4,5 @@ dependencies[] = requirements1_test
 dependencies[] = comment
 package = Core
 version = VERSION
-core = 8.x
+core = 7.x
 hidden = TRUE
diff --git a/modules/simpletest/tests/session_test.info b/modules/simpletest/tests/session_test.info
index 73de0a1..3272156 100644
--- a/modules/simpletest/tests/session_test.info
+++ b/modules/simpletest/tests/session_test.info
@@ -2,5 +2,5 @@ name = "Session test"
 description = "Support module for session data testing."
 package = Testing
 version = VERSION
-core = 8.x
+core = 7.x
 hidden = TRUE
diff --git a/modules/simpletest/tests/system_dependencies_test.info b/modules/simpletest/tests/system_dependencies_test.info
index c90706d..5b4bd10 100644
--- a/modules/simpletest/tests/system_dependencies_test.info
+++ b/modules/simpletest/tests/system_dependencies_test.info
@@ -2,6 +2,6 @@ name = "System dependency test"
 description = "Support module for testing system dependencies."
 package = Testing
 version = VERSION
-core = 8.x
+core = 7.x
 hidden = TRUE
 dependencies[] = _missing_dependency
diff --git a/modules/simpletest/tests/system_test.info b/modules/simpletest/tests/system_test.info
index 3b9aebc..c4ad536 100644
--- a/modules/simpletest/tests/system_test.info
+++ b/modules/simpletest/tests/system_test.info
@@ -2,6 +2,6 @@ name = System test
 description = Support module for system testing.
 package = Testing
 version = VERSION
-core = 8.x
+core = 7.x
 files[] = system_test.module
 hidden = TRUE
diff --git a/modules/simpletest/tests/system_test.module b/modules/simpletest/tests/system_test.module
index 46fb876..76841fb 100644
--- a/modules/simpletest/tests/system_test.module
+++ b/modules/simpletest/tests/system_test.module
@@ -217,7 +217,7 @@ function system_test_system_info_alter(&$info, $file, $type) {
     }
     if ($file->name == 'common_test') {
       $info['hidden'] = FALSE;
-      $info['version'] = '8.x-2.4-beta3';
+      $info['version'] = '7.x-2.4-beta3';
     }
   }
 
diff --git a/modules/simpletest/tests/tablesort.test b/modules/simpletest/tests/tablesort.test
index 3462ce3..9c068f8 100644
--- a/modules/simpletest/tests/tablesort.test
+++ b/modules/simpletest/tests/tablesort.test
@@ -1,5 +1,4 @@
 <?php
-// $Id$
 
 /**
  * @file
diff --git a/modules/simpletest/tests/taxonomy_test.info b/modules/simpletest/tests/taxonomy_test.info
index b4489d6..e5bb4f1 100644
--- a/modules/simpletest/tests/taxonomy_test.info
+++ b/modules/simpletest/tests/taxonomy_test.info
@@ -2,6 +2,6 @@ name = "Taxonomy test module"
 description = "Tests functions and hooks not used in core".
 package = Testing
 version = VERSION
-core = 8.x
+core = 7.x
 hidden = TRUE
 dependencies[] = taxonomy
diff --git a/modules/simpletest/tests/theme_test.info b/modules/simpletest/tests/theme_test.info
index c4d0659..72cd23b 100644
--- a/modules/simpletest/tests/theme_test.info
+++ b/modules/simpletest/tests/theme_test.info
@@ -2,5 +2,5 @@ name = "Theme test"
 description = "Support module for theme system testing."
 package = Testing
 version = VERSION
-core = 8.x
+core = 7.x
 hidden = TRUE
diff --git a/modules/simpletest/tests/update.test b/modules/simpletest/tests/update.test
index 2f55dc5..966efff 100644
--- a/modules/simpletest/tests/update.test
+++ b/modules/simpletest/tests/update.test
@@ -27,12 +27,12 @@ class UpdateDependencyOrderingTestCase extends DrupalWebTestCase {
    */
   function testUpdateOrderingSingleModule() {
     $starting_updates = array(
-      'update_test_1' => 8000,
+      'update_test_1' => 7000,
     );
     $expected_updates = array(
-      'update_test_1_update_8000',
-      'update_test_1_update_8001',
-      'update_test_1_update_8002',
+      'update_test_1_update_7000',
+      'update_test_1_update_7001',
+      'update_test_1_update_7002',
     );
     $actual_updates = array_keys(update_resolve_dependencies($starting_updates));
     $this->assertEqual($expected_updates, $actual_updates, t('Updates within a single module run in the correct order.'));
@@ -43,14 +43,14 @@ class UpdateDependencyOrderingTestCase extends DrupalWebTestCase {
    */
   function testUpdateOrderingModuleInterdependency() {
     $starting_updates = array(
-      'update_test_2' => 8000,
-      'update_test_3' => 8000,
+      'update_test_2' => 7000,
+      'update_test_3' => 7000,
     );
     $update_order = array_keys(update_resolve_dependencies($starting_updates));
     // Make sure that each dependency is satisfied.
-    $first_dependency_satisfied = array_search('update_test_2_update_8000', $update_order) < array_search('update_test_3_update_8000', $update_order);
+    $first_dependency_satisfied = array_search('update_test_2_update_7000', $update_order) < array_search('update_test_3_update_7000', $update_order);
     $this->assertTrue($first_dependency_satisfied, t('The dependency of the second module on the first module is respected by the update function order.'));
-    $second_dependency_satisfied = array_search('update_test_3_update_8000', $update_order) < array_search('update_test_2_update_8001', $update_order);
+    $second_dependency_satisfied = array_search('update_test_3_update_7000', $update_order) < array_search('update_test_2_update_7001', $update_order);
     $this->assertTrue($second_dependency_satisfied, t('The dependency of the first module on the second module is respected by the update function order.'));
   }
 }
@@ -76,12 +76,12 @@ class UpdateDependencyMissingTestCase extends DrupalWebTestCase {
 
   function testMissingUpdate() {
     $starting_updates = array(
-      'update_test_2' => 8000,
+      'update_test_2' => 7000,
     );
     $update_graph = update_resolve_dependencies($starting_updates);
-    $this->assertTrue($update_graph['update_test_2_update_8000']['allowed'], t("The module's first update function is allowed to run, since it does not have any missing dependencies."));
-    $this->assertFalse($update_graph['update_test_2_update_8001']['allowed'], t("The module's second update function is not allowed to run, since it has a direct dependency on a missing update."));
-    $this->assertFalse($update_graph['update_test_2_update_8002']['allowed'], t("The module's third update function is not allowed to run, since it has an indirect dependency on a missing update."));
+    $this->assertTrue($update_graph['update_test_2_update_7000']['allowed'], t("The module's first update function is allowed to run, since it does not have any missing dependencies."));
+    $this->assertFalse($update_graph['update_test_2_update_7001']['allowed'], t("The module's second update function is not allowed to run, since it has a direct dependency on a missing update."));
+    $this->assertFalse($update_graph['update_test_2_update_7002']['allowed'], t("The module's third update function is not allowed to run, since it has an indirect dependency on a missing update."));
   }
 }
 
@@ -107,9 +107,9 @@ class UpdateDependencyHookInvocationTestCase extends DrupalWebTestCase {
    */
   function testHookUpdateDependencies() {
     $update_dependencies = update_retrieve_dependencies();
-    $this->assertTrue($update_dependencies['system'][8000]['update_test_1'] == 8000, t('An update function that has a dependency on two separate modules has the first dependency recorded correctly.'));
-    $this->assertTrue($update_dependencies['system'][8000]['update_test_2'] == 8001, t('An update function that has a dependency on two separate modules has the second dependency recorded correctly.'));
-    $this->assertTrue($update_dependencies['system'][8001]['update_test_1'] == 8002, t('An update function that depends on more than one update from the same module only has the dependency on the higher-numbered update function recorded.'));
+    $this->assertTrue($update_dependencies['system'][7000]['update_test_1'] == 7000, t('An update function that has a dependency on two separate modules has the first dependency recorded correctly.'));
+    $this->assertTrue($update_dependencies['system'][7000]['update_test_2'] == 7001, t('An update function that has a dependency on two separate modules has the second dependency recorded correctly.'));
+    $this->assertTrue($update_dependencies['system'][7001]['update_test_1'] == 7002, t('An update function that depends on more than one update from the same module only has the dependency on the higher-numbered update function recorded.'));
   }
 }
 
diff --git a/modules/simpletest/tests/update_test_1.info b/modules/simpletest/tests/update_test_1.info
index 5a5b14f..d9764ee 100644
--- a/modules/simpletest/tests/update_test_1.info
+++ b/modules/simpletest/tests/update_test_1.info
@@ -2,5 +2,5 @@ name = "Update test"
 description = "Support module for update testing."
 package = Testing
 version = VERSION
-core = 8.x
+core = 7.x
 hidden = TRUE
diff --git a/modules/simpletest/tests/update_test_1.install b/modules/simpletest/tests/update_test_1.install
index 22398a3..f4a86c7 100644
--- a/modules/simpletest/tests/update_test_1.install
+++ b/modules/simpletest/tests/update_test_1.install
@@ -17,37 +17,37 @@ function update_test_1_update_dependencies() {
   // the correct array structure. Therefore, we use updates from System module
   // (which have already run), so that they will not get in the way of other
   // tests.
-  $dependencies['system'][8000] = array(
+  $dependencies['system'][7000] = array(
     // Compare to update_test_2_update_dependencies(), where the same System
     // module update function is forced to depend on an update function from a
     // different module. This allows us to test that both dependencies are
     // correctly recorded.
-    'update_test_1' => 8000,
+    'update_test_1' => 7000,
   );
-  $dependencies['system'][8001] = array(
+  $dependencies['system'][7001] = array(
     // Compare to update_test_2_update_dependencies(), where the same System
     // module update function is forced to depend on a different update
     // function within the same module. This allows us to test that only the
     // dependency on the higher-numbered update function is recorded.
-    'update_test_1' => 8002,
+    'update_test_1' => 7002,
   );
   return $dependencies;
 }
 
 /**
- * Dummy update_test_1 update 8000.
+ * Dummy update_test_1 update 7000.
  */
-function update_test_1_update_8000() {
+function update_test_1_update_7000() {
 }
 
 /**
- * Dummy update_test_1 update 8001.
+ * Dummy update_test_1 update 7001.
  */
-function update_test_1_update_8001() {
+function update_test_1_update_7001() {
 }
 
 /**
- * Dummy update_test_1 update 8002.
+ * Dummy update_test_1 update 7002.
  */
-function update_test_1_update_8002() {
+function update_test_1_update_7002() {
 }
diff --git a/modules/simpletest/tests/update_test_2.info b/modules/simpletest/tests/update_test_2.info
index 5a5b14f..d9764ee 100644
--- a/modules/simpletest/tests/update_test_2.info
+++ b/modules/simpletest/tests/update_test_2.info
@@ -2,5 +2,5 @@ name = "Update test"
 description = "Support module for update testing."
 package = Testing
 version = VERSION
-core = 8.x
+core = 7.x
 hidden = TRUE
diff --git a/modules/simpletest/tests/update_test_2.install b/modules/simpletest/tests/update_test_2.install
index c73271a..9c076ff 100644
--- a/modules/simpletest/tests/update_test_2.install
+++ b/modules/simpletest/tests/update_test_2.install
@@ -14,40 +14,40 @@
 function update_test_2_update_dependencies() {
   // Combined with update_test_3_update_dependencies(), we are declaring here
   // that these two modules run updates in the following order:
-  // 1. update_test_2_update_8000()
-  // 2. update_test_3_update_8000()
-  // 3. update_test_2_update_8001()
-  // 4. update_test_2_update_8002()
-  $dependencies['update_test_2'][8001] = array(
-    'update_test_3' => 8000,
+  // 1. update_test_2_update_7000()
+  // 2. update_test_3_update_7000()
+  // 3. update_test_2_update_7001()
+  // 4. update_test_2_update_7002()
+  $dependencies['update_test_2'][7001] = array(
+    'update_test_3' => 7000,
   );
 
   // These are coordinated with the corresponding dependencies declared in
   // update_test_1_update_dependencies().
-  $dependencies['system'][8000] = array(
-    'update_test_2' => 8001,
+  $dependencies['system'][7000] = array(
+    'update_test_2' => 7001,
   );
-  $dependencies['system'][8001] = array(
-    'update_test_1' => 8001,
+  $dependencies['system'][7001] = array(
+    'update_test_1' => 7001,
   );
 
   return $dependencies;
 }
 
 /**
- * Dummy update_test_2 update 8000.
+ * Dummy update_test_2 update 7000.
  */
-function update_test_2_update_8000() {
+function update_test_2_update_7000() {
 }
 
 /**
- * Dummy update_test_2 update 8001.
+ * Dummy update_test_2 update 7001.
  */
-function update_test_2_update_8001() {
+function update_test_2_update_7001() {
 }
 
 /**
- * Dummy update_test_2 update 8002.
+ * Dummy update_test_2 update 7002.
  */
-function update_test_2_update_8002() {
+function update_test_2_update_7002() {
 }
diff --git a/modules/simpletest/tests/update_test_3.info b/modules/simpletest/tests/update_test_3.info
index 5a5b14f..d9764ee 100644
--- a/modules/simpletest/tests/update_test_3.info
+++ b/modules/simpletest/tests/update_test_3.info
@@ -2,5 +2,5 @@ name = "Update test"
 description = "Support module for update testing."
 package = Testing
 version = VERSION
-core = 8.x
+core = 7.x
 hidden = TRUE
diff --git a/modules/simpletest/tests/update_test_3.install b/modules/simpletest/tests/update_test_3.install
index 96830c8..c3f6b75 100644
--- a/modules/simpletest/tests/update_test_3.install
+++ b/modules/simpletest/tests/update_test_3.install
@@ -11,14 +11,14 @@
  * @see update_test_2_update_dependencies()
  */
 function update_test_3_update_dependencies() {
-  $dependencies['update_test_3'][8000] = array(
-    'update_test_2' => 8000,
+  $dependencies['update_test_3'][7000] = array(
+    'update_test_2' => 7000,
   );
   return $dependencies;
 }
 
 /**
- * Dummy update_test_3 update 8000.
+ * Dummy update_test_3 update 7000.
  */
-function update_test_3_update_8000() {
+function update_test_3_update_7000() {
 }
diff --git a/modules/simpletest/tests/upgrade/drupal-6.bare.database.php b/modules/simpletest/tests/upgrade/drupal-6.bare.database.php
new file mode 100644
index 0000000..40c7562
--- /dev/null
+++ b/modules/simpletest/tests/upgrade/drupal-6.bare.database.php
@@ -0,0 +1,8131 @@
+<?php
+
+/**
+ * @file
+ * Bare installation of Drupal 6.17, for test purposes.
+ *
+ * This file was generated by the dump-database-d6.sh tool, from a bare
+ * installation of Drupal 6, with only the following core optional modules
+ * enabled:
+ *  - dblog
+ *  - update
+ *
+ * Dblog fulfills the requirement that a module take care of watchdog calls,
+ * and update module is enabled at the end of installation.
+ */
+
+db_create_table('access', array(
+  'fields' => array(
+    'aid' => array(
+      'type' => 'serial',
+      'not null' => TRUE,
+    ),
+    'mask' => array(
+      'type' => 'varchar',
+      'length' => 255,
+      'not null' => TRUE,
+      'default' => '',
+    ),
+    'type' => array(
+      'type' => 'varchar',
+      'length' => 255,
+      'not null' => TRUE,
+      'default' => '',
+    ),
+    'status' => array(
+      'type' => 'int',
+      'not null' => TRUE,
+      'default' => 0,
+      'size' => 'tiny',
+    ),
+  ),
+  'primary key' => array(
+    'aid',
+  ),
+  'module' => 'user',
+  'name' => 'access',
+));
+
+db_create_table('actions', array(
+  'fields' => array(
+    'aid' => array(
+      'type' => 'varchar',
+      'length' => 255,
+      'not null' => TRUE,
+      'default' => '0',
+    ),
+    'type' => array(
+      'type' => 'varchar',
+      'length' => 32,
+      'not null' => TRUE,
+      'default' => '',
+    ),
+    'callback' => array(
+      'type' => 'varchar',
+      'length' => 255,
+      'not null' => TRUE,
+      'default' => '',
+    ),
+    'parameters' => array(
+      'type' => 'text',
+      'not null' => TRUE,
+      'size' => 'big',
+    ),
+    'description' => array(
+      'type' => 'varchar',
+      'length' => 255,
+      'not null' => TRUE,
+      'default' => '0',
+    ),
+  ),
+  'primary key' => array(
+    'aid',
+  ),
+  'module' => 'system',
+  'name' => 'actions',
+));
+db_insert('actions')->fields(array(
+  'aid',
+  'type',
+  'callback',
+  'parameters',
+  'description',
+))
+->values(array(
+  'aid' => 'node_make_sticky_action',
+  'type' => 'node',
+  'callback' => 'node_make_sticky_action',
+  'parameters' => '',
+  'description' => 'Make post sticky',
+))
+->values(array(
+  'aid' => 'node_make_unsticky_action',
+  'type' => 'node',
+  'callback' => 'node_make_unsticky_action',
+  'parameters' => '',
+  'description' => 'Make post unsticky',
+))
+->values(array(
+  'aid' => 'node_promote_action',
+  'type' => 'node',
+  'callback' => 'node_promote_action',
+  'parameters' => '',
+  'description' => 'Promote post to front page',
+))
+->values(array(
+  'aid' => 'node_publish_action',
+  'type' => 'node',
+  'callback' => 'node_publish_action',
+  'parameters' => '',
+  'description' => 'Publish post',
+))
+->values(array(
+  'aid' => 'node_save_action',
+  'type' => 'node',
+  'callback' => 'node_save_action',
+  'parameters' => '',
+  'description' => 'Save post',
+))
+->values(array(
+  'aid' => 'node_unpromote_action',
+  'type' => 'node',
+  'callback' => 'node_unpromote_action',
+  'parameters' => '',
+  'description' => 'Remove post from front page',
+))
+->values(array(
+  'aid' => 'node_unpublish_action',
+  'type' => 'node',
+  'callback' => 'node_unpublish_action',
+  'parameters' => '',
+  'description' => 'Unpublish post',
+))
+->values(array(
+  'aid' => 'user_block_ip_action',
+  'type' => 'user',
+  'callback' => 'user_block_ip_action',
+  'parameters' => '',
+  'description' => 'Ban IP address of current user',
+))
+->values(array(
+  'aid' => 'user_block_user_action',
+  'type' => 'user',
+  'callback' => 'user_block_user_action',
+  'parameters' => '',
+  'description' => 'Block current user',
+))
+->execute();
+
+db_create_table('actions_aid', array(
+  'fields' => array(
+    'aid' => array(
+      'type' => 'serial',
+      'unsigned' => TRUE,
+      'not null' => TRUE,
+    ),
+  ),
+  'primary key' => array(
+    'aid',
+  ),
+  'module' => 'system',
+  'name' => 'actions_aid',
+));
+
+db_create_table('authmap', array(
+  'fields' => array(
+    'aid' => array(
+      'type' => 'serial',
+      'unsigned' => TRUE,
+      'not null' => TRUE,
+    ),
+    'uid' => array(
+      'type' => 'int',
+      'not null' => TRUE,
+      'default' => 0,
+    ),
+    'authname' => array(
+      'type' => 'varchar',
+      'length' => 128,
+      'not null' => TRUE,
+      'default' => '',
+    ),
+    'module' => array(
+      'type' => 'varchar',
+      'length' => 128,
+      'not null' => TRUE,
+      'default' => '',
+    ),
+  ),
+  'unique keys' => array(
+    'authname' => array(
+      'authname',
+    ),
+  ),
+  'primary key' => array(
+    'aid',
+  ),
+  'module' => 'user',
+  'name' => 'authmap',
+));
+
+db_create_table('batch', array(
+  'fields' => array(
+    'bid' => array(
+      'type' => 'serial',
+      'unsigned' => TRUE,
+      'not null' => TRUE,
+    ),
+    'token' => array(
+      'type' => 'varchar',
+      'length' => 64,
+      'not null' => TRUE,
+    ),
+    'timestamp' => array(
+      'type' => 'int',
+      'not null' => TRUE,
+    ),
+    'batch' => array(
+      'type' => 'text',
+      'not null' => FALSE,
+      'size' => 'big',
+    ),
+  ),
+  'primary key' => array(
+    'bid',
+  ),
+  'indexes' => array(
+    'token' => array(
+      'token',
+    ),
+  ),
+  'module' => 'system',
+  'name' => 'batch',
+));
+
+db_create_table('blocks', array(
+  'fields' => array(
+    'bid' => array(
+      'type' => 'serial',
+      'not null' => TRUE,
+    ),
+    'module' => array(
+      'type' => 'varchar',
+      'length' => 64,
+      'not null' => TRUE,
+      'default' => '',
+    ),
+    'delta' => array(
+      'type' => 'varchar',
+      'length' => 32,
+      'not null' => TRUE,
+      'default' => '0',
+    ),
+    'theme' => array(
+      'type' => 'varchar',
+      'length' => 64,
+      'not null' => TRUE,
+      'default' => '',
+    ),
+    'status' => array(
+      'type' => 'int',
+      'not null' => TRUE,
+      'default' => 0,
+      'size' => 'tiny',
+    ),
+    'weight' => array(
+      'type' => 'int',
+      'not null' => TRUE,
+      'default' => 0,
+      'size' => 'tiny',
+    ),
+    'region' => array(
+      'type' => 'varchar',
+      'length' => 64,
+      'not null' => TRUE,
+      'default' => '',
+    ),
+    'custom' => array(
+      'type' => 'int',
+      'not null' => TRUE,
+      'default' => 0,
+      'size' => 'tiny',
+    ),
+    'throttle' => array(
+      'type' => 'int',
+      'not null' => TRUE,
+      'default' => 0,
+      'size' => 'tiny',
+    ),
+    'visibility' => array(
+      'type' => 'int',
+      'not null' => TRUE,
+      'default' => 0,
+      'size' => 'tiny',
+    ),
+    'pages' => array(
+      'type' => 'text',
+      'not null' => TRUE,
+    ),
+    'title' => array(
+      'type' => 'varchar',
+      'length' => 64,
+      'not null' => TRUE,
+      'default' => '',
+    ),
+    'cache' => array(
+      'type' => 'int',
+      'not null' => TRUE,
+      'default' => 1,
+      'size' => 'tiny',
+    ),
+  ),
+  'primary key' => array(
+    'bid',
+  ),
+  'unique keys' => array(
+    'tmd' => array(
+      'theme',
+      'module',
+      'delta',
+    ),
+  ),
+  'indexes' => array(
+    'list' => array(
+      'theme',
+      'status',
+      'region',
+      'weight',
+      'module',
+    ),
+  ),
+  'module' => 'block',
+  'name' => 'blocks',
+));
+db_insert('blocks')->fields(array(
+  'bid',
+  'module',
+  'delta',
+  'theme',
+  'status',
+  'weight',
+  'region',
+  'custom',
+  'throttle',
+  'visibility',
+  'pages',
+  'title',
+  'cache',
+))
+->values(array(
+  'bid' => '1',
+  'module' => 'user',
+  'delta' => '0',
+  'theme' => 'garland',
+  'status' => '1',
+  'weight' => '0',
+  'region' => 'left',
+  'custom' => '0',
+  'throttle' => '0',
+  'visibility' => '0',
+  'pages' => '',
+  'title' => '',
+  'cache' => '-1',
+))
+->values(array(
+  'bid' => '2',
+  'module' => 'user',
+  'delta' => '1',
+  'theme' => 'garland',
+  'status' => '1',
+  'weight' => '0',
+  'region' => 'left',
+  'custom' => '0',
+  'throttle' => '0',
+  'visibility' => '0',
+  'pages' => '',
+  'title' => '',
+  'cache' => '-1',
+))
+->values(array(
+  'bid' => '3',
+  'module' => 'system',
+  'delta' => '0',
+  'theme' => 'garland',
+  'status' => '1',
+  'weight' => '10',
+  'region' => 'footer',
+  'custom' => '0',
+  'throttle' => '0',
+  'visibility' => '0',
+  'pages' => '',
+  'title' => '',
+  'cache' => '-1',
+))
+->execute();
+
+db_create_table('blocks_roles', array(
+  'fields' => array(
+    'module' => array(
+      'type' => 'varchar',
+      'length' => 64,
+      'not null' => TRUE,
+    ),
+    'delta' => array(
+      'type' => 'varchar',
+      'length' => 32,
+      'not null' => TRUE,
+    ),
+    'rid' => array(
+      'type' => 'int',
+      'unsigned' => TRUE,
+      'not null' => TRUE,
+    ),
+  ),
+  'primary key' => array(
+    'module',
+    'delta',
+    'rid',
+  ),
+  'indexes' => array(
+    'rid' => array(
+      'rid',
+    ),
+  ),
+  'module' => 'block',
+  'name' => 'blocks_roles',
+));
+
+db_create_table('boxes', array(
+  'fields' => array(
+    'bid' => array(
+      'type' => 'serial',
+      'unsigned' => TRUE,
+      'not null' => TRUE,
+    ),
+    'body' => array(
+      'type' => 'text',
+      'not null' => FALSE,
+      'size' => 'big',
+    ),
+    'info' => array(
+      'type' => 'varchar',
+      'length' => 128,
+      'not null' => TRUE,
+      'default' => '',
+    ),
+    'format' => array(
+      'type' => 'int',
+      'size' => 'small',
+      'not null' => TRUE,
+      'default' => 0,
+    ),
+  ),
+  'unique keys' => array(
+    'info' => array(
+      'info',
+    ),
+  ),
+  'primary key' => array(
+    'bid',
+  ),
+  'module' => 'block',
+  'name' => 'boxes',
+));
+
+db_create_table('cache', array(
+  'fields' => array(
+    'cid' => array(
+      'type' => 'varchar',
+      'length' => 255,
+      'not null' => TRUE,
+      'default' => '',
+    ),
+    'data' => array(
+      'type' => 'blob',
+      'not null' => FALSE,
+      'size' => 'big',
+    ),
+    'expire' => array(
+      'type' => 'int',
+      'not null' => TRUE,
+      'default' => 0,
+    ),
+    'created' => array(
+      'type' => 'int',
+      'not null' => TRUE,
+      'default' => 0,
+    ),
+    'headers' => array(
+      'type' => 'text',
+      'not null' => FALSE,
+    ),
+    'serialized' => array(
+      'type' => 'int',
+      'size' => 'small',
+      'not null' => TRUE,
+      'default' => 0,
+    ),
+  ),
+  'indexes' => array(
+    'expire' => array(
+      'expire',
+    ),
+  ),
+  'primary key' => array(
+    'cid',
+  ),
+  'module' => 'system',
+  'name' => 'cache',
+));
+
+db_create_table('cache_block', array(
+  'fields' => array(
+    'cid' => array(
+      'type' => 'varchar',
+      'length' => 255,
+      'not null' => TRUE,
+      'default' => '',
+    ),
+    'data' => array(
+      'type' => 'blob',
+      'not null' => FALSE,
+      'size' => 'big',
+    ),
+    'expire' => array(
+      'type' => 'int',
+      'not null' => TRUE,
+      'default' => 0,
+    ),
+    'created' => array(
+      'type' => 'int',
+      'not null' => TRUE,
+      'default' => 0,
+    ),
+    'headers' => array(
+      'type' => 'text',
+      'not null' => FALSE,
+    ),
+    'serialized' => array(
+      'type' => 'int',
+      'size' => 'small',
+      'not null' => TRUE,
+      'default' => 0,
+    ),
+  ),
+  'indexes' => array(
+    'expire' => array(
+      'expire',
+    ),
+  ),
+  'primary key' => array(
+    'cid',
+  ),
+  'module' => 'block',
+  'name' => 'cache_block',
+));
+
+db_create_table('cache_filter', array(
+  'fields' => array(
+    'cid' => array(
+      'type' => 'varchar',
+      'length' => 255,
+      'not null' => TRUE,
+      'default' => '',
+    ),
+    'data' => array(
+      'type' => 'blob',
+      'not null' => FALSE,
+      'size' => 'big',
+    ),
+    'expire' => array(
+      'type' => 'int',
+      'not null' => TRUE,
+      'default' => 0,
+    ),
+    'created' => array(
+      'type' => 'int',
+      'not null' => TRUE,
+      'default' => 0,
+    ),
+    'headers' => array(
+      'type' => 'text',
+      'not null' => FALSE,
+    ),
+    'serialized' => array(
+      'type' => 'int',
+      'size' => 'small',
+      'not null' => TRUE,
+      'default' => 0,
+    ),
+  ),
+  'indexes' => array(
+    'expire' => array(
+      'expire',
+    ),
+  ),
+  'primary key' => array(
+    'cid',
+  ),
+  'module' => 'filter',
+  'name' => 'cache_filter',
+));
+
+db_create_table('cache_form', array(
+  'fields' => array(
+    'cid' => array(
+      'type' => 'varchar',
+      'length' => 255,
+      'not null' => TRUE,
+      'default' => '',
+    ),
+    'data' => array(
+      'type' => 'blob',
+      'not null' => FALSE,
+      'size' => 'big',
+    ),
+    'expire' => array(
+      'type' => 'int',
+      'not null' => TRUE,
+      'default' => 0,
+    ),
+    'created' => array(
+      'type' => 'int',
+      'not null' => TRUE,
+      'default' => 0,
+    ),
+    'headers' => array(
+      'type' => 'text',
+      'not null' => FALSE,
+    ),
+    'serialized' => array(
+      'type' => 'int',
+      'size' => 'small',
+      'not null' => TRUE,
+      'default' => 0,
+    ),
+  ),
+  'indexes' => array(
+    'expire' => array(
+      'expire',
+    ),
+  ),
+  'primary key' => array(
+    'cid',
+  ),
+  'module' => 'system',
+  'name' => 'cache_form',
+));
+
+db_create_table('cache_menu', array(
+  'fields' => array(
+    'cid' => array(
+      'type' => 'varchar',
+      'length' => 255,
+      'not null' => TRUE,
+      'default' => '',
+    ),
+    'data' => array(
+      'type' => 'blob',
+      'not null' => FALSE,
+      'size' => 'big',
+    ),
+    'expire' => array(
+      'type' => 'int',
+      'not null' => TRUE,
+      'default' => 0,
+    ),
+    'created' => array(
+      'type' => 'int',
+      'not null' => TRUE,
+      'default' => 0,
+    ),
+    'headers' => array(
+      'type' => 'text',
+      'not null' => FALSE,
+    ),
+    'serialized' => array(
+      'type' => 'int',
+      'size' => 'small',
+      'not null' => TRUE,
+      'default' => 0,
+    ),
+  ),
+  'indexes' => array(
+    'expire' => array(
+      'expire',
+    ),
+  ),
+  'primary key' => array(
+    'cid',
+  ),
+  'module' => 'system',
+  'name' => 'cache_menu',
+));
+
+db_create_table('cache_page', array(
+  'fields' => array(
+    'cid' => array(
+      'type' => 'varchar',
+      'length' => 255,
+      'not null' => TRUE,
+      'default' => '',
+    ),
+    'data' => array(
+      'type' => 'blob',
+      'not null' => FALSE,
+      'size' => 'big',
+    ),
+    'expire' => array(
+      'type' => 'int',
+      'not null' => TRUE,
+      'default' => 0,
+    ),
+    'created' => array(
+      'type' => 'int',
+      'not null' => TRUE,
+      'default' => 0,
+    ),
+    'headers' => array(
+      'type' => 'text',
+      'not null' => FALSE,
+    ),
+    'serialized' => array(
+      'type' => 'int',
+      'size' => 'small',
+      'not null' => TRUE,
+      'default' => 0,
+    ),
+  ),
+  'indexes' => array(
+    'expire' => array(
+      'expire',
+    ),
+  ),
+  'primary key' => array(
+    'cid',
+  ),
+  'module' => 'system',
+  'name' => 'cache_page',
+));
+
+db_create_table('cache_update', array(
+  'fields' => array(
+    'cid' => array(
+      'type' => 'varchar',
+      'length' => 255,
+      'not null' => TRUE,
+      'default' => '',
+    ),
+    'data' => array(
+      'type' => 'blob',
+      'not null' => FALSE,
+      'size' => 'big',
+    ),
+    'expire' => array(
+      'type' => 'int',
+      'not null' => TRUE,
+      'default' => 0,
+    ),
+    'created' => array(
+      'type' => 'int',
+      'not null' => TRUE,
+      'default' => 0,
+    ),
+    'headers' => array(
+      'type' => 'text',
+      'not null' => FALSE,
+    ),
+    'serialized' => array(
+      'type' => 'int',
+      'size' => 'small',
+      'not null' => TRUE,
+      'default' => 0,
+    ),
+  ),
+  'indexes' => array(
+    'expire' => array(
+      'expire',
+    ),
+  ),
+  'primary key' => array(
+    'cid',
+  ),
+  'module' => 'update',
+  'name' => 'cache_update',
+));
+
+db_create_table('files', array(
+  'fields' => array(
+    'fid' => array(
+      'type' => 'serial',
+      'unsigned' => TRUE,
+      'not null' => TRUE,
+    ),
+    'uid' => array(
+      'type' => 'int',
+      'unsigned' => TRUE,
+      'not null' => TRUE,
+      'default' => 0,
+    ),
+    'filename' => array(
+      'type' => 'varchar',
+      'length' => 255,
+      'not null' => TRUE,
+      'default' => '',
+    ),
+    'filepath' => array(
+      'type' => 'varchar',
+      'length' => 255,
+      'not null' => TRUE,
+      'default' => '',
+    ),
+    'filemime' => array(
+      'type' => 'varchar',
+      'length' => 255,
+      'not null' => TRUE,
+      'default' => '',
+    ),
+    'filesize' => array(
+      'type' => 'int',
+      'unsigned' => TRUE,
+      'not null' => TRUE,
+      'default' => 0,
+    ),
+    'status' => array(
+      'type' => 'int',
+      'not null' => TRUE,
+      'default' => 0,
+    ),
+    'timestamp' => array(
+      'type' => 'int',
+      'unsigned' => TRUE,
+      'not null' => TRUE,
+      'default' => 0,
+    ),
+  ),
+  'indexes' => array(
+    'uid' => array(
+      'uid',
+    ),
+    'status' => array(
+      'status',
+    ),
+    'timestamp' => array(
+      'timestamp',
+    ),
+  ),
+  'primary key' => array(
+    'fid',
+  ),
+  'module' => 'system',
+  'name' => 'files',
+));
+
+db_create_table('filter_formats', array(
+  'fields' => array(
+    'format' => array(
+      'type' => 'serial',
+      'not null' => TRUE,
+    ),
+    'name' => array(
+      'type' => 'varchar',
+      'length' => 255,
+      'not null' => TRUE,
+      'default' => '',
+    ),
+    'roles' => array(
+      'type' => 'varchar',
+      'length' => 255,
+      'not null' => TRUE,
+      'default' => '',
+    ),
+    'cache' => array(
+      'type' => 'int',
+      'not null' => TRUE,
+      'default' => 0,
+      'size' => 'tiny',
+    ),
+  ),
+  'primary key' => array(
+    'format',
+  ),
+  'unique keys' => array(
+    'name' => array(
+      'name',
+    ),
+  ),
+  'module' => 'filter',
+  'name' => 'filter_formats',
+));
+db_insert('filter_formats')->fields(array(
+  'format',
+  'name',
+  'roles',
+  'cache',
+))
+->values(array(
+  'format' => '1',
+  'name' => 'Filtered HTML',
+  'roles' => ',1,2,',
+  'cache' => '1',
+))
+->values(array(
+  'format' => '2',
+  'name' => 'Full HTML',
+  'roles' => '',
+  'cache' => '1',
+))
+->execute();
+
+db_create_table('filters', array(
+  'fields' => array(
+    'fid' => array(
+      'type' => 'serial',
+      'not null' => TRUE,
+    ),
+    'format' => array(
+      'type' => 'int',
+      'not null' => TRUE,
+      'default' => 0,
+    ),
+    'module' => array(
+      'type' => 'varchar',
+      'length' => 64,
+      'not null' => TRUE,
+      'default' => '',
+    ),
+    'delta' => array(
+      'type' => 'int',
+      'not null' => TRUE,
+      'default' => 0,
+      'size' => 'tiny',
+    ),
+    'weight' => array(
+      'type' => 'int',
+      'not null' => TRUE,
+      'default' => 0,
+      'size' => 'tiny',
+    ),
+  ),
+  'primary key' => array(
+    'fid',
+  ),
+  'unique keys' => array(
+    'fmd' => array(
+      'format',
+      'module',
+      'delta',
+    ),
+  ),
+  'indexes' => array(
+    'list' => array(
+      'format',
+      'weight',
+      'module',
+      'delta',
+    ),
+  ),
+  'module' => 'filter',
+  'name' => 'filters',
+));
+db_insert('filters')->fields(array(
+  'fid',
+  'format',
+  'module',
+  'delta',
+  'weight',
+))
+->values(array(
+  'fid' => '1',
+  'format' => '1',
+  'module' => 'filter',
+  'delta' => '2',
+  'weight' => '0',
+))
+->values(array(
+  'fid' => '2',
+  'format' => '1',
+  'module' => 'filter',
+  'delta' => '0',
+  'weight' => '1',
+))
+->values(array(
+  'fid' => '3',
+  'format' => '1',
+  'module' => 'filter',
+  'delta' => '1',
+  'weight' => '2',
+))
+->values(array(
+  'fid' => '4',
+  'format' => '1',
+  'module' => 'filter',
+  'delta' => '3',
+  'weight' => '10',
+))
+->values(array(
+  'fid' => '5',
+  'format' => '2',
+  'module' => 'filter',
+  'delta' => '2',
+  'weight' => '0',
+))
+->values(array(
+  'fid' => '6',
+  'format' => '2',
+  'module' => 'filter',
+  'delta' => '1',
+  'weight' => '1',
+))
+->values(array(
+  'fid' => '7',
+  'format' => '2',
+  'module' => 'filter',
+  'delta' => '3',
+  'weight' => '10',
+))
+->execute();
+
+db_create_table('flood', array(
+  'fields' => array(
+    'fid' => array(
+      'type' => 'serial',
+      'not null' => TRUE,
+    ),
+    'event' => array(
+      'type' => 'varchar',
+      'length' => 64,
+      'not null' => TRUE,
+      'default' => '',
+    ),
+    'hostname' => array(
+      'type' => 'varchar',
+      'length' => 128,
+      'not null' => TRUE,
+      'default' => '',
+    ),
+    'timestamp' => array(
+      'type' => 'int',
+      'not null' => TRUE,
+      'default' => 0,
+    ),
+  ),
+  'primary key' => array(
+    'fid',
+  ),
+  'indexes' => array(
+    'allow' => array(
+      'event',
+      'hostname',
+      'timestamp',
+    ),
+  ),
+  'module' => 'system',
+  'name' => 'flood',
+));
+
+db_create_table('history', array(
+  'fields' => array(
+    'uid' => array(
+      'type' => 'int',
+      'not null' => TRUE,
+      'default' => 0,
+    ),
+    'nid' => array(
+      'type' => 'int',
+      'not null' => TRUE,
+      'default' => 0,
+    ),
+    'timestamp' => array(
+      'type' => 'int',
+      'not null' => TRUE,
+      'default' => 0,
+    ),
+  ),
+  'primary key' => array(
+    'uid',
+    'nid',
+  ),
+  'indexes' => array(
+    'nid' => array(
+      'nid',
+    ),
+  ),
+  'module' => 'system',
+  'name' => 'history',
+));
+
+db_create_table('menu_links', array(
+  'fields' => array(
+    'menu_name' => array(
+      'type' => 'varchar',
+      'length' => 32,
+      'not null' => TRUE,
+      'default' => '',
+    ),
+    'mlid' => array(
+      'type' => 'serial',
+      'unsigned' => TRUE,
+      'not null' => TRUE,
+    ),
+    'plid' => array(
+      'type' => 'int',
+      'unsigned' => TRUE,
+      'not null' => TRUE,
+      'default' => 0,
+    ),
+    'link_path' => array(
+      'type' => 'varchar',
+      'length' => 255,
+      'not null' => TRUE,
+      'default' => '',
+    ),
+    'router_path' => array(
+      'type' => 'varchar',
+      'length' => 255,
+      'not null' => TRUE,
+      'default' => '',
+    ),
+    'link_title' => array(
+      'type' => 'varchar',
+      'length' => 255,
+      'not null' => TRUE,
+      'default' => '',
+    ),
+    'options' => array(
+      'type' => 'text',
+      'not null' => FALSE,
+    ),
+    'module' => array(
+      'type' => 'varchar',
+      'length' => 255,
+      'not null' => TRUE,
+      'default' => 'system',
+    ),
+    'hidden' => array(
+      'type' => 'int',
+      'not null' => TRUE,
+      'default' => 0,
+      'size' => 'small',
+    ),
+    'external' => array(
+      'type' => 'int',
+      'not null' => TRUE,
+      'default' => 0,
+      'size' => 'small',
+    ),
+    'has_children' => array(
+      'type' => 'int',
+      'not null' => TRUE,
+      'default' => 0,
+      'size' => 'small',
+    ),
+    'expanded' => array(
+      'type' => 'int',
+      'not null' => TRUE,
+      'default' => 0,
+      'size' => 'small',
+    ),
+    'weight' => array(
+      'type' => 'int',
+      'not null' => TRUE,
+      'default' => 0,
+    ),
+    'depth' => array(
+      'type' => 'int',
+      'not null' => TRUE,
+      'default' => 0,
+      'size' => 'small',
+    ),
+    'customized' => array(
+      'type' => 'int',
+      'not null' => TRUE,
+      'default' => 0,
+      'size' => 'small',
+    ),
+    'p1' => array(
+      'type' => 'int',
+      'unsigned' => TRUE,
+      'not null' => TRUE,
+      'default' => 0,
+    ),
+    'p2' => array(
+      'type' => 'int',
+      'unsigned' => TRUE,
+      'not null' => TRUE,
+      'default' => 0,
+    ),
+    'p3' => array(
+      'type' => 'int',
+      'unsigned' => TRUE,
+      'not null' => TRUE,
+      'default' => 0,
+    ),
+    'p4' => array(
+      'type' => 'int',
+      'unsigned' => TRUE,
+      'not null' => TRUE,
+      'default' => 0,
+    ),
+    'p5' => array(
+      'type' => 'int',
+      'unsigned' => TRUE,
+      'not null' => TRUE,
+      'default' => 0,
+    ),
+    'p6' => array(
+      'type' => 'int',
+      'unsigned' => TRUE,
+      'not null' => TRUE,
+      'default' => 0,
+    ),
+    'p7' => array(
+      'type' => 'int',
+      'unsigned' => TRUE,
+      'not null' => TRUE,
+      'default' => 0,
+    ),
+    'p8' => array(
+      'type' => 'int',
+      'unsigned' => TRUE,
+      'not null' => TRUE,
+      'default' => 0,
+    ),
+    'p9' => array(
+      'type' => 'int',
+      'unsigned' => TRUE,
+      'not null' => TRUE,
+      'default' => 0,
+    ),
+    'updated' => array(
+      'type' => 'int',
+      'not null' => TRUE,
+      'default' => 0,
+      'size' => 'small',
+    ),
+  ),
+  'indexes' => array(
+    'path_menu' => array(
+      array(
+        'link_path',
+        128,
+      ),
+      'menu_name',
+    ),
+    'menu_plid_expand_child' => array(
+      'menu_name',
+      'plid',
+      'expanded',
+      'has_children',
+    ),
+    'menu_parents' => array(
+      'menu_name',
+      'p1',
+      'p2',
+      'p3',
+      'p4',
+      'p5',
+      'p6',
+      'p7',
+      'p8',
+      'p9',
+    ),
+    'router_path' => array(
+      array(
+        'router_path',
+        128,
+      ),
+    ),
+  ),
+  'primary key' => array(
+    'mlid',
+  ),
+  'module' => 'system',
+  'name' => 'menu_links',
+));
+db_insert('menu_links')->fields(array(
+  'menu_name',
+  'mlid',
+  'plid',
+  'link_path',
+  'router_path',
+  'link_title',
+  'options',
+  'module',
+  'hidden',
+  'external',
+  'has_children',
+  'expanded',
+  'weight',
+  'depth',
+  'customized',
+  'p1',
+  'p2',
+  'p3',
+  'p4',
+  'p5',
+  'p6',
+  'p7',
+  'p8',
+  'p9',
+  'updated',
+))
+->values(array(
+  'menu_name' => 'navigation',
+  'mlid' => '1',
+  'plid' => '0',
+  'link_path' => 'batch',
+  'router_path' => 'batch',
+  'link_title' => '',
+  'options' => 'a:0:{}',
+  'module' => 'system',
+  'hidden' => '-1',
+  'external' => '0',
+  'has_children' => '0',
+  'expanded' => '0',
+  'weight' => '0',
+  'depth' => '1',
+  'customized' => '0',
+  'p1' => '1',
+  'p2' => '0',
+  'p3' => '0',
+  'p4' => '0',
+  'p5' => '0',
+  'p6' => '0',
+  'p7' => '0',
+  'p8' => '0',
+  'p9' => '0',
+  'updated' => '0',
+))
+->values(array(
+  'menu_name' => 'navigation',
+  'mlid' => '2',
+  'plid' => '0',
+  'link_path' => 'admin',
+  'router_path' => 'admin',
+  'link_title' => 'Administer',
+  'options' => 'a:0:{}',
+  'module' => 'system',
+  'hidden' => '0',
+  'external' => '0',
+  'has_children' => '1',
+  'expanded' => '0',
+  'weight' => '9',
+  'depth' => '1',
+  'customized' => '0',
+  'p1' => '2',
+  'p2' => '0',
+  'p3' => '0',
+  'p4' => '0',
+  'p5' => '0',
+  'p6' => '0',
+  'p7' => '0',
+  'p8' => '0',
+  'p9' => '0',
+  'updated' => '0',
+))
+->values(array(
+  'menu_name' => 'navigation',
+  'mlid' => '3',
+  'plid' => '0',
+  'link_path' => 'node',
+  'router_path' => 'node',
+  'link_title' => 'Content',
+  'options' => 'a:0:{}',
+  'module' => 'system',
+  'hidden' => '-1',
+  'external' => '0',
+  'has_children' => '0',
+  'expanded' => '0',
+  'weight' => '0',
+  'depth' => '1',
+  'customized' => '0',
+  'p1' => '3',
+  'p2' => '0',
+  'p3' => '0',
+  'p4' => '0',
+  'p5' => '0',
+  'p6' => '0',
+  'p7' => '0',
+  'p8' => '0',
+  'p9' => '0',
+  'updated' => '0',
+))
+->values(array(
+  'menu_name' => 'navigation',
+  'mlid' => '4',
+  'plid' => '0',
+  'link_path' => 'logout',
+  'router_path' => 'logout',
+  'link_title' => 'Log out',
+  'options' => 'a:0:{}',
+  'module' => 'system',
+  'hidden' => '0',
+  'external' => '0',
+  'has_children' => '0',
+  'expanded' => '0',
+  'weight' => '10',
+  'depth' => '1',
+  'customized' => '0',
+  'p1' => '4',
+  'p2' => '0',
+  'p3' => '0',
+  'p4' => '0',
+  'p5' => '0',
+  'p6' => '0',
+  'p7' => '0',
+  'p8' => '0',
+  'p9' => '0',
+  'updated' => '0',
+))
+->values(array(
+  'menu_name' => 'navigation',
+  'mlid' => '5',
+  'plid' => '0',
+  'link_path' => 'rss.xml',
+  'router_path' => 'rss.xml',
+  'link_title' => 'RSS feed',
+  'options' => 'a:0:{}',
+  'module' => 'system',
+  'hidden' => '-1',
+  'external' => '0',
+  'has_children' => '0',
+  'expanded' => '0',
+  'weight' => '0',
+  'depth' => '1',
+  'customized' => '0',
+  'p1' => '5',
+  'p2' => '0',
+  'p3' => '0',
+  'p4' => '0',
+  'p5' => '0',
+  'p6' => '0',
+  'p7' => '0',
+  'p8' => '0',
+  'p9' => '0',
+  'updated' => '0',
+))
+->values(array(
+  'menu_name' => 'navigation',
+  'mlid' => '6',
+  'plid' => '0',
+  'link_path' => 'user',
+  'router_path' => 'user',
+  'link_title' => 'User account',
+  'options' => 'a:0:{}',
+  'module' => 'system',
+  'hidden' => '-1',
+  'external' => '0',
+  'has_children' => '0',
+  'expanded' => '0',
+  'weight' => '0',
+  'depth' => '1',
+  'customized' => '0',
+  'p1' => '6',
+  'p2' => '0',
+  'p3' => '0',
+  'p4' => '0',
+  'p5' => '0',
+  'p6' => '0',
+  'p7' => '0',
+  'p8' => '0',
+  'p9' => '0',
+  'updated' => '0',
+))
+->values(array(
+  'menu_name' => 'navigation',
+  'mlid' => '7',
+  'plid' => '0',
+  'link_path' => 'node/%',
+  'router_path' => 'node/%',
+  'link_title' => '',
+  'options' => 'a:0:{}',
+  'module' => 'system',
+  'hidden' => '-1',
+  'external' => '0',
+  'has_children' => '0',
+  'expanded' => '0',
+  'weight' => '0',
+  'depth' => '1',
+  'customized' => '0',
+  'p1' => '7',
+  'p2' => '0',
+  'p3' => '0',
+  'p4' => '0',
+  'p5' => '0',
+  'p6' => '0',
+  'p7' => '0',
+  'p8' => '0',
+  'p9' => '0',
+  'updated' => '0',
+))
+->values(array(
+  'menu_name' => 'navigation',
+  'mlid' => '8',
+  'plid' => '2',
+  'link_path' => 'admin/compact',
+  'router_path' => 'admin/compact',
+  'link_title' => 'Compact mode',
+  'options' => 'a:0:{}',
+  'module' => 'system',
+  'hidden' => '-1',
+  'external' => '0',
+  'has_children' => '0',
+  'expanded' => '0',
+  'weight' => '0',
+  'depth' => '2',
+  'customized' => '0',
+  'p1' => '2',
+  'p2' => '8',
+  'p3' => '0',
+  'p4' => '0',
+  'p5' => '0',
+  'p6' => '0',
+  'p7' => '0',
+  'p8' => '0',
+  'p9' => '0',
+  'updated' => '0',
+))
+->values(array(
+  'menu_name' => 'navigation',
+  'mlid' => '9',
+  'plid' => '0',
+  'link_path' => 'filter/tips',
+  'router_path' => 'filter/tips',
+  'link_title' => 'Compose tips',
+  'options' => 'a:0:{}',
+  'module' => 'system',
+  'hidden' => '1',
+  'external' => '0',
+  'has_children' => '0',
+  'expanded' => '0',
+  'weight' => '0',
+  'depth' => '1',
+  'customized' => '0',
+  'p1' => '9',
+  'p2' => '0',
+  'p3' => '0',
+  'p4' => '0',
+  'p5' => '0',
+  'p6' => '0',
+  'p7' => '0',
+  'p8' => '0',
+  'p9' => '0',
+  'updated' => '0',
+))
+->values(array(
+  'menu_name' => 'navigation',
+  'mlid' => '10',
+  'plid' => '2',
+  'link_path' => 'admin/content',
+  'router_path' => 'admin/content',
+  'link_title' => 'Content management',
+  'options' => "a:1:{s:10:\"attributes\";a:1:{s:5:\"title\";s:27:\"Manage your site's content.\";}}",
+  'module' => 'system',
+  'hidden' => '0',
+  'external' => '0',
+  'has_children' => '1',
+  'expanded' => '0',
+  'weight' => '-10',
+  'depth' => '2',
+  'customized' => '0',
+  'p1' => '2',
+  'p2' => '10',
+  'p3' => '0',
+  'p4' => '0',
+  'p5' => '0',
+  'p6' => '0',
+  'p7' => '0',
+  'p8' => '0',
+  'p9' => '0',
+  'updated' => '0',
+))
+->values(array(
+  'menu_name' => 'navigation',
+  'mlid' => '11',
+  'plid' => '0',
+  'link_path' => 'node/add',
+  'router_path' => 'node/add',
+  'link_title' => 'Create content',
+  'options' => 'a:0:{}',
+  'module' => 'system',
+  'hidden' => '0',
+  'external' => '0',
+  'has_children' => '1',
+  'expanded' => '0',
+  'weight' => '1',
+  'depth' => '1',
+  'customized' => '0',
+  'p1' => '11',
+  'p2' => '0',
+  'p3' => '0',
+  'p4' => '0',
+  'p5' => '0',
+  'p6' => '0',
+  'p7' => '0',
+  'p8' => '0',
+  'p9' => '0',
+  'updated' => '0',
+))
+->values(array(
+  'menu_name' => 'navigation',
+  'mlid' => '12',
+  'plid' => '0',
+  'link_path' => 'system/files',
+  'router_path' => 'system/files',
+  'link_title' => 'File download',
+  'options' => 'a:0:{}',
+  'module' => 'system',
+  'hidden' => '-1',
+  'external' => '0',
+  'has_children' => '0',
+  'expanded' => '0',
+  'weight' => '0',
+  'depth' => '1',
+  'customized' => '0',
+  'p1' => '12',
+  'p2' => '0',
+  'p3' => '0',
+  'p4' => '0',
+  'p5' => '0',
+  'p6' => '0',
+  'p7' => '0',
+  'p8' => '0',
+  'p9' => '0',
+  'updated' => '0',
+))
+->values(array(
+  'menu_name' => 'navigation',
+  'mlid' => '13',
+  'plid' => '2',
+  'link_path' => 'admin/reports',
+  'router_path' => 'admin/reports',
+  'link_title' => 'Reports',
+  'options' => 'a:1:{s:10:"attributes";a:1:{s:5:"title";s:59:"View reports from system logs and other status information.";}}',
+  'module' => 'system',
+  'hidden' => '0',
+  'external' => '0',
+  'has_children' => '1',
+  'expanded' => '0',
+  'weight' => '5',
+  'depth' => '2',
+  'customized' => '0',
+  'p1' => '2',
+  'p2' => '13',
+  'p3' => '0',
+  'p4' => '0',
+  'p5' => '0',
+  'p6' => '0',
+  'p7' => '0',
+  'p8' => '0',
+  'p9' => '0',
+  'updated' => '0',
+))
+->values(array(
+  'menu_name' => 'navigation',
+  'mlid' => '14',
+  'plid' => '2',
+  'link_path' => 'admin/build',
+  'router_path' => 'admin/build',
+  'link_title' => 'Site building',
+  'options' => 'a:1:{s:10:"attributes";a:1:{s:5:"title";s:38:"Control how your site looks and feels.";}}',
+  'module' => 'system',
+  'hidden' => '0',
+  'external' => '0',
+  'has_children' => '1',
+  'expanded' => '0',
+  'weight' => '-10',
+  'depth' => '2',
+  'customized' => '0',
+  'p1' => '2',
+  'p2' => '14',
+  'p3' => '0',
+  'p4' => '0',
+  'p5' => '0',
+  'p6' => '0',
+  'p7' => '0',
+  'p8' => '0',
+  'p9' => '0',
+  'updated' => '0',
+))
+->values(array(
+  'menu_name' => 'navigation',
+  'mlid' => '15',
+  'plid' => '2',
+  'link_path' => 'admin/settings',
+  'router_path' => 'admin/settings',
+  'link_title' => 'Site configuration',
+  'options' => 'a:1:{s:10:"attributes";a:1:{s:5:"title";s:40:"Adjust basic site configuration options.";}}',
+  'module' => 'system',
+  'hidden' => '0',
+  'external' => '0',
+  'has_children' => '1',
+  'expanded' => '0',
+  'weight' => '-5',
+  'depth' => '2',
+  'customized' => '0',
+  'p1' => '2',
+  'p2' => '15',
+  'p3' => '0',
+  'p4' => '0',
+  'p5' => '0',
+  'p6' => '0',
+  'p7' => '0',
+  'p8' => '0',
+  'p9' => '0',
+  'updated' => '0',
+))
+->values(array(
+  'menu_name' => 'navigation',
+  'mlid' => '16',
+  'plid' => '0',
+  'link_path' => 'user/autocomplete',
+  'router_path' => 'user/autocomplete',
+  'link_title' => 'User autocomplete',
+  'options' => 'a:0:{}',
+  'module' => 'system',
+  'hidden' => '-1',
+  'external' => '0',
+  'has_children' => '0',
+  'expanded' => '0',
+  'weight' => '0',
+  'depth' => '1',
+  'customized' => '0',
+  'p1' => '16',
+  'p2' => '0',
+  'p3' => '0',
+  'p4' => '0',
+  'p5' => '0',
+  'p6' => '0',
+  'p7' => '0',
+  'p8' => '0',
+  'p9' => '0',
+  'updated' => '0',
+))
+->values(array(
+  'menu_name' => 'navigation',
+  'mlid' => '17',
+  'plid' => '2',
+  'link_path' => 'admin/user',
+  'router_path' => 'admin/user',
+  'link_title' => 'User management',
+  'options' => "a:1:{s:10:\"attributes\";a:1:{s:5:\"title\";s:61:\"Manage your site's users, groups and access to site features.\";}}",
+  'module' => 'system',
+  'hidden' => '0',
+  'external' => '0',
+  'has_children' => '1',
+  'expanded' => '0',
+  'weight' => '0',
+  'depth' => '2',
+  'customized' => '0',
+  'p1' => '2',
+  'p2' => '17',
+  'p3' => '0',
+  'p4' => '0',
+  'p5' => '0',
+  'p6' => '0',
+  'p7' => '0',
+  'p8' => '0',
+  'p9' => '0',
+  'updated' => '0',
+))
+->values(array(
+  'menu_name' => 'navigation',
+  'mlid' => '18',
+  'plid' => '0',
+  'link_path' => 'user/%',
+  'router_path' => 'user/%',
+  'link_title' => 'My account',
+  'options' => 'a:0:{}',
+  'module' => 'system',
+  'hidden' => '0',
+  'external' => '0',
+  'has_children' => '0',
+  'expanded' => '0',
+  'weight' => '0',
+  'depth' => '1',
+  'customized' => '0',
+  'p1' => '18',
+  'p2' => '0',
+  'p3' => '0',
+  'p4' => '0',
+  'p5' => '0',
+  'p6' => '0',
+  'p7' => '0',
+  'p8' => '0',
+  'p9' => '0',
+  'updated' => '0',
+))
+->values(array(
+  'menu_name' => 'navigation',
+  'mlid' => '19',
+  'plid' => '17',
+  'link_path' => 'admin/user/rules',
+  'router_path' => 'admin/user/rules',
+  'link_title' => 'Access rules',
+  'options' => 'a:1:{s:10:"attributes";a:1:{s:5:"title";s:80:"List and create rules to disallow usernames, e-mail addresses, and IP addresses.";}}',
+  'module' => 'system',
+  'hidden' => '0',
+  'external' => '0',
+  'has_children' => '0',
+  'expanded' => '0',
+  'weight' => '0',
+  'depth' => '3',
+  'customized' => '0',
+  'p1' => '2',
+  'p2' => '17',
+  'p3' => '19',
+  'p4' => '0',
+  'p5' => '0',
+  'p6' => '0',
+  'p7' => '0',
+  'p8' => '0',
+  'p9' => '0',
+  'updated' => '0',
+))
+->values(array(
+  'menu_name' => 'navigation',
+  'mlid' => '20',
+  'plid' => '15',
+  'link_path' => 'admin/settings/actions',
+  'router_path' => 'admin/settings/actions',
+  'link_title' => 'Actions',
+  'options' => 'a:1:{s:10:"attributes";a:1:{s:5:"title";s:41:"Manage the actions defined for your site.";}}',
+  'module' => 'system',
+  'hidden' => '0',
+  'external' => '0',
+  'has_children' => '0',
+  'expanded' => '0',
+  'weight' => '0',
+  'depth' => '3',
+  'customized' => '0',
+  'p1' => '2',
+  'p2' => '15',
+  'p3' => '20',
+  'p4' => '0',
+  'p5' => '0',
+  'p6' => '0',
+  'p7' => '0',
+  'p8' => '0',
+  'p9' => '0',
+  'updated' => '0',
+))
+->values(array(
+  'menu_name' => 'navigation',
+  'mlid' => '21',
+  'plid' => '15',
+  'link_path' => 'admin/settings/admin',
+  'router_path' => 'admin/settings/admin',
+  'link_title' => 'Administration theme',
+  'options' => 'a:1:{s:10:"attributes";a:1:{s:5:"title";s:55:"Settings for how your administrative pages should look.";}}',
+  'module' => 'system',
+  'hidden' => '0',
+  'external' => '0',
+  'has_children' => '0',
+  'expanded' => '0',
+  'weight' => '0',
+  'depth' => '3',
+  'customized' => '0',
+  'p1' => '2',
+  'p2' => '15',
+  'p3' => '21',
+  'p4' => '0',
+  'p5' => '0',
+  'p6' => '0',
+  'p7' => '0',
+  'p8' => '0',
+  'p9' => '0',
+  'updated' => '0',
+))
+->values(array(
+  'menu_name' => 'navigation',
+  'mlid' => '22',
+  'plid' => '14',
+  'link_path' => 'admin/build/block',
+  'router_path' => 'admin/build/block',
+  'link_title' => 'Blocks',
+  'options' => "a:1:{s:10:\"attributes\";a:1:{s:5:\"title\";s:79:\"Configure what block content appears in your site's sidebars and other regions.\";}}",
+  'module' => 'system',
+  'hidden' => '0',
+  'external' => '0',
+  'has_children' => '0',
+  'expanded' => '0',
+  'weight' => '0',
+  'depth' => '3',
+  'customized' => '0',
+  'p1' => '2',
+  'p2' => '14',
+  'p3' => '22',
+  'p4' => '0',
+  'p5' => '0',
+  'p6' => '0',
+  'p7' => '0',
+  'p8' => '0',
+  'p9' => '0',
+  'updated' => '0',
+))
+->values(array(
+  'menu_name' => 'navigation',
+  'mlid' => '23',
+  'plid' => '15',
+  'link_path' => 'admin/settings/clean-urls',
+  'router_path' => 'admin/settings/clean-urls',
+  'link_title' => 'Clean URLs',
+  'options' => 'a:1:{s:10:"attributes";a:1:{s:5:"title";s:43:"Enable or disable clean URLs for your site.";}}',
+  'module' => 'system',
+  'hidden' => '0',
+  'external' => '0',
+  'has_children' => '0',
+  'expanded' => '0',
+  'weight' => '0',
+  'depth' => '3',
+  'customized' => '0',
+  'p1' => '2',
+  'p2' => '15',
+  'p3' => '23',
+  'p4' => '0',
+  'p5' => '0',
+  'p6' => '0',
+  'p7' => '0',
+  'p8' => '0',
+  'p9' => '0',
+  'updated' => '0',
+))
+->values(array(
+  'menu_name' => 'navigation',
+  'mlid' => '24',
+  'plid' => '10',
+  'link_path' => 'admin/content/node',
+  'router_path' => 'admin/content/node',
+  'link_title' => 'Content',
+  'options' => "a:1:{s:10:\"attributes\";a:1:{s:5:\"title\";s:43:\"View, edit, and delete your site's content.\";}}",
+  'module' => 'system',
+  'hidden' => '0',
+  'external' => '0',
+  'has_children' => '0',
+  'expanded' => '0',
+  'weight' => '0',
+  'depth' => '3',
+  'customized' => '0',
+  'p1' => '2',
+  'p2' => '10',
+  'p3' => '24',
+  'p4' => '0',
+  'p5' => '0',
+  'p6' => '0',
+  'p7' => '0',
+  'p8' => '0',
+  'p9' => '0',
+  'updated' => '0',
+))
+->values(array(
+  'menu_name' => 'navigation',
+  'mlid' => '25',
+  'plid' => '10',
+  'link_path' => 'admin/content/types',
+  'router_path' => 'admin/content/types',
+  'link_title' => 'Content types',
+  'options' => 'a:1:{s:10:"attributes";a:1:{s:5:"title";s:82:"Manage posts by content type, including default status, front page promotion, etc.";}}',
+  'module' => 'system',
+  'hidden' => '0',
+  'external' => '0',
+  'has_children' => '0',
+  'expanded' => '0',
+  'weight' => '0',
+  'depth' => '3',
+  'customized' => '0',
+  'p1' => '2',
+  'p2' => '10',
+  'p3' => '25',
+  'p4' => '0',
+  'p5' => '0',
+  'p6' => '0',
+  'p7' => '0',
+  'p8' => '0',
+  'p9' => '0',
+  'updated' => '0',
+))
+->values(array(
+  'menu_name' => 'navigation',
+  'mlid' => '26',
+  'plid' => '15',
+  'link_path' => 'admin/settings/date-time',
+  'router_path' => 'admin/settings/date-time',
+  'link_title' => 'Date and time',
+  'options' => "a:1:{s:10:\"attributes\";a:1:{s:5:\"title\";s:89:\"Settings for how Drupal displays date and time, as well as the system's default timezone.\";}}",
+  'module' => 'system',
+  'hidden' => '0',
+  'external' => '0',
+  'has_children' => '0',
+  'expanded' => '0',
+  'weight' => '0',
+  'depth' => '3',
+  'customized' => '0',
+  'p1' => '2',
+  'p2' => '15',
+  'p3' => '26',
+  'p4' => '0',
+  'p5' => '0',
+  'p6' => '0',
+  'p7' => '0',
+  'p8' => '0',
+  'p9' => '0',
+  'updated' => '0',
+))
+->values(array(
+  'menu_name' => 'navigation',
+  'mlid' => '27',
+  'plid' => '0',
+  'link_path' => 'node/%/delete',
+  'router_path' => 'node/%/delete',
+  'link_title' => 'Delete',
+  'options' => 'a:0:{}',
+  'module' => 'system',
+  'hidden' => '-1',
+  'external' => '0',
+  'has_children' => '0',
+  'expanded' => '0',
+  'weight' => '1',
+  'depth' => '1',
+  'customized' => '0',
+  'p1' => '27',
+  'p2' => '0',
+  'p3' => '0',
+  'p4' => '0',
+  'p5' => '0',
+  'p6' => '0',
+  'p7' => '0',
+  'p8' => '0',
+  'p9' => '0',
+  'updated' => '0',
+))
+->values(array(
+  'menu_name' => 'navigation',
+  'mlid' => '28',
+  'plid' => '18',
+  'link_path' => 'user/%/delete',
+  'router_path' => 'user/%/delete',
+  'link_title' => 'Delete',
+  'options' => 'a:0:{}',
+  'module' => 'system',
+  'hidden' => '-1',
+  'external' => '0',
+  'has_children' => '0',
+  'expanded' => '0',
+  'weight' => '0',
+  'depth' => '2',
+  'customized' => '0',
+  'p1' => '18',
+  'p2' => '28',
+  'p3' => '0',
+  'p4' => '0',
+  'p5' => '0',
+  'p6' => '0',
+  'p7' => '0',
+  'p8' => '0',
+  'p9' => '0',
+  'updated' => '0',
+))
+->values(array(
+  'menu_name' => 'navigation',
+  'mlid' => '29',
+  'plid' => '15',
+  'link_path' => 'admin/settings/error-reporting',
+  'router_path' => 'admin/settings/error-reporting',
+  'link_title' => 'Error reporting',
+  'options' => 'a:1:{s:10:"attributes";a:1:{s:5:"title";s:93:"Control how Drupal deals with errors including 403/404 errors as well as PHP error reporting.";}}',
+  'module' => 'system',
+  'hidden' => '0',
+  'external' => '0',
+  'has_children' => '0',
+  'expanded' => '0',
+  'weight' => '0',
+  'depth' => '3',
+  'customized' => '0',
+  'p1' => '2',
+  'p2' => '15',
+  'p3' => '29',
+  'p4' => '0',
+  'p5' => '0',
+  'p6' => '0',
+  'p7' => '0',
+  'p8' => '0',
+  'p9' => '0',
+  'updated' => '0',
+))
+->values(array(
+  'menu_name' => 'navigation',
+  'mlid' => '30',
+  'plid' => '15',
+  'link_path' => 'admin/settings/file-system',
+  'router_path' => 'admin/settings/file-system',
+  'link_title' => 'File system',
+  'options' => 'a:1:{s:10:"attributes";a:1:{s:5:"title";s:68:"Tell Drupal where to store uploaded files and how they are accessed.";}}',
+  'module' => 'system',
+  'hidden' => '0',
+  'external' => '0',
+  'has_children' => '0',
+  'expanded' => '0',
+  'weight' => '0',
+  'depth' => '3',
+  'customized' => '0',
+  'p1' => '2',
+  'p2' => '15',
+  'p3' => '30',
+  'p4' => '0',
+  'p5' => '0',
+  'p6' => '0',
+  'p7' => '0',
+  'p8' => '0',
+  'p9' => '0',
+  'updated' => '0',
+))
+->values(array(
+  'menu_name' => 'navigation',
+  'mlid' => '31',
+  'plid' => '15',
+  'link_path' => 'admin/settings/image-toolkit',
+  'router_path' => 'admin/settings/image-toolkit',
+  'link_title' => 'Image toolkit',
+  'options' => 'a:1:{s:10:"attributes";a:1:{s:5:"title";s:74:"Choose which image toolkit to use if you have installed optional toolkits.";}}',
+  'module' => 'system',
+  'hidden' => '0',
+  'external' => '0',
+  'has_children' => '0',
+  'expanded' => '0',
+  'weight' => '0',
+  'depth' => '3',
+  'customized' => '0',
+  'p1' => '2',
+  'p2' => '15',
+  'p3' => '31',
+  'p4' => '0',
+  'p5' => '0',
+  'p6' => '0',
+  'p7' => '0',
+  'p8' => '0',
+  'p9' => '0',
+  'updated' => '0',
+))
+->values(array(
+  'menu_name' => 'navigation',
+  'mlid' => '32',
+  'plid' => '15',
+  'link_path' => 'admin/settings/filters',
+  'router_path' => 'admin/settings/filters',
+  'link_title' => 'Input formats',
+  'options' => 'a:1:{s:10:"attributes";a:1:{s:5:"title";s:127:"Configure how content input by users is filtered, including allowed HTML tags. Also allows enabling of module-provided filters.";}}',
+  'module' => 'system',
+  'hidden' => '0',
+  'external' => '0',
+  'has_children' => '0',
+  'expanded' => '0',
+  'weight' => '0',
+  'depth' => '3',
+  'customized' => '0',
+  'p1' => '2',
+  'p2' => '15',
+  'p3' => '32',
+  'p4' => '0',
+  'p5' => '0',
+  'p6' => '0',
+  'p7' => '0',
+  'p8' => '0',
+  'p9' => '0',
+  'updated' => '0',
+))
+->values(array(
+  'menu_name' => 'navigation',
+  'mlid' => '33',
+  'plid' => '15',
+  'link_path' => 'admin/settings/logging',
+  'router_path' => 'admin/settings/logging',
+  'link_title' => 'Logging and alerts',
+  'options' => "a:1:{s:10:\"attributes\";a:1:{s:5:\"title\";s:156:\"Settings for logging and alerts modules. Various modules can route Drupal's system events to different destination, such as syslog, database, email, ...etc.\";}}",
+  'module' => 'system',
+  'hidden' => '0',
+  'external' => '0',
+  'has_children' => '1',
+  'expanded' => '0',
+  'weight' => '0',
+  'depth' => '3',
+  'customized' => '0',
+  'p1' => '2',
+  'p2' => '15',
+  'p3' => '33',
+  'p4' => '0',
+  'p5' => '0',
+  'p6' => '0',
+  'p7' => '0',
+  'p8' => '0',
+  'p9' => '0',
+  'updated' => '0',
+))
+->values(array(
+  'menu_name' => 'navigation',
+  'mlid' => '34',
+  'plid' => '14',
+  'link_path' => 'admin/build/modules',
+  'router_path' => 'admin/build/modules',
+  'link_title' => 'Modules',
+  'options' => 'a:1:{s:10:"attributes";a:1:{s:5:"title";s:47:"Enable or disable add-on modules for your site.";}}',
+  'module' => 'system',
+  'hidden' => '0',
+  'external' => '0',
+  'has_children' => '0',
+  'expanded' => '0',
+  'weight' => '0',
+  'depth' => '3',
+  'customized' => '0',
+  'p1' => '2',
+  'p2' => '14',
+  'p3' => '34',
+  'p4' => '0',
+  'p5' => '0',
+  'p6' => '0',
+  'p7' => '0',
+  'p8' => '0',
+  'p9' => '0',
+  'updated' => '0',
+))
+->values(array(
+  'menu_name' => 'navigation',
+  'mlid' => '35',
+  'plid' => '15',
+  'link_path' => 'admin/settings/performance',
+  'router_path' => 'admin/settings/performance',
+  'link_title' => 'Performance',
+  'options' => 'a:1:{s:10:"attributes";a:1:{s:5:"title";s:101:"Enable or disable page caching for anonymous users and set CSS and JS bandwidth optimization options.";}}',
+  'module' => 'system',
+  'hidden' => '0',
+  'external' => '0',
+  'has_children' => '0',
+  'expanded' => '0',
+  'weight' => '0',
+  'depth' => '3',
+  'customized' => '0',
+  'p1' => '2',
+  'p2' => '15',
+  'p3' => '35',
+  'p4' => '0',
+  'p5' => '0',
+  'p6' => '0',
+  'p7' => '0',
+  'p8' => '0',
+  'p9' => '0',
+  'updated' => '0',
+))
+->values(array(
+  'menu_name' => 'navigation',
+  'mlid' => '36',
+  'plid' => '17',
+  'link_path' => 'admin/user/permissions',
+  'router_path' => 'admin/user/permissions',
+  'link_title' => 'Permissions',
+  'options' => 'a:1:{s:10:"attributes";a:1:{s:5:"title";s:64:"Determine access to features by selecting permissions for roles.";}}',
+  'module' => 'system',
+  'hidden' => '0',
+  'external' => '0',
+  'has_children' => '0',
+  'expanded' => '0',
+  'weight' => '0',
+  'depth' => '3',
+  'customized' => '0',
+  'p1' => '2',
+  'p2' => '17',
+  'p3' => '36',
+  'p4' => '0',
+  'p5' => '0',
+  'p6' => '0',
+  'p7' => '0',
+  'p8' => '0',
+  'p9' => '0',
+  'updated' => '0',
+))
+->values(array(
+  'menu_name' => 'navigation',
+  'mlid' => '37',
+  'plid' => '10',
+  'link_path' => 'admin/content/node-settings',
+  'router_path' => 'admin/content/node-settings',
+  'link_title' => 'Post settings',
+  'options' => 'a:1:{s:10:"attributes";a:1:{s:5:"title";s:126:"Control posting behavior, such as teaser length, requiring previews before posting, and the number of posts on the front page.";}}',
+  'module' => 'system',
+  'hidden' => '0',
+  'external' => '0',
+  'has_children' => '0',
+  'expanded' => '0',
+  'weight' => '0',
+  'depth' => '3',
+  'customized' => '0',
+  'p1' => '2',
+  'p2' => '10',
+  'p3' => '37',
+  'p4' => '0',
+  'p5' => '0',
+  'p6' => '0',
+  'p7' => '0',
+  'p8' => '0',
+  'p9' => '0',
+  'updated' => '0',
+))
+->values(array(
+  'menu_name' => 'navigation',
+  'mlid' => '38',
+  'plid' => '10',
+  'link_path' => 'admin/content/rss-publishing',
+  'router_path' => 'admin/content/rss-publishing',
+  'link_title' => 'RSS publishing',
+  'options' => 'a:1:{s:10:"attributes";a:1:{s:5:"title";s:92:"Configure the number of items per feed and whether feeds should be titles/teasers/full-text.";}}',
+  'module' => 'system',
+  'hidden' => '0',
+  'external' => '0',
+  'has_children' => '0',
+  'expanded' => '0',
+  'weight' => '0',
+  'depth' => '3',
+  'customized' => '0',
+  'p1' => '2',
+  'p2' => '10',
+  'p3' => '38',
+  'p4' => '0',
+  'p5' => '0',
+  'p6' => '0',
+  'p7' => '0',
+  'p8' => '0',
+  'p9' => '0',
+  'updated' => '0',
+))
+->values(array(
+  'menu_name' => 'navigation',
+  'mlid' => '39',
+  'plid' => '13',
+  'link_path' => 'admin/reports/dblog',
+  'router_path' => 'admin/reports/dblog',
+  'link_title' => 'Recent log entries',
+  'options' => 'a:1:{s:10:"attributes";a:1:{s:5:"title";s:43:"View events that have recently been logged.";}}',
+  'module' => 'system',
+  'hidden' => '0',
+  'external' => '0',
+  'has_children' => '0',
+  'expanded' => '0',
+  'weight' => '-1',
+  'depth' => '3',
+  'customized' => '0',
+  'p1' => '2',
+  'p2' => '13',
+  'p3' => '39',
+  'p4' => '0',
+  'p5' => '0',
+  'p6' => '0',
+  'p7' => '0',
+  'p8' => '0',
+  'p9' => '0',
+  'updated' => '0',
+))
+->values(array(
+  'menu_name' => 'navigation',
+  'mlid' => '40',
+  'plid' => '17',
+  'link_path' => 'admin/user/roles',
+  'router_path' => 'admin/user/roles',
+  'link_title' => 'Roles',
+  'options' => 'a:1:{s:10:"attributes";a:1:{s:5:"title";s:30:"List, edit, or add user roles.";}}',
+  'module' => 'system',
+  'hidden' => '0',
+  'external' => '0',
+  'has_children' => '0',
+  'expanded' => '0',
+  'weight' => '0',
+  'depth' => '3',
+  'customized' => '0',
+  'p1' => '2',
+  'p2' => '17',
+  'p3' => '40',
+  'p4' => '0',
+  'p5' => '0',
+  'p6' => '0',
+  'p7' => '0',
+  'p8' => '0',
+  'p9' => '0',
+  'updated' => '0',
+))
+->values(array(
+  'menu_name' => 'navigation',
+  'mlid' => '41',
+  'plid' => '15',
+  'link_path' => 'admin/settings/site-information',
+  'router_path' => 'admin/settings/site-information',
+  'link_title' => 'Site information',
+  'options' => 'a:1:{s:10:"attributes";a:1:{s:5:"title";s:107:"Change basic site information, such as the site name, slogan, e-mail address, mission, front page and more.";}}',
+  'module' => 'system',
+  'hidden' => '0',
+  'external' => '0',
+  'has_children' => '0',
+  'expanded' => '0',
+  'weight' => '0',
+  'depth' => '3',
+  'customized' => '0',
+  'p1' => '2',
+  'p2' => '15',
+  'p3' => '41',
+  'p4' => '0',
+  'p5' => '0',
+  'p6' => '0',
+  'p7' => '0',
+  'p8' => '0',
+  'p9' => '0',
+  'updated' => '0',
+))
+->values(array(
+  'menu_name' => 'navigation',
+  'mlid' => '42',
+  'plid' => '15',
+  'link_path' => 'admin/settings/site-maintenance',
+  'router_path' => 'admin/settings/site-maintenance',
+  'link_title' => 'Site maintenance',
+  'options' => 'a:1:{s:10:"attributes";a:1:{s:5:"title";s:63:"Take the site off-line for maintenance or bring it back online.";}}',
+  'module' => 'system',
+  'hidden' => '0',
+  'external' => '0',
+  'has_children' => '0',
+  'expanded' => '0',
+  'weight' => '0',
+  'depth' => '3',
+  'customized' => '0',
+  'p1' => '2',
+  'p2' => '15',
+  'p3' => '42',
+  'p4' => '0',
+  'p5' => '0',
+  'p6' => '0',
+  'p7' => '0',
+  'p8' => '0',
+  'p9' => '0',
+  'updated' => '0',
+))
+->values(array(
+  'menu_name' => 'navigation',
+  'mlid' => '43',
+  'plid' => '13',
+  'link_path' => 'admin/reports/status',
+  'router_path' => 'admin/reports/status',
+  'link_title' => 'Status report',
+  'options' => "a:1:{s:10:\"attributes\";a:1:{s:5:\"title\";s:74:\"Get a status report about your site's operation and any detected problems.\";}}",
+  'module' => 'system',
+  'hidden' => '0',
+  'external' => '0',
+  'has_children' => '0',
+  'expanded' => '0',
+  'weight' => '10',
+  'depth' => '3',
+  'customized' => '0',
+  'p1' => '2',
+  'p2' => '13',
+  'p3' => '43',
+  'p4' => '0',
+  'p5' => '0',
+  'p6' => '0',
+  'p7' => '0',
+  'p8' => '0',
+  'p9' => '0',
+  'updated' => '0',
+))
+->values(array(
+  'menu_name' => 'navigation',
+  'mlid' => '44',
+  'plid' => '14',
+  'link_path' => 'admin/build/themes',
+  'router_path' => 'admin/build/themes',
+  'link_title' => 'Themes',
+  'options' => 'a:1:{s:10:"attributes";a:1:{s:5:"title";s:57:"Change which theme your site uses or allows users to set.";}}',
+  'module' => 'system',
+  'hidden' => '0',
+  'external' => '0',
+  'has_children' => '0',
+  'expanded' => '0',
+  'weight' => '0',
+  'depth' => '3',
+  'customized' => '0',
+  'p1' => '2',
+  'p2' => '14',
+  'p3' => '44',
+  'p4' => '0',
+  'p5' => '0',
+  'p6' => '0',
+  'p7' => '0',
+  'p8' => '0',
+  'p9' => '0',
+  'updated' => '0',
+))
+->values(array(
+  'menu_name' => 'navigation',
+  'mlid' => '45',
+  'plid' => '13',
+  'link_path' => 'admin/reports/access-denied',
+  'router_path' => 'admin/reports/access-denied',
+  'link_title' => "Top 'access denied' errors",
+  'options' => "a:1:{s:10:\"attributes\";a:1:{s:5:\"title\";s:35:\"View 'access denied' errors (403s).\";}}",
+  'module' => 'system',
+  'hidden' => '0',
+  'external' => '0',
+  'has_children' => '0',
+  'expanded' => '0',
+  'weight' => '0',
+  'depth' => '3',
+  'customized' => '0',
+  'p1' => '2',
+  'p2' => '13',
+  'p3' => '45',
+  'p4' => '0',
+  'p5' => '0',
+  'p6' => '0',
+  'p7' => '0',
+  'p8' => '0',
+  'p9' => '0',
+  'updated' => '0',
+))
+->values(array(
+  'menu_name' => 'navigation',
+  'mlid' => '46',
+  'plid' => '13',
+  'link_path' => 'admin/reports/page-not-found',
+  'router_path' => 'admin/reports/page-not-found',
+  'link_title' => "Top 'page not found' errors",
+  'options' => "a:1:{s:10:\"attributes\";a:1:{s:5:\"title\";s:36:\"View 'page not found' errors (404s).\";}}",
+  'module' => 'system',
+  'hidden' => '0',
+  'external' => '0',
+  'has_children' => '0',
+  'expanded' => '0',
+  'weight' => '0',
+  'depth' => '3',
+  'customized' => '0',
+  'p1' => '2',
+  'p2' => '13',
+  'p3' => '46',
+  'p4' => '0',
+  'p5' => '0',
+  'p6' => '0',
+  'p7' => '0',
+  'p8' => '0',
+  'p9' => '0',
+  'updated' => '0',
+))
+->values(array(
+  'menu_name' => 'navigation',
+  'mlid' => '47',
+  'plid' => '17',
+  'link_path' => 'admin/user/settings',
+  'router_path' => 'admin/user/settings',
+  'link_title' => 'User settings',
+  'options' => 'a:1:{s:10:"attributes";a:1:{s:5:"title";s:101:"Configure default behavior of users, including registration requirements, e-mails, and user pictures.";}}',
+  'module' => 'system',
+  'hidden' => '0',
+  'external' => '0',
+  'has_children' => '0',
+  'expanded' => '0',
+  'weight' => '0',
+  'depth' => '3',
+  'customized' => '0',
+  'p1' => '2',
+  'p2' => '17',
+  'p3' => '47',
+  'p4' => '0',
+  'p5' => '0',
+  'p6' => '0',
+  'p7' => '0',
+  'p8' => '0',
+  'p9' => '0',
+  'updated' => '0',
+))
+->values(array(
+  'menu_name' => 'navigation',
+  'mlid' => '48',
+  'plid' => '17',
+  'link_path' => 'admin/user/user',
+  'router_path' => 'admin/user/user',
+  'link_title' => 'Users',
+  'options' => 'a:1:{s:10:"attributes";a:1:{s:5:"title";s:26:"List, add, and edit users.";}}',
+  'module' => 'system',
+  'hidden' => '0',
+  'external' => '0',
+  'has_children' => '0',
+  'expanded' => '0',
+  'weight' => '0',
+  'depth' => '3',
+  'customized' => '0',
+  'p1' => '2',
+  'p2' => '17',
+  'p3' => '48',
+  'p4' => '0',
+  'p5' => '0',
+  'p6' => '0',
+  'p7' => '0',
+  'p8' => '0',
+  'p9' => '0',
+  'updated' => '0',
+))
+->values(array(
+  'menu_name' => 'navigation',
+  'mlid' => '49',
+  'plid' => '32',
+  'link_path' => 'admin/settings/filters/%',
+  'router_path' => 'admin/settings/filters/%',
+  'link_title' => '',
+  'options' => 'a:0:{}',
+  'module' => 'system',
+  'hidden' => '-1',
+  'external' => '0',
+  'has_children' => '0',
+  'expanded' => '0',
+  'weight' => '0',
+  'depth' => '4',
+  'customized' => '0',
+  'p1' => '2',
+  'p2' => '15',
+  'p3' => '32',
+  'p4' => '49',
+  'p5' => '0',
+  'p6' => '0',
+  'p7' => '0',
+  'p8' => '0',
+  'p9' => '0',
+  'updated' => '0',
+))
+->values(array(
+  'menu_name' => 'navigation',
+  'mlid' => '50',
+  'plid' => '23',
+  'link_path' => 'admin/settings/clean-urls/check',
+  'router_path' => 'admin/settings/clean-urls/check',
+  'link_title' => 'Clean URL check',
+  'options' => 'a:0:{}',
+  'module' => 'system',
+  'hidden' => '-1',
+  'external' => '0',
+  'has_children' => '0',
+  'expanded' => '0',
+  'weight' => '0',
+  'depth' => '4',
+  'customized' => '0',
+  'p1' => '2',
+  'p2' => '15',
+  'p3' => '23',
+  'p4' => '50',
+  'p5' => '0',
+  'p6' => '0',
+  'p7' => '0',
+  'p8' => '0',
+  'p9' => '0',
+  'updated' => '0',
+))
+->values(array(
+  'menu_name' => 'navigation',
+  'mlid' => '51',
+  'plid' => '20',
+  'link_path' => 'admin/settings/actions/configure',
+  'router_path' => 'admin/settings/actions/configure',
+  'link_title' => 'Configure an advanced action',
+  'options' => 'a:0:{}',
+  'module' => 'system',
+  'hidden' => '-1',
+  'external' => '0',
+  'has_children' => '0',
+  'expanded' => '0',
+  'weight' => '0',
+  'depth' => '4',
+  'customized' => '0',
+  'p1' => '2',
+  'p2' => '15',
+  'p3' => '20',
+  'p4' => '51',
+  'p5' => '0',
+  'p6' => '0',
+  'p7' => '0',
+  'p8' => '0',
+  'p9' => '0',
+  'updated' => '0',
+))
+->values(array(
+  'menu_name' => 'navigation',
+  'mlid' => '52',
+  'plid' => '22',
+  'link_path' => 'admin/build/block/configure',
+  'router_path' => 'admin/build/block/configure',
+  'link_title' => 'Configure block',
+  'options' => 'a:0:{}',
+  'module' => 'system',
+  'hidden' => '-1',
+  'external' => '0',
+  'has_children' => '0',
+  'expanded' => '0',
+  'weight' => '0',
+  'depth' => '4',
+  'customized' => '0',
+  'p1' => '2',
+  'p2' => '14',
+  'p3' => '22',
+  'p4' => '52',
+  'p5' => '0',
+  'p6' => '0',
+  'p7' => '0',
+  'p8' => '0',
+  'p9' => '0',
+  'updated' => '0',
+))
+->values(array(
+  'menu_name' => 'navigation',
+  'mlid' => '53',
+  'plid' => '33',
+  'link_path' => 'admin/settings/logging/dblog',
+  'router_path' => 'admin/settings/logging/dblog',
+  'link_title' => 'Database logging',
+  'options' => 'a:1:{s:10:"attributes";a:1:{s:5:"title";s:169:"Settings for logging to the Drupal database logs. This is the most common method for small to medium sites on shared hosting. The logs are viewable from the admin pages.";}}',
+  'module' => 'system',
+  'hidden' => '0',
+  'external' => '0',
+  'has_children' => '0',
+  'expanded' => '0',
+  'weight' => '0',
+  'depth' => '4',
+  'customized' => '0',
+  'p1' => '2',
+  'p2' => '15',
+  'p3' => '33',
+  'p4' => '53',
+  'p5' => '0',
+  'p6' => '0',
+  'p7' => '0',
+  'p8' => '0',
+  'p9' => '0',
+  'updated' => '0',
+))
+->values(array(
+  'menu_name' => 'navigation',
+  'mlid' => '54',
+  'plid' => '26',
+  'link_path' => 'admin/settings/date-time/lookup',
+  'router_path' => 'admin/settings/date-time/lookup',
+  'link_title' => 'Date and time lookup',
+  'options' => 'a:0:{}',
+  'module' => 'system',
+  'hidden' => '-1',
+  'external' => '0',
+  'has_children' => '0',
+  'expanded' => '0',
+  'weight' => '0',
+  'depth' => '4',
+  'customized' => '0',
+  'p1' => '2',
+  'p2' => '15',
+  'p3' => '26',
+  'p4' => '54',
+  'p5' => '0',
+  'p6' => '0',
+  'p7' => '0',
+  'p8' => '0',
+  'p9' => '0',
+  'updated' => '0',
+))
+->values(array(
+  'menu_name' => 'navigation',
+  'mlid' => '55',
+  'plid' => '22',
+  'link_path' => 'admin/build/block/delete',
+  'router_path' => 'admin/build/block/delete',
+  'link_title' => 'Delete block',
+  'options' => 'a:0:{}',
+  'module' => 'system',
+  'hidden' => '-1',
+  'external' => '0',
+  'has_children' => '0',
+  'expanded' => '0',
+  'weight' => '0',
+  'depth' => '4',
+  'customized' => '0',
+  'p1' => '2',
+  'p2' => '14',
+  'p3' => '22',
+  'p4' => '55',
+  'p5' => '0',
+  'p6' => '0',
+  'p7' => '0',
+  'p8' => '0',
+  'p9' => '0',
+  'updated' => '0',
+))
+->values(array(
+  'menu_name' => 'navigation',
+  'mlid' => '56',
+  'plid' => '32',
+  'link_path' => 'admin/settings/filters/delete',
+  'router_path' => 'admin/settings/filters/delete',
+  'link_title' => 'Delete input format',
+  'options' => 'a:0:{}',
+  'module' => 'system',
+  'hidden' => '-1',
+  'external' => '0',
+  'has_children' => '0',
+  'expanded' => '0',
+  'weight' => '0',
+  'depth' => '4',
+  'customized' => '0',
+  'p1' => '2',
+  'p2' => '15',
+  'p3' => '32',
+  'p4' => '56',
+  'p5' => '0',
+  'p6' => '0',
+  'p7' => '0',
+  'p8' => '0',
+  'p9' => '0',
+  'updated' => '0',
+))
+->values(array(
+  'menu_name' => 'navigation',
+  'mlid' => '57',
+  'plid' => '19',
+  'link_path' => 'admin/user/rules/delete',
+  'router_path' => 'admin/user/rules/delete',
+  'link_title' => 'Delete rule',
+  'options' => 'a:0:{}',
+  'module' => 'system',
+  'hidden' => '-1',
+  'external' => '0',
+  'has_children' => '0',
+  'expanded' => '0',
+  'weight' => '0',
+  'depth' => '4',
+  'customized' => '0',
+  'p1' => '2',
+  'p2' => '17',
+  'p3' => '19',
+  'p4' => '57',
+  'p5' => '0',
+  'p6' => '0',
+  'p7' => '0',
+  'p8' => '0',
+  'p9' => '0',
+  'updated' => '0',
+))
+->values(array(
+  'menu_name' => 'navigation',
+  'mlid' => '58',
+  'plid' => '13',
+  'link_path' => 'admin/reports/event/%',
+  'router_path' => 'admin/reports/event/%',
+  'link_title' => 'Details',
+  'options' => 'a:0:{}',
+  'module' => 'system',
+  'hidden' => '-1',
+  'external' => '0',
+  'has_children' => '0',
+  'expanded' => '0',
+  'weight' => '0',
+  'depth' => '3',
+  'customized' => '0',
+  'p1' => '2',
+  'p2' => '13',
+  'p3' => '58',
+  'p4' => '0',
+  'p5' => '0',
+  'p6' => '0',
+  'p7' => '0',
+  'p8' => '0',
+  'p9' => '0',
+  'updated' => '0',
+))
+->values(array(
+  'menu_name' => 'navigation',
+  'mlid' => '59',
+  'plid' => '40',
+  'link_path' => 'admin/user/roles/edit',
+  'router_path' => 'admin/user/roles/edit',
+  'link_title' => 'Edit role',
+  'options' => 'a:0:{}',
+  'module' => 'system',
+  'hidden' => '-1',
+  'external' => '0',
+  'has_children' => '0',
+  'expanded' => '0',
+  'weight' => '0',
+  'depth' => '4',
+  'customized' => '0',
+  'p1' => '2',
+  'p2' => '17',
+  'p3' => '40',
+  'p4' => '59',
+  'p5' => '0',
+  'p6' => '0',
+  'p7' => '0',
+  'p8' => '0',
+  'p9' => '0',
+  'updated' => '0',
+))
+->values(array(
+  'menu_name' => 'navigation',
+  'mlid' => '60',
+  'plid' => '19',
+  'link_path' => 'admin/user/rules/edit',
+  'router_path' => 'admin/user/rules/edit',
+  'link_title' => 'Edit rule',
+  'options' => 'a:0:{}',
+  'module' => 'system',
+  'hidden' => '-1',
+  'external' => '0',
+  'has_children' => '0',
+  'expanded' => '0',
+  'weight' => '0',
+  'depth' => '4',
+  'customized' => '0',
+  'p1' => '2',
+  'p2' => '17',
+  'p3' => '19',
+  'p4' => '60',
+  'p5' => '0',
+  'p6' => '0',
+  'p7' => '0',
+  'p8' => '0',
+  'p9' => '0',
+  'updated' => '0',
+))
+->values(array(
+  'menu_name' => 'navigation',
+  'mlid' => '61',
+  'plid' => '43',
+  'link_path' => 'admin/reports/status/php',
+  'router_path' => 'admin/reports/status/php',
+  'link_title' => 'PHP',
+  'options' => 'a:0:{}',
+  'module' => 'system',
+  'hidden' => '-1',
+  'external' => '0',
+  'has_children' => '0',
+  'expanded' => '0',
+  'weight' => '0',
+  'depth' => '4',
+  'customized' => '0',
+  'p1' => '2',
+  'p2' => '13',
+  'p3' => '43',
+  'p4' => '61',
+  'p5' => '0',
+  'p6' => '0',
+  'p7' => '0',
+  'p8' => '0',
+  'p9' => '0',
+  'updated' => '0',
+))
+->values(array(
+  'menu_name' => 'navigation',
+  'mlid' => '62',
+  'plid' => '37',
+  'link_path' => 'admin/content/node-settings/rebuild',
+  'router_path' => 'admin/content/node-settings/rebuild',
+  'link_title' => 'Rebuild permissions',
+  'options' => 'a:0:{}',
+  'module' => 'system',
+  'hidden' => '-1',
+  'external' => '0',
+  'has_children' => '0',
+  'expanded' => '0',
+  'weight' => '0',
+  'depth' => '4',
+  'customized' => '0',
+  'p1' => '2',
+  'p2' => '10',
+  'p3' => '37',
+  'p4' => '62',
+  'p5' => '0',
+  'p6' => '0',
+  'p7' => '0',
+  'p8' => '0',
+  'p9' => '0',
+  'updated' => '0',
+))
+->values(array(
+  'menu_name' => 'navigation',
+  'mlid' => '63',
+  'plid' => '20',
+  'link_path' => 'admin/settings/actions/orphan',
+  'router_path' => 'admin/settings/actions/orphan',
+  'link_title' => 'Remove orphans',
+  'options' => 'a:0:{}',
+  'module' => 'system',
+  'hidden' => '-1',
+  'external' => '0',
+  'has_children' => '0',
+  'expanded' => '0',
+  'weight' => '0',
+  'depth' => '4',
+  'customized' => '0',
+  'p1' => '2',
+  'p2' => '15',
+  'p3' => '20',
+  'p4' => '63',
+  'p5' => '0',
+  'p6' => '0',
+  'p7' => '0',
+  'p8' => '0',
+  'p9' => '0',
+  'updated' => '0',
+))
+->values(array(
+  'menu_name' => 'navigation',
+  'mlid' => '64',
+  'plid' => '43',
+  'link_path' => 'admin/reports/status/run-cron',
+  'router_path' => 'admin/reports/status/run-cron',
+  'link_title' => 'Run cron',
+  'options' => 'a:0:{}',
+  'module' => 'system',
+  'hidden' => '-1',
+  'external' => '0',
+  'has_children' => '0',
+  'expanded' => '0',
+  'weight' => '0',
+  'depth' => '4',
+  'customized' => '0',
+  'p1' => '2',
+  'p2' => '13',
+  'p3' => '43',
+  'p4' => '64',
+  'p5' => '0',
+  'p6' => '0',
+  'p7' => '0',
+  'p8' => '0',
+  'p9' => '0',
+  'updated' => '0',
+))
+->values(array(
+  'menu_name' => 'navigation',
+  'mlid' => '65',
+  'plid' => '43',
+  'link_path' => 'admin/reports/status/sql',
+  'router_path' => 'admin/reports/status/sql',
+  'link_title' => 'SQL',
+  'options' => 'a:0:{}',
+  'module' => 'system',
+  'hidden' => '-1',
+  'external' => '0',
+  'has_children' => '0',
+  'expanded' => '0',
+  'weight' => '0',
+  'depth' => '4',
+  'customized' => '0',
+  'p1' => '2',
+  'p2' => '13',
+  'p3' => '43',
+  'p4' => '65',
+  'p5' => '0',
+  'p6' => '0',
+  'p7' => '0',
+  'p8' => '0',
+  'p9' => '0',
+  'updated' => '0',
+))
+->values(array(
+  'menu_name' => 'navigation',
+  'mlid' => '66',
+  'plid' => '20',
+  'link_path' => 'admin/settings/actions/delete/%',
+  'router_path' => 'admin/settings/actions/delete/%',
+  'link_title' => 'Delete action',
+  'options' => 'a:1:{s:10:"attributes";a:1:{s:5:"title";s:17:"Delete an action.";}}',
+  'module' => 'system',
+  'hidden' => '-1',
+  'external' => '0',
+  'has_children' => '0',
+  'expanded' => '0',
+  'weight' => '0',
+  'depth' => '4',
+  'customized' => '0',
+  'p1' => '2',
+  'p2' => '15',
+  'p3' => '20',
+  'p4' => '66',
+  'p5' => '0',
+  'p6' => '0',
+  'p7' => '0',
+  'p8' => '0',
+  'p9' => '0',
+  'updated' => '0',
+))
+->values(array(
+  'menu_name' => 'navigation',
+  'mlid' => '67',
+  'plid' => '22',
+  'link_path' => 'admin/build/block/list/js',
+  'router_path' => 'admin/build/block/list/js',
+  'link_title' => 'JavaScript List Form',
+  'options' => 'a:0:{}',
+  'module' => 'system',
+  'hidden' => '-1',
+  'external' => '0',
+  'has_children' => '0',
+  'expanded' => '0',
+  'weight' => '0',
+  'depth' => '4',
+  'customized' => '0',
+  'p1' => '2',
+  'p2' => '14',
+  'p3' => '22',
+  'p4' => '67',
+  'p5' => '0',
+  'p6' => '0',
+  'p7' => '0',
+  'p8' => '0',
+  'p9' => '0',
+  'updated' => '0',
+))
+->values(array(
+  'menu_name' => 'navigation',
+  'mlid' => '68',
+  'plid' => '34',
+  'link_path' => 'admin/build/modules/list/confirm',
+  'router_path' => 'admin/build/modules/list/confirm',
+  'link_title' => 'List',
+  'options' => 'a:0:{}',
+  'module' => 'system',
+  'hidden' => '-1',
+  'external' => '0',
+  'has_children' => '0',
+  'expanded' => '0',
+  'weight' => '0',
+  'depth' => '4',
+  'customized' => '0',
+  'p1' => '2',
+  'p2' => '14',
+  'p3' => '34',
+  'p4' => '68',
+  'p5' => '0',
+  'p6' => '0',
+  'p7' => '0',
+  'p8' => '0',
+  'p9' => '0',
+  'updated' => '0',
+))
+->values(array(
+  'menu_name' => 'navigation',
+  'mlid' => '69',
+  'plid' => '0',
+  'link_path' => 'user/reset/%/%/%',
+  'router_path' => 'user/reset/%/%/%',
+  'link_title' => 'Reset password',
+  'options' => 'a:0:{}',
+  'module' => 'system',
+  'hidden' => '-1',
+  'external' => '0',
+  'has_children' => '0',
+  'expanded' => '0',
+  'weight' => '0',
+  'depth' => '1',
+  'customized' => '0',
+  'p1' => '69',
+  'p2' => '0',
+  'p3' => '0',
+  'p4' => '0',
+  'p5' => '0',
+  'p6' => '0',
+  'p7' => '0',
+  'p8' => '0',
+  'p9' => '0',
+  'updated' => '0',
+))
+->values(array(
+  'menu_name' => 'navigation',
+  'mlid' => '70',
+  'plid' => '34',
+  'link_path' => 'admin/build/modules/uninstall/confirm',
+  'router_path' => 'admin/build/modules/uninstall/confirm',
+  'link_title' => 'Uninstall',
+  'options' => 'a:0:{}',
+  'module' => 'system',
+  'hidden' => '-1',
+  'external' => '0',
+  'has_children' => '0',
+  'expanded' => '0',
+  'weight' => '0',
+  'depth' => '4',
+  'customized' => '0',
+  'p1' => '2',
+  'p2' => '14',
+  'p3' => '34',
+  'p4' => '70',
+  'p5' => '0',
+  'p6' => '0',
+  'p7' => '0',
+  'p8' => '0',
+  'p9' => '0',
+  'updated' => '0',
+))
+->values(array(
+  'menu_name' => 'navigation',
+  'mlid' => '71',
+  'plid' => '0',
+  'link_path' => 'node/%/revisions/%/delete',
+  'router_path' => 'node/%/revisions/%/delete',
+  'link_title' => 'Delete earlier revision',
+  'options' => 'a:0:{}',
+  'module' => 'system',
+  'hidden' => '-1',
+  'external' => '0',
+  'has_children' => '0',
+  'expanded' => '0',
+  'weight' => '0',
+  'depth' => '1',
+  'customized' => '0',
+  'p1' => '71',
+  'p2' => '0',
+  'p3' => '0',
+  'p4' => '0',
+  'p5' => '0',
+  'p6' => '0',
+  'p7' => '0',
+  'p8' => '0',
+  'p9' => '0',
+  'updated' => '0',
+))
+->values(array(
+  'menu_name' => 'navigation',
+  'mlid' => '72',
+  'plid' => '0',
+  'link_path' => 'node/%/revisions/%/revert',
+  'router_path' => 'node/%/revisions/%/revert',
+  'link_title' => 'Revert to earlier revision',
+  'options' => 'a:0:{}',
+  'module' => 'system',
+  'hidden' => '-1',
+  'external' => '0',
+  'has_children' => '0',
+  'expanded' => '0',
+  'weight' => '0',
+  'depth' => '1',
+  'customized' => '0',
+  'p1' => '72',
+  'p2' => '0',
+  'p3' => '0',
+  'p4' => '0',
+  'p5' => '0',
+  'p6' => '0',
+  'p7' => '0',
+  'p8' => '0',
+  'p9' => '0',
+  'updated' => '0',
+))
+->values(array(
+  'menu_name' => 'navigation',
+  'mlid' => '73',
+  'plid' => '0',
+  'link_path' => 'node/%/revisions/%/view',
+  'router_path' => 'node/%/revisions/%/view',
+  'link_title' => 'Revisions',
+  'options' => 'a:0:{}',
+  'module' => 'system',
+  'hidden' => '-1',
+  'external' => '0',
+  'has_children' => '0',
+  'expanded' => '0',
+  'weight' => '0',
+  'depth' => '1',
+  'customized' => '0',
+  'p1' => '73',
+  'p2' => '0',
+  'p3' => '0',
+  'p4' => '0',
+  'p5' => '0',
+  'p6' => '0',
+  'p7' => '0',
+  'p8' => '0',
+  'p9' => '0',
+  'updated' => '0',
+))
+->values(array(
+  'menu_name' => 'navigation',
+  'mlid' => '74',
+  'plid' => '13',
+  'link_path' => 'admin/reports/updates',
+  'router_path' => 'admin/reports/updates',
+  'link_title' => 'Available updates',
+  'options' => 'a:1:{s:10:"attributes";a:1:{s:5:"title";s:82:"Get a status report about available updates for your installed modules and themes.";}}',
+  'module' => 'system',
+  'hidden' => '0',
+  'external' => '0',
+  'has_children' => '0',
+  'expanded' => '0',
+  'weight' => '10',
+  'depth' => '3',
+  'customized' => '0',
+  'p1' => '2',
+  'p2' => '13',
+  'p3' => '74',
+  'p4' => '0',
+  'p5' => '0',
+  'p6' => '0',
+  'p7' => '0',
+  'p8' => '0',
+  'p9' => '0',
+  'updated' => '0',
+))
+->values(array(
+  'menu_name' => 'navigation',
+  'mlid' => '75',
+  'plid' => '11',
+  'link_path' => 'node/add/page',
+  'router_path' => 'node/add/page',
+  'link_title' => 'Page',
+  'options' => "a:1:{s:10:\"attributes\";a:1:{s:5:\"title\";s:296:\"A <em>page</em>, similar in form to a <em>story</em>, is a simple method for creating and displaying information that rarely changes, such as an \"About us\" section of a website. By default, a <em>page</em> entry does not allow visitor comments and is not featured on the site's initial home page.\";}}",
+  'module' => 'system',
+  'hidden' => '0',
+  'external' => '0',
+  'has_children' => '0',
+  'expanded' => '0',
+  'weight' => '0',
+  'depth' => '2',
+  'customized' => '0',
+  'p1' => '11',
+  'p2' => '75',
+  'p3' => '0',
+  'p4' => '0',
+  'p5' => '0',
+  'p6' => '0',
+  'p7' => '0',
+  'p8' => '0',
+  'p9' => '0',
+  'updated' => '0',
+))
+->values(array(
+  'menu_name' => 'navigation',
+  'mlid' => '76',
+  'plid' => '11',
+  'link_path' => 'node/add/story',
+  'router_path' => 'node/add/story',
+  'link_title' => 'Story',
+  'options' => "a:1:{s:10:\"attributes\";a:1:{s:5:\"title\";s:392:\"A <em>story</em>, similar in form to a <em>page</em>, is ideal for creating and displaying content that informs or engages website visitors. Press releases, site announcements, and informal blog-like entries may all be created with a <em>story</em> entry. By default, a <em>story</em> entry is automatically featured on the site's initial home page, and provides the ability to post comments.\";}}",
+  'module' => 'system',
+  'hidden' => '0',
+  'external' => '0',
+  'has_children' => '0',
+  'expanded' => '0',
+  'weight' => '0',
+  'depth' => '2',
+  'customized' => '0',
+  'p1' => '11',
+  'p2' => '76',
+  'p3' => '0',
+  'p4' => '0',
+  'p5' => '0',
+  'p6' => '0',
+  'p7' => '0',
+  'p8' => '0',
+  'p9' => '0',
+  'updated' => '0',
+))
+->values(array(
+  'menu_name' => 'navigation',
+  'mlid' => '77',
+  'plid' => '74',
+  'link_path' => 'admin/reports/updates/check',
+  'router_path' => 'admin/reports/updates/check',
+  'link_title' => 'Manual update check',
+  'options' => 'a:0:{}',
+  'module' => 'system',
+  'hidden' => '-1',
+  'external' => '0',
+  'has_children' => '0',
+  'expanded' => '0',
+  'weight' => '0',
+  'depth' => '4',
+  'customized' => '0',
+  'p1' => '2',
+  'p2' => '13',
+  'p3' => '74',
+  'p4' => '77',
+  'p5' => '0',
+  'p6' => '0',
+  'p7' => '0',
+  'p8' => '0',
+  'p9' => '0',
+  'updated' => '0',
+))
+->values(array(
+  'menu_name' => 'navigation',
+  'mlid' => '78',
+  'plid' => '10',
+  'link_path' => 'admin/content/node-type/page',
+  'router_path' => 'admin/content/node-type/page',
+  'link_title' => 'Page',
+  'options' => 'a:0:{}',
+  'module' => 'system',
+  'hidden' => '-1',
+  'external' => '0',
+  'has_children' => '0',
+  'expanded' => '0',
+  'weight' => '0',
+  'depth' => '3',
+  'customized' => '0',
+  'p1' => '2',
+  'p2' => '10',
+  'p3' => '78',
+  'p4' => '0',
+  'p5' => '0',
+  'p6' => '0',
+  'p7' => '0',
+  'p8' => '0',
+  'p9' => '0',
+  'updated' => '0',
+))
+->values(array(
+  'menu_name' => 'navigation',
+  'mlid' => '79',
+  'plid' => '10',
+  'link_path' => 'admin/content/node-type/story',
+  'router_path' => 'admin/content/node-type/story',
+  'link_title' => 'Story',
+  'options' => 'a:0:{}',
+  'module' => 'system',
+  'hidden' => '-1',
+  'external' => '0',
+  'has_children' => '0',
+  'expanded' => '0',
+  'weight' => '0',
+  'depth' => '3',
+  'customized' => '0',
+  'p1' => '2',
+  'p2' => '10',
+  'p3' => '79',
+  'p4' => '0',
+  'p5' => '0',
+  'p6' => '0',
+  'p7' => '0',
+  'p8' => '0',
+  'p9' => '0',
+  'updated' => '0',
+))
+->values(array(
+  'menu_name' => 'navigation',
+  'mlid' => '80',
+  'plid' => '0',
+  'link_path' => 'admin/content/node-type/page/delete',
+  'router_path' => 'admin/content/node-type/page/delete',
+  'link_title' => 'Delete',
+  'options' => 'a:0:{}',
+  'module' => 'system',
+  'hidden' => '-1',
+  'external' => '0',
+  'has_children' => '0',
+  'expanded' => '0',
+  'weight' => '0',
+  'depth' => '1',
+  'customized' => '0',
+  'p1' => '80',
+  'p2' => '0',
+  'p3' => '0',
+  'p4' => '0',
+  'p5' => '0',
+  'p6' => '0',
+  'p7' => '0',
+  'p8' => '0',
+  'p9' => '0',
+  'updated' => '0',
+))
+->values(array(
+  'menu_name' => 'navigation',
+  'mlid' => '81',
+  'plid' => '0',
+  'link_path' => 'admin/content/node-type/story/delete',
+  'router_path' => 'admin/content/node-type/story/delete',
+  'link_title' => 'Delete',
+  'options' => 'a:0:{}',
+  'module' => 'system',
+  'hidden' => '-1',
+  'external' => '0',
+  'has_children' => '0',
+  'expanded' => '0',
+  'weight' => '0',
+  'depth' => '1',
+  'customized' => '0',
+  'p1' => '81',
+  'p2' => '0',
+  'p3' => '0',
+  'p4' => '0',
+  'p5' => '0',
+  'p6' => '0',
+  'p7' => '0',
+  'p8' => '0',
+  'p9' => '0',
+  'updated' => '0',
+))
+->execute();
+
+db_create_table('menu_router', array(
+  'fields' => array(
+    'path' => array(
+      'type' => 'varchar',
+      'length' => 255,
+      'not null' => TRUE,
+      'default' => '',
+    ),
+    'load_functions' => array(
+      'type' => 'text',
+      'not null' => TRUE,
+    ),
+    'to_arg_functions' => array(
+      'type' => 'text',
+      'not null' => TRUE,
+    ),
+    'access_callback' => array(
+      'type' => 'varchar',
+      'length' => 255,
+      'not null' => TRUE,
+      'default' => '',
+    ),
+    'access_arguments' => array(
+      'type' => 'text',
+      'not null' => FALSE,
+    ),
+    'page_callback' => array(
+      'type' => 'varchar',
+      'length' => 255,
+      'not null' => TRUE,
+      'default' => '',
+    ),
+    'page_arguments' => array(
+      'type' => 'text',
+      'not null' => FALSE,
+    ),
+    'fit' => array(
+      'type' => 'int',
+      'not null' => TRUE,
+      'default' => 0,
+    ),
+    'number_parts' => array(
+      'type' => 'int',
+      'not null' => TRUE,
+      'default' => 0,
+      'size' => 'small',
+    ),
+    'tab_parent' => array(
+      'type' => 'varchar',
+      'length' => 255,
+      'not null' => TRUE,
+      'default' => '',
+    ),
+    'tab_root' => array(
+      'type' => 'varchar',
+      'length' => 255,
+      'not null' => TRUE,
+      'default' => '',
+    ),
+    'title' => array(
+      'type' => 'varchar',
+      'length' => 255,
+      'not null' => TRUE,
+      'default' => '',
+    ),
+    'title_callback' => array(
+      'type' => 'varchar',
+      'length' => 255,
+      'not null' => TRUE,
+      'default' => '',
+    ),
+    'title_arguments' => array(
+      'type' => 'varchar',
+      'length' => 255,
+      'not null' => TRUE,
+      'default' => '',
+    ),
+    'type' => array(
+      'type' => 'int',
+      'not null' => TRUE,
+      'default' => 0,
+    ),
+    'block_callback' => array(
+      'type' => 'varchar',
+      'length' => 255,
+      'not null' => TRUE,
+      'default' => '',
+    ),
+    'description' => array(
+      'type' => 'text',
+      'not null' => TRUE,
+    ),
+    'position' => array(
+      'type' => 'varchar',
+      'length' => 255,
+      'not null' => TRUE,
+      'default' => '',
+    ),
+    'weight' => array(
+      'type' => 'int',
+      'not null' => TRUE,
+      'default' => 0,
+    ),
+    'file' => array(
+      'type' => 'text',
+      'size' => 'medium',
+    ),
+  ),
+  'indexes' => array(
+    'fit' => array(
+      'fit',
+    ),
+    'tab_parent' => array(
+      'tab_parent',
+    ),
+    'tab_root_weight_title' => array(
+      array(
+        'tab_root',
+        64,
+      ),
+      'weight',
+      'title',
+    ),
+  ),
+  'primary key' => array(
+    'path',
+  ),
+  'module' => 'system',
+  'name' => 'menu_router',
+));
+db_insert('menu_router')->fields(array(
+  'path',
+  'load_functions',
+  'to_arg_functions',
+  'access_callback',
+  'access_arguments',
+  'page_callback',
+  'page_arguments',
+  'fit',
+  'number_parts',
+  'tab_parent',
+  'tab_root',
+  'title',
+  'title_callback',
+  'title_arguments',
+  'type',
+  'block_callback',
+  'description',
+  'position',
+  'weight',
+  'file',
+))
+->values(array(
+  'path' => 'admin',
+  'load_functions' => '',
+  'to_arg_functions' => '',
+  'access_callback' => 'user_access',
+  'access_arguments' => 'a:1:{i:0;s:27:"access administration pages";}',
+  'page_callback' => 'system_main_admin_page',
+  'page_arguments' => 'a:0:{}',
+  'fit' => '1',
+  'number_parts' => '1',
+  'tab_parent' => '',
+  'tab_root' => 'admin',
+  'title' => 'Administer',
+  'title_callback' => 't',
+  'title_arguments' => '',
+  'type' => '6',
+  'block_callback' => '',
+  'description' => '',
+  'position' => '',
+  'weight' => '9',
+  'file' => 'modules/system/system.admin.inc',
+))
+->values(array(
+  'path' => 'admin/build',
+  'load_functions' => '',
+  'to_arg_functions' => '',
+  'access_callback' => 'user_access',
+  'access_arguments' => 'a:1:{i:0;s:27:"access administration pages";}',
+  'page_callback' => 'system_admin_menu_block_page',
+  'page_arguments' => 'a:0:{}',
+  'fit' => '3',
+  'number_parts' => '2',
+  'tab_parent' => '',
+  'tab_root' => 'admin/build',
+  'title' => 'Site building',
+  'title_callback' => 't',
+  'title_arguments' => '',
+  'type' => '6',
+  'block_callback' => '',
+  'description' => 'Control how your site looks and feels.',
+  'position' => 'right',
+  'weight' => '-10',
+  'file' => 'modules/system/system.admin.inc',
+))
+->values(array(
+  'path' => 'admin/build/block',
+  'load_functions' => '',
+  'to_arg_functions' => '',
+  'access_callback' => 'user_access',
+  'access_arguments' => 'a:1:{i:0;s:17:"administer blocks";}',
+  'page_callback' => 'block_admin_display',
+  'page_arguments' => 'a:0:{}',
+  'fit' => '7',
+  'number_parts' => '3',
+  'tab_parent' => '',
+  'tab_root' => 'admin/build/block',
+  'title' => 'Blocks',
+  'title_callback' => 't',
+  'title_arguments' => '',
+  'type' => '6',
+  'block_callback' => '',
+  'description' => "Configure what block content appears in your site's sidebars and other regions.",
+  'position' => '',
+  'weight' => '0',
+  'file' => 'modules/block/block.admin.inc',
+))
+->values(array(
+  'path' => 'admin/build/block/add',
+  'load_functions' => '',
+  'to_arg_functions' => '',
+  'access_callback' => 'user_access',
+  'access_arguments' => 'a:1:{i:0;s:17:"administer blocks";}',
+  'page_callback' => 'drupal_get_form',
+  'page_arguments' => 'a:1:{i:0;s:20:"block_add_block_form";}',
+  'fit' => '15',
+  'number_parts' => '4',
+  'tab_parent' => 'admin/build/block',
+  'tab_root' => 'admin/build/block',
+  'title' => 'Add block',
+  'title_callback' => 't',
+  'title_arguments' => '',
+  'type' => '128',
+  'block_callback' => '',
+  'description' => '',
+  'position' => '',
+  'weight' => '0',
+  'file' => 'modules/block/block.admin.inc',
+))
+->values(array(
+  'path' => 'admin/build/block/configure',
+  'load_functions' => '',
+  'to_arg_functions' => '',
+  'access_callback' => 'user_access',
+  'access_arguments' => 'a:1:{i:0;s:17:"administer blocks";}',
+  'page_callback' => 'drupal_get_form',
+  'page_arguments' => 'a:1:{i:0;s:21:"block_admin_configure";}',
+  'fit' => '15',
+  'number_parts' => '4',
+  'tab_parent' => '',
+  'tab_root' => 'admin/build/block/configure',
+  'title' => 'Configure block',
+  'title_callback' => 't',
+  'title_arguments' => '',
+  'type' => '4',
+  'block_callback' => '',
+  'description' => '',
+  'position' => '',
+  'weight' => '0',
+  'file' => 'modules/block/block.admin.inc',
+))
+->values(array(
+  'path' => 'admin/build/block/delete',
+  'load_functions' => '',
+  'to_arg_functions' => '',
+  'access_callback' => 'user_access',
+  'access_arguments' => 'a:1:{i:0;s:17:"administer blocks";}',
+  'page_callback' => 'drupal_get_form',
+  'page_arguments' => 'a:1:{i:0;s:16:"block_box_delete";}',
+  'fit' => '15',
+  'number_parts' => '4',
+  'tab_parent' => '',
+  'tab_root' => 'admin/build/block/delete',
+  'title' => 'Delete block',
+  'title_callback' => 't',
+  'title_arguments' => '',
+  'type' => '4',
+  'block_callback' => '',
+  'description' => '',
+  'position' => '',
+  'weight' => '0',
+  'file' => 'modules/block/block.admin.inc',
+))
+->values(array(
+  'path' => 'admin/build/block/list',
+  'load_functions' => '',
+  'to_arg_functions' => '',
+  'access_callback' => 'user_access',
+  'access_arguments' => 'a:1:{i:0;s:17:"administer blocks";}',
+  'page_callback' => 'block_admin_display',
+  'page_arguments' => 'a:0:{}',
+  'fit' => '15',
+  'number_parts' => '4',
+  'tab_parent' => 'admin/build/block',
+  'tab_root' => 'admin/build/block',
+  'title' => 'List',
+  'title_callback' => 't',
+  'title_arguments' => '',
+  'type' => '136',
+  'block_callback' => '',
+  'description' => '',
+  'position' => '',
+  'weight' => '-10',
+  'file' => 'modules/block/block.admin.inc',
+))
+->values(array(
+  'path' => 'admin/build/block/list/bluemarine',
+  'load_functions' => '',
+  'to_arg_functions' => '',
+  'access_callback' => '_block_themes_access',
+  'access_arguments' => 'a:1:{i:0;O:8:"stdClass":12:{s:8:"filename";s:33:"themes/bluemarine/bluemarine.info";s:4:"name";s:10:"bluemarine";s:4:"type";s:5:"theme";s:5:"owner";s:45:"themes/engines/phptemplate/phptemplate.engine";s:6:"status";s:1:"0";s:8:"throttle";s:1:"0";s:9:"bootstrap";s:1:"0";s:14:"schema_version";s:2:"-1";s:6:"weight";s:1:"0";s:4:"info";a:13:{s:4:"name";s:10:"Bluemarine";s:11:"description";s:66:"Table-based multi-column theme with a marine and ash color scheme.";s:7:"version";s:4:"6.17";s:4:"core";s:3:"6.x";s:6:"engine";s:11:"phptemplate";s:7:"project";s:6:"drupal";s:9:"datestamp";s:10:"1275505216";s:7:"regions";a:5:{s:4:"left";s:12:"Left sidebar";s:5:"right";s:13:"Right sidebar";s:7:"content";s:7:"Content";s:6:"header";s:6:"Header";s:6:"footer";s:6:"Footer";}s:8:"features";a:10:{i:0;s:20:"comment_user_picture";i:1;s:7:"favicon";i:2;s:7:"mission";i:3;s:4:"logo";i:4;s:4:"name";i:5;s:17:"node_user_picture";i:6;s:6:"search";i:7;s:6:"slogan";i:8;s:13:"primary_links";i:9;s:15:"secondary_links";}s:11:"stylesheets";a:1:{s:3:"all";a:1:{s:9:"style.css";s:27:"themes/bluemarine/style.css";}}s:7:"scripts";a:1:{s:9:"script.js";s:27:"themes/bluemarine/script.js";}s:10:"screenshot";s:32:"themes/bluemarine/screenshot.png";s:3:"php";s:5:"4.3.5";}s:11:"stylesheets";a:1:{s:3:"all";a:1:{s:9:"style.css";s:27:"themes/bluemarine/style.css";}}s:6:"engine";s:11:"phptemplate";}}',
+  'page_callback' => 'block_admin_display',
+  'page_arguments' => 'a:1:{i:0;s:10:"bluemarine";}',
+  'fit' => '31',
+  'number_parts' => '5',
+  'tab_parent' => 'admin/build/block/list',
+  'tab_root' => 'admin/build/block',
+  'title' => 'Bluemarine',
+  'title_callback' => 't',
+  'title_arguments' => '',
+  'type' => '128',
+  'block_callback' => '',
+  'description' => '',
+  'position' => '',
+  'weight' => '0',
+  'file' => 'modules/block/block.admin.inc',
+))
+->values(array(
+  'path' => 'admin/build/block/list/chameleon',
+  'load_functions' => '',
+  'to_arg_functions' => '',
+  'access_callback' => '_block_themes_access',
+  'access_arguments' => 'a:1:{i:0;O:8:"stdClass":11:{s:8:"filename";s:31:"themes/chameleon/chameleon.info";s:4:"name";s:9:"chameleon";s:4:"type";s:5:"theme";s:5:"owner";s:32:"themes/chameleon/chameleon.theme";s:6:"status";s:1:"0";s:8:"throttle";s:1:"0";s:9:"bootstrap";s:1:"0";s:14:"schema_version";s:2:"-1";s:6:"weight";s:1:"0";s:4:"info";a:12:{s:4:"name";s:9:"Chameleon";s:11:"description";s:42:"Minimalist tabled theme with light colors.";s:7:"regions";a:2:{s:4:"left";s:12:"Left sidebar";s:5:"right";s:13:"Right sidebar";}s:8:"features";a:4:{i:0;s:4:"logo";i:1;s:7:"favicon";i:2;s:4:"name";i:3;s:6:"slogan";}s:11:"stylesheets";a:1:{s:3:"all";a:2:{s:9:"style.css";s:26:"themes/chameleon/style.css";s:10:"common.css";s:27:"themes/chameleon/common.css";}}s:7:"version";s:4:"6.17";s:4:"core";s:3:"6.x";s:7:"project";s:6:"drupal";s:9:"datestamp";s:10:"1275505216";s:7:"scripts";a:1:{s:9:"script.js";s:26:"themes/chameleon/script.js";}s:10:"screenshot";s:31:"themes/chameleon/screenshot.png";s:3:"php";s:5:"4.3.5";}s:11:"stylesheets";a:1:{s:3:"all";a:2:{s:9:"style.css";s:26:"themes/chameleon/style.css";s:10:"common.css";s:27:"themes/chameleon/common.css";}}}}',
+  'page_callback' => 'block_admin_display',
+  'page_arguments' => 'a:1:{i:0;s:9:"chameleon";}',
+  'fit' => '31',
+  'number_parts' => '5',
+  'tab_parent' => 'admin/build/block/list',
+  'tab_root' => 'admin/build/block',
+  'title' => 'Chameleon',
+  'title_callback' => 't',
+  'title_arguments' => '',
+  'type' => '128',
+  'block_callback' => '',
+  'description' => '',
+  'position' => '',
+  'weight' => '0',
+  'file' => 'modules/block/block.admin.inc',
+))
+->values(array(
+  'path' => 'admin/build/block/list/garland',
+  'load_functions' => '',
+  'to_arg_functions' => '',
+  'access_callback' => '_block_themes_access',
+  'access_arguments' => 'a:1:{i:0;O:8:"stdClass":12:{s:8:"filename";s:27:"themes/garland/garland.info";s:4:"name";s:7:"garland";s:4:"type";s:5:"theme";s:5:"owner";s:45:"themes/engines/phptemplate/phptemplate.engine";s:6:"status";s:1:"1";s:8:"throttle";s:1:"0";s:9:"bootstrap";s:1:"0";s:14:"schema_version";s:2:"-1";s:6:"weight";s:1:"0";s:4:"info";a:13:{s:4:"name";s:7:"Garland";s:11:"description";s:66:"Tableless, recolorable, multi-column, fluid width theme (default).";s:7:"version";s:4:"6.17";s:4:"core";s:3:"6.x";s:6:"engine";s:11:"phptemplate";s:11:"stylesheets";a:2:{s:3:"all";a:1:{s:9:"style.css";s:24:"themes/garland/style.css";}s:5:"print";a:1:{s:9:"print.css";s:24:"themes/garland/print.css";}}s:7:"project";s:6:"drupal";s:9:"datestamp";s:10:"1275505216";s:7:"regions";a:5:{s:4:"left";s:12:"Left sidebar";s:5:"right";s:13:"Right sidebar";s:7:"content";s:7:"Content";s:6:"header";s:6:"Header";s:6:"footer";s:6:"Footer";}s:8:"features";a:10:{i:0;s:20:"comment_user_picture";i:1;s:7:"favicon";i:2;s:7:"mission";i:3;s:4:"logo";i:4;s:4:"name";i:5;s:17:"node_user_picture";i:6;s:6:"search";i:7;s:6:"slogan";i:8;s:13:"primary_links";i:9;s:15:"secondary_links";}s:7:"scripts";a:1:{s:9:"script.js";s:24:"themes/garland/script.js";}s:10:"screenshot";s:29:"themes/garland/screenshot.png";s:3:"php";s:5:"4.3.5";}s:11:"stylesheets";a:2:{s:3:"all";a:1:{s:9:"style.css";s:24:"themes/garland/style.css";}s:5:"print";a:1:{s:9:"print.css";s:24:"themes/garland/print.css";}}s:6:"engine";s:11:"phptemplate";}}',
+  'page_callback' => 'block_admin_display',
+  'page_arguments' => 'a:1:{i:0;s:7:"garland";}',
+  'fit' => '31',
+  'number_parts' => '5',
+  'tab_parent' => 'admin/build/block/list',
+  'tab_root' => 'admin/build/block',
+  'title' => 'Garland',
+  'title_callback' => 't',
+  'title_arguments' => '',
+  'type' => '136',
+  'block_callback' => '',
+  'description' => '',
+  'position' => '',
+  'weight' => '-10',
+  'file' => 'modules/block/block.admin.inc',
+))
+->values(array(
+  'path' => 'admin/build/block/list/js',
+  'load_functions' => '',
+  'to_arg_functions' => '',
+  'access_callback' => 'user_access',
+  'access_arguments' => 'a:1:{i:0;s:17:"administer blocks";}',
+  'page_callback' => 'block_admin_display_js',
+  'page_arguments' => 'a:0:{}',
+  'fit' => '31',
+  'number_parts' => '5',
+  'tab_parent' => '',
+  'tab_root' => 'admin/build/block/list/js',
+  'title' => 'JavaScript List Form',
+  'title_callback' => 't',
+  'title_arguments' => '',
+  'type' => '4',
+  'block_callback' => '',
+  'description' => '',
+  'position' => '',
+  'weight' => '0',
+  'file' => 'modules/block/block.admin.inc',
+))
+->values(array(
+  'path' => 'admin/build/block/list/marvin',
+  'load_functions' => '',
+  'to_arg_functions' => '',
+  'access_callback' => '_block_themes_access',
+  'access_arguments' => 'a:1:{i:0;O:8:"stdClass":12:{s:8:"filename";s:35:"themes/chameleon/marvin/marvin.info";s:4:"name";s:6:"marvin";s:4:"type";s:5:"theme";s:5:"owner";s:0:"";s:6:"status";s:1:"0";s:8:"throttle";s:1:"0";s:9:"bootstrap";s:1:"0";s:14:"schema_version";s:2:"-1";s:6:"weight";s:1:"0";s:4:"info";a:13:{s:4:"name";s:6:"Marvin";s:11:"description";s:31:"Boxy tabled theme in all grays.";s:7:"regions";a:2:{s:4:"left";s:12:"Left sidebar";s:5:"right";s:13:"Right sidebar";}s:7:"version";s:4:"6.17";s:4:"core";s:3:"6.x";s:10:"base theme";s:9:"chameleon";s:7:"project";s:6:"drupal";s:9:"datestamp";s:10:"1275505216";s:8:"features";a:10:{i:0;s:20:"comment_user_picture";i:1;s:7:"favicon";i:2;s:7:"mission";i:3;s:4:"logo";i:4;s:4:"name";i:5;s:17:"node_user_picture";i:6;s:6:"search";i:7;s:6:"slogan";i:8;s:13:"primary_links";i:9;s:15:"secondary_links";}s:11:"stylesheets";a:1:{s:3:"all";a:1:{s:9:"style.css";s:33:"themes/chameleon/marvin/style.css";}}s:7:"scripts";a:1:{s:9:"script.js";s:33:"themes/chameleon/marvin/script.js";}s:10:"screenshot";s:38:"themes/chameleon/marvin/screenshot.png";s:3:"php";s:5:"4.3.5";}s:11:"stylesheets";a:1:{s:3:"all";a:1:{s:9:"style.css";s:33:"themes/chameleon/marvin/style.css";}}s:10:"base_theme";s:9:"chameleon";}}',
+  'page_callback' => 'block_admin_display',
+  'page_arguments' => 'a:1:{i:0;s:6:"marvin";}',
+  'fit' => '31',
+  'number_parts' => '5',
+  'tab_parent' => 'admin/build/block/list',
+  'tab_root' => 'admin/build/block',
+  'title' => 'Marvin',
+  'title_callback' => 't',
+  'title_arguments' => '',
+  'type' => '128',
+  'block_callback' => '',
+  'description' => '',
+  'position' => '',
+  'weight' => '0',
+  'file' => 'modules/block/block.admin.inc',
+))
+->values(array(
+  'path' => 'admin/build/block/list/minnelli',
+  'load_functions' => '',
+  'to_arg_functions' => '',
+  'access_callback' => '_block_themes_access',
+  'access_arguments' => 'a:1:{i:0;O:8:"stdClass":13:{s:8:"filename";s:37:"themes/garland/minnelli/minnelli.info";s:4:"name";s:8:"minnelli";s:4:"type";s:5:"theme";s:5:"owner";s:45:"themes/engines/phptemplate/phptemplate.engine";s:6:"status";s:1:"0";s:8:"throttle";s:1:"0";s:9:"bootstrap";s:1:"0";s:14:"schema_version";s:2:"-1";s:6:"weight";s:1:"0";s:4:"info";a:14:{s:4:"name";s:8:"Minnelli";s:11:"description";s:56:"Tableless, recolorable, multi-column, fixed width theme.";s:7:"version";s:4:"6.17";s:4:"core";s:3:"6.x";s:10:"base theme";s:7:"garland";s:11:"stylesheets";a:1:{s:3:"all";a:1:{s:12:"minnelli.css";s:36:"themes/garland/minnelli/minnelli.css";}}s:7:"project";s:6:"drupal";s:9:"datestamp";s:10:"1275505216";s:7:"regions";a:5:{s:4:"left";s:12:"Left sidebar";s:5:"right";s:13:"Right sidebar";s:7:"content";s:7:"Content";s:6:"header";s:6:"Header";s:6:"footer";s:6:"Footer";}s:8:"features";a:10:{i:0;s:20:"comment_user_picture";i:1;s:7:"favicon";i:2;s:7:"mission";i:3;s:4:"logo";i:4;s:4:"name";i:5;s:17:"node_user_picture";i:6;s:6:"search";i:7;s:6:"slogan";i:8;s:13:"primary_links";i:9;s:15:"secondary_links";}s:7:"scripts";a:1:{s:9:"script.js";s:33:"themes/garland/minnelli/script.js";}s:10:"screenshot";s:38:"themes/garland/minnelli/screenshot.png";s:3:"php";s:5:"4.3.5";s:6:"engine";s:11:"phptemplate";}s:11:"stylesheets";a:1:{s:3:"all";a:1:{s:12:"minnelli.css";s:36:"themes/garland/minnelli/minnelli.css";}}s:6:"engine";s:11:"phptemplate";s:10:"base_theme";s:7:"garland";}}',
+  'page_callback' => 'block_admin_display',
+  'page_arguments' => 'a:1:{i:0;s:8:"minnelli";}',
+  'fit' => '31',
+  'number_parts' => '5',
+  'tab_parent' => 'admin/build/block/list',
+  'tab_root' => 'admin/build/block',
+  'title' => 'Minnelli',
+  'title_callback' => 't',
+  'title_arguments' => '',
+  'type' => '128',
+  'block_callback' => '',
+  'description' => '',
+  'position' => '',
+  'weight' => '0',
+  'file' => 'modules/block/block.admin.inc',
+))
+->values(array(
+  'path' => 'admin/build/block/list/pushbutton',
+  'load_functions' => '',
+  'to_arg_functions' => '',
+  'access_callback' => '_block_themes_access',
+  'access_arguments' => 'a:1:{i:0;O:8:"stdClass":12:{s:8:"filename";s:33:"themes/pushbutton/pushbutton.info";s:4:"name";s:10:"pushbutton";s:4:"type";s:5:"theme";s:5:"owner";s:45:"themes/engines/phptemplate/phptemplate.engine";s:6:"status";s:1:"0";s:8:"throttle";s:1:"0";s:9:"bootstrap";s:1:"0";s:14:"schema_version";s:2:"-1";s:6:"weight";s:1:"0";s:4:"info";a:13:{s:4:"name";s:10:"Pushbutton";s:11:"description";s:52:"Tabled, multi-column theme in blue and orange tones.";s:7:"version";s:4:"6.17";s:4:"core";s:3:"6.x";s:6:"engine";s:11:"phptemplate";s:7:"project";s:6:"drupal";s:9:"datestamp";s:10:"1275505216";s:7:"regions";a:5:{s:4:"left";s:12:"Left sidebar";s:5:"right";s:13:"Right sidebar";s:7:"content";s:7:"Content";s:6:"header";s:6:"Header";s:6:"footer";s:6:"Footer";}s:8:"features";a:10:{i:0;s:20:"comment_user_picture";i:1;s:7:"favicon";i:2;s:7:"mission";i:3;s:4:"logo";i:4;s:4:"name";i:5;s:17:"node_user_picture";i:6;s:6:"search";i:7;s:6:"slogan";i:8;s:13:"primary_links";i:9;s:15:"secondary_links";}s:11:"stylesheets";a:1:{s:3:"all";a:1:{s:9:"style.css";s:27:"themes/pushbutton/style.css";}}s:7:"scripts";a:1:{s:9:"script.js";s:27:"themes/pushbutton/script.js";}s:10:"screenshot";s:32:"themes/pushbutton/screenshot.png";s:3:"php";s:5:"4.3.5";}s:11:"stylesheets";a:1:{s:3:"all";a:1:{s:9:"style.css";s:27:"themes/pushbutton/style.css";}}s:6:"engine";s:11:"phptemplate";}}',
+  'page_callback' => 'block_admin_display',
+  'page_arguments' => 'a:1:{i:0;s:10:"pushbutton";}',
+  'fit' => '31',
+  'number_parts' => '5',
+  'tab_parent' => 'admin/build/block/list',
+  'tab_root' => 'admin/build/block',
+  'title' => 'Pushbutton',
+  'title_callback' => 't',
+  'title_arguments' => '',
+  'type' => '128',
+  'block_callback' => '',
+  'description' => '',
+  'position' => '',
+  'weight' => '0',
+  'file' => 'modules/block/block.admin.inc',
+))
+->values(array(
+  'path' => 'admin/build/modules',
+  'load_functions' => '',
+  'to_arg_functions' => '',
+  'access_callback' => 'user_access',
+  'access_arguments' => 'a:1:{i:0;s:29:"administer site configuration";}',
+  'page_callback' => 'drupal_get_form',
+  'page_arguments' => 'a:1:{i:0;s:14:"system_modules";}',
+  'fit' => '7',
+  'number_parts' => '3',
+  'tab_parent' => '',
+  'tab_root' => 'admin/build/modules',
+  'title' => 'Modules',
+  'title_callback' => 't',
+  'title_arguments' => '',
+  'type' => '6',
+  'block_callback' => '',
+  'description' => 'Enable or disable add-on modules for your site.',
+  'position' => '',
+  'weight' => '0',
+  'file' => 'modules/system/system.admin.inc',
+))
+->values(array(
+  'path' => 'admin/build/modules/list',
+  'load_functions' => '',
+  'to_arg_functions' => '',
+  'access_callback' => 'user_access',
+  'access_arguments' => 'a:1:{i:0;s:29:"administer site configuration";}',
+  'page_callback' => 'drupal_get_form',
+  'page_arguments' => 'a:1:{i:0;s:14:"system_modules";}',
+  'fit' => '15',
+  'number_parts' => '4',
+  'tab_parent' => 'admin/build/modules',
+  'tab_root' => 'admin/build/modules',
+  'title' => 'List',
+  'title_callback' => 't',
+  'title_arguments' => '',
+  'type' => '136',
+  'block_callback' => '',
+  'description' => '',
+  'position' => '',
+  'weight' => '0',
+  'file' => 'modules/system/system.admin.inc',
+))
+->values(array(
+  'path' => 'admin/build/modules/list/confirm',
+  'load_functions' => '',
+  'to_arg_functions' => '',
+  'access_callback' => 'user_access',
+  'access_arguments' => 'a:1:{i:0;s:29:"administer site configuration";}',
+  'page_callback' => 'drupal_get_form',
+  'page_arguments' => 'a:1:{i:0;s:14:"system_modules";}',
+  'fit' => '31',
+  'number_parts' => '5',
+  'tab_parent' => '',
+  'tab_root' => 'admin/build/modules/list/confirm',
+  'title' => 'List',
+  'title_callback' => 't',
+  'title_arguments' => '',
+  'type' => '4',
+  'block_callback' => '',
+  'description' => '',
+  'position' => '',
+  'weight' => '0',
+  'file' => 'modules/system/system.admin.inc',
+))
+->values(array(
+  'path' => 'admin/build/modules/uninstall',
+  'load_functions' => '',
+  'to_arg_functions' => '',
+  'access_callback' => 'user_access',
+  'access_arguments' => 'a:1:{i:0;s:29:"administer site configuration";}',
+  'page_callback' => 'drupal_get_form',
+  'page_arguments' => 'a:1:{i:0;s:24:"system_modules_uninstall";}',
+  'fit' => '15',
+  'number_parts' => '4',
+  'tab_parent' => 'admin/build/modules',
+  'tab_root' => 'admin/build/modules',
+  'title' => 'Uninstall',
+  'title_callback' => 't',
+  'title_arguments' => '',
+  'type' => '128',
+  'block_callback' => '',
+  'description' => '',
+  'position' => '',
+  'weight' => '0',
+  'file' => 'modules/system/system.admin.inc',
+))
+->values(array(
+  'path' => 'admin/build/modules/uninstall/confirm',
+  'load_functions' => '',
+  'to_arg_functions' => '',
+  'access_callback' => 'user_access',
+  'access_arguments' => 'a:1:{i:0;s:29:"administer site configuration";}',
+  'page_callback' => 'drupal_get_form',
+  'page_arguments' => 'a:1:{i:0;s:24:"system_modules_uninstall";}',
+  'fit' => '31',
+  'number_parts' => '5',
+  'tab_parent' => '',
+  'tab_root' => 'admin/build/modules/uninstall/confirm',
+  'title' => 'Uninstall',
+  'title_callback' => 't',
+  'title_arguments' => '',
+  'type' => '4',
+  'block_callback' => '',
+  'description' => '',
+  'position' => '',
+  'weight' => '0',
+  'file' => 'modules/system/system.admin.inc',
+))
+->values(array(
+  'path' => 'admin/build/themes',
+  'load_functions' => '',
+  'to_arg_functions' => '',
+  'access_callback' => 'user_access',
+  'access_arguments' => 'a:1:{i:0;s:29:"administer site configuration";}',
+  'page_callback' => 'drupal_get_form',
+  'page_arguments' => 'a:2:{i:0;s:18:"system_themes_form";i:1;N;}',
+  'fit' => '7',
+  'number_parts' => '3',
+  'tab_parent' => '',
+  'tab_root' => 'admin/build/themes',
+  'title' => 'Themes',
+  'title_callback' => 't',
+  'title_arguments' => '',
+  'type' => '6',
+  'block_callback' => '',
+  'description' => 'Change which theme your site uses or allows users to set.',
+  'position' => '',
+  'weight' => '0',
+  'file' => 'modules/system/system.admin.inc',
+))
+->values(array(
+  'path' => 'admin/build/themes/select',
+  'load_functions' => '',
+  'to_arg_functions' => '',
+  'access_callback' => 'user_access',
+  'access_arguments' => 'a:1:{i:0;s:29:"administer site configuration";}',
+  'page_callback' => 'drupal_get_form',
+  'page_arguments' => 'a:2:{i:0;s:18:"system_themes_form";i:1;N;}',
+  'fit' => '15',
+  'number_parts' => '4',
+  'tab_parent' => 'admin/build/themes',
+  'tab_root' => 'admin/build/themes',
+  'title' => 'List',
+  'title_callback' => 't',
+  'title_arguments' => '',
+  'type' => '136',
+  'block_callback' => '',
+  'description' => 'Select the default theme.',
+  'position' => '',
+  'weight' => '-1',
+  'file' => 'modules/system/system.admin.inc',
+))
+->values(array(
+  'path' => 'admin/build/themes/settings',
+  'load_functions' => '',
+  'to_arg_functions' => '',
+  'access_callback' => 'user_access',
+  'access_arguments' => 'a:1:{i:0;s:29:"administer site configuration";}',
+  'page_callback' => 'drupal_get_form',
+  'page_arguments' => 'a:1:{i:0;s:21:"system_theme_settings";}',
+  'fit' => '15',
+  'number_parts' => '4',
+  'tab_parent' => 'admin/build/themes',
+  'tab_root' => 'admin/build/themes',
+  'title' => 'Configure',
+  'title_callback' => 't',
+  'title_arguments' => '',
+  'type' => '128',
+  'block_callback' => '',
+  'description' => '',
+  'position' => '',
+  'weight' => '0',
+  'file' => 'modules/system/system.admin.inc',
+))
+->values(array(
+  'path' => 'admin/build/themes/settings/bluemarine',
+  'load_functions' => '',
+  'to_arg_functions' => '',
+  'access_callback' => '_system_themes_access',
+  'access_arguments' => 'a:1:{i:0;O:8:"stdClass":12:{s:8:"filename";s:33:"themes/bluemarine/bluemarine.info";s:4:"name";s:10:"bluemarine";s:4:"type";s:5:"theme";s:5:"owner";s:45:"themes/engines/phptemplate/phptemplate.engine";s:6:"status";s:1:"0";s:8:"throttle";s:1:"0";s:9:"bootstrap";s:1:"0";s:14:"schema_version";s:2:"-1";s:6:"weight";s:1:"0";s:4:"info";a:13:{s:4:"name";s:10:"Bluemarine";s:11:"description";s:66:"Table-based multi-column theme with a marine and ash color scheme.";s:7:"version";s:4:"6.17";s:4:"core";s:3:"6.x";s:6:"engine";s:11:"phptemplate";s:7:"project";s:6:"drupal";s:9:"datestamp";s:10:"1275505216";s:7:"regions";a:5:{s:4:"left";s:12:"Left sidebar";s:5:"right";s:13:"Right sidebar";s:7:"content";s:7:"Content";s:6:"header";s:6:"Header";s:6:"footer";s:6:"Footer";}s:8:"features";a:10:{i:0;s:20:"comment_user_picture";i:1;s:7:"favicon";i:2;s:7:"mission";i:3;s:4:"logo";i:4;s:4:"name";i:5;s:17:"node_user_picture";i:6;s:6:"search";i:7;s:6:"slogan";i:8;s:13:"primary_links";i:9;s:15:"secondary_links";}s:11:"stylesheets";a:1:{s:3:"all";a:1:{s:9:"style.css";s:27:"themes/bluemarine/style.css";}}s:7:"scripts";a:1:{s:9:"script.js";s:27:"themes/bluemarine/script.js";}s:10:"screenshot";s:32:"themes/bluemarine/screenshot.png";s:3:"php";s:5:"4.3.5";}s:11:"stylesheets";a:1:{s:3:"all";a:1:{s:9:"style.css";s:27:"themes/bluemarine/style.css";}}s:6:"engine";s:11:"phptemplate";}}',
+  'page_callback' => 'drupal_get_form',
+  'page_arguments' => 'a:2:{i:0;s:21:"system_theme_settings";i:1;s:10:"bluemarine";}',
+  'fit' => '31',
+  'number_parts' => '5',
+  'tab_parent' => 'admin/build/themes/settings',
+  'tab_root' => 'admin/build/themes',
+  'title' => 'Bluemarine',
+  'title_callback' => 't',
+  'title_arguments' => '',
+  'type' => '128',
+  'block_callback' => '',
+  'description' => '',
+  'position' => '',
+  'weight' => '0',
+  'file' => 'modules/system/system.admin.inc',
+))
+->values(array(
+  'path' => 'admin/build/themes/settings/chameleon',
+  'load_functions' => '',
+  'to_arg_functions' => '',
+  'access_callback' => '_system_themes_access',
+  'access_arguments' => 'a:1:{i:0;O:8:"stdClass":11:{s:8:"filename";s:31:"themes/chameleon/chameleon.info";s:4:"name";s:9:"chameleon";s:4:"type";s:5:"theme";s:5:"owner";s:32:"themes/chameleon/chameleon.theme";s:6:"status";s:1:"0";s:8:"throttle";s:1:"0";s:9:"bootstrap";s:1:"0";s:14:"schema_version";s:2:"-1";s:6:"weight";s:1:"0";s:4:"info";a:12:{s:4:"name";s:9:"Chameleon";s:11:"description";s:42:"Minimalist tabled theme with light colors.";s:7:"regions";a:2:{s:4:"left";s:12:"Left sidebar";s:5:"right";s:13:"Right sidebar";}s:8:"features";a:4:{i:0;s:4:"logo";i:1;s:7:"favicon";i:2;s:4:"name";i:3;s:6:"slogan";}s:11:"stylesheets";a:1:{s:3:"all";a:2:{s:9:"style.css";s:26:"themes/chameleon/style.css";s:10:"common.css";s:27:"themes/chameleon/common.css";}}s:7:"version";s:4:"6.17";s:4:"core";s:3:"6.x";s:7:"project";s:6:"drupal";s:9:"datestamp";s:10:"1275505216";s:7:"scripts";a:1:{s:9:"script.js";s:26:"themes/chameleon/script.js";}s:10:"screenshot";s:31:"themes/chameleon/screenshot.png";s:3:"php";s:5:"4.3.5";}s:11:"stylesheets";a:1:{s:3:"all";a:2:{s:9:"style.css";s:26:"themes/chameleon/style.css";s:10:"common.css";s:27:"themes/chameleon/common.css";}}}}',
+  'page_callback' => 'drupal_get_form',
+  'page_arguments' => 'a:2:{i:0;s:21:"system_theme_settings";i:1;s:9:"chameleon";}',
+  'fit' => '31',
+  'number_parts' => '5',
+  'tab_parent' => 'admin/build/themes/settings',
+  'tab_root' => 'admin/build/themes',
+  'title' => 'Chameleon',
+  'title_callback' => 't',
+  'title_arguments' => '',
+  'type' => '128',
+  'block_callback' => '',
+  'description' => '',
+  'position' => '',
+  'weight' => '0',
+  'file' => 'modules/system/system.admin.inc',
+))
+->values(array(
+  'path' => 'admin/build/themes/settings/garland',
+  'load_functions' => '',
+  'to_arg_functions' => '',
+  'access_callback' => '_system_themes_access',
+  'access_arguments' => 'a:1:{i:0;O:8:"stdClass":12:{s:8:"filename";s:27:"themes/garland/garland.info";s:4:"name";s:7:"garland";s:4:"type";s:5:"theme";s:5:"owner";s:45:"themes/engines/phptemplate/phptemplate.engine";s:6:"status";s:1:"1";s:8:"throttle";s:1:"0";s:9:"bootstrap";s:1:"0";s:14:"schema_version";s:2:"-1";s:6:"weight";s:1:"0";s:4:"info";a:13:{s:4:"name";s:7:"Garland";s:11:"description";s:66:"Tableless, recolorable, multi-column, fluid width theme (default).";s:7:"version";s:4:"6.17";s:4:"core";s:3:"6.x";s:6:"engine";s:11:"phptemplate";s:11:"stylesheets";a:2:{s:3:"all";a:1:{s:9:"style.css";s:24:"themes/garland/style.css";}s:5:"print";a:1:{s:9:"print.css";s:24:"themes/garland/print.css";}}s:7:"project";s:6:"drupal";s:9:"datestamp";s:10:"1275505216";s:7:"regions";a:5:{s:4:"left";s:12:"Left sidebar";s:5:"right";s:13:"Right sidebar";s:7:"content";s:7:"Content";s:6:"header";s:6:"Header";s:6:"footer";s:6:"Footer";}s:8:"features";a:10:{i:0;s:20:"comment_user_picture";i:1;s:7:"favicon";i:2;s:7:"mission";i:3;s:4:"logo";i:4;s:4:"name";i:5;s:17:"node_user_picture";i:6;s:6:"search";i:7;s:6:"slogan";i:8;s:13:"primary_links";i:9;s:15:"secondary_links";}s:7:"scripts";a:1:{s:9:"script.js";s:24:"themes/garland/script.js";}s:10:"screenshot";s:29:"themes/garland/screenshot.png";s:3:"php";s:5:"4.3.5";}s:11:"stylesheets";a:2:{s:3:"all";a:1:{s:9:"style.css";s:24:"themes/garland/style.css";}s:5:"print";a:1:{s:9:"print.css";s:24:"themes/garland/print.css";}}s:6:"engine";s:11:"phptemplate";}}',
+  'page_callback' => 'drupal_get_form',
+  'page_arguments' => 'a:2:{i:0;s:21:"system_theme_settings";i:1;s:7:"garland";}',
+  'fit' => '31',
+  'number_parts' => '5',
+  'tab_parent' => 'admin/build/themes/settings',
+  'tab_root' => 'admin/build/themes',
+  'title' => 'Garland',
+  'title_callback' => 't',
+  'title_arguments' => '',
+  'type' => '128',
+  'block_callback' => '',
+  'description' => '',
+  'position' => '',
+  'weight' => '0',
+  'file' => 'modules/system/system.admin.inc',
+))
+->values(array(
+  'path' => 'admin/build/themes/settings/global',
+  'load_functions' => '',
+  'to_arg_functions' => '',
+  'access_callback' => 'user_access',
+  'access_arguments' => 'a:1:{i:0;s:29:"administer site configuration";}',
+  'page_callback' => 'drupal_get_form',
+  'page_arguments' => 'a:1:{i:0;s:21:"system_theme_settings";}',
+  'fit' => '31',
+  'number_parts' => '5',
+  'tab_parent' => 'admin/build/themes/settings',
+  'tab_root' => 'admin/build/themes',
+  'title' => 'Global settings',
+  'title_callback' => 't',
+  'title_arguments' => '',
+  'type' => '136',
+  'block_callback' => '',
+  'description' => '',
+  'position' => '',
+  'weight' => '-1',
+  'file' => 'modules/system/system.admin.inc',
+))
+->values(array(
+  'path' => 'admin/build/themes/settings/marvin',
+  'load_functions' => '',
+  'to_arg_functions' => '',
+  'access_callback' => '_system_themes_access',
+  'access_arguments' => 'a:1:{i:0;O:8:"stdClass":12:{s:8:"filename";s:35:"themes/chameleon/marvin/marvin.info";s:4:"name";s:6:"marvin";s:4:"type";s:5:"theme";s:5:"owner";s:0:"";s:6:"status";s:1:"0";s:8:"throttle";s:1:"0";s:9:"bootstrap";s:1:"0";s:14:"schema_version";s:2:"-1";s:6:"weight";s:1:"0";s:4:"info";a:13:{s:4:"name";s:6:"Marvin";s:11:"description";s:31:"Boxy tabled theme in all grays.";s:7:"regions";a:2:{s:4:"left";s:12:"Left sidebar";s:5:"right";s:13:"Right sidebar";}s:7:"version";s:4:"6.17";s:4:"core";s:3:"6.x";s:10:"base theme";s:9:"chameleon";s:7:"project";s:6:"drupal";s:9:"datestamp";s:10:"1275505216";s:8:"features";a:10:{i:0;s:20:"comment_user_picture";i:1;s:7:"favicon";i:2;s:7:"mission";i:3;s:4:"logo";i:4;s:4:"name";i:5;s:17:"node_user_picture";i:6;s:6:"search";i:7;s:6:"slogan";i:8;s:13:"primary_links";i:9;s:15:"secondary_links";}s:11:"stylesheets";a:1:{s:3:"all";a:1:{s:9:"style.css";s:33:"themes/chameleon/marvin/style.css";}}s:7:"scripts";a:1:{s:9:"script.js";s:33:"themes/chameleon/marvin/script.js";}s:10:"screenshot";s:38:"themes/chameleon/marvin/screenshot.png";s:3:"php";s:5:"4.3.5";}s:11:"stylesheets";a:1:{s:3:"all";a:1:{s:9:"style.css";s:33:"themes/chameleon/marvin/style.css";}}s:10:"base_theme";s:9:"chameleon";}}',
+  'page_callback' => 'drupal_get_form',
+  'page_arguments' => 'a:2:{i:0;s:21:"system_theme_settings";i:1;s:6:"marvin";}',
+  'fit' => '31',
+  'number_parts' => '5',
+  'tab_parent' => 'admin/build/themes/settings',
+  'tab_root' => 'admin/build/themes',
+  'title' => 'Marvin',
+  'title_callback' => 't',
+  'title_arguments' => '',
+  'type' => '128',
+  'block_callback' => '',
+  'description' => '',
+  'position' => '',
+  'weight' => '0',
+  'file' => 'modules/system/system.admin.inc',
+))
+->values(array(
+  'path' => 'admin/build/themes/settings/minnelli',
+  'load_functions' => '',
+  'to_arg_functions' => '',
+  'access_callback' => '_system_themes_access',
+  'access_arguments' => 'a:1:{i:0;O:8:"stdClass":13:{s:8:"filename";s:37:"themes/garland/minnelli/minnelli.info";s:4:"name";s:8:"minnelli";s:4:"type";s:5:"theme";s:5:"owner";s:45:"themes/engines/phptemplate/phptemplate.engine";s:6:"status";s:1:"0";s:8:"throttle";s:1:"0";s:9:"bootstrap";s:1:"0";s:14:"schema_version";s:2:"-1";s:6:"weight";s:1:"0";s:4:"info";a:14:{s:4:"name";s:8:"Minnelli";s:11:"description";s:56:"Tableless, recolorable, multi-column, fixed width theme.";s:7:"version";s:4:"6.17";s:4:"core";s:3:"6.x";s:10:"base theme";s:7:"garland";s:11:"stylesheets";a:1:{s:3:"all";a:1:{s:12:"minnelli.css";s:36:"themes/garland/minnelli/minnelli.css";}}s:7:"project";s:6:"drupal";s:9:"datestamp";s:10:"1275505216";s:7:"regions";a:5:{s:4:"left";s:12:"Left sidebar";s:5:"right";s:13:"Right sidebar";s:7:"content";s:7:"Content";s:6:"header";s:6:"Header";s:6:"footer";s:6:"Footer";}s:8:"features";a:10:{i:0;s:20:"comment_user_picture";i:1;s:7:"favicon";i:2;s:7:"mission";i:3;s:4:"logo";i:4;s:4:"name";i:5;s:17:"node_user_picture";i:6;s:6:"search";i:7;s:6:"slogan";i:8;s:13:"primary_links";i:9;s:15:"secondary_links";}s:7:"scripts";a:1:{s:9:"script.js";s:33:"themes/garland/minnelli/script.js";}s:10:"screenshot";s:38:"themes/garland/minnelli/screenshot.png";s:3:"php";s:5:"4.3.5";s:6:"engine";s:11:"phptemplate";}s:11:"stylesheets";a:1:{s:3:"all";a:1:{s:12:"minnelli.css";s:36:"themes/garland/minnelli/minnelli.css";}}s:6:"engine";s:11:"phptemplate";s:10:"base_theme";s:7:"garland";}}',
+  'page_callback' => 'drupal_get_form',
+  'page_arguments' => 'a:2:{i:0;s:21:"system_theme_settings";i:1;s:8:"minnelli";}',
+  'fit' => '31',
+  'number_parts' => '5',
+  'tab_parent' => 'admin/build/themes/settings',
+  'tab_root' => 'admin/build/themes',
+  'title' => 'Minnelli',
+  'title_callback' => 't',
+  'title_arguments' => '',
+  'type' => '128',
+  'block_callback' => '',
+  'description' => '',
+  'position' => '',
+  'weight' => '0',
+  'file' => 'modules/system/system.admin.inc',
+))
+->values(array(
+  'path' => 'admin/build/themes/settings/pushbutton',
+  'load_functions' => '',
+  'to_arg_functions' => '',
+  'access_callback' => '_system_themes_access',
+  'access_arguments' => 'a:1:{i:0;O:8:"stdClass":12:{s:8:"filename";s:33:"themes/pushbutton/pushbutton.info";s:4:"name";s:10:"pushbutton";s:4:"type";s:5:"theme";s:5:"owner";s:45:"themes/engines/phptemplate/phptemplate.engine";s:6:"status";s:1:"0";s:8:"throttle";s:1:"0";s:9:"bootstrap";s:1:"0";s:14:"schema_version";s:2:"-1";s:6:"weight";s:1:"0";s:4:"info";a:13:{s:4:"name";s:10:"Pushbutton";s:11:"description";s:52:"Tabled, multi-column theme in blue and orange tones.";s:7:"version";s:4:"6.17";s:4:"core";s:3:"6.x";s:6:"engine";s:11:"phptemplate";s:7:"project";s:6:"drupal";s:9:"datestamp";s:10:"1275505216";s:7:"regions";a:5:{s:4:"left";s:12:"Left sidebar";s:5:"right";s:13:"Right sidebar";s:7:"content";s:7:"Content";s:6:"header";s:6:"Header";s:6:"footer";s:6:"Footer";}s:8:"features";a:10:{i:0;s:20:"comment_user_picture";i:1;s:7:"favicon";i:2;s:7:"mission";i:3;s:4:"logo";i:4;s:4:"name";i:5;s:17:"node_user_picture";i:6;s:6:"search";i:7;s:6:"slogan";i:8;s:13:"primary_links";i:9;s:15:"secondary_links";}s:11:"stylesheets";a:1:{s:3:"all";a:1:{s:9:"style.css";s:27:"themes/pushbutton/style.css";}}s:7:"scripts";a:1:{s:9:"script.js";s:27:"themes/pushbutton/script.js";}s:10:"screenshot";s:32:"themes/pushbutton/screenshot.png";s:3:"php";s:5:"4.3.5";}s:11:"stylesheets";a:1:{s:3:"all";a:1:{s:9:"style.css";s:27:"themes/pushbutton/style.css";}}s:6:"engine";s:11:"phptemplate";}}',
+  'page_callback' => 'drupal_get_form',
+  'page_arguments' => 'a:2:{i:0;s:21:"system_theme_settings";i:1;s:10:"pushbutton";}',
+  'fit' => '31',
+  'number_parts' => '5',
+  'tab_parent' => 'admin/build/themes/settings',
+  'tab_root' => 'admin/build/themes',
+  'title' => 'Pushbutton',
+  'title_callback' => 't',
+  'title_arguments' => '',
+  'type' => '128',
+  'block_callback' => '',
+  'description' => '',
+  'position' => '',
+  'weight' => '0',
+  'file' => 'modules/system/system.admin.inc',
+))
+->values(array(
+  'path' => 'admin/by-module',
+  'load_functions' => '',
+  'to_arg_functions' => '',
+  'access_callback' => 'user_access',
+  'access_arguments' => 'a:1:{i:0;s:27:"access administration pages";}',
+  'page_callback' => 'system_admin_by_module',
+  'page_arguments' => 'a:0:{}',
+  'fit' => '3',
+  'number_parts' => '2',
+  'tab_parent' => 'admin',
+  'tab_root' => 'admin',
+  'title' => 'By module',
+  'title_callback' => 't',
+  'title_arguments' => '',
+  'type' => '128',
+  'block_callback' => '',
+  'description' => '',
+  'position' => '',
+  'weight' => '2',
+  'file' => 'modules/system/system.admin.inc',
+))
+->values(array(
+  'path' => 'admin/by-task',
+  'load_functions' => '',
+  'to_arg_functions' => '',
+  'access_callback' => 'user_access',
+  'access_arguments' => 'a:1:{i:0;s:27:"access administration pages";}',
+  'page_callback' => 'system_main_admin_page',
+  'page_arguments' => 'a:0:{}',
+  'fit' => '3',
+  'number_parts' => '2',
+  'tab_parent' => 'admin',
+  'tab_root' => 'admin',
+  'title' => 'By task',
+  'title_callback' => 't',
+  'title_arguments' => '',
+  'type' => '136',
+  'block_callback' => '',
+  'description' => '',
+  'position' => '',
+  'weight' => '0',
+  'file' => 'modules/system/system.admin.inc',
+))
+->values(array(
+  'path' => 'admin/compact',
+  'load_functions' => '',
+  'to_arg_functions' => '',
+  'access_callback' => 'user_access',
+  'access_arguments' => 'a:1:{i:0;s:27:"access administration pages";}',
+  'page_callback' => 'system_admin_compact_page',
+  'page_arguments' => 'a:0:{}',
+  'fit' => '3',
+  'number_parts' => '2',
+  'tab_parent' => '',
+  'tab_root' => 'admin/compact',
+  'title' => 'Compact mode',
+  'title_callback' => 't',
+  'title_arguments' => '',
+  'type' => '4',
+  'block_callback' => '',
+  'description' => '',
+  'position' => '',
+  'weight' => '0',
+  'file' => 'modules/system/system.admin.inc',
+))
+->values(array(
+  'path' => 'admin/content',
+  'load_functions' => '',
+  'to_arg_functions' => '',
+  'access_callback' => 'user_access',
+  'access_arguments' => 'a:1:{i:0;s:27:"access administration pages";}',
+  'page_callback' => 'system_admin_menu_block_page',
+  'page_arguments' => 'a:0:{}',
+  'fit' => '3',
+  'number_parts' => '2',
+  'tab_parent' => '',
+  'tab_root' => 'admin/content',
+  'title' => 'Content management',
+  'title_callback' => 't',
+  'title_arguments' => '',
+  'type' => '6',
+  'block_callback' => '',
+  'description' => "Manage your site's content.",
+  'position' => 'left',
+  'weight' => '-10',
+  'file' => 'modules/system/system.admin.inc',
+))
+->values(array(
+  'path' => 'admin/content/node',
+  'load_functions' => '',
+  'to_arg_functions' => '',
+  'access_callback' => 'user_access',
+  'access_arguments' => 'a:1:{i:0;s:16:"administer nodes";}',
+  'page_callback' => 'drupal_get_form',
+  'page_arguments' => 'a:1:{i:0;s:18:"node_admin_content";}',
+  'fit' => '7',
+  'number_parts' => '3',
+  'tab_parent' => '',
+  'tab_root' => 'admin/content/node',
+  'title' => 'Content',
+  'title_callback' => 't',
+  'title_arguments' => '',
+  'type' => '6',
+  'block_callback' => '',
+  'description' => "View, edit, and delete your site's content.",
+  'position' => '',
+  'weight' => '0',
+  'file' => 'modules/node/node.admin.inc',
+))
+->values(array(
+  'path' => 'admin/content/node-settings',
+  'load_functions' => '',
+  'to_arg_functions' => '',
+  'access_callback' => 'user_access',
+  'access_arguments' => 'a:1:{i:0;s:16:"administer nodes";}',
+  'page_callback' => 'drupal_get_form',
+  'page_arguments' => 'a:1:{i:0;s:14:"node_configure";}',
+  'fit' => '7',
+  'number_parts' => '3',
+  'tab_parent' => '',
+  'tab_root' => 'admin/content/node-settings',
+  'title' => 'Post settings',
+  'title_callback' => 't',
+  'title_arguments' => '',
+  'type' => '6',
+  'block_callback' => '',
+  'description' => 'Control posting behavior, such as teaser length, requiring previews before posting, and the number of posts on the front page.',
+  'position' => '',
+  'weight' => '0',
+  'file' => 'modules/node/node.admin.inc',
+))
+->values(array(
+  'path' => 'admin/content/node-settings/rebuild',
+  'load_functions' => '',
+  'to_arg_functions' => '',
+  'access_callback' => 'user_access',
+  'access_arguments' => 'a:1:{i:0;s:27:"access administration pages";}',
+  'page_callback' => 'drupal_get_form',
+  'page_arguments' => 'a:1:{i:0;s:30:"node_configure_rebuild_confirm";}',
+  'fit' => '15',
+  'number_parts' => '4',
+  'tab_parent' => '',
+  'tab_root' => 'admin/content/node-settings/rebuild',
+  'title' => 'Rebuild permissions',
+  'title_callback' => 't',
+  'title_arguments' => '',
+  'type' => '4',
+  'block_callback' => '',
+  'description' => '',
+  'position' => '',
+  'weight' => '0',
+  'file' => 'modules/node/node.admin.inc',
+))
+->values(array(
+  'path' => 'admin/content/node-type/page',
+  'load_functions' => '',
+  'to_arg_functions' => '',
+  'access_callback' => 'user_access',
+  'access_arguments' => 'a:1:{i:0;s:24:"administer content types";}',
+  'page_callback' => 'drupal_get_form',
+  'page_arguments' => "a:2:{i:0;s:14:\"node_type_form\";i:1;O:8:\"stdClass\":14:{s:4:\"type\";s:4:\"page\";s:4:\"name\";s:4:\"Page\";s:6:\"module\";s:4:\"node\";s:11:\"description\";s:296:\"A <em>page</em>, similar in form to a <em>story</em>, is a simple method for creating and displaying information that rarely changes, such as an \"About us\" section of a website. By default, a <em>page</em> entry does not allow visitor comments and is not featured on the site's initial home page.\";s:4:\"help\";s:0:\"\";s:9:\"has_title\";s:1:\"1\";s:11:\"title_label\";s:5:\"Title\";s:8:\"has_body\";s:1:\"1\";s:10:\"body_label\";s:4:\"Body\";s:14:\"min_word_count\";s:1:\"0\";s:6:\"custom\";s:1:\"1\";s:8:\"modified\";s:1:\"1\";s:6:\"locked\";s:1:\"0\";s:9:\"orig_type\";s:4:\"page\";}}",
+  'fit' => '15',
+  'number_parts' => '4',
+  'tab_parent' => '',
+  'tab_root' => 'admin/content/node-type/page',
+  'title' => 'Page',
+  'title_callback' => 't',
+  'title_arguments' => '',
+  'type' => '4',
+  'block_callback' => '',
+  'description' => '',
+  'position' => '',
+  'weight' => '0',
+  'file' => 'modules/node/content_types.inc',
+))
+->values(array(
+  'path' => 'admin/content/node-type/page/delete',
+  'load_functions' => '',
+  'to_arg_functions' => '',
+  'access_callback' => 'user_access',
+  'access_arguments' => 'a:1:{i:0;s:24:"administer content types";}',
+  'page_callback' => 'drupal_get_form',
+  'page_arguments' => "a:2:{i:0;s:24:\"node_type_delete_confirm\";i:1;O:8:\"stdClass\":14:{s:4:\"type\";s:4:\"page\";s:4:\"name\";s:4:\"Page\";s:6:\"module\";s:4:\"node\";s:11:\"description\";s:296:\"A <em>page</em>, similar in form to a <em>story</em>, is a simple method for creating and displaying information that rarely changes, such as an \"About us\" section of a website. By default, a <em>page</em> entry does not allow visitor comments and is not featured on the site's initial home page.\";s:4:\"help\";s:0:\"\";s:9:\"has_title\";s:1:\"1\";s:11:\"title_label\";s:5:\"Title\";s:8:\"has_body\";s:1:\"1\";s:10:\"body_label\";s:4:\"Body\";s:14:\"min_word_count\";s:1:\"0\";s:6:\"custom\";s:1:\"1\";s:8:\"modified\";s:1:\"1\";s:6:\"locked\";s:1:\"0\";s:9:\"orig_type\";s:4:\"page\";}}",
+  'fit' => '31',
+  'number_parts' => '5',
+  'tab_parent' => '',
+  'tab_root' => 'admin/content/node-type/page/delete',
+  'title' => 'Delete',
+  'title_callback' => 't',
+  'title_arguments' => '',
+  'type' => '4',
+  'block_callback' => '',
+  'description' => '',
+  'position' => '',
+  'weight' => '0',
+  'file' => 'modules/node/content_types.inc',
+))
+->values(array(
+  'path' => 'admin/content/node-type/page/edit',
+  'load_functions' => '',
+  'to_arg_functions' => '',
+  'access_callback' => 'user_access',
+  'access_arguments' => 'a:1:{i:0;s:24:"administer content types";}',
+  'page_callback' => 'drupal_get_form',
+  'page_arguments' => "a:2:{i:0;s:14:\"node_type_form\";i:1;O:8:\"stdClass\":14:{s:4:\"type\";s:4:\"page\";s:4:\"name\";s:4:\"Page\";s:6:\"module\";s:4:\"node\";s:11:\"description\";s:296:\"A <em>page</em>, similar in form to a <em>story</em>, is a simple method for creating and displaying information that rarely changes, such as an \"About us\" section of a website. By default, a <em>page</em> entry does not allow visitor comments and is not featured on the site's initial home page.\";s:4:\"help\";s:0:\"\";s:9:\"has_title\";s:1:\"1\";s:11:\"title_label\";s:5:\"Title\";s:8:\"has_body\";s:1:\"1\";s:10:\"body_label\";s:4:\"Body\";s:14:\"min_word_count\";s:1:\"0\";s:6:\"custom\";s:1:\"1\";s:8:\"modified\";s:1:\"1\";s:6:\"locked\";s:1:\"0\";s:9:\"orig_type\";s:4:\"page\";}}",
+  'fit' => '31',
+  'number_parts' => '5',
+  'tab_parent' => 'admin/content/node-type/page',
+  'tab_root' => 'admin/content/node-type/page',
+  'title' => 'Edit',
+  'title_callback' => 't',
+  'title_arguments' => '',
+  'type' => '136',
+  'block_callback' => '',
+  'description' => '',
+  'position' => '',
+  'weight' => '0',
+  'file' => 'modules/node/content_types.inc',
+))
+->values(array(
+  'path' => 'admin/content/node-type/story',
+  'load_functions' => '',
+  'to_arg_functions' => '',
+  'access_callback' => 'user_access',
+  'access_arguments' => 'a:1:{i:0;s:24:"administer content types";}',
+  'page_callback' => 'drupal_get_form',
+  'page_arguments' => "a:2:{i:0;s:14:\"node_type_form\";i:1;O:8:\"stdClass\":14:{s:4:\"type\";s:5:\"story\";s:4:\"name\";s:5:\"Story\";s:6:\"module\";s:4:\"node\";s:11:\"description\";s:392:\"A <em>story</em>, similar in form to a <em>page</em>, is ideal for creating and displaying content that informs or engages website visitors. Press releases, site announcements, and informal blog-like entries may all be created with a <em>story</em> entry. By default, a <em>story</em> entry is automatically featured on the site's initial home page, and provides the ability to post comments.\";s:4:\"help\";s:0:\"\";s:9:\"has_title\";s:1:\"1\";s:11:\"title_label\";s:5:\"Title\";s:8:\"has_body\";s:1:\"1\";s:10:\"body_label\";s:4:\"Body\";s:14:\"min_word_count\";s:1:\"0\";s:6:\"custom\";s:1:\"1\";s:8:\"modified\";s:1:\"1\";s:6:\"locked\";s:1:\"0\";s:9:\"orig_type\";s:5:\"story\";}}",
+  'fit' => '15',
+  'number_parts' => '4',
+  'tab_parent' => '',
+  'tab_root' => 'admin/content/node-type/story',
+  'title' => 'Story',
+  'title_callback' => 't',
+  'title_arguments' => '',
+  'type' => '4',
+  'block_callback' => '',
+  'description' => '',
+  'position' => '',
+  'weight' => '0',
+  'file' => 'modules/node/content_types.inc',
+))
+->values(array(
+  'path' => 'admin/content/node-type/story/delete',
+  'load_functions' => '',
+  'to_arg_functions' => '',
+  'access_callback' => 'user_access',
+  'access_arguments' => 'a:1:{i:0;s:24:"administer content types";}',
+  'page_callback' => 'drupal_get_form',
+  'page_arguments' => "a:2:{i:0;s:24:\"node_type_delete_confirm\";i:1;O:8:\"stdClass\":14:{s:4:\"type\";s:5:\"story\";s:4:\"name\";s:5:\"Story\";s:6:\"module\";s:4:\"node\";s:11:\"description\";s:392:\"A <em>story</em>, similar in form to a <em>page</em>, is ideal for creating and displaying content that informs or engages website visitors. Press releases, site announcements, and informal blog-like entries may all be created with a <em>story</em> entry. By default, a <em>story</em> entry is automatically featured on the site's initial home page, and provides the ability to post comments.\";s:4:\"help\";s:0:\"\";s:9:\"has_title\";s:1:\"1\";s:11:\"title_label\";s:5:\"Title\";s:8:\"has_body\";s:1:\"1\";s:10:\"body_label\";s:4:\"Body\";s:14:\"min_word_count\";s:1:\"0\";s:6:\"custom\";s:1:\"1\";s:8:\"modified\";s:1:\"1\";s:6:\"locked\";s:1:\"0\";s:9:\"orig_type\";s:5:\"story\";}}",
+  'fit' => '31',
+  'number_parts' => '5',
+  'tab_parent' => '',
+  'tab_root' => 'admin/content/node-type/story/delete',
+  'title' => 'Delete',
+  'title_callback' => 't',
+  'title_arguments' => '',
+  'type' => '4',
+  'block_callback' => '',
+  'description' => '',
+  'position' => '',
+  'weight' => '0',
+  'file' => 'modules/node/content_types.inc',
+))
+->values(array(
+  'path' => 'admin/content/node-type/story/edit',
+  'load_functions' => '',
+  'to_arg_functions' => '',
+  'access_callback' => 'user_access',
+  'access_arguments' => 'a:1:{i:0;s:24:"administer content types";}',
+  'page_callback' => 'drupal_get_form',
+  'page_arguments' => "a:2:{i:0;s:14:\"node_type_form\";i:1;O:8:\"stdClass\":14:{s:4:\"type\";s:5:\"story\";s:4:\"name\";s:5:\"Story\";s:6:\"module\";s:4:\"node\";s:11:\"description\";s:392:\"A <em>story</em>, similar in form to a <em>page</em>, is ideal for creating and displaying content that informs or engages website visitors. Press releases, site announcements, and informal blog-like entries may all be created with a <em>story</em> entry. By default, a <em>story</em> entry is automatically featured on the site's initial home page, and provides the ability to post comments.\";s:4:\"help\";s:0:\"\";s:9:\"has_title\";s:1:\"1\";s:11:\"title_label\";s:5:\"Title\";s:8:\"has_body\";s:1:\"1\";s:10:\"body_label\";s:4:\"Body\";s:14:\"min_word_count\";s:1:\"0\";s:6:\"custom\";s:1:\"1\";s:8:\"modified\";s:1:\"1\";s:6:\"locked\";s:1:\"0\";s:9:\"orig_type\";s:5:\"story\";}}",
+  'fit' => '31',
+  'number_parts' => '5',
+  'tab_parent' => 'admin/content/node-type/story',
+  'tab_root' => 'admin/content/node-type/story',
+  'title' => 'Edit',
+  'title_callback' => 't',
+  'title_arguments' => '',
+  'type' => '136',
+  'block_callback' => '',
+  'description' => '',
+  'position' => '',
+  'weight' => '0',
+  'file' => 'modules/node/content_types.inc',
+))
+->values(array(
+  'path' => 'admin/content/node/overview',
+  'load_functions' => '',
+  'to_arg_functions' => '',
+  'access_callback' => 'user_access',
+  'access_arguments' => 'a:1:{i:0;s:16:"administer nodes";}',
+  'page_callback' => 'drupal_get_form',
+  'page_arguments' => 'a:1:{i:0;s:18:"node_admin_content";}',
+  'fit' => '15',
+  'number_parts' => '4',
+  'tab_parent' => 'admin/content/node',
+  'tab_root' => 'admin/content/node',
+  'title' => 'List',
+  'title_callback' => 't',
+  'title_arguments' => '',
+  'type' => '136',
+  'block_callback' => '',
+  'description' => '',
+  'position' => '',
+  'weight' => '-10',
+  'file' => 'modules/node/node.admin.inc',
+))
+->values(array(
+  'path' => 'admin/content/rss-publishing',
+  'load_functions' => '',
+  'to_arg_functions' => '',
+  'access_callback' => 'user_access',
+  'access_arguments' => 'a:1:{i:0;s:29:"administer site configuration";}',
+  'page_callback' => 'drupal_get_form',
+  'page_arguments' => 'a:1:{i:0;s:25:"system_rss_feeds_settings";}',
+  'fit' => '7',
+  'number_parts' => '3',
+  'tab_parent' => '',
+  'tab_root' => 'admin/content/rss-publishing',
+  'title' => 'RSS publishing',
+  'title_callback' => 't',
+  'title_arguments' => '',
+  'type' => '6',
+  'block_callback' => '',
+  'description' => 'Configure the number of items per feed and whether feeds should be titles/teasers/full-text.',
+  'position' => '',
+  'weight' => '0',
+  'file' => 'modules/system/system.admin.inc',
+))
+->values(array(
+  'path' => 'admin/content/types',
+  'load_functions' => '',
+  'to_arg_functions' => '',
+  'access_callback' => 'user_access',
+  'access_arguments' => 'a:1:{i:0;s:24:"administer content types";}',
+  'page_callback' => 'node_overview_types',
+  'page_arguments' => 'a:0:{}',
+  'fit' => '7',
+  'number_parts' => '3',
+  'tab_parent' => '',
+  'tab_root' => 'admin/content/types',
+  'title' => 'Content types',
+  'title_callback' => 't',
+  'title_arguments' => '',
+  'type' => '6',
+  'block_callback' => '',
+  'description' => 'Manage posts by content type, including default status, front page promotion, etc.',
+  'position' => '',
+  'weight' => '0',
+  'file' => 'modules/node/content_types.inc',
+))
+->values(array(
+  'path' => 'admin/content/types/add',
+  'load_functions' => '',
+  'to_arg_functions' => '',
+  'access_callback' => 'user_access',
+  'access_arguments' => 'a:1:{i:0;s:24:"administer content types";}',
+  'page_callback' => 'drupal_get_form',
+  'page_arguments' => 'a:1:{i:0;s:14:"node_type_form";}',
+  'fit' => '15',
+  'number_parts' => '4',
+  'tab_parent' => 'admin/content/types',
+  'tab_root' => 'admin/content/types',
+  'title' => 'Add content type',
+  'title_callback' => 't',
+  'title_arguments' => '',
+  'type' => '128',
+  'block_callback' => '',
+  'description' => '',
+  'position' => '',
+  'weight' => '0',
+  'file' => 'modules/node/content_types.inc',
+))
+->values(array(
+  'path' => 'admin/content/types/list',
+  'load_functions' => '',
+  'to_arg_functions' => '',
+  'access_callback' => 'user_access',
+  'access_arguments' => 'a:1:{i:0;s:24:"administer content types";}',
+  'page_callback' => 'node_overview_types',
+  'page_arguments' => 'a:0:{}',
+  'fit' => '15',
+  'number_parts' => '4',
+  'tab_parent' => 'admin/content/types',
+  'tab_root' => 'admin/content/types',
+  'title' => 'List',
+  'title_callback' => 't',
+  'title_arguments' => '',
+  'type' => '136',
+  'block_callback' => '',
+  'description' => '',
+  'position' => '',
+  'weight' => '-10',
+  'file' => 'modules/node/content_types.inc',
+))
+->values(array(
+  'path' => 'admin/reports',
+  'load_functions' => '',
+  'to_arg_functions' => '',
+  'access_callback' => 'user_access',
+  'access_arguments' => 'a:1:{i:0;s:19:"access site reports";}',
+  'page_callback' => 'system_admin_menu_block_page',
+  'page_arguments' => 'a:0:{}',
+  'fit' => '3',
+  'number_parts' => '2',
+  'tab_parent' => '',
+  'tab_root' => 'admin/reports',
+  'title' => 'Reports',
+  'title_callback' => 't',
+  'title_arguments' => '',
+  'type' => '6',
+  'block_callback' => '',
+  'description' => 'View reports from system logs and other status information.',
+  'position' => 'left',
+  'weight' => '5',
+  'file' => 'modules/system/system.admin.inc',
+))
+->values(array(
+  'path' => 'admin/reports/access-denied',
+  'load_functions' => '',
+  'to_arg_functions' => '',
+  'access_callback' => 'user_access',
+  'access_arguments' => 'a:1:{i:0;s:19:"access site reports";}',
+  'page_callback' => 'dblog_top',
+  'page_arguments' => 'a:1:{i:0;s:13:"access denied";}',
+  'fit' => '7',
+  'number_parts' => '3',
+  'tab_parent' => '',
+  'tab_root' => 'admin/reports/access-denied',
+  'title' => "Top 'access denied' errors",
+  'title_callback' => 't',
+  'title_arguments' => '',
+  'type' => '6',
+  'block_callback' => '',
+  'description' => "View 'access denied' errors (403s).",
+  'position' => '',
+  'weight' => '0',
+  'file' => 'modules/dblog/dblog.admin.inc',
+))
+->values(array(
+  'path' => 'admin/reports/dblog',
+  'load_functions' => '',
+  'to_arg_functions' => '',
+  'access_callback' => 'user_access',
+  'access_arguments' => 'a:1:{i:0;s:19:"access site reports";}',
+  'page_callback' => 'dblog_overview',
+  'page_arguments' => 'a:0:{}',
+  'fit' => '7',
+  'number_parts' => '3',
+  'tab_parent' => '',
+  'tab_root' => 'admin/reports/dblog',
+  'title' => 'Recent log entries',
+  'title_callback' => 't',
+  'title_arguments' => '',
+  'type' => '6',
+  'block_callback' => '',
+  'description' => 'View events that have recently been logged.',
+  'position' => '',
+  'weight' => '-1',
+  'file' => 'modules/dblog/dblog.admin.inc',
+))
+->values(array(
+  'path' => 'admin/reports/event/%',
+  'load_functions' => 'a:1:{i:3;N;}',
+  'to_arg_functions' => '',
+  'access_callback' => 'user_access',
+  'access_arguments' => 'a:1:{i:0;s:19:"access site reports";}',
+  'page_callback' => 'dblog_event',
+  'page_arguments' => 'a:1:{i:0;i:3;}',
+  'fit' => '14',
+  'number_parts' => '4',
+  'tab_parent' => '',
+  'tab_root' => 'admin/reports/event/%',
+  'title' => 'Details',
+  'title_callback' => 't',
+  'title_arguments' => '',
+  'type' => '4',
+  'block_callback' => '',
+  'description' => '',
+  'position' => '',
+  'weight' => '0',
+  'file' => 'modules/dblog/dblog.admin.inc',
+))
+->values(array(
+  'path' => 'admin/reports/page-not-found',
+  'load_functions' => '',
+  'to_arg_functions' => '',
+  'access_callback' => 'user_access',
+  'access_arguments' => 'a:1:{i:0;s:19:"access site reports";}',
+  'page_callback' => 'dblog_top',
+  'page_arguments' => 'a:1:{i:0;s:14:"page not found";}',
+  'fit' => '7',
+  'number_parts' => '3',
+  'tab_parent' => '',
+  'tab_root' => 'admin/reports/page-not-found',
+  'title' => "Top 'page not found' errors",
+  'title_callback' => 't',
+  'title_arguments' => '',
+  'type' => '6',
+  'block_callback' => '',
+  'description' => "View 'page not found' errors (404s).",
+  'position' => '',
+  'weight' => '0',
+  'file' => 'modules/dblog/dblog.admin.inc',
+))
+->values(array(
+  'path' => 'admin/reports/status',
+  'load_functions' => '',
+  'to_arg_functions' => '',
+  'access_callback' => 'user_access',
+  'access_arguments' => 'a:1:{i:0;s:29:"administer site configuration";}',
+  'page_callback' => 'system_status',
+  'page_arguments' => 'a:0:{}',
+  'fit' => '7',
+  'number_parts' => '3',
+  'tab_parent' => '',
+  'tab_root' => 'admin/reports/status',
+  'title' => 'Status report',
+  'title_callback' => 't',
+  'title_arguments' => '',
+  'type' => '6',
+  'block_callback' => '',
+  'description' => "Get a status report about your site's operation and any detected problems.",
+  'position' => '',
+  'weight' => '10',
+  'file' => 'modules/system/system.admin.inc',
+))
+->values(array(
+  'path' => 'admin/reports/status/php',
+  'load_functions' => '',
+  'to_arg_functions' => '',
+  'access_callback' => 'user_access',
+  'access_arguments' => 'a:1:{i:0;s:29:"administer site configuration";}',
+  'page_callback' => 'system_php',
+  'page_arguments' => 'a:0:{}',
+  'fit' => '15',
+  'number_parts' => '4',
+  'tab_parent' => '',
+  'tab_root' => 'admin/reports/status/php',
+  'title' => 'PHP',
+  'title_callback' => 't',
+  'title_arguments' => '',
+  'type' => '4',
+  'block_callback' => '',
+  'description' => '',
+  'position' => '',
+  'weight' => '0',
+  'file' => 'modules/system/system.admin.inc',
+))
+->values(array(
+  'path' => 'admin/reports/status/run-cron',
+  'load_functions' => '',
+  'to_arg_functions' => '',
+  'access_callback' => 'user_access',
+  'access_arguments' => 'a:1:{i:0;s:29:"administer site configuration";}',
+  'page_callback' => 'system_run_cron',
+  'page_arguments' => 'a:0:{}',
+  'fit' => '15',
+  'number_parts' => '4',
+  'tab_parent' => '',
+  'tab_root' => 'admin/reports/status/run-cron',
+  'title' => 'Run cron',
+  'title_callback' => 't',
+  'title_arguments' => '',
+  'type' => '4',
+  'block_callback' => '',
+  'description' => '',
+  'position' => '',
+  'weight' => '0',
+  'file' => 'modules/system/system.admin.inc',
+))
+->values(array(
+  'path' => 'admin/reports/status/sql',
+  'load_functions' => '',
+  'to_arg_functions' => '',
+  'access_callback' => 'user_access',
+  'access_arguments' => 'a:1:{i:0;s:29:"administer site configuration";}',
+  'page_callback' => 'system_sql',
+  'page_arguments' => 'a:0:{}',
+  'fit' => '15',
+  'number_parts' => '4',
+  'tab_parent' => '',
+  'tab_root' => 'admin/reports/status/sql',
+  'title' => 'SQL',
+  'title_callback' => 't',
+  'title_arguments' => '',
+  'type' => '4',
+  'block_callback' => '',
+  'description' => '',
+  'position' => '',
+  'weight' => '0',
+  'file' => 'modules/system/system.admin.inc',
+))
+->values(array(
+  'path' => 'admin/reports/updates',
+  'load_functions' => '',
+  'to_arg_functions' => '',
+  'access_callback' => 'user_access',
+  'access_arguments' => 'a:1:{i:0;s:29:"administer site configuration";}',
+  'page_callback' => 'update_status',
+  'page_arguments' => 'a:0:{}',
+  'fit' => '7',
+  'number_parts' => '3',
+  'tab_parent' => '',
+  'tab_root' => 'admin/reports/updates',
+  'title' => 'Available updates',
+  'title_callback' => 't',
+  'title_arguments' => '',
+  'type' => '6',
+  'block_callback' => '',
+  'description' => 'Get a status report about available updates for your installed modules and themes.',
+  'position' => '',
+  'weight' => '10',
+  'file' => 'modules/update/update.report.inc',
+))
+->values(array(
+  'path' => 'admin/reports/updates/check',
+  'load_functions' => '',
+  'to_arg_functions' => '',
+  'access_callback' => 'user_access',
+  'access_arguments' => 'a:1:{i:0;s:29:"administer site configuration";}',
+  'page_callback' => 'update_manual_status',
+  'page_arguments' => 'a:0:{}',
+  'fit' => '15',
+  'number_parts' => '4',
+  'tab_parent' => '',
+  'tab_root' => 'admin/reports/updates/check',
+  'title' => 'Manual update check',
+  'title_callback' => 't',
+  'title_arguments' => '',
+  'type' => '4',
+  'block_callback' => '',
+  'description' => '',
+  'position' => '',
+  'weight' => '0',
+  'file' => 'modules/update/update.fetch.inc',
+))
+->values(array(
+  'path' => 'admin/reports/updates/list',
+  'load_functions' => '',
+  'to_arg_functions' => '',
+  'access_callback' => 'user_access',
+  'access_arguments' => 'a:1:{i:0;s:29:"administer site configuration";}',
+  'page_callback' => 'update_status',
+  'page_arguments' => 'a:0:{}',
+  'fit' => '15',
+  'number_parts' => '4',
+  'tab_parent' => 'admin/reports/updates',
+  'tab_root' => 'admin/reports/updates',
+  'title' => 'List',
+  'title_callback' => 't',
+  'title_arguments' => '',
+  'type' => '136',
+  'block_callback' => '',
+  'description' => '',
+  'position' => '',
+  'weight' => '0',
+  'file' => 'modules/update/update.report.inc',
+))
+->values(array(
+  'path' => 'admin/reports/updates/settings',
+  'load_functions' => '',
+  'to_arg_functions' => '',
+  'access_callback' => 'user_access',
+  'access_arguments' => 'a:1:{i:0;s:29:"administer site configuration";}',
+  'page_callback' => 'drupal_get_form',
+  'page_arguments' => 'a:1:{i:0;s:15:"update_settings";}',
+  'fit' => '15',
+  'number_parts' => '4',
+  'tab_parent' => 'admin/reports/updates',
+  'tab_root' => 'admin/reports/updates',
+  'title' => 'Settings',
+  'title_callback' => 't',
+  'title_arguments' => '',
+  'type' => '128',
+  'block_callback' => '',
+  'description' => '',
+  'position' => '',
+  'weight' => '0',
+  'file' => 'modules/update/update.settings.inc',
+))
+->values(array(
+  'path' => 'admin/settings',
+  'load_functions' => '',
+  'to_arg_functions' => '',
+  'access_callback' => 'user_access',
+  'access_arguments' => 'a:1:{i:0;s:27:"access administration pages";}',
+  'page_callback' => 'system_settings_overview',
+  'page_arguments' => 'a:0:{}',
+  'fit' => '3',
+  'number_parts' => '2',
+  'tab_parent' => '',
+  'tab_root' => 'admin/settings',
+  'title' => 'Site configuration',
+  'title_callback' => 't',
+  'title_arguments' => '',
+  'type' => '6',
+  'block_callback' => '',
+  'description' => 'Adjust basic site configuration options.',
+  'position' => 'right',
+  'weight' => '-5',
+  'file' => 'modules/system/system.admin.inc',
+))
+->values(array(
+  'path' => 'admin/settings/actions',
+  'load_functions' => '',
+  'to_arg_functions' => '',
+  'access_callback' => 'user_access',
+  'access_arguments' => 'a:1:{i:0;s:18:"administer actions";}',
+  'page_callback' => 'system_actions_manage',
+  'page_arguments' => 'a:0:{}',
+  'fit' => '7',
+  'number_parts' => '3',
+  'tab_parent' => '',
+  'tab_root' => 'admin/settings/actions',
+  'title' => 'Actions',
+  'title_callback' => 't',
+  'title_arguments' => '',
+  'type' => '6',
+  'block_callback' => '',
+  'description' => 'Manage the actions defined for your site.',
+  'position' => '',
+  'weight' => '0',
+  'file' => '',
+))
+->values(array(
+  'path' => 'admin/settings/actions/configure',
+  'load_functions' => '',
+  'to_arg_functions' => '',
+  'access_callback' => 'user_access',
+  'access_arguments' => 'a:1:{i:0;s:18:"administer actions";}',
+  'page_callback' => 'drupal_get_form',
+  'page_arguments' => 'a:1:{i:0;s:24:"system_actions_configure";}',
+  'fit' => '15',
+  'number_parts' => '4',
+  'tab_parent' => '',
+  'tab_root' => 'admin/settings/actions/configure',
+  'title' => 'Configure an advanced action',
+  'title_callback' => 't',
+  'title_arguments' => '',
+  'type' => '4',
+  'block_callback' => '',
+  'description' => '',
+  'position' => '',
+  'weight' => '0',
+  'file' => '',
+))
+->values(array(
+  'path' => 'admin/settings/actions/delete/%',
+  'load_functions' => 'a:1:{i:4;s:12:"actions_load";}',
+  'to_arg_functions' => '',
+  'access_callback' => 'user_access',
+  'access_arguments' => 'a:1:{i:0;s:18:"administer actions";}',
+  'page_callback' => 'drupal_get_form',
+  'page_arguments' => 'a:2:{i:0;s:26:"system_actions_delete_form";i:1;i:4;}',
+  'fit' => '30',
+  'number_parts' => '5',
+  'tab_parent' => '',
+  'tab_root' => 'admin/settings/actions/delete/%',
+  'title' => 'Delete action',
+  'title_callback' => 't',
+  'title_arguments' => '',
+  'type' => '4',
+  'block_callback' => '',
+  'description' => 'Delete an action.',
+  'position' => '',
+  'weight' => '0',
+  'file' => '',
+))
+->values(array(
+  'path' => 'admin/settings/actions/manage',
+  'load_functions' => '',
+  'to_arg_functions' => '',
+  'access_callback' => 'user_access',
+  'access_arguments' => 'a:1:{i:0;s:18:"administer actions";}',
+  'page_callback' => 'system_actions_manage',
+  'page_arguments' => 'a:0:{}',
+  'fit' => '15',
+  'number_parts' => '4',
+  'tab_parent' => 'admin/settings/actions',
+  'tab_root' => 'admin/settings/actions',
+  'title' => 'Manage actions',
+  'title_callback' => 't',
+  'title_arguments' => '',
+  'type' => '136',
+  'block_callback' => '',
+  'description' => 'Manage the actions defined for your site.',
+  'position' => '',
+  'weight' => '-2',
+  'file' => '',
+))
+->values(array(
+  'path' => 'admin/settings/actions/orphan',
+  'load_functions' => '',
+  'to_arg_functions' => '',
+  'access_callback' => 'user_access',
+  'access_arguments' => 'a:1:{i:0;s:18:"administer actions";}',
+  'page_callback' => 'system_actions_remove_orphans',
+  'page_arguments' => 'a:0:{}',
+  'fit' => '15',
+  'number_parts' => '4',
+  'tab_parent' => '',
+  'tab_root' => 'admin/settings/actions/orphan',
+  'title' => 'Remove orphans',
+  'title_callback' => 't',
+  'title_arguments' => '',
+  'type' => '4',
+  'block_callback' => '',
+  'description' => '',
+  'position' => '',
+  'weight' => '0',
+  'file' => '',
+))
+->values(array(
+  'path' => 'admin/settings/admin',
+  'load_functions' => '',
+  'to_arg_functions' => '',
+  'access_callback' => 'user_access',
+  'access_arguments' => 'a:1:{i:0;s:29:"administer site configuration";}',
+  'page_callback' => 'drupal_get_form',
+  'page_arguments' => 'a:1:{i:0;s:27:"system_admin_theme_settings";}',
+  'fit' => '7',
+  'number_parts' => '3',
+  'tab_parent' => '',
+  'tab_root' => 'admin/settings/admin',
+  'title' => 'Administration theme',
+  'title_callback' => 't',
+  'title_arguments' => '',
+  'type' => '6',
+  'block_callback' => 'system_admin_theme_settings',
+  'description' => 'Settings for how your administrative pages should look.',
+  'position' => 'left',
+  'weight' => '0',
+  'file' => 'modules/system/system.admin.inc',
+))
+->values(array(
+  'path' => 'admin/settings/clean-urls',
+  'load_functions' => '',
+  'to_arg_functions' => '',
+  'access_callback' => 'user_access',
+  'access_arguments' => 'a:1:{i:0;s:29:"administer site configuration";}',
+  'page_callback' => 'drupal_get_form',
+  'page_arguments' => 'a:1:{i:0;s:25:"system_clean_url_settings";}',
+  'fit' => '7',
+  'number_parts' => '3',
+  'tab_parent' => '',
+  'tab_root' => 'admin/settings/clean-urls',
+  'title' => 'Clean URLs',
+  'title_callback' => 't',
+  'title_arguments' => '',
+  'type' => '6',
+  'block_callback' => '',
+  'description' => 'Enable or disable clean URLs for your site.',
+  'position' => '',
+  'weight' => '0',
+  'file' => 'modules/system/system.admin.inc',
+))
+->values(array(
+  'path' => 'admin/settings/clean-urls/check',
+  'load_functions' => '',
+  'to_arg_functions' => '',
+  'access_callback' => '1',
+  'access_arguments' => 'a:0:{}',
+  'page_callback' => 'drupal_json',
+  'page_arguments' => 'a:1:{i:0;a:1:{s:6:"status";b:1;}}',
+  'fit' => '15',
+  'number_parts' => '4',
+  'tab_parent' => '',
+  'tab_root' => 'admin/settings/clean-urls/check',
+  'title' => 'Clean URL check',
+  'title_callback' => 't',
+  'title_arguments' => '',
+  'type' => '4',
+  'block_callback' => '',
+  'description' => '',
+  'position' => '',
+  'weight' => '0',
+  'file' => '',
+))
+->values(array(
+  'path' => 'admin/settings/date-time',
+  'load_functions' => '',
+  'to_arg_functions' => '',
+  'access_callback' => 'user_access',
+  'access_arguments' => 'a:1:{i:0;s:29:"administer site configuration";}',
+  'page_callback' => 'drupal_get_form',
+  'page_arguments' => 'a:1:{i:0;s:25:"system_date_time_settings";}',
+  'fit' => '7',
+  'number_parts' => '3',
+  'tab_parent' => '',
+  'tab_root' => 'admin/settings/date-time',
+  'title' => 'Date and time',
+  'title_callback' => 't',
+  'title_arguments' => '',
+  'type' => '6',
+  'block_callback' => '',
+  'description' => "Settings for how Drupal displays date and time, as well as the system's default timezone.",
+  'position' => '',
+  'weight' => '0',
+  'file' => 'modules/system/system.admin.inc',
+))
+->values(array(
+  'path' => 'admin/settings/date-time/lookup',
+  'load_functions' => '',
+  'to_arg_functions' => '',
+  'access_callback' => 'user_access',
+  'access_arguments' => 'a:1:{i:0;s:29:"administer site configuration";}',
+  'page_callback' => 'system_date_time_lookup',
+  'page_arguments' => 'a:0:{}',
+  'fit' => '15',
+  'number_parts' => '4',
+  'tab_parent' => '',
+  'tab_root' => 'admin/settings/date-time/lookup',
+  'title' => 'Date and time lookup',
+  'title_callback' => 't',
+  'title_arguments' => '',
+  'type' => '4',
+  'block_callback' => '',
+  'description' => '',
+  'position' => '',
+  'weight' => '0',
+  'file' => 'modules/system/system.admin.inc',
+))
+->values(array(
+  'path' => 'admin/settings/error-reporting',
+  'load_functions' => '',
+  'to_arg_functions' => '',
+  'access_callback' => 'user_access',
+  'access_arguments' => 'a:1:{i:0;s:29:"administer site configuration";}',
+  'page_callback' => 'drupal_get_form',
+  'page_arguments' => 'a:1:{i:0;s:31:"system_error_reporting_settings";}',
+  'fit' => '7',
+  'number_parts' => '3',
+  'tab_parent' => '',
+  'tab_root' => 'admin/settings/error-reporting',
+  'title' => 'Error reporting',
+  'title_callback' => 't',
+  'title_arguments' => '',
+  'type' => '6',
+  'block_callback' => '',
+  'description' => 'Control how Drupal deals with errors including 403/404 errors as well as PHP error reporting.',
+  'position' => '',
+  'weight' => '0',
+  'file' => 'modules/system/system.admin.inc',
+))
+->values(array(
+  'path' => 'admin/settings/file-system',
+  'load_functions' => '',
+  'to_arg_functions' => '',
+  'access_callback' => 'user_access',
+  'access_arguments' => 'a:1:{i:0;s:29:"administer site configuration";}',
+  'page_callback' => 'drupal_get_form',
+  'page_arguments' => 'a:1:{i:0;s:27:"system_file_system_settings";}',
+  'fit' => '7',
+  'number_parts' => '3',
+  'tab_parent' => '',
+  'tab_root' => 'admin/settings/file-system',
+  'title' => 'File system',
+  'title_callback' => 't',
+  'title_arguments' => '',
+  'type' => '6',
+  'block_callback' => '',
+  'description' => 'Tell Drupal where to store uploaded files and how they are accessed.',
+  'position' => '',
+  'weight' => '0',
+  'file' => 'modules/system/system.admin.inc',
+))
+->values(array(
+  'path' => 'admin/settings/filters',
+  'load_functions' => '',
+  'to_arg_functions' => '',
+  'access_callback' => 'user_access',
+  'access_arguments' => 'a:1:{i:0;s:18:"administer filters";}',
+  'page_callback' => 'drupal_get_form',
+  'page_arguments' => 'a:1:{i:0;s:21:"filter_admin_overview";}',
+  'fit' => '7',
+  'number_parts' => '3',
+  'tab_parent' => '',
+  'tab_root' => 'admin/settings/filters',
+  'title' => 'Input formats',
+  'title_callback' => 't',
+  'title_arguments' => '',
+  'type' => '6',
+  'block_callback' => '',
+  'description' => 'Configure how content input by users is filtered, including allowed HTML tags. Also allows enabling of module-provided filters.',
+  'position' => '',
+  'weight' => '0',
+  'file' => 'modules/filter/filter.admin.inc',
+))
+->values(array(
+  'path' => 'admin/settings/filters/%',
+  'load_functions' => 'a:1:{i:3;s:18:"filter_format_load";}',
+  'to_arg_functions' => '',
+  'access_callback' => 'user_access',
+  'access_arguments' => 'a:1:{i:0;s:18:"administer filters";}',
+  'page_callback' => 'filter_admin_format_page',
+  'page_arguments' => 'a:1:{i:0;i:3;}',
+  'fit' => '14',
+  'number_parts' => '4',
+  'tab_parent' => '',
+  'tab_root' => 'admin/settings/filters/%',
+  'title' => '',
+  'title_callback' => 'filter_admin_format_title',
+  'title_arguments' => 'a:1:{i:0;i:3;}',
+  'type' => '4',
+  'block_callback' => '',
+  'description' => '',
+  'position' => '',
+  'weight' => '0',
+  'file' => 'modules/filter/filter.admin.inc',
+))
+->values(array(
+  'path' => 'admin/settings/filters/%/configure',
+  'load_functions' => 'a:1:{i:3;s:18:"filter_format_load";}',
+  'to_arg_functions' => '',
+  'access_callback' => 'user_access',
+  'access_arguments' => 'a:1:{i:0;s:18:"administer filters";}',
+  'page_callback' => 'filter_admin_configure_page',
+  'page_arguments' => 'a:1:{i:0;i:3;}',
+  'fit' => '29',
+  'number_parts' => '5',
+  'tab_parent' => 'admin/settings/filters/%',
+  'tab_root' => 'admin/settings/filters/%',
+  'title' => 'Configure',
+  'title_callback' => 't',
+  'title_arguments' => '',
+  'type' => '128',
+  'block_callback' => '',
+  'description' => '',
+  'position' => '',
+  'weight' => '1',
+  'file' => 'modules/filter/filter.admin.inc',
+))
+->values(array(
+  'path' => 'admin/settings/filters/%/edit',
+  'load_functions' => 'a:1:{i:3;s:18:"filter_format_load";}',
+  'to_arg_functions' => '',
+  'access_callback' => 'user_access',
+  'access_arguments' => 'a:1:{i:0;s:18:"administer filters";}',
+  'page_callback' => 'filter_admin_format_page',
+  'page_arguments' => 'a:1:{i:0;i:3;}',
+  'fit' => '29',
+  'number_parts' => '5',
+  'tab_parent' => 'admin/settings/filters/%',
+  'tab_root' => 'admin/settings/filters/%',
+  'title' => 'Edit',
+  'title_callback' => 't',
+  'title_arguments' => '',
+  'type' => '136',
+  'block_callback' => '',
+  'description' => '',
+  'position' => '',
+  'weight' => '0',
+  'file' => 'modules/filter/filter.admin.inc',
+))
+->values(array(
+  'path' => 'admin/settings/filters/%/order',
+  'load_functions' => 'a:1:{i:3;s:18:"filter_format_load";}',
+  'to_arg_functions' => '',
+  'access_callback' => 'user_access',
+  'access_arguments' => 'a:1:{i:0;s:18:"administer filters";}',
+  'page_callback' => 'filter_admin_order_page',
+  'page_arguments' => 'a:1:{i:0;i:3;}',
+  'fit' => '29',
+  'number_parts' => '5',
+  'tab_parent' => 'admin/settings/filters/%',
+  'tab_root' => 'admin/settings/filters/%',
+  'title' => 'Rearrange',
+  'title_callback' => 't',
+  'title_arguments' => '',
+  'type' => '128',
+  'block_callback' => '',
+  'description' => '',
+  'position' => '',
+  'weight' => '2',
+  'file' => 'modules/filter/filter.admin.inc',
+))
+->values(array(
+  'path' => 'admin/settings/filters/add',
+  'load_functions' => '',
+  'to_arg_functions' => '',
+  'access_callback' => 'user_access',
+  'access_arguments' => 'a:1:{i:0;s:18:"administer filters";}',
+  'page_callback' => 'filter_admin_format_page',
+  'page_arguments' => 'a:0:{}',
+  'fit' => '15',
+  'number_parts' => '4',
+  'tab_parent' => 'admin/settings/filters',
+  'tab_root' => 'admin/settings/filters',
+  'title' => 'Add input format',
+  'title_callback' => 't',
+  'title_arguments' => '',
+  'type' => '128',
+  'block_callback' => '',
+  'description' => '',
+  'position' => '',
+  'weight' => '1',
+  'file' => 'modules/filter/filter.admin.inc',
+))
+->values(array(
+  'path' => 'admin/settings/filters/delete',
+  'load_functions' => '',
+  'to_arg_functions' => '',
+  'access_callback' => 'user_access',
+  'access_arguments' => 'a:1:{i:0;s:18:"administer filters";}',
+  'page_callback' => 'drupal_get_form',
+  'page_arguments' => 'a:1:{i:0;s:19:"filter_admin_delete";}',
+  'fit' => '15',
+  'number_parts' => '4',
+  'tab_parent' => '',
+  'tab_root' => 'admin/settings/filters/delete',
+  'title' => 'Delete input format',
+  'title_callback' => 't',
+  'title_arguments' => '',
+  'type' => '4',
+  'block_callback' => '',
+  'description' => '',
+  'position' => '',
+  'weight' => '0',
+  'file' => 'modules/filter/filter.admin.inc',
+))
+->values(array(
+  'path' => 'admin/settings/filters/list',
+  'load_functions' => '',
+  'to_arg_functions' => '',
+  'access_callback' => 'user_access',
+  'access_arguments' => 'a:1:{i:0;s:18:"administer filters";}',
+  'page_callback' => 'drupal_get_form',
+  'page_arguments' => 'a:1:{i:0;s:21:"filter_admin_overview";}',
+  'fit' => '15',
+  'number_parts' => '4',
+  'tab_parent' => 'admin/settings/filters',
+  'tab_root' => 'admin/settings/filters',
+  'title' => 'List',
+  'title_callback' => 't',
+  'title_arguments' => '',
+  'type' => '136',
+  'block_callback' => '',
+  'description' => '',
+  'position' => '',
+  'weight' => '0',
+  'file' => 'modules/filter/filter.admin.inc',
+))
+->values(array(
+  'path' => 'admin/settings/image-toolkit',
+  'load_functions' => '',
+  'to_arg_functions' => '',
+  'access_callback' => 'user_access',
+  'access_arguments' => 'a:1:{i:0;s:29:"administer site configuration";}',
+  'page_callback' => 'drupal_get_form',
+  'page_arguments' => 'a:1:{i:0;s:29:"system_image_toolkit_settings";}',
+  'fit' => '7',
+  'number_parts' => '3',
+  'tab_parent' => '',
+  'tab_root' => 'admin/settings/image-toolkit',
+  'title' => 'Image toolkit',
+  'title_callback' => 't',
+  'title_arguments' => '',
+  'type' => '6',
+  'block_callback' => '',
+  'description' => 'Choose which image toolkit to use if you have installed optional toolkits.',
+  'position' => '',
+  'weight' => '0',
+  'file' => 'modules/system/system.admin.inc',
+))
+->values(array(
+  'path' => 'admin/settings/logging',
+  'load_functions' => '',
+  'to_arg_functions' => '',
+  'access_callback' => 'user_access',
+  'access_arguments' => 'a:1:{i:0;s:29:"administer site configuration";}',
+  'page_callback' => 'system_logging_overview',
+  'page_arguments' => 'a:0:{}',
+  'fit' => '7',
+  'number_parts' => '3',
+  'tab_parent' => '',
+  'tab_root' => 'admin/settings/logging',
+  'title' => 'Logging and alerts',
+  'title_callback' => 't',
+  'title_arguments' => '',
+  'type' => '6',
+  'block_callback' => '',
+  'description' => "Settings for logging and alerts modules. Various modules can route Drupal's system events to different destination, such as syslog, database, email, ...etc.",
+  'position' => '',
+  'weight' => '0',
+  'file' => 'modules/system/system.admin.inc',
+))
+->values(array(
+  'path' => 'admin/settings/logging/dblog',
+  'load_functions' => '',
+  'to_arg_functions' => '',
+  'access_callback' => 'user_access',
+  'access_arguments' => 'a:1:{i:0;s:29:"administer site configuration";}',
+  'page_callback' => 'drupal_get_form',
+  'page_arguments' => 'a:1:{i:0;s:20:"dblog_admin_settings";}',
+  'fit' => '15',
+  'number_parts' => '4',
+  'tab_parent' => '',
+  'tab_root' => 'admin/settings/logging/dblog',
+  'title' => 'Database logging',
+  'title_callback' => 't',
+  'title_arguments' => '',
+  'type' => '6',
+  'block_callback' => '',
+  'description' => 'Settings for logging to the Drupal database logs. This is the most common method for small to medium sites on shared hosting. The logs are viewable from the admin pages.',
+  'position' => '',
+  'weight' => '0',
+  'file' => 'modules/dblog/dblog.admin.inc',
+))
+->values(array(
+  'path' => 'admin/settings/performance',
+  'load_functions' => '',
+  'to_arg_functions' => '',
+  'access_callback' => 'user_access',
+  'access_arguments' => 'a:1:{i:0;s:29:"administer site configuration";}',
+  'page_callback' => 'drupal_get_form',
+  'page_arguments' => 'a:1:{i:0;s:27:"system_performance_settings";}',
+  'fit' => '7',
+  'number_parts' => '3',
+  'tab_parent' => '',
+  'tab_root' => 'admin/settings/performance',
+  'title' => 'Performance',
+  'title_callback' => 't',
+  'title_arguments' => '',
+  'type' => '6',
+  'block_callback' => '',
+  'description' => 'Enable or disable page caching for anonymous users and set CSS and JS bandwidth optimization options.',
+  'position' => '',
+  'weight' => '0',
+  'file' => 'modules/system/system.admin.inc',
+))
+->values(array(
+  'path' => 'admin/settings/site-information',
+  'load_functions' => '',
+  'to_arg_functions' => '',
+  'access_callback' => 'user_access',
+  'access_arguments' => 'a:1:{i:0;s:29:"administer site configuration";}',
+  'page_callback' => 'drupal_get_form',
+  'page_arguments' => 'a:1:{i:0;s:32:"system_site_information_settings";}',
+  'fit' => '7',
+  'number_parts' => '3',
+  'tab_parent' => '',
+  'tab_root' => 'admin/settings/site-information',
+  'title' => 'Site information',
+  'title_callback' => 't',
+  'title_arguments' => '',
+  'type' => '6',
+  'block_callback' => '',
+  'description' => 'Change basic site information, such as the site name, slogan, e-mail address, mission, front page and more.',
+  'position' => '',
+  'weight' => '0',
+  'file' => 'modules/system/system.admin.inc',
+))
+->values(array(
+  'path' => 'admin/settings/site-maintenance',
+  'load_functions' => '',
+  'to_arg_functions' => '',
+  'access_callback' => 'user_access',
+  'access_arguments' => 'a:1:{i:0;s:29:"administer site configuration";}',
+  'page_callback' => 'drupal_get_form',
+  'page_arguments' => 'a:1:{i:0;s:32:"system_site_maintenance_settings";}',
+  'fit' => '7',
+  'number_parts' => '3',
+  'tab_parent' => '',
+  'tab_root' => 'admin/settings/site-maintenance',
+  'title' => 'Site maintenance',
+  'title_callback' => 't',
+  'title_arguments' => '',
+  'type' => '6',
+  'block_callback' => '',
+  'description' => 'Take the site off-line for maintenance or bring it back online.',
+  'position' => '',
+  'weight' => '0',
+  'file' => 'modules/system/system.admin.inc',
+))
+->values(array(
+  'path' => 'admin/user',
+  'load_functions' => '',
+  'to_arg_functions' => '',
+  'access_callback' => 'user_access',
+  'access_arguments' => 'a:1:{i:0;s:27:"access administration pages";}',
+  'page_callback' => 'system_admin_menu_block_page',
+  'page_arguments' => 'a:0:{}',
+  'fit' => '3',
+  'number_parts' => '2',
+  'tab_parent' => '',
+  'tab_root' => 'admin/user',
+  'title' => 'User management',
+  'title_callback' => 't',
+  'title_arguments' => '',
+  'type' => '6',
+  'block_callback' => '',
+  'description' => "Manage your site's users, groups and access to site features.",
+  'position' => 'left',
+  'weight' => '0',
+  'file' => 'modules/system/system.admin.inc',
+))
+->values(array(
+  'path' => 'admin/user/permissions',
+  'load_functions' => '',
+  'to_arg_functions' => '',
+  'access_callback' => 'user_access',
+  'access_arguments' => 'a:1:{i:0;s:22:"administer permissions";}',
+  'page_callback' => 'drupal_get_form',
+  'page_arguments' => 'a:1:{i:0;s:15:"user_admin_perm";}',
+  'fit' => '7',
+  'number_parts' => '3',
+  'tab_parent' => '',
+  'tab_root' => 'admin/user/permissions',
+  'title' => 'Permissions',
+  'title_callback' => 't',
+  'title_arguments' => '',
+  'type' => '6',
+  'block_callback' => '',
+  'description' => 'Determine access to features by selecting permissions for roles.',
+  'position' => '',
+  'weight' => '0',
+  'file' => 'modules/user/user.admin.inc',
+))
+->values(array(
+  'path' => 'admin/user/roles',
+  'load_functions' => '',
+  'to_arg_functions' => '',
+  'access_callback' => 'user_access',
+  'access_arguments' => 'a:1:{i:0;s:22:"administer permissions";}',
+  'page_callback' => 'drupal_get_form',
+  'page_arguments' => 'a:1:{i:0;s:19:"user_admin_new_role";}',
+  'fit' => '7',
+  'number_parts' => '3',
+  'tab_parent' => '',
+  'tab_root' => 'admin/user/roles',
+  'title' => 'Roles',
+  'title_callback' => 't',
+  'title_arguments' => '',
+  'type' => '6',
+  'block_callback' => '',
+  'description' => 'List, edit, or add user roles.',
+  'position' => '',
+  'weight' => '0',
+  'file' => 'modules/user/user.admin.inc',
+))
+->values(array(
+  'path' => 'admin/user/roles/edit',
+  'load_functions' => '',
+  'to_arg_functions' => '',
+  'access_callback' => 'user_access',
+  'access_arguments' => 'a:1:{i:0;s:22:"administer permissions";}',
+  'page_callback' => 'drupal_get_form',
+  'page_arguments' => 'a:1:{i:0;s:15:"user_admin_role";}',
+  'fit' => '15',
+  'number_parts' => '4',
+  'tab_parent' => '',
+  'tab_root' => 'admin/user/roles/edit',
+  'title' => 'Edit role',
+  'title_callback' => 't',
+  'title_arguments' => '',
+  'type' => '4',
+  'block_callback' => '',
+  'description' => '',
+  'position' => '',
+  'weight' => '0',
+  'file' => 'modules/user/user.admin.inc',
+))
+->values(array(
+  'path' => 'admin/user/rules',
+  'load_functions' => '',
+  'to_arg_functions' => '',
+  'access_callback' => 'user_access',
+  'access_arguments' => 'a:1:{i:0;s:22:"administer permissions";}',
+  'page_callback' => 'user_admin_access',
+  'page_arguments' => 'a:0:{}',
+  'fit' => '7',
+  'number_parts' => '3',
+  'tab_parent' => '',
+  'tab_root' => 'admin/user/rules',
+  'title' => 'Access rules',
+  'title_callback' => 't',
+  'title_arguments' => '',
+  'type' => '6',
+  'block_callback' => '',
+  'description' => 'List and create rules to disallow usernames, e-mail addresses, and IP addresses.',
+  'position' => '',
+  'weight' => '0',
+  'file' => 'modules/user/user.admin.inc',
+))
+->values(array(
+  'path' => 'admin/user/rules/add',
+  'load_functions' => '',
+  'to_arg_functions' => '',
+  'access_callback' => 'user_access',
+  'access_arguments' => 'a:1:{i:0;s:22:"administer permissions";}',
+  'page_callback' => 'user_admin_access_add',
+  'page_arguments' => 'a:0:{}',
+  'fit' => '15',
+  'number_parts' => '4',
+  'tab_parent' => 'admin/user/rules',
+  'tab_root' => 'admin/user/rules',
+  'title' => 'Add rule',
+  'title_callback' => 't',
+  'title_arguments' => '',
+  'type' => '128',
+  'block_callback' => '',
+  'description' => '',
+  'position' => '',
+  'weight' => '0',
+  'file' => 'modules/user/user.admin.inc',
+))
+->values(array(
+  'path' => 'admin/user/rules/check',
+  'load_functions' => '',
+  'to_arg_functions' => '',
+  'access_callback' => 'user_access',
+  'access_arguments' => 'a:1:{i:0;s:22:"administer permissions";}',
+  'page_callback' => 'user_admin_access_check',
+  'page_arguments' => 'a:0:{}',
+  'fit' => '15',
+  'number_parts' => '4',
+  'tab_parent' => 'admin/user/rules',
+  'tab_root' => 'admin/user/rules',
+  'title' => 'Check rules',
+  'title_callback' => 't',
+  'title_arguments' => '',
+  'type' => '128',
+  'block_callback' => '',
+  'description' => '',
+  'position' => '',
+  'weight' => '0',
+  'file' => 'modules/user/user.admin.inc',
+))
+->values(array(
+  'path' => 'admin/user/rules/delete',
+  'load_functions' => '',
+  'to_arg_functions' => '',
+  'access_callback' => 'user_access',
+  'access_arguments' => 'a:1:{i:0;s:22:"administer permissions";}',
+  'page_callback' => 'drupal_get_form',
+  'page_arguments' => 'a:1:{i:0;s:32:"user_admin_access_delete_confirm";}',
+  'fit' => '15',
+  'number_parts' => '4',
+  'tab_parent' => '',
+  'tab_root' => 'admin/user/rules/delete',
+  'title' => 'Delete rule',
+  'title_callback' => 't',
+  'title_arguments' => '',
+  'type' => '4',
+  'block_callback' => '',
+  'description' => '',
+  'position' => '',
+  'weight' => '0',
+  'file' => 'modules/user/user.admin.inc',
+))
+->values(array(
+  'path' => 'admin/user/rules/edit',
+  'load_functions' => '',
+  'to_arg_functions' => '',
+  'access_callback' => 'user_access',
+  'access_arguments' => 'a:1:{i:0;s:22:"administer permissions";}',
+  'page_callback' => 'user_admin_access_edit',
+  'page_arguments' => 'a:0:{}',
+  'fit' => '15',
+  'number_parts' => '4',
+  'tab_parent' => '',
+  'tab_root' => 'admin/user/rules/edit',
+  'title' => 'Edit rule',
+  'title_callback' => 't',
+  'title_arguments' => '',
+  'type' => '4',
+  'block_callback' => '',
+  'description' => '',
+  'position' => '',
+  'weight' => '0',
+  'file' => 'modules/user/user.admin.inc',
+))
+->values(array(
+  'path' => 'admin/user/rules/list',
+  'load_functions' => '',
+  'to_arg_functions' => '',
+  'access_callback' => 'user_access',
+  'access_arguments' => 'a:1:{i:0;s:22:"administer permissions";}',
+  'page_callback' => 'user_admin_access',
+  'page_arguments' => 'a:0:{}',
+  'fit' => '15',
+  'number_parts' => '4',
+  'tab_parent' => 'admin/user/rules',
+  'tab_root' => 'admin/user/rules',
+  'title' => 'List',
+  'title_callback' => 't',
+  'title_arguments' => '',
+  'type' => '136',
+  'block_callback' => '',
+  'description' => '',
+  'position' => '',
+  'weight' => '-10',
+  'file' => 'modules/user/user.admin.inc',
+))
+->values(array(
+  'path' => 'admin/user/settings',
+  'load_functions' => '',
+  'to_arg_functions' => '',
+  'access_callback' => 'user_access',
+  'access_arguments' => 'a:1:{i:0;s:16:"administer users";}',
+  'page_callback' => 'drupal_get_form',
+  'page_arguments' => 'a:1:{i:0;s:19:"user_admin_settings";}',
+  'fit' => '7',
+  'number_parts' => '3',
+  'tab_parent' => '',
+  'tab_root' => 'admin/user/settings',
+  'title' => 'User settings',
+  'title_callback' => 't',
+  'title_arguments' => '',
+  'type' => '6',
+  'block_callback' => '',
+  'description' => 'Configure default behavior of users, including registration requirements, e-mails, and user pictures.',
+  'position' => '',
+  'weight' => '0',
+  'file' => 'modules/user/user.admin.inc',
+))
+->values(array(
+  'path' => 'admin/user/user',
+  'load_functions' => '',
+  'to_arg_functions' => '',
+  'access_callback' => 'user_access',
+  'access_arguments' => 'a:1:{i:0;s:16:"administer users";}',
+  'page_callback' => 'user_admin',
+  'page_arguments' => 'a:1:{i:0;s:4:"list";}',
+  'fit' => '7',
+  'number_parts' => '3',
+  'tab_parent' => '',
+  'tab_root' => 'admin/user/user',
+  'title' => 'Users',
+  'title_callback' => 't',
+  'title_arguments' => '',
+  'type' => '6',
+  'block_callback' => '',
+  'description' => 'List, add, and edit users.',
+  'position' => '',
+  'weight' => '0',
+  'file' => 'modules/user/user.admin.inc',
+))
+->values(array(
+  'path' => 'admin/user/user/create',
+  'load_functions' => '',
+  'to_arg_functions' => '',
+  'access_callback' => 'user_access',
+  'access_arguments' => 'a:1:{i:0;s:16:"administer users";}',
+  'page_callback' => 'user_admin',
+  'page_arguments' => 'a:1:{i:0;s:6:"create";}',
+  'fit' => '15',
+  'number_parts' => '4',
+  'tab_parent' => 'admin/user/user',
+  'tab_root' => 'admin/user/user',
+  'title' => 'Add user',
+  'title_callback' => 't',
+  'title_arguments' => '',
+  'type' => '128',
+  'block_callback' => '',
+  'description' => '',
+  'position' => '',
+  'weight' => '0',
+  'file' => 'modules/user/user.admin.inc',
+))
+->values(array(
+  'path' => 'admin/user/user/list',
+  'load_functions' => '',
+  'to_arg_functions' => '',
+  'access_callback' => 'user_access',
+  'access_arguments' => 'a:1:{i:0;s:16:"administer users";}',
+  'page_callback' => 'user_admin',
+  'page_arguments' => 'a:1:{i:0;s:4:"list";}',
+  'fit' => '15',
+  'number_parts' => '4',
+  'tab_parent' => 'admin/user/user',
+  'tab_root' => 'admin/user/user',
+  'title' => 'List',
+  'title_callback' => 't',
+  'title_arguments' => '',
+  'type' => '136',
+  'block_callback' => '',
+  'description' => '',
+  'position' => '',
+  'weight' => '-10',
+  'file' => 'modules/user/user.admin.inc',
+))
+->values(array(
+  'path' => 'batch',
+  'load_functions' => '',
+  'to_arg_functions' => '',
+  'access_callback' => '1',
+  'access_arguments' => 'a:0:{}',
+  'page_callback' => 'system_batch_page',
+  'page_arguments' => 'a:0:{}',
+  'fit' => '1',
+  'number_parts' => '1',
+  'tab_parent' => '',
+  'tab_root' => 'batch',
+  'title' => '',
+  'title_callback' => 't',
+  'title_arguments' => '',
+  'type' => '4',
+  'block_callback' => '',
+  'description' => '',
+  'position' => '',
+  'weight' => '0',
+  'file' => 'modules/system/system.admin.inc',
+))
+->values(array(
+  'path' => 'filter/tips',
+  'load_functions' => '',
+  'to_arg_functions' => '',
+  'access_callback' => '1',
+  'access_arguments' => 'a:0:{}',
+  'page_callback' => 'filter_tips_long',
+  'page_arguments' => 'a:0:{}',
+  'fit' => '3',
+  'number_parts' => '2',
+  'tab_parent' => '',
+  'tab_root' => 'filter/tips',
+  'title' => 'Compose tips',
+  'title_callback' => 't',
+  'title_arguments' => '',
+  'type' => '20',
+  'block_callback' => '',
+  'description' => '',
+  'position' => '',
+  'weight' => '0',
+  'file' => 'modules/filter/filter.pages.inc',
+))
+->values(array(
+  'path' => 'logout',
+  'load_functions' => '',
+  'to_arg_functions' => '',
+  'access_callback' => 'user_is_logged_in',
+  'access_arguments' => 'a:0:{}',
+  'page_callback' => 'user_logout',
+  'page_arguments' => 'a:0:{}',
+  'fit' => '1',
+  'number_parts' => '1',
+  'tab_parent' => '',
+  'tab_root' => 'logout',
+  'title' => 'Log out',
+  'title_callback' => 't',
+  'title_arguments' => '',
+  'type' => '6',
+  'block_callback' => '',
+  'description' => '',
+  'position' => '',
+  'weight' => '10',
+  'file' => 'modules/user/user.pages.inc',
+))
+->values(array(
+  'path' => 'node',
+  'load_functions' => '',
+  'to_arg_functions' => '',
+  'access_callback' => 'user_access',
+  'access_arguments' => 'a:1:{i:0;s:14:"access content";}',
+  'page_callback' => 'node_page_default',
+  'page_arguments' => 'a:0:{}',
+  'fit' => '1',
+  'number_parts' => '1',
+  'tab_parent' => '',
+  'tab_root' => 'node',
+  'title' => 'Content',
+  'title_callback' => 't',
+  'title_arguments' => '',
+  'type' => '4',
+  'block_callback' => '',
+  'description' => '',
+  'position' => '',
+  'weight' => '0',
+  'file' => '',
+))
+->values(array(
+  'path' => 'node/%',
+  'load_functions' => 'a:1:{i:1;s:9:"node_load";}',
+  'to_arg_functions' => '',
+  'access_callback' => 'node_access',
+  'access_arguments' => 'a:2:{i:0;s:4:"view";i:1;i:1;}',
+  'page_callback' => 'node_page_view',
+  'page_arguments' => 'a:1:{i:0;i:1;}',
+  'fit' => '2',
+  'number_parts' => '2',
+  'tab_parent' => '',
+  'tab_root' => 'node/%',
+  'title' => '',
+  'title_callback' => 'node_page_title',
+  'title_arguments' => 'a:1:{i:0;i:1;}',
+  'type' => '4',
+  'block_callback' => '',
+  'description' => '',
+  'position' => '',
+  'weight' => '0',
+  'file' => '',
+))
+->values(array(
+  'path' => 'node/%/delete',
+  'load_functions' => 'a:1:{i:1;s:9:"node_load";}',
+  'to_arg_functions' => '',
+  'access_callback' => 'node_access',
+  'access_arguments' => 'a:2:{i:0;s:6:"delete";i:1;i:1;}',
+  'page_callback' => 'drupal_get_form',
+  'page_arguments' => 'a:2:{i:0;s:19:"node_delete_confirm";i:1;i:1;}',
+  'fit' => '5',
+  'number_parts' => '3',
+  'tab_parent' => '',
+  'tab_root' => 'node/%/delete',
+  'title' => 'Delete',
+  'title_callback' => 't',
+  'title_arguments' => '',
+  'type' => '4',
+  'block_callback' => '',
+  'description' => '',
+  'position' => '',
+  'weight' => '1',
+  'file' => 'modules/node/node.pages.inc',
+))
+->values(array(
+  'path' => 'node/%/edit',
+  'load_functions' => 'a:1:{i:1;s:9:"node_load";}',
+  'to_arg_functions' => '',
+  'access_callback' => 'node_access',
+  'access_arguments' => 'a:2:{i:0;s:6:"update";i:1;i:1;}',
+  'page_callback' => 'node_page_edit',
+  'page_arguments' => 'a:1:{i:0;i:1;}',
+  'fit' => '5',
+  'number_parts' => '3',
+  'tab_parent' => 'node/%',
+  'tab_root' => 'node/%',
+  'title' => 'Edit',
+  'title_callback' => 't',
+  'title_arguments' => '',
+  'type' => '128',
+  'block_callback' => '',
+  'description' => '',
+  'position' => '',
+  'weight' => '1',
+  'file' => 'modules/node/node.pages.inc',
+))
+->values(array(
+  'path' => 'node/%/revisions',
+  'load_functions' => 'a:1:{i:1;s:9:"node_load";}',
+  'to_arg_functions' => '',
+  'access_callback' => '_node_revision_access',
+  'access_arguments' => 'a:1:{i:0;i:1;}',
+  'page_callback' => 'node_revision_overview',
+  'page_arguments' => 'a:1:{i:0;i:1;}',
+  'fit' => '5',
+  'number_parts' => '3',
+  'tab_parent' => 'node/%',
+  'tab_root' => 'node/%',
+  'title' => 'Revisions',
+  'title_callback' => 't',
+  'title_arguments' => '',
+  'type' => '128',
+  'block_callback' => '',
+  'description' => '',
+  'position' => '',
+  'weight' => '2',
+  'file' => 'modules/node/node.pages.inc',
+))
+->values(array(
+  'path' => 'node/%/revisions/%/delete',
+  'load_functions' => 'a:2:{i:1;a:1:{s:9:"node_load";a:1:{i:0;i:3;}}i:3;N;}',
+  'to_arg_functions' => '',
+  'access_callback' => '_node_revision_access',
+  'access_arguments' => 'a:2:{i:0;i:1;i:1;s:6:"delete";}',
+  'page_callback' => 'drupal_get_form',
+  'page_arguments' => 'a:2:{i:0;s:28:"node_revision_delete_confirm";i:1;i:1;}',
+  'fit' => '21',
+  'number_parts' => '5',
+  'tab_parent' => '',
+  'tab_root' => 'node/%/revisions/%/delete',
+  'title' => 'Delete earlier revision',
+  'title_callback' => 't',
+  'title_arguments' => '',
+  'type' => '4',
+  'block_callback' => '',
+  'description' => '',
+  'position' => '',
+  'weight' => '0',
+  'file' => 'modules/node/node.pages.inc',
+))
+->values(array(
+  'path' => 'node/%/revisions/%/revert',
+  'load_functions' => 'a:2:{i:1;a:1:{s:9:"node_load";a:1:{i:0;i:3;}}i:3;N;}',
+  'to_arg_functions' => '',
+  'access_callback' => '_node_revision_access',
+  'access_arguments' => 'a:2:{i:0;i:1;i:1;s:6:"update";}',
+  'page_callback' => 'drupal_get_form',
+  'page_arguments' => 'a:2:{i:0;s:28:"node_revision_revert_confirm";i:1;i:1;}',
+  'fit' => '21',
+  'number_parts' => '5',
+  'tab_parent' => '',
+  'tab_root' => 'node/%/revisions/%/revert',
+  'title' => 'Revert to earlier revision',
+  'title_callback' => 't',
+  'title_arguments' => '',
+  'type' => '4',
+  'block_callback' => '',
+  'description' => '',
+  'position' => '',
+  'weight' => '0',
+  'file' => 'modules/node/node.pages.inc',
+))
+->values(array(
+  'path' => 'node/%/revisions/%/view',
+  'load_functions' => 'a:2:{i:1;a:1:{s:9:"node_load";a:1:{i:0;i:3;}}i:3;N;}',
+  'to_arg_functions' => '',
+  'access_callback' => '_node_revision_access',
+  'access_arguments' => 'a:1:{i:0;i:1;}',
+  'page_callback' => 'node_show',
+  'page_arguments' => 'a:3:{i:0;i:1;i:1;N;i:2;b:1;}',
+  'fit' => '21',
+  'number_parts' => '5',
+  'tab_parent' => '',
+  'tab_root' => 'node/%/revisions/%/view',
+  'title' => 'Revisions',
+  'title_callback' => 't',
+  'title_arguments' => '',
+  'type' => '4',
+  'block_callback' => '',
+  'description' => '',
+  'position' => '',
+  'weight' => '0',
+  'file' => '',
+))
+->values(array(
+  'path' => 'node/%/view',
+  'load_functions' => 'a:1:{i:1;s:9:"node_load";}',
+  'to_arg_functions' => '',
+  'access_callback' => 'node_access',
+  'access_arguments' => 'a:2:{i:0;s:4:"view";i:1;i:1;}',
+  'page_callback' => 'node_page_view',
+  'page_arguments' => 'a:1:{i:0;i:1;}',
+  'fit' => '5',
+  'number_parts' => '3',
+  'tab_parent' => 'node/%',
+  'tab_root' => 'node/%',
+  'title' => 'View',
+  'title_callback' => 't',
+  'title_arguments' => '',
+  'type' => '136',
+  'block_callback' => '',
+  'description' => '',
+  'position' => '',
+  'weight' => '-10',
+  'file' => '',
+))
+->values(array(
+  'path' => 'node/add',
+  'load_functions' => '',
+  'to_arg_functions' => '',
+  'access_callback' => '_node_add_access',
+  'access_arguments' => 'a:0:{}',
+  'page_callback' => 'node_add_page',
+  'page_arguments' => 'a:0:{}',
+  'fit' => '3',
+  'number_parts' => '2',
+  'tab_parent' => '',
+  'tab_root' => 'node/add',
+  'title' => 'Create content',
+  'title_callback' => 't',
+  'title_arguments' => '',
+  'type' => '6',
+  'block_callback' => '',
+  'description' => '',
+  'position' => '',
+  'weight' => '1',
+  'file' => 'modules/node/node.pages.inc',
+))
+->values(array(
+  'path' => 'node/add/page',
+  'load_functions' => '',
+  'to_arg_functions' => '',
+  'access_callback' => 'node_access',
+  'access_arguments' => 'a:2:{i:0;s:6:"create";i:1;s:4:"page";}',
+  'page_callback' => 'node_add',
+  'page_arguments' => 'a:1:{i:0;i:2;}',
+  'fit' => '7',
+  'number_parts' => '3',
+  'tab_parent' => '',
+  'tab_root' => 'node/add/page',
+  'title' => 'Page',
+  'title_callback' => 'check_plain',
+  'title_arguments' => '',
+  'type' => '6',
+  'block_callback' => '',
+  'description' => "A <em>page</em>, similar in form to a <em>story</em>, is a simple method for creating and displaying information that rarely changes, such as an \"About us\" section of a website. By default, a <em>page</em> entry does not allow visitor comments and is not featured on the site's initial home page.",
+  'position' => '',
+  'weight' => '0',
+  'file' => 'modules/node/node.pages.inc',
+))
+->values(array(
+  'path' => 'node/add/story',
+  'load_functions' => '',
+  'to_arg_functions' => '',
+  'access_callback' => 'node_access',
+  'access_arguments' => 'a:2:{i:0;s:6:"create";i:1;s:5:"story";}',
+  'page_callback' => 'node_add',
+  'page_arguments' => 'a:1:{i:0;i:2;}',
+  'fit' => '7',
+  'number_parts' => '3',
+  'tab_parent' => '',
+  'tab_root' => 'node/add/story',
+  'title' => 'Story',
+  'title_callback' => 'check_plain',
+  'title_arguments' => '',
+  'type' => '6',
+  'block_callback' => '',
+  'description' => "A <em>story</em>, similar in form to a <em>page</em>, is ideal for creating and displaying content that informs or engages website visitors. Press releases, site announcements, and informal blog-like entries may all be created with a <em>story</em> entry. By default, a <em>story</em> entry is automatically featured on the site's initial home page, and provides the ability to post comments.",
+  'position' => '',
+  'weight' => '0',
+  'file' => 'modules/node/node.pages.inc',
+))
+->values(array(
+  'path' => 'rss.xml',
+  'load_functions' => '',
+  'to_arg_functions' => '',
+  'access_callback' => 'user_access',
+  'access_arguments' => 'a:1:{i:0;s:14:"access content";}',
+  'page_callback' => 'node_feed',
+  'page_arguments' => 'a:0:{}',
+  'fit' => '1',
+  'number_parts' => '1',
+  'tab_parent' => '',
+  'tab_root' => 'rss.xml',
+  'title' => 'RSS feed',
+  'title_callback' => 't',
+  'title_arguments' => '',
+  'type' => '4',
+  'block_callback' => '',
+  'description' => '',
+  'position' => '',
+  'weight' => '0',
+  'file' => '',
+))
+->values(array(
+  'path' => 'system/files',
+  'load_functions' => '',
+  'to_arg_functions' => '',
+  'access_callback' => '1',
+  'access_arguments' => 'a:0:{}',
+  'page_callback' => 'file_download',
+  'page_arguments' => 'a:0:{}',
+  'fit' => '3',
+  'number_parts' => '2',
+  'tab_parent' => '',
+  'tab_root' => 'system/files',
+  'title' => 'File download',
+  'title_callback' => 't',
+  'title_arguments' => '',
+  'type' => '4',
+  'block_callback' => '',
+  'description' => '',
+  'position' => '',
+  'weight' => '0',
+  'file' => '',
+))
+->values(array(
+  'path' => 'user',
+  'load_functions' => '',
+  'to_arg_functions' => '',
+  'access_callback' => '1',
+  'access_arguments' => 'a:0:{}',
+  'page_callback' => 'user_page',
+  'page_arguments' => 'a:0:{}',
+  'fit' => '1',
+  'number_parts' => '1',
+  'tab_parent' => '',
+  'tab_root' => 'user',
+  'title' => 'User account',
+  'title_callback' => 't',
+  'title_arguments' => '',
+  'type' => '4',
+  'block_callback' => '',
+  'description' => '',
+  'position' => '',
+  'weight' => '0',
+  'file' => 'modules/user/user.pages.inc',
+))
+->values(array(
+  'path' => 'user/%',
+  'load_functions' => 'a:1:{i:1;s:22:"user_uid_optional_load";}',
+  'to_arg_functions' => 'a:1:{i:1;s:24:"user_uid_optional_to_arg";}',
+  'access_callback' => 'user_view_access',
+  'access_arguments' => 'a:1:{i:0;i:1;}',
+  'page_callback' => 'user_view',
+  'page_arguments' => 'a:1:{i:0;i:1;}',
+  'fit' => '2',
+  'number_parts' => '2',
+  'tab_parent' => '',
+  'tab_root' => 'user/%',
+  'title' => 'My account',
+  'title_callback' => 'user_page_title',
+  'title_arguments' => 'a:1:{i:0;i:1;}',
+  'type' => '6',
+  'block_callback' => '',
+  'description' => '',
+  'position' => '',
+  'weight' => '0',
+  'file' => 'modules/user/user.pages.inc',
+))
+->values(array(
+  'path' => 'user/%/delete',
+  'load_functions' => 'a:1:{i:1;s:9:"user_load";}',
+  'to_arg_functions' => '',
+  'access_callback' => 'user_access',
+  'access_arguments' => 'a:1:{i:0;s:16:"administer users";}',
+  'page_callback' => 'drupal_get_form',
+  'page_arguments' => 'a:2:{i:0;s:19:"user_confirm_delete";i:1;i:1;}',
+  'fit' => '5',
+  'number_parts' => '3',
+  'tab_parent' => '',
+  'tab_root' => 'user/%/delete',
+  'title' => 'Delete',
+  'title_callback' => 't',
+  'title_arguments' => '',
+  'type' => '4',
+  'block_callback' => '',
+  'description' => '',
+  'position' => '',
+  'weight' => '0',
+  'file' => 'modules/user/user.pages.inc',
+))
+->values(array(
+  'path' => 'user/%/edit',
+  'load_functions' => 'a:1:{i:1;a:1:{s:18:"user_category_load";a:2:{i:0;s:4:"%map";i:1;s:6:"%index";}}}',
+  'to_arg_functions' => '',
+  'access_callback' => 'user_edit_access',
+  'access_arguments' => 'a:1:{i:0;i:1;}',
+  'page_callback' => 'user_edit',
+  'page_arguments' => 'a:1:{i:0;i:1;}',
+  'fit' => '5',
+  'number_parts' => '3',
+  'tab_parent' => 'user/%',
+  'tab_root' => 'user/%',
+  'title' => 'Edit',
+  'title_callback' => 't',
+  'title_arguments' => '',
+  'type' => '128',
+  'block_callback' => '',
+  'description' => '',
+  'position' => '',
+  'weight' => '0',
+  'file' => 'modules/user/user.pages.inc',
+))
+->values(array(
+  'path' => 'user/%/edit/account',
+  'load_functions' => 'a:1:{i:1;a:1:{s:18:"user_category_load";a:2:{i:0;s:4:"%map";i:1;s:6:"%index";}}}',
+  'to_arg_functions' => '',
+  'access_callback' => 'user_edit_access',
+  'access_arguments' => 'a:1:{i:0;i:1;}',
+  'page_callback' => 'user_edit',
+  'page_arguments' => 'a:1:{i:0;i:1;}',
+  'fit' => '11',
+  'number_parts' => '4',
+  'tab_parent' => 'user/%/edit',
+  'tab_root' => 'user/%',
+  'title' => 'Account',
+  'title_callback' => 't',
+  'title_arguments' => '',
+  'type' => '136',
+  'block_callback' => '',
+  'description' => '',
+  'position' => '',
+  'weight' => '0',
+  'file' => 'modules/user/user.pages.inc',
+))
+->values(array(
+  'path' => 'user/%/view',
+  'load_functions' => 'a:1:{i:1;s:9:"user_load";}',
+  'to_arg_functions' => '',
+  'access_callback' => 'user_view_access',
+  'access_arguments' => 'a:1:{i:0;i:1;}',
+  'page_callback' => 'user_view',
+  'page_arguments' => 'a:1:{i:0;i:1;}',
+  'fit' => '5',
+  'number_parts' => '3',
+  'tab_parent' => 'user/%',
+  'tab_root' => 'user/%',
+  'title' => 'View',
+  'title_callback' => 't',
+  'title_arguments' => '',
+  'type' => '136',
+  'block_callback' => '',
+  'description' => '',
+  'position' => '',
+  'weight' => '-10',
+  'file' => 'modules/user/user.pages.inc',
+))
+->values(array(
+  'path' => 'user/autocomplete',
+  'load_functions' => '',
+  'to_arg_functions' => '',
+  'access_callback' => 'user_access',
+  'access_arguments' => 'a:1:{i:0;s:20:"access user profiles";}',
+  'page_callback' => 'user_autocomplete',
+  'page_arguments' => 'a:0:{}',
+  'fit' => '3',
+  'number_parts' => '2',
+  'tab_parent' => '',
+  'tab_root' => 'user/autocomplete',
+  'title' => 'User autocomplete',
+  'title_callback' => 't',
+  'title_arguments' => '',
+  'type' => '4',
+  'block_callback' => '',
+  'description' => '',
+  'position' => '',
+  'weight' => '0',
+  'file' => 'modules/user/user.pages.inc',
+))
+->values(array(
+  'path' => 'user/login',
+  'load_functions' => '',
+  'to_arg_functions' => '',
+  'access_callback' => 'user_is_anonymous',
+  'access_arguments' => 'a:0:{}',
+  'page_callback' => 'user_page',
+  'page_arguments' => 'a:0:{}',
+  'fit' => '3',
+  'number_parts' => '2',
+  'tab_parent' => 'user',
+  'tab_root' => 'user',
+  'title' => 'Log in',
+  'title_callback' => 't',
+  'title_arguments' => '',
+  'type' => '136',
+  'block_callback' => '',
+  'description' => '',
+  'position' => '',
+  'weight' => '0',
+  'file' => 'modules/user/user.pages.inc',
+))
+->values(array(
+  'path' => 'user/password',
+  'load_functions' => '',
+  'to_arg_functions' => '',
+  'access_callback' => 'user_is_anonymous',
+  'access_arguments' => 'a:0:{}',
+  'page_callback' => 'drupal_get_form',
+  'page_arguments' => 'a:1:{i:0;s:9:"user_pass";}',
+  'fit' => '3',
+  'number_parts' => '2',
+  'tab_parent' => 'user',
+  'tab_root' => 'user',
+  'title' => 'Request new password',
+  'title_callback' => 't',
+  'title_arguments' => '',
+  'type' => '128',
+  'block_callback' => '',
+  'description' => '',
+  'position' => '',
+  'weight' => '0',
+  'file' => 'modules/user/user.pages.inc',
+))
+->values(array(
+  'path' => 'user/register',
+  'load_functions' => '',
+  'to_arg_functions' => '',
+  'access_callback' => 'user_register_access',
+  'access_arguments' => 'a:0:{}',
+  'page_callback' => 'drupal_get_form',
+  'page_arguments' => 'a:1:{i:0;s:13:"user_register";}',
+  'fit' => '3',
+  'number_parts' => '2',
+  'tab_parent' => 'user',
+  'tab_root' => 'user',
+  'title' => 'Create new account',
+  'title_callback' => 't',
+  'title_arguments' => '',
+  'type' => '128',
+  'block_callback' => '',
+  'description' => '',
+  'position' => '',
+  'weight' => '0',
+  'file' => 'modules/user/user.pages.inc',
+))
+->values(array(
+  'path' => 'user/reset/%/%/%',
+  'load_functions' => 'a:3:{i:2;N;i:3;N;i:4;N;}',
+  'to_arg_functions' => '',
+  'access_callback' => '1',
+  'access_arguments' => 'a:0:{}',
+  'page_callback' => 'drupal_get_form',
+  'page_arguments' => 'a:4:{i:0;s:15:"user_pass_reset";i:1;i:2;i:2;i:3;i:3;i:4;}',
+  'fit' => '24',
+  'number_parts' => '5',
+  'tab_parent' => '',
+  'tab_root' => 'user/reset/%/%/%',
+  'title' => 'Reset password',
+  'title_callback' => 't',
+  'title_arguments' => '',
+  'type' => '4',
+  'block_callback' => '',
+  'description' => '',
+  'position' => '',
+  'weight' => '0',
+  'file' => 'modules/user/user.pages.inc',
+))
+->execute();
+
+db_create_table('node', array(
+  'fields' => array(
+    'nid' => array(
+      'type' => 'serial',
+      'unsigned' => TRUE,
+      'not null' => TRUE,
+    ),
+    'vid' => array(
+      'type' => 'int',
+      'unsigned' => TRUE,
+      'not null' => TRUE,
+      'default' => 0,
+    ),
+    'type' => array(
+      'type' => 'varchar',
+      'length' => 32,
+      'not null' => TRUE,
+      'default' => '',
+    ),
+    'language' => array(
+      'type' => 'varchar',
+      'length' => 12,
+      'not null' => TRUE,
+      'default' => '',
+    ),
+    'title' => array(
+      'type' => 'varchar',
+      'length' => 255,
+      'not null' => TRUE,
+      'default' => '',
+    ),
+    'uid' => array(
+      'type' => 'int',
+      'not null' => TRUE,
+      'default' => 0,
+    ),
+    'status' => array(
+      'type' => 'int',
+      'not null' => TRUE,
+      'default' => 1,
+    ),
+    'created' => array(
+      'type' => 'int',
+      'not null' => TRUE,
+      'default' => 0,
+    ),
+    'changed' => array(
+      'type' => 'int',
+      'not null' => TRUE,
+      'default' => 0,
+    ),
+    'comment' => array(
+      'type' => 'int',
+      'not null' => TRUE,
+      'default' => 0,
+    ),
+    'promote' => array(
+      'type' => 'int',
+      'not null' => TRUE,
+      'default' => 0,
+    ),
+    'moderate' => array(
+      'type' => 'int',
+      'not null' => TRUE,
+      'default' => 0,
+    ),
+    'sticky' => array(
+      'type' => 'int',
+      'not null' => TRUE,
+      'default' => 0,
+    ),
+    'tnid' => array(
+      'type' => 'int',
+      'unsigned' => TRUE,
+      'not null' => TRUE,
+      'default' => 0,
+    ),
+    'translate' => array(
+      'type' => 'int',
+      'not null' => TRUE,
+      'default' => 0,
+    ),
+  ),
+  'indexes' => array(
+    'node_changed' => array(
+      'changed',
+    ),
+    'node_created' => array(
+      'created',
+    ),
+    'node_moderate' => array(
+      'moderate',
+    ),
+    'node_promote_status' => array(
+      'promote',
+      'status',
+    ),
+    'node_status_type' => array(
+      'status',
+      'type',
+      'nid',
+    ),
+    'node_title_type' => array(
+      'title',
+      array(
+        'type',
+        4,
+      ),
+    ),
+    'node_type' => array(
+      array(
+        'type',
+        4,
+      ),
+    ),
+    'uid' => array(
+      'uid',
+    ),
+    'tnid' => array(
+      'tnid',
+    ),
+    'translate' => array(
+      'translate',
+    ),
+  ),
+  'unique keys' => array(
+    'vid' => array(
+      'vid',
+    ),
+  ),
+  'primary key' => array(
+    'nid',
+  ),
+  'module' => 'node',
+  'name' => 'node',
+));
+
+db_create_table('node_access', array(
+  'fields' => array(
+    'nid' => array(
+      'type' => 'int',
+      'unsigned' => TRUE,
+      'not null' => TRUE,
+      'default' => 0,
+    ),
+    'gid' => array(
+      'type' => 'int',
+      'unsigned' => TRUE,
+      'not null' => TRUE,
+      'default' => 0,
+    ),
+    'realm' => array(
+      'type' => 'varchar',
+      'length' => 255,
+      'not null' => TRUE,
+      'default' => '',
+    ),
+    'grant_view' => array(
+      'type' => 'int',
+      'unsigned' => TRUE,
+      'not null' => TRUE,
+      'default' => 0,
+      'size' => 'tiny',
+    ),
+    'grant_update' => array(
+      'type' => 'int',
+      'unsigned' => TRUE,
+      'not null' => TRUE,
+      'default' => 0,
+      'size' => 'tiny',
+    ),
+    'grant_delete' => array(
+      'type' => 'int',
+      'unsigned' => TRUE,
+      'not null' => TRUE,
+      'default' => 0,
+      'size' => 'tiny',
+    ),
+  ),
+  'primary key' => array(
+    'nid',
+    'gid',
+    'realm',
+  ),
+  'module' => 'node',
+  'name' => 'node_access',
+));
+db_insert('node_access')->fields(array(
+  'nid',
+  'gid',
+  'realm',
+  'grant_view',
+  'grant_update',
+  'grant_delete',
+))
+->values(array(
+  'nid' => '0',
+  'gid' => '0',
+  'realm' => 'all',
+  'grant_view' => '1',
+  'grant_update' => '0',
+  'grant_delete' => '0',
+))
+->execute();
+
+db_create_table('node_counter', array(
+  'fields' => array(
+    'nid' => array(
+      'type' => 'int',
+      'not null' => TRUE,
+      'default' => 0,
+    ),
+    'totalcount' => array(
+      'type' => 'int',
+      'unsigned' => TRUE,
+      'not null' => TRUE,
+      'default' => 0,
+      'size' => 'big',
+    ),
+    'daycount' => array(
+      'type' => 'int',
+      'unsigned' => TRUE,
+      'not null' => TRUE,
+      'default' => 0,
+      'size' => 'medium',
+    ),
+    'timestamp' => array(
+      'type' => 'int',
+      'unsigned' => TRUE,
+      'not null' => TRUE,
+      'default' => 0,
+    ),
+  ),
+  'primary key' => array(
+    'nid',
+  ),
+  'module' => 'node',
+  'name' => 'node_counter',
+));
+
+db_create_table('node_revisions', array(
+  'fields' => array(
+    'nid' => array(
+      'type' => 'int',
+      'unsigned' => TRUE,
+      'not null' => TRUE,
+      'default' => 0,
+    ),
+    'vid' => array(
+      'type' => 'serial',
+      'unsigned' => TRUE,
+      'not null' => TRUE,
+    ),
+    'uid' => array(
+      'type' => 'int',
+      'not null' => TRUE,
+      'default' => 0,
+    ),
+    'title' => array(
+      'type' => 'varchar',
+      'length' => 255,
+      'not null' => TRUE,
+      'default' => '',
+    ),
+    'body' => array(
+      'type' => 'text',
+      'not null' => TRUE,
+      'size' => 'big',
+    ),
+    'teaser' => array(
+      'type' => 'text',
+      'not null' => TRUE,
+      'size' => 'big',
+    ),
+    'log' => array(
+      'type' => 'text',
+      'not null' => TRUE,
+      'size' => 'big',
+    ),
+    'timestamp' => array(
+      'type' => 'int',
+      'not null' => TRUE,
+      'default' => 0,
+    ),
+    'format' => array(
+      'type' => 'int',
+      'not null' => TRUE,
+      'default' => 0,
+    ),
+  ),
+  'indexes' => array(
+    'nid' => array(
+      'nid',
+    ),
+    'uid' => array(
+      'uid',
+    ),
+  ),
+  'primary key' => array(
+    'vid',
+  ),
+  'module' => 'node',
+  'name' => 'node_revisions',
+));
+
+db_create_table('node_type', array(
+  'fields' => array(
+    'type' => array(
+      'type' => 'varchar',
+      'length' => 32,
+      'not null' => TRUE,
+    ),
+    'name' => array(
+      'type' => 'varchar',
+      'length' => 255,
+      'not null' => TRUE,
+      'default' => '',
+    ),
+    'module' => array(
+      'type' => 'varchar',
+      'length' => 255,
+      'not null' => TRUE,
+    ),
+    'description' => array(
+      'type' => 'text',
+      'not null' => TRUE,
+      'size' => 'medium',
+    ),
+    'help' => array(
+      'type' => 'text',
+      'not null' => TRUE,
+      'size' => 'medium',
+    ),
+    'has_title' => array(
+      'type' => 'int',
+      'unsigned' => TRUE,
+      'not null' => TRUE,
+      'size' => 'tiny',
+    ),
+    'title_label' => array(
+      'type' => 'varchar',
+      'length' => 255,
+      'not null' => TRUE,
+      'default' => '',
+    ),
+    'has_body' => array(
+      'type' => 'int',
+      'unsigned' => TRUE,
+      'not null' => TRUE,
+      'size' => 'tiny',
+    ),
+    'body_label' => array(
+      'type' => 'varchar',
+      'length' => 255,
+      'not null' => TRUE,
+      'default' => '',
+    ),
+    'min_word_count' => array(
+      'type' => 'int',
+      'unsigned' => TRUE,
+      'not null' => TRUE,
+      'size' => 'small',
+    ),
+    'custom' => array(
+      'type' => 'int',
+      'not null' => TRUE,
+      'default' => 0,
+      'size' => 'tiny',
+    ),
+    'modified' => array(
+      'type' => 'int',
+      'not null' => TRUE,
+      'default' => 0,
+      'size' => 'tiny',
+    ),
+    'locked' => array(
+      'type' => 'int',
+      'not null' => TRUE,
+      'default' => 0,
+      'size' => 'tiny',
+    ),
+    'orig_type' => array(
+      'type' => 'varchar',
+      'length' => 255,
+      'not null' => TRUE,
+      'default' => '',
+    ),
+  ),
+  'primary key' => array(
+    'type',
+  ),
+  'module' => 'node',
+  'name' => 'node_type',
+));
+db_insert('node_type')->fields(array(
+  'type',
+  'name',
+  'module',
+  'description',
+  'help',
+  'has_title',
+  'title_label',
+  'has_body',
+  'body_label',
+  'min_word_count',
+  'custom',
+  'modified',
+  'locked',
+  'orig_type',
+))
+->values(array(
+  'type' => 'page',
+  'name' => 'Page',
+  'module' => 'node',
+  'description' => "A <em>page</em>, similar in form to a <em>story</em>, is a simple method for creating and displaying information that rarely changes, such as an \"About us\" section of a website. By default, a <em>page</em> entry does not allow visitor comments and is not featured on the site's initial home page.",
+  'help' => '',
+  'has_title' => '1',
+  'title_label' => 'Title',
+  'has_body' => '1',
+  'body_label' => 'Body',
+  'min_word_count' => '0',
+  'custom' => '1',
+  'modified' => '1',
+  'locked' => '0',
+  'orig_type' => 'page',
+))
+->values(array(
+  'type' => 'story',
+  'name' => 'Story',
+  'module' => 'node',
+  'description' => "A <em>story</em>, similar in form to a <em>page</em>, is ideal for creating and displaying content that informs or engages website visitors. Press releases, site announcements, and informal blog-like entries may all be created with a <em>story</em> entry. By default, a <em>story</em> entry is automatically featured on the site's initial home page, and provides the ability to post comments.",
+  'help' => '',
+  'has_title' => '1',
+  'title_label' => 'Title',
+  'has_body' => '1',
+  'body_label' => 'Body',
+  'min_word_count' => '0',
+  'custom' => '1',
+  'modified' => '1',
+  'locked' => '0',
+  'orig_type' => 'story',
+))
+->execute();
+
+db_create_table('permission', array(
+  'fields' => array(
+    'pid' => array(
+      'type' => 'serial',
+      'not null' => TRUE,
+    ),
+    'rid' => array(
+      'type' => 'int',
+      'unsigned' => TRUE,
+      'not null' => TRUE,
+      'default' => 0,
+    ),
+    'perm' => array(
+      'type' => 'text',
+      'not null' => FALSE,
+      'size' => 'big',
+    ),
+    'tid' => array(
+      'type' => 'int',
+      'unsigned' => TRUE,
+      'not null' => TRUE,
+      'default' => 0,
+    ),
+  ),
+  'primary key' => array(
+    'pid',
+  ),
+  'indexes' => array(
+    'rid' => array(
+      'rid',
+    ),
+  ),
+  'module' => 'user',
+  'name' => 'permission',
+));
+db_insert('permission')->fields(array(
+  'pid',
+  'rid',
+  'perm',
+  'tid',
+))
+->values(array(
+  'pid' => '1',
+  'rid' => '1',
+  'perm' => 'access content',
+  'tid' => '0',
+))
+->values(array(
+  'pid' => '2',
+  'rid' => '2',
+  'perm' => 'access comments, access content, post comments, post comments without approval',
+  'tid' => '0',
+))
+->execute();
+
+db_create_table('role', array(
+  'fields' => array(
+    'rid' => array(
+      'type' => 'serial',
+      'unsigned' => TRUE,
+      'not null' => TRUE,
+    ),
+    'name' => array(
+      'type' => 'varchar',
+      'length' => 64,
+      'not null' => TRUE,
+      'default' => '',
+    ),
+  ),
+  'unique keys' => array(
+    'name' => array(
+      'name',
+    ),
+  ),
+  'primary key' => array(
+    'rid',
+  ),
+  'module' => 'user',
+  'name' => 'role',
+));
+db_insert('role')->fields(array(
+  'rid',
+  'name',
+))
+->values(array(
+  'rid' => '1',
+  'name' => 'anonymous user',
+))
+->values(array(
+  'rid' => '2',
+  'name' => 'authenticated user',
+))
+->execute();
+
+db_create_table('semaphore', array(
+  'fields' => array(
+    'name' => array(
+      'type' => 'varchar',
+      'length' => 255,
+      'not null' => TRUE,
+      'default' => '',
+    ),
+    'value' => array(
+      'type' => 'varchar',
+      'length' => 255,
+      'not null' => TRUE,
+      'default' => '',
+    ),
+    'expire' => array(
+      'type' => 'float',
+      'size' => 'big',
+      'not null' => TRUE,
+    ),
+  ),
+  'indexes' => array(
+    'expire' => array(
+      'expire',
+    ),
+  ),
+  'primary key' => array(
+    'name',
+  ),
+  'module' => 'system',
+  'name' => 'semaphore',
+));
+
+db_create_table('sessions', array(
+  'fields' => array(
+    'uid' => array(
+      'type' => 'int',
+      'unsigned' => TRUE,
+      'not null' => TRUE,
+    ),
+    'sid' => array(
+      'type' => 'varchar',
+      'length' => 64,
+      'not null' => TRUE,
+      'default' => '',
+    ),
+    'hostname' => array(
+      'type' => 'varchar',
+      'length' => 128,
+      'not null' => TRUE,
+      'default' => '',
+    ),
+    'timestamp' => array(
+      'type' => 'int',
+      'not null' => TRUE,
+      'default' => 0,
+    ),
+    'cache' => array(
+      'type' => 'int',
+      'not null' => TRUE,
+      'default' => 0,
+    ),
+    'session' => array(
+      'type' => 'text',
+      'not null' => FALSE,
+      'size' => 'big',
+    ),
+  ),
+  'primary key' => array(
+    'sid',
+  ),
+  'indexes' => array(
+    'timestamp' => array(
+      'timestamp',
+    ),
+    'uid' => array(
+      'uid',
+    ),
+  ),
+  'module' => 'system',
+  'name' => 'sessions',
+));
+
+db_create_table('system', array(
+  'fields' => array(
+    'filename' => array(
+      'type' => 'varchar',
+      'length' => 255,
+      'not null' => TRUE,
+      'default' => '',
+    ),
+    'name' => array(
+      'type' => 'varchar',
+      'length' => 255,
+      'not null' => TRUE,
+      'default' => '',
+    ),
+    'type' => array(
+      'type' => 'varchar',
+      'length' => 255,
+      'not null' => TRUE,
+      'default' => '',
+    ),
+    'owner' => array(
+      'type' => 'varchar',
+      'length' => 255,
+      'not null' => TRUE,
+      'default' => '',
+    ),
+    'status' => array(
+      'type' => 'int',
+      'not null' => TRUE,
+      'default' => 0,
+    ),
+    'throttle' => array(
+      'type' => 'int',
+      'not null' => TRUE,
+      'default' => 0,
+      'size' => 'tiny',
+    ),
+    'bootstrap' => array(
+      'type' => 'int',
+      'not null' => TRUE,
+      'default' => 0,
+    ),
+    'schema_version' => array(
+      'type' => 'int',
+      'not null' => TRUE,
+      'default' => -1,
+      'size' => 'small',
+    ),
+    'weight' => array(
+      'type' => 'int',
+      'not null' => TRUE,
+      'default' => 0,
+    ),
+    'info' => array(
+      'type' => 'text',
+      'not null' => FALSE,
+    ),
+  ),
+  'primary key' => array(
+    'filename',
+  ),
+  'indexes' => array(
+    'modules' => array(
+      array(
+        'type',
+        12,
+      ),
+      'status',
+      'weight',
+      'filename',
+    ),
+    'bootstrap' => array(
+      array(
+        'type',
+        12,
+      ),
+      'status',
+      'bootstrap',
+      'weight',
+      'filename',
+    ),
+    'type_name' => array(
+      array(
+        'type',
+        12,
+      ),
+      'name',
+    ),
+  ),
+  'module' => 'system',
+  'name' => 'system',
+));
+db_insert('system')->fields(array(
+  'filename',
+  'name',
+  'type',
+  'owner',
+  'status',
+  'throttle',
+  'bootstrap',
+  'schema_version',
+  'weight',
+  'info',
+))
+->values(array(
+  'filename' => 'modules/aggregator/aggregator.module',
+  'name' => 'aggregator',
+  'type' => 'module',
+  'owner' => '',
+  'status' => '0',
+  'throttle' => '0',
+  'bootstrap' => '0',
+  'schema_version' => '-1',
+  'weight' => '0',
+  'info' => 'a:10:{s:4:"name";s:10:"Aggregator";s:11:"description";s:57:"Aggregates syndicated content (RSS, RDF, and Atom feeds).";s:7:"package";s:15:"Core - optional";s:7:"version";s:4:"6.17";s:4:"core";s:3:"6.x";s:7:"project";s:6:"drupal";s:9:"datestamp";s:10:"1275505216";s:12:"dependencies";a:0:{}s:10:"dependents";a:0:{}s:3:"php";s:5:"4.3.5";}',
+))
+->values(array(
+  'filename' => 'modules/block/block.module',
+  'name' => 'block',
+  'type' => 'module',
+  'owner' => '',
+  'status' => '1',
+  'throttle' => '0',
+  'bootstrap' => '0',
+  'schema_version' => '0',
+  'weight' => '0',
+  'info' => 'a:10:{s:4:"name";s:5:"Block";s:11:"description";s:62:"Controls the boxes that are displayed around the main content.";s:7:"package";s:15:"Core - required";s:7:"version";s:4:"6.17";s:4:"core";s:3:"6.x";s:7:"project";s:6:"drupal";s:9:"datestamp";s:10:"1275505216";s:12:"dependencies";a:0:{}s:10:"dependents";a:0:{}s:3:"php";s:5:"4.3.5";}',
+))
+->values(array(
+  'filename' => 'modules/blog/blog.module',
+  'name' => 'blog',
+  'type' => 'module',
+  'owner' => '',
+  'status' => '0',
+  'throttle' => '0',
+  'bootstrap' => '0',
+  'schema_version' => '-1',
+  'weight' => '0',
+  'info' => 'a:10:{s:4:"name";s:4:"Blog";s:11:"description";s:69:"Enables keeping easily and regularly updated user web pages or blogs.";s:7:"package";s:15:"Core - optional";s:7:"version";s:4:"6.17";s:4:"core";s:3:"6.x";s:7:"project";s:6:"drupal";s:9:"datestamp";s:10:"1275505216";s:12:"dependencies";a:0:{}s:10:"dependents";a:0:{}s:3:"php";s:5:"4.3.5";}',
+))
+->values(array(
+  'filename' => 'modules/blogapi/blogapi.module',
+  'name' => 'blogapi',
+  'type' => 'module',
+  'owner' => '',
+  'status' => '0',
+  'throttle' => '0',
+  'bootstrap' => '0',
+  'schema_version' => '-1',
+  'weight' => '0',
+  'info' => 'a:10:{s:4:"name";s:8:"Blog API";s:11:"description";s:79:"Allows users to post content using applications that support XML-RPC blog APIs.";s:7:"package";s:15:"Core - optional";s:7:"version";s:4:"6.17";s:4:"core";s:3:"6.x";s:7:"project";s:6:"drupal";s:9:"datestamp";s:10:"1275505216";s:12:"dependencies";a:0:{}s:10:"dependents";a:0:{}s:3:"php";s:5:"4.3.5";}',
+))
+->values(array(
+  'filename' => 'modules/book/book.module',
+  'name' => 'book',
+  'type' => 'module',
+  'owner' => '',
+  'status' => '0',
+  'throttle' => '0',
+  'bootstrap' => '0',
+  'schema_version' => '-1',
+  'weight' => '0',
+  'info' => 'a:10:{s:4:"name";s:4:"Book";s:11:"description";s:63:"Allows users to structure site pages in a hierarchy or outline.";s:7:"package";s:15:"Core - optional";s:7:"version";s:4:"6.17";s:4:"core";s:3:"6.x";s:7:"project";s:6:"drupal";s:9:"datestamp";s:10:"1275505216";s:12:"dependencies";a:0:{}s:10:"dependents";a:0:{}s:3:"php";s:5:"4.3.5";}',
+))
+->values(array(
+  'filename' => 'modules/color/color.module',
+  'name' => 'color',
+  'type' => 'module',
+  'owner' => '',
+  'status' => '0',
+  'throttle' => '0',
+  'bootstrap' => '0',
+  'schema_version' => '-1',
+  'weight' => '0',
+  'info' => 'a:10:{s:4:"name";s:5:"Color";s:11:"description";s:61:"Allows the user to change the color scheme of certain themes.";s:7:"package";s:15:"Core - optional";s:7:"version";s:4:"6.17";s:4:"core";s:3:"6.x";s:7:"project";s:6:"drupal";s:9:"datestamp";s:10:"1275505216";s:12:"dependencies";a:0:{}s:10:"dependents";a:0:{}s:3:"php";s:5:"4.3.5";}',
+))
+->values(array(
+  'filename' => 'modules/comment/comment.module',
+  'name' => 'comment',
+  'type' => 'module',
+  'owner' => '',
+  'status' => '0',
+  'throttle' => '0',
+  'bootstrap' => '0',
+  'schema_version' => '-1',
+  'weight' => '0',
+  'info' => 'a:10:{s:4:"name";s:7:"Comment";s:11:"description";s:57:"Allows users to comment on and discuss published content.";s:7:"package";s:15:"Core - optional";s:7:"version";s:4:"6.17";s:4:"core";s:3:"6.x";s:7:"project";s:6:"drupal";s:9:"datestamp";s:10:"1275505216";s:12:"dependencies";a:0:{}s:10:"dependents";a:0:{}s:3:"php";s:5:"4.3.5";}',
+))
+->values(array(
+  'filename' => 'modules/contact/contact.module',
+  'name' => 'contact',
+  'type' => 'module',
+  'owner' => '',
+  'status' => '0',
+  'throttle' => '0',
+  'bootstrap' => '0',
+  'schema_version' => '-1',
+  'weight' => '0',
+  'info' => 'a:10:{s:4:"name";s:7:"Contact";s:11:"description";s:61:"Enables the use of both personal and site-wide contact forms.";s:7:"package";s:15:"Core - optional";s:7:"version";s:4:"6.17";s:4:"core";s:3:"6.x";s:7:"project";s:6:"drupal";s:9:"datestamp";s:10:"1275505216";s:12:"dependencies";a:0:{}s:10:"dependents";a:0:{}s:3:"php";s:5:"4.3.5";}',
+))
+->values(array(
+  'filename' => 'modules/dblog/dblog.module',
+  'name' => 'dblog',
+  'type' => 'module',
+  'owner' => '',
+  'status' => '1',
+  'throttle' => '0',
+  'bootstrap' => '0',
+  'schema_version' => '6000',
+  'weight' => '0',
+  'info' => 'a:10:{s:4:"name";s:16:"Database logging";s:11:"description";s:47:"Logs and records system events to the database.";s:7:"package";s:15:"Core - optional";s:7:"version";s:4:"6.17";s:4:"core";s:3:"6.x";s:7:"project";s:6:"drupal";s:9:"datestamp";s:10:"1275505216";s:12:"dependencies";a:0:{}s:10:"dependents";a:0:{}s:3:"php";s:5:"4.3.5";}',
+))
+->values(array(
+  'filename' => 'modules/filter/filter.module',
+  'name' => 'filter',
+  'type' => 'module',
+  'owner' => '',
+  'status' => '1',
+  'throttle' => '0',
+  'bootstrap' => '0',
+  'schema_version' => '0',
+  'weight' => '0',
+  'info' => 'a:10:{s:4:"name";s:6:"Filter";s:11:"description";s:60:"Handles the filtering of content in preparation for display.";s:7:"package";s:15:"Core - required";s:7:"version";s:4:"6.17";s:4:"core";s:3:"6.x";s:7:"project";s:6:"drupal";s:9:"datestamp";s:10:"1275505216";s:12:"dependencies";a:0:{}s:10:"dependents";a:0:{}s:3:"php";s:5:"4.3.5";}',
+))
+->values(array(
+  'filename' => 'modules/forum/forum.module',
+  'name' => 'forum',
+  'type' => 'module',
+  'owner' => '',
+  'status' => '0',
+  'throttle' => '0',
+  'bootstrap' => '0',
+  'schema_version' => '-1',
+  'weight' => '0',
+  'info' => 'a:10:{s:4:"name";s:5:"Forum";s:11:"description";s:50:"Enables threaded discussions about general topics.";s:12:"dependencies";a:2:{i:0;s:8:"taxonomy";i:1;s:7:"comment";}s:7:"package";s:15:"Core - optional";s:7:"version";s:4:"6.17";s:4:"core";s:3:"6.x";s:7:"project";s:6:"drupal";s:9:"datestamp";s:10:"1275505216";s:10:"dependents";a:0:{}s:3:"php";s:5:"4.3.5";}',
+))
+->values(array(
+  'filename' => 'modules/help/help.module',
+  'name' => 'help',
+  'type' => 'module',
+  'owner' => '',
+  'status' => '0',
+  'throttle' => '0',
+  'bootstrap' => '0',
+  'schema_version' => '-1',
+  'weight' => '0',
+  'info' => 'a:10:{s:4:"name";s:4:"Help";s:11:"description";s:35:"Manages the display of online help.";s:7:"package";s:15:"Core - optional";s:7:"version";s:4:"6.17";s:4:"core";s:3:"6.x";s:7:"project";s:6:"drupal";s:9:"datestamp";s:10:"1275505216";s:12:"dependencies";a:0:{}s:10:"dependents";a:0:{}s:3:"php";s:5:"4.3.5";}',
+))
+->values(array(
+  'filename' => 'modules/locale/locale.module',
+  'name' => 'locale',
+  'type' => 'module',
+  'owner' => '',
+  'status' => '0',
+  'throttle' => '0',
+  'bootstrap' => '0',
+  'schema_version' => '-1',
+  'weight' => '0',
+  'info' => 'a:10:{s:4:"name";s:6:"Locale";s:11:"description";s:119:"Adds language handling functionality and enables the translation of the user interface to languages other than English.";s:7:"package";s:15:"Core - optional";s:7:"version";s:4:"6.17";s:4:"core";s:3:"6.x";s:7:"project";s:6:"drupal";s:9:"datestamp";s:10:"1275505216";s:12:"dependencies";a:0:{}s:10:"dependents";a:0:{}s:3:"php";s:5:"4.3.5";}',
+))
+->values(array(
+  'filename' => 'modules/menu/menu.module',
+  'name' => 'menu',
+  'type' => 'module',
+  'owner' => '',
+  'status' => '0',
+  'throttle' => '0',
+  'bootstrap' => '0',
+  'schema_version' => '-1',
+  'weight' => '0',
+  'info' => 'a:10:{s:4:"name";s:4:"Menu";s:11:"description";s:60:"Allows administrators to customize the site navigation menu.";s:7:"package";s:15:"Core - optional";s:7:"version";s:4:"6.17";s:4:"core";s:3:"6.x";s:7:"project";s:6:"drupal";s:9:"datestamp";s:10:"1275505216";s:12:"dependencies";a:0:{}s:10:"dependents";a:0:{}s:3:"php";s:5:"4.3.5";}',
+))
+->values(array(
+  'filename' => 'modules/node/node.module',
+  'name' => 'node',
+  'type' => 'module',
+  'owner' => '',
+  'status' => '1',
+  'throttle' => '0',
+  'bootstrap' => '0',
+  'schema_version' => '0',
+  'weight' => '0',
+  'info' => 'a:10:{s:4:"name";s:4:"Node";s:11:"description";s:66:"Allows content to be submitted to the site and displayed on pages.";s:7:"package";s:15:"Core - required";s:7:"version";s:4:"6.17";s:4:"core";s:3:"6.x";s:7:"project";s:6:"drupal";s:9:"datestamp";s:10:"1275505216";s:12:"dependencies";a:0:{}s:10:"dependents";a:0:{}s:3:"php";s:5:"4.3.5";}',
+))
+->values(array(
+  'filename' => 'modules/openid/openid.module',
+  'name' => 'openid',
+  'type' => 'module',
+  'owner' => '',
+  'status' => '0',
+  'throttle' => '0',
+  'bootstrap' => '0',
+  'schema_version' => '-1',
+  'weight' => '0',
+  'info' => 'a:10:{s:4:"name";s:6:"OpenID";s:11:"description";s:48:"Allows users to log into your site using OpenID.";s:7:"version";s:4:"6.17";s:7:"package";s:15:"Core - optional";s:4:"core";s:3:"6.x";s:7:"project";s:6:"drupal";s:9:"datestamp";s:10:"1275505216";s:12:"dependencies";a:0:{}s:10:"dependents";a:0:{}s:3:"php";s:5:"4.3.5";}',
+))
+->values(array(
+  'filename' => 'modules/path/path.module',
+  'name' => 'path',
+  'type' => 'module',
+  'owner' => '',
+  'status' => '0',
+  'throttle' => '0',
+  'bootstrap' => '0',
+  'schema_version' => '-1',
+  'weight' => '0',
+  'info' => 'a:10:{s:4:"name";s:4:"Path";s:11:"description";s:28:"Allows users to rename URLs.";s:7:"package";s:15:"Core - optional";s:7:"version";s:4:"6.17";s:4:"core";s:3:"6.x";s:7:"project";s:6:"drupal";s:9:"datestamp";s:10:"1275505216";s:12:"dependencies";a:0:{}s:10:"dependents";a:0:{}s:3:"php";s:5:"4.3.5";}',
+))
+->values(array(
+  'filename' => 'modules/php/php.module',
+  'name' => 'php',
+  'type' => 'module',
+  'owner' => '',
+  'status' => '0',
+  'throttle' => '0',
+  'bootstrap' => '0',
+  'schema_version' => '-1',
+  'weight' => '0',
+  'info' => 'a:10:{s:4:"name";s:10:"PHP filter";s:11:"description";s:50:"Allows embedded PHP code/snippets to be evaluated.";s:7:"package";s:15:"Core - optional";s:7:"version";s:4:"6.17";s:4:"core";s:3:"6.x";s:7:"project";s:6:"drupal";s:9:"datestamp";s:10:"1275505216";s:12:"dependencies";a:0:{}s:10:"dependents";a:0:{}s:3:"php";s:5:"4.3.5";}',
+))
+->values(array(
+  'filename' => 'modules/ping/ping.module',
+  'name' => 'ping',
+  'type' => 'module',
+  'owner' => '',
+  'status' => '0',
+  'throttle' => '0',
+  'bootstrap' => '0',
+  'schema_version' => '-1',
+  'weight' => '0',
+  'info' => 'a:10:{s:4:"name";s:4:"Ping";s:11:"description";s:51:"Alerts other sites when your site has been updated.";s:7:"package";s:15:"Core - optional";s:7:"version";s:4:"6.17";s:4:"core";s:3:"6.x";s:7:"project";s:6:"drupal";s:9:"datestamp";s:10:"1275505216";s:12:"dependencies";a:0:{}s:10:"dependents";a:0:{}s:3:"php";s:5:"4.3.5";}',
+))
+->values(array(
+  'filename' => 'modules/poll/poll.module',
+  'name' => 'poll',
+  'type' => 'module',
+  'owner' => '',
+  'status' => '0',
+  'throttle' => '0',
+  'bootstrap' => '0',
+  'schema_version' => '-1',
+  'weight' => '0',
+  'info' => 'a:10:{s:4:"name";s:4:"Poll";s:11:"description";s:95:"Allows your site to capture votes on different topics in the form of multiple choice questions.";s:7:"package";s:15:"Core - optional";s:7:"version";s:4:"6.17";s:4:"core";s:3:"6.x";s:7:"project";s:6:"drupal";s:9:"datestamp";s:10:"1275505216";s:12:"dependencies";a:0:{}s:10:"dependents";a:0:{}s:3:"php";s:5:"4.3.5";}',
+))
+->values(array(
+  'filename' => 'modules/profile/profile.module',
+  'name' => 'profile',
+  'type' => 'module',
+  'owner' => '',
+  'status' => '0',
+  'throttle' => '0',
+  'bootstrap' => '0',
+  'schema_version' => '-1',
+  'weight' => '0',
+  'info' => 'a:10:{s:4:"name";s:7:"Profile";s:11:"description";s:36:"Supports configurable user profiles.";s:7:"package";s:15:"Core - optional";s:7:"version";s:4:"6.17";s:4:"core";s:3:"6.x";s:7:"project";s:6:"drupal";s:9:"datestamp";s:10:"1275505216";s:12:"dependencies";a:0:{}s:10:"dependents";a:0:{}s:3:"php";s:5:"4.3.5";}',
+))
+->values(array(
+  'filename' => 'modules/search/search.module',
+  'name' => 'search',
+  'type' => 'module',
+  'owner' => '',
+  'status' => '0',
+  'throttle' => '0',
+  'bootstrap' => '0',
+  'schema_version' => '-1',
+  'weight' => '0',
+  'info' => 'a:10:{s:4:"name";s:6:"Search";s:11:"description";s:36:"Enables site-wide keyword searching.";s:7:"package";s:15:"Core - optional";s:7:"version";s:4:"6.17";s:4:"core";s:3:"6.x";s:7:"project";s:6:"drupal";s:9:"datestamp";s:10:"1275505216";s:12:"dependencies";a:0:{}s:10:"dependents";a:0:{}s:3:"php";s:5:"4.3.5";}',
+))
+->values(array(
+  'filename' => 'modules/statistics/statistics.module',
+  'name' => 'statistics',
+  'type' => 'module',
+  'owner' => '',
+  'status' => '0',
+  'throttle' => '0',
+  'bootstrap' => '0',
+  'schema_version' => '-1',
+  'weight' => '0',
+  'info' => 'a:10:{s:4:"name";s:10:"Statistics";s:11:"description";s:37:"Logs access statistics for your site.";s:7:"package";s:15:"Core - optional";s:7:"version";s:4:"6.17";s:4:"core";s:3:"6.x";s:7:"project";s:6:"drupal";s:9:"datestamp";s:10:"1275505216";s:12:"dependencies";a:0:{}s:10:"dependents";a:0:{}s:3:"php";s:5:"4.3.5";}',
+))
+->values(array(
+  'filename' => 'modules/syslog/syslog.module',
+  'name' => 'syslog',
+  'type' => 'module',
+  'owner' => '',
+  'status' => '0',
+  'throttle' => '0',
+  'bootstrap' => '0',
+  'schema_version' => '-1',
+  'weight' => '0',
+  'info' => 'a:10:{s:4:"name";s:6:"Syslog";s:11:"description";s:41:"Logs and records system events to syslog.";s:7:"package";s:15:"Core - optional";s:7:"version";s:4:"6.17";s:4:"core";s:3:"6.x";s:7:"project";s:6:"drupal";s:9:"datestamp";s:10:"1275505216";s:12:"dependencies";a:0:{}s:10:"dependents";a:0:{}s:3:"php";s:5:"4.3.5";}',
+))
+->values(array(
+  'filename' => 'modules/system/system.module',
+  'name' => 'system',
+  'type' => 'module',
+  'owner' => '',
+  'status' => '1',
+  'throttle' => '0',
+  'bootstrap' => '0',
+  'schema_version' => '6055',
+  'weight' => '0',
+  'info' => 'a:10:{s:4:"name";s:6:"System";s:11:"description";s:54:"Handles general site configuration for administrators.";s:7:"package";s:15:"Core - required";s:7:"version";s:4:"6.17";s:4:"core";s:3:"6.x";s:7:"project";s:6:"drupal";s:9:"datestamp";s:10:"1275505216";s:12:"dependencies";a:0:{}s:10:"dependents";a:0:{}s:3:"php";s:5:"4.3.5";}',
+))
+->values(array(
+  'filename' => 'modules/taxonomy/taxonomy.module',
+  'name' => 'taxonomy',
+  'type' => 'module',
+  'owner' => '',
+  'status' => '0',
+  'throttle' => '0',
+  'bootstrap' => '0',
+  'schema_version' => '-1',
+  'weight' => '0',
+  'info' => 'a:10:{s:4:"name";s:8:"Taxonomy";s:11:"description";s:38:"Enables the categorization of content.";s:7:"package";s:15:"Core - optional";s:7:"version";s:4:"6.17";s:4:"core";s:3:"6.x";s:7:"project";s:6:"drupal";s:9:"datestamp";s:10:"1275505216";s:12:"dependencies";a:0:{}s:10:"dependents";a:0:{}s:3:"php";s:5:"4.3.5";}',
+))
+->values(array(
+  'filename' => 'modules/throttle/throttle.module',
+  'name' => 'throttle',
+  'type' => 'module',
+  'owner' => '',
+  'status' => '0',
+  'throttle' => '0',
+  'bootstrap' => '0',
+  'schema_version' => '-1',
+  'weight' => '0',
+  'info' => 'a:10:{s:4:"name";s:8:"Throttle";s:11:"description";s:66:"Handles the auto-throttling mechanism, to control site congestion.";s:7:"package";s:15:"Core - optional";s:7:"version";s:4:"6.17";s:4:"core";s:3:"6.x";s:7:"project";s:6:"drupal";s:9:"datestamp";s:10:"1275505216";s:12:"dependencies";a:0:{}s:10:"dependents";a:0:{}s:3:"php";s:5:"4.3.5";}',
+))
+->values(array(
+  'filename' => 'modules/tracker/tracker.module',
+  'name' => 'tracker',
+  'type' => 'module',
+  'owner' => '',
+  'status' => '0',
+  'throttle' => '0',
+  'bootstrap' => '0',
+  'schema_version' => '-1',
+  'weight' => '0',
+  'info' => 'a:10:{s:4:"name";s:7:"Tracker";s:11:"description";s:43:"Enables tracking of recent posts for users.";s:12:"dependencies";a:1:{i:0;s:7:"comment";}s:7:"package";s:15:"Core - optional";s:7:"version";s:4:"6.17";s:4:"core";s:3:"6.x";s:7:"project";s:6:"drupal";s:9:"datestamp";s:10:"1275505216";s:10:"dependents";a:0:{}s:3:"php";s:5:"4.3.5";}',
+))
+->values(array(
+  'filename' => 'modules/translation/translation.module',
+  'name' => 'translation',
+  'type' => 'module',
+  'owner' => '',
+  'status' => '0',
+  'throttle' => '0',
+  'bootstrap' => '0',
+  'schema_version' => '-1',
+  'weight' => '0',
+  'info' => 'a:10:{s:4:"name";s:19:"Content translation";s:11:"description";s:57:"Allows content to be translated into different languages.";s:12:"dependencies";a:1:{i:0;s:6:"locale";}s:7:"package";s:15:"Core - optional";s:7:"version";s:4:"6.17";s:4:"core";s:3:"6.x";s:7:"project";s:6:"drupal";s:9:"datestamp";s:10:"1275505216";s:10:"dependents";a:0:{}s:3:"php";s:5:"4.3.5";}',
+))
+->values(array(
+  'filename' => 'modules/trigger/trigger.module',
+  'name' => 'trigger',
+  'type' => 'module',
+  'owner' => '',
+  'status' => '0',
+  'throttle' => '0',
+  'bootstrap' => '0',
+  'schema_version' => '-1',
+  'weight' => '0',
+  'info' => 'a:10:{s:4:"name";s:7:"Trigger";s:11:"description";s:90:"Enables actions to be fired on certain system events, such as when new content is created.";s:7:"package";s:15:"Core - optional";s:7:"version";s:4:"6.17";s:4:"core";s:3:"6.x";s:7:"project";s:6:"drupal";s:9:"datestamp";s:10:"1275505216";s:12:"dependencies";a:0:{}s:10:"dependents";a:0:{}s:3:"php";s:5:"4.3.5";}',
+))
+->values(array(
+  'filename' => 'modules/update/update.module',
+  'name' => 'update',
+  'type' => 'module',
+  'owner' => '',
+  'status' => '1',
+  'throttle' => '0',
+  'bootstrap' => '0',
+  'schema_version' => '6000',
+  'weight' => '0',
+  'info' => 'a:10:{s:4:"name";s:13:"Update status";s:11:"description";s:88:"Checks the status of available updates for Drupal and your installed modules and themes.";s:7:"version";s:4:"6.17";s:7:"package";s:15:"Core - optional";s:4:"core";s:3:"6.x";s:7:"project";s:6:"drupal";s:9:"datestamp";s:10:"1275505216";s:12:"dependencies";a:0:{}s:10:"dependents";a:0:{}s:3:"php";s:5:"4.3.5";}',
+))
+->values(array(
+  'filename' => 'modules/upload/upload.module',
+  'name' => 'upload',
+  'type' => 'module',
+  'owner' => '',
+  'status' => '0',
+  'throttle' => '0',
+  'bootstrap' => '0',
+  'schema_version' => '-1',
+  'weight' => '0',
+  'info' => 'a:10:{s:4:"name";s:6:"Upload";s:11:"description";s:51:"Allows users to upload and attach files to content.";s:7:"package";s:15:"Core - optional";s:7:"version";s:4:"6.17";s:4:"core";s:3:"6.x";s:7:"project";s:6:"drupal";s:9:"datestamp";s:10:"1275505216";s:12:"dependencies";a:0:{}s:10:"dependents";a:0:{}s:3:"php";s:5:"4.3.5";}',
+))
+->values(array(
+  'filename' => 'modules/user/user.module',
+  'name' => 'user',
+  'type' => 'module',
+  'owner' => '',
+  'status' => '1',
+  'throttle' => '0',
+  'bootstrap' => '0',
+  'schema_version' => '0',
+  'weight' => '0',
+  'info' => 'a:10:{s:4:"name";s:4:"User";s:11:"description";s:47:"Manages the user registration and login system.";s:7:"package";s:15:"Core - required";s:7:"version";s:4:"6.17";s:4:"core";s:3:"6.x";s:7:"project";s:6:"drupal";s:9:"datestamp";s:10:"1275505216";s:12:"dependencies";a:0:{}s:10:"dependents";a:0:{}s:3:"php";s:5:"4.3.5";}',
+))
+->values(array(
+  'filename' => 'themes/bluemarine/bluemarine.info',
+  'name' => 'bluemarine',
+  'type' => 'theme',
+  'owner' => 'themes/engines/phptemplate/phptemplate.engine',
+  'status' => '0',
+  'throttle' => '0',
+  'bootstrap' => '0',
+  'schema_version' => '-1',
+  'weight' => '0',
+  'info' => 'a:13:{s:4:"name";s:10:"Bluemarine";s:11:"description";s:66:"Table-based multi-column theme with a marine and ash color scheme.";s:7:"version";s:4:"6.17";s:4:"core";s:3:"6.x";s:6:"engine";s:11:"phptemplate";s:7:"project";s:6:"drupal";s:9:"datestamp";s:10:"1275505216";s:7:"regions";a:5:{s:4:"left";s:12:"Left sidebar";s:5:"right";s:13:"Right sidebar";s:7:"content";s:7:"Content";s:6:"header";s:6:"Header";s:6:"footer";s:6:"Footer";}s:8:"features";a:10:{i:0;s:20:"comment_user_picture";i:1;s:7:"favicon";i:2;s:7:"mission";i:3;s:4:"logo";i:4;s:4:"name";i:5;s:17:"node_user_picture";i:6;s:6:"search";i:7;s:6:"slogan";i:8;s:13:"primary_links";i:9;s:15:"secondary_links";}s:11:"stylesheets";a:1:{s:3:"all";a:1:{s:9:"style.css";s:27:"themes/bluemarine/style.css";}}s:7:"scripts";a:1:{s:9:"script.js";s:27:"themes/bluemarine/script.js";}s:10:"screenshot";s:32:"themes/bluemarine/screenshot.png";s:3:"php";s:5:"4.3.5";}',
+))
+->values(array(
+  'filename' => 'themes/chameleon/chameleon.info',
+  'name' => 'chameleon',
+  'type' => 'theme',
+  'owner' => 'themes/chameleon/chameleon.theme',
+  'status' => '0',
+  'throttle' => '0',
+  'bootstrap' => '0',
+  'schema_version' => '-1',
+  'weight' => '0',
+  'info' => 'a:12:{s:4:"name";s:9:"Chameleon";s:11:"description";s:42:"Minimalist tabled theme with light colors.";s:7:"regions";a:2:{s:4:"left";s:12:"Left sidebar";s:5:"right";s:13:"Right sidebar";}s:8:"features";a:4:{i:0;s:4:"logo";i:1;s:7:"favicon";i:2;s:4:"name";i:3;s:6:"slogan";}s:11:"stylesheets";a:1:{s:3:"all";a:2:{s:9:"style.css";s:26:"themes/chameleon/style.css";s:10:"common.css";s:27:"themes/chameleon/common.css";}}s:7:"version";s:4:"6.17";s:4:"core";s:3:"6.x";s:7:"project";s:6:"drupal";s:9:"datestamp";s:10:"1275505216";s:7:"scripts";a:1:{s:9:"script.js";s:26:"themes/chameleon/script.js";}s:10:"screenshot";s:31:"themes/chameleon/screenshot.png";s:3:"php";s:5:"4.3.5";}',
+))
+->values(array(
+  'filename' => 'themes/chameleon/marvin/marvin.info',
+  'name' => 'marvin',
+  'type' => 'theme',
+  'owner' => '',
+  'status' => '0',
+  'throttle' => '0',
+  'bootstrap' => '0',
+  'schema_version' => '-1',
+  'weight' => '0',
+  'info' => 'a:13:{s:4:"name";s:6:"Marvin";s:11:"description";s:31:"Boxy tabled theme in all grays.";s:7:"regions";a:2:{s:4:"left";s:12:"Left sidebar";s:5:"right";s:13:"Right sidebar";}s:7:"version";s:4:"6.17";s:4:"core";s:3:"6.x";s:10:"base theme";s:9:"chameleon";s:7:"project";s:6:"drupal";s:9:"datestamp";s:10:"1275505216";s:8:"features";a:10:{i:0;s:20:"comment_user_picture";i:1;s:7:"favicon";i:2;s:7:"mission";i:3;s:4:"logo";i:4;s:4:"name";i:5;s:17:"node_user_picture";i:6;s:6:"search";i:7;s:6:"slogan";i:8;s:13:"primary_links";i:9;s:15:"secondary_links";}s:11:"stylesheets";a:1:{s:3:"all";a:1:{s:9:"style.css";s:33:"themes/chameleon/marvin/style.css";}}s:7:"scripts";a:1:{s:9:"script.js";s:33:"themes/chameleon/marvin/script.js";}s:10:"screenshot";s:38:"themes/chameleon/marvin/screenshot.png";s:3:"php";s:5:"4.3.5";}',
+))
+->values(array(
+  'filename' => 'themes/garland/garland.info',
+  'name' => 'garland',
+  'type' => 'theme',
+  'owner' => 'themes/engines/phptemplate/phptemplate.engine',
+  'status' => '1',
+  'throttle' => '0',
+  'bootstrap' => '0',
+  'schema_version' => '-1',
+  'weight' => '0',
+  'info' => 'a:13:{s:4:"name";s:7:"Garland";s:11:"description";s:66:"Tableless, recolorable, multi-column, fluid width theme (default).";s:7:"version";s:4:"6.17";s:4:"core";s:3:"6.x";s:6:"engine";s:11:"phptemplate";s:11:"stylesheets";a:2:{s:3:"all";a:1:{s:9:"style.css";s:24:"themes/garland/style.css";}s:5:"print";a:1:{s:9:"print.css";s:24:"themes/garland/print.css";}}s:7:"project";s:6:"drupal";s:9:"datestamp";s:10:"1275505216";s:7:"regions";a:5:{s:4:"left";s:12:"Left sidebar";s:5:"right";s:13:"Right sidebar";s:7:"content";s:7:"Content";s:6:"header";s:6:"Header";s:6:"footer";s:6:"Footer";}s:8:"features";a:10:{i:0;s:20:"comment_user_picture";i:1;s:7:"favicon";i:2;s:7:"mission";i:3;s:4:"logo";i:4;s:4:"name";i:5;s:17:"node_user_picture";i:6;s:6:"search";i:7;s:6:"slogan";i:8;s:13:"primary_links";i:9;s:15:"secondary_links";}s:7:"scripts";a:1:{s:9:"script.js";s:24:"themes/garland/script.js";}s:10:"screenshot";s:29:"themes/garland/screenshot.png";s:3:"php";s:5:"4.3.5";}',
+))
+->values(array(
+  'filename' => 'themes/garland/minnelli/minnelli.info',
+  'name' => 'minnelli',
+  'type' => 'theme',
+  'owner' => 'themes/engines/phptemplate/phptemplate.engine',
+  'status' => '0',
+  'throttle' => '0',
+  'bootstrap' => '0',
+  'schema_version' => '-1',
+  'weight' => '0',
+  'info' => 'a:14:{s:4:"name";s:8:"Minnelli";s:11:"description";s:56:"Tableless, recolorable, multi-column, fixed width theme.";s:7:"version";s:4:"6.17";s:4:"core";s:3:"6.x";s:10:"base theme";s:7:"garland";s:11:"stylesheets";a:1:{s:3:"all";a:1:{s:12:"minnelli.css";s:36:"themes/garland/minnelli/minnelli.css";}}s:7:"project";s:6:"drupal";s:9:"datestamp";s:10:"1275505216";s:7:"regions";a:5:{s:4:"left";s:12:"Left sidebar";s:5:"right";s:13:"Right sidebar";s:7:"content";s:7:"Content";s:6:"header";s:6:"Header";s:6:"footer";s:6:"Footer";}s:8:"features";a:10:{i:0;s:20:"comment_user_picture";i:1;s:7:"favicon";i:2;s:7:"mission";i:3;s:4:"logo";i:4;s:4:"name";i:5;s:17:"node_user_picture";i:6;s:6:"search";i:7;s:6:"slogan";i:8;s:13:"primary_links";i:9;s:15:"secondary_links";}s:7:"scripts";a:1:{s:9:"script.js";s:33:"themes/garland/minnelli/script.js";}s:10:"screenshot";s:38:"themes/garland/minnelli/screenshot.png";s:3:"php";s:5:"4.3.5";s:6:"engine";s:11:"phptemplate";}',
+))
+->values(array(
+  'filename' => 'themes/pushbutton/pushbutton.info',
+  'name' => 'pushbutton',
+  'type' => 'theme',
+  'owner' => 'themes/engines/phptemplate/phptemplate.engine',
+  'status' => '0',
+  'throttle' => '0',
+  'bootstrap' => '0',
+  'schema_version' => '-1',
+  'weight' => '0',
+  'info' => 'a:13:{s:4:"name";s:10:"Pushbutton";s:11:"description";s:52:"Tabled, multi-column theme in blue and orange tones.";s:7:"version";s:4:"6.17";s:4:"core";s:3:"6.x";s:6:"engine";s:11:"phptemplate";s:7:"project";s:6:"drupal";s:9:"datestamp";s:10:"1275505216";s:7:"regions";a:5:{s:4:"left";s:12:"Left sidebar";s:5:"right";s:13:"Right sidebar";s:7:"content";s:7:"Content";s:6:"header";s:6:"Header";s:6:"footer";s:6:"Footer";}s:8:"features";a:10:{i:0;s:20:"comment_user_picture";i:1;s:7:"favicon";i:2;s:7:"mission";i:3;s:4:"logo";i:4;s:4:"name";i:5;s:17:"node_user_picture";i:6;s:6:"search";i:7;s:6:"slogan";i:8;s:13:"primary_links";i:9;s:15:"secondary_links";}s:11:"stylesheets";a:1:{s:3:"all";a:1:{s:9:"style.css";s:27:"themes/pushbutton/style.css";}}s:7:"scripts";a:1:{s:9:"script.js";s:27:"themes/pushbutton/script.js";}s:10:"screenshot";s:32:"themes/pushbutton/screenshot.png";s:3:"php";s:5:"4.3.5";}',
+))
+->execute();
+
+db_create_table('url_alias', array(
+  'fields' => array(
+    'pid' => array(
+      'type' => 'serial',
+      'unsigned' => TRUE,
+      'not null' => TRUE,
+    ),
+    'src' => array(
+      'type' => 'varchar',
+      'length' => 128,
+      'not null' => TRUE,
+      'default' => '',
+    ),
+    'dst' => array(
+      'type' => 'varchar',
+      'length' => 128,
+      'not null' => TRUE,
+      'default' => '',
+    ),
+    'language' => array(
+      'type' => 'varchar',
+      'length' => 12,
+      'not null' => TRUE,
+      'default' => '',
+    ),
+  ),
+  'unique keys' => array(
+    'dst_language_pid' => array(
+      'dst',
+      'language',
+      'pid',
+    ),
+  ),
+  'primary key' => array(
+    'pid',
+  ),
+  'indexes' => array(
+    'src_language_pid' => array(
+      'src',
+      'language',
+      'pid',
+    ),
+  ),
+  'module' => 'system',
+  'name' => 'url_alias',
+));
+
+db_create_table('users', array(
+  'fields' => array(
+    'uid' => array(
+      'type' => 'serial',
+      'unsigned' => TRUE,
+      'not null' => TRUE,
+    ),
+    'name' => array(
+      'type' => 'varchar',
+      'length' => 60,
+      'not null' => TRUE,
+      'default' => '',
+    ),
+    'pass' => array(
+      'type' => 'varchar',
+      'length' => 32,
+      'not null' => TRUE,
+      'default' => '',
+    ),
+    'mail' => array(
+      'type' => 'varchar',
+      'length' => 64,
+      'not null' => FALSE,
+      'default' => '',
+    ),
+    'mode' => array(
+      'type' => 'int',
+      'not null' => TRUE,
+      'default' => 0,
+      'size' => 'tiny',
+    ),
+    'sort' => array(
+      'type' => 'int',
+      'not null' => FALSE,
+      'default' => 0,
+      'size' => 'tiny',
+    ),
+    'threshold' => array(
+      'type' => 'int',
+      'not null' => FALSE,
+      'default' => 0,
+      'size' => 'tiny',
+    ),
+    'theme' => array(
+      'type' => 'varchar',
+      'length' => 255,
+      'not null' => TRUE,
+      'default' => '',
+    ),
+    'signature' => array(
+      'type' => 'varchar',
+      'length' => 255,
+      'not null' => TRUE,
+      'default' => '',
+    ),
+    'signature_format' => array(
+      'type' => 'int',
+      'size' => 'small',
+      'not null' => TRUE,
+      'default' => 0,
+    ),
+    'created' => array(
+      'type' => 'int',
+      'not null' => TRUE,
+      'default' => 0,
+    ),
+    'access' => array(
+      'type' => 'int',
+      'not null' => TRUE,
+      'default' => 0,
+    ),
+    'login' => array(
+      'type' => 'int',
+      'not null' => TRUE,
+      'default' => 0,
+    ),
+    'status' => array(
+      'type' => 'int',
+      'not null' => TRUE,
+      'default' => 0,
+      'size' => 'tiny',
+    ),
+    'timezone' => array(
+      'type' => 'varchar',
+      'length' => 8,
+      'not null' => FALSE,
+    ),
+    'language' => array(
+      'type' => 'varchar',
+      'length' => 12,
+      'not null' => TRUE,
+      'default' => '',
+    ),
+    'picture' => array(
+      'type' => 'varchar',
+      'length' => 255,
+      'not null' => TRUE,
+      'default' => '',
+    ),
+    'init' => array(
+      'type' => 'varchar',
+      'length' => 64,
+      'not null' => FALSE,
+      'default' => '',
+    ),
+    'data' => array(
+      'type' => 'text',
+      'not null' => FALSE,
+      'size' => 'big',
+    ),
+  ),
+  'indexes' => array(
+    'access' => array(
+      'access',
+    ),
+    'created' => array(
+      'created',
+    ),
+    'mail' => array(
+      'mail',
+    ),
+  ),
+  'unique keys' => array(
+    'name' => array(
+      'name',
+    ),
+  ),
+  'primary key' => array(
+    'uid',
+  ),
+  'module' => 'user',
+  'name' => 'users',
+));
+db_insert('users')->fields(array(
+  'uid',
+  'name',
+  'pass',
+  'mail',
+  'mode',
+  'sort',
+  'threshold',
+  'theme',
+  'signature',
+  'signature_format',
+  'created',
+  'access',
+  'login',
+  'status',
+  'timezone',
+  'language',
+  'picture',
+  'init',
+  'data',
+))
+->values(array(
+  'uid' => 1,
+  'name' => '',
+  'pass' => '',
+  'mail' => '',
+  'mode' => '0',
+  'sort' => '0',
+  'threshold' => '0',
+  'theme' => '',
+  'signature' => '',
+  'signature_format' => '0',
+  'created' => '0',
+  'access' => '0',
+  'login' => '0',
+  'status' => '0',
+  'timezone' => '-21600',
+  'language' => '',
+  'picture' => '',
+  'init' => '',
+  'data' => NULL,
+))
+->values(array(
+  'uid' => 2,
+  'name' => 'admin',
+  'pass' => '21232f297a57a5a743894a0e4a801fc3',
+  'mail' => 'admin@example.com',
+  'mode' => '0',
+  'sort' => '0',
+  'threshold' => '0',
+  'theme' => '',
+  'signature' => '',
+  'signature_format' => '0',
+  'created' => '1277671599',
+  'access' => '1277671612',
+  'login' => '1277671612',
+  'status' => '1',
+  'timezone' => '-21600',
+  'language' => '',
+  'picture' => '',
+  'init' => 'admin@example.com',
+  'data' => 'a:0:{}',
+))
+->execute();
+db_query('UPDATE {users} SET uid = uid - 1');
+
+db_create_table('users_roles', array(
+  'fields' => array(
+    'uid' => array(
+      'type' => 'int',
+      'unsigned' => TRUE,
+      'not null' => TRUE,
+      'default' => 0,
+    ),
+    'rid' => array(
+      'type' => 'int',
+      'unsigned' => TRUE,
+      'not null' => TRUE,
+      'default' => 0,
+    ),
+  ),
+  'primary key' => array(
+    'uid',
+    'rid',
+  ),
+  'indexes' => array(
+    'rid' => array(
+      'rid',
+    ),
+  ),
+  'module' => 'user',
+  'name' => 'users_roles',
+));
+
+db_create_table('variable', array(
+  'fields' => array(
+    'name' => array(
+      'type' => 'varchar',
+      'length' => 128,
+      'not null' => TRUE,
+      'default' => '',
+    ),
+    'value' => array(
+      'type' => 'text',
+      'not null' => TRUE,
+      'size' => 'big',
+    ),
+  ),
+  'primary key' => array(
+    'name',
+  ),
+  'module' => 'system',
+  'name' => 'variable',
+));
+db_insert('variable')->fields(array(
+  'name',
+  'value',
+))
+->values(array(
+  'name' => 'clean_url',
+  'value' => 's:1:"1";',
+))
+->values(array(
+  'name' => 'comment_page',
+  'value' => 's:21:"COMMENT_NODE_DISABLED";',
+))
+->values(array(
+  'name' => 'css_js_query_string',
+  'value' => 's:20:"D0000000000000000000";',
+))
+->values(array(
+  'name' => 'date_default_timezone',
+  'value' => 's:1:"0";',
+))
+->values(array(
+  'name' => 'drupal_private_key',
+  'value' => 's:64:"3848c2187413fa0ce132f8e222fdb6893b386ed133e8cf602bd3e40dc9dc12db";',
+))
+->values(array(
+  'name' => 'filter_html_1',
+  'value' => 'i:1;',
+))
+->values(array(
+  'name' => 'install_profile',
+  'value' => 's:7:"default";',
+))
+->values(array(
+  'name' => 'install_task',
+  'value' => 's:4:"done";',
+))
+->values(array(
+  'name' => 'install_time',
+  'value' => 'i:1277671612;',
+))
+->values(array(
+  'name' => 'menu_expanded',
+  'value' => 'a:0:{}',
+))
+->values(array(
+  'name' => 'menu_masks',
+  'value' => 'a:13:{i:0;i:31;i:1;i:30;i:2;i:29;i:3;i:24;i:4;i:21;i:5;i:15;i:6;i:14;i:7;i:11;i:8;i:7;i:9;i:5;i:10;i:3;i:11;i:2;i:12;i:1;}',
+))
+->values(array(
+  'name' => 'node_options_forum',
+  'value' => 'a:1:{i:0;s:6:"status";}',
+))
+->values(array(
+  'name' => 'node_options_page',
+  'value' => 'a:1:{i:0;s:6:"status";}',
+))
+->values(array(
+  'name' => 'site_mail',
+  'value' => 's:17:"admin@example.com";',
+))
+->values(array(
+  'name' => 'site_name',
+  'value' => 's:8:"Drupal 6";',
+))
+->values(array(
+  'name' => 'theme_default',
+  'value' => 's:7:"garland";',
+))
+->values(array(
+  'name' => 'theme_settings',
+  'value' => 'a:1:{s:21:"toggle_node_info_page";b:0;}',
+))
+->values(array(
+  'name' => 'user_email_verification',
+  'value' => 'b:1;',
+))
+->execute();
+
+db_create_table('watchdog', array(
+  'fields' => array(
+    'wid' => array(
+      'type' => 'serial',
+      'not null' => TRUE,
+    ),
+    'uid' => array(
+      'type' => 'int',
+      'not null' => TRUE,
+      'default' => 0,
+    ),
+    'type' => array(
+      'type' => 'varchar',
+      'length' => 16,
+      'not null' => TRUE,
+      'default' => '',
+    ),
+    'message' => array(
+      'type' => 'text',
+      'not null' => TRUE,
+      'size' => 'big',
+    ),
+    'variables' => array(
+      'type' => 'text',
+      'not null' => TRUE,
+      'size' => 'big',
+    ),
+    'severity' => array(
+      'type' => 'int',
+      'unsigned' => TRUE,
+      'not null' => TRUE,
+      'default' => 0,
+      'size' => 'tiny',
+    ),
+    'link' => array(
+      'type' => 'varchar',
+      'length' => 255,
+      'not null' => TRUE,
+      'default' => '',
+    ),
+    'location' => array(
+      'type' => 'text',
+      'not null' => TRUE,
+    ),
+    'referer' => array(
+      'type' => 'text',
+      'not null' => FALSE,
+    ),
+    'hostname' => array(
+      'type' => 'varchar',
+      'length' => 128,
+      'not null' => TRUE,
+      'default' => '',
+    ),
+    'timestamp' => array(
+      'type' => 'int',
+      'not null' => TRUE,
+      'default' => 0,
+    ),
+  ),
+  'primary key' => array(
+    'wid',
+  ),
+  'indexes' => array(
+    'type' => array(
+      'type',
+    ),
+  ),
+  'module' => 'dblog',
+  'name' => 'watchdog',
+));
+
diff --git a/modules/simpletest/tests/upgrade/drupal-6.comments.database.php b/modules/simpletest/tests/upgrade/drupal-6.comments.database.php
new file mode 100644
index 0000000..7da2504
--- /dev/null
+++ b/modules/simpletest/tests/upgrade/drupal-6.comments.database.php
@@ -0,0 +1,40 @@
+<?php
+db_update('node')->fields(array(
+    'comment' => 2
+  ))
+  ->condition('nid', 1)
+  ->execute();
+
+db_insert('comments')->fields(array(
+  'cid',
+  'pid',
+  'nid',
+  'uid',
+  'subject',
+  'comment',
+  'hostname',
+  'timestamp',
+  'status',
+  'format',
+  'thread',
+  'name',
+  'mail',
+  'homepage',
+))
+->values(array(
+  'cid' => 1,
+  'pid' => 0,
+  'nid' => 1,
+  'uid' => 3,
+  'subject' => 'Comment title 1',
+  'comment' => 'Comment body 1 - Comment body 1 - Comment body 1 - Comment body 1 - Comment body 1 - Comment body 1 - Comment body 1 - Comment body 1',
+  'hostname' => '127.0.0.1',
+  'timestamp' => 1008617630,
+  'status' => 0,
+  'format' => 1,
+  'thread' => '01/',
+  'name' => NULL,
+  'mail' => NULL,
+  'homepage' => '',
+))
+->execute();
diff --git a/modules/simpletest/tests/upgrade/drupal-6.filled.database.php b/modules/simpletest/tests/upgrade/drupal-6.filled.database.php
new file mode 100644
index 0000000..a916281
--- /dev/null
+++ b/modules/simpletest/tests/upgrade/drupal-6.filled.database.php
@@ -0,0 +1,20384 @@
+<?php
+
+/**
+ * @file
+ * Filled installation of Drupal 6.17, for test purposes.
+ *
+ * This file was generated by the dump-database-d6.sh tool, from an
+ * installation of Drupal 6, filled with data using the generate-d6-content.sh
+ * tool. It has the following modules installed:
+ *  - block
+ *  - color
+ *  - comment
+ *  - dblog
+ *  - filter
+ *  - help
+ *  - menu
+ *  - node
+ *  - path
+ *  - poll
+ *  - system
+ *  - taxonomy
+ *  - update
+ *  - user
+ */
+
+db_create_table('access', array(
+  'fields' => array(
+    'aid' => array(
+      'type' => 'serial',
+      'not null' => TRUE,
+    ),
+    'mask' => array(
+      'type' => 'varchar',
+      'length' => 255,
+      'not null' => TRUE,
+      'default' => '',
+    ),
+    'type' => array(
+      'type' => 'varchar',
+      'length' => 255,
+      'not null' => TRUE,
+      'default' => '',
+    ),
+    'status' => array(
+      'type' => 'int',
+      'not null' => TRUE,
+      'default' => 0,
+      'size' => 'tiny',
+    ),
+  ),
+  'primary key' => array(
+    'aid',
+  ),
+  'module' => 'user',
+  'name' => 'access',
+));
+
+db_create_table('actions', array(
+  'fields' => array(
+    'aid' => array(
+      'type' => 'varchar',
+      'length' => 255,
+      'not null' => TRUE,
+      'default' => '0',
+    ),
+    'type' => array(
+      'type' => 'varchar',
+      'length' => 32,
+      'not null' => TRUE,
+      'default' => '',
+    ),
+    'callback' => array(
+      'type' => 'varchar',
+      'length' => 255,
+      'not null' => TRUE,
+      'default' => '',
+    ),
+    'parameters' => array(
+      'type' => 'text',
+      'not null' => TRUE,
+      'size' => 'big',
+    ),
+    'description' => array(
+      'type' => 'varchar',
+      'length' => 255,
+      'not null' => TRUE,
+      'default' => '0',
+    ),
+  ),
+  'primary key' => array(
+    'aid',
+  ),
+  'module' => 'system',
+  'name' => 'actions',
+));
+db_insert('actions')->fields(array(
+  'aid',
+  'type',
+  'callback',
+  'parameters',
+  'description',
+))
+->values(array(
+  'aid' => 'comment_publish_action',
+  'type' => 'comment',
+  'callback' => 'comment_publish_action',
+  'parameters' => '',
+  'description' => 'Publish comment',
+))
+->values(array(
+  'aid' => 'comment_unpublish_action',
+  'type' => 'comment',
+  'callback' => 'comment_unpublish_action',
+  'parameters' => '',
+  'description' => 'Unpublish comment',
+))
+->values(array(
+  'aid' => 'node_make_sticky_action',
+  'type' => 'node',
+  'callback' => 'node_make_sticky_action',
+  'parameters' => '',
+  'description' => 'Make post sticky',
+))
+->values(array(
+  'aid' => 'node_make_unsticky_action',
+  'type' => 'node',
+  'callback' => 'node_make_unsticky_action',
+  'parameters' => '',
+  'description' => 'Make post unsticky',
+))
+->values(array(
+  'aid' => 'node_promote_action',
+  'type' => 'node',
+  'callback' => 'node_promote_action',
+  'parameters' => '',
+  'description' => 'Promote post to front page',
+))
+->values(array(
+  'aid' => 'node_publish_action',
+  'type' => 'node',
+  'callback' => 'node_publish_action',
+  'parameters' => '',
+  'description' => 'Publish post',
+))
+->values(array(
+  'aid' => 'node_save_action',
+  'type' => 'node',
+  'callback' => 'node_save_action',
+  'parameters' => '',
+  'description' => 'Save post',
+))
+->values(array(
+  'aid' => 'node_unpromote_action',
+  'type' => 'node',
+  'callback' => 'node_unpromote_action',
+  'parameters' => '',
+  'description' => 'Remove post from front page',
+))
+->values(array(
+  'aid' => 'node_unpublish_action',
+  'type' => 'node',
+  'callback' => 'node_unpublish_action',
+  'parameters' => '',
+  'description' => 'Unpublish post',
+))
+->values(array(
+  'aid' => 'user_block_ip_action',
+  'type' => 'user',
+  'callback' => 'user_block_ip_action',
+  'parameters' => '',
+  'description' => 'Ban IP address of current user',
+))
+->values(array(
+  'aid' => 'user_block_user_action',
+  'type' => 'user',
+  'callback' => 'user_block_user_action',
+  'parameters' => '',
+  'description' => 'Block current user',
+))
+->execute();
+
+db_create_table('actions_aid', array(
+  'fields' => array(
+    'aid' => array(
+      'type' => 'serial',
+      'unsigned' => TRUE,
+      'not null' => TRUE,
+    ),
+  ),
+  'primary key' => array(
+    'aid',
+  ),
+  'module' => 'system',
+  'name' => 'actions_aid',
+));
+
+db_create_table('authmap', array(
+  'fields' => array(
+    'aid' => array(
+      'type' => 'serial',
+      'unsigned' => TRUE,
+      'not null' => TRUE,
+    ),
+    'uid' => array(
+      'type' => 'int',
+      'not null' => TRUE,
+      'default' => 0,
+    ),
+    'authname' => array(
+      'type' => 'varchar',
+      'length' => 128,
+      'not null' => TRUE,
+      'default' => '',
+    ),
+    'module' => array(
+      'type' => 'varchar',
+      'length' => 128,
+      'not null' => TRUE,
+      'default' => '',
+    ),
+  ),
+  'unique keys' => array(
+    'authname' => array(
+      'authname',
+    ),
+  ),
+  'primary key' => array(
+    'aid',
+  ),
+  'module' => 'user',
+  'name' => 'authmap',
+));
+
+db_create_table('batch', array(
+  'fields' => array(
+    'bid' => array(
+      'type' => 'serial',
+      'unsigned' => TRUE,
+      'not null' => TRUE,
+    ),
+    'token' => array(
+      'type' => 'varchar',
+      'length' => 64,
+      'not null' => TRUE,
+    ),
+    'timestamp' => array(
+      'type' => 'int',
+      'not null' => TRUE,
+    ),
+    'batch' => array(
+      'type' => 'text',
+      'not null' => FALSE,
+      'size' => 'big',
+    ),
+  ),
+  'primary key' => array(
+    'bid',
+  ),
+  'indexes' => array(
+    'token' => array(
+      'token',
+    ),
+  ),
+  'module' => 'system',
+  'name' => 'batch',
+));
+
+db_create_table('blocks', array(
+  'fields' => array(
+    'bid' => array(
+      'type' => 'serial',
+      'not null' => TRUE,
+    ),
+    'module' => array(
+      'type' => 'varchar',
+      'length' => 64,
+      'not null' => TRUE,
+      'default' => '',
+    ),
+    'delta' => array(
+      'type' => 'varchar',
+      'length' => 32,
+      'not null' => TRUE,
+      'default' => '0',
+    ),
+    'theme' => array(
+      'type' => 'varchar',
+      'length' => 64,
+      'not null' => TRUE,
+      'default' => '',
+    ),
+    'status' => array(
+      'type' => 'int',
+      'not null' => TRUE,
+      'default' => 0,
+      'size' => 'tiny',
+    ),
+    'weight' => array(
+      'type' => 'int',
+      'not null' => TRUE,
+      'default' => 0,
+      'size' => 'tiny',
+    ),
+    'region' => array(
+      'type' => 'varchar',
+      'length' => 64,
+      'not null' => TRUE,
+      'default' => '',
+    ),
+    'custom' => array(
+      'type' => 'int',
+      'not null' => TRUE,
+      'default' => 0,
+      'size' => 'tiny',
+    ),
+    'throttle' => array(
+      'type' => 'int',
+      'not null' => TRUE,
+      'default' => 0,
+      'size' => 'tiny',
+    ),
+    'visibility' => array(
+      'type' => 'int',
+      'not null' => TRUE,
+      'default' => 0,
+      'size' => 'tiny',
+    ),
+    'pages' => array(
+      'type' => 'text',
+      'not null' => TRUE,
+    ),
+    'title' => array(
+      'type' => 'varchar',
+      'length' => 64,
+      'not null' => TRUE,
+      'default' => '',
+    ),
+    'cache' => array(
+      'type' => 'int',
+      'not null' => TRUE,
+      'default' => 1,
+      'size' => 'tiny',
+    ),
+  ),
+  'primary key' => array(
+    'bid',
+  ),
+  'unique keys' => array(
+    'tmd' => array(
+      'theme',
+      'module',
+      'delta',
+    ),
+  ),
+  'indexes' => array(
+    'list' => array(
+      'theme',
+      'status',
+      'region',
+      'weight',
+      'module',
+    ),
+  ),
+  'module' => 'block',
+  'name' => 'blocks',
+));
+db_insert('blocks')->fields(array(
+  'bid',
+  'module',
+  'delta',
+  'theme',
+  'status',
+  'weight',
+  'region',
+  'custom',
+  'throttle',
+  'visibility',
+  'pages',
+  'title',
+  'cache',
+))
+->values(array(
+  'bid' => '1',
+  'module' => 'user',
+  'delta' => '0',
+  'theme' => 'garland',
+  'status' => '1',
+  'weight' => '0',
+  'region' => 'left',
+  'custom' => '0',
+  'throttle' => '0',
+  'visibility' => '0',
+  'pages' => '',
+  'title' => '',
+  'cache' => '-1',
+))
+->values(array(
+  'bid' => '2',
+  'module' => 'user',
+  'delta' => '1',
+  'theme' => 'garland',
+  'status' => '1',
+  'weight' => '0',
+  'region' => 'left',
+  'custom' => '0',
+  'throttle' => '0',
+  'visibility' => '0',
+  'pages' => '',
+  'title' => '',
+  'cache' => '-1',
+))
+->values(array(
+  'bid' => '3',
+  'module' => 'system',
+  'delta' => '0',
+  'theme' => 'garland',
+  'status' => '1',
+  'weight' => '10',
+  'region' => 'footer',
+  'custom' => '0',
+  'throttle' => '0',
+  'visibility' => '0',
+  'pages' => '',
+  'title' => '',
+  'cache' => '-1',
+))
+->execute();
+
+db_create_table('blocks_roles', array(
+  'fields' => array(
+    'module' => array(
+      'type' => 'varchar',
+      'length' => 64,
+      'not null' => TRUE,
+    ),
+    'delta' => array(
+      'type' => 'varchar',
+      'length' => 32,
+      'not null' => TRUE,
+    ),
+    'rid' => array(
+      'type' => 'int',
+      'unsigned' => TRUE,
+      'not null' => TRUE,
+    ),
+  ),
+  'primary key' => array(
+    'module',
+    'delta',
+    'rid',
+  ),
+  'indexes' => array(
+    'rid' => array(
+      'rid',
+    ),
+  ),
+  'module' => 'block',
+  'name' => 'blocks_roles',
+));
+
+db_create_table('boxes', array(
+  'fields' => array(
+    'bid' => array(
+      'type' => 'serial',
+      'unsigned' => TRUE,
+      'not null' => TRUE,
+    ),
+    'body' => array(
+      'type' => 'text',
+      'not null' => FALSE,
+      'size' => 'big',
+    ),
+    'info' => array(
+      'type' => 'varchar',
+      'length' => 128,
+      'not null' => TRUE,
+      'default' => '',
+    ),
+    'format' => array(
+      'type' => 'int',
+      'size' => 'small',
+      'not null' => TRUE,
+      'default' => 0,
+    ),
+  ),
+  'unique keys' => array(
+    'info' => array(
+      'info',
+    ),
+  ),
+  'primary key' => array(
+    'bid',
+  ),
+  'module' => 'block',
+  'name' => 'boxes',
+));
+
+db_create_table('cache', array(
+  'fields' => array(
+    'cid' => array(
+      'type' => 'varchar',
+      'length' => 255,
+      'not null' => TRUE,
+      'default' => '',
+    ),
+    'data' => array(
+      'type' => 'blob',
+      'not null' => FALSE,
+      'size' => 'big',
+    ),
+    'expire' => array(
+      'type' => 'int',
+      'not null' => TRUE,
+      'default' => 0,
+    ),
+    'created' => array(
+      'type' => 'int',
+      'not null' => TRUE,
+      'default' => 0,
+    ),
+    'headers' => array(
+      'type' => 'text',
+      'not null' => FALSE,
+    ),
+    'serialized' => array(
+      'type' => 'int',
+      'size' => 'small',
+      'not null' => TRUE,
+      'default' => 0,
+    ),
+  ),
+  'indexes' => array(
+    'expire' => array(
+      'expire',
+    ),
+  ),
+  'primary key' => array(
+    'cid',
+  ),
+  'module' => 'system',
+  'name' => 'cache',
+));
+
+db_create_table('cache_block', array(
+  'fields' => array(
+    'cid' => array(
+      'type' => 'varchar',
+      'length' => 255,
+      'not null' => TRUE,
+      'default' => '',
+    ),
+    'data' => array(
+      'type' => 'blob',
+      'not null' => FALSE,
+      'size' => 'big',
+    ),
+    'expire' => array(
+      'type' => 'int',
+      'not null' => TRUE,
+      'default' => 0,
+    ),
+    'created' => array(
+      'type' => 'int',
+      'not null' => TRUE,
+      'default' => 0,
+    ),
+    'headers' => array(
+      'type' => 'text',
+      'not null' => FALSE,
+    ),
+    'serialized' => array(
+      'type' => 'int',
+      'size' => 'small',
+      'not null' => TRUE,
+      'default' => 0,
+    ),
+  ),
+  'indexes' => array(
+    'expire' => array(
+      'expire',
+    ),
+  ),
+  'primary key' => array(
+    'cid',
+  ),
+  'module' => 'block',
+  'name' => 'cache_block',
+));
+
+db_create_table('cache_filter', array(
+  'fields' => array(
+    'cid' => array(
+      'type' => 'varchar',
+      'length' => 255,
+      'not null' => TRUE,
+      'default' => '',
+    ),
+    'data' => array(
+      'type' => 'blob',
+      'not null' => FALSE,
+      'size' => 'big',
+    ),
+    'expire' => array(
+      'type' => 'int',
+      'not null' => TRUE,
+      'default' => 0,
+    ),
+    'created' => array(
+      'type' => 'int',
+      'not null' => TRUE,
+      'default' => 0,
+    ),
+    'headers' => array(
+      'type' => 'text',
+      'not null' => FALSE,
+    ),
+    'serialized' => array(
+      'type' => 'int',
+      'size' => 'small',
+      'not null' => TRUE,
+      'default' => 0,
+    ),
+  ),
+  'indexes' => array(
+    'expire' => array(
+      'expire',
+    ),
+  ),
+  'primary key' => array(
+    'cid',
+  ),
+  'module' => 'filter',
+  'name' => 'cache_filter',
+));
+
+db_create_table('cache_form', array(
+  'fields' => array(
+    'cid' => array(
+      'type' => 'varchar',
+      'length' => 255,
+      'not null' => TRUE,
+      'default' => '',
+    ),
+    'data' => array(
+      'type' => 'blob',
+      'not null' => FALSE,
+      'size' => 'big',
+    ),
+    'expire' => array(
+      'type' => 'int',
+      'not null' => TRUE,
+      'default' => 0,
+    ),
+    'created' => array(
+      'type' => 'int',
+      'not null' => TRUE,
+      'default' => 0,
+    ),
+    'headers' => array(
+      'type' => 'text',
+      'not null' => FALSE,
+    ),
+    'serialized' => array(
+      'type' => 'int',
+      'size' => 'small',
+      'not null' => TRUE,
+      'default' => 0,
+    ),
+  ),
+  'indexes' => array(
+    'expire' => array(
+      'expire',
+    ),
+  ),
+  'primary key' => array(
+    'cid',
+  ),
+  'module' => 'system',
+  'name' => 'cache_form',
+));
+
+db_create_table('cache_menu', array(
+  'fields' => array(
+    'cid' => array(
+      'type' => 'varchar',
+      'length' => 255,
+      'not null' => TRUE,
+      'default' => '',
+    ),
+    'data' => array(
+      'type' => 'blob',
+      'not null' => FALSE,
+      'size' => 'big',
+    ),
+    'expire' => array(
+      'type' => 'int',
+      'not null' => TRUE,
+      'default' => 0,
+    ),
+    'created' => array(
+      'type' => 'int',
+      'not null' => TRUE,
+      'default' => 0,
+    ),
+    'headers' => array(
+      'type' => 'text',
+      'not null' => FALSE,
+    ),
+    'serialized' => array(
+      'type' => 'int',
+      'size' => 'small',
+      'not null' => TRUE,
+      'default' => 0,
+    ),
+  ),
+  'indexes' => array(
+    'expire' => array(
+      'expire',
+    ),
+  ),
+  'primary key' => array(
+    'cid',
+  ),
+  'module' => 'system',
+  'name' => 'cache_menu',
+));
+
+db_create_table('cache_page', array(
+  'fields' => array(
+    'cid' => array(
+      'type' => 'varchar',
+      'length' => 255,
+      'not null' => TRUE,
+      'default' => '',
+    ),
+    'data' => array(
+      'type' => 'blob',
+      'not null' => FALSE,
+      'size' => 'big',
+    ),
+    'expire' => array(
+      'type' => 'int',
+      'not null' => TRUE,
+      'default' => 0,
+    ),
+    'created' => array(
+      'type' => 'int',
+      'not null' => TRUE,
+      'default' => 0,
+    ),
+    'headers' => array(
+      'type' => 'text',
+      'not null' => FALSE,
+    ),
+    'serialized' => array(
+      'type' => 'int',
+      'size' => 'small',
+      'not null' => TRUE,
+      'default' => 0,
+    ),
+  ),
+  'indexes' => array(
+    'expire' => array(
+      'expire',
+    ),
+  ),
+  'primary key' => array(
+    'cid',
+  ),
+  'module' => 'system',
+  'name' => 'cache_page',
+));
+
+db_create_table('cache_update', array(
+  'fields' => array(
+    'cid' => array(
+      'type' => 'varchar',
+      'length' => 255,
+      'not null' => TRUE,
+      'default' => '',
+    ),
+    'data' => array(
+      'type' => 'blob',
+      'not null' => FALSE,
+      'size' => 'big',
+    ),
+    'expire' => array(
+      'type' => 'int',
+      'not null' => TRUE,
+      'default' => 0,
+    ),
+    'created' => array(
+      'type' => 'int',
+      'not null' => TRUE,
+      'default' => 0,
+    ),
+    'headers' => array(
+      'type' => 'text',
+      'not null' => FALSE,
+    ),
+    'serialized' => array(
+      'type' => 'int',
+      'size' => 'small',
+      'not null' => TRUE,
+      'default' => 0,
+    ),
+  ),
+  'indexes' => array(
+    'expire' => array(
+      'expire',
+    ),
+  ),
+  'primary key' => array(
+    'cid',
+  ),
+  'module' => 'update',
+  'name' => 'cache_update',
+));
+
+db_create_table('comments', array(
+  'fields' => array(
+    'cid' => array(
+      'type' => 'serial',
+      'not null' => TRUE,
+    ),
+    'pid' => array(
+      'type' => 'int',
+      'not null' => TRUE,
+      'default' => 0,
+    ),
+    'nid' => array(
+      'type' => 'int',
+      'not null' => TRUE,
+      'default' => 0,
+    ),
+    'uid' => array(
+      'type' => 'int',
+      'not null' => TRUE,
+      'default' => 0,
+    ),
+    'subject' => array(
+      'type' => 'varchar',
+      'length' => 64,
+      'not null' => TRUE,
+      'default' => '',
+    ),
+    'comment' => array(
+      'type' => 'text',
+      'not null' => TRUE,
+      'size' => 'big',
+    ),
+    'hostname' => array(
+      'type' => 'varchar',
+      'length' => 128,
+      'not null' => TRUE,
+      'default' => '',
+    ),
+    'timestamp' => array(
+      'type' => 'int',
+      'not null' => TRUE,
+      'default' => 0,
+    ),
+    'status' => array(
+      'type' => 'int',
+      'unsigned' => TRUE,
+      'not null' => TRUE,
+      'default' => 0,
+      'size' => 'tiny',
+    ),
+    'format' => array(
+      'type' => 'int',
+      'size' => 'small',
+      'not null' => TRUE,
+      'default' => 0,
+    ),
+    'thread' => array(
+      'type' => 'varchar',
+      'length' => 255,
+      'not null' => TRUE,
+    ),
+    'name' => array(
+      'type' => 'varchar',
+      'length' => 60,
+      'not null' => FALSE,
+    ),
+    'mail' => array(
+      'type' => 'varchar',
+      'length' => 64,
+      'not null' => FALSE,
+    ),
+    'homepage' => array(
+      'type' => 'varchar',
+      'length' => 255,
+      'not null' => FALSE,
+    ),
+  ),
+  'indexes' => array(
+    'pid' => array(
+      'pid',
+    ),
+    'nid' => array(
+      'nid',
+    ),
+    'status' => array(
+      'status',
+    ),
+  ),
+  'primary key' => array(
+    'cid',
+  ),
+  'module' => 'comment',
+  'name' => 'comments',
+));
+
+db_create_table('files', array(
+  'fields' => array(
+    'fid' => array(
+      'type' => 'serial',
+      'unsigned' => TRUE,
+      'not null' => TRUE,
+    ),
+    'uid' => array(
+      'type' => 'int',
+      'unsigned' => TRUE,
+      'not null' => TRUE,
+      'default' => 0,
+    ),
+    'filename' => array(
+      'type' => 'varchar',
+      'length' => 255,
+      'not null' => TRUE,
+      'default' => '',
+    ),
+    'filepath' => array(
+      'type' => 'varchar',
+      'length' => 255,
+      'not null' => TRUE,
+      'default' => '',
+    ),
+    'filemime' => array(
+      'type' => 'varchar',
+      'length' => 255,
+      'not null' => TRUE,
+      'default' => '',
+    ),
+    'filesize' => array(
+      'type' => 'int',
+      'unsigned' => TRUE,
+      'not null' => TRUE,
+      'default' => 0,
+    ),
+    'status' => array(
+      'type' => 'int',
+      'not null' => TRUE,
+      'default' => 0,
+    ),
+    'timestamp' => array(
+      'type' => 'int',
+      'unsigned' => TRUE,
+      'not null' => TRUE,
+      'default' => 0,
+    ),
+  ),
+  'indexes' => array(
+    'uid' => array(
+      'uid',
+    ),
+    'status' => array(
+      'status',
+    ),
+    'timestamp' => array(
+      'timestamp',
+    ),
+  ),
+  'primary key' => array(
+    'fid',
+  ),
+  'module' => 'system',
+  'name' => 'files',
+));
+
+db_create_table('filter_formats', array(
+  'fields' => array(
+    'format' => array(
+      'type' => 'serial',
+      'not null' => TRUE,
+    ),
+    'name' => array(
+      'type' => 'varchar',
+      'length' => 255,
+      'not null' => TRUE,
+      'default' => '',
+    ),
+    'roles' => array(
+      'type' => 'varchar',
+      'length' => 255,
+      'not null' => TRUE,
+      'default' => '',
+    ),
+    'cache' => array(
+      'type' => 'int',
+      'not null' => TRUE,
+      'default' => 0,
+      'size' => 'tiny',
+    ),
+  ),
+  'primary key' => array(
+    'format',
+  ),
+  'unique keys' => array(
+    'name' => array(
+      'name',
+    ),
+  ),
+  'module' => 'filter',
+  'name' => 'filter_formats',
+));
+db_insert('filter_formats')->fields(array(
+  'format',
+  'name',
+  'roles',
+  'cache',
+))
+->values(array(
+  'format' => '1',
+  'name' => 'Filtered HTML',
+  'roles' => ',1,2,',
+  'cache' => '1',
+))
+->values(array(
+  'format' => '2',
+  'name' => 'Full HTML',
+  'roles' => '',
+  'cache' => '1',
+))
+->values(array(
+  'format' => '3',
+  'name' => 'Escape HTML Filter',
+  'roles' => '',
+  'cache' => '1',
+))
+->execute();
+
+db_create_table('filters', array(
+  'fields' => array(
+    'fid' => array(
+      'type' => 'serial',
+      'not null' => TRUE,
+    ),
+    'format' => array(
+      'type' => 'int',
+      'not null' => TRUE,
+      'default' => 0,
+    ),
+    'module' => array(
+      'type' => 'varchar',
+      'length' => 64,
+      'not null' => TRUE,
+      'default' => '',
+    ),
+    'delta' => array(
+      'type' => 'int',
+      'not null' => TRUE,
+      'default' => 0,
+      'size' => 'tiny',
+    ),
+    'weight' => array(
+      'type' => 'int',
+      'not null' => TRUE,
+      'default' => 0,
+      'size' => 'tiny',
+    ),
+  ),
+  'primary key' => array(
+    'fid',
+  ),
+  'unique keys' => array(
+    'fmd' => array(
+      'format',
+      'module',
+      'delta',
+    ),
+  ),
+  'indexes' => array(
+    'list' => array(
+      'format',
+      'weight',
+      'module',
+      'delta',
+    ),
+  ),
+  'module' => 'filter',
+  'name' => 'filters',
+));
+db_insert('filters')->fields(array(
+  'fid',
+  'format',
+  'module',
+  'delta',
+  'weight',
+))
+->values(array(
+  'fid' => '1',
+  'format' => '1',
+  'module' => 'filter',
+  'delta' => '2',
+  'weight' => '0',
+))
+->values(array(
+  'fid' => '2',
+  'format' => '1',
+  'module' => 'filter',
+  'delta' => '0',
+  'weight' => '1',
+))
+->values(array(
+  'fid' => '3',
+  'format' => '1',
+  'module' => 'filter',
+  'delta' => '1',
+  'weight' => '2',
+))
+->values(array(
+  'fid' => '4',
+  'format' => '1',
+  'module' => 'filter',
+  'delta' => '3',
+  'weight' => '10',
+))
+->values(array(
+  'fid' => '5',
+  'format' => '2',
+  'module' => 'filter',
+  'delta' => '2',
+  'weight' => '0',
+))
+->values(array(
+  'fid' => '6',
+  'format' => '2',
+  'module' => 'filter',
+  'delta' => '1',
+  'weight' => '1',
+))
+->values(array(
+  'fid' => '7',
+  'format' => '2',
+  'module' => 'filter',
+  'delta' => '3',
+  'weight' => '10',
+))
+->execute();
+
+db_create_table('flood', array(
+  'fields' => array(
+    'fid' => array(
+      'type' => 'serial',
+      'not null' => TRUE,
+    ),
+    'event' => array(
+      'type' => 'varchar',
+      'length' => 64,
+      'not null' => TRUE,
+      'default' => '',
+    ),
+    'hostname' => array(
+      'type' => 'varchar',
+      'length' => 128,
+      'not null' => TRUE,
+      'default' => '',
+    ),
+    'timestamp' => array(
+      'type' => 'int',
+      'not null' => TRUE,
+      'default' => 0,
+    ),
+  ),
+  'primary key' => array(
+    'fid',
+  ),
+  'indexes' => array(
+    'allow' => array(
+      'event',
+      'hostname',
+      'timestamp',
+    ),
+  ),
+  'module' => 'system',
+  'name' => 'flood',
+));
+
+db_create_table('history', array(
+  'fields' => array(
+    'uid' => array(
+      'type' => 'int',
+      'not null' => TRUE,
+      'default' => 0,
+    ),
+    'nid' => array(
+      'type' => 'int',
+      'not null' => TRUE,
+      'default' => 0,
+    ),
+    'timestamp' => array(
+      'type' => 'int',
+      'not null' => TRUE,
+      'default' => 0,
+    ),
+  ),
+  'primary key' => array(
+    'uid',
+    'nid',
+  ),
+  'indexes' => array(
+    'nid' => array(
+      'nid',
+    ),
+  ),
+  'module' => 'system',
+  'name' => 'history',
+));
+
+db_create_table('menu_custom', array(
+  'fields' => array(
+    'menu_name' => array(
+      'type' => 'varchar',
+      'length' => 32,
+      'not null' => TRUE,
+      'default' => '',
+    ),
+    'title' => array(
+      'type' => 'varchar',
+      'length' => 255,
+      'not null' => TRUE,
+      'default' => '',
+    ),
+    'description' => array(
+      'type' => 'text',
+      'not null' => FALSE,
+    ),
+  ),
+  'primary key' => array(
+    'menu_name',
+  ),
+  'module' => 'menu',
+  'name' => 'menu_custom',
+));
+db_insert('menu_custom')->fields(array(
+  'menu_name',
+  'title',
+  'description',
+))
+->values(array(
+  'menu_name' => 'navigation',
+  'title' => 'Navigation',
+  'description' => 'The navigation menu is provided by Drupal and is the main interactive menu for any site. It is usually the only menu that contains personalized links for authenticated users, and is often not even visible to anonymous users.',
+))
+->values(array(
+  'menu_name' => 'primary-links',
+  'title' => 'Primary links',
+  'description' => 'Primary links are often used at the theme layer to show the major sections of a site. A typical representation for primary links would be tabs along the top.',
+))
+->values(array(
+  'menu_name' => 'secondary-links',
+  'title' => 'Secondary links',
+  'description' => 'Secondary links are often used for pages like legal notices, contact details, and other secondary navigation items that play a lesser role than primary links',
+))
+->execute();
+
+db_create_table('menu_links', array(
+  'fields' => array(
+    'menu_name' => array(
+      'type' => 'varchar',
+      'length' => 32,
+      'not null' => TRUE,
+      'default' => '',
+    ),
+    'mlid' => array(
+      'type' => 'serial',
+      'unsigned' => TRUE,
+      'not null' => TRUE,
+    ),
+    'plid' => array(
+      'type' => 'int',
+      'unsigned' => TRUE,
+      'not null' => TRUE,
+      'default' => 0,
+    ),
+    'link_path' => array(
+      'type' => 'varchar',
+      'length' => 255,
+      'not null' => TRUE,
+      'default' => '',
+    ),
+    'router_path' => array(
+      'type' => 'varchar',
+      'length' => 255,
+      'not null' => TRUE,
+      'default' => '',
+    ),
+    'link_title' => array(
+      'type' => 'varchar',
+      'length' => 255,
+      'not null' => TRUE,
+      'default' => '',
+    ),
+    'options' => array(
+      'type' => 'text',
+      'not null' => FALSE,
+    ),
+    'module' => array(
+      'type' => 'varchar',
+      'length' => 255,
+      'not null' => TRUE,
+      'default' => 'system',
+    ),
+    'hidden' => array(
+      'type' => 'int',
+      'not null' => TRUE,
+      'default' => 0,
+      'size' => 'small',
+    ),
+    'external' => array(
+      'type' => 'int',
+      'not null' => TRUE,
+      'default' => 0,
+      'size' => 'small',
+    ),
+    'has_children' => array(
+      'type' => 'int',
+      'not null' => TRUE,
+      'default' => 0,
+      'size' => 'small',
+    ),
+    'expanded' => array(
+      'type' => 'int',
+      'not null' => TRUE,
+      'default' => 0,
+      'size' => 'small',
+    ),
+    'weight' => array(
+      'type' => 'int',
+      'not null' => TRUE,
+      'default' => 0,
+    ),
+    'depth' => array(
+      'type' => 'int',
+      'not null' => TRUE,
+      'default' => 0,
+      'size' => 'small',
+    ),
+    'customized' => array(
+      'type' => 'int',
+      'not null' => TRUE,
+      'default' => 0,
+      'size' => 'small',
+    ),
+    'p1' => array(
+      'type' => 'int',
+      'unsigned' => TRUE,
+      'not null' => TRUE,
+      'default' => 0,
+    ),
+    'p2' => array(
+      'type' => 'int',
+      'unsigned' => TRUE,
+      'not null' => TRUE,
+      'default' => 0,
+    ),
+    'p3' => array(
+      'type' => 'int',
+      'unsigned' => TRUE,
+      'not null' => TRUE,
+      'default' => 0,
+    ),
+    'p4' => array(
+      'type' => 'int',
+      'unsigned' => TRUE,
+      'not null' => TRUE,
+      'default' => 0,
+    ),
+    'p5' => array(
+      'type' => 'int',
+      'unsigned' => TRUE,
+      'not null' => TRUE,
+      'default' => 0,
+    ),
+    'p6' => array(
+      'type' => 'int',
+      'unsigned' => TRUE,
+      'not null' => TRUE,
+      'default' => 0,
+    ),
+    'p7' => array(
+      'type' => 'int',
+      'unsigned' => TRUE,
+      'not null' => TRUE,
+      'default' => 0,
+    ),
+    'p8' => array(
+      'type' => 'int',
+      'unsigned' => TRUE,
+      'not null' => TRUE,
+      'default' => 0,
+    ),
+    'p9' => array(
+      'type' => 'int',
+      'unsigned' => TRUE,
+      'not null' => TRUE,
+      'default' => 0,
+    ),
+    'updated' => array(
+      'type' => 'int',
+      'not null' => TRUE,
+      'default' => 0,
+      'size' => 'small',
+    ),
+  ),
+  'indexes' => array(
+    'path_menu' => array(
+      array(
+        'link_path',
+        128,
+      ),
+      'menu_name',
+    ),
+    'menu_plid_expand_child' => array(
+      'menu_name',
+      'plid',
+      'expanded',
+      'has_children',
+    ),
+    'menu_parents' => array(
+      'menu_name',
+      'p1',
+      'p2',
+      'p3',
+      'p4',
+      'p5',
+      'p6',
+      'p7',
+      'p8',
+      'p9',
+    ),
+    'router_path' => array(
+      array(
+        'router_path',
+        128,
+      ),
+    ),
+  ),
+  'primary key' => array(
+    'mlid',
+  ),
+  'module' => 'system',
+  'name' => 'menu_links',
+));
+db_insert('menu_links')->fields(array(
+  'menu_name',
+  'mlid',
+  'plid',
+  'link_path',
+  'router_path',
+  'link_title',
+  'options',
+  'module',
+  'hidden',
+  'external',
+  'has_children',
+  'expanded',
+  'weight',
+  'depth',
+  'customized',
+  'p1',
+  'p2',
+  'p3',
+  'p4',
+  'p5',
+  'p6',
+  'p7',
+  'p8',
+  'p9',
+  'updated',
+))
+->values(array(
+  'menu_name' => 'navigation',
+  'mlid' => '1',
+  'plid' => '0',
+  'link_path' => 'batch',
+  'router_path' => 'batch',
+  'link_title' => '',
+  'options' => 'a:0:{}',
+  'module' => 'system',
+  'hidden' => '-1',
+  'external' => '0',
+  'has_children' => '0',
+  'expanded' => '0',
+  'weight' => '0',
+  'depth' => '1',
+  'customized' => '0',
+  'p1' => '1',
+  'p2' => '0',
+  'p3' => '0',
+  'p4' => '0',
+  'p5' => '0',
+  'p6' => '0',
+  'p7' => '0',
+  'p8' => '0',
+  'p9' => '0',
+  'updated' => '0',
+))
+->values(array(
+  'menu_name' => 'navigation',
+  'mlid' => '2',
+  'plid' => '0',
+  'link_path' => 'admin',
+  'router_path' => 'admin',
+  'link_title' => 'Administer',
+  'options' => 'a:0:{}',
+  'module' => 'system',
+  'hidden' => '0',
+  'external' => '0',
+  'has_children' => '1',
+  'expanded' => '0',
+  'weight' => '9',
+  'depth' => '1',
+  'customized' => '0',
+  'p1' => '2',
+  'p2' => '0',
+  'p3' => '0',
+  'p4' => '0',
+  'p5' => '0',
+  'p6' => '0',
+  'p7' => '0',
+  'p8' => '0',
+  'p9' => '0',
+  'updated' => '0',
+))
+->values(array(
+  'menu_name' => 'navigation',
+  'mlid' => '3',
+  'plid' => '0',
+  'link_path' => 'node',
+  'router_path' => 'node',
+  'link_title' => 'Content',
+  'options' => 'a:0:{}',
+  'module' => 'system',
+  'hidden' => '-1',
+  'external' => '0',
+  'has_children' => '0',
+  'expanded' => '0',
+  'weight' => '0',
+  'depth' => '1',
+  'customized' => '0',
+  'p1' => '3',
+  'p2' => '0',
+  'p3' => '0',
+  'p4' => '0',
+  'p5' => '0',
+  'p6' => '0',
+  'p7' => '0',
+  'p8' => '0',
+  'p9' => '0',
+  'updated' => '0',
+))
+->values(array(
+  'menu_name' => 'navigation',
+  'mlid' => '4',
+  'plid' => '0',
+  'link_path' => 'logout',
+  'router_path' => 'logout',
+  'link_title' => 'Log out',
+  'options' => 'a:0:{}',
+  'module' => 'system',
+  'hidden' => '0',
+  'external' => '0',
+  'has_children' => '0',
+  'expanded' => '0',
+  'weight' => '10',
+  'depth' => '1',
+  'customized' => '0',
+  'p1' => '4',
+  'p2' => '0',
+  'p3' => '0',
+  'p4' => '0',
+  'p5' => '0',
+  'p6' => '0',
+  'p7' => '0',
+  'p8' => '0',
+  'p9' => '0',
+  'updated' => '0',
+))
+->values(array(
+  'menu_name' => 'navigation',
+  'mlid' => '5',
+  'plid' => '0',
+  'link_path' => 'rss.xml',
+  'router_path' => 'rss.xml',
+  'link_title' => 'RSS feed',
+  'options' => 'a:0:{}',
+  'module' => 'system',
+  'hidden' => '-1',
+  'external' => '0',
+  'has_children' => '0',
+  'expanded' => '0',
+  'weight' => '0',
+  'depth' => '1',
+  'customized' => '0',
+  'p1' => '5',
+  'p2' => '0',
+  'p3' => '0',
+  'p4' => '0',
+  'p5' => '0',
+  'p6' => '0',
+  'p7' => '0',
+  'p8' => '0',
+  'p9' => '0',
+  'updated' => '0',
+))
+->values(array(
+  'menu_name' => 'navigation',
+  'mlid' => '6',
+  'plid' => '0',
+  'link_path' => 'user',
+  'router_path' => 'user',
+  'link_title' => 'User account',
+  'options' => 'a:0:{}',
+  'module' => 'system',
+  'hidden' => '-1',
+  'external' => '0',
+  'has_children' => '0',
+  'expanded' => '0',
+  'weight' => '0',
+  'depth' => '1',
+  'customized' => '0',
+  'p1' => '6',
+  'p2' => '0',
+  'p3' => '0',
+  'p4' => '0',
+  'p5' => '0',
+  'p6' => '0',
+  'p7' => '0',
+  'p8' => '0',
+  'p9' => '0',
+  'updated' => '0',
+))
+->values(array(
+  'menu_name' => 'navigation',
+  'mlid' => '7',
+  'plid' => '0',
+  'link_path' => 'node/%',
+  'router_path' => 'node/%',
+  'link_title' => '',
+  'options' => 'a:0:{}',
+  'module' => 'system',
+  'hidden' => '-1',
+  'external' => '0',
+  'has_children' => '0',
+  'expanded' => '0',
+  'weight' => '0',
+  'depth' => '1',
+  'customized' => '0',
+  'p1' => '7',
+  'p2' => '0',
+  'p3' => '0',
+  'p4' => '0',
+  'p5' => '0',
+  'p6' => '0',
+  'p7' => '0',
+  'p8' => '0',
+  'p9' => '0',
+  'updated' => '0',
+))
+->values(array(
+  'menu_name' => 'navigation',
+  'mlid' => '8',
+  'plid' => '2',
+  'link_path' => 'admin/compact',
+  'router_path' => 'admin/compact',
+  'link_title' => 'Compact mode',
+  'options' => 'a:0:{}',
+  'module' => 'system',
+  'hidden' => '-1',
+  'external' => '0',
+  'has_children' => '0',
+  'expanded' => '0',
+  'weight' => '0',
+  'depth' => '2',
+  'customized' => '0',
+  'p1' => '2',
+  'p2' => '8',
+  'p3' => '0',
+  'p4' => '0',
+  'p5' => '0',
+  'p6' => '0',
+  'p7' => '0',
+  'p8' => '0',
+  'p9' => '0',
+  'updated' => '0',
+))
+->values(array(
+  'menu_name' => 'navigation',
+  'mlid' => '9',
+  'plid' => '0',
+  'link_path' => 'filter/tips',
+  'router_path' => 'filter/tips',
+  'link_title' => 'Compose tips',
+  'options' => 'a:0:{}',
+  'module' => 'system',
+  'hidden' => '1',
+  'external' => '0',
+  'has_children' => '0',
+  'expanded' => '0',
+  'weight' => '0',
+  'depth' => '1',
+  'customized' => '0',
+  'p1' => '9',
+  'p2' => '0',
+  'p3' => '0',
+  'p4' => '0',
+  'p5' => '0',
+  'p6' => '0',
+  'p7' => '0',
+  'p8' => '0',
+  'p9' => '0',
+  'updated' => '0',
+))
+->values(array(
+  'menu_name' => 'navigation',
+  'mlid' => '10',
+  'plid' => '2',
+  'link_path' => 'admin/content',
+  'router_path' => 'admin/content',
+  'link_title' => 'Content management',
+  'options' => "a:1:{s:10:\"attributes\";a:1:{s:5:\"title\";s:27:\"Manage your site's content.\";}}",
+  'module' => 'system',
+  'hidden' => '0',
+  'external' => '0',
+  'has_children' => '1',
+  'expanded' => '0',
+  'weight' => '-10',
+  'depth' => '2',
+  'customized' => '0',
+  'p1' => '2',
+  'p2' => '10',
+  'p3' => '0',
+  'p4' => '0',
+  'p5' => '0',
+  'p6' => '0',
+  'p7' => '0',
+  'p8' => '0',
+  'p9' => '0',
+  'updated' => '0',
+))
+->values(array(
+  'menu_name' => 'navigation',
+  'mlid' => '11',
+  'plid' => '0',
+  'link_path' => 'node/add',
+  'router_path' => 'node/add',
+  'link_title' => 'Create content',
+  'options' => 'a:0:{}',
+  'module' => 'system',
+  'hidden' => '0',
+  'external' => '0',
+  'has_children' => '1',
+  'expanded' => '0',
+  'weight' => '1',
+  'depth' => '1',
+  'customized' => '0',
+  'p1' => '11',
+  'p2' => '0',
+  'p3' => '0',
+  'p4' => '0',
+  'p5' => '0',
+  'p6' => '0',
+  'p7' => '0',
+  'p8' => '0',
+  'p9' => '0',
+  'updated' => '0',
+))
+->values(array(
+  'menu_name' => 'navigation',
+  'mlid' => '12',
+  'plid' => '0',
+  'link_path' => 'comment/delete',
+  'router_path' => 'comment/delete',
+  'link_title' => 'Delete comment',
+  'options' => 'a:0:{}',
+  'module' => 'system',
+  'hidden' => '-1',
+  'external' => '0',
+  'has_children' => '0',
+  'expanded' => '0',
+  'weight' => '0',
+  'depth' => '1',
+  'customized' => '0',
+  'p1' => '12',
+  'p2' => '0',
+  'p3' => '0',
+  'p4' => '0',
+  'p5' => '0',
+  'p6' => '0',
+  'p7' => '0',
+  'p8' => '0',
+  'p9' => '0',
+  'updated' => '0',
+))
+->values(array(
+  'menu_name' => 'navigation',
+  'mlid' => '13',
+  'plid' => '0',
+  'link_path' => 'comment/edit',
+  'router_path' => 'comment/edit',
+  'link_title' => 'Edit comment',
+  'options' => 'a:0:{}',
+  'module' => 'system',
+  'hidden' => '-1',
+  'external' => '0',
+  'has_children' => '0',
+  'expanded' => '0',
+  'weight' => '0',
+  'depth' => '1',
+  'customized' => '0',
+  'p1' => '13',
+  'p2' => '0',
+  'p3' => '0',
+  'p4' => '0',
+  'p5' => '0',
+  'p6' => '0',
+  'p7' => '0',
+  'p8' => '0',
+  'p9' => '0',
+  'updated' => '0',
+))
+->values(array(
+  'menu_name' => 'navigation',
+  'mlid' => '14',
+  'plid' => '0',
+  'link_path' => 'system/files',
+  'router_path' => 'system/files',
+  'link_title' => 'File download',
+  'options' => 'a:0:{}',
+  'module' => 'system',
+  'hidden' => '-1',
+  'external' => '0',
+  'has_children' => '0',
+  'expanded' => '0',
+  'weight' => '0',
+  'depth' => '1',
+  'customized' => '0',
+  'p1' => '14',
+  'p2' => '0',
+  'p3' => '0',
+  'p4' => '0',
+  'p5' => '0',
+  'p6' => '0',
+  'p7' => '0',
+  'p8' => '0',
+  'p9' => '0',
+  'updated' => '0',
+))
+->values(array(
+  'menu_name' => 'navigation',
+  'mlid' => '15',
+  'plid' => '2',
+  'link_path' => 'admin/reports',
+  'router_path' => 'admin/reports',
+  'link_title' => 'Reports',
+  'options' => 'a:1:{s:10:"attributes";a:1:{s:5:"title";s:59:"View reports from system logs and other status information.";}}',
+  'module' => 'system',
+  'hidden' => '0',
+  'external' => '0',
+  'has_children' => '1',
+  'expanded' => '0',
+  'weight' => '5',
+  'depth' => '2',
+  'customized' => '0',
+  'p1' => '2',
+  'p2' => '15',
+  'p3' => '0',
+  'p4' => '0',
+  'p5' => '0',
+  'p6' => '0',
+  'p7' => '0',
+  'p8' => '0',
+  'p9' => '0',
+  'updated' => '0',
+))
+->values(array(
+  'menu_name' => 'navigation',
+  'mlid' => '16',
+  'plid' => '2',
+  'link_path' => 'admin/build',
+  'router_path' => 'admin/build',
+  'link_title' => 'Site building',
+  'options' => 'a:1:{s:10:"attributes";a:1:{s:5:"title";s:38:"Control how your site looks and feels.";}}',
+  'module' => 'system',
+  'hidden' => '0',
+  'external' => '0',
+  'has_children' => '1',
+  'expanded' => '0',
+  'weight' => '-10',
+  'depth' => '2',
+  'customized' => '0',
+  'p1' => '2',
+  'p2' => '16',
+  'p3' => '0',
+  'p4' => '0',
+  'p5' => '0',
+  'p6' => '0',
+  'p7' => '0',
+  'p8' => '0',
+  'p9' => '0',
+  'updated' => '0',
+))
+->values(array(
+  'menu_name' => 'navigation',
+  'mlid' => '17',
+  'plid' => '2',
+  'link_path' => 'admin/settings',
+  'router_path' => 'admin/settings',
+  'link_title' => 'Site configuration',
+  'options' => 'a:1:{s:10:"attributes";a:1:{s:5:"title";s:40:"Adjust basic site configuration options.";}}',
+  'module' => 'system',
+  'hidden' => '0',
+  'external' => '0',
+  'has_children' => '1',
+  'expanded' => '0',
+  'weight' => '-5',
+  'depth' => '2',
+  'customized' => '0',
+  'p1' => '2',
+  'p2' => '17',
+  'p3' => '0',
+  'p4' => '0',
+  'p5' => '0',
+  'p6' => '0',
+  'p7' => '0',
+  'p8' => '0',
+  'p9' => '0',
+  'updated' => '0',
+))
+->values(array(
+  'menu_name' => 'navigation',
+  'mlid' => '18',
+  'plid' => '0',
+  'link_path' => 'user/autocomplete',
+  'router_path' => 'user/autocomplete',
+  'link_title' => 'User autocomplete',
+  'options' => 'a:0:{}',
+  'module' => 'system',
+  'hidden' => '-1',
+  'external' => '0',
+  'has_children' => '0',
+  'expanded' => '0',
+  'weight' => '0',
+  'depth' => '1',
+  'customized' => '0',
+  'p1' => '18',
+  'p2' => '0',
+  'p3' => '0',
+  'p4' => '0',
+  'p5' => '0',
+  'p6' => '0',
+  'p7' => '0',
+  'p8' => '0',
+  'p9' => '0',
+  'updated' => '0',
+))
+->values(array(
+  'menu_name' => 'navigation',
+  'mlid' => '19',
+  'plid' => '2',
+  'link_path' => 'admin/user',
+  'router_path' => 'admin/user',
+  'link_title' => 'User management',
+  'options' => "a:1:{s:10:\"attributes\";a:1:{s:5:\"title\";s:61:\"Manage your site's users, groups and access to site features.\";}}",
+  'module' => 'system',
+  'hidden' => '0',
+  'external' => '0',
+  'has_children' => '1',
+  'expanded' => '0',
+  'weight' => '0',
+  'depth' => '2',
+  'customized' => '0',
+  'p1' => '2',
+  'p2' => '19',
+  'p3' => '0',
+  'p4' => '0',
+  'p5' => '0',
+  'p6' => '0',
+  'p7' => '0',
+  'p8' => '0',
+  'p9' => '0',
+  'updated' => '0',
+))
+->values(array(
+  'menu_name' => 'navigation',
+  'mlid' => '20',
+  'plid' => '0',
+  'link_path' => 'user/%',
+  'router_path' => 'user/%',
+  'link_title' => 'My account',
+  'options' => 'a:0:{}',
+  'module' => 'system',
+  'hidden' => '0',
+  'external' => '0',
+  'has_children' => '0',
+  'expanded' => '0',
+  'weight' => '0',
+  'depth' => '1',
+  'customized' => '0',
+  'p1' => '20',
+  'p2' => '0',
+  'p3' => '0',
+  'p4' => '0',
+  'p5' => '0',
+  'p6' => '0',
+  'p7' => '0',
+  'p8' => '0',
+  'p9' => '0',
+  'updated' => '0',
+))
+->values(array(
+  'menu_name' => 'navigation',
+  'mlid' => '21',
+  'plid' => '19',
+  'link_path' => 'admin/user/rules',
+  'router_path' => 'admin/user/rules',
+  'link_title' => 'Access rules',
+  'options' => 'a:1:{s:10:"attributes";a:1:{s:5:"title";s:80:"List and create rules to disallow usernames, e-mail addresses, and IP addresses.";}}',
+  'module' => 'system',
+  'hidden' => '0',
+  'external' => '0',
+  'has_children' => '0',
+  'expanded' => '0',
+  'weight' => '0',
+  'depth' => '3',
+  'customized' => '0',
+  'p1' => '2',
+  'p2' => '19',
+  'p3' => '21',
+  'p4' => '0',
+  'p5' => '0',
+  'p6' => '0',
+  'p7' => '0',
+  'p8' => '0',
+  'p9' => '0',
+  'updated' => '0',
+))
+->values(array(
+  'menu_name' => 'navigation',
+  'mlid' => '22',
+  'plid' => '17',
+  'link_path' => 'admin/settings/actions',
+  'router_path' => 'admin/settings/actions',
+  'link_title' => 'Actions',
+  'options' => 'a:1:{s:10:"attributes";a:1:{s:5:"title";s:41:"Manage the actions defined for your site.";}}',
+  'module' => 'system',
+  'hidden' => '0',
+  'external' => '0',
+  'has_children' => '0',
+  'expanded' => '0',
+  'weight' => '0',
+  'depth' => '3',
+  'customized' => '0',
+  'p1' => '2',
+  'p2' => '17',
+  'p3' => '22',
+  'p4' => '0',
+  'p5' => '0',
+  'p6' => '0',
+  'p7' => '0',
+  'p8' => '0',
+  'p9' => '0',
+  'updated' => '0',
+))
+->values(array(
+  'menu_name' => 'navigation',
+  'mlid' => '23',
+  'plid' => '17',
+  'link_path' => 'admin/settings/admin',
+  'router_path' => 'admin/settings/admin',
+  'link_title' => 'Administration theme',
+  'options' => 'a:1:{s:10:"attributes";a:1:{s:5:"title";s:55:"Settings for how your administrative pages should look.";}}',
+  'module' => 'system',
+  'hidden' => '0',
+  'external' => '0',
+  'has_children' => '0',
+  'expanded' => '0',
+  'weight' => '0',
+  'depth' => '3',
+  'customized' => '0',
+  'p1' => '2',
+  'p2' => '17',
+  'p3' => '23',
+  'p4' => '0',
+  'p5' => '0',
+  'p6' => '0',
+  'p7' => '0',
+  'p8' => '0',
+  'p9' => '0',
+  'updated' => '0',
+))
+->values(array(
+  'menu_name' => 'navigation',
+  'mlid' => '24',
+  'plid' => '16',
+  'link_path' => 'admin/build/block',
+  'router_path' => 'admin/build/block',
+  'link_title' => 'Blocks',
+  'options' => "a:1:{s:10:\"attributes\";a:1:{s:5:\"title\";s:79:\"Configure what block content appears in your site's sidebars and other regions.\";}}",
+  'module' => 'system',
+  'hidden' => '0',
+  'external' => '0',
+  'has_children' => '0',
+  'expanded' => '0',
+  'weight' => '0',
+  'depth' => '3',
+  'customized' => '0',
+  'p1' => '2',
+  'p2' => '16',
+  'p3' => '24',
+  'p4' => '0',
+  'p5' => '0',
+  'p6' => '0',
+  'p7' => '0',
+  'p8' => '0',
+  'p9' => '0',
+  'updated' => '0',
+))
+->values(array(
+  'menu_name' => 'navigation',
+  'mlid' => '25',
+  'plid' => '17',
+  'link_path' => 'admin/settings/clean-urls',
+  'router_path' => 'admin/settings/clean-urls',
+  'link_title' => 'Clean URLs',
+  'options' => 'a:1:{s:10:"attributes";a:1:{s:5:"title";s:43:"Enable or disable clean URLs for your site.";}}',
+  'module' => 'system',
+  'hidden' => '0',
+  'external' => '0',
+  'has_children' => '0',
+  'expanded' => '0',
+  'weight' => '0',
+  'depth' => '3',
+  'customized' => '0',
+  'p1' => '2',
+  'p2' => '17',
+  'p3' => '25',
+  'p4' => '0',
+  'p5' => '0',
+  'p6' => '0',
+  'p7' => '0',
+  'p8' => '0',
+  'p9' => '0',
+  'updated' => '0',
+))
+->values(array(
+  'menu_name' => 'navigation',
+  'mlid' => '26',
+  'plid' => '10',
+  'link_path' => 'admin/content/comment',
+  'router_path' => 'admin/content/comment',
+  'link_title' => 'Comments',
+  'options' => 'a:1:{s:10:"attributes";a:1:{s:5:"title";s:61:"List and edit site comments and the comment moderation queue.";}}',
+  'module' => 'system',
+  'hidden' => '0',
+  'external' => '0',
+  'has_children' => '0',
+  'expanded' => '0',
+  'weight' => '0',
+  'depth' => '3',
+  'customized' => '0',
+  'p1' => '2',
+  'p2' => '10',
+  'p3' => '26',
+  'p4' => '0',
+  'p5' => '0',
+  'p6' => '0',
+  'p7' => '0',
+  'p8' => '0',
+  'p9' => '0',
+  'updated' => '0',
+))
+->values(array(
+  'menu_name' => 'navigation',
+  'mlid' => '27',
+  'plid' => '10',
+  'link_path' => 'admin/content/node',
+  'router_path' => 'admin/content/node',
+  'link_title' => 'Content',
+  'options' => "a:1:{s:10:\"attributes\";a:1:{s:5:\"title\";s:43:\"View, edit, and delete your site's content.\";}}",
+  'module' => 'system',
+  'hidden' => '0',
+  'external' => '0',
+  'has_children' => '0',
+  'expanded' => '0',
+  'weight' => '0',
+  'depth' => '3',
+  'customized' => '0',
+  'p1' => '2',
+  'p2' => '10',
+  'p3' => '27',
+  'p4' => '0',
+  'p5' => '0',
+  'p6' => '0',
+  'p7' => '0',
+  'p8' => '0',
+  'p9' => '0',
+  'updated' => '0',
+))
+->values(array(
+  'menu_name' => 'navigation',
+  'mlid' => '28',
+  'plid' => '10',
+  'link_path' => 'admin/content/types',
+  'router_path' => 'admin/content/types',
+  'link_title' => 'Content types',
+  'options' => 'a:1:{s:10:"attributes";a:1:{s:5:"title";s:82:"Manage posts by content type, including default status, front page promotion, etc.";}}',
+  'module' => 'system',
+  'hidden' => '0',
+  'external' => '0',
+  'has_children' => '0',
+  'expanded' => '0',
+  'weight' => '0',
+  'depth' => '3',
+  'customized' => '0',
+  'p1' => '2',
+  'p2' => '10',
+  'p3' => '28',
+  'p4' => '0',
+  'p5' => '0',
+  'p6' => '0',
+  'p7' => '0',
+  'p8' => '0',
+  'p9' => '0',
+  'updated' => '0',
+))
+->values(array(
+  'menu_name' => 'navigation',
+  'mlid' => '29',
+  'plid' => '17',
+  'link_path' => 'admin/settings/date-time',
+  'router_path' => 'admin/settings/date-time',
+  'link_title' => 'Date and time',
+  'options' => "a:1:{s:10:\"attributes\";a:1:{s:5:\"title\";s:89:\"Settings for how Drupal displays date and time, as well as the system's default timezone.\";}}",
+  'module' => 'system',
+  'hidden' => '0',
+  'external' => '0',
+  'has_children' => '0',
+  'expanded' => '0',
+  'weight' => '0',
+  'depth' => '3',
+  'customized' => '0',
+  'p1' => '2',
+  'p2' => '17',
+  'p3' => '29',
+  'p4' => '0',
+  'p5' => '0',
+  'p6' => '0',
+  'p7' => '0',
+  'p8' => '0',
+  'p9' => '0',
+  'updated' => '0',
+))
+->values(array(
+  'menu_name' => 'navigation',
+  'mlid' => '30',
+  'plid' => '0',
+  'link_path' => 'node/%/delete',
+  'router_path' => 'node/%/delete',
+  'link_title' => 'Delete',
+  'options' => 'a:0:{}',
+  'module' => 'system',
+  'hidden' => '-1',
+  'external' => '0',
+  'has_children' => '0',
+  'expanded' => '0',
+  'weight' => '1',
+  'depth' => '1',
+  'customized' => '0',
+  'p1' => '30',
+  'p2' => '0',
+  'p3' => '0',
+  'p4' => '0',
+  'p5' => '0',
+  'p6' => '0',
+  'p7' => '0',
+  'p8' => '0',
+  'p9' => '0',
+  'updated' => '0',
+))
+->values(array(
+  'menu_name' => 'navigation',
+  'mlid' => '31',
+  'plid' => '20',
+  'link_path' => 'user/%/delete',
+  'router_path' => 'user/%/delete',
+  'link_title' => 'Delete',
+  'options' => 'a:0:{}',
+  'module' => 'system',
+  'hidden' => '-1',
+  'external' => '0',
+  'has_children' => '0',
+  'expanded' => '0',
+  'weight' => '0',
+  'depth' => '2',
+  'customized' => '0',
+  'p1' => '20',
+  'p2' => '31',
+  'p3' => '0',
+  'p4' => '0',
+  'p5' => '0',
+  'p6' => '0',
+  'p7' => '0',
+  'p8' => '0',
+  'p9' => '0',
+  'updated' => '0',
+))
+->values(array(
+  'menu_name' => 'navigation',
+  'mlid' => '32',
+  'plid' => '17',
+  'link_path' => 'admin/settings/error-reporting',
+  'router_path' => 'admin/settings/error-reporting',
+  'link_title' => 'Error reporting',
+  'options' => 'a:1:{s:10:"attributes";a:1:{s:5:"title";s:93:"Control how Drupal deals with errors including 403/404 errors as well as PHP error reporting.";}}',
+  'module' => 'system',
+  'hidden' => '0',
+  'external' => '0',
+  'has_children' => '0',
+  'expanded' => '0',
+  'weight' => '0',
+  'depth' => '3',
+  'customized' => '0',
+  'p1' => '2',
+  'p2' => '17',
+  'p3' => '32',
+  'p4' => '0',
+  'p5' => '0',
+  'p6' => '0',
+  'p7' => '0',
+  'p8' => '0',
+  'p9' => '0',
+  'updated' => '0',
+))
+->values(array(
+  'menu_name' => 'navigation',
+  'mlid' => '33',
+  'plid' => '17',
+  'link_path' => 'admin/settings/file-system',
+  'router_path' => 'admin/settings/file-system',
+  'link_title' => 'File system',
+  'options' => 'a:1:{s:10:"attributes";a:1:{s:5:"title";s:68:"Tell Drupal where to store uploaded files and how they are accessed.";}}',
+  'module' => 'system',
+  'hidden' => '0',
+  'external' => '0',
+  'has_children' => '0',
+  'expanded' => '0',
+  'weight' => '0',
+  'depth' => '3',
+  'customized' => '0',
+  'p1' => '2',
+  'p2' => '17',
+  'p3' => '33',
+  'p4' => '0',
+  'p5' => '0',
+  'p6' => '0',
+  'p7' => '0',
+  'p8' => '0',
+  'p9' => '0',
+  'updated' => '0',
+))
+->values(array(
+  'menu_name' => 'navigation',
+  'mlid' => '34',
+  'plid' => '17',
+  'link_path' => 'admin/settings/image-toolkit',
+  'router_path' => 'admin/settings/image-toolkit',
+  'link_title' => 'Image toolkit',
+  'options' => 'a:1:{s:10:"attributes";a:1:{s:5:"title";s:74:"Choose which image toolkit to use if you have installed optional toolkits.";}}',
+  'module' => 'system',
+  'hidden' => '0',
+  'external' => '0',
+  'has_children' => '0',
+  'expanded' => '0',
+  'weight' => '0',
+  'depth' => '3',
+  'customized' => '0',
+  'p1' => '2',
+  'p2' => '17',
+  'p3' => '34',
+  'p4' => '0',
+  'p5' => '0',
+  'p6' => '0',
+  'p7' => '0',
+  'p8' => '0',
+  'p9' => '0',
+  'updated' => '0',
+))
+->values(array(
+  'menu_name' => 'navigation',
+  'mlid' => '35',
+  'plid' => '17',
+  'link_path' => 'admin/settings/filters',
+  'router_path' => 'admin/settings/filters',
+  'link_title' => 'Input formats',
+  'options' => 'a:1:{s:10:"attributes";a:1:{s:5:"title";s:127:"Configure how content input by users is filtered, including allowed HTML tags. Also allows enabling of module-provided filters.";}}',
+  'module' => 'system',
+  'hidden' => '0',
+  'external' => '0',
+  'has_children' => '0',
+  'expanded' => '0',
+  'weight' => '0',
+  'depth' => '3',
+  'customized' => '0',
+  'p1' => '2',
+  'p2' => '17',
+  'p3' => '35',
+  'p4' => '0',
+  'p5' => '0',
+  'p6' => '0',
+  'p7' => '0',
+  'p8' => '0',
+  'p9' => '0',
+  'updated' => '0',
+))
+->values(array(
+  'menu_name' => 'navigation',
+  'mlid' => '36',
+  'plid' => '17',
+  'link_path' => 'admin/settings/logging',
+  'router_path' => 'admin/settings/logging',
+  'link_title' => 'Logging and alerts',
+  'options' => "a:1:{s:10:\"attributes\";a:1:{s:5:\"title\";s:156:\"Settings for logging and alerts modules. Various modules can route Drupal's system events to different destination, such as syslog, database, email, ...etc.\";}}",
+  'module' => 'system',
+  'hidden' => '0',
+  'external' => '0',
+  'has_children' => '1',
+  'expanded' => '0',
+  'weight' => '0',
+  'depth' => '3',
+  'customized' => '0',
+  'p1' => '2',
+  'p2' => '17',
+  'p3' => '36',
+  'p4' => '0',
+  'p5' => '0',
+  'p6' => '0',
+  'p7' => '0',
+  'p8' => '0',
+  'p9' => '0',
+  'updated' => '0',
+))
+->values(array(
+  'menu_name' => 'navigation',
+  'mlid' => '37',
+  'plid' => '16',
+  'link_path' => 'admin/build/menu',
+  'router_path' => 'admin/build/menu',
+  'link_title' => 'Menus',
+  'options' => "a:1:{s:10:\"attributes\";a:1:{s:5:\"title\";s:116:\"Control your site's navigation menu, primary links and secondary links. as well as rename and reorganize menu items.\";}}",
+  'module' => 'system',
+  'hidden' => '0',
+  'external' => '0',
+  'has_children' => '1',
+  'expanded' => '0',
+  'weight' => '0',
+  'depth' => '3',
+  'customized' => '0',
+  'p1' => '2',
+  'p2' => '16',
+  'p3' => '37',
+  'p4' => '0',
+  'p5' => '0',
+  'p6' => '0',
+  'p7' => '0',
+  'p8' => '0',
+  'p9' => '0',
+  'updated' => '0',
+))
+->values(array(
+  'menu_name' => 'navigation',
+  'mlid' => '38',
+  'plid' => '16',
+  'link_path' => 'admin/build/modules',
+  'router_path' => 'admin/build/modules',
+  'link_title' => 'Modules',
+  'options' => 'a:1:{s:10:"attributes";a:1:{s:5:"title";s:47:"Enable or disable add-on modules for your site.";}}',
+  'module' => 'system',
+  'hidden' => '0',
+  'external' => '0',
+  'has_children' => '0',
+  'expanded' => '0',
+  'weight' => '0',
+  'depth' => '3',
+  'customized' => '0',
+  'p1' => '2',
+  'p2' => '16',
+  'p3' => '38',
+  'p4' => '0',
+  'p5' => '0',
+  'p6' => '0',
+  'p7' => '0',
+  'p8' => '0',
+  'p9' => '0',
+  'updated' => '0',
+))
+->values(array(
+  'menu_name' => 'navigation',
+  'mlid' => '39',
+  'plid' => '17',
+  'link_path' => 'admin/settings/performance',
+  'router_path' => 'admin/settings/performance',
+  'link_title' => 'Performance',
+  'options' => 'a:1:{s:10:"attributes";a:1:{s:5:"title";s:101:"Enable or disable page caching for anonymous users and set CSS and JS bandwidth optimization options.";}}',
+  'module' => 'system',
+  'hidden' => '0',
+  'external' => '0',
+  'has_children' => '0',
+  'expanded' => '0',
+  'weight' => '0',
+  'depth' => '3',
+  'customized' => '0',
+  'p1' => '2',
+  'p2' => '17',
+  'p3' => '39',
+  'p4' => '0',
+  'p5' => '0',
+  'p6' => '0',
+  'p7' => '0',
+  'p8' => '0',
+  'p9' => '0',
+  'updated' => '0',
+))
+->values(array(
+  'menu_name' => 'navigation',
+  'mlid' => '40',
+  'plid' => '19',
+  'link_path' => 'admin/user/permissions',
+  'router_path' => 'admin/user/permissions',
+  'link_title' => 'Permissions',
+  'options' => 'a:1:{s:10:"attributes";a:1:{s:5:"title";s:64:"Determine access to features by selecting permissions for roles.";}}',
+  'module' => 'system',
+  'hidden' => '0',
+  'external' => '0',
+  'has_children' => '0',
+  'expanded' => '0',
+  'weight' => '0',
+  'depth' => '3',
+  'customized' => '0',
+  'p1' => '2',
+  'p2' => '19',
+  'p3' => '40',
+  'p4' => '0',
+  'p5' => '0',
+  'p6' => '0',
+  'p7' => '0',
+  'p8' => '0',
+  'p9' => '0',
+  'updated' => '0',
+))
+->values(array(
+  'menu_name' => 'navigation',
+  'mlid' => '41',
+  'plid' => '10',
+  'link_path' => 'admin/content/node-settings',
+  'router_path' => 'admin/content/node-settings',
+  'link_title' => 'Post settings',
+  'options' => 'a:1:{s:10:"attributes";a:1:{s:5:"title";s:126:"Control posting behavior, such as teaser length, requiring previews before posting, and the number of posts on the front page.";}}',
+  'module' => 'system',
+  'hidden' => '0',
+  'external' => '0',
+  'has_children' => '0',
+  'expanded' => '0',
+  'weight' => '0',
+  'depth' => '3',
+  'customized' => '0',
+  'p1' => '2',
+  'p2' => '10',
+  'p3' => '41',
+  'p4' => '0',
+  'p5' => '0',
+  'p6' => '0',
+  'p7' => '0',
+  'p8' => '0',
+  'p9' => '0',
+  'updated' => '0',
+))
+->values(array(
+  'menu_name' => 'navigation',
+  'mlid' => '42',
+  'plid' => '10',
+  'link_path' => 'admin/content/rss-publishing',
+  'router_path' => 'admin/content/rss-publishing',
+  'link_title' => 'RSS publishing',
+  'options' => 'a:1:{s:10:"attributes";a:1:{s:5:"title";s:92:"Configure the number of items per feed and whether feeds should be titles/teasers/full-text.";}}',
+  'module' => 'system',
+  'hidden' => '0',
+  'external' => '0',
+  'has_children' => '0',
+  'expanded' => '0',
+  'weight' => '0',
+  'depth' => '3',
+  'customized' => '0',
+  'p1' => '2',
+  'p2' => '10',
+  'p3' => '42',
+  'p4' => '0',
+  'p5' => '0',
+  'p6' => '0',
+  'p7' => '0',
+  'p8' => '0',
+  'p9' => '0',
+  'updated' => '0',
+))
+->values(array(
+  'menu_name' => 'navigation',
+  'mlid' => '43',
+  'plid' => '0',
+  'link_path' => 'comment/reply/%',
+  'router_path' => 'comment/reply/%',
+  'link_title' => 'Reply to comment',
+  'options' => 'a:0:{}',
+  'module' => 'system',
+  'hidden' => '-1',
+  'external' => '0',
+  'has_children' => '0',
+  'expanded' => '0',
+  'weight' => '0',
+  'depth' => '1',
+  'customized' => '0',
+  'p1' => '43',
+  'p2' => '0',
+  'p3' => '0',
+  'p4' => '0',
+  'p5' => '0',
+  'p6' => '0',
+  'p7' => '0',
+  'p8' => '0',
+  'p9' => '0',
+  'updated' => '0',
+))
+->values(array(
+  'menu_name' => 'navigation',
+  'mlid' => '44',
+  'plid' => '19',
+  'link_path' => 'admin/user/roles',
+  'router_path' => 'admin/user/roles',
+  'link_title' => 'Roles',
+  'options' => 'a:1:{s:10:"attributes";a:1:{s:5:"title";s:30:"List, edit, or add user roles.";}}',
+  'module' => 'system',
+  'hidden' => '0',
+  'external' => '0',
+  'has_children' => '0',
+  'expanded' => '0',
+  'weight' => '0',
+  'depth' => '3',
+  'customized' => '0',
+  'p1' => '2',
+  'p2' => '19',
+  'p3' => '44',
+  'p4' => '0',
+  'p5' => '0',
+  'p6' => '0',
+  'p7' => '0',
+  'p8' => '0',
+  'p9' => '0',
+  'updated' => '0',
+))
+->values(array(
+  'menu_name' => 'navigation',
+  'mlid' => '45',
+  'plid' => '17',
+  'link_path' => 'admin/settings/site-information',
+  'router_path' => 'admin/settings/site-information',
+  'link_title' => 'Site information',
+  'options' => 'a:1:{s:10:"attributes";a:1:{s:5:"title";s:107:"Change basic site information, such as the site name, slogan, e-mail address, mission, front page and more.";}}',
+  'module' => 'system',
+  'hidden' => '0',
+  'external' => '0',
+  'has_children' => '0',
+  'expanded' => '0',
+  'weight' => '0',
+  'depth' => '3',
+  'customized' => '0',
+  'p1' => '2',
+  'p2' => '17',
+  'p3' => '45',
+  'p4' => '0',
+  'p5' => '0',
+  'p6' => '0',
+  'p7' => '0',
+  'p8' => '0',
+  'p9' => '0',
+  'updated' => '0',
+))
+->values(array(
+  'menu_name' => 'navigation',
+  'mlid' => '46',
+  'plid' => '17',
+  'link_path' => 'admin/settings/site-maintenance',
+  'router_path' => 'admin/settings/site-maintenance',
+  'link_title' => 'Site maintenance',
+  'options' => 'a:1:{s:10:"attributes";a:1:{s:5:"title";s:63:"Take the site off-line for maintenance or bring it back online.";}}',
+  'module' => 'system',
+  'hidden' => '0',
+  'external' => '0',
+  'has_children' => '0',
+  'expanded' => '0',
+  'weight' => '0',
+  'depth' => '3',
+  'customized' => '0',
+  'p1' => '2',
+  'p2' => '17',
+  'p3' => '46',
+  'p4' => '0',
+  'p5' => '0',
+  'p6' => '0',
+  'p7' => '0',
+  'p8' => '0',
+  'p9' => '0',
+  'updated' => '0',
+))
+->values(array(
+  'menu_name' => 'navigation',
+  'mlid' => '47',
+  'plid' => '15',
+  'link_path' => 'admin/reports/status',
+  'router_path' => 'admin/reports/status',
+  'link_title' => 'Status report',
+  'options' => "a:1:{s:10:\"attributes\";a:1:{s:5:\"title\";s:74:\"Get a status report about your site's operation and any detected problems.\";}}",
+  'module' => 'system',
+  'hidden' => '0',
+  'external' => '0',
+  'has_children' => '0',
+  'expanded' => '0',
+  'weight' => '10',
+  'depth' => '3',
+  'customized' => '0',
+  'p1' => '2',
+  'p2' => '15',
+  'p3' => '47',
+  'p4' => '0',
+  'p5' => '0',
+  'p6' => '0',
+  'p7' => '0',
+  'p8' => '0',
+  'p9' => '0',
+  'updated' => '0',
+))
+->values(array(
+  'menu_name' => 'navigation',
+  'mlid' => '48',
+  'plid' => '16',
+  'link_path' => 'admin/build/themes',
+  'router_path' => 'admin/build/themes',
+  'link_title' => 'Themes',
+  'options' => 'a:1:{s:10:"attributes";a:1:{s:5:"title";s:57:"Change which theme your site uses or allows users to set.";}}',
+  'module' => 'system',
+  'hidden' => '0',
+  'external' => '0',
+  'has_children' => '0',
+  'expanded' => '0',
+  'weight' => '0',
+  'depth' => '3',
+  'customized' => '0',
+  'p1' => '2',
+  'p2' => '16',
+  'p3' => '48',
+  'p4' => '0',
+  'p5' => '0',
+  'p6' => '0',
+  'p7' => '0',
+  'p8' => '0',
+  'p9' => '0',
+  'updated' => '0',
+))
+->values(array(
+  'menu_name' => 'navigation',
+  'mlid' => '49',
+  'plid' => '19',
+  'link_path' => 'admin/user/settings',
+  'router_path' => 'admin/user/settings',
+  'link_title' => 'User settings',
+  'options' => 'a:1:{s:10:"attributes";a:1:{s:5:"title";s:101:"Configure default behavior of users, including registration requirements, e-mails, and user pictures.";}}',
+  'module' => 'system',
+  'hidden' => '0',
+  'external' => '0',
+  'has_children' => '0',
+  'expanded' => '0',
+  'weight' => '0',
+  'depth' => '3',
+  'customized' => '0',
+  'p1' => '2',
+  'p2' => '19',
+  'p3' => '49',
+  'p4' => '0',
+  'p5' => '0',
+  'p6' => '0',
+  'p7' => '0',
+  'p8' => '0',
+  'p9' => '0',
+  'updated' => '0',
+))
+->values(array(
+  'menu_name' => 'navigation',
+  'mlid' => '50',
+  'plid' => '19',
+  'link_path' => 'admin/user/user',
+  'router_path' => 'admin/user/user',
+  'link_title' => 'Users',
+  'options' => 'a:1:{s:10:"attributes";a:1:{s:5:"title";s:26:"List, add, and edit users.";}}',
+  'module' => 'system',
+  'hidden' => '0',
+  'external' => '0',
+  'has_children' => '0',
+  'expanded' => '0',
+  'weight' => '0',
+  'depth' => '3',
+  'customized' => '0',
+  'p1' => '2',
+  'p2' => '19',
+  'p3' => '50',
+  'p4' => '0',
+  'p5' => '0',
+  'p6' => '0',
+  'p7' => '0',
+  'p8' => '0',
+  'p9' => '0',
+  'updated' => '0',
+))
+->values(array(
+  'menu_name' => 'navigation',
+  'mlid' => '51',
+  'plid' => '35',
+  'link_path' => 'admin/settings/filters/%',
+  'router_path' => 'admin/settings/filters/%',
+  'link_title' => '',
+  'options' => 'a:0:{}',
+  'module' => 'system',
+  'hidden' => '-1',
+  'external' => '0',
+  'has_children' => '0',
+  'expanded' => '0',
+  'weight' => '0',
+  'depth' => '4',
+  'customized' => '0',
+  'p1' => '2',
+  'p2' => '17',
+  'p3' => '35',
+  'p4' => '51',
+  'p5' => '0',
+  'p6' => '0',
+  'p7' => '0',
+  'p8' => '0',
+  'p9' => '0',
+  'updated' => '0',
+))
+->values(array(
+  'menu_name' => 'navigation',
+  'mlid' => '52',
+  'plid' => '25',
+  'link_path' => 'admin/settings/clean-urls/check',
+  'router_path' => 'admin/settings/clean-urls/check',
+  'link_title' => 'Clean URL check',
+  'options' => 'a:0:{}',
+  'module' => 'system',
+  'hidden' => '-1',
+  'external' => '0',
+  'has_children' => '0',
+  'expanded' => '0',
+  'weight' => '0',
+  'depth' => '4',
+  'customized' => '0',
+  'p1' => '2',
+  'p2' => '17',
+  'p3' => '25',
+  'p4' => '52',
+  'p5' => '0',
+  'p6' => '0',
+  'p7' => '0',
+  'p8' => '0',
+  'p9' => '0',
+  'updated' => '0',
+))
+->values(array(
+  'menu_name' => 'navigation',
+  'mlid' => '53',
+  'plid' => '22',
+  'link_path' => 'admin/settings/actions/configure',
+  'router_path' => 'admin/settings/actions/configure',
+  'link_title' => 'Configure an advanced action',
+  'options' => 'a:0:{}',
+  'module' => 'system',
+  'hidden' => '-1',
+  'external' => '0',
+  'has_children' => '0',
+  'expanded' => '0',
+  'weight' => '0',
+  'depth' => '4',
+  'customized' => '0',
+  'p1' => '2',
+  'p2' => '17',
+  'p3' => '22',
+  'p4' => '53',
+  'p5' => '0',
+  'p6' => '0',
+  'p7' => '0',
+  'p8' => '0',
+  'p9' => '0',
+  'updated' => '0',
+))
+->values(array(
+  'menu_name' => 'navigation',
+  'mlid' => '54',
+  'plid' => '24',
+  'link_path' => 'admin/build/block/configure',
+  'router_path' => 'admin/build/block/configure',
+  'link_title' => 'Configure block',
+  'options' => 'a:0:{}',
+  'module' => 'system',
+  'hidden' => '-1',
+  'external' => '0',
+  'has_children' => '0',
+  'expanded' => '0',
+  'weight' => '0',
+  'depth' => '4',
+  'customized' => '0',
+  'p1' => '2',
+  'p2' => '16',
+  'p3' => '24',
+  'p4' => '54',
+  'p5' => '0',
+  'p6' => '0',
+  'p7' => '0',
+  'p8' => '0',
+  'p9' => '0',
+  'updated' => '0',
+))
+->values(array(
+  'menu_name' => 'navigation',
+  'mlid' => '55',
+  'plid' => '16',
+  'link_path' => 'admin/build/menu-customize/%',
+  'router_path' => 'admin/build/menu-customize/%',
+  'link_title' => 'Customize menu',
+  'options' => 'a:0:{}',
+  'module' => 'system',
+  'hidden' => '-1',
+  'external' => '0',
+  'has_children' => '0',
+  'expanded' => '0',
+  'weight' => '0',
+  'depth' => '3',
+  'customized' => '0',
+  'p1' => '2',
+  'p2' => '16',
+  'p3' => '55',
+  'p4' => '0',
+  'p5' => '0',
+  'p6' => '0',
+  'p7' => '0',
+  'p8' => '0',
+  'p9' => '0',
+  'updated' => '0',
+))
+->values(array(
+  'menu_name' => 'navigation',
+  'mlid' => '56',
+  'plid' => '29',
+  'link_path' => 'admin/settings/date-time/lookup',
+  'router_path' => 'admin/settings/date-time/lookup',
+  'link_title' => 'Date and time lookup',
+  'options' => 'a:0:{}',
+  'module' => 'system',
+  'hidden' => '-1',
+  'external' => '0',
+  'has_children' => '0',
+  'expanded' => '0',
+  'weight' => '0',
+  'depth' => '4',
+  'customized' => '0',
+  'p1' => '2',
+  'p2' => '17',
+  'p3' => '29',
+  'p4' => '56',
+  'p5' => '0',
+  'p6' => '0',
+  'p7' => '0',
+  'p8' => '0',
+  'p9' => '0',
+  'updated' => '0',
+))
+->values(array(
+  'menu_name' => 'navigation',
+  'mlid' => '57',
+  'plid' => '24',
+  'link_path' => 'admin/build/block/delete',
+  'router_path' => 'admin/build/block/delete',
+  'link_title' => 'Delete block',
+  'options' => 'a:0:{}',
+  'module' => 'system',
+  'hidden' => '-1',
+  'external' => '0',
+  'has_children' => '0',
+  'expanded' => '0',
+  'weight' => '0',
+  'depth' => '4',
+  'customized' => '0',
+  'p1' => '2',
+  'p2' => '16',
+  'p3' => '24',
+  'p4' => '57',
+  'p5' => '0',
+  'p6' => '0',
+  'p7' => '0',
+  'p8' => '0',
+  'p9' => '0',
+  'updated' => '0',
+))
+->values(array(
+  'menu_name' => 'navigation',
+  'mlid' => '58',
+  'plid' => '35',
+  'link_path' => 'admin/settings/filters/delete',
+  'router_path' => 'admin/settings/filters/delete',
+  'link_title' => 'Delete input format',
+  'options' => 'a:0:{}',
+  'module' => 'system',
+  'hidden' => '-1',
+  'external' => '0',
+  'has_children' => '0',
+  'expanded' => '0',
+  'weight' => '0',
+  'depth' => '4',
+  'customized' => '0',
+  'p1' => '2',
+  'p2' => '17',
+  'p3' => '35',
+  'p4' => '58',
+  'p5' => '0',
+  'p6' => '0',
+  'p7' => '0',
+  'p8' => '0',
+  'p9' => '0',
+  'updated' => '0',
+))
+->values(array(
+  'menu_name' => 'navigation',
+  'mlid' => '59',
+  'plid' => '21',
+  'link_path' => 'admin/user/rules/delete',
+  'router_path' => 'admin/user/rules/delete',
+  'link_title' => 'Delete rule',
+  'options' => 'a:0:{}',
+  'module' => 'system',
+  'hidden' => '-1',
+  'external' => '0',
+  'has_children' => '0',
+  'expanded' => '0',
+  'weight' => '0',
+  'depth' => '4',
+  'customized' => '0',
+  'p1' => '2',
+  'p2' => '19',
+  'p3' => '21',
+  'p4' => '59',
+  'p5' => '0',
+  'p6' => '0',
+  'p7' => '0',
+  'p8' => '0',
+  'p9' => '0',
+  'updated' => '0',
+))
+->values(array(
+  'menu_name' => 'navigation',
+  'mlid' => '60',
+  'plid' => '44',
+  'link_path' => 'admin/user/roles/edit',
+  'router_path' => 'admin/user/roles/edit',
+  'link_title' => 'Edit role',
+  'options' => 'a:0:{}',
+  'module' => 'system',
+  'hidden' => '-1',
+  'external' => '0',
+  'has_children' => '0',
+  'expanded' => '0',
+  'weight' => '0',
+  'depth' => '4',
+  'customized' => '0',
+  'p1' => '2',
+  'p2' => '19',
+  'p3' => '44',
+  'p4' => '60',
+  'p5' => '0',
+  'p6' => '0',
+  'p7' => '0',
+  'p8' => '0',
+  'p9' => '0',
+  'updated' => '0',
+))
+->values(array(
+  'menu_name' => 'navigation',
+  'mlid' => '61',
+  'plid' => '21',
+  'link_path' => 'admin/user/rules/edit',
+  'router_path' => 'admin/user/rules/edit',
+  'link_title' => 'Edit rule',
+  'options' => 'a:0:{}',
+  'module' => 'system',
+  'hidden' => '-1',
+  'external' => '0',
+  'has_children' => '0',
+  'expanded' => '0',
+  'weight' => '0',
+  'depth' => '4',
+  'customized' => '0',
+  'p1' => '2',
+  'p2' => '19',
+  'p3' => '21',
+  'p4' => '61',
+  'p5' => '0',
+  'p6' => '0',
+  'p7' => '0',
+  'p8' => '0',
+  'p9' => '0',
+  'updated' => '0',
+))
+->values(array(
+  'menu_name' => 'navigation',
+  'mlid' => '62',
+  'plid' => '47',
+  'link_path' => 'admin/reports/status/php',
+  'router_path' => 'admin/reports/status/php',
+  'link_title' => 'PHP',
+  'options' => 'a:0:{}',
+  'module' => 'system',
+  'hidden' => '-1',
+  'external' => '0',
+  'has_children' => '0',
+  'expanded' => '0',
+  'weight' => '0',
+  'depth' => '4',
+  'customized' => '0',
+  'p1' => '2',
+  'p2' => '15',
+  'p3' => '47',
+  'p4' => '62',
+  'p5' => '0',
+  'p6' => '0',
+  'p7' => '0',
+  'p8' => '0',
+  'p9' => '0',
+  'updated' => '0',
+))
+->values(array(
+  'menu_name' => 'navigation',
+  'mlid' => '63',
+  'plid' => '41',
+  'link_path' => 'admin/content/node-settings/rebuild',
+  'router_path' => 'admin/content/node-settings/rebuild',
+  'link_title' => 'Rebuild permissions',
+  'options' => 'a:0:{}',
+  'module' => 'system',
+  'hidden' => '-1',
+  'external' => '0',
+  'has_children' => '0',
+  'expanded' => '0',
+  'weight' => '0',
+  'depth' => '4',
+  'customized' => '0',
+  'p1' => '2',
+  'p2' => '10',
+  'p3' => '41',
+  'p4' => '63',
+  'p5' => '0',
+  'p6' => '0',
+  'p7' => '0',
+  'p8' => '0',
+  'p9' => '0',
+  'updated' => '0',
+))
+->values(array(
+  'menu_name' => 'navigation',
+  'mlid' => '64',
+  'plid' => '22',
+  'link_path' => 'admin/settings/actions/orphan',
+  'router_path' => 'admin/settings/actions/orphan',
+  'link_title' => 'Remove orphans',
+  'options' => 'a:0:{}',
+  'module' => 'system',
+  'hidden' => '-1',
+  'external' => '0',
+  'has_children' => '0',
+  'expanded' => '0',
+  'weight' => '0',
+  'depth' => '4',
+  'customized' => '0',
+  'p1' => '2',
+  'p2' => '17',
+  'p3' => '22',
+  'p4' => '64',
+  'p5' => '0',
+  'p6' => '0',
+  'p7' => '0',
+  'p8' => '0',
+  'p9' => '0',
+  'updated' => '0',
+))
+->values(array(
+  'menu_name' => 'navigation',
+  'mlid' => '65',
+  'plid' => '47',
+  'link_path' => 'admin/reports/status/run-cron',
+  'router_path' => 'admin/reports/status/run-cron',
+  'link_title' => 'Run cron',
+  'options' => 'a:0:{}',
+  'module' => 'system',
+  'hidden' => '-1',
+  'external' => '0',
+  'has_children' => '0',
+  'expanded' => '0',
+  'weight' => '0',
+  'depth' => '4',
+  'customized' => '0',
+  'p1' => '2',
+  'p2' => '15',
+  'p3' => '47',
+  'p4' => '65',
+  'p5' => '0',
+  'p6' => '0',
+  'p7' => '0',
+  'p8' => '0',
+  'p9' => '0',
+  'updated' => '0',
+))
+->values(array(
+  'menu_name' => 'navigation',
+  'mlid' => '66',
+  'plid' => '47',
+  'link_path' => 'admin/reports/status/sql',
+  'router_path' => 'admin/reports/status/sql',
+  'link_title' => 'SQL',
+  'options' => 'a:0:{}',
+  'module' => 'system',
+  'hidden' => '-1',
+  'external' => '0',
+  'has_children' => '0',
+  'expanded' => '0',
+  'weight' => '0',
+  'depth' => '4',
+  'customized' => '0',
+  'p1' => '2',
+  'p2' => '15',
+  'p3' => '47',
+  'p4' => '66',
+  'p5' => '0',
+  'p6' => '0',
+  'p7' => '0',
+  'p8' => '0',
+  'p9' => '0',
+  'updated' => '0',
+))
+->values(array(
+  'menu_name' => 'navigation',
+  'mlid' => '67',
+  'plid' => '22',
+  'link_path' => 'admin/settings/actions/delete/%',
+  'router_path' => 'admin/settings/actions/delete/%',
+  'link_title' => 'Delete action',
+  'options' => 'a:1:{s:10:"attributes";a:1:{s:5:"title";s:17:"Delete an action.";}}',
+  'module' => 'system',
+  'hidden' => '-1',
+  'external' => '0',
+  'has_children' => '0',
+  'expanded' => '0',
+  'weight' => '0',
+  'depth' => '4',
+  'customized' => '0',
+  'p1' => '2',
+  'p2' => '17',
+  'p3' => '22',
+  'p4' => '67',
+  'p5' => '0',
+  'p6' => '0',
+  'p7' => '0',
+  'p8' => '0',
+  'p9' => '0',
+  'updated' => '0',
+))
+->values(array(
+  'menu_name' => 'navigation',
+  'mlid' => '68',
+  'plid' => '0',
+  'link_path' => 'admin/build/menu-customize/%/delete',
+  'router_path' => 'admin/build/menu-customize/%/delete',
+  'link_title' => 'Delete menu',
+  'options' => 'a:0:{}',
+  'module' => 'system',
+  'hidden' => '-1',
+  'external' => '0',
+  'has_children' => '0',
+  'expanded' => '0',
+  'weight' => '0',
+  'depth' => '1',
+  'customized' => '0',
+  'p1' => '68',
+  'p2' => '0',
+  'p3' => '0',
+  'p4' => '0',
+  'p5' => '0',
+  'p6' => '0',
+  'p7' => '0',
+  'p8' => '0',
+  'p9' => '0',
+  'updated' => '0',
+))
+->values(array(
+  'menu_name' => 'navigation',
+  'mlid' => '69',
+  'plid' => '24',
+  'link_path' => 'admin/build/block/list/js',
+  'router_path' => 'admin/build/block/list/js',
+  'link_title' => 'JavaScript List Form',
+  'options' => 'a:0:{}',
+  'module' => 'system',
+  'hidden' => '-1',
+  'external' => '0',
+  'has_children' => '0',
+  'expanded' => '0',
+  'weight' => '0',
+  'depth' => '4',
+  'customized' => '0',
+  'p1' => '2',
+  'p2' => '16',
+  'p3' => '24',
+  'p4' => '69',
+  'p5' => '0',
+  'p6' => '0',
+  'p7' => '0',
+  'p8' => '0',
+  'p9' => '0',
+  'updated' => '0',
+))
+->values(array(
+  'menu_name' => 'navigation',
+  'mlid' => '70',
+  'plid' => '38',
+  'link_path' => 'admin/build/modules/list/confirm',
+  'router_path' => 'admin/build/modules/list/confirm',
+  'link_title' => 'List',
+  'options' => 'a:0:{}',
+  'module' => 'system',
+  'hidden' => '-1',
+  'external' => '0',
+  'has_children' => '0',
+  'expanded' => '0',
+  'weight' => '0',
+  'depth' => '4',
+  'customized' => '0',
+  'p1' => '2',
+  'p2' => '16',
+  'p3' => '38',
+  'p4' => '70',
+  'p5' => '0',
+  'p6' => '0',
+  'p7' => '0',
+  'p8' => '0',
+  'p9' => '0',
+  'updated' => '0',
+))
+->values(array(
+  'menu_name' => 'navigation',
+  'mlid' => '71',
+  'plid' => '0',
+  'link_path' => 'user/reset/%/%/%',
+  'router_path' => 'user/reset/%/%/%',
+  'link_title' => 'Reset password',
+  'options' => 'a:0:{}',
+  'module' => 'system',
+  'hidden' => '-1',
+  'external' => '0',
+  'has_children' => '0',
+  'expanded' => '0',
+  'weight' => '0',
+  'depth' => '1',
+  'customized' => '0',
+  'p1' => '71',
+  'p2' => '0',
+  'p3' => '0',
+  'p4' => '0',
+  'p5' => '0',
+  'p6' => '0',
+  'p7' => '0',
+  'p8' => '0',
+  'p9' => '0',
+  'updated' => '0',
+))
+->values(array(
+  'menu_name' => 'navigation',
+  'mlid' => '72',
+  'plid' => '38',
+  'link_path' => 'admin/build/modules/uninstall/confirm',
+  'router_path' => 'admin/build/modules/uninstall/confirm',
+  'link_title' => 'Uninstall',
+  'options' => 'a:0:{}',
+  'module' => 'system',
+  'hidden' => '-1',
+  'external' => '0',
+  'has_children' => '0',
+  'expanded' => '0',
+  'weight' => '0',
+  'depth' => '4',
+  'customized' => '0',
+  'p1' => '2',
+  'p2' => '16',
+  'p3' => '38',
+  'p4' => '72',
+  'p5' => '0',
+  'p6' => '0',
+  'p7' => '0',
+  'p8' => '0',
+  'p9' => '0',
+  'updated' => '0',
+))
+->values(array(
+  'menu_name' => 'navigation',
+  'mlid' => '73',
+  'plid' => '0',
+  'link_path' => 'node/%/revisions/%/delete',
+  'router_path' => 'node/%/revisions/%/delete',
+  'link_title' => 'Delete earlier revision',
+  'options' => 'a:0:{}',
+  'module' => 'system',
+  'hidden' => '-1',
+  'external' => '0',
+  'has_children' => '0',
+  'expanded' => '0',
+  'weight' => '0',
+  'depth' => '1',
+  'customized' => '0',
+  'p1' => '73',
+  'p2' => '0',
+  'p3' => '0',
+  'p4' => '0',
+  'p5' => '0',
+  'p6' => '0',
+  'p7' => '0',
+  'p8' => '0',
+  'p9' => '0',
+  'updated' => '0',
+))
+->values(array(
+  'menu_name' => 'navigation',
+  'mlid' => '74',
+  'plid' => '0',
+  'link_path' => 'node/%/revisions/%/revert',
+  'router_path' => 'node/%/revisions/%/revert',
+  'link_title' => 'Revert to earlier revision',
+  'options' => 'a:0:{}',
+  'module' => 'system',
+  'hidden' => '-1',
+  'external' => '0',
+  'has_children' => '0',
+  'expanded' => '0',
+  'weight' => '0',
+  'depth' => '1',
+  'customized' => '0',
+  'p1' => '74',
+  'p2' => '0',
+  'p3' => '0',
+  'p4' => '0',
+  'p5' => '0',
+  'p6' => '0',
+  'p7' => '0',
+  'p8' => '0',
+  'p9' => '0',
+  'updated' => '0',
+))
+->values(array(
+  'menu_name' => 'navigation',
+  'mlid' => '75',
+  'plid' => '0',
+  'link_path' => 'node/%/revisions/%/view',
+  'router_path' => 'node/%/revisions/%/view',
+  'link_title' => 'Revisions',
+  'options' => 'a:0:{}',
+  'module' => 'system',
+  'hidden' => '-1',
+  'external' => '0',
+  'has_children' => '0',
+  'expanded' => '0',
+  'weight' => '0',
+  'depth' => '1',
+  'customized' => '0',
+  'p1' => '75',
+  'p2' => '0',
+  'p3' => '0',
+  'p4' => '0',
+  'p5' => '0',
+  'p6' => '0',
+  'p7' => '0',
+  'p8' => '0',
+  'p9' => '0',
+  'updated' => '0',
+))
+->values(array(
+  'menu_name' => 'navigation',
+  'mlid' => '76',
+  'plid' => '37',
+  'link_path' => 'admin/build/menu/item/%/delete',
+  'router_path' => 'admin/build/menu/item/%/delete',
+  'link_title' => 'Delete menu item',
+  'options' => 'a:0:{}',
+  'module' => 'system',
+  'hidden' => '-1',
+  'external' => '0',
+  'has_children' => '0',
+  'expanded' => '0',
+  'weight' => '0',
+  'depth' => '4',
+  'customized' => '0',
+  'p1' => '2',
+  'p2' => '16',
+  'p3' => '37',
+  'p4' => '76',
+  'p5' => '0',
+  'p6' => '0',
+  'p7' => '0',
+  'p8' => '0',
+  'p9' => '0',
+  'updated' => '0',
+))
+->values(array(
+  'menu_name' => 'navigation',
+  'mlid' => '77',
+  'plid' => '37',
+  'link_path' => 'admin/build/menu/item/%/edit',
+  'router_path' => 'admin/build/menu/item/%/edit',
+  'link_title' => 'Edit menu item',
+  'options' => 'a:0:{}',
+  'module' => 'system',
+  'hidden' => '-1',
+  'external' => '0',
+  'has_children' => '0',
+  'expanded' => '0',
+  'weight' => '0',
+  'depth' => '4',
+  'customized' => '0',
+  'p1' => '2',
+  'p2' => '16',
+  'p3' => '37',
+  'p4' => '77',
+  'p5' => '0',
+  'p6' => '0',
+  'p7' => '0',
+  'p8' => '0',
+  'p9' => '0',
+  'updated' => '0',
+))
+->values(array(
+  'menu_name' => 'navigation',
+  'mlid' => '78',
+  'plid' => '37',
+  'link_path' => 'admin/build/menu/item/%/reset',
+  'router_path' => 'admin/build/menu/item/%/reset',
+  'link_title' => 'Reset menu item',
+  'options' => 'a:0:{}',
+  'module' => 'system',
+  'hidden' => '-1',
+  'external' => '0',
+  'has_children' => '0',
+  'expanded' => '0',
+  'weight' => '0',
+  'depth' => '4',
+  'customized' => '0',
+  'p1' => '2',
+  'p2' => '16',
+  'p3' => '37',
+  'p4' => '78',
+  'p5' => '0',
+  'p6' => '0',
+  'p7' => '0',
+  'p8' => '0',
+  'p9' => '0',
+  'updated' => '0',
+))
+->values(array(
+  'menu_name' => 'navigation',
+  'mlid' => '79',
+  'plid' => '37',
+  'link_path' => 'admin/build/menu-customize/navigation',
+  'router_path' => 'admin/build/menu-customize/%',
+  'link_title' => 'Navigation',
+  'options' => 'a:0:{}',
+  'module' => 'menu',
+  'hidden' => '0',
+  'external' => '0',
+  'has_children' => '0',
+  'expanded' => '0',
+  'weight' => '0',
+  'depth' => '4',
+  'customized' => '0',
+  'p1' => '2',
+  'p2' => '16',
+  'p3' => '37',
+  'p4' => '79',
+  'p5' => '0',
+  'p6' => '0',
+  'p7' => '0',
+  'p8' => '0',
+  'p9' => '0',
+  'updated' => '0',
+))
+->values(array(
+  'menu_name' => 'navigation',
+  'mlid' => '80',
+  'plid' => '37',
+  'link_path' => 'admin/build/menu-customize/primary-links',
+  'router_path' => 'admin/build/menu-customize/%',
+  'link_title' => 'Primary links',
+  'options' => 'a:0:{}',
+  'module' => 'menu',
+  'hidden' => '0',
+  'external' => '0',
+  'has_children' => '0',
+  'expanded' => '0',
+  'weight' => '0',
+  'depth' => '4',
+  'customized' => '0',
+  'p1' => '2',
+  'p2' => '16',
+  'p3' => '37',
+  'p4' => '80',
+  'p5' => '0',
+  'p6' => '0',
+  'p7' => '0',
+  'p8' => '0',
+  'p9' => '0',
+  'updated' => '0',
+))
+->values(array(
+  'menu_name' => 'navigation',
+  'mlid' => '81',
+  'plid' => '37',
+  'link_path' => 'admin/build/menu-customize/secondary-links',
+  'router_path' => 'admin/build/menu-customize/%',
+  'link_title' => 'Secondary links',
+  'options' => 'a:0:{}',
+  'module' => 'menu',
+  'hidden' => '0',
+  'external' => '0',
+  'has_children' => '0',
+  'expanded' => '0',
+  'weight' => '0',
+  'depth' => '4',
+  'customized' => '0',
+  'p1' => '2',
+  'p2' => '16',
+  'p3' => '37',
+  'p4' => '81',
+  'p5' => '0',
+  'p6' => '0',
+  'p7' => '0',
+  'p8' => '0',
+  'p9' => '0',
+  'updated' => '0',
+))
+->values(array(
+  'menu_name' => 'navigation',
+  'mlid' => '82',
+  'plid' => '0',
+  'link_path' => 'taxonomy/autocomplete',
+  'router_path' => 'taxonomy/autocomplete',
+  'link_title' => 'Autocomplete taxonomy',
+  'options' => 'a:0:{}',
+  'module' => 'system',
+  'hidden' => '-1',
+  'external' => '0',
+  'has_children' => '0',
+  'expanded' => '0',
+  'weight' => '0',
+  'depth' => '1',
+  'customized' => '0',
+  'p1' => '82',
+  'p2' => '0',
+  'p3' => '0',
+  'p4' => '0',
+  'p5' => '0',
+  'p6' => '0',
+  'p7' => '0',
+  'p8' => '0',
+  'p9' => '0',
+  'updated' => '0',
+))
+->values(array(
+  'menu_name' => 'navigation',
+  'mlid' => '83',
+  'plid' => '15',
+  'link_path' => 'admin/reports/updates',
+  'router_path' => 'admin/reports/updates',
+  'link_title' => 'Available updates',
+  'options' => 'a:1:{s:10:"attributes";a:1:{s:5:"title";s:82:"Get a status report about available updates for your installed modules and themes.";}}',
+  'module' => 'system',
+  'hidden' => '0',
+  'external' => '0',
+  'has_children' => '0',
+  'expanded' => '0',
+  'weight' => '10',
+  'depth' => '3',
+  'customized' => '0',
+  'p1' => '2',
+  'p2' => '15',
+  'p3' => '83',
+  'p4' => '0',
+  'p5' => '0',
+  'p6' => '0',
+  'p7' => '0',
+  'p8' => '0',
+  'p9' => '0',
+  'updated' => '0',
+))
+->values(array(
+  'menu_name' => 'navigation',
+  'mlid' => '84',
+  'plid' => '11',
+  'link_path' => 'node/add/page',
+  'router_path' => 'node/add/page',
+  'link_title' => 'Page',
+  'options' => "a:1:{s:10:\"attributes\";a:1:{s:5:\"title\";s:296:\"A <em>page</em>, similar in form to a <em>story</em>, is a simple method for creating and displaying information that rarely changes, such as an \"About us\" section of a website. By default, a <em>page</em> entry does not allow visitor comments and is not featured on the site's initial home page.\";}}",
+  'module' => 'system',
+  'hidden' => '0',
+  'external' => '0',
+  'has_children' => '0',
+  'expanded' => '0',
+  'weight' => '0',
+  'depth' => '2',
+  'customized' => '0',
+  'p1' => '11',
+  'p2' => '84',
+  'p3' => '0',
+  'p4' => '0',
+  'p5' => '0',
+  'p6' => '0',
+  'p7' => '0',
+  'p8' => '0',
+  'p9' => '0',
+  'updated' => '0',
+))
+->values(array(
+  'menu_name' => 'navigation',
+  'mlid' => '85',
+  'plid' => '15',
+  'link_path' => 'admin/reports/dblog',
+  'router_path' => 'admin/reports/dblog',
+  'link_title' => 'Recent log entries',
+  'options' => 'a:1:{s:10:"attributes";a:1:{s:5:"title";s:43:"View events that have recently been logged.";}}',
+  'module' => 'system',
+  'hidden' => '0',
+  'external' => '0',
+  'has_children' => '0',
+  'expanded' => '0',
+  'weight' => '-1',
+  'depth' => '3',
+  'customized' => '0',
+  'p1' => '2',
+  'p2' => '15',
+  'p3' => '85',
+  'p4' => '0',
+  'p5' => '0',
+  'p6' => '0',
+  'p7' => '0',
+  'p8' => '0',
+  'p9' => '0',
+  'updated' => '0',
+))
+->values(array(
+  'menu_name' => 'navigation',
+  'mlid' => '86',
+  'plid' => '11',
+  'link_path' => 'node/add/story',
+  'router_path' => 'node/add/story',
+  'link_title' => 'Story',
+  'options' => "a:1:{s:10:\"attributes\";a:1:{s:5:\"title\";s:392:\"A <em>story</em>, similar in form to a <em>page</em>, is ideal for creating and displaying content that informs or engages website visitors. Press releases, site announcements, and informal blog-like entries may all be created with a <em>story</em> entry. By default, a <em>story</em> entry is automatically featured on the site's initial home page, and provides the ability to post comments.\";}}",
+  'module' => 'system',
+  'hidden' => '0',
+  'external' => '0',
+  'has_children' => '0',
+  'expanded' => '0',
+  'weight' => '0',
+  'depth' => '2',
+  'customized' => '0',
+  'p1' => '11',
+  'p2' => '86',
+  'p3' => '0',
+  'p4' => '0',
+  'p5' => '0',
+  'p6' => '0',
+  'p7' => '0',
+  'p8' => '0',
+  'p9' => '0',
+  'updated' => '0',
+))
+->values(array(
+  'menu_name' => 'navigation',
+  'mlid' => '87',
+  'plid' => '10',
+  'link_path' => 'admin/content/taxonomy',
+  'router_path' => 'admin/content/taxonomy',
+  'link_title' => 'Taxonomy',
+  'options' => 'a:1:{s:10:"attributes";a:1:{s:5:"title";s:67:"Manage tagging, categorization, and classification of your content.";}}',
+  'module' => 'system',
+  'hidden' => '0',
+  'external' => '0',
+  'has_children' => '0',
+  'expanded' => '0',
+  'weight' => '0',
+  'depth' => '3',
+  'customized' => '0',
+  'p1' => '2',
+  'p2' => '10',
+  'p3' => '87',
+  'p4' => '0',
+  'p5' => '0',
+  'p6' => '0',
+  'p7' => '0',
+  'p8' => '0',
+  'p9' => '0',
+  'updated' => '0',
+))
+->values(array(
+  'menu_name' => 'navigation',
+  'mlid' => '88',
+  'plid' => '0',
+  'link_path' => 'taxonomy/term/%',
+  'router_path' => 'taxonomy/term/%',
+  'link_title' => 'Taxonomy term',
+  'options' => 'a:0:{}',
+  'module' => 'system',
+  'hidden' => '-1',
+  'external' => '0',
+  'has_children' => '0',
+  'expanded' => '0',
+  'weight' => '0',
+  'depth' => '1',
+  'customized' => '0',
+  'p1' => '88',
+  'p2' => '0',
+  'p3' => '0',
+  'p4' => '0',
+  'p5' => '0',
+  'p6' => '0',
+  'p7' => '0',
+  'p8' => '0',
+  'p9' => '0',
+  'updated' => '0',
+))
+->values(array(
+  'menu_name' => 'navigation',
+  'mlid' => '89',
+  'plid' => '15',
+  'link_path' => 'admin/reports/access-denied',
+  'router_path' => 'admin/reports/access-denied',
+  'link_title' => "Top 'access denied' errors",
+  'options' => "a:1:{s:10:\"attributes\";a:1:{s:5:\"title\";s:35:\"View 'access denied' errors (403s).\";}}",
+  'module' => 'system',
+  'hidden' => '0',
+  'external' => '0',
+  'has_children' => '0',
+  'expanded' => '0',
+  'weight' => '0',
+  'depth' => '3',
+  'customized' => '0',
+  'p1' => '2',
+  'p2' => '15',
+  'p3' => '89',
+  'p4' => '0',
+  'p5' => '0',
+  'p6' => '0',
+  'p7' => '0',
+  'p8' => '0',
+  'p9' => '0',
+  'updated' => '0',
+))
+->values(array(
+  'menu_name' => 'navigation',
+  'mlid' => '90',
+  'plid' => '15',
+  'link_path' => 'admin/reports/page-not-found',
+  'router_path' => 'admin/reports/page-not-found',
+  'link_title' => "Top 'page not found' errors",
+  'options' => "a:1:{s:10:\"attributes\";a:1:{s:5:\"title\";s:36:\"View 'page not found' errors (404s).\";}}",
+  'module' => 'system',
+  'hidden' => '0',
+  'external' => '0',
+  'has_children' => '0',
+  'expanded' => '0',
+  'weight' => '0',
+  'depth' => '3',
+  'customized' => '0',
+  'p1' => '2',
+  'p2' => '15',
+  'p3' => '90',
+  'p4' => '0',
+  'p5' => '0',
+  'p6' => '0',
+  'p7' => '0',
+  'p8' => '0',
+  'p9' => '0',
+  'updated' => '0',
+))
+->values(array(
+  'menu_name' => 'navigation',
+  'mlid' => '91',
+  'plid' => '16',
+  'link_path' => 'admin/build/path',
+  'router_path' => 'admin/build/path',
+  'link_title' => 'URL aliases',
+  'options' => "a:1:{s:10:\"attributes\";a:1:{s:5:\"title\";s:46:\"Change your site's URL paths by aliasing them.\";}}",
+  'module' => 'system',
+  'hidden' => '0',
+  'external' => '0',
+  'has_children' => '0',
+  'expanded' => '0',
+  'weight' => '0',
+  'depth' => '3',
+  'customized' => '0',
+  'p1' => '2',
+  'p2' => '16',
+  'p3' => '91',
+  'p4' => '0',
+  'p5' => '0',
+  'p6' => '0',
+  'p7' => '0',
+  'p8' => '0',
+  'p9' => '0',
+  'updated' => '0',
+))
+->values(array(
+  'menu_name' => 'navigation',
+  'mlid' => '92',
+  'plid' => '36',
+  'link_path' => 'admin/settings/logging/dblog',
+  'router_path' => 'admin/settings/logging/dblog',
+  'link_title' => 'Database logging',
+  'options' => 'a:1:{s:10:"attributes";a:1:{s:5:"title";s:169:"Settings for logging to the Drupal database logs. This is the most common method for small to medium sites on shared hosting. The logs are viewable from the admin pages.";}}',
+  'module' => 'system',
+  'hidden' => '0',
+  'external' => '0',
+  'has_children' => '0',
+  'expanded' => '0',
+  'weight' => '0',
+  'depth' => '4',
+  'customized' => '0',
+  'p1' => '2',
+  'p2' => '17',
+  'p3' => '36',
+  'p4' => '92',
+  'p5' => '0',
+  'p6' => '0',
+  'p7' => '0',
+  'p8' => '0',
+  'p9' => '0',
+  'updated' => '0',
+))
+->values(array(
+  'menu_name' => 'navigation',
+  'mlid' => '93',
+  'plid' => '91',
+  'link_path' => 'admin/build/path/delete',
+  'router_path' => 'admin/build/path/delete',
+  'link_title' => 'Delete alias',
+  'options' => 'a:0:{}',
+  'module' => 'system',
+  'hidden' => '-1',
+  'external' => '0',
+  'has_children' => '0',
+  'expanded' => '0',
+  'weight' => '0',
+  'depth' => '4',
+  'customized' => '0',
+  'p1' => '2',
+  'p2' => '16',
+  'p3' => '91',
+  'p4' => '93',
+  'p5' => '0',
+  'p6' => '0',
+  'p7' => '0',
+  'p8' => '0',
+  'p9' => '0',
+  'updated' => '0',
+))
+->values(array(
+  'menu_name' => 'navigation',
+  'mlid' => '94',
+  'plid' => '15',
+  'link_path' => 'admin/reports/event/%',
+  'router_path' => 'admin/reports/event/%',
+  'link_title' => 'Details',
+  'options' => 'a:0:{}',
+  'module' => 'system',
+  'hidden' => '-1',
+  'external' => '0',
+  'has_children' => '0',
+  'expanded' => '0',
+  'weight' => '0',
+  'depth' => '3',
+  'customized' => '0',
+  'p1' => '2',
+  'p2' => '15',
+  'p3' => '94',
+  'p4' => '0',
+  'p5' => '0',
+  'p6' => '0',
+  'p7' => '0',
+  'p8' => '0',
+  'p9' => '0',
+  'updated' => '0',
+))
+->values(array(
+  'menu_name' => 'navigation',
+  'mlid' => '95',
+  'plid' => '91',
+  'link_path' => 'admin/build/path/edit',
+  'router_path' => 'admin/build/path/edit',
+  'link_title' => 'Edit alias',
+  'options' => 'a:0:{}',
+  'module' => 'system',
+  'hidden' => '-1',
+  'external' => '0',
+  'has_children' => '0',
+  'expanded' => '0',
+  'weight' => '0',
+  'depth' => '4',
+  'customized' => '0',
+  'p1' => '2',
+  'p2' => '16',
+  'p3' => '91',
+  'p4' => '95',
+  'p5' => '0',
+  'p6' => '0',
+  'p7' => '0',
+  'p8' => '0',
+  'p9' => '0',
+  'updated' => '0',
+))
+->values(array(
+  'menu_name' => 'navigation',
+  'mlid' => '96',
+  'plid' => '87',
+  'link_path' => 'admin/content/taxonomy/%',
+  'router_path' => 'admin/content/taxonomy/%',
+  'link_title' => 'List terms',
+  'options' => 'a:0:{}',
+  'module' => 'system',
+  'hidden' => '-1',
+  'external' => '0',
+  'has_children' => '0',
+  'expanded' => '0',
+  'weight' => '0',
+  'depth' => '4',
+  'customized' => '0',
+  'p1' => '2',
+  'p2' => '10',
+  'p3' => '87',
+  'p4' => '96',
+  'p5' => '0',
+  'p6' => '0',
+  'p7' => '0',
+  'p8' => '0',
+  'p9' => '0',
+  'updated' => '0',
+))
+->values(array(
+  'menu_name' => 'navigation',
+  'mlid' => '97',
+  'plid' => '83',
+  'link_path' => 'admin/reports/updates/check',
+  'router_path' => 'admin/reports/updates/check',
+  'link_title' => 'Manual update check',
+  'options' => 'a:0:{}',
+  'module' => 'system',
+  'hidden' => '-1',
+  'external' => '0',
+  'has_children' => '0',
+  'expanded' => '0',
+  'weight' => '0',
+  'depth' => '4',
+  'customized' => '0',
+  'p1' => '2',
+  'p2' => '15',
+  'p3' => '83',
+  'p4' => '97',
+  'p5' => '0',
+  'p6' => '0',
+  'p7' => '0',
+  'p8' => '0',
+  'p9' => '0',
+  'updated' => '0',
+))
+->values(array(
+  'menu_name' => 'navigation',
+  'mlid' => '98',
+  'plid' => '10',
+  'link_path' => 'admin/content/node-type/page',
+  'router_path' => 'admin/content/node-type/page',
+  'link_title' => 'Page',
+  'options' => 'a:0:{}',
+  'module' => 'system',
+  'hidden' => '-1',
+  'external' => '0',
+  'has_children' => '0',
+  'expanded' => '0',
+  'weight' => '0',
+  'depth' => '3',
+  'customized' => '0',
+  'p1' => '2',
+  'p2' => '10',
+  'p3' => '98',
+  'p4' => '0',
+  'p5' => '0',
+  'p6' => '0',
+  'p7' => '0',
+  'p8' => '0',
+  'p9' => '0',
+  'updated' => '0',
+))
+->values(array(
+  'menu_name' => 'navigation',
+  'mlid' => '99',
+  'plid' => '10',
+  'link_path' => 'admin/content/node-type/story',
+  'router_path' => 'admin/content/node-type/story',
+  'link_title' => 'Story',
+  'options' => 'a:0:{}',
+  'module' => 'system',
+  'hidden' => '-1',
+  'external' => '0',
+  'has_children' => '0',
+  'expanded' => '0',
+  'weight' => '0',
+  'depth' => '3',
+  'customized' => '0',
+  'p1' => '2',
+  'p2' => '10',
+  'p3' => '99',
+  'p4' => '0',
+  'p5' => '0',
+  'p6' => '0',
+  'p7' => '0',
+  'p8' => '0',
+  'p9' => '0',
+  'updated' => '0',
+))
+->values(array(
+  'menu_name' => 'navigation',
+  'mlid' => '100',
+  'plid' => '0',
+  'link_path' => 'admin/content/node-type/page/delete',
+  'router_path' => 'admin/content/node-type/page/delete',
+  'link_title' => 'Delete',
+  'options' => 'a:0:{}',
+  'module' => 'system',
+  'hidden' => '-1',
+  'external' => '0',
+  'has_children' => '0',
+  'expanded' => '0',
+  'weight' => '0',
+  'depth' => '1',
+  'customized' => '0',
+  'p1' => '100',
+  'p2' => '0',
+  'p3' => '0',
+  'p4' => '0',
+  'p5' => '0',
+  'p6' => '0',
+  'p7' => '0',
+  'p8' => '0',
+  'p9' => '0',
+  'updated' => '0',
+))
+->values(array(
+  'menu_name' => 'navigation',
+  'mlid' => '101',
+  'plid' => '0',
+  'link_path' => 'admin/content/node-type/story/delete',
+  'router_path' => 'admin/content/node-type/story/delete',
+  'link_title' => 'Delete',
+  'options' => 'a:0:{}',
+  'module' => 'system',
+  'hidden' => '-1',
+  'external' => '0',
+  'has_children' => '0',
+  'expanded' => '0',
+  'weight' => '0',
+  'depth' => '1',
+  'customized' => '0',
+  'p1' => '101',
+  'p2' => '0',
+  'p3' => '0',
+  'p4' => '0',
+  'p5' => '0',
+  'p6' => '0',
+  'p7' => '0',
+  'p8' => '0',
+  'p9' => '0',
+  'updated' => '0',
+))
+->values(array(
+  'menu_name' => 'navigation',
+  'mlid' => '102',
+  'plid' => '87',
+  'link_path' => 'admin/content/taxonomy/edit/term',
+  'router_path' => 'admin/content/taxonomy/edit/term',
+  'link_title' => 'Edit term',
+  'options' => 'a:0:{}',
+  'module' => 'system',
+  'hidden' => '-1',
+  'external' => '0',
+  'has_children' => '0',
+  'expanded' => '0',
+  'weight' => '0',
+  'depth' => '4',
+  'customized' => '0',
+  'p1' => '2',
+  'p2' => '10',
+  'p3' => '87',
+  'p4' => '102',
+  'p5' => '0',
+  'p6' => '0',
+  'p7' => '0',
+  'p8' => '0',
+  'p9' => '0',
+  'updated' => '0',
+))
+->values(array(
+  'menu_name' => 'navigation',
+  'mlid' => '103',
+  'plid' => '87',
+  'link_path' => 'admin/content/taxonomy/edit/vocabulary/%',
+  'router_path' => 'admin/content/taxonomy/edit/vocabulary/%',
+  'link_title' => 'Edit vocabulary',
+  'options' => 'a:0:{}',
+  'module' => 'system',
+  'hidden' => '-1',
+  'external' => '0',
+  'has_children' => '0',
+  'expanded' => '0',
+  'weight' => '0',
+  'depth' => '4',
+  'customized' => '0',
+  'p1' => '2',
+  'p2' => '10',
+  'p3' => '87',
+  'p4' => '103',
+  'p5' => '0',
+  'p6' => '0',
+  'p7' => '0',
+  'p8' => '0',
+  'p9' => '0',
+  'updated' => '0',
+))
+->values(array(
+  'menu_name' => 'navigation',
+  'mlid' => '104',
+  'plid' => '0',
+  'link_path' => 'poll',
+  'router_path' => 'poll',
+  'link_title' => 'Polls',
+  'options' => 'a:0:{}',
+  'module' => 'system',
+  'hidden' => '1',
+  'external' => '0',
+  'has_children' => '0',
+  'expanded' => '0',
+  'weight' => '0',
+  'depth' => '1',
+  'customized' => '0',
+  'p1' => '104',
+  'p2' => '0',
+  'p3' => '0',
+  'p4' => '0',
+  'p5' => '0',
+  'p6' => '0',
+  'p7' => '0',
+  'p8' => '0',
+  'p9' => '0',
+  'updated' => '0',
+))
+->values(array(
+  'menu_name' => 'navigation',
+  'mlid' => '105',
+  'plid' => '104',
+  'link_path' => 'poll/js',
+  'router_path' => 'poll/js',
+  'link_title' => 'Javascript Choice Form',
+  'options' => 'a:0:{}',
+  'module' => 'system',
+  'hidden' => '-1',
+  'external' => '0',
+  'has_children' => '0',
+  'expanded' => '0',
+  'weight' => '0',
+  'depth' => '2',
+  'customized' => '0',
+  'p1' => '104',
+  'p2' => '105',
+  'p3' => '0',
+  'p4' => '0',
+  'p5' => '0',
+  'p6' => '0',
+  'p7' => '0',
+  'p8' => '0',
+  'p9' => '0',
+  'updated' => '0',
+))
+->values(array(
+  'menu_name' => 'navigation',
+  'mlid' => '106',
+  'plid' => '11',
+  'link_path' => 'node/add/poll',
+  'router_path' => 'node/add/poll',
+  'link_title' => 'Poll',
+  'options' => 'a:1:{s:10:"attributes";a:1:{s:5:"title";s:191:"A <em>poll</em> is a question with a set of possible responses. A <em>poll</em>, once created, automatically provides a simple running count of the number of votes received for each response.";}}',
+  'module' => 'system',
+  'hidden' => '0',
+  'external' => '0',
+  'has_children' => '0',
+  'expanded' => '0',
+  'weight' => '0',
+  'depth' => '2',
+  'customized' => '0',
+  'p1' => '11',
+  'p2' => '106',
+  'p3' => '0',
+  'p4' => '0',
+  'p5' => '0',
+  'p6' => '0',
+  'p7' => '0',
+  'p8' => '0',
+  'p9' => '0',
+  'updated' => '0',
+))
+->values(array(
+  'menu_name' => 'navigation',
+  'mlid' => '107',
+  'plid' => '10',
+  'link_path' => 'admin/content/node-type/poll',
+  'router_path' => 'admin/content/node-type/poll',
+  'link_title' => 'Poll',
+  'options' => 'a:0:{}',
+  'module' => 'system',
+  'hidden' => '-1',
+  'external' => '0',
+  'has_children' => '0',
+  'expanded' => '0',
+  'weight' => '0',
+  'depth' => '3',
+  'customized' => '0',
+  'p1' => '2',
+  'p2' => '10',
+  'p3' => '107',
+  'p4' => '0',
+  'p5' => '0',
+  'p6' => '0',
+  'p7' => '0',
+  'p8' => '0',
+  'p9' => '0',
+  'updated' => '0',
+))
+->values(array(
+  'menu_name' => 'navigation',
+  'mlid' => '108',
+  'plid' => '0',
+  'link_path' => 'admin/content/node-type/poll/delete',
+  'router_path' => 'admin/content/node-type/poll/delete',
+  'link_title' => 'Delete',
+  'options' => 'a:0:{}',
+  'module' => 'system',
+  'hidden' => '-1',
+  'external' => '0',
+  'has_children' => '0',
+  'expanded' => '0',
+  'weight' => '0',
+  'depth' => '1',
+  'customized' => '0',
+  'p1' => '108',
+  'p2' => '0',
+  'p3' => '0',
+  'p4' => '0',
+  'p5' => '0',
+  'p6' => '0',
+  'p7' => '0',
+  'p8' => '0',
+  'p9' => '0',
+  'updated' => '0',
+))
+->values(array(
+  'menu_name' => 'navigation',
+  'mlid' => '109',
+  'plid' => '2',
+  'link_path' => 'admin/help',
+  'router_path' => 'admin/help',
+  'link_title' => 'Help',
+  'options' => 'a:0:{}',
+  'module' => 'system',
+  'hidden' => '0',
+  'external' => '0',
+  'has_children' => '0',
+  'expanded' => '0',
+  'weight' => '9',
+  'depth' => '2',
+  'customized' => '0',
+  'p1' => '2',
+  'p2' => '109',
+  'p3' => '0',
+  'p4' => '0',
+  'p5' => '0',
+  'p6' => '0',
+  'p7' => '0',
+  'p8' => '0',
+  'p9' => '0',
+  'updated' => '0',
+))
+->values(array(
+  'menu_name' => 'navigation',
+  'mlid' => '110',
+  'plid' => '109',
+  'link_path' => 'admin/help/block',
+  'router_path' => 'admin/help/block',
+  'link_title' => 'block',
+  'options' => 'a:0:{}',
+  'module' => 'system',
+  'hidden' => '-1',
+  'external' => '0',
+  'has_children' => '0',
+  'expanded' => '0',
+  'weight' => '0',
+  'depth' => '3',
+  'customized' => '0',
+  'p1' => '2',
+  'p2' => '109',
+  'p3' => '110',
+  'p4' => '0',
+  'p5' => '0',
+  'p6' => '0',
+  'p7' => '0',
+  'p8' => '0',
+  'p9' => '0',
+  'updated' => '0',
+))
+->values(array(
+  'menu_name' => 'navigation',
+  'mlid' => '111',
+  'plid' => '109',
+  'link_path' => 'admin/help/color',
+  'router_path' => 'admin/help/color',
+  'link_title' => 'color',
+  'options' => 'a:0:{}',
+  'module' => 'system',
+  'hidden' => '-1',
+  'external' => '0',
+  'has_children' => '0',
+  'expanded' => '0',
+  'weight' => '0',
+  'depth' => '3',
+  'customized' => '0',
+  'p1' => '2',
+  'p2' => '109',
+  'p3' => '111',
+  'p4' => '0',
+  'p5' => '0',
+  'p6' => '0',
+  'p7' => '0',
+  'p8' => '0',
+  'p9' => '0',
+  'updated' => '0',
+))
+->values(array(
+  'menu_name' => 'navigation',
+  'mlid' => '112',
+  'plid' => '109',
+  'link_path' => 'admin/help/comment',
+  'router_path' => 'admin/help/comment',
+  'link_title' => 'comment',
+  'options' => 'a:0:{}',
+  'module' => 'system',
+  'hidden' => '-1',
+  'external' => '0',
+  'has_children' => '0',
+  'expanded' => '0',
+  'weight' => '0',
+  'depth' => '3',
+  'customized' => '0',
+  'p1' => '2',
+  'p2' => '109',
+  'p3' => '112',
+  'p4' => '0',
+  'p5' => '0',
+  'p6' => '0',
+  'p7' => '0',
+  'p8' => '0',
+  'p9' => '0',
+  'updated' => '0',
+))
+->values(array(
+  'menu_name' => 'navigation',
+  'mlid' => '113',
+  'plid' => '109',
+  'link_path' => 'admin/help/dblog',
+  'router_path' => 'admin/help/dblog',
+  'link_title' => 'dblog',
+  'options' => 'a:0:{}',
+  'module' => 'system',
+  'hidden' => '-1',
+  'external' => '0',
+  'has_children' => '0',
+  'expanded' => '0',
+  'weight' => '0',
+  'depth' => '3',
+  'customized' => '0',
+  'p1' => '2',
+  'p2' => '109',
+  'p3' => '113',
+  'p4' => '0',
+  'p5' => '0',
+  'p6' => '0',
+  'p7' => '0',
+  'p8' => '0',
+  'p9' => '0',
+  'updated' => '0',
+))
+->values(array(
+  'menu_name' => 'navigation',
+  'mlid' => '114',
+  'plid' => '109',
+  'link_path' => 'admin/help/filter',
+  'router_path' => 'admin/help/filter',
+  'link_title' => 'filter',
+  'options' => 'a:0:{}',
+  'module' => 'system',
+  'hidden' => '-1',
+  'external' => '0',
+  'has_children' => '0',
+  'expanded' => '0',
+  'weight' => '0',
+  'depth' => '3',
+  'customized' => '0',
+  'p1' => '2',
+  'p2' => '109',
+  'p3' => '114',
+  'p4' => '0',
+  'p5' => '0',
+  'p6' => '0',
+  'p7' => '0',
+  'p8' => '0',
+  'p9' => '0',
+  'updated' => '0',
+))
+->values(array(
+  'menu_name' => 'navigation',
+  'mlid' => '115',
+  'plid' => '109',
+  'link_path' => 'admin/help/help',
+  'router_path' => 'admin/help/help',
+  'link_title' => 'help',
+  'options' => 'a:0:{}',
+  'module' => 'system',
+  'hidden' => '-1',
+  'external' => '0',
+  'has_children' => '0',
+  'expanded' => '0',
+  'weight' => '0',
+  'depth' => '3',
+  'customized' => '0',
+  'p1' => '2',
+  'p2' => '109',
+  'p3' => '115',
+  'p4' => '0',
+  'p5' => '0',
+  'p6' => '0',
+  'p7' => '0',
+  'p8' => '0',
+  'p9' => '0',
+  'updated' => '0',
+))
+->values(array(
+  'menu_name' => 'navigation',
+  'mlid' => '116',
+  'plid' => '109',
+  'link_path' => 'admin/help/menu',
+  'router_path' => 'admin/help/menu',
+  'link_title' => 'menu',
+  'options' => 'a:0:{}',
+  'module' => 'system',
+  'hidden' => '-1',
+  'external' => '0',
+  'has_children' => '0',
+  'expanded' => '0',
+  'weight' => '0',
+  'depth' => '3',
+  'customized' => '0',
+  'p1' => '2',
+  'p2' => '109',
+  'p3' => '116',
+  'p4' => '0',
+  'p5' => '0',
+  'p6' => '0',
+  'p7' => '0',
+  'p8' => '0',
+  'p9' => '0',
+  'updated' => '0',
+))
+->values(array(
+  'menu_name' => 'navigation',
+  'mlid' => '117',
+  'plid' => '109',
+  'link_path' => 'admin/help/node',
+  'router_path' => 'admin/help/node',
+  'link_title' => 'node',
+  'options' => 'a:0:{}',
+  'module' => 'system',
+  'hidden' => '-1',
+  'external' => '0',
+  'has_children' => '0',
+  'expanded' => '0',
+  'weight' => '0',
+  'depth' => '3',
+  'customized' => '0',
+  'p1' => '2',
+  'p2' => '109',
+  'p3' => '117',
+  'p4' => '0',
+  'p5' => '0',
+  'p6' => '0',
+  'p7' => '0',
+  'p8' => '0',
+  'p9' => '0',
+  'updated' => '0',
+))
+->values(array(
+  'menu_name' => 'navigation',
+  'mlid' => '118',
+  'plid' => '109',
+  'link_path' => 'admin/help/path',
+  'router_path' => 'admin/help/path',
+  'link_title' => 'path',
+  'options' => 'a:0:{}',
+  'module' => 'system',
+  'hidden' => '-1',
+  'external' => '0',
+  'has_children' => '0',
+  'expanded' => '0',
+  'weight' => '0',
+  'depth' => '3',
+  'customized' => '0',
+  'p1' => '2',
+  'p2' => '109',
+  'p3' => '118',
+  'p4' => '0',
+  'p5' => '0',
+  'p6' => '0',
+  'p7' => '0',
+  'p8' => '0',
+  'p9' => '0',
+  'updated' => '0',
+))
+->values(array(
+  'menu_name' => 'navigation',
+  'mlid' => '119',
+  'plid' => '109',
+  'link_path' => 'admin/help/poll',
+  'router_path' => 'admin/help/poll',
+  'link_title' => 'poll',
+  'options' => 'a:0:{}',
+  'module' => 'system',
+  'hidden' => '-1',
+  'external' => '0',
+  'has_children' => '0',
+  'expanded' => '0',
+  'weight' => '0',
+  'depth' => '3',
+  'customized' => '0',
+  'p1' => '2',
+  'p2' => '109',
+  'p3' => '119',
+  'p4' => '0',
+  'p5' => '0',
+  'p6' => '0',
+  'p7' => '0',
+  'p8' => '0',
+  'p9' => '0',
+  'updated' => '0',
+))
+->values(array(
+  'menu_name' => 'navigation',
+  'mlid' => '120',
+  'plid' => '109',
+  'link_path' => 'admin/help/system',
+  'router_path' => 'admin/help/system',
+  'link_title' => 'system',
+  'options' => 'a:0:{}',
+  'module' => 'system',
+  'hidden' => '-1',
+  'external' => '0',
+  'has_children' => '0',
+  'expanded' => '0',
+  'weight' => '0',
+  'depth' => '3',
+  'customized' => '0',
+  'p1' => '2',
+  'p2' => '109',
+  'p3' => '120',
+  'p4' => '0',
+  'p5' => '0',
+  'p6' => '0',
+  'p7' => '0',
+  'p8' => '0',
+  'p9' => '0',
+  'updated' => '0',
+))
+->values(array(
+  'menu_name' => 'navigation',
+  'mlid' => '121',
+  'plid' => '109',
+  'link_path' => 'admin/help/taxonomy',
+  'router_path' => 'admin/help/taxonomy',
+  'link_title' => 'taxonomy',
+  'options' => 'a:0:{}',
+  'module' => 'system',
+  'hidden' => '-1',
+  'external' => '0',
+  'has_children' => '0',
+  'expanded' => '0',
+  'weight' => '0',
+  'depth' => '3',
+  'customized' => '0',
+  'p1' => '2',
+  'p2' => '109',
+  'p3' => '121',
+  'p4' => '0',
+  'p5' => '0',
+  'p6' => '0',
+  'p7' => '0',
+  'p8' => '0',
+  'p9' => '0',
+  'updated' => '0',
+))
+->values(array(
+  'menu_name' => 'navigation',
+  'mlid' => '122',
+  'plid' => '109',
+  'link_path' => 'admin/help/update',
+  'router_path' => 'admin/help/update',
+  'link_title' => 'update',
+  'options' => 'a:0:{}',
+  'module' => 'system',
+  'hidden' => '-1',
+  'external' => '0',
+  'has_children' => '0',
+  'expanded' => '0',
+  'weight' => '0',
+  'depth' => '3',
+  'customized' => '0',
+  'p1' => '2',
+  'p2' => '109',
+  'p3' => '122',
+  'p4' => '0',
+  'p5' => '0',
+  'p6' => '0',
+  'p7' => '0',
+  'p8' => '0',
+  'p9' => '0',
+  'updated' => '0',
+))
+->values(array(
+  'menu_name' => 'navigation',
+  'mlid' => '123',
+  'plid' => '109',
+  'link_path' => 'admin/help/user',
+  'router_path' => 'admin/help/user',
+  'link_title' => 'user',
+  'options' => 'a:0:{}',
+  'module' => 'system',
+  'hidden' => '-1',
+  'external' => '0',
+  'has_children' => '0',
+  'expanded' => '0',
+  'weight' => '0',
+  'depth' => '3',
+  'customized' => '0',
+  'p1' => '2',
+  'p2' => '109',
+  'p3' => '123',
+  'p4' => '0',
+  'p5' => '0',
+  'p6' => '0',
+  'p7' => '0',
+  'p8' => '0',
+  'p9' => '0',
+  'updated' => '0',
+))
+->execute();
+
+db_create_table('menu_router', array(
+  'fields' => array(
+    'path' => array(
+      'type' => 'varchar',
+      'length' => 255,
+      'not null' => TRUE,
+      'default' => '',
+    ),
+    'load_functions' => array(
+      'type' => 'text',
+      'not null' => TRUE,
+    ),
+    'to_arg_functions' => array(
+      'type' => 'text',
+      'not null' => TRUE,
+    ),
+    'access_callback' => array(
+      'type' => 'varchar',
+      'length' => 255,
+      'not null' => TRUE,
+      'default' => '',
+    ),
+    'access_arguments' => array(
+      'type' => 'text',
+      'not null' => FALSE,
+    ),
+    'page_callback' => array(
+      'type' => 'varchar',
+      'length' => 255,
+      'not null' => TRUE,
+      'default' => '',
+    ),
+    'page_arguments' => array(
+      'type' => 'text',
+      'not null' => FALSE,
+    ),
+    'fit' => array(
+      'type' => 'int',
+      'not null' => TRUE,
+      'default' => 0,
+    ),
+    'number_parts' => array(
+      'type' => 'int',
+      'not null' => TRUE,
+      'default' => 0,
+      'size' => 'small',
+    ),
+    'tab_parent' => array(
+      'type' => 'varchar',
+      'length' => 255,
+      'not null' => TRUE,
+      'default' => '',
+    ),
+    'tab_root' => array(
+      'type' => 'varchar',
+      'length' => 255,
+      'not null' => TRUE,
+      'default' => '',
+    ),
+    'title' => array(
+      'type' => 'varchar',
+      'length' => 255,
+      'not null' => TRUE,
+      'default' => '',
+    ),
+    'title_callback' => array(
+      'type' => 'varchar',
+      'length' => 255,
+      'not null' => TRUE,
+      'default' => '',
+    ),
+    'title_arguments' => array(
+      'type' => 'varchar',
+      'length' => 255,
+      'not null' => TRUE,
+      'default' => '',
+    ),
+    'type' => array(
+      'type' => 'int',
+      'not null' => TRUE,
+      'default' => 0,
+    ),
+    'block_callback' => array(
+      'type' => 'varchar',
+      'length' => 255,
+      'not null' => TRUE,
+      'default' => '',
+    ),
+    'description' => array(
+      'type' => 'text',
+      'not null' => TRUE,
+    ),
+    'position' => array(
+      'type' => 'varchar',
+      'length' => 255,
+      'not null' => TRUE,
+      'default' => '',
+    ),
+    'weight' => array(
+      'type' => 'int',
+      'not null' => TRUE,
+      'default' => 0,
+    ),
+    'file' => array(
+      'type' => 'text',
+      'size' => 'medium',
+    ),
+  ),
+  'indexes' => array(
+    'fit' => array(
+      'fit',
+    ),
+    'tab_parent' => array(
+      'tab_parent',
+    ),
+    'tab_root_weight_title' => array(
+      array(
+        'tab_root',
+        64,
+      ),
+      'weight',
+      'title',
+    ),
+  ),
+  'primary key' => array(
+    'path',
+  ),
+  'module' => 'system',
+  'name' => 'menu_router',
+));
+db_insert('menu_router')->fields(array(
+  'path',
+  'load_functions',
+  'to_arg_functions',
+  'access_callback',
+  'access_arguments',
+  'page_callback',
+  'page_arguments',
+  'fit',
+  'number_parts',
+  'tab_parent',
+  'tab_root',
+  'title',
+  'title_callback',
+  'title_arguments',
+  'type',
+  'block_callback',
+  'description',
+  'position',
+  'weight',
+  'file',
+))
+->values(array(
+  'path' => 'admin',
+  'load_functions' => '',
+  'to_arg_functions' => '',
+  'access_callback' => 'user_access',
+  'access_arguments' => 'a:1:{i:0;s:27:"access administration pages";}',
+  'page_callback' => 'system_main_admin_page',
+  'page_arguments' => 'a:0:{}',
+  'fit' => '1',
+  'number_parts' => '1',
+  'tab_parent' => '',
+  'tab_root' => 'admin',
+  'title' => 'Administer',
+  'title_callback' => 't',
+  'title_arguments' => '',
+  'type' => '6',
+  'block_callback' => '',
+  'description' => '',
+  'position' => '',
+  'weight' => '9',
+  'file' => 'modules/system/system.admin.inc',
+))
+->values(array(
+  'path' => 'admin/build',
+  'load_functions' => '',
+  'to_arg_functions' => '',
+  'access_callback' => 'user_access',
+  'access_arguments' => 'a:1:{i:0;s:27:"access administration pages";}',
+  'page_callback' => 'system_admin_menu_block_page',
+  'page_arguments' => 'a:0:{}',
+  'fit' => '3',
+  'number_parts' => '2',
+  'tab_parent' => '',
+  'tab_root' => 'admin/build',
+  'title' => 'Site building',
+  'title_callback' => 't',
+  'title_arguments' => '',
+  'type' => '6',
+  'block_callback' => '',
+  'description' => 'Control how your site looks and feels.',
+  'position' => 'right',
+  'weight' => '-10',
+  'file' => 'modules/system/system.admin.inc',
+))
+->values(array(
+  'path' => 'admin/build/block',
+  'load_functions' => '',
+  'to_arg_functions' => '',
+  'access_callback' => 'user_access',
+  'access_arguments' => 'a:1:{i:0;s:17:"administer blocks";}',
+  'page_callback' => 'block_admin_display',
+  'page_arguments' => 'a:0:{}',
+  'fit' => '7',
+  'number_parts' => '3',
+  'tab_parent' => '',
+  'tab_root' => 'admin/build/block',
+  'title' => 'Blocks',
+  'title_callback' => 't',
+  'title_arguments' => '',
+  'type' => '6',
+  'block_callback' => '',
+  'description' => "Configure what block content appears in your site's sidebars and other regions.",
+  'position' => '',
+  'weight' => '0',
+  'file' => 'modules/block/block.admin.inc',
+))
+->values(array(
+  'path' => 'admin/build/block/add',
+  'load_functions' => '',
+  'to_arg_functions' => '',
+  'access_callback' => 'user_access',
+  'access_arguments' => 'a:1:{i:0;s:17:"administer blocks";}',
+  'page_callback' => 'drupal_get_form',
+  'page_arguments' => 'a:1:{i:0;s:20:"block_add_block_form";}',
+  'fit' => '15',
+  'number_parts' => '4',
+  'tab_parent' => 'admin/build/block',
+  'tab_root' => 'admin/build/block',
+  'title' => 'Add block',
+  'title_callback' => 't',
+  'title_arguments' => '',
+  'type' => '128',
+  'block_callback' => '',
+  'description' => '',
+  'position' => '',
+  'weight' => '0',
+  'file' => 'modules/block/block.admin.inc',
+))
+->values(array(
+  'path' => 'admin/build/block/configure',
+  'load_functions' => '',
+  'to_arg_functions' => '',
+  'access_callback' => 'user_access',
+  'access_arguments' => 'a:1:{i:0;s:17:"administer blocks";}',
+  'page_callback' => 'drupal_get_form',
+  'page_arguments' => 'a:1:{i:0;s:21:"block_admin_configure";}',
+  'fit' => '15',
+  'number_parts' => '4',
+  'tab_parent' => '',
+  'tab_root' => 'admin/build/block/configure',
+  'title' => 'Configure block',
+  'title_callback' => 't',
+  'title_arguments' => '',
+  'type' => '4',
+  'block_callback' => '',
+  'description' => '',
+  'position' => '',
+  'weight' => '0',
+  'file' => 'modules/block/block.admin.inc',
+))
+->values(array(
+  'path' => 'admin/build/block/delete',
+  'load_functions' => '',
+  'to_arg_functions' => '',
+  'access_callback' => 'user_access',
+  'access_arguments' => 'a:1:{i:0;s:17:"administer blocks";}',
+  'page_callback' => 'drupal_get_form',
+  'page_arguments' => 'a:1:{i:0;s:16:"block_box_delete";}',
+  'fit' => '15',
+  'number_parts' => '4',
+  'tab_parent' => '',
+  'tab_root' => 'admin/build/block/delete',
+  'title' => 'Delete block',
+  'title_callback' => 't',
+  'title_arguments' => '',
+  'type' => '4',
+  'block_callback' => '',
+  'description' => '',
+  'position' => '',
+  'weight' => '0',
+  'file' => 'modules/block/block.admin.inc',
+))
+->values(array(
+  'path' => 'admin/build/block/list',
+  'load_functions' => '',
+  'to_arg_functions' => '',
+  'access_callback' => 'user_access',
+  'access_arguments' => 'a:1:{i:0;s:17:"administer blocks";}',
+  'page_callback' => 'block_admin_display',
+  'page_arguments' => 'a:0:{}',
+  'fit' => '15',
+  'number_parts' => '4',
+  'tab_parent' => 'admin/build/block',
+  'tab_root' => 'admin/build/block',
+  'title' => 'List',
+  'title_callback' => 't',
+  'title_arguments' => '',
+  'type' => '136',
+  'block_callback' => '',
+  'description' => '',
+  'position' => '',
+  'weight' => '-10',
+  'file' => 'modules/block/block.admin.inc',
+))
+->values(array(
+  'path' => 'admin/build/block/list/bluemarine',
+  'load_functions' => '',
+  'to_arg_functions' => '',
+  'access_callback' => '_block_themes_access',
+  'access_arguments' => 'a:1:{i:0;O:8:"stdClass":12:{s:8:"filename";s:33:"themes/bluemarine/bluemarine.info";s:4:"name";s:10:"bluemarine";s:4:"type";s:5:"theme";s:5:"owner";s:45:"themes/engines/phptemplate/phptemplate.engine";s:6:"status";s:1:"0";s:8:"throttle";s:1:"0";s:9:"bootstrap";s:1:"0";s:14:"schema_version";s:2:"-1";s:6:"weight";s:1:"0";s:4:"info";a:11:{s:4:"name";s:10:"Bluemarine";s:11:"description";s:66:"Table-based multi-column theme with a marine and ash color scheme.";s:7:"version";s:8:"6.20-dev";s:4:"core";s:3:"6.x";s:6:"engine";s:11:"phptemplate";s:7:"regions";a:5:{s:4:"left";s:12:"Left sidebar";s:5:"right";s:13:"Right sidebar";s:7:"content";s:7:"Content";s:6:"header";s:6:"Header";s:6:"footer";s:6:"Footer";}s:8:"features";a:10:{i:0;s:20:"comment_user_picture";i:1;s:7:"favicon";i:2;s:7:"mission";i:3;s:4:"logo";i:4;s:4:"name";i:5;s:17:"node_user_picture";i:6;s:6:"search";i:7;s:6:"slogan";i:8;s:13:"primary_links";i:9;s:15:"secondary_links";}s:11:"stylesheets";a:1:{s:3:"all";a:1:{s:9:"style.css";s:27:"themes/bluemarine/style.css";}}s:7:"scripts";a:1:{s:9:"script.js";s:27:"themes/bluemarine/script.js";}s:10:"screenshot";s:32:"themes/bluemarine/screenshot.png";s:3:"php";s:5:"4.3.5";}s:11:"stylesheets";a:1:{s:3:"all";a:1:{s:9:"style.css";s:27:"themes/bluemarine/style.css";}}s:6:"engine";s:11:"phptemplate";}}',
+  'page_callback' => 'block_admin_display',
+  'page_arguments' => 'a:1:{i:0;s:10:"bluemarine";}',
+  'fit' => '31',
+  'number_parts' => '5',
+  'tab_parent' => 'admin/build/block/list',
+  'tab_root' => 'admin/build/block',
+  'title' => 'Bluemarine',
+  'title_callback' => 't',
+  'title_arguments' => '',
+  'type' => '128',
+  'block_callback' => '',
+  'description' => '',
+  'position' => '',
+  'weight' => '0',
+  'file' => 'modules/block/block.admin.inc',
+))
+->values(array(
+  'path' => 'admin/build/block/list/chameleon',
+  'load_functions' => '',
+  'to_arg_functions' => '',
+  'access_callback' => '_block_themes_access',
+  'access_arguments' => 'a:1:{i:0;O:8:"stdClass":11:{s:8:"filename";s:31:"themes/chameleon/chameleon.info";s:4:"name";s:9:"chameleon";s:4:"type";s:5:"theme";s:5:"owner";s:32:"themes/chameleon/chameleon.theme";s:6:"status";s:1:"0";s:8:"throttle";s:1:"0";s:9:"bootstrap";s:1:"0";s:14:"schema_version";s:2:"-1";s:6:"weight";s:1:"0";s:4:"info";a:10:{s:4:"name";s:9:"Chameleon";s:11:"description";s:42:"Minimalist tabled theme with light colors.";s:7:"regions";a:2:{s:4:"left";s:12:"Left sidebar";s:5:"right";s:13:"Right sidebar";}s:8:"features";a:4:{i:0;s:4:"logo";i:1;s:7:"favicon";i:2;s:4:"name";i:3;s:6:"slogan";}s:11:"stylesheets";a:1:{s:3:"all";a:2:{s:9:"style.css";s:26:"themes/chameleon/style.css";s:10:"common.css";s:27:"themes/chameleon/common.css";}}s:7:"version";s:8:"6.20-dev";s:4:"core";s:3:"6.x";s:7:"scripts";a:1:{s:9:"script.js";s:26:"themes/chameleon/script.js";}s:10:"screenshot";s:31:"themes/chameleon/screenshot.png";s:3:"php";s:5:"4.3.5";}s:11:"stylesheets";a:1:{s:3:"all";a:2:{s:9:"style.css";s:26:"themes/chameleon/style.css";s:10:"common.css";s:27:"themes/chameleon/common.css";}}}}',
+  'page_callback' => 'block_admin_display',
+  'page_arguments' => 'a:1:{i:0;s:9:"chameleon";}',
+  'fit' => '31',
+  'number_parts' => '5',
+  'tab_parent' => 'admin/build/block/list',
+  'tab_root' => 'admin/build/block',
+  'title' => 'Chameleon',
+  'title_callback' => 't',
+  'title_arguments' => '',
+  'type' => '128',
+  'block_callback' => '',
+  'description' => '',
+  'position' => '',
+  'weight' => '0',
+  'file' => 'modules/block/block.admin.inc',
+))
+->values(array(
+  'path' => 'admin/build/block/list/garland',
+  'load_functions' => '',
+  'to_arg_functions' => '',
+  'access_callback' => '_block_themes_access',
+  'access_arguments' => 'a:1:{i:0;O:8:"stdClass":12:{s:8:"filename";s:27:"themes/garland/garland.info";s:4:"name";s:7:"garland";s:4:"type";s:5:"theme";s:5:"owner";s:45:"themes/engines/phptemplate/phptemplate.engine";s:6:"status";s:1:"1";s:8:"throttle";s:1:"0";s:9:"bootstrap";s:1:"0";s:14:"schema_version";s:2:"-1";s:6:"weight";s:1:"0";s:4:"info";a:11:{s:4:"name";s:7:"Garland";s:11:"description";s:66:"Tableless, recolorable, multi-column, fluid width theme (default).";s:7:"version";s:8:"6.20-dev";s:4:"core";s:3:"6.x";s:6:"engine";s:11:"phptemplate";s:11:"stylesheets";a:2:{s:3:"all";a:1:{s:9:"style.css";s:24:"themes/garland/style.css";}s:5:"print";a:1:{s:9:"print.css";s:24:"themes/garland/print.css";}}s:7:"regions";a:5:{s:4:"left";s:12:"Left sidebar";s:5:"right";s:13:"Right sidebar";s:7:"content";s:7:"Content";s:6:"header";s:6:"Header";s:6:"footer";s:6:"Footer";}s:8:"features";a:10:{i:0;s:20:"comment_user_picture";i:1;s:7:"favicon";i:2;s:7:"mission";i:3;s:4:"logo";i:4;s:4:"name";i:5;s:17:"node_user_picture";i:6;s:6:"search";i:7;s:6:"slogan";i:8;s:13:"primary_links";i:9;s:15:"secondary_links";}s:7:"scripts";a:1:{s:9:"script.js";s:24:"themes/garland/script.js";}s:10:"screenshot";s:29:"themes/garland/screenshot.png";s:3:"php";s:5:"4.3.5";}s:11:"stylesheets";a:2:{s:3:"all";a:1:{s:9:"style.css";s:24:"themes/garland/style.css";}s:5:"print";a:1:{s:9:"print.css";s:24:"themes/garland/print.css";}}s:6:"engine";s:11:"phptemplate";}}',
+  'page_callback' => 'block_admin_display',
+  'page_arguments' => 'a:1:{i:0;s:7:"garland";}',
+  'fit' => '31',
+  'number_parts' => '5',
+  'tab_parent' => 'admin/build/block/list',
+  'tab_root' => 'admin/build/block',
+  'title' => 'Garland',
+  'title_callback' => 't',
+  'title_arguments' => '',
+  'type' => '136',
+  'block_callback' => '',
+  'description' => '',
+  'position' => '',
+  'weight' => '-10',
+  'file' => 'modules/block/block.admin.inc',
+))
+->values(array(
+  'path' => 'admin/build/block/list/js',
+  'load_functions' => '',
+  'to_arg_functions' => '',
+  'access_callback' => 'user_access',
+  'access_arguments' => 'a:1:{i:0;s:17:"administer blocks";}',
+  'page_callback' => 'block_admin_display_js',
+  'page_arguments' => 'a:0:{}',
+  'fit' => '31',
+  'number_parts' => '5',
+  'tab_parent' => '',
+  'tab_root' => 'admin/build/block/list/js',
+  'title' => 'JavaScript List Form',
+  'title_callback' => 't',
+  'title_arguments' => '',
+  'type' => '4',
+  'block_callback' => '',
+  'description' => '',
+  'position' => '',
+  'weight' => '0',
+  'file' => 'modules/block/block.admin.inc',
+))
+->values(array(
+  'path' => 'admin/build/block/list/marvin',
+  'load_functions' => '',
+  'to_arg_functions' => '',
+  'access_callback' => '_block_themes_access',
+  'access_arguments' => 'a:1:{i:0;O:8:"stdClass":12:{s:8:"filename";s:35:"themes/chameleon/marvin/marvin.info";s:4:"name";s:6:"marvin";s:4:"type";s:5:"theme";s:5:"owner";s:0:"";s:6:"status";s:1:"0";s:8:"throttle";s:1:"0";s:9:"bootstrap";s:1:"0";s:14:"schema_version";s:2:"-1";s:6:"weight";s:1:"0";s:4:"info";a:11:{s:4:"name";s:6:"Marvin";s:11:"description";s:31:"Boxy tabled theme in all grays.";s:7:"regions";a:2:{s:4:"left";s:12:"Left sidebar";s:5:"right";s:13:"Right sidebar";}s:7:"version";s:8:"6.20-dev";s:4:"core";s:3:"6.x";s:10:"base theme";s:9:"chameleon";s:8:"features";a:10:{i:0;s:20:"comment_user_picture";i:1;s:7:"favicon";i:2;s:7:"mission";i:3;s:4:"logo";i:4;s:4:"name";i:5;s:17:"node_user_picture";i:6;s:6:"search";i:7;s:6:"slogan";i:8;s:13:"primary_links";i:9;s:15:"secondary_links";}s:11:"stylesheets";a:1:{s:3:"all";a:1:{s:9:"style.css";s:33:"themes/chameleon/marvin/style.css";}}s:7:"scripts";a:1:{s:9:"script.js";s:33:"themes/chameleon/marvin/script.js";}s:10:"screenshot";s:38:"themes/chameleon/marvin/screenshot.png";s:3:"php";s:5:"4.3.5";}s:11:"stylesheets";a:1:{s:3:"all";a:1:{s:9:"style.css";s:33:"themes/chameleon/marvin/style.css";}}s:10:"base_theme";s:9:"chameleon";}}',
+  'page_callback' => 'block_admin_display',
+  'page_arguments' => 'a:1:{i:0;s:6:"marvin";}',
+  'fit' => '31',
+  'number_parts' => '5',
+  'tab_parent' => 'admin/build/block/list',
+  'tab_root' => 'admin/build/block',
+  'title' => 'Marvin',
+  'title_callback' => 't',
+  'title_arguments' => '',
+  'type' => '128',
+  'block_callback' => '',
+  'description' => '',
+  'position' => '',
+  'weight' => '0',
+  'file' => 'modules/block/block.admin.inc',
+))
+->values(array(
+  'path' => 'admin/build/block/list/minnelli',
+  'load_functions' => '',
+  'to_arg_functions' => '',
+  'access_callback' => '_block_themes_access',
+  'access_arguments' => 'a:1:{i:0;O:8:"stdClass":13:{s:8:"filename";s:37:"themes/garland/minnelli/minnelli.info";s:4:"name";s:8:"minnelli";s:4:"type";s:5:"theme";s:5:"owner";s:45:"themes/engines/phptemplate/phptemplate.engine";s:6:"status";s:1:"0";s:8:"throttle";s:1:"0";s:9:"bootstrap";s:1:"0";s:14:"schema_version";s:2:"-1";s:6:"weight";s:1:"0";s:4:"info";a:12:{s:4:"name";s:8:"Minnelli";s:11:"description";s:56:"Tableless, recolorable, multi-column, fixed width theme.";s:7:"version";s:8:"6.20-dev";s:4:"core";s:3:"6.x";s:10:"base theme";s:7:"garland";s:11:"stylesheets";a:1:{s:3:"all";a:1:{s:12:"minnelli.css";s:36:"themes/garland/minnelli/minnelli.css";}}s:7:"regions";a:5:{s:4:"left";s:12:"Left sidebar";s:5:"right";s:13:"Right sidebar";s:7:"content";s:7:"Content";s:6:"header";s:6:"Header";s:6:"footer";s:6:"Footer";}s:8:"features";a:10:{i:0;s:20:"comment_user_picture";i:1;s:7:"favicon";i:2;s:7:"mission";i:3;s:4:"logo";i:4;s:4:"name";i:5;s:17:"node_user_picture";i:6;s:6:"search";i:7;s:6:"slogan";i:8;s:13:"primary_links";i:9;s:15:"secondary_links";}s:7:"scripts";a:1:{s:9:"script.js";s:33:"themes/garland/minnelli/script.js";}s:10:"screenshot";s:38:"themes/garland/minnelli/screenshot.png";s:3:"php";s:5:"4.3.5";s:6:"engine";s:11:"phptemplate";}s:11:"stylesheets";a:1:{s:3:"all";a:1:{s:12:"minnelli.css";s:36:"themes/garland/minnelli/minnelli.css";}}s:6:"engine";s:11:"phptemplate";s:10:"base_theme";s:7:"garland";}}',
+  'page_callback' => 'block_admin_display',
+  'page_arguments' => 'a:1:{i:0;s:8:"minnelli";}',
+  'fit' => '31',
+  'number_parts' => '5',
+  'tab_parent' => 'admin/build/block/list',
+  'tab_root' => 'admin/build/block',
+  'title' => 'Minnelli',
+  'title_callback' => 't',
+  'title_arguments' => '',
+  'type' => '128',
+  'block_callback' => '',
+  'description' => '',
+  'position' => '',
+  'weight' => '0',
+  'file' => 'modules/block/block.admin.inc',
+))
+->values(array(
+  'path' => 'admin/build/block/list/pushbutton',
+  'load_functions' => '',
+  'to_arg_functions' => '',
+  'access_callback' => '_block_themes_access',
+  'access_arguments' => 'a:1:{i:0;O:8:"stdClass":12:{s:8:"filename";s:33:"themes/pushbutton/pushbutton.info";s:4:"name";s:10:"pushbutton";s:4:"type";s:5:"theme";s:5:"owner";s:45:"themes/engines/phptemplate/phptemplate.engine";s:6:"status";s:1:"0";s:8:"throttle";s:1:"0";s:9:"bootstrap";s:1:"0";s:14:"schema_version";s:2:"-1";s:6:"weight";s:1:"0";s:4:"info";a:11:{s:4:"name";s:10:"Pushbutton";s:11:"description";s:52:"Tabled, multi-column theme in blue and orange tones.";s:7:"version";s:8:"6.20-dev";s:4:"core";s:3:"6.x";s:6:"engine";s:11:"phptemplate";s:7:"regions";a:5:{s:4:"left";s:12:"Left sidebar";s:5:"right";s:13:"Right sidebar";s:7:"content";s:7:"Content";s:6:"header";s:6:"Header";s:6:"footer";s:6:"Footer";}s:8:"features";a:10:{i:0;s:20:"comment_user_picture";i:1;s:7:"favicon";i:2;s:7:"mission";i:3;s:4:"logo";i:4;s:4:"name";i:5;s:17:"node_user_picture";i:6;s:6:"search";i:7;s:6:"slogan";i:8;s:13:"primary_links";i:9;s:15:"secondary_links";}s:11:"stylesheets";a:1:{s:3:"all";a:1:{s:9:"style.css";s:27:"themes/pushbutton/style.css";}}s:7:"scripts";a:1:{s:9:"script.js";s:27:"themes/pushbutton/script.js";}s:10:"screenshot";s:32:"themes/pushbutton/screenshot.png";s:3:"php";s:5:"4.3.5";}s:11:"stylesheets";a:1:{s:3:"all";a:1:{s:9:"style.css";s:27:"themes/pushbutton/style.css";}}s:6:"engine";s:11:"phptemplate";}}',
+  'page_callback' => 'block_admin_display',
+  'page_arguments' => 'a:1:{i:0;s:10:"pushbutton";}',
+  'fit' => '31',
+  'number_parts' => '5',
+  'tab_parent' => 'admin/build/block/list',
+  'tab_root' => 'admin/build/block',
+  'title' => 'Pushbutton',
+  'title_callback' => 't',
+  'title_arguments' => '',
+  'type' => '128',
+  'block_callback' => '',
+  'description' => '',
+  'position' => '',
+  'weight' => '0',
+  'file' => 'modules/block/block.admin.inc',
+))
+->values(array(
+  'path' => 'admin/build/menu',
+  'load_functions' => '',
+  'to_arg_functions' => '',
+  'access_callback' => 'user_access',
+  'access_arguments' => 'a:1:{i:0;s:15:"administer menu";}',
+  'page_callback' => 'menu_overview_page',
+  'page_arguments' => 'a:0:{}',
+  'fit' => '7',
+  'number_parts' => '3',
+  'tab_parent' => '',
+  'tab_root' => 'admin/build/menu',
+  'title' => 'Menus',
+  'title_callback' => 't',
+  'title_arguments' => '',
+  'type' => '6',
+  'block_callback' => '',
+  'description' => "Control your site's navigation menu, primary links and secondary links. as well as rename and reorganize menu items.",
+  'position' => '',
+  'weight' => '0',
+  'file' => 'modules/menu/menu.admin.inc',
+))
+->values(array(
+  'path' => 'admin/build/menu-customize/%',
+  'load_functions' => 'a:1:{i:3;s:9:"menu_load";}',
+  'to_arg_functions' => '',
+  'access_callback' => 'user_access',
+  'access_arguments' => 'a:1:{i:0;s:15:"administer menu";}',
+  'page_callback' => 'drupal_get_form',
+  'page_arguments' => 'a:2:{i:0;s:18:"menu_overview_form";i:1;i:3;}',
+  'fit' => '14',
+  'number_parts' => '4',
+  'tab_parent' => '',
+  'tab_root' => 'admin/build/menu-customize/%',
+  'title' => 'Customize menu',
+  'title_callback' => 'menu_overview_title',
+  'title_arguments' => 'a:1:{i:0;i:3;}',
+  'type' => '4',
+  'block_callback' => '',
+  'description' => '',
+  'position' => '',
+  'weight' => '0',
+  'file' => 'modules/menu/menu.admin.inc',
+))
+->values(array(
+  'path' => 'admin/build/menu-customize/%/add',
+  'load_functions' => 'a:1:{i:3;s:9:"menu_load";}',
+  'to_arg_functions' => '',
+  'access_callback' => 'user_access',
+  'access_arguments' => 'a:1:{i:0;s:15:"administer menu";}',
+  'page_callback' => 'drupal_get_form',
+  'page_arguments' => 'a:4:{i:0;s:14:"menu_edit_item";i:1;s:3:"add";i:2;N;i:3;i:3;}',
+  'fit' => '29',
+  'number_parts' => '5',
+  'tab_parent' => 'admin/build/menu-customize/%',
+  'tab_root' => 'admin/build/menu-customize/%',
+  'title' => 'Add item',
+  'title_callback' => 't',
+  'title_arguments' => '',
+  'type' => '128',
+  'block_callback' => '',
+  'description' => '',
+  'position' => '',
+  'weight' => '0',
+  'file' => 'modules/menu/menu.admin.inc',
+))
+->values(array(
+  'path' => 'admin/build/menu-customize/%/delete',
+  'load_functions' => 'a:1:{i:3;s:9:"menu_load";}',
+  'to_arg_functions' => '',
+  'access_callback' => 'user_access',
+  'access_arguments' => 'a:1:{i:0;s:15:"administer menu";}',
+  'page_callback' => 'menu_delete_menu_page',
+  'page_arguments' => 'a:1:{i:0;i:3;}',
+  'fit' => '29',
+  'number_parts' => '5',
+  'tab_parent' => '',
+  'tab_root' => 'admin/build/menu-customize/%/delete',
+  'title' => 'Delete menu',
+  'title_callback' => 't',
+  'title_arguments' => '',
+  'type' => '4',
+  'block_callback' => '',
+  'description' => '',
+  'position' => '',
+  'weight' => '0',
+  'file' => 'modules/menu/menu.admin.inc',
+))
+->values(array(
+  'path' => 'admin/build/menu-customize/%/edit',
+  'load_functions' => 'a:1:{i:3;s:9:"menu_load";}',
+  'to_arg_functions' => '',
+  'access_callback' => 'user_access',
+  'access_arguments' => 'a:1:{i:0;s:15:"administer menu";}',
+  'page_callback' => 'drupal_get_form',
+  'page_arguments' => 'a:3:{i:0;s:14:"menu_edit_menu";i:1;s:4:"edit";i:2;i:3;}',
+  'fit' => '29',
+  'number_parts' => '5',
+  'tab_parent' => 'admin/build/menu-customize/%',
+  'tab_root' => 'admin/build/menu-customize/%',
+  'title' => 'Edit menu',
+  'title_callback' => 't',
+  'title_arguments' => '',
+  'type' => '128',
+  'block_callback' => '',
+  'description' => '',
+  'position' => '',
+  'weight' => '0',
+  'file' => 'modules/menu/menu.admin.inc',
+))
+->values(array(
+  'path' => 'admin/build/menu-customize/%/list',
+  'load_functions' => 'a:1:{i:3;s:9:"menu_load";}',
+  'to_arg_functions' => '',
+  'access_callback' => 'user_access',
+  'access_arguments' => 'a:1:{i:0;s:15:"administer menu";}',
+  'page_callback' => 'drupal_get_form',
+  'page_arguments' => 'a:2:{i:0;s:18:"menu_overview_form";i:1;i:3;}',
+  'fit' => '29',
+  'number_parts' => '5',
+  'tab_parent' => 'admin/build/menu-customize/%',
+  'tab_root' => 'admin/build/menu-customize/%',
+  'title' => 'List items',
+  'title_callback' => 't',
+  'title_arguments' => '',
+  'type' => '136',
+  'block_callback' => '',
+  'description' => '',
+  'position' => '',
+  'weight' => '-10',
+  'file' => 'modules/menu/menu.admin.inc',
+))
+->values(array(
+  'path' => 'admin/build/menu/add',
+  'load_functions' => '',
+  'to_arg_functions' => '',
+  'access_callback' => 'user_access',
+  'access_arguments' => 'a:1:{i:0;s:15:"administer menu";}',
+  'page_callback' => 'drupal_get_form',
+  'page_arguments' => 'a:2:{i:0;s:14:"menu_edit_menu";i:1;s:3:"add";}',
+  'fit' => '15',
+  'number_parts' => '4',
+  'tab_parent' => 'admin/build/menu',
+  'tab_root' => 'admin/build/menu',
+  'title' => 'Add menu',
+  'title_callback' => 't',
+  'title_arguments' => '',
+  'type' => '128',
+  'block_callback' => '',
+  'description' => '',
+  'position' => '',
+  'weight' => '0',
+  'file' => 'modules/menu/menu.admin.inc',
+))
+->values(array(
+  'path' => 'admin/build/menu/item/%/delete',
+  'load_functions' => 'a:1:{i:4;s:14:"menu_link_load";}',
+  'to_arg_functions' => '',
+  'access_callback' => 'user_access',
+  'access_arguments' => 'a:1:{i:0;s:15:"administer menu";}',
+  'page_callback' => 'menu_item_delete_page',
+  'page_arguments' => 'a:1:{i:0;i:4;}',
+  'fit' => '61',
+  'number_parts' => '6',
+  'tab_parent' => '',
+  'tab_root' => 'admin/build/menu/item/%/delete',
+  'title' => 'Delete menu item',
+  'title_callback' => 't',
+  'title_arguments' => '',
+  'type' => '4',
+  'block_callback' => '',
+  'description' => '',
+  'position' => '',
+  'weight' => '0',
+  'file' => 'modules/menu/menu.admin.inc',
+))
+->values(array(
+  'path' => 'admin/build/menu/item/%/edit',
+  'load_functions' => 'a:1:{i:4;s:14:"menu_link_load";}',
+  'to_arg_functions' => '',
+  'access_callback' => 'user_access',
+  'access_arguments' => 'a:1:{i:0;s:15:"administer menu";}',
+  'page_callback' => 'drupal_get_form',
+  'page_arguments' => 'a:4:{i:0;s:14:"menu_edit_item";i:1;s:4:"edit";i:2;i:4;i:3;N;}',
+  'fit' => '61',
+  'number_parts' => '6',
+  'tab_parent' => '',
+  'tab_root' => 'admin/build/menu/item/%/edit',
+  'title' => 'Edit menu item',
+  'title_callback' => 't',
+  'title_arguments' => '',
+  'type' => '4',
+  'block_callback' => '',
+  'description' => '',
+  'position' => '',
+  'weight' => '0',
+  'file' => 'modules/menu/menu.admin.inc',
+))
+->values(array(
+  'path' => 'admin/build/menu/item/%/reset',
+  'load_functions' => 'a:1:{i:4;s:14:"menu_link_load";}',
+  'to_arg_functions' => '',
+  'access_callback' => 'user_access',
+  'access_arguments' => 'a:1:{i:0;s:15:"administer menu";}',
+  'page_callback' => 'drupal_get_form',
+  'page_arguments' => 'a:2:{i:0;s:23:"menu_reset_item_confirm";i:1;i:4;}',
+  'fit' => '61',
+  'number_parts' => '6',
+  'tab_parent' => '',
+  'tab_root' => 'admin/build/menu/item/%/reset',
+  'title' => 'Reset menu item',
+  'title_callback' => 't',
+  'title_arguments' => '',
+  'type' => '4',
+  'block_callback' => '',
+  'description' => '',
+  'position' => '',
+  'weight' => '0',
+  'file' => 'modules/menu/menu.admin.inc',
+))
+->values(array(
+  'path' => 'admin/build/menu/list',
+  'load_functions' => '',
+  'to_arg_functions' => '',
+  'access_callback' => 'user_access',
+  'access_arguments' => 'a:1:{i:0;s:15:"administer menu";}',
+  'page_callback' => 'menu_overview_page',
+  'page_arguments' => 'a:0:{}',
+  'fit' => '15',
+  'number_parts' => '4',
+  'tab_parent' => 'admin/build/menu',
+  'tab_root' => 'admin/build/menu',
+  'title' => 'List menus',
+  'title_callback' => 't',
+  'title_arguments' => '',
+  'type' => '136',
+  'block_callback' => '',
+  'description' => '',
+  'position' => '',
+  'weight' => '-10',
+  'file' => 'modules/menu/menu.admin.inc',
+))
+->values(array(
+  'path' => 'admin/build/menu/settings',
+  'load_functions' => '',
+  'to_arg_functions' => '',
+  'access_callback' => 'user_access',
+  'access_arguments' => 'a:1:{i:0;s:15:"administer menu";}',
+  'page_callback' => 'drupal_get_form',
+  'page_arguments' => 'a:1:{i:0;s:14:"menu_configure";}',
+  'fit' => '15',
+  'number_parts' => '4',
+  'tab_parent' => 'admin/build/menu',
+  'tab_root' => 'admin/build/menu',
+  'title' => 'Settings',
+  'title_callback' => 't',
+  'title_arguments' => '',
+  'type' => '128',
+  'block_callback' => '',
+  'description' => '',
+  'position' => '',
+  'weight' => '5',
+  'file' => 'modules/menu/menu.admin.inc',
+))
+->values(array(
+  'path' => 'admin/build/modules',
+  'load_functions' => '',
+  'to_arg_functions' => '',
+  'access_callback' => 'user_access',
+  'access_arguments' => 'a:1:{i:0;s:29:"administer site configuration";}',
+  'page_callback' => 'drupal_get_form',
+  'page_arguments' => 'a:1:{i:0;s:14:"system_modules";}',
+  'fit' => '7',
+  'number_parts' => '3',
+  'tab_parent' => '',
+  'tab_root' => 'admin/build/modules',
+  'title' => 'Modules',
+  'title_callback' => 't',
+  'title_arguments' => '',
+  'type' => '6',
+  'block_callback' => '',
+  'description' => 'Enable or disable add-on modules for your site.',
+  'position' => '',
+  'weight' => '0',
+  'file' => 'modules/system/system.admin.inc',
+))
+->values(array(
+  'path' => 'admin/build/modules/list',
+  'load_functions' => '',
+  'to_arg_functions' => '',
+  'access_callback' => 'user_access',
+  'access_arguments' => 'a:1:{i:0;s:29:"administer site configuration";}',
+  'page_callback' => 'drupal_get_form',
+  'page_arguments' => 'a:1:{i:0;s:14:"system_modules";}',
+  'fit' => '15',
+  'number_parts' => '4',
+  'tab_parent' => 'admin/build/modules',
+  'tab_root' => 'admin/build/modules',
+  'title' => 'List',
+  'title_callback' => 't',
+  'title_arguments' => '',
+  'type' => '136',
+  'block_callback' => '',
+  'description' => '',
+  'position' => '',
+  'weight' => '0',
+  'file' => 'modules/system/system.admin.inc',
+))
+->values(array(
+  'path' => 'admin/build/modules/list/confirm',
+  'load_functions' => '',
+  'to_arg_functions' => '',
+  'access_callback' => 'user_access',
+  'access_arguments' => 'a:1:{i:0;s:29:"administer site configuration";}',
+  'page_callback' => 'drupal_get_form',
+  'page_arguments' => 'a:1:{i:0;s:14:"system_modules";}',
+  'fit' => '31',
+  'number_parts' => '5',
+  'tab_parent' => '',
+  'tab_root' => 'admin/build/modules/list/confirm',
+  'title' => 'List',
+  'title_callback' => 't',
+  'title_arguments' => '',
+  'type' => '4',
+  'block_callback' => '',
+  'description' => '',
+  'position' => '',
+  'weight' => '0',
+  'file' => 'modules/system/system.admin.inc',
+))
+->values(array(
+  'path' => 'admin/build/modules/uninstall',
+  'load_functions' => '',
+  'to_arg_functions' => '',
+  'access_callback' => 'user_access',
+  'access_arguments' => 'a:1:{i:0;s:29:"administer site configuration";}',
+  'page_callback' => 'drupal_get_form',
+  'page_arguments' => 'a:1:{i:0;s:24:"system_modules_uninstall";}',
+  'fit' => '15',
+  'number_parts' => '4',
+  'tab_parent' => 'admin/build/modules',
+  'tab_root' => 'admin/build/modules',
+  'title' => 'Uninstall',
+  'title_callback' => 't',
+  'title_arguments' => '',
+  'type' => '128',
+  'block_callback' => '',
+  'description' => '',
+  'position' => '',
+  'weight' => '0',
+  'file' => 'modules/system/system.admin.inc',
+))
+->values(array(
+  'path' => 'admin/build/modules/uninstall/confirm',
+  'load_functions' => '',
+  'to_arg_functions' => '',
+  'access_callback' => 'user_access',
+  'access_arguments' => 'a:1:{i:0;s:29:"administer site configuration";}',
+  'page_callback' => 'drupal_get_form',
+  'page_arguments' => 'a:1:{i:0;s:24:"system_modules_uninstall";}',
+  'fit' => '31',
+  'number_parts' => '5',
+  'tab_parent' => '',
+  'tab_root' => 'admin/build/modules/uninstall/confirm',
+  'title' => 'Uninstall',
+  'title_callback' => 't',
+  'title_arguments' => '',
+  'type' => '4',
+  'block_callback' => '',
+  'description' => '',
+  'position' => '',
+  'weight' => '0',
+  'file' => 'modules/system/system.admin.inc',
+))
+->values(array(
+  'path' => 'admin/build/path',
+  'load_functions' => '',
+  'to_arg_functions' => '',
+  'access_callback' => 'user_access',
+  'access_arguments' => 'a:1:{i:0;s:22:"administer url aliases";}',
+  'page_callback' => 'path_admin_overview',
+  'page_arguments' => 'a:0:{}',
+  'fit' => '7',
+  'number_parts' => '3',
+  'tab_parent' => '',
+  'tab_root' => 'admin/build/path',
+  'title' => 'URL aliases',
+  'title_callback' => 't',
+  'title_arguments' => '',
+  'type' => '6',
+  'block_callback' => '',
+  'description' => "Change your site's URL paths by aliasing them.",
+  'position' => '',
+  'weight' => '0',
+  'file' => 'modules/path/path.admin.inc',
+))
+->values(array(
+  'path' => 'admin/build/path/add',
+  'load_functions' => '',
+  'to_arg_functions' => '',
+  'access_callback' => 'user_access',
+  'access_arguments' => 'a:1:{i:0;s:22:"administer url aliases";}',
+  'page_callback' => 'path_admin_edit',
+  'page_arguments' => 'a:0:{}',
+  'fit' => '15',
+  'number_parts' => '4',
+  'tab_parent' => 'admin/build/path',
+  'tab_root' => 'admin/build/path',
+  'title' => 'Add alias',
+  'title_callback' => 't',
+  'title_arguments' => '',
+  'type' => '128',
+  'block_callback' => '',
+  'description' => '',
+  'position' => '',
+  'weight' => '0',
+  'file' => 'modules/path/path.admin.inc',
+))
+->values(array(
+  'path' => 'admin/build/path/delete',
+  'load_functions' => '',
+  'to_arg_functions' => '',
+  'access_callback' => 'user_access',
+  'access_arguments' => 'a:1:{i:0;s:22:"administer url aliases";}',
+  'page_callback' => 'drupal_get_form',
+  'page_arguments' => 'a:1:{i:0;s:25:"path_admin_delete_confirm";}',
+  'fit' => '15',
+  'number_parts' => '4',
+  'tab_parent' => '',
+  'tab_root' => 'admin/build/path/delete',
+  'title' => 'Delete alias',
+  'title_callback' => 't',
+  'title_arguments' => '',
+  'type' => '4',
+  'block_callback' => '',
+  'description' => '',
+  'position' => '',
+  'weight' => '0',
+  'file' => 'modules/path/path.admin.inc',
+))
+->values(array(
+  'path' => 'admin/build/path/edit',
+  'load_functions' => '',
+  'to_arg_functions' => '',
+  'access_callback' => 'user_access',
+  'access_arguments' => 'a:1:{i:0;s:22:"administer url aliases";}',
+  'page_callback' => 'path_admin_edit',
+  'page_arguments' => 'a:0:{}',
+  'fit' => '15',
+  'number_parts' => '4',
+  'tab_parent' => '',
+  'tab_root' => 'admin/build/path/edit',
+  'title' => 'Edit alias',
+  'title_callback' => 't',
+  'title_arguments' => '',
+  'type' => '4',
+  'block_callback' => '',
+  'description' => '',
+  'position' => '',
+  'weight' => '0',
+  'file' => 'modules/path/path.admin.inc',
+))
+->values(array(
+  'path' => 'admin/build/path/list',
+  'load_functions' => '',
+  'to_arg_functions' => '',
+  'access_callback' => 'user_access',
+  'access_arguments' => 'a:1:{i:0;s:22:"administer url aliases";}',
+  'page_callback' => 'path_admin_overview',
+  'page_arguments' => 'a:0:{}',
+  'fit' => '15',
+  'number_parts' => '4',
+  'tab_parent' => 'admin/build/path',
+  'tab_root' => 'admin/build/path',
+  'title' => 'List',
+  'title_callback' => 't',
+  'title_arguments' => '',
+  'type' => '136',
+  'block_callback' => '',
+  'description' => '',
+  'position' => '',
+  'weight' => '-10',
+  'file' => 'modules/path/path.admin.inc',
+))
+->values(array(
+  'path' => 'admin/build/themes',
+  'load_functions' => '',
+  'to_arg_functions' => '',
+  'access_callback' => 'user_access',
+  'access_arguments' => 'a:1:{i:0;s:29:"administer site configuration";}',
+  'page_callback' => 'drupal_get_form',
+  'page_arguments' => 'a:2:{i:0;s:18:"system_themes_form";i:1;N;}',
+  'fit' => '7',
+  'number_parts' => '3',
+  'tab_parent' => '',
+  'tab_root' => 'admin/build/themes',
+  'title' => 'Themes',
+  'title_callback' => 't',
+  'title_arguments' => '',
+  'type' => '6',
+  'block_callback' => '',
+  'description' => 'Change which theme your site uses or allows users to set.',
+  'position' => '',
+  'weight' => '0',
+  'file' => 'modules/system/system.admin.inc',
+))
+->values(array(
+  'path' => 'admin/build/themes/select',
+  'load_functions' => '',
+  'to_arg_functions' => '',
+  'access_callback' => 'user_access',
+  'access_arguments' => 'a:1:{i:0;s:29:"administer site configuration";}',
+  'page_callback' => 'drupal_get_form',
+  'page_arguments' => 'a:2:{i:0;s:18:"system_themes_form";i:1;N;}',
+  'fit' => '15',
+  'number_parts' => '4',
+  'tab_parent' => 'admin/build/themes',
+  'tab_root' => 'admin/build/themes',
+  'title' => 'List',
+  'title_callback' => 't',
+  'title_arguments' => '',
+  'type' => '136',
+  'block_callback' => '',
+  'description' => 'Select the default theme.',
+  'position' => '',
+  'weight' => '-1',
+  'file' => 'modules/system/system.admin.inc',
+))
+->values(array(
+  'path' => 'admin/build/themes/settings',
+  'load_functions' => '',
+  'to_arg_functions' => '',
+  'access_callback' => 'user_access',
+  'access_arguments' => 'a:1:{i:0;s:29:"administer site configuration";}',
+  'page_callback' => 'drupal_get_form',
+  'page_arguments' => 'a:1:{i:0;s:21:"system_theme_settings";}',
+  'fit' => '15',
+  'number_parts' => '4',
+  'tab_parent' => 'admin/build/themes',
+  'tab_root' => 'admin/build/themes',
+  'title' => 'Configure',
+  'title_callback' => 't',
+  'title_arguments' => '',
+  'type' => '128',
+  'block_callback' => '',
+  'description' => '',
+  'position' => '',
+  'weight' => '0',
+  'file' => 'modules/system/system.admin.inc',
+))
+->values(array(
+  'path' => 'admin/build/themes/settings/bluemarine',
+  'load_functions' => '',
+  'to_arg_functions' => '',
+  'access_callback' => '_system_themes_access',
+  'access_arguments' => 'a:1:{i:0;O:8:"stdClass":12:{s:8:"filename";s:33:"themes/bluemarine/bluemarine.info";s:4:"name";s:10:"bluemarine";s:4:"type";s:5:"theme";s:5:"owner";s:45:"themes/engines/phptemplate/phptemplate.engine";s:6:"status";s:1:"0";s:8:"throttle";s:1:"0";s:9:"bootstrap";s:1:"0";s:14:"schema_version";s:2:"-1";s:6:"weight";s:1:"0";s:4:"info";a:11:{s:4:"name";s:10:"Bluemarine";s:11:"description";s:66:"Table-based multi-column theme with a marine and ash color scheme.";s:7:"version";s:8:"6.20-dev";s:4:"core";s:3:"6.x";s:6:"engine";s:11:"phptemplate";s:7:"regions";a:5:{s:4:"left";s:12:"Left sidebar";s:5:"right";s:13:"Right sidebar";s:7:"content";s:7:"Content";s:6:"header";s:6:"Header";s:6:"footer";s:6:"Footer";}s:8:"features";a:10:{i:0;s:20:"comment_user_picture";i:1;s:7:"favicon";i:2;s:7:"mission";i:3;s:4:"logo";i:4;s:4:"name";i:5;s:17:"node_user_picture";i:6;s:6:"search";i:7;s:6:"slogan";i:8;s:13:"primary_links";i:9;s:15:"secondary_links";}s:11:"stylesheets";a:1:{s:3:"all";a:1:{s:9:"style.css";s:27:"themes/bluemarine/style.css";}}s:7:"scripts";a:1:{s:9:"script.js";s:27:"themes/bluemarine/script.js";}s:10:"screenshot";s:32:"themes/bluemarine/screenshot.png";s:3:"php";s:5:"4.3.5";}s:11:"stylesheets";a:1:{s:3:"all";a:1:{s:9:"style.css";s:27:"themes/bluemarine/style.css";}}s:6:"engine";s:11:"phptemplate";}}',
+  'page_callback' => 'drupal_get_form',
+  'page_arguments' => 'a:2:{i:0;s:21:"system_theme_settings";i:1;s:10:"bluemarine";}',
+  'fit' => '31',
+  'number_parts' => '5',
+  'tab_parent' => 'admin/build/themes/settings',
+  'tab_root' => 'admin/build/themes',
+  'title' => 'Bluemarine',
+  'title_callback' => 't',
+  'title_arguments' => '',
+  'type' => '128',
+  'block_callback' => '',
+  'description' => '',
+  'position' => '',
+  'weight' => '0',
+  'file' => 'modules/system/system.admin.inc',
+))
+->values(array(
+  'path' => 'admin/build/themes/settings/chameleon',
+  'load_functions' => '',
+  'to_arg_functions' => '',
+  'access_callback' => '_system_themes_access',
+  'access_arguments' => 'a:1:{i:0;O:8:"stdClass":11:{s:8:"filename";s:31:"themes/chameleon/chameleon.info";s:4:"name";s:9:"chameleon";s:4:"type";s:5:"theme";s:5:"owner";s:32:"themes/chameleon/chameleon.theme";s:6:"status";s:1:"0";s:8:"throttle";s:1:"0";s:9:"bootstrap";s:1:"0";s:14:"schema_version";s:2:"-1";s:6:"weight";s:1:"0";s:4:"info";a:10:{s:4:"name";s:9:"Chameleon";s:11:"description";s:42:"Minimalist tabled theme with light colors.";s:7:"regions";a:2:{s:4:"left";s:12:"Left sidebar";s:5:"right";s:13:"Right sidebar";}s:8:"features";a:4:{i:0;s:4:"logo";i:1;s:7:"favicon";i:2;s:4:"name";i:3;s:6:"slogan";}s:11:"stylesheets";a:1:{s:3:"all";a:2:{s:9:"style.css";s:26:"themes/chameleon/style.css";s:10:"common.css";s:27:"themes/chameleon/common.css";}}s:7:"version";s:8:"6.20-dev";s:4:"core";s:3:"6.x";s:7:"scripts";a:1:{s:9:"script.js";s:26:"themes/chameleon/script.js";}s:10:"screenshot";s:31:"themes/chameleon/screenshot.png";s:3:"php";s:5:"4.3.5";}s:11:"stylesheets";a:1:{s:3:"all";a:2:{s:9:"style.css";s:26:"themes/chameleon/style.css";s:10:"common.css";s:27:"themes/chameleon/common.css";}}}}',
+  'page_callback' => 'drupal_get_form',
+  'page_arguments' => 'a:2:{i:0;s:21:"system_theme_settings";i:1;s:9:"chameleon";}',
+  'fit' => '31',
+  'number_parts' => '5',
+  'tab_parent' => 'admin/build/themes/settings',
+  'tab_root' => 'admin/build/themes',
+  'title' => 'Chameleon',
+  'title_callback' => 't',
+  'title_arguments' => '',
+  'type' => '128',
+  'block_callback' => '',
+  'description' => '',
+  'position' => '',
+  'weight' => '0',
+  'file' => 'modules/system/system.admin.inc',
+))
+->values(array(
+  'path' => 'admin/build/themes/settings/garland',
+  'load_functions' => '',
+  'to_arg_functions' => '',
+  'access_callback' => '_system_themes_access',
+  'access_arguments' => 'a:1:{i:0;O:8:"stdClass":12:{s:8:"filename";s:27:"themes/garland/garland.info";s:4:"name";s:7:"garland";s:4:"type";s:5:"theme";s:5:"owner";s:45:"themes/engines/phptemplate/phptemplate.engine";s:6:"status";s:1:"1";s:8:"throttle";s:1:"0";s:9:"bootstrap";s:1:"0";s:14:"schema_version";s:2:"-1";s:6:"weight";s:1:"0";s:4:"info";a:11:{s:4:"name";s:7:"Garland";s:11:"description";s:66:"Tableless, recolorable, multi-column, fluid width theme (default).";s:7:"version";s:8:"6.20-dev";s:4:"core";s:3:"6.x";s:6:"engine";s:11:"phptemplate";s:11:"stylesheets";a:2:{s:3:"all";a:1:{s:9:"style.css";s:24:"themes/garland/style.css";}s:5:"print";a:1:{s:9:"print.css";s:24:"themes/garland/print.css";}}s:7:"regions";a:5:{s:4:"left";s:12:"Left sidebar";s:5:"right";s:13:"Right sidebar";s:7:"content";s:7:"Content";s:6:"header";s:6:"Header";s:6:"footer";s:6:"Footer";}s:8:"features";a:10:{i:0;s:20:"comment_user_picture";i:1;s:7:"favicon";i:2;s:7:"mission";i:3;s:4:"logo";i:4;s:4:"name";i:5;s:17:"node_user_picture";i:6;s:6:"search";i:7;s:6:"slogan";i:8;s:13:"primary_links";i:9;s:15:"secondary_links";}s:7:"scripts";a:1:{s:9:"script.js";s:24:"themes/garland/script.js";}s:10:"screenshot";s:29:"themes/garland/screenshot.png";s:3:"php";s:5:"4.3.5";}s:11:"stylesheets";a:2:{s:3:"all";a:1:{s:9:"style.css";s:24:"themes/garland/style.css";}s:5:"print";a:1:{s:9:"print.css";s:24:"themes/garland/print.css";}}s:6:"engine";s:11:"phptemplate";}}',
+  'page_callback' => 'drupal_get_form',
+  'page_arguments' => 'a:2:{i:0;s:21:"system_theme_settings";i:1;s:7:"garland";}',
+  'fit' => '31',
+  'number_parts' => '5',
+  'tab_parent' => 'admin/build/themes/settings',
+  'tab_root' => 'admin/build/themes',
+  'title' => 'Garland',
+  'title_callback' => 't',
+  'title_arguments' => '',
+  'type' => '128',
+  'block_callback' => '',
+  'description' => '',
+  'position' => '',
+  'weight' => '0',
+  'file' => 'modules/system/system.admin.inc',
+))
+->values(array(
+  'path' => 'admin/build/themes/settings/global',
+  'load_functions' => '',
+  'to_arg_functions' => '',
+  'access_callback' => 'user_access',
+  'access_arguments' => 'a:1:{i:0;s:29:"administer site configuration";}',
+  'page_callback' => 'drupal_get_form',
+  'page_arguments' => 'a:1:{i:0;s:21:"system_theme_settings";}',
+  'fit' => '31',
+  'number_parts' => '5',
+  'tab_parent' => 'admin/build/themes/settings',
+  'tab_root' => 'admin/build/themes',
+  'title' => 'Global settings',
+  'title_callback' => 't',
+  'title_arguments' => '',
+  'type' => '136',
+  'block_callback' => '',
+  'description' => '',
+  'position' => '',
+  'weight' => '-1',
+  'file' => 'modules/system/system.admin.inc',
+))
+->values(array(
+  'path' => 'admin/build/themes/settings/marvin',
+  'load_functions' => '',
+  'to_arg_functions' => '',
+  'access_callback' => '_system_themes_access',
+  'access_arguments' => 'a:1:{i:0;O:8:"stdClass":12:{s:8:"filename";s:35:"themes/chameleon/marvin/marvin.info";s:4:"name";s:6:"marvin";s:4:"type";s:5:"theme";s:5:"owner";s:0:"";s:6:"status";s:1:"0";s:8:"throttle";s:1:"0";s:9:"bootstrap";s:1:"0";s:14:"schema_version";s:2:"-1";s:6:"weight";s:1:"0";s:4:"info";a:11:{s:4:"name";s:6:"Marvin";s:11:"description";s:31:"Boxy tabled theme in all grays.";s:7:"regions";a:2:{s:4:"left";s:12:"Left sidebar";s:5:"right";s:13:"Right sidebar";}s:7:"version";s:8:"6.20-dev";s:4:"core";s:3:"6.x";s:10:"base theme";s:9:"chameleon";s:8:"features";a:10:{i:0;s:20:"comment_user_picture";i:1;s:7:"favicon";i:2;s:7:"mission";i:3;s:4:"logo";i:4;s:4:"name";i:5;s:17:"node_user_picture";i:6;s:6:"search";i:7;s:6:"slogan";i:8;s:13:"primary_links";i:9;s:15:"secondary_links";}s:11:"stylesheets";a:1:{s:3:"all";a:1:{s:9:"style.css";s:33:"themes/chameleon/marvin/style.css";}}s:7:"scripts";a:1:{s:9:"script.js";s:33:"themes/chameleon/marvin/script.js";}s:10:"screenshot";s:38:"themes/chameleon/marvin/screenshot.png";s:3:"php";s:5:"4.3.5";}s:11:"stylesheets";a:1:{s:3:"all";a:1:{s:9:"style.css";s:33:"themes/chameleon/marvin/style.css";}}s:10:"base_theme";s:9:"chameleon";}}',
+  'page_callback' => 'drupal_get_form',
+  'page_arguments' => 'a:2:{i:0;s:21:"system_theme_settings";i:1;s:6:"marvin";}',
+  'fit' => '31',
+  'number_parts' => '5',
+  'tab_parent' => 'admin/build/themes/settings',
+  'tab_root' => 'admin/build/themes',
+  'title' => 'Marvin',
+  'title_callback' => 't',
+  'title_arguments' => '',
+  'type' => '128',
+  'block_callback' => '',
+  'description' => '',
+  'position' => '',
+  'weight' => '0',
+  'file' => 'modules/system/system.admin.inc',
+))
+->values(array(
+  'path' => 'admin/build/themes/settings/minnelli',
+  'load_functions' => '',
+  'to_arg_functions' => '',
+  'access_callback' => '_system_themes_access',
+  'access_arguments' => 'a:1:{i:0;O:8:"stdClass":13:{s:8:"filename";s:37:"themes/garland/minnelli/minnelli.info";s:4:"name";s:8:"minnelli";s:4:"type";s:5:"theme";s:5:"owner";s:45:"themes/engines/phptemplate/phptemplate.engine";s:6:"status";s:1:"0";s:8:"throttle";s:1:"0";s:9:"bootstrap";s:1:"0";s:14:"schema_version";s:2:"-1";s:6:"weight";s:1:"0";s:4:"info";a:12:{s:4:"name";s:8:"Minnelli";s:11:"description";s:56:"Tableless, recolorable, multi-column, fixed width theme.";s:7:"version";s:8:"6.20-dev";s:4:"core";s:3:"6.x";s:10:"base theme";s:7:"garland";s:11:"stylesheets";a:1:{s:3:"all";a:1:{s:12:"minnelli.css";s:36:"themes/garland/minnelli/minnelli.css";}}s:7:"regions";a:5:{s:4:"left";s:12:"Left sidebar";s:5:"right";s:13:"Right sidebar";s:7:"content";s:7:"Content";s:6:"header";s:6:"Header";s:6:"footer";s:6:"Footer";}s:8:"features";a:10:{i:0;s:20:"comment_user_picture";i:1;s:7:"favicon";i:2;s:7:"mission";i:3;s:4:"logo";i:4;s:4:"name";i:5;s:17:"node_user_picture";i:6;s:6:"search";i:7;s:6:"slogan";i:8;s:13:"primary_links";i:9;s:15:"secondary_links";}s:7:"scripts";a:1:{s:9:"script.js";s:33:"themes/garland/minnelli/script.js";}s:10:"screenshot";s:38:"themes/garland/minnelli/screenshot.png";s:3:"php";s:5:"4.3.5";s:6:"engine";s:11:"phptemplate";}s:11:"stylesheets";a:1:{s:3:"all";a:1:{s:12:"minnelli.css";s:36:"themes/garland/minnelli/minnelli.css";}}s:6:"engine";s:11:"phptemplate";s:10:"base_theme";s:7:"garland";}}',
+  'page_callback' => 'drupal_get_form',
+  'page_arguments' => 'a:2:{i:0;s:21:"system_theme_settings";i:1;s:8:"minnelli";}',
+  'fit' => '31',
+  'number_parts' => '5',
+  'tab_parent' => 'admin/build/themes/settings',
+  'tab_root' => 'admin/build/themes',
+  'title' => 'Minnelli',
+  'title_callback' => 't',
+  'title_arguments' => '',
+  'type' => '128',
+  'block_callback' => '',
+  'description' => '',
+  'position' => '',
+  'weight' => '0',
+  'file' => 'modules/system/system.admin.inc',
+))
+->values(array(
+  'path' => 'admin/build/themes/settings/pushbutton',
+  'load_functions' => '',
+  'to_arg_functions' => '',
+  'access_callback' => '_system_themes_access',
+  'access_arguments' => 'a:1:{i:0;O:8:"stdClass":12:{s:8:"filename";s:33:"themes/pushbutton/pushbutton.info";s:4:"name";s:10:"pushbutton";s:4:"type";s:5:"theme";s:5:"owner";s:45:"themes/engines/phptemplate/phptemplate.engine";s:6:"status";s:1:"0";s:8:"throttle";s:1:"0";s:9:"bootstrap";s:1:"0";s:14:"schema_version";s:2:"-1";s:6:"weight";s:1:"0";s:4:"info";a:11:{s:4:"name";s:10:"Pushbutton";s:11:"description";s:52:"Tabled, multi-column theme in blue and orange tones.";s:7:"version";s:8:"6.20-dev";s:4:"core";s:3:"6.x";s:6:"engine";s:11:"phptemplate";s:7:"regions";a:5:{s:4:"left";s:12:"Left sidebar";s:5:"right";s:13:"Right sidebar";s:7:"content";s:7:"Content";s:6:"header";s:6:"Header";s:6:"footer";s:6:"Footer";}s:8:"features";a:10:{i:0;s:20:"comment_user_picture";i:1;s:7:"favicon";i:2;s:7:"mission";i:3;s:4:"logo";i:4;s:4:"name";i:5;s:17:"node_user_picture";i:6;s:6:"search";i:7;s:6:"slogan";i:8;s:13:"primary_links";i:9;s:15:"secondary_links";}s:11:"stylesheets";a:1:{s:3:"all";a:1:{s:9:"style.css";s:27:"themes/pushbutton/style.css";}}s:7:"scripts";a:1:{s:9:"script.js";s:27:"themes/pushbutton/script.js";}s:10:"screenshot";s:32:"themes/pushbutton/screenshot.png";s:3:"php";s:5:"4.3.5";}s:11:"stylesheets";a:1:{s:3:"all";a:1:{s:9:"style.css";s:27:"themes/pushbutton/style.css";}}s:6:"engine";s:11:"phptemplate";}}',
+  'page_callback' => 'drupal_get_form',
+  'page_arguments' => 'a:2:{i:0;s:21:"system_theme_settings";i:1;s:10:"pushbutton";}',
+  'fit' => '31',
+  'number_parts' => '5',
+  'tab_parent' => 'admin/build/themes/settings',
+  'tab_root' => 'admin/build/themes',
+  'title' => 'Pushbutton',
+  'title_callback' => 't',
+  'title_arguments' => '',
+  'type' => '128',
+  'block_callback' => '',
+  'description' => '',
+  'position' => '',
+  'weight' => '0',
+  'file' => 'modules/system/system.admin.inc',
+))
+->values(array(
+  'path' => 'admin/by-module',
+  'load_functions' => '',
+  'to_arg_functions' => '',
+  'access_callback' => 'user_access',
+  'access_arguments' => 'a:1:{i:0;s:27:"access administration pages";}',
+  'page_callback' => 'system_admin_by_module',
+  'page_arguments' => 'a:0:{}',
+  'fit' => '3',
+  'number_parts' => '2',
+  'tab_parent' => 'admin',
+  'tab_root' => 'admin',
+  'title' => 'By module',
+  'title_callback' => 't',
+  'title_arguments' => '',
+  'type' => '128',
+  'block_callback' => '',
+  'description' => '',
+  'position' => '',
+  'weight' => '2',
+  'file' => 'modules/system/system.admin.inc',
+))
+->values(array(
+  'path' => 'admin/by-task',
+  'load_functions' => '',
+  'to_arg_functions' => '',
+  'access_callback' => 'user_access',
+  'access_arguments' => 'a:1:{i:0;s:27:"access administration pages";}',
+  'page_callback' => 'system_main_admin_page',
+  'page_arguments' => 'a:0:{}',
+  'fit' => '3',
+  'number_parts' => '2',
+  'tab_parent' => 'admin',
+  'tab_root' => 'admin',
+  'title' => 'By task',
+  'title_callback' => 't',
+  'title_arguments' => '',
+  'type' => '136',
+  'block_callback' => '',
+  'description' => '',
+  'position' => '',
+  'weight' => '0',
+  'file' => 'modules/system/system.admin.inc',
+))
+->values(array(
+  'path' => 'admin/compact',
+  'load_functions' => '',
+  'to_arg_functions' => '',
+  'access_callback' => 'user_access',
+  'access_arguments' => 'a:1:{i:0;s:27:"access administration pages";}',
+  'page_callback' => 'system_admin_compact_page',
+  'page_arguments' => 'a:0:{}',
+  'fit' => '3',
+  'number_parts' => '2',
+  'tab_parent' => '',
+  'tab_root' => 'admin/compact',
+  'title' => 'Compact mode',
+  'title_callback' => 't',
+  'title_arguments' => '',
+  'type' => '4',
+  'block_callback' => '',
+  'description' => '',
+  'position' => '',
+  'weight' => '0',
+  'file' => 'modules/system/system.admin.inc',
+))
+->values(array(
+  'path' => 'admin/content',
+  'load_functions' => '',
+  'to_arg_functions' => '',
+  'access_callback' => 'user_access',
+  'access_arguments' => 'a:1:{i:0;s:27:"access administration pages";}',
+  'page_callback' => 'system_admin_menu_block_page',
+  'page_arguments' => 'a:0:{}',
+  'fit' => '3',
+  'number_parts' => '2',
+  'tab_parent' => '',
+  'tab_root' => 'admin/content',
+  'title' => 'Content management',
+  'title_callback' => 't',
+  'title_arguments' => '',
+  'type' => '6',
+  'block_callback' => '',
+  'description' => "Manage your site's content.",
+  'position' => 'left',
+  'weight' => '-10',
+  'file' => 'modules/system/system.admin.inc',
+))
+->values(array(
+  'path' => 'admin/content/comment',
+  'load_functions' => '',
+  'to_arg_functions' => '',
+  'access_callback' => 'user_access',
+  'access_arguments' => 'a:1:{i:0;s:19:"administer comments";}',
+  'page_callback' => 'comment_admin',
+  'page_arguments' => 'a:0:{}',
+  'fit' => '7',
+  'number_parts' => '3',
+  'tab_parent' => '',
+  'tab_root' => 'admin/content/comment',
+  'title' => 'Comments',
+  'title_callback' => 't',
+  'title_arguments' => '',
+  'type' => '6',
+  'block_callback' => '',
+  'description' => 'List and edit site comments and the comment moderation queue.',
+  'position' => '',
+  'weight' => '0',
+  'file' => 'modules/comment/comment.admin.inc',
+))
+->values(array(
+  'path' => 'admin/content/comment/approval',
+  'load_functions' => '',
+  'to_arg_functions' => '',
+  'access_callback' => 'user_access',
+  'access_arguments' => 'a:1:{i:0;s:19:"administer comments";}',
+  'page_callback' => 'comment_admin',
+  'page_arguments' => 'a:1:{i:0;s:8:"approval";}',
+  'fit' => '15',
+  'number_parts' => '4',
+  'tab_parent' => 'admin/content/comment',
+  'tab_root' => 'admin/content/comment',
+  'title' => 'Approval queue',
+  'title_callback' => 't',
+  'title_arguments' => '',
+  'type' => '128',
+  'block_callback' => '',
+  'description' => '',
+  'position' => '',
+  'weight' => '0',
+  'file' => 'modules/comment/comment.admin.inc',
+))
+->values(array(
+  'path' => 'admin/content/comment/new',
+  'load_functions' => '',
+  'to_arg_functions' => '',
+  'access_callback' => 'user_access',
+  'access_arguments' => 'a:1:{i:0;s:19:"administer comments";}',
+  'page_callback' => 'comment_admin',
+  'page_arguments' => 'a:0:{}',
+  'fit' => '15',
+  'number_parts' => '4',
+  'tab_parent' => 'admin/content/comment',
+  'tab_root' => 'admin/content/comment',
+  'title' => 'Published comments',
+  'title_callback' => 't',
+  'title_arguments' => '',
+  'type' => '136',
+  'block_callback' => '',
+  'description' => '',
+  'position' => '',
+  'weight' => '-10',
+  'file' => 'modules/comment/comment.admin.inc',
+))
+->values(array(
+  'path' => 'admin/content/node',
+  'load_functions' => '',
+  'to_arg_functions' => '',
+  'access_callback' => 'user_access',
+  'access_arguments' => 'a:1:{i:0;s:16:"administer nodes";}',
+  'page_callback' => 'drupal_get_form',
+  'page_arguments' => 'a:1:{i:0;s:18:"node_admin_content";}',
+  'fit' => '7',
+  'number_parts' => '3',
+  'tab_parent' => '',
+  'tab_root' => 'admin/content/node',
+  'title' => 'Content',
+  'title_callback' => 't',
+  'title_arguments' => '',
+  'type' => '6',
+  'block_callback' => '',
+  'description' => "View, edit, and delete your site's content.",
+  'position' => '',
+  'weight' => '0',
+  'file' => 'modules/node/node.admin.inc',
+))
+->values(array(
+  'path' => 'admin/content/node-settings',
+  'load_functions' => '',
+  'to_arg_functions' => '',
+  'access_callback' => 'user_access',
+  'access_arguments' => 'a:1:{i:0;s:16:"administer nodes";}',
+  'page_callback' => 'drupal_get_form',
+  'page_arguments' => 'a:1:{i:0;s:14:"node_configure";}',
+  'fit' => '7',
+  'number_parts' => '3',
+  'tab_parent' => '',
+  'tab_root' => 'admin/content/node-settings',
+  'title' => 'Post settings',
+  'title_callback' => 't',
+  'title_arguments' => '',
+  'type' => '6',
+  'block_callback' => '',
+  'description' => 'Control posting behavior, such as teaser length, requiring previews before posting, and the number of posts on the front page.',
+  'position' => '',
+  'weight' => '0',
+  'file' => 'modules/node/node.admin.inc',
+))
+->values(array(
+  'path' => 'admin/content/node-settings/rebuild',
+  'load_functions' => '',
+  'to_arg_functions' => '',
+  'access_callback' => 'user_access',
+  'access_arguments' => 'a:1:{i:0;s:27:"access administration pages";}',
+  'page_callback' => 'drupal_get_form',
+  'page_arguments' => 'a:1:{i:0;s:30:"node_configure_rebuild_confirm";}',
+  'fit' => '15',
+  'number_parts' => '4',
+  'tab_parent' => '',
+  'tab_root' => 'admin/content/node-settings/rebuild',
+  'title' => 'Rebuild permissions',
+  'title_callback' => 't',
+  'title_arguments' => '',
+  'type' => '4',
+  'block_callback' => '',
+  'description' => '',
+  'position' => '',
+  'weight' => '0',
+  'file' => 'modules/node/node.admin.inc',
+))
+->values(array(
+  'path' => 'admin/content/node-type/page',
+  'load_functions' => '',
+  'to_arg_functions' => '',
+  'access_callback' => 'user_access',
+  'access_arguments' => 'a:1:{i:0;s:24:"administer content types";}',
+  'page_callback' => 'drupal_get_form',
+  'page_arguments' => "a:2:{i:0;s:14:\"node_type_form\";i:1;O:8:\"stdClass\":14:{s:4:\"type\";s:4:\"page\";s:4:\"name\";s:4:\"Page\";s:6:\"module\";s:4:\"node\";s:11:\"description\";s:296:\"A <em>page</em>, similar in form to a <em>story</em>, is a simple method for creating and displaying information that rarely changes, such as an \"About us\" section of a website. By default, a <em>page</em> entry does not allow visitor comments and is not featured on the site's initial home page.\";s:4:\"help\";s:0:\"\";s:9:\"has_title\";s:1:\"1\";s:11:\"title_label\";s:5:\"Title\";s:8:\"has_body\";s:1:\"1\";s:10:\"body_label\";s:4:\"Body\";s:14:\"min_word_count\";s:1:\"0\";s:6:\"custom\";s:1:\"1\";s:8:\"modified\";s:1:\"1\";s:6:\"locked\";s:1:\"0\";s:9:\"orig_type\";s:4:\"page\";}}",
+  'fit' => '15',
+  'number_parts' => '4',
+  'tab_parent' => '',
+  'tab_root' => 'admin/content/node-type/page',
+  'title' => 'Page',
+  'title_callback' => 't',
+  'title_arguments' => '',
+  'type' => '4',
+  'block_callback' => '',
+  'description' => '',
+  'position' => '',
+  'weight' => '0',
+  'file' => 'modules/node/content_types.inc',
+))
+->values(array(
+  'path' => 'admin/content/node-type/page/delete',
+  'load_functions' => '',
+  'to_arg_functions' => '',
+  'access_callback' => 'user_access',
+  'access_arguments' => 'a:1:{i:0;s:24:"administer content types";}',
+  'page_callback' => 'drupal_get_form',
+  'page_arguments' => "a:2:{i:0;s:24:\"node_type_delete_confirm\";i:1;O:8:\"stdClass\":14:{s:4:\"type\";s:4:\"page\";s:4:\"name\";s:4:\"Page\";s:6:\"module\";s:4:\"node\";s:11:\"description\";s:296:\"A <em>page</em>, similar in form to a <em>story</em>, is a simple method for creating and displaying information that rarely changes, such as an \"About us\" section of a website. By default, a <em>page</em> entry does not allow visitor comments and is not featured on the site's initial home page.\";s:4:\"help\";s:0:\"\";s:9:\"has_title\";s:1:\"1\";s:11:\"title_label\";s:5:\"Title\";s:8:\"has_body\";s:1:\"1\";s:10:\"body_label\";s:4:\"Body\";s:14:\"min_word_count\";s:1:\"0\";s:6:\"custom\";s:1:\"1\";s:8:\"modified\";s:1:\"1\";s:6:\"locked\";s:1:\"0\";s:9:\"orig_type\";s:4:\"page\";}}",
+  'fit' => '31',
+  'number_parts' => '5',
+  'tab_parent' => '',
+  'tab_root' => 'admin/content/node-type/page/delete',
+  'title' => 'Delete',
+  'title_callback' => 't',
+  'title_arguments' => '',
+  'type' => '4',
+  'block_callback' => '',
+  'description' => '',
+  'position' => '',
+  'weight' => '0',
+  'file' => 'modules/node/content_types.inc',
+))
+->values(array(
+  'path' => 'admin/content/node-type/page/edit',
+  'load_functions' => '',
+  'to_arg_functions' => '',
+  'access_callback' => 'user_access',
+  'access_arguments' => 'a:1:{i:0;s:24:"administer content types";}',
+  'page_callback' => 'drupal_get_form',
+  'page_arguments' => "a:2:{i:0;s:14:\"node_type_form\";i:1;O:8:\"stdClass\":14:{s:4:\"type\";s:4:\"page\";s:4:\"name\";s:4:\"Page\";s:6:\"module\";s:4:\"node\";s:11:\"description\";s:296:\"A <em>page</em>, similar in form to a <em>story</em>, is a simple method for creating and displaying information that rarely changes, such as an \"About us\" section of a website. By default, a <em>page</em> entry does not allow visitor comments and is not featured on the site's initial home page.\";s:4:\"help\";s:0:\"\";s:9:\"has_title\";s:1:\"1\";s:11:\"title_label\";s:5:\"Title\";s:8:\"has_body\";s:1:\"1\";s:10:\"body_label\";s:4:\"Body\";s:14:\"min_word_count\";s:1:\"0\";s:6:\"custom\";s:1:\"1\";s:8:\"modified\";s:1:\"1\";s:6:\"locked\";s:1:\"0\";s:9:\"orig_type\";s:4:\"page\";}}",
+  'fit' => '31',
+  'number_parts' => '5',
+  'tab_parent' => 'admin/content/node-type/page',
+  'tab_root' => 'admin/content/node-type/page',
+  'title' => 'Edit',
+  'title_callback' => 't',
+  'title_arguments' => '',
+  'type' => '136',
+  'block_callback' => '',
+  'description' => '',
+  'position' => '',
+  'weight' => '0',
+  'file' => 'modules/node/content_types.inc',
+))
+->values(array(
+  'path' => 'admin/content/node-type/poll',
+  'load_functions' => '',
+  'to_arg_functions' => '',
+  'access_callback' => 'user_access',
+  'access_arguments' => 'a:1:{i:0;s:24:"administer content types";}',
+  'page_callback' => 'drupal_get_form',
+  'page_arguments' => 'a:2:{i:0;s:14:"node_type_form";i:1;O:8:"stdClass":14:{s:4:"name";s:4:"Poll";s:6:"module";s:4:"poll";s:11:"description";s:191:"A <em>poll</em> is a question with a set of possible responses. A <em>poll</em>, once created, automatically provides a simple running count of the number of votes received for each response.";s:11:"title_label";s:8:"Question";s:8:"has_body";b:0;s:4:"type";s:4:"poll";s:9:"has_title";b:1;s:4:"help";s:0:"";s:14:"min_word_count";i:0;s:6:"custom";b:0;s:8:"modified";b:0;s:6:"locked";b:1;s:9:"orig_type";s:4:"poll";s:6:"is_new";b:1;}}',
+  'fit' => '15',
+  'number_parts' => '4',
+  'tab_parent' => '',
+  'tab_root' => 'admin/content/node-type/poll',
+  'title' => 'Poll',
+  'title_callback' => 't',
+  'title_arguments' => '',
+  'type' => '4',
+  'block_callback' => '',
+  'description' => '',
+  'position' => '',
+  'weight' => '0',
+  'file' => 'modules/node/content_types.inc',
+))
+->values(array(
+  'path' => 'admin/content/node-type/poll/delete',
+  'load_functions' => '',
+  'to_arg_functions' => '',
+  'access_callback' => 'user_access',
+  'access_arguments' => 'a:1:{i:0;s:24:"administer content types";}',
+  'page_callback' => 'drupal_get_form',
+  'page_arguments' => 'a:2:{i:0;s:24:"node_type_delete_confirm";i:1;O:8:"stdClass":14:{s:4:"name";s:4:"Poll";s:6:"module";s:4:"poll";s:11:"description";s:191:"A <em>poll</em> is a question with a set of possible responses. A <em>poll</em>, once created, automatically provides a simple running count of the number of votes received for each response.";s:11:"title_label";s:8:"Question";s:8:"has_body";b:0;s:4:"type";s:4:"poll";s:9:"has_title";b:1;s:4:"help";s:0:"";s:14:"min_word_count";i:0;s:6:"custom";b:0;s:8:"modified";b:0;s:6:"locked";b:1;s:9:"orig_type";s:4:"poll";s:6:"is_new";b:1;}}',
+  'fit' => '31',
+  'number_parts' => '5',
+  'tab_parent' => '',
+  'tab_root' => 'admin/content/node-type/poll/delete',
+  'title' => 'Delete',
+  'title_callback' => 't',
+  'title_arguments' => '',
+  'type' => '4',
+  'block_callback' => '',
+  'description' => '',
+  'position' => '',
+  'weight' => '0',
+  'file' => 'modules/node/content_types.inc',
+))
+->values(array(
+  'path' => 'admin/content/node-type/poll/edit',
+  'load_functions' => '',
+  'to_arg_functions' => '',
+  'access_callback' => 'user_access',
+  'access_arguments' => 'a:1:{i:0;s:24:"administer content types";}',
+  'page_callback' => 'drupal_get_form',
+  'page_arguments' => 'a:2:{i:0;s:14:"node_type_form";i:1;O:8:"stdClass":14:{s:4:"name";s:4:"Poll";s:6:"module";s:4:"poll";s:11:"description";s:191:"A <em>poll</em> is a question with a set of possible responses. A <em>poll</em>, once created, automatically provides a simple running count of the number of votes received for each response.";s:11:"title_label";s:8:"Question";s:8:"has_body";b:0;s:4:"type";s:4:"poll";s:9:"has_title";b:1;s:4:"help";s:0:"";s:14:"min_word_count";i:0;s:6:"custom";b:0;s:8:"modified";b:0;s:6:"locked";b:1;s:9:"orig_type";s:4:"poll";s:6:"is_new";b:1;}}',
+  'fit' => '31',
+  'number_parts' => '5',
+  'tab_parent' => 'admin/content/node-type/poll',
+  'tab_root' => 'admin/content/node-type/poll',
+  'title' => 'Edit',
+  'title_callback' => 't',
+  'title_arguments' => '',
+  'type' => '136',
+  'block_callback' => '',
+  'description' => '',
+  'position' => '',
+  'weight' => '0',
+  'file' => 'modules/node/content_types.inc',
+))
+->values(array(
+  'path' => 'admin/content/node-type/story',
+  'load_functions' => '',
+  'to_arg_functions' => '',
+  'access_callback' => 'user_access',
+  'access_arguments' => 'a:1:{i:0;s:24:"administer content types";}',
+  'page_callback' => 'drupal_get_form',
+  'page_arguments' => "a:2:{i:0;s:14:\"node_type_form\";i:1;O:8:\"stdClass\":14:{s:4:\"type\";s:5:\"story\";s:4:\"name\";s:5:\"Story\";s:6:\"module\";s:4:\"node\";s:11:\"description\";s:392:\"A <em>story</em>, similar in form to a <em>page</em>, is ideal for creating and displaying content that informs or engages website visitors. Press releases, site announcements, and informal blog-like entries may all be created with a <em>story</em> entry. By default, a <em>story</em> entry is automatically featured on the site's initial home page, and provides the ability to post comments.\";s:4:\"help\";s:0:\"\";s:9:\"has_title\";s:1:\"1\";s:11:\"title_label\";s:5:\"Title\";s:8:\"has_body\";s:1:\"1\";s:10:\"body_label\";s:4:\"Body\";s:14:\"min_word_count\";s:1:\"0\";s:6:\"custom\";s:1:\"1\";s:8:\"modified\";s:1:\"1\";s:6:\"locked\";s:1:\"0\";s:9:\"orig_type\";s:5:\"story\";}}",
+  'fit' => '15',
+  'number_parts' => '4',
+  'tab_parent' => '',
+  'tab_root' => 'admin/content/node-type/story',
+  'title' => 'Story',
+  'title_callback' => 't',
+  'title_arguments' => '',
+  'type' => '4',
+  'block_callback' => '',
+  'description' => '',
+  'position' => '',
+  'weight' => '0',
+  'file' => 'modules/node/content_types.inc',
+))
+->values(array(
+  'path' => 'admin/content/node-type/story/delete',
+  'load_functions' => '',
+  'to_arg_functions' => '',
+  'access_callback' => 'user_access',
+  'access_arguments' => 'a:1:{i:0;s:24:"administer content types";}',
+  'page_callback' => 'drupal_get_form',
+  'page_arguments' => "a:2:{i:0;s:24:\"node_type_delete_confirm\";i:1;O:8:\"stdClass\":14:{s:4:\"type\";s:5:\"story\";s:4:\"name\";s:5:\"Story\";s:6:\"module\";s:4:\"node\";s:11:\"description\";s:392:\"A <em>story</em>, similar in form to a <em>page</em>, is ideal for creating and displaying content that informs or engages website visitors. Press releases, site announcements, and informal blog-like entries may all be created with a <em>story</em> entry. By default, a <em>story</em> entry is automatically featured on the site's initial home page, and provides the ability to post comments.\";s:4:\"help\";s:0:\"\";s:9:\"has_title\";s:1:\"1\";s:11:\"title_label\";s:5:\"Title\";s:8:\"has_body\";s:1:\"1\";s:10:\"body_label\";s:4:\"Body\";s:14:\"min_word_count\";s:1:\"0\";s:6:\"custom\";s:1:\"1\";s:8:\"modified\";s:1:\"1\";s:6:\"locked\";s:1:\"0\";s:9:\"orig_type\";s:5:\"story\";}}",
+  'fit' => '31',
+  'number_parts' => '5',
+  'tab_parent' => '',
+  'tab_root' => 'admin/content/node-type/story/delete',
+  'title' => 'Delete',
+  'title_callback' => 't',
+  'title_arguments' => '',
+  'type' => '4',
+  'block_callback' => '',
+  'description' => '',
+  'position' => '',
+  'weight' => '0',
+  'file' => 'modules/node/content_types.inc',
+))
+->values(array(
+  'path' => 'admin/content/node-type/story/edit',
+  'load_functions' => '',
+  'to_arg_functions' => '',
+  'access_callback' => 'user_access',
+  'access_arguments' => 'a:1:{i:0;s:24:"administer content types";}',
+  'page_callback' => 'drupal_get_form',
+  'page_arguments' => "a:2:{i:0;s:14:\"node_type_form\";i:1;O:8:\"stdClass\":14:{s:4:\"type\";s:5:\"story\";s:4:\"name\";s:5:\"Story\";s:6:\"module\";s:4:\"node\";s:11:\"description\";s:392:\"A <em>story</em>, similar in form to a <em>page</em>, is ideal for creating and displaying content that informs or engages website visitors. Press releases, site announcements, and informal blog-like entries may all be created with a <em>story</em> entry. By default, a <em>story</em> entry is automatically featured on the site's initial home page, and provides the ability to post comments.\";s:4:\"help\";s:0:\"\";s:9:\"has_title\";s:1:\"1\";s:11:\"title_label\";s:5:\"Title\";s:8:\"has_body\";s:1:\"1\";s:10:\"body_label\";s:4:\"Body\";s:14:\"min_word_count\";s:1:\"0\";s:6:\"custom\";s:1:\"1\";s:8:\"modified\";s:1:\"1\";s:6:\"locked\";s:1:\"0\";s:9:\"orig_type\";s:5:\"story\";}}",
+  'fit' => '31',
+  'number_parts' => '5',
+  'tab_parent' => 'admin/content/node-type/story',
+  'tab_root' => 'admin/content/node-type/story',
+  'title' => 'Edit',
+  'title_callback' => 't',
+  'title_arguments' => '',
+  'type' => '136',
+  'block_callback' => '',
+  'description' => '',
+  'position' => '',
+  'weight' => '0',
+  'file' => 'modules/node/content_types.inc',
+))
+->values(array(
+  'path' => 'admin/content/node/overview',
+  'load_functions' => '',
+  'to_arg_functions' => '',
+  'access_callback' => 'user_access',
+  'access_arguments' => 'a:1:{i:0;s:16:"administer nodes";}',
+  'page_callback' => 'drupal_get_form',
+  'page_arguments' => 'a:1:{i:0;s:18:"node_admin_content";}',
+  'fit' => '15',
+  'number_parts' => '4',
+  'tab_parent' => 'admin/content/node',
+  'tab_root' => 'admin/content/node',
+  'title' => 'List',
+  'title_callback' => 't',
+  'title_arguments' => '',
+  'type' => '136',
+  'block_callback' => '',
+  'description' => '',
+  'position' => '',
+  'weight' => '-10',
+  'file' => 'modules/node/node.admin.inc',
+))
+->values(array(
+  'path' => 'admin/content/rss-publishing',
+  'load_functions' => '',
+  'to_arg_functions' => '',
+  'access_callback' => 'user_access',
+  'access_arguments' => 'a:1:{i:0;s:29:"administer site configuration";}',
+  'page_callback' => 'drupal_get_form',
+  'page_arguments' => 'a:1:{i:0;s:25:"system_rss_feeds_settings";}',
+  'fit' => '7',
+  'number_parts' => '3',
+  'tab_parent' => '',
+  'tab_root' => 'admin/content/rss-publishing',
+  'title' => 'RSS publishing',
+  'title_callback' => 't',
+  'title_arguments' => '',
+  'type' => '6',
+  'block_callback' => '',
+  'description' => 'Configure the number of items per feed and whether feeds should be titles/teasers/full-text.',
+  'position' => '',
+  'weight' => '0',
+  'file' => 'modules/system/system.admin.inc',
+))
+->values(array(
+  'path' => 'admin/content/taxonomy',
+  'load_functions' => '',
+  'to_arg_functions' => '',
+  'access_callback' => 'user_access',
+  'access_arguments' => 'a:1:{i:0;s:19:"administer taxonomy";}',
+  'page_callback' => 'drupal_get_form',
+  'page_arguments' => 'a:1:{i:0;s:30:"taxonomy_overview_vocabularies";}',
+  'fit' => '7',
+  'number_parts' => '3',
+  'tab_parent' => '',
+  'tab_root' => 'admin/content/taxonomy',
+  'title' => 'Taxonomy',
+  'title_callback' => 't',
+  'title_arguments' => '',
+  'type' => '6',
+  'block_callback' => '',
+  'description' => 'Manage tagging, categorization, and classification of your content.',
+  'position' => '',
+  'weight' => '0',
+  'file' => 'modules/taxonomy/taxonomy.admin.inc',
+))
+->values(array(
+  'path' => 'admin/content/taxonomy/%',
+  'load_functions' => 'a:1:{i:3;s:24:"taxonomy_vocabulary_load";}',
+  'to_arg_functions' => '',
+  'access_callback' => 'user_access',
+  'access_arguments' => 'a:1:{i:0;s:19:"administer taxonomy";}',
+  'page_callback' => 'drupal_get_form',
+  'page_arguments' => 'a:2:{i:0;s:23:"taxonomy_overview_terms";i:1;i:3;}',
+  'fit' => '14',
+  'number_parts' => '4',
+  'tab_parent' => '',
+  'tab_root' => 'admin/content/taxonomy/%',
+  'title' => 'List terms',
+  'title_callback' => 't',
+  'title_arguments' => '',
+  'type' => '4',
+  'block_callback' => '',
+  'description' => '',
+  'position' => '',
+  'weight' => '0',
+  'file' => 'modules/taxonomy/taxonomy.admin.inc',
+))
+->values(array(
+  'path' => 'admin/content/taxonomy/%/add/term',
+  'load_functions' => 'a:1:{i:3;s:24:"taxonomy_vocabulary_load";}',
+  'to_arg_functions' => '',
+  'access_callback' => 'user_access',
+  'access_arguments' => 'a:1:{i:0;s:19:"administer taxonomy";}',
+  'page_callback' => 'taxonomy_add_term_page',
+  'page_arguments' => 'a:1:{i:0;i:3;}',
+  'fit' => '59',
+  'number_parts' => '6',
+  'tab_parent' => 'admin/content/taxonomy/%',
+  'tab_root' => 'admin/content/taxonomy/%',
+  'title' => 'Add term',
+  'title_callback' => 't',
+  'title_arguments' => '',
+  'type' => '128',
+  'block_callback' => '',
+  'description' => '',
+  'position' => '',
+  'weight' => '0',
+  'file' => 'modules/taxonomy/taxonomy.admin.inc',
+))
+->values(array(
+  'path' => 'admin/content/taxonomy/%/list',
+  'load_functions' => 'a:1:{i:3;s:24:"taxonomy_vocabulary_load";}',
+  'to_arg_functions' => '',
+  'access_callback' => 'user_access',
+  'access_arguments' => 'a:1:{i:0;s:19:"administer taxonomy";}',
+  'page_callback' => 'drupal_get_form',
+  'page_arguments' => 'a:2:{i:0;s:23:"taxonomy_overview_terms";i:1;i:3;}',
+  'fit' => '29',
+  'number_parts' => '5',
+  'tab_parent' => 'admin/content/taxonomy/%',
+  'tab_root' => 'admin/content/taxonomy/%',
+  'title' => 'List',
+  'title_callback' => 't',
+  'title_arguments' => '',
+  'type' => '136',
+  'block_callback' => '',
+  'description' => '',
+  'position' => '',
+  'weight' => '-10',
+  'file' => 'modules/taxonomy/taxonomy.admin.inc',
+))
+->values(array(
+  'path' => 'admin/content/taxonomy/add/vocabulary',
+  'load_functions' => '',
+  'to_arg_functions' => '',
+  'access_callback' => 'user_access',
+  'access_arguments' => 'a:1:{i:0;s:19:"administer taxonomy";}',
+  'page_callback' => 'drupal_get_form',
+  'page_arguments' => 'a:1:{i:0;s:24:"taxonomy_form_vocabulary";}',
+  'fit' => '31',
+  'number_parts' => '5',
+  'tab_parent' => 'admin/content/taxonomy',
+  'tab_root' => 'admin/content/taxonomy',
+  'title' => 'Add vocabulary',
+  'title_callback' => 't',
+  'title_arguments' => '',
+  'type' => '128',
+  'block_callback' => '',
+  'description' => '',
+  'position' => '',
+  'weight' => '0',
+  'file' => 'modules/taxonomy/taxonomy.admin.inc',
+))
+->values(array(
+  'path' => 'admin/content/taxonomy/edit/term',
+  'load_functions' => '',
+  'to_arg_functions' => '',
+  'access_callback' => 'user_access',
+  'access_arguments' => 'a:1:{i:0;s:19:"administer taxonomy";}',
+  'page_callback' => 'taxonomy_admin_term_edit',
+  'page_arguments' => 'a:0:{}',
+  'fit' => '31',
+  'number_parts' => '5',
+  'tab_parent' => '',
+  'tab_root' => 'admin/content/taxonomy/edit/term',
+  'title' => 'Edit term',
+  'title_callback' => 't',
+  'title_arguments' => '',
+  'type' => '4',
+  'block_callback' => '',
+  'description' => '',
+  'position' => '',
+  'weight' => '0',
+  'file' => 'modules/taxonomy/taxonomy.admin.inc',
+))
+->values(array(
+  'path' => 'admin/content/taxonomy/edit/vocabulary/%',
+  'load_functions' => 'a:1:{i:5;s:24:"taxonomy_vocabulary_load";}',
+  'to_arg_functions' => '',
+  'access_callback' => 'user_access',
+  'access_arguments' => 'a:1:{i:0;s:19:"administer taxonomy";}',
+  'page_callback' => 'taxonomy_admin_vocabulary_edit',
+  'page_arguments' => 'a:1:{i:0;i:5;}',
+  'fit' => '62',
+  'number_parts' => '6',
+  'tab_parent' => '',
+  'tab_root' => 'admin/content/taxonomy/edit/vocabulary/%',
+  'title' => 'Edit vocabulary',
+  'title_callback' => 't',
+  'title_arguments' => '',
+  'type' => '4',
+  'block_callback' => '',
+  'description' => '',
+  'position' => '',
+  'weight' => '0',
+  'file' => 'modules/taxonomy/taxonomy.admin.inc',
+))
+->values(array(
+  'path' => 'admin/content/taxonomy/list',
+  'load_functions' => '',
+  'to_arg_functions' => '',
+  'access_callback' => 'user_access',
+  'access_arguments' => 'a:1:{i:0;s:19:"administer taxonomy";}',
+  'page_callback' => 'drupal_get_form',
+  'page_arguments' => 'a:1:{i:0;s:30:"taxonomy_overview_vocabularies";}',
+  'fit' => '15',
+  'number_parts' => '4',
+  'tab_parent' => 'admin/content/taxonomy',
+  'tab_root' => 'admin/content/taxonomy',
+  'title' => 'List',
+  'title_callback' => 't',
+  'title_arguments' => '',
+  'type' => '136',
+  'block_callback' => '',
+  'description' => '',
+  'position' => '',
+  'weight' => '-10',
+  'file' => 'modules/taxonomy/taxonomy.admin.inc',
+))
+->values(array(
+  'path' => 'admin/content/types',
+  'load_functions' => '',
+  'to_arg_functions' => '',
+  'access_callback' => 'user_access',
+  'access_arguments' => 'a:1:{i:0;s:24:"administer content types";}',
+  'page_callback' => 'node_overview_types',
+  'page_arguments' => 'a:0:{}',
+  'fit' => '7',
+  'number_parts' => '3',
+  'tab_parent' => '',
+  'tab_root' => 'admin/content/types',
+  'title' => 'Content types',
+  'title_callback' => 't',
+  'title_arguments' => '',
+  'type' => '6',
+  'block_callback' => '',
+  'description' => 'Manage posts by content type, including default status, front page promotion, etc.',
+  'position' => '',
+  'weight' => '0',
+  'file' => 'modules/node/content_types.inc',
+))
+->values(array(
+  'path' => 'admin/content/types/add',
+  'load_functions' => '',
+  'to_arg_functions' => '',
+  'access_callback' => 'user_access',
+  'access_arguments' => 'a:1:{i:0;s:24:"administer content types";}',
+  'page_callback' => 'drupal_get_form',
+  'page_arguments' => 'a:1:{i:0;s:14:"node_type_form";}',
+  'fit' => '15',
+  'number_parts' => '4',
+  'tab_parent' => 'admin/content/types',
+  'tab_root' => 'admin/content/types',
+  'title' => 'Add content type',
+  'title_callback' => 't',
+  'title_arguments' => '',
+  'type' => '128',
+  'block_callback' => '',
+  'description' => '',
+  'position' => '',
+  'weight' => '0',
+  'file' => 'modules/node/content_types.inc',
+))
+->values(array(
+  'path' => 'admin/content/types/list',
+  'load_functions' => '',
+  'to_arg_functions' => '',
+  'access_callback' => 'user_access',
+  'access_arguments' => 'a:1:{i:0;s:24:"administer content types";}',
+  'page_callback' => 'node_overview_types',
+  'page_arguments' => 'a:0:{}',
+  'fit' => '15',
+  'number_parts' => '4',
+  'tab_parent' => 'admin/content/types',
+  'tab_root' => 'admin/content/types',
+  'title' => 'List',
+  'title_callback' => 't',
+  'title_arguments' => '',
+  'type' => '136',
+  'block_callback' => '',
+  'description' => '',
+  'position' => '',
+  'weight' => '-10',
+  'file' => 'modules/node/content_types.inc',
+))
+->values(array(
+  'path' => 'admin/help',
+  'load_functions' => '',
+  'to_arg_functions' => '',
+  'access_callback' => 'user_access',
+  'access_arguments' => 'a:1:{i:0;s:27:"access administration pages";}',
+  'page_callback' => 'help_main',
+  'page_arguments' => 'a:0:{}',
+  'fit' => '3',
+  'number_parts' => '2',
+  'tab_parent' => '',
+  'tab_root' => 'admin/help',
+  'title' => 'Help',
+  'title_callback' => 't',
+  'title_arguments' => '',
+  'type' => '6',
+  'block_callback' => '',
+  'description' => '',
+  'position' => '',
+  'weight' => '9',
+  'file' => 'modules/help/help.admin.inc',
+))
+->values(array(
+  'path' => 'admin/help/block',
+  'load_functions' => '',
+  'to_arg_functions' => '',
+  'access_callback' => 'user_access',
+  'access_arguments' => 'a:1:{i:0;s:27:"access administration pages";}',
+  'page_callback' => 'help_page',
+  'page_arguments' => 'a:1:{i:0;i:2;}',
+  'fit' => '7',
+  'number_parts' => '3',
+  'tab_parent' => '',
+  'tab_root' => 'admin/help/block',
+  'title' => 'block',
+  'title_callback' => 't',
+  'title_arguments' => '',
+  'type' => '4',
+  'block_callback' => '',
+  'description' => '',
+  'position' => '',
+  'weight' => '0',
+  'file' => 'modules/help/help.admin.inc',
+))
+->values(array(
+  'path' => 'admin/help/color',
+  'load_functions' => '',
+  'to_arg_functions' => '',
+  'access_callback' => 'user_access',
+  'access_arguments' => 'a:1:{i:0;s:27:"access administration pages";}',
+  'page_callback' => 'help_page',
+  'page_arguments' => 'a:1:{i:0;i:2;}',
+  'fit' => '7',
+  'number_parts' => '3',
+  'tab_parent' => '',
+  'tab_root' => 'admin/help/color',
+  'title' => 'color',
+  'title_callback' => 't',
+  'title_arguments' => '',
+  'type' => '4',
+  'block_callback' => '',
+  'description' => '',
+  'position' => '',
+  'weight' => '0',
+  'file' => 'modules/help/help.admin.inc',
+))
+->values(array(
+  'path' => 'admin/help/comment',
+  'load_functions' => '',
+  'to_arg_functions' => '',
+  'access_callback' => 'user_access',
+  'access_arguments' => 'a:1:{i:0;s:27:"access administration pages";}',
+  'page_callback' => 'help_page',
+  'page_arguments' => 'a:1:{i:0;i:2;}',
+  'fit' => '7',
+  'number_parts' => '3',
+  'tab_parent' => '',
+  'tab_root' => 'admin/help/comment',
+  'title' => 'comment',
+  'title_callback' => 't',
+  'title_arguments' => '',
+  'type' => '4',
+  'block_callback' => '',
+  'description' => '',
+  'position' => '',
+  'weight' => '0',
+  'file' => 'modules/help/help.admin.inc',
+))
+->values(array(
+  'path' => 'admin/help/dblog',
+  'load_functions' => '',
+  'to_arg_functions' => '',
+  'access_callback' => 'user_access',
+  'access_arguments' => 'a:1:{i:0;s:27:"access administration pages";}',
+  'page_callback' => 'help_page',
+  'page_arguments' => 'a:1:{i:0;i:2;}',
+  'fit' => '7',
+  'number_parts' => '3',
+  'tab_parent' => '',
+  'tab_root' => 'admin/help/dblog',
+  'title' => 'dblog',
+  'title_callback' => 't',
+  'title_arguments' => '',
+  'type' => '4',
+  'block_callback' => '',
+  'description' => '',
+  'position' => '',
+  'weight' => '0',
+  'file' => 'modules/help/help.admin.inc',
+))
+->values(array(
+  'path' => 'admin/help/filter',
+  'load_functions' => '',
+  'to_arg_functions' => '',
+  'access_callback' => 'user_access',
+  'access_arguments' => 'a:1:{i:0;s:27:"access administration pages";}',
+  'page_callback' => 'help_page',
+  'page_arguments' => 'a:1:{i:0;i:2;}',
+  'fit' => '7',
+  'number_parts' => '3',
+  'tab_parent' => '',
+  'tab_root' => 'admin/help/filter',
+  'title' => 'filter',
+  'title_callback' => 't',
+  'title_arguments' => '',
+  'type' => '4',
+  'block_callback' => '',
+  'description' => '',
+  'position' => '',
+  'weight' => '0',
+  'file' => 'modules/help/help.admin.inc',
+))
+->values(array(
+  'path' => 'admin/help/help',
+  'load_functions' => '',
+  'to_arg_functions' => '',
+  'access_callback' => 'user_access',
+  'access_arguments' => 'a:1:{i:0;s:27:"access administration pages";}',
+  'page_callback' => 'help_page',
+  'page_arguments' => 'a:1:{i:0;i:2;}',
+  'fit' => '7',
+  'number_parts' => '3',
+  'tab_parent' => '',
+  'tab_root' => 'admin/help/help',
+  'title' => 'help',
+  'title_callback' => 't',
+  'title_arguments' => '',
+  'type' => '4',
+  'block_callback' => '',
+  'description' => '',
+  'position' => '',
+  'weight' => '0',
+  'file' => 'modules/help/help.admin.inc',
+))
+->values(array(
+  'path' => 'admin/help/menu',
+  'load_functions' => '',
+  'to_arg_functions' => '',
+  'access_callback' => 'user_access',
+  'access_arguments' => 'a:1:{i:0;s:27:"access administration pages";}',
+  'page_callback' => 'help_page',
+  'page_arguments' => 'a:1:{i:0;i:2;}',
+  'fit' => '7',
+  'number_parts' => '3',
+  'tab_parent' => '',
+  'tab_root' => 'admin/help/menu',
+  'title' => 'menu',
+  'title_callback' => 't',
+  'title_arguments' => '',
+  'type' => '4',
+  'block_callback' => '',
+  'description' => '',
+  'position' => '',
+  'weight' => '0',
+  'file' => 'modules/help/help.admin.inc',
+))
+->values(array(
+  'path' => 'admin/help/node',
+  'load_functions' => '',
+  'to_arg_functions' => '',
+  'access_callback' => 'user_access',
+  'access_arguments' => 'a:1:{i:0;s:27:"access administration pages";}',
+  'page_callback' => 'help_page',
+  'page_arguments' => 'a:1:{i:0;i:2;}',
+  'fit' => '7',
+  'number_parts' => '3',
+  'tab_parent' => '',
+  'tab_root' => 'admin/help/node',
+  'title' => 'node',
+  'title_callback' => 't',
+  'title_arguments' => '',
+  'type' => '4',
+  'block_callback' => '',
+  'description' => '',
+  'position' => '',
+  'weight' => '0',
+  'file' => 'modules/help/help.admin.inc',
+))
+->values(array(
+  'path' => 'admin/help/path',
+  'load_functions' => '',
+  'to_arg_functions' => '',
+  'access_callback' => 'user_access',
+  'access_arguments' => 'a:1:{i:0;s:27:"access administration pages";}',
+  'page_callback' => 'help_page',
+  'page_arguments' => 'a:1:{i:0;i:2;}',
+  'fit' => '7',
+  'number_parts' => '3',
+  'tab_parent' => '',
+  'tab_root' => 'admin/help/path',
+  'title' => 'path',
+  'title_callback' => 't',
+  'title_arguments' => '',
+  'type' => '4',
+  'block_callback' => '',
+  'description' => '',
+  'position' => '',
+  'weight' => '0',
+  'file' => 'modules/help/help.admin.inc',
+))
+->values(array(
+  'path' => 'admin/help/poll',
+  'load_functions' => '',
+  'to_arg_functions' => '',
+  'access_callback' => 'user_access',
+  'access_arguments' => 'a:1:{i:0;s:27:"access administration pages";}',
+  'page_callback' => 'help_page',
+  'page_arguments' => 'a:1:{i:0;i:2;}',
+  'fit' => '7',
+  'number_parts' => '3',
+  'tab_parent' => '',
+  'tab_root' => 'admin/help/poll',
+  'title' => 'poll',
+  'title_callback' => 't',
+  'title_arguments' => '',
+  'type' => '4',
+  'block_callback' => '',
+  'description' => '',
+  'position' => '',
+  'weight' => '0',
+  'file' => 'modules/help/help.admin.inc',
+))
+->values(array(
+  'path' => 'admin/help/system',
+  'load_functions' => '',
+  'to_arg_functions' => '',
+  'access_callback' => 'user_access',
+  'access_arguments' => 'a:1:{i:0;s:27:"access administration pages";}',
+  'page_callback' => 'help_page',
+  'page_arguments' => 'a:1:{i:0;i:2;}',
+  'fit' => '7',
+  'number_parts' => '3',
+  'tab_parent' => '',
+  'tab_root' => 'admin/help/system',
+  'title' => 'system',
+  'title_callback' => 't',
+  'title_arguments' => '',
+  'type' => '4',
+  'block_callback' => '',
+  'description' => '',
+  'position' => '',
+  'weight' => '0',
+  'file' => 'modules/help/help.admin.inc',
+))
+->values(array(
+  'path' => 'admin/help/taxonomy',
+  'load_functions' => '',
+  'to_arg_functions' => '',
+  'access_callback' => 'user_access',
+  'access_arguments' => 'a:1:{i:0;s:27:"access administration pages";}',
+  'page_callback' => 'help_page',
+  'page_arguments' => 'a:1:{i:0;i:2;}',
+  'fit' => '7',
+  'number_parts' => '3',
+  'tab_parent' => '',
+  'tab_root' => 'admin/help/taxonomy',
+  'title' => 'taxonomy',
+  'title_callback' => 't',
+  'title_arguments' => '',
+  'type' => '4',
+  'block_callback' => '',
+  'description' => '',
+  'position' => '',
+  'weight' => '0',
+  'file' => 'modules/help/help.admin.inc',
+))
+->values(array(
+  'path' => 'admin/help/update',
+  'load_functions' => '',
+  'to_arg_functions' => '',
+  'access_callback' => 'user_access',
+  'access_arguments' => 'a:1:{i:0;s:27:"access administration pages";}',
+  'page_callback' => 'help_page',
+  'page_arguments' => 'a:1:{i:0;i:2;}',
+  'fit' => '7',
+  'number_parts' => '3',
+  'tab_parent' => '',
+  'tab_root' => 'admin/help/update',
+  'title' => 'update',
+  'title_callback' => 't',
+  'title_arguments' => '',
+  'type' => '4',
+  'block_callback' => '',
+  'description' => '',
+  'position' => '',
+  'weight' => '0',
+  'file' => 'modules/help/help.admin.inc',
+))
+->values(array(
+  'path' => 'admin/help/user',
+  'load_functions' => '',
+  'to_arg_functions' => '',
+  'access_callback' => 'user_access',
+  'access_arguments' => 'a:1:{i:0;s:27:"access administration pages";}',
+  'page_callback' => 'help_page',
+  'page_arguments' => 'a:1:{i:0;i:2;}',
+  'fit' => '7',
+  'number_parts' => '3',
+  'tab_parent' => '',
+  'tab_root' => 'admin/help/user',
+  'title' => 'user',
+  'title_callback' => 't',
+  'title_arguments' => '',
+  'type' => '4',
+  'block_callback' => '',
+  'description' => '',
+  'position' => '',
+  'weight' => '0',
+  'file' => 'modules/help/help.admin.inc',
+))
+->values(array(
+  'path' => 'admin/reports',
+  'load_functions' => '',
+  'to_arg_functions' => '',
+  'access_callback' => 'user_access',
+  'access_arguments' => 'a:1:{i:0;s:19:"access site reports";}',
+  'page_callback' => 'system_admin_menu_block_page',
+  'page_arguments' => 'a:0:{}',
+  'fit' => '3',
+  'number_parts' => '2',
+  'tab_parent' => '',
+  'tab_root' => 'admin/reports',
+  'title' => 'Reports',
+  'title_callback' => 't',
+  'title_arguments' => '',
+  'type' => '6',
+  'block_callback' => '',
+  'description' => 'View reports from system logs and other status information.',
+  'position' => 'left',
+  'weight' => '5',
+  'file' => 'modules/system/system.admin.inc',
+))
+->values(array(
+  'path' => 'admin/reports/access-denied',
+  'load_functions' => '',
+  'to_arg_functions' => '',
+  'access_callback' => 'user_access',
+  'access_arguments' => 'a:1:{i:0;s:19:"access site reports";}',
+  'page_callback' => 'dblog_top',
+  'page_arguments' => 'a:1:{i:0;s:13:"access denied";}',
+  'fit' => '7',
+  'number_parts' => '3',
+  'tab_parent' => '',
+  'tab_root' => 'admin/reports/access-denied',
+  'title' => "Top 'access denied' errors",
+  'title_callback' => 't',
+  'title_arguments' => '',
+  'type' => '6',
+  'block_callback' => '',
+  'description' => "View 'access denied' errors (403s).",
+  'position' => '',
+  'weight' => '0',
+  'file' => 'modules/dblog/dblog.admin.inc',
+))
+->values(array(
+  'path' => 'admin/reports/dblog',
+  'load_functions' => '',
+  'to_arg_functions' => '',
+  'access_callback' => 'user_access',
+  'access_arguments' => 'a:1:{i:0;s:19:"access site reports";}',
+  'page_callback' => 'dblog_overview',
+  'page_arguments' => 'a:0:{}',
+  'fit' => '7',
+  'number_parts' => '3',
+  'tab_parent' => '',
+  'tab_root' => 'admin/reports/dblog',
+  'title' => 'Recent log entries',
+  'title_callback' => 't',
+  'title_arguments' => '',
+  'type' => '6',
+  'block_callback' => '',
+  'description' => 'View events that have recently been logged.',
+  'position' => '',
+  'weight' => '-1',
+  'file' => 'modules/dblog/dblog.admin.inc',
+))
+->values(array(
+  'path' => 'admin/reports/event/%',
+  'load_functions' => 'a:1:{i:3;N;}',
+  'to_arg_functions' => '',
+  'access_callback' => 'user_access',
+  'access_arguments' => 'a:1:{i:0;s:19:"access site reports";}',
+  'page_callback' => 'dblog_event',
+  'page_arguments' => 'a:1:{i:0;i:3;}',
+  'fit' => '14',
+  'number_parts' => '4',
+  'tab_parent' => '',
+  'tab_root' => 'admin/reports/event/%',
+  'title' => 'Details',
+  'title_callback' => 't',
+  'title_arguments' => '',
+  'type' => '4',
+  'block_callback' => '',
+  'description' => '',
+  'position' => '',
+  'weight' => '0',
+  'file' => 'modules/dblog/dblog.admin.inc',
+))
+->values(array(
+  'path' => 'admin/reports/page-not-found',
+  'load_functions' => '',
+  'to_arg_functions' => '',
+  'access_callback' => 'user_access',
+  'access_arguments' => 'a:1:{i:0;s:19:"access site reports";}',
+  'page_callback' => 'dblog_top',
+  'page_arguments' => 'a:1:{i:0;s:14:"page not found";}',
+  'fit' => '7',
+  'number_parts' => '3',
+  'tab_parent' => '',
+  'tab_root' => 'admin/reports/page-not-found',
+  'title' => "Top 'page not found' errors",
+  'title_callback' => 't',
+  'title_arguments' => '',
+  'type' => '6',
+  'block_callback' => '',
+  'description' => "View 'page not found' errors (404s).",
+  'position' => '',
+  'weight' => '0',
+  'file' => 'modules/dblog/dblog.admin.inc',
+))
+->values(array(
+  'path' => 'admin/reports/status',
+  'load_functions' => '',
+  'to_arg_functions' => '',
+  'access_callback' => 'user_access',
+  'access_arguments' => 'a:1:{i:0;s:29:"administer site configuration";}',
+  'page_callback' => 'system_status',
+  'page_arguments' => 'a:0:{}',
+  'fit' => '7',
+  'number_parts' => '3',
+  'tab_parent' => '',
+  'tab_root' => 'admin/reports/status',
+  'title' => 'Status report',
+  'title_callback' => 't',
+  'title_arguments' => '',
+  'type' => '6',
+  'block_callback' => '',
+  'description' => "Get a status report about your site's operation and any detected problems.",
+  'position' => '',
+  'weight' => '10',
+  'file' => 'modules/system/system.admin.inc',
+))
+->values(array(
+  'path' => 'admin/reports/status/php',
+  'load_functions' => '',
+  'to_arg_functions' => '',
+  'access_callback' => 'user_access',
+  'access_arguments' => 'a:1:{i:0;s:29:"administer site configuration";}',
+  'page_callback' => 'system_php',
+  'page_arguments' => 'a:0:{}',
+  'fit' => '15',
+  'number_parts' => '4',
+  'tab_parent' => '',
+  'tab_root' => 'admin/reports/status/php',
+  'title' => 'PHP',
+  'title_callback' => 't',
+  'title_arguments' => '',
+  'type' => '4',
+  'block_callback' => '',
+  'description' => '',
+  'position' => '',
+  'weight' => '0',
+  'file' => 'modules/system/system.admin.inc',
+))
+->values(array(
+  'path' => 'admin/reports/status/run-cron',
+  'load_functions' => '',
+  'to_arg_functions' => '',
+  'access_callback' => 'user_access',
+  'access_arguments' => 'a:1:{i:0;s:29:"administer site configuration";}',
+  'page_callback' => 'system_run_cron',
+  'page_arguments' => 'a:0:{}',
+  'fit' => '15',
+  'number_parts' => '4',
+  'tab_parent' => '',
+  'tab_root' => 'admin/reports/status/run-cron',
+  'title' => 'Run cron',
+  'title_callback' => 't',
+  'title_arguments' => '',
+  'type' => '4',
+  'block_callback' => '',
+  'description' => '',
+  'position' => '',
+  'weight' => '0',
+  'file' => 'modules/system/system.admin.inc',
+))
+->values(array(
+  'path' => 'admin/reports/status/sql',
+  'load_functions' => '',
+  'to_arg_functions' => '',
+  'access_callback' => 'user_access',
+  'access_arguments' => 'a:1:{i:0;s:29:"administer site configuration";}',
+  'page_callback' => 'system_sql',
+  'page_arguments' => 'a:0:{}',
+  'fit' => '15',
+  'number_parts' => '4',
+  'tab_parent' => '',
+  'tab_root' => 'admin/reports/status/sql',
+  'title' => 'SQL',
+  'title_callback' => 't',
+  'title_arguments' => '',
+  'type' => '4',
+  'block_callback' => '',
+  'description' => '',
+  'position' => '',
+  'weight' => '0',
+  'file' => 'modules/system/system.admin.inc',
+))
+->values(array(
+  'path' => 'admin/reports/updates',
+  'load_functions' => '',
+  'to_arg_functions' => '',
+  'access_callback' => 'user_access',
+  'access_arguments' => 'a:1:{i:0;s:29:"administer site configuration";}',
+  'page_callback' => 'update_status',
+  'page_arguments' => 'a:0:{}',
+  'fit' => '7',
+  'number_parts' => '3',
+  'tab_parent' => '',
+  'tab_root' => 'admin/reports/updates',
+  'title' => 'Available updates',
+  'title_callback' => 't',
+  'title_arguments' => '',
+  'type' => '6',
+  'block_callback' => '',
+  'description' => 'Get a status report about available updates for your installed modules and themes.',
+  'position' => '',
+  'weight' => '10',
+  'file' => 'modules/update/update.report.inc',
+))
+->values(array(
+  'path' => 'admin/reports/updates/check',
+  'load_functions' => '',
+  'to_arg_functions' => '',
+  'access_callback' => 'user_access',
+  'access_arguments' => 'a:1:{i:0;s:29:"administer site configuration";}',
+  'page_callback' => 'update_manual_status',
+  'page_arguments' => 'a:0:{}',
+  'fit' => '15',
+  'number_parts' => '4',
+  'tab_parent' => '',
+  'tab_root' => 'admin/reports/updates/check',
+  'title' => 'Manual update check',
+  'title_callback' => 't',
+  'title_arguments' => '',
+  'type' => '4',
+  'block_callback' => '',
+  'description' => '',
+  'position' => '',
+  'weight' => '0',
+  'file' => 'modules/update/update.fetch.inc',
+))
+->values(array(
+  'path' => 'admin/reports/updates/list',
+  'load_functions' => '',
+  'to_arg_functions' => '',
+  'access_callback' => 'user_access',
+  'access_arguments' => 'a:1:{i:0;s:29:"administer site configuration";}',
+  'page_callback' => 'update_status',
+  'page_arguments' => 'a:0:{}',
+  'fit' => '15',
+  'number_parts' => '4',
+  'tab_parent' => 'admin/reports/updates',
+  'tab_root' => 'admin/reports/updates',
+  'title' => 'List',
+  'title_callback' => 't',
+  'title_arguments' => '',
+  'type' => '136',
+  'block_callback' => '',
+  'description' => '',
+  'position' => '',
+  'weight' => '0',
+  'file' => 'modules/update/update.report.inc',
+))
+->values(array(
+  'path' => 'admin/reports/updates/settings',
+  'load_functions' => '',
+  'to_arg_functions' => '',
+  'access_callback' => 'user_access',
+  'access_arguments' => 'a:1:{i:0;s:29:"administer site configuration";}',
+  'page_callback' => 'drupal_get_form',
+  'page_arguments' => 'a:1:{i:0;s:15:"update_settings";}',
+  'fit' => '15',
+  'number_parts' => '4',
+  'tab_parent' => 'admin/reports/updates',
+  'tab_root' => 'admin/reports/updates',
+  'title' => 'Settings',
+  'title_callback' => 't',
+  'title_arguments' => '',
+  'type' => '128',
+  'block_callback' => '',
+  'description' => '',
+  'position' => '',
+  'weight' => '0',
+  'file' => 'modules/update/update.settings.inc',
+))
+->values(array(
+  'path' => 'admin/settings',
+  'load_functions' => '',
+  'to_arg_functions' => '',
+  'access_callback' => 'user_access',
+  'access_arguments' => 'a:1:{i:0;s:27:"access administration pages";}',
+  'page_callback' => 'system_settings_overview',
+  'page_arguments' => 'a:0:{}',
+  'fit' => '3',
+  'number_parts' => '2',
+  'tab_parent' => '',
+  'tab_root' => 'admin/settings',
+  'title' => 'Site configuration',
+  'title_callback' => 't',
+  'title_arguments' => '',
+  'type' => '6',
+  'block_callback' => '',
+  'description' => 'Adjust basic site configuration options.',
+  'position' => 'right',
+  'weight' => '-5',
+  'file' => 'modules/system/system.admin.inc',
+))
+->values(array(
+  'path' => 'admin/settings/actions',
+  'load_functions' => '',
+  'to_arg_functions' => '',
+  'access_callback' => 'user_access',
+  'access_arguments' => 'a:1:{i:0;s:18:"administer actions";}',
+  'page_callback' => 'system_actions_manage',
+  'page_arguments' => 'a:0:{}',
+  'fit' => '7',
+  'number_parts' => '3',
+  'tab_parent' => '',
+  'tab_root' => 'admin/settings/actions',
+  'title' => 'Actions',
+  'title_callback' => 't',
+  'title_arguments' => '',
+  'type' => '6',
+  'block_callback' => '',
+  'description' => 'Manage the actions defined for your site.',
+  'position' => '',
+  'weight' => '0',
+  'file' => '',
+))
+->values(array(
+  'path' => 'admin/settings/actions/configure',
+  'load_functions' => '',
+  'to_arg_functions' => '',
+  'access_callback' => 'user_access',
+  'access_arguments' => 'a:1:{i:0;s:18:"administer actions";}',
+  'page_callback' => 'drupal_get_form',
+  'page_arguments' => 'a:1:{i:0;s:24:"system_actions_configure";}',
+  'fit' => '15',
+  'number_parts' => '4',
+  'tab_parent' => '',
+  'tab_root' => 'admin/settings/actions/configure',
+  'title' => 'Configure an advanced action',
+  'title_callback' => 't',
+  'title_arguments' => '',
+  'type' => '4',
+  'block_callback' => '',
+  'description' => '',
+  'position' => '',
+  'weight' => '0',
+  'file' => '',
+))
+->values(array(
+  'path' => 'admin/settings/actions/delete/%',
+  'load_functions' => 'a:1:{i:4;s:12:"actions_load";}',
+  'to_arg_functions' => '',
+  'access_callback' => 'user_access',
+  'access_arguments' => 'a:1:{i:0;s:18:"administer actions";}',
+  'page_callback' => 'drupal_get_form',
+  'page_arguments' => 'a:2:{i:0;s:26:"system_actions_delete_form";i:1;i:4;}',
+  'fit' => '30',
+  'number_parts' => '5',
+  'tab_parent' => '',
+  'tab_root' => 'admin/settings/actions/delete/%',
+  'title' => 'Delete action',
+  'title_callback' => 't',
+  'title_arguments' => '',
+  'type' => '4',
+  'block_callback' => '',
+  'description' => 'Delete an action.',
+  'position' => '',
+  'weight' => '0',
+  'file' => '',
+))
+->values(array(
+  'path' => 'admin/settings/actions/manage',
+  'load_functions' => '',
+  'to_arg_functions' => '',
+  'access_callback' => 'user_access',
+  'access_arguments' => 'a:1:{i:0;s:18:"administer actions";}',
+  'page_callback' => 'system_actions_manage',
+  'page_arguments' => 'a:0:{}',
+  'fit' => '15',
+  'number_parts' => '4',
+  'tab_parent' => 'admin/settings/actions',
+  'tab_root' => 'admin/settings/actions',
+  'title' => 'Manage actions',
+  'title_callback' => 't',
+  'title_arguments' => '',
+  'type' => '136',
+  'block_callback' => '',
+  'description' => 'Manage the actions defined for your site.',
+  'position' => '',
+  'weight' => '-2',
+  'file' => '',
+))
+->values(array(
+  'path' => 'admin/settings/actions/orphan',
+  'load_functions' => '',
+  'to_arg_functions' => '',
+  'access_callback' => 'user_access',
+  'access_arguments' => 'a:1:{i:0;s:18:"administer actions";}',
+  'page_callback' => 'system_actions_remove_orphans',
+  'page_arguments' => 'a:0:{}',
+  'fit' => '15',
+  'number_parts' => '4',
+  'tab_parent' => '',
+  'tab_root' => 'admin/settings/actions/orphan',
+  'title' => 'Remove orphans',
+  'title_callback' => 't',
+  'title_arguments' => '',
+  'type' => '4',
+  'block_callback' => '',
+  'description' => '',
+  'position' => '',
+  'weight' => '0',
+  'file' => '',
+))
+->values(array(
+  'path' => 'admin/settings/admin',
+  'load_functions' => '',
+  'to_arg_functions' => '',
+  'access_callback' => 'user_access',
+  'access_arguments' => 'a:1:{i:0;s:29:"administer site configuration";}',
+  'page_callback' => 'drupal_get_form',
+  'page_arguments' => 'a:1:{i:0;s:27:"system_admin_theme_settings";}',
+  'fit' => '7',
+  'number_parts' => '3',
+  'tab_parent' => '',
+  'tab_root' => 'admin/settings/admin',
+  'title' => 'Administration theme',
+  'title_callback' => 't',
+  'title_arguments' => '',
+  'type' => '6',
+  'block_callback' => 'system_admin_theme_settings',
+  'description' => 'Settings for how your administrative pages should look.',
+  'position' => 'left',
+  'weight' => '0',
+  'file' => 'modules/system/system.admin.inc',
+))
+->values(array(
+  'path' => 'admin/settings/clean-urls',
+  'load_functions' => '',
+  'to_arg_functions' => '',
+  'access_callback' => 'user_access',
+  'access_arguments' => 'a:1:{i:0;s:29:"administer site configuration";}',
+  'page_callback' => 'drupal_get_form',
+  'page_arguments' => 'a:1:{i:0;s:25:"system_clean_url_settings";}',
+  'fit' => '7',
+  'number_parts' => '3',
+  'tab_parent' => '',
+  'tab_root' => 'admin/settings/clean-urls',
+  'title' => 'Clean URLs',
+  'title_callback' => 't',
+  'title_arguments' => '',
+  'type' => '6',
+  'block_callback' => '',
+  'description' => 'Enable or disable clean URLs for your site.',
+  'position' => '',
+  'weight' => '0',
+  'file' => 'modules/system/system.admin.inc',
+))
+->values(array(
+  'path' => 'admin/settings/clean-urls/check',
+  'load_functions' => '',
+  'to_arg_functions' => '',
+  'access_callback' => '1',
+  'access_arguments' => 'a:0:{}',
+  'page_callback' => 'drupal_json',
+  'page_arguments' => 'a:1:{i:0;a:1:{s:6:"status";b:1;}}',
+  'fit' => '15',
+  'number_parts' => '4',
+  'tab_parent' => '',
+  'tab_root' => 'admin/settings/clean-urls/check',
+  'title' => 'Clean URL check',
+  'title_callback' => 't',
+  'title_arguments' => '',
+  'type' => '4',
+  'block_callback' => '',
+  'description' => '',
+  'position' => '',
+  'weight' => '0',
+  'file' => '',
+))
+->values(array(
+  'path' => 'admin/settings/date-time',
+  'load_functions' => '',
+  'to_arg_functions' => '',
+  'access_callback' => 'user_access',
+  'access_arguments' => 'a:1:{i:0;s:29:"administer site configuration";}',
+  'page_callback' => 'drupal_get_form',
+  'page_arguments' => 'a:1:{i:0;s:25:"system_date_time_settings";}',
+  'fit' => '7',
+  'number_parts' => '3',
+  'tab_parent' => '',
+  'tab_root' => 'admin/settings/date-time',
+  'title' => 'Date and time',
+  'title_callback' => 't',
+  'title_arguments' => '',
+  'type' => '6',
+  'block_callback' => '',
+  'description' => "Settings for how Drupal displays date and time, as well as the system's default timezone.",
+  'position' => '',
+  'weight' => '0',
+  'file' => 'modules/system/system.admin.inc',
+))
+->values(array(
+  'path' => 'admin/settings/date-time/lookup',
+  'load_functions' => '',
+  'to_arg_functions' => '',
+  'access_callback' => 'user_access',
+  'access_arguments' => 'a:1:{i:0;s:29:"administer site configuration";}',
+  'page_callback' => 'system_date_time_lookup',
+  'page_arguments' => 'a:0:{}',
+  'fit' => '15',
+  'number_parts' => '4',
+  'tab_parent' => '',
+  'tab_root' => 'admin/settings/date-time/lookup',
+  'title' => 'Date and time lookup',
+  'title_callback' => 't',
+  'title_arguments' => '',
+  'type' => '4',
+  'block_callback' => '',
+  'description' => '',
+  'position' => '',
+  'weight' => '0',
+  'file' => 'modules/system/system.admin.inc',
+))
+->values(array(
+  'path' => 'admin/settings/error-reporting',
+  'load_functions' => '',
+  'to_arg_functions' => '',
+  'access_callback' => 'user_access',
+  'access_arguments' => 'a:1:{i:0;s:29:"administer site configuration";}',
+  'page_callback' => 'drupal_get_form',
+  'page_arguments' => 'a:1:{i:0;s:31:"system_error_reporting_settings";}',
+  'fit' => '7',
+  'number_parts' => '3',
+  'tab_parent' => '',
+  'tab_root' => 'admin/settings/error-reporting',
+  'title' => 'Error reporting',
+  'title_callback' => 't',
+  'title_arguments' => '',
+  'type' => '6',
+  'block_callback' => '',
+  'description' => 'Control how Drupal deals with errors including 403/404 errors as well as PHP error reporting.',
+  'position' => '',
+  'weight' => '0',
+  'file' => 'modules/system/system.admin.inc',
+))
+->values(array(
+  'path' => 'admin/settings/file-system',
+  'load_functions' => '',
+  'to_arg_functions' => '',
+  'access_callback' => 'user_access',
+  'access_arguments' => 'a:1:{i:0;s:29:"administer site configuration";}',
+  'page_callback' => 'drupal_get_form',
+  'page_arguments' => 'a:1:{i:0;s:27:"system_file_system_settings";}',
+  'fit' => '7',
+  'number_parts' => '3',
+  'tab_parent' => '',
+  'tab_root' => 'admin/settings/file-system',
+  'title' => 'File system',
+  'title_callback' => 't',
+  'title_arguments' => '',
+  'type' => '6',
+  'block_callback' => '',
+  'description' => 'Tell Drupal where to store uploaded files and how they are accessed.',
+  'position' => '',
+  'weight' => '0',
+  'file' => 'modules/system/system.admin.inc',
+))
+->values(array(
+  'path' => 'admin/settings/filters',
+  'load_functions' => '',
+  'to_arg_functions' => '',
+  'access_callback' => 'user_access',
+  'access_arguments' => 'a:1:{i:0;s:18:"administer filters";}',
+  'page_callback' => 'drupal_get_form',
+  'page_arguments' => 'a:1:{i:0;s:21:"filter_admin_overview";}',
+  'fit' => '7',
+  'number_parts' => '3',
+  'tab_parent' => '',
+  'tab_root' => 'admin/settings/filters',
+  'title' => 'Input formats',
+  'title_callback' => 't',
+  'title_arguments' => '',
+  'type' => '6',
+  'block_callback' => '',
+  'description' => 'Configure how content input by users is filtered, including allowed HTML tags. Also allows enabling of module-provided filters.',
+  'position' => '',
+  'weight' => '0',
+  'file' => 'modules/filter/filter.admin.inc',
+))
+->values(array(
+  'path' => 'admin/settings/filters/%',
+  'load_functions' => 'a:1:{i:3;s:18:"filter_format_load";}',
+  'to_arg_functions' => '',
+  'access_callback' => 'user_access',
+  'access_arguments' => 'a:1:{i:0;s:18:"administer filters";}',
+  'page_callback' => 'filter_admin_format_page',
+  'page_arguments' => 'a:1:{i:0;i:3;}',
+  'fit' => '14',
+  'number_parts' => '4',
+  'tab_parent' => '',
+  'tab_root' => 'admin/settings/filters/%',
+  'title' => '',
+  'title_callback' => 'filter_admin_format_title',
+  'title_arguments' => 'a:1:{i:0;i:3;}',
+  'type' => '4',
+  'block_callback' => '',
+  'description' => '',
+  'position' => '',
+  'weight' => '0',
+  'file' => 'modules/filter/filter.admin.inc',
+))
+->values(array(
+  'path' => 'admin/settings/filters/%/configure',
+  'load_functions' => 'a:1:{i:3;s:18:"filter_format_load";}',
+  'to_arg_functions' => '',
+  'access_callback' => 'user_access',
+  'access_arguments' => 'a:1:{i:0;s:18:"administer filters";}',
+  'page_callback' => 'filter_admin_configure_page',
+  'page_arguments' => 'a:1:{i:0;i:3;}',
+  'fit' => '29',
+  'number_parts' => '5',
+  'tab_parent' => 'admin/settings/filters/%',
+  'tab_root' => 'admin/settings/filters/%',
+  'title' => 'Configure',
+  'title_callback' => 't',
+  'title_arguments' => '',
+  'type' => '128',
+  'block_callback' => '',
+  'description' => '',
+  'position' => '',
+  'weight' => '1',
+  'file' => 'modules/filter/filter.admin.inc',
+))
+->values(array(
+  'path' => 'admin/settings/filters/%/edit',
+  'load_functions' => 'a:1:{i:3;s:18:"filter_format_load";}',
+  'to_arg_functions' => '',
+  'access_callback' => 'user_access',
+  'access_arguments' => 'a:1:{i:0;s:18:"administer filters";}',
+  'page_callback' => 'filter_admin_format_page',
+  'page_arguments' => 'a:1:{i:0;i:3;}',
+  'fit' => '29',
+  'number_parts' => '5',
+  'tab_parent' => 'admin/settings/filters/%',
+  'tab_root' => 'admin/settings/filters/%',
+  'title' => 'Edit',
+  'title_callback' => 't',
+  'title_arguments' => '',
+  'type' => '136',
+  'block_callback' => '',
+  'description' => '',
+  'position' => '',
+  'weight' => '0',
+  'file' => 'modules/filter/filter.admin.inc',
+))
+->values(array(
+  'path' => 'admin/settings/filters/%/order',
+  'load_functions' => 'a:1:{i:3;s:18:"filter_format_load";}',
+  'to_arg_functions' => '',
+  'access_callback' => 'user_access',
+  'access_arguments' => 'a:1:{i:0;s:18:"administer filters";}',
+  'page_callback' => 'filter_admin_order_page',
+  'page_arguments' => 'a:1:{i:0;i:3;}',
+  'fit' => '29',
+  'number_parts' => '5',
+  'tab_parent' => 'admin/settings/filters/%',
+  'tab_root' => 'admin/settings/filters/%',
+  'title' => 'Rearrange',
+  'title_callback' => 't',
+  'title_arguments' => '',
+  'type' => '128',
+  'block_callback' => '',
+  'description' => '',
+  'position' => '',
+  'weight' => '2',
+  'file' => 'modules/filter/filter.admin.inc',
+))
+->values(array(
+  'path' => 'admin/settings/filters/add',
+  'load_functions' => '',
+  'to_arg_functions' => '',
+  'access_callback' => 'user_access',
+  'access_arguments' => 'a:1:{i:0;s:18:"administer filters";}',
+  'page_callback' => 'filter_admin_format_page',
+  'page_arguments' => 'a:0:{}',
+  'fit' => '15',
+  'number_parts' => '4',
+  'tab_parent' => 'admin/settings/filters',
+  'tab_root' => 'admin/settings/filters',
+  'title' => 'Add input format',
+  'title_callback' => 't',
+  'title_arguments' => '',
+  'type' => '128',
+  'block_callback' => '',
+  'description' => '',
+  'position' => '',
+  'weight' => '1',
+  'file' => 'modules/filter/filter.admin.inc',
+))
+->values(array(
+  'path' => 'admin/settings/filters/delete',
+  'load_functions' => '',
+  'to_arg_functions' => '',
+  'access_callback' => 'user_access',
+  'access_arguments' => 'a:1:{i:0;s:18:"administer filters";}',
+  'page_callback' => 'drupal_get_form',
+  'page_arguments' => 'a:1:{i:0;s:19:"filter_admin_delete";}',
+  'fit' => '15',
+  'number_parts' => '4',
+  'tab_parent' => '',
+  'tab_root' => 'admin/settings/filters/delete',
+  'title' => 'Delete input format',
+  'title_callback' => 't',
+  'title_arguments' => '',
+  'type' => '4',
+  'block_callback' => '',
+  'description' => '',
+  'position' => '',
+  'weight' => '0',
+  'file' => 'modules/filter/filter.admin.inc',
+))
+->values(array(
+  'path' => 'admin/settings/filters/list',
+  'load_functions' => '',
+  'to_arg_functions' => '',
+  'access_callback' => 'user_access',
+  'access_arguments' => 'a:1:{i:0;s:18:"administer filters";}',
+  'page_callback' => 'drupal_get_form',
+  'page_arguments' => 'a:1:{i:0;s:21:"filter_admin_overview";}',
+  'fit' => '15',
+  'number_parts' => '4',
+  'tab_parent' => 'admin/settings/filters',
+  'tab_root' => 'admin/settings/filters',
+  'title' => 'List',
+  'title_callback' => 't',
+  'title_arguments' => '',
+  'type' => '136',
+  'block_callback' => '',
+  'description' => '',
+  'position' => '',
+  'weight' => '0',
+  'file' => 'modules/filter/filter.admin.inc',
+))
+->values(array(
+  'path' => 'admin/settings/image-toolkit',
+  'load_functions' => '',
+  'to_arg_functions' => '',
+  'access_callback' => 'user_access',
+  'access_arguments' => 'a:1:{i:0;s:29:"administer site configuration";}',
+  'page_callback' => 'drupal_get_form',
+  'page_arguments' => 'a:1:{i:0;s:29:"system_image_toolkit_settings";}',
+  'fit' => '7',
+  'number_parts' => '3',
+  'tab_parent' => '',
+  'tab_root' => 'admin/settings/image-toolkit',
+  'title' => 'Image toolkit',
+  'title_callback' => 't',
+  'title_arguments' => '',
+  'type' => '6',
+  'block_callback' => '',
+  'description' => 'Choose which image toolkit to use if you have installed optional toolkits.',
+  'position' => '',
+  'weight' => '0',
+  'file' => 'modules/system/system.admin.inc',
+))
+->values(array(
+  'path' => 'admin/settings/logging',
+  'load_functions' => '',
+  'to_arg_functions' => '',
+  'access_callback' => 'user_access',
+  'access_arguments' => 'a:1:{i:0;s:29:"administer site configuration";}',
+  'page_callback' => 'system_logging_overview',
+  'page_arguments' => 'a:0:{}',
+  'fit' => '7',
+  'number_parts' => '3',
+  'tab_parent' => '',
+  'tab_root' => 'admin/settings/logging',
+  'title' => 'Logging and alerts',
+  'title_callback' => 't',
+  'title_arguments' => '',
+  'type' => '6',
+  'block_callback' => '',
+  'description' => "Settings for logging and alerts modules. Various modules can route Drupal's system events to different destination, such as syslog, database, email, ...etc.",
+  'position' => '',
+  'weight' => '0',
+  'file' => 'modules/system/system.admin.inc',
+))
+->values(array(
+  'path' => 'admin/settings/logging/dblog',
+  'load_functions' => '',
+  'to_arg_functions' => '',
+  'access_callback' => 'user_access',
+  'access_arguments' => 'a:1:{i:0;s:29:"administer site configuration";}',
+  'page_callback' => 'drupal_get_form',
+  'page_arguments' => 'a:1:{i:0;s:20:"dblog_admin_settings";}',
+  'fit' => '15',
+  'number_parts' => '4',
+  'tab_parent' => '',
+  'tab_root' => 'admin/settings/logging/dblog',
+  'title' => 'Database logging',
+  'title_callback' => 't',
+  'title_arguments' => '',
+  'type' => '6',
+  'block_callback' => '',
+  'description' => 'Settings for logging to the Drupal database logs. This is the most common method for small to medium sites on shared hosting. The logs are viewable from the admin pages.',
+  'position' => '',
+  'weight' => '0',
+  'file' => 'modules/dblog/dblog.admin.inc',
+))
+->values(array(
+  'path' => 'admin/settings/performance',
+  'load_functions' => '',
+  'to_arg_functions' => '',
+  'access_callback' => 'user_access',
+  'access_arguments' => 'a:1:{i:0;s:29:"administer site configuration";}',
+  'page_callback' => 'drupal_get_form',
+  'page_arguments' => 'a:1:{i:0;s:27:"system_performance_settings";}',
+  'fit' => '7',
+  'number_parts' => '3',
+  'tab_parent' => '',
+  'tab_root' => 'admin/settings/performance',
+  'title' => 'Performance',
+  'title_callback' => 't',
+  'title_arguments' => '',
+  'type' => '6',
+  'block_callback' => '',
+  'description' => 'Enable or disable page caching for anonymous users and set CSS and JS bandwidth optimization options.',
+  'position' => '',
+  'weight' => '0',
+  'file' => 'modules/system/system.admin.inc',
+))
+->values(array(
+  'path' => 'admin/settings/site-information',
+  'load_functions' => '',
+  'to_arg_functions' => '',
+  'access_callback' => 'user_access',
+  'access_arguments' => 'a:1:{i:0;s:29:"administer site configuration";}',
+  'page_callback' => 'drupal_get_form',
+  'page_arguments' => 'a:1:{i:0;s:32:"system_site_information_settings";}',
+  'fit' => '7',
+  'number_parts' => '3',
+  'tab_parent' => '',
+  'tab_root' => 'admin/settings/site-information',
+  'title' => 'Site information',
+  'title_callback' => 't',
+  'title_arguments' => '',
+  'type' => '6',
+  'block_callback' => '',
+  'description' => 'Change basic site information, such as the site name, slogan, e-mail address, mission, front page and more.',
+  'position' => '',
+  'weight' => '0',
+  'file' => 'modules/system/system.admin.inc',
+))
+->values(array(
+  'path' => 'admin/settings/site-maintenance',
+  'load_functions' => '',
+  'to_arg_functions' => '',
+  'access_callback' => 'user_access',
+  'access_arguments' => 'a:1:{i:0;s:29:"administer site configuration";}',
+  'page_callback' => 'drupal_get_form',
+  'page_arguments' => 'a:1:{i:0;s:32:"system_site_maintenance_settings";}',
+  'fit' => '7',
+  'number_parts' => '3',
+  'tab_parent' => '',
+  'tab_root' => 'admin/settings/site-maintenance',
+  'title' => 'Site maintenance',
+  'title_callback' => 't',
+  'title_arguments' => '',
+  'type' => '6',
+  'block_callback' => '',
+  'description' => 'Take the site off-line for maintenance or bring it back online.',
+  'position' => '',
+  'weight' => '0',
+  'file' => 'modules/system/system.admin.inc',
+))
+->values(array(
+  'path' => 'admin/user',
+  'load_functions' => '',
+  'to_arg_functions' => '',
+  'access_callback' => 'user_access',
+  'access_arguments' => 'a:1:{i:0;s:27:"access administration pages";}',
+  'page_callback' => 'system_admin_menu_block_page',
+  'page_arguments' => 'a:0:{}',
+  'fit' => '3',
+  'number_parts' => '2',
+  'tab_parent' => '',
+  'tab_root' => 'admin/user',
+  'title' => 'User management',
+  'title_callback' => 't',
+  'title_arguments' => '',
+  'type' => '6',
+  'block_callback' => '',
+  'description' => "Manage your site's users, groups and access to site features.",
+  'position' => 'left',
+  'weight' => '0',
+  'file' => 'modules/system/system.admin.inc',
+))
+->values(array(
+  'path' => 'admin/user/permissions',
+  'load_functions' => '',
+  'to_arg_functions' => '',
+  'access_callback' => 'user_access',
+  'access_arguments' => 'a:1:{i:0;s:22:"administer permissions";}',
+  'page_callback' => 'drupal_get_form',
+  'page_arguments' => 'a:1:{i:0;s:15:"user_admin_perm";}',
+  'fit' => '7',
+  'number_parts' => '3',
+  'tab_parent' => '',
+  'tab_root' => 'admin/user/permissions',
+  'title' => 'Permissions',
+  'title_callback' => 't',
+  'title_arguments' => '',
+  'type' => '6',
+  'block_callback' => '',
+  'description' => 'Determine access to features by selecting permissions for roles.',
+  'position' => '',
+  'weight' => '0',
+  'file' => 'modules/user/user.admin.inc',
+))
+->values(array(
+  'path' => 'admin/user/roles',
+  'load_functions' => '',
+  'to_arg_functions' => '',
+  'access_callback' => 'user_access',
+  'access_arguments' => 'a:1:{i:0;s:22:"administer permissions";}',
+  'page_callback' => 'drupal_get_form',
+  'page_arguments' => 'a:1:{i:0;s:19:"user_admin_new_role";}',
+  'fit' => '7',
+  'number_parts' => '3',
+  'tab_parent' => '',
+  'tab_root' => 'admin/user/roles',
+  'title' => 'Roles',
+  'title_callback' => 't',
+  'title_arguments' => '',
+  'type' => '6',
+  'block_callback' => '',
+  'description' => 'List, edit, or add user roles.',
+  'position' => '',
+  'weight' => '0',
+  'file' => 'modules/user/user.admin.inc',
+))
+->values(array(
+  'path' => 'admin/user/roles/edit',
+  'load_functions' => '',
+  'to_arg_functions' => '',
+  'access_callback' => 'user_access',
+  'access_arguments' => 'a:1:{i:0;s:22:"administer permissions";}',
+  'page_callback' => 'drupal_get_form',
+  'page_arguments' => 'a:1:{i:0;s:15:"user_admin_role";}',
+  'fit' => '15',
+  'number_parts' => '4',
+  'tab_parent' => '',
+  'tab_root' => 'admin/user/roles/edit',
+  'title' => 'Edit role',
+  'title_callback' => 't',
+  'title_arguments' => '',
+  'type' => '4',
+  'block_callback' => '',
+  'description' => '',
+  'position' => '',
+  'weight' => '0',
+  'file' => 'modules/user/user.admin.inc',
+))
+->values(array(
+  'path' => 'admin/user/rules',
+  'load_functions' => '',
+  'to_arg_functions' => '',
+  'access_callback' => 'user_access',
+  'access_arguments' => 'a:1:{i:0;s:22:"administer permissions";}',
+  'page_callback' => 'user_admin_access',
+  'page_arguments' => 'a:0:{}',
+  'fit' => '7',
+  'number_parts' => '3',
+  'tab_parent' => '',
+  'tab_root' => 'admin/user/rules',
+  'title' => 'Access rules',
+  'title_callback' => 't',
+  'title_arguments' => '',
+  'type' => '6',
+  'block_callback' => '',
+  'description' => 'List and create rules to disallow usernames, e-mail addresses, and IP addresses.',
+  'position' => '',
+  'weight' => '0',
+  'file' => 'modules/user/user.admin.inc',
+))
+->values(array(
+  'path' => 'admin/user/rules/add',
+  'load_functions' => '',
+  'to_arg_functions' => '',
+  'access_callback' => 'user_access',
+  'access_arguments' => 'a:1:{i:0;s:22:"administer permissions";}',
+  'page_callback' => 'user_admin_access_add',
+  'page_arguments' => 'a:0:{}',
+  'fit' => '15',
+  'number_parts' => '4',
+  'tab_parent' => 'admin/user/rules',
+  'tab_root' => 'admin/user/rules',
+  'title' => 'Add rule',
+  'title_callback' => 't',
+  'title_arguments' => '',
+  'type' => '128',
+  'block_callback' => '',
+  'description' => '',
+  'position' => '',
+  'weight' => '0',
+  'file' => 'modules/user/user.admin.inc',
+))
+->values(array(
+  'path' => 'admin/user/rules/check',
+  'load_functions' => '',
+  'to_arg_functions' => '',
+  'access_callback' => 'user_access',
+  'access_arguments' => 'a:1:{i:0;s:22:"administer permissions";}',
+  'page_callback' => 'user_admin_access_check',
+  'page_arguments' => 'a:0:{}',
+  'fit' => '15',
+  'number_parts' => '4',
+  'tab_parent' => 'admin/user/rules',
+  'tab_root' => 'admin/user/rules',
+  'title' => 'Check rules',
+  'title_callback' => 't',
+  'title_arguments' => '',
+  'type' => '128',
+  'block_callback' => '',
+  'description' => '',
+  'position' => '',
+  'weight' => '0',
+  'file' => 'modules/user/user.admin.inc',
+))
+->values(array(
+  'path' => 'admin/user/rules/delete',
+  'load_functions' => '',
+  'to_arg_functions' => '',
+  'access_callback' => 'user_access',
+  'access_arguments' => 'a:1:{i:0;s:22:"administer permissions";}',
+  'page_callback' => 'drupal_get_form',
+  'page_arguments' => 'a:1:{i:0;s:32:"user_admin_access_delete_confirm";}',
+  'fit' => '15',
+  'number_parts' => '4',
+  'tab_parent' => '',
+  'tab_root' => 'admin/user/rules/delete',
+  'title' => 'Delete rule',
+  'title_callback' => 't',
+  'title_arguments' => '',
+  'type' => '4',
+  'block_callback' => '',
+  'description' => '',
+  'position' => '',
+  'weight' => '0',
+  'file' => 'modules/user/user.admin.inc',
+))
+->values(array(
+  'path' => 'admin/user/rules/edit',
+  'load_functions' => '',
+  'to_arg_functions' => '',
+  'access_callback' => 'user_access',
+  'access_arguments' => 'a:1:{i:0;s:22:"administer permissions";}',
+  'page_callback' => 'user_admin_access_edit',
+  'page_arguments' => 'a:0:{}',
+  'fit' => '15',
+  'number_parts' => '4',
+  'tab_parent' => '',
+  'tab_root' => 'admin/user/rules/edit',
+  'title' => 'Edit rule',
+  'title_callback' => 't',
+  'title_arguments' => '',
+  'type' => '4',
+  'block_callback' => '',
+  'description' => '',
+  'position' => '',
+  'weight' => '0',
+  'file' => 'modules/user/user.admin.inc',
+))
+->values(array(
+  'path' => 'admin/user/rules/list',
+  'load_functions' => '',
+  'to_arg_functions' => '',
+  'access_callback' => 'user_access',
+  'access_arguments' => 'a:1:{i:0;s:22:"administer permissions";}',
+  'page_callback' => 'user_admin_access',
+  'page_arguments' => 'a:0:{}',
+  'fit' => '15',
+  'number_parts' => '4',
+  'tab_parent' => 'admin/user/rules',
+  'tab_root' => 'admin/user/rules',
+  'title' => 'List',
+  'title_callback' => 't',
+  'title_arguments' => '',
+  'type' => '136',
+  'block_callback' => '',
+  'description' => '',
+  'position' => '',
+  'weight' => '-10',
+  'file' => 'modules/user/user.admin.inc',
+))
+->values(array(
+  'path' => 'admin/user/settings',
+  'load_functions' => '',
+  'to_arg_functions' => '',
+  'access_callback' => 'user_access',
+  'access_arguments' => 'a:1:{i:0;s:16:"administer users";}',
+  'page_callback' => 'drupal_get_form',
+  'page_arguments' => 'a:1:{i:0;s:19:"user_admin_settings";}',
+  'fit' => '7',
+  'number_parts' => '3',
+  'tab_parent' => '',
+  'tab_root' => 'admin/user/settings',
+  'title' => 'User settings',
+  'title_callback' => 't',
+  'title_arguments' => '',
+  'type' => '6',
+  'block_callback' => '',
+  'description' => 'Configure default behavior of users, including registration requirements, e-mails, and user pictures.',
+  'position' => '',
+  'weight' => '0',
+  'file' => 'modules/user/user.admin.inc',
+))
+->values(array(
+  'path' => 'admin/user/user',
+  'load_functions' => '',
+  'to_arg_functions' => '',
+  'access_callback' => 'user_access',
+  'access_arguments' => 'a:1:{i:0;s:16:"administer users";}',
+  'page_callback' => 'user_admin',
+  'page_arguments' => 'a:1:{i:0;s:4:"list";}',
+  'fit' => '7',
+  'number_parts' => '3',
+  'tab_parent' => '',
+  'tab_root' => 'admin/user/user',
+  'title' => 'Users',
+  'title_callback' => 't',
+  'title_arguments' => '',
+  'type' => '6',
+  'block_callback' => '',
+  'description' => 'List, add, and edit users.',
+  'position' => '',
+  'weight' => '0',
+  'file' => 'modules/user/user.admin.inc',
+))
+->values(array(
+  'path' => 'admin/user/user/create',
+  'load_functions' => '',
+  'to_arg_functions' => '',
+  'access_callback' => 'user_access',
+  'access_arguments' => 'a:1:{i:0;s:16:"administer users";}',
+  'page_callback' => 'user_admin',
+  'page_arguments' => 'a:1:{i:0;s:6:"create";}',
+  'fit' => '15',
+  'number_parts' => '4',
+  'tab_parent' => 'admin/user/user',
+  'tab_root' => 'admin/user/user',
+  'title' => 'Add user',
+  'title_callback' => 't',
+  'title_arguments' => '',
+  'type' => '128',
+  'block_callback' => '',
+  'description' => '',
+  'position' => '',
+  'weight' => '0',
+  'file' => 'modules/user/user.admin.inc',
+))
+->values(array(
+  'path' => 'admin/user/user/list',
+  'load_functions' => '',
+  'to_arg_functions' => '',
+  'access_callback' => 'user_access',
+  'access_arguments' => 'a:1:{i:0;s:16:"administer users";}',
+  'page_callback' => 'user_admin',
+  'page_arguments' => 'a:1:{i:0;s:4:"list";}',
+  'fit' => '15',
+  'number_parts' => '4',
+  'tab_parent' => 'admin/user/user',
+  'tab_root' => 'admin/user/user',
+  'title' => 'List',
+  'title_callback' => 't',
+  'title_arguments' => '',
+  'type' => '136',
+  'block_callback' => '',
+  'description' => '',
+  'position' => '',
+  'weight' => '-10',
+  'file' => 'modules/user/user.admin.inc',
+))
+->values(array(
+  'path' => 'batch',
+  'load_functions' => '',
+  'to_arg_functions' => '',
+  'access_callback' => '1',
+  'access_arguments' => 'a:0:{}',
+  'page_callback' => 'system_batch_page',
+  'page_arguments' => 'a:0:{}',
+  'fit' => '1',
+  'number_parts' => '1',
+  'tab_parent' => '',
+  'tab_root' => 'batch',
+  'title' => '',
+  'title_callback' => 't',
+  'title_arguments' => '',
+  'type' => '4',
+  'block_callback' => '',
+  'description' => '',
+  'position' => '',
+  'weight' => '0',
+  'file' => 'modules/system/system.admin.inc',
+))
+->values(array(
+  'path' => 'comment/delete',
+  'load_functions' => '',
+  'to_arg_functions' => '',
+  'access_callback' => 'user_access',
+  'access_arguments' => 'a:1:{i:0;s:19:"administer comments";}',
+  'page_callback' => 'comment_delete',
+  'page_arguments' => 'a:0:{}',
+  'fit' => '3',
+  'number_parts' => '2',
+  'tab_parent' => '',
+  'tab_root' => 'comment/delete',
+  'title' => 'Delete comment',
+  'title_callback' => 't',
+  'title_arguments' => '',
+  'type' => '4',
+  'block_callback' => '',
+  'description' => '',
+  'position' => '',
+  'weight' => '0',
+  'file' => 'modules/comment/comment.admin.inc',
+))
+->values(array(
+  'path' => 'comment/edit',
+  'load_functions' => '',
+  'to_arg_functions' => '',
+  'access_callback' => 'user_access',
+  'access_arguments' => 'a:1:{i:0;s:13:"post comments";}',
+  'page_callback' => 'comment_edit',
+  'page_arguments' => 'a:0:{}',
+  'fit' => '3',
+  'number_parts' => '2',
+  'tab_parent' => '',
+  'tab_root' => 'comment/edit',
+  'title' => 'Edit comment',
+  'title_callback' => 't',
+  'title_arguments' => '',
+  'type' => '4',
+  'block_callback' => '',
+  'description' => '',
+  'position' => '',
+  'weight' => '0',
+  'file' => 'modules/comment/comment.pages.inc',
+))
+->values(array(
+  'path' => 'comment/reply/%',
+  'load_functions' => 'a:1:{i:2;s:9:"node_load";}',
+  'to_arg_functions' => '',
+  'access_callback' => 'node_access',
+  'access_arguments' => 'a:2:{i:0;s:4:"view";i:1;i:2;}',
+  'page_callback' => 'comment_reply',
+  'page_arguments' => 'a:1:{i:0;i:2;}',
+  'fit' => '6',
+  'number_parts' => '3',
+  'tab_parent' => '',
+  'tab_root' => 'comment/reply/%',
+  'title' => 'Reply to comment',
+  'title_callback' => 't',
+  'title_arguments' => '',
+  'type' => '4',
+  'block_callback' => '',
+  'description' => '',
+  'position' => '',
+  'weight' => '0',
+  'file' => 'modules/comment/comment.pages.inc',
+))
+->values(array(
+  'path' => 'filter/tips',
+  'load_functions' => '',
+  'to_arg_functions' => '',
+  'access_callback' => '1',
+  'access_arguments' => 'a:0:{}',
+  'page_callback' => 'filter_tips_long',
+  'page_arguments' => 'a:0:{}',
+  'fit' => '3',
+  'number_parts' => '2',
+  'tab_parent' => '',
+  'tab_root' => 'filter/tips',
+  'title' => 'Compose tips',
+  'title_callback' => 't',
+  'title_arguments' => '',
+  'type' => '20',
+  'block_callback' => '',
+  'description' => '',
+  'position' => '',
+  'weight' => '0',
+  'file' => 'modules/filter/filter.pages.inc',
+))
+->values(array(
+  'path' => 'logout',
+  'load_functions' => '',
+  'to_arg_functions' => '',
+  'access_callback' => 'user_is_logged_in',
+  'access_arguments' => 'a:0:{}',
+  'page_callback' => 'user_logout',
+  'page_arguments' => 'a:0:{}',
+  'fit' => '1',
+  'number_parts' => '1',
+  'tab_parent' => '',
+  'tab_root' => 'logout',
+  'title' => 'Log out',
+  'title_callback' => 't',
+  'title_arguments' => '',
+  'type' => '6',
+  'block_callback' => '',
+  'description' => '',
+  'position' => '',
+  'weight' => '10',
+  'file' => 'modules/user/user.pages.inc',
+))
+->values(array(
+  'path' => 'node',
+  'load_functions' => '',
+  'to_arg_functions' => '',
+  'access_callback' => 'user_access',
+  'access_arguments' => 'a:1:{i:0;s:14:"access content";}',
+  'page_callback' => 'node_page_default',
+  'page_arguments' => 'a:0:{}',
+  'fit' => '1',
+  'number_parts' => '1',
+  'tab_parent' => '',
+  'tab_root' => 'node',
+  'title' => 'Content',
+  'title_callback' => 't',
+  'title_arguments' => '',
+  'type' => '4',
+  'block_callback' => '',
+  'description' => '',
+  'position' => '',
+  'weight' => '0',
+  'file' => '',
+))
+->values(array(
+  'path' => 'node/%',
+  'load_functions' => 'a:1:{i:1;s:9:"node_load";}',
+  'to_arg_functions' => '',
+  'access_callback' => 'node_access',
+  'access_arguments' => 'a:2:{i:0;s:4:"view";i:1;i:1;}',
+  'page_callback' => 'node_page_view',
+  'page_arguments' => 'a:1:{i:0;i:1;}',
+  'fit' => '2',
+  'number_parts' => '2',
+  'tab_parent' => '',
+  'tab_root' => 'node/%',
+  'title' => '',
+  'title_callback' => 'node_page_title',
+  'title_arguments' => 'a:1:{i:0;i:1;}',
+  'type' => '4',
+  'block_callback' => '',
+  'description' => '',
+  'position' => '',
+  'weight' => '0',
+  'file' => '',
+))
+->values(array(
+  'path' => 'node/%/delete',
+  'load_functions' => 'a:1:{i:1;s:9:"node_load";}',
+  'to_arg_functions' => '',
+  'access_callback' => 'node_access',
+  'access_arguments' => 'a:2:{i:0;s:6:"delete";i:1;i:1;}',
+  'page_callback' => 'drupal_get_form',
+  'page_arguments' => 'a:2:{i:0;s:19:"node_delete_confirm";i:1;i:1;}',
+  'fit' => '5',
+  'number_parts' => '3',
+  'tab_parent' => '',
+  'tab_root' => 'node/%/delete',
+  'title' => 'Delete',
+  'title_callback' => 't',
+  'title_arguments' => '',
+  'type' => '4',
+  'block_callback' => '',
+  'description' => '',
+  'position' => '',
+  'weight' => '1',
+  'file' => 'modules/node/node.pages.inc',
+))
+->values(array(
+  'path' => 'node/%/edit',
+  'load_functions' => 'a:1:{i:1;s:9:"node_load";}',
+  'to_arg_functions' => '',
+  'access_callback' => 'node_access',
+  'access_arguments' => 'a:2:{i:0;s:6:"update";i:1;i:1;}',
+  'page_callback' => 'node_page_edit',
+  'page_arguments' => 'a:1:{i:0;i:1;}',
+  'fit' => '5',
+  'number_parts' => '3',
+  'tab_parent' => 'node/%',
+  'tab_root' => 'node/%',
+  'title' => 'Edit',
+  'title_callback' => 't',
+  'title_arguments' => '',
+  'type' => '128',
+  'block_callback' => '',
+  'description' => '',
+  'position' => '',
+  'weight' => '1',
+  'file' => 'modules/node/node.pages.inc',
+))
+->values(array(
+  'path' => 'node/%/results',
+  'load_functions' => 'a:1:{i:1;s:9:"node_load";}',
+  'to_arg_functions' => '',
+  'access_callback' => '_poll_menu_access',
+  'access_arguments' => 'a:3:{i:0;i:1;i:1;s:14:"access content";i:2;b:1;}',
+  'page_callback' => 'poll_results',
+  'page_arguments' => 'a:1:{i:0;i:1;}',
+  'fit' => '5',
+  'number_parts' => '3',
+  'tab_parent' => 'node/%',
+  'tab_root' => 'node/%',
+  'title' => 'Results',
+  'title_callback' => 't',
+  'title_arguments' => '',
+  'type' => '128',
+  'block_callback' => '',
+  'description' => '',
+  'position' => '',
+  'weight' => '3',
+  'file' => 'modules/poll/poll.pages.inc',
+))
+->values(array(
+  'path' => 'node/%/revisions',
+  'load_functions' => 'a:1:{i:1;s:9:"node_load";}',
+  'to_arg_functions' => '',
+  'access_callback' => '_node_revision_access',
+  'access_arguments' => 'a:1:{i:0;i:1;}',
+  'page_callback' => 'node_revision_overview',
+  'page_arguments' => 'a:1:{i:0;i:1;}',
+  'fit' => '5',
+  'number_parts' => '3',
+  'tab_parent' => 'node/%',
+  'tab_root' => 'node/%',
+  'title' => 'Revisions',
+  'title_callback' => 't',
+  'title_arguments' => '',
+  'type' => '128',
+  'block_callback' => '',
+  'description' => '',
+  'position' => '',
+  'weight' => '2',
+  'file' => 'modules/node/node.pages.inc',
+))
+->values(array(
+  'path' => 'node/%/revisions/%/delete',
+  'load_functions' => 'a:2:{i:1;a:1:{s:9:"node_load";a:1:{i:0;i:3;}}i:3;N;}',
+  'to_arg_functions' => '',
+  'access_callback' => '_node_revision_access',
+  'access_arguments' => 'a:2:{i:0;i:1;i:1;s:6:"delete";}',
+  'page_callback' => 'drupal_get_form',
+  'page_arguments' => 'a:2:{i:0;s:28:"node_revision_delete_confirm";i:1;i:1;}',
+  'fit' => '21',
+  'number_parts' => '5',
+  'tab_parent' => '',
+  'tab_root' => 'node/%/revisions/%/delete',
+  'title' => 'Delete earlier revision',
+  'title_callback' => 't',
+  'title_arguments' => '',
+  'type' => '4',
+  'block_callback' => '',
+  'description' => '',
+  'position' => '',
+  'weight' => '0',
+  'file' => 'modules/node/node.pages.inc',
+))
+->values(array(
+  'path' => 'node/%/revisions/%/revert',
+  'load_functions' => 'a:2:{i:1;a:1:{s:9:"node_load";a:1:{i:0;i:3;}}i:3;N;}',
+  'to_arg_functions' => '',
+  'access_callback' => '_node_revision_access',
+  'access_arguments' => 'a:2:{i:0;i:1;i:1;s:6:"update";}',
+  'page_callback' => 'drupal_get_form',
+  'page_arguments' => 'a:2:{i:0;s:28:"node_revision_revert_confirm";i:1;i:1;}',
+  'fit' => '21',
+  'number_parts' => '5',
+  'tab_parent' => '',
+  'tab_root' => 'node/%/revisions/%/revert',
+  'title' => 'Revert to earlier revision',
+  'title_callback' => 't',
+  'title_arguments' => '',
+  'type' => '4',
+  'block_callback' => '',
+  'description' => '',
+  'position' => '',
+  'weight' => '0',
+  'file' => 'modules/node/node.pages.inc',
+))
+->values(array(
+  'path' => 'node/%/revisions/%/view',
+  'load_functions' => 'a:2:{i:1;a:1:{s:9:"node_load";a:1:{i:0;i:3;}}i:3;N;}',
+  'to_arg_functions' => '',
+  'access_callback' => '_node_revision_access',
+  'access_arguments' => 'a:1:{i:0;i:1;}',
+  'page_callback' => 'node_show',
+  'page_arguments' => 'a:3:{i:0;i:1;i:1;N;i:2;b:1;}',
+  'fit' => '21',
+  'number_parts' => '5',
+  'tab_parent' => '',
+  'tab_root' => 'node/%/revisions/%/view',
+  'title' => 'Revisions',
+  'title_callback' => 't',
+  'title_arguments' => '',
+  'type' => '4',
+  'block_callback' => '',
+  'description' => '',
+  'position' => '',
+  'weight' => '0',
+  'file' => '',
+))
+->values(array(
+  'path' => 'node/%/view',
+  'load_functions' => 'a:1:{i:1;s:9:"node_load";}',
+  'to_arg_functions' => '',
+  'access_callback' => 'node_access',
+  'access_arguments' => 'a:2:{i:0;s:4:"view";i:1;i:1;}',
+  'page_callback' => 'node_page_view',
+  'page_arguments' => 'a:1:{i:0;i:1;}',
+  'fit' => '5',
+  'number_parts' => '3',
+  'tab_parent' => 'node/%',
+  'tab_root' => 'node/%',
+  'title' => 'View',
+  'title_callback' => 't',
+  'title_arguments' => '',
+  'type' => '136',
+  'block_callback' => '',
+  'description' => '',
+  'position' => '',
+  'weight' => '-10',
+  'file' => '',
+))
+->values(array(
+  'path' => 'node/%/votes',
+  'load_functions' => 'a:1:{i:1;s:9:"node_load";}',
+  'to_arg_functions' => '',
+  'access_callback' => '_poll_menu_access',
+  'access_arguments' => 'a:3:{i:0;i:1;i:1;s:17:"inspect all votes";i:2;b:0;}',
+  'page_callback' => 'poll_votes',
+  'page_arguments' => 'a:1:{i:0;i:1;}',
+  'fit' => '5',
+  'number_parts' => '3',
+  'tab_parent' => 'node/%',
+  'tab_root' => 'node/%',
+  'title' => 'Votes',
+  'title_callback' => 't',
+  'title_arguments' => '',
+  'type' => '128',
+  'block_callback' => '',
+  'description' => '',
+  'position' => '',
+  'weight' => '3',
+  'file' => 'modules/poll/poll.pages.inc',
+))
+->values(array(
+  'path' => 'node/add',
+  'load_functions' => '',
+  'to_arg_functions' => '',
+  'access_callback' => '_node_add_access',
+  'access_arguments' => 'a:0:{}',
+  'page_callback' => 'node_add_page',
+  'page_arguments' => 'a:0:{}',
+  'fit' => '3',
+  'number_parts' => '2',
+  'tab_parent' => '',
+  'tab_root' => 'node/add',
+  'title' => 'Create content',
+  'title_callback' => 't',
+  'title_arguments' => '',
+  'type' => '6',
+  'block_callback' => '',
+  'description' => '',
+  'position' => '',
+  'weight' => '1',
+  'file' => 'modules/node/node.pages.inc',
+))
+->values(array(
+  'path' => 'node/add/page',
+  'load_functions' => '',
+  'to_arg_functions' => '',
+  'access_callback' => 'node_access',
+  'access_arguments' => 'a:2:{i:0;s:6:"create";i:1;s:4:"page";}',
+  'page_callback' => 'node_add',
+  'page_arguments' => 'a:1:{i:0;i:2;}',
+  'fit' => '7',
+  'number_parts' => '3',
+  'tab_parent' => '',
+  'tab_root' => 'node/add/page',
+  'title' => 'Page',
+  'title_callback' => 'check_plain',
+  'title_arguments' => '',
+  'type' => '6',
+  'block_callback' => '',
+  'description' => "A <em>page</em>, similar in form to a <em>story</em>, is a simple method for creating and displaying information that rarely changes, such as an \"About us\" section of a website. By default, a <em>page</em> entry does not allow visitor comments and is not featured on the site's initial home page.",
+  'position' => '',
+  'weight' => '0',
+  'file' => 'modules/node/node.pages.inc',
+))
+->values(array(
+  'path' => 'node/add/poll',
+  'load_functions' => '',
+  'to_arg_functions' => '',
+  'access_callback' => 'node_access',
+  'access_arguments' => 'a:2:{i:0;s:6:"create";i:1;s:4:"poll";}',
+  'page_callback' => 'node_add',
+  'page_arguments' => 'a:1:{i:0;i:2;}',
+  'fit' => '7',
+  'number_parts' => '3',
+  'tab_parent' => '',
+  'tab_root' => 'node/add/poll',
+  'title' => 'Poll',
+  'title_callback' => 'check_plain',
+  'title_arguments' => '',
+  'type' => '6',
+  'block_callback' => '',
+  'description' => 'A <em>poll</em> is a question with a set of possible responses. A <em>poll</em>, once created, automatically provides a simple running count of the number of votes received for each response.',
+  'position' => '',
+  'weight' => '0',
+  'file' => 'modules/node/node.pages.inc',
+))
+->values(array(
+  'path' => 'node/add/story',
+  'load_functions' => '',
+  'to_arg_functions' => '',
+  'access_callback' => 'node_access',
+  'access_arguments' => 'a:2:{i:0;s:6:"create";i:1;s:5:"story";}',
+  'page_callback' => 'node_add',
+  'page_arguments' => 'a:1:{i:0;i:2;}',
+  'fit' => '7',
+  'number_parts' => '3',
+  'tab_parent' => '',
+  'tab_root' => 'node/add/story',
+  'title' => 'Story',
+  'title_callback' => 'check_plain',
+  'title_arguments' => '',
+  'type' => '6',
+  'block_callback' => '',
+  'description' => "A <em>story</em>, similar in form to a <em>page</em>, is ideal for creating and displaying content that informs or engages website visitors. Press releases, site announcements, and informal blog-like entries may all be created with a <em>story</em> entry. By default, a <em>story</em> entry is automatically featured on the site's initial home page, and provides the ability to post comments.",
+  'position' => '',
+  'weight' => '0',
+  'file' => 'modules/node/node.pages.inc',
+))
+->values(array(
+  'path' => 'poll',
+  'load_functions' => '',
+  'to_arg_functions' => '',
+  'access_callback' => 'user_access',
+  'access_arguments' => 'a:1:{i:0;s:14:"access content";}',
+  'page_callback' => 'poll_page',
+  'page_arguments' => 'a:0:{}',
+  'fit' => '1',
+  'number_parts' => '1',
+  'tab_parent' => '',
+  'tab_root' => 'poll',
+  'title' => 'Polls',
+  'title_callback' => 't',
+  'title_arguments' => '',
+  'type' => '20',
+  'block_callback' => '',
+  'description' => '',
+  'position' => '',
+  'weight' => '0',
+  'file' => 'modules/poll/poll.pages.inc',
+))
+->values(array(
+  'path' => 'poll/js',
+  'load_functions' => '',
+  'to_arg_functions' => '',
+  'access_callback' => 'user_access',
+  'access_arguments' => 'a:1:{i:0;s:14:"access content";}',
+  'page_callback' => 'poll_choice_js',
+  'page_arguments' => 'a:0:{}',
+  'fit' => '3',
+  'number_parts' => '2',
+  'tab_parent' => '',
+  'tab_root' => 'poll/js',
+  'title' => 'Javascript Choice Form',
+  'title_callback' => 't',
+  'title_arguments' => '',
+  'type' => '4',
+  'block_callback' => '',
+  'description' => '',
+  'position' => '',
+  'weight' => '0',
+  'file' => '',
+))
+->values(array(
+  'path' => 'rss.xml',
+  'load_functions' => '',
+  'to_arg_functions' => '',
+  'access_callback' => 'user_access',
+  'access_arguments' => 'a:1:{i:0;s:14:"access content";}',
+  'page_callback' => 'node_feed',
+  'page_arguments' => 'a:0:{}',
+  'fit' => '1',
+  'number_parts' => '1',
+  'tab_parent' => '',
+  'tab_root' => 'rss.xml',
+  'title' => 'RSS feed',
+  'title_callback' => 't',
+  'title_arguments' => '',
+  'type' => '4',
+  'block_callback' => '',
+  'description' => '',
+  'position' => '',
+  'weight' => '0',
+  'file' => '',
+))
+->values(array(
+  'path' => 'system/files',
+  'load_functions' => '',
+  'to_arg_functions' => '',
+  'access_callback' => '1',
+  'access_arguments' => 'a:0:{}',
+  'page_callback' => 'file_download',
+  'page_arguments' => 'a:0:{}',
+  'fit' => '3',
+  'number_parts' => '2',
+  'tab_parent' => '',
+  'tab_root' => 'system/files',
+  'title' => 'File download',
+  'title_callback' => 't',
+  'title_arguments' => '',
+  'type' => '4',
+  'block_callback' => '',
+  'description' => '',
+  'position' => '',
+  'weight' => '0',
+  'file' => '',
+))
+->values(array(
+  'path' => 'taxonomy/autocomplete',
+  'load_functions' => '',
+  'to_arg_functions' => '',
+  'access_callback' => 'user_access',
+  'access_arguments' => 'a:1:{i:0;s:14:"access content";}',
+  'page_callback' => 'taxonomy_autocomplete',
+  'page_arguments' => 'a:0:{}',
+  'fit' => '3',
+  'number_parts' => '2',
+  'tab_parent' => '',
+  'tab_root' => 'taxonomy/autocomplete',
+  'title' => 'Autocomplete taxonomy',
+  'title_callback' => 't',
+  'title_arguments' => '',
+  'type' => '4',
+  'block_callback' => '',
+  'description' => '',
+  'position' => '',
+  'weight' => '0',
+  'file' => 'modules/taxonomy/taxonomy.pages.inc',
+))
+->values(array(
+  'path' => 'taxonomy/term/%',
+  'load_functions' => 'a:1:{i:2;N;}',
+  'to_arg_functions' => '',
+  'access_callback' => 'user_access',
+  'access_arguments' => 'a:1:{i:0;s:14:"access content";}',
+  'page_callback' => 'taxonomy_term_page',
+  'page_arguments' => 'a:1:{i:0;i:2;}',
+  'fit' => '6',
+  'number_parts' => '3',
+  'tab_parent' => '',
+  'tab_root' => 'taxonomy/term/%',
+  'title' => 'Taxonomy term',
+  'title_callback' => 't',
+  'title_arguments' => '',
+  'type' => '4',
+  'block_callback' => '',
+  'description' => '',
+  'position' => '',
+  'weight' => '0',
+  'file' => 'modules/taxonomy/taxonomy.pages.inc',
+))
+->values(array(
+  'path' => 'user',
+  'load_functions' => '',
+  'to_arg_functions' => '',
+  'access_callback' => '1',
+  'access_arguments' => 'a:0:{}',
+  'page_callback' => 'user_page',
+  'page_arguments' => 'a:0:{}',
+  'fit' => '1',
+  'number_parts' => '1',
+  'tab_parent' => '',
+  'tab_root' => 'user',
+  'title' => 'User account',
+  'title_callback' => 't',
+  'title_arguments' => '',
+  'type' => '4',
+  'block_callback' => '',
+  'description' => '',
+  'position' => '',
+  'weight' => '0',
+  'file' => 'modules/user/user.pages.inc',
+))
+->values(array(
+  'path' => 'user/%',
+  'load_functions' => 'a:1:{i:1;s:22:"user_uid_optional_load";}',
+  'to_arg_functions' => 'a:1:{i:1;s:24:"user_uid_optional_to_arg";}',
+  'access_callback' => 'user_view_access',
+  'access_arguments' => 'a:1:{i:0;i:1;}',
+  'page_callback' => 'user_view',
+  'page_arguments' => 'a:1:{i:0;i:1;}',
+  'fit' => '2',
+  'number_parts' => '2',
+  'tab_parent' => '',
+  'tab_root' => 'user/%',
+  'title' => 'My account',
+  'title_callback' => 'user_page_title',
+  'title_arguments' => 'a:1:{i:0;i:1;}',
+  'type' => '6',
+  'block_callback' => '',
+  'description' => '',
+  'position' => '',
+  'weight' => '0',
+  'file' => 'modules/user/user.pages.inc',
+))
+->values(array(
+  'path' => 'user/%/delete',
+  'load_functions' => 'a:1:{i:1;s:9:"user_load";}',
+  'to_arg_functions' => '',
+  'access_callback' => 'user_access',
+  'access_arguments' => 'a:1:{i:0;s:16:"administer users";}',
+  'page_callback' => 'drupal_get_form',
+  'page_arguments' => 'a:2:{i:0;s:19:"user_confirm_delete";i:1;i:1;}',
+  'fit' => '5',
+  'number_parts' => '3',
+  'tab_parent' => '',
+  'tab_root' => 'user/%/delete',
+  'title' => 'Delete',
+  'title_callback' => 't',
+  'title_arguments' => '',
+  'type' => '4',
+  'block_callback' => '',
+  'description' => '',
+  'position' => '',
+  'weight' => '0',
+  'file' => 'modules/user/user.pages.inc',
+))
+->values(array(
+  'path' => 'user/%/edit',
+  'load_functions' => 'a:1:{i:1;a:1:{s:18:"user_category_load";a:2:{i:0;s:4:"%map";i:1;s:6:"%index";}}}',
+  'to_arg_functions' => '',
+  'access_callback' => 'user_edit_access',
+  'access_arguments' => 'a:1:{i:0;i:1;}',
+  'page_callback' => 'user_edit',
+  'page_arguments' => 'a:1:{i:0;i:1;}',
+  'fit' => '5',
+  'number_parts' => '3',
+  'tab_parent' => 'user/%',
+  'tab_root' => 'user/%',
+  'title' => 'Edit',
+  'title_callback' => 't',
+  'title_arguments' => '',
+  'type' => '128',
+  'block_callback' => '',
+  'description' => '',
+  'position' => '',
+  'weight' => '0',
+  'file' => 'modules/user/user.pages.inc',
+))
+->values(array(
+  'path' => 'user/%/edit/account',
+  'load_functions' => 'a:1:{i:1;a:1:{s:18:"user_category_load";a:2:{i:0;s:4:"%map";i:1;s:6:"%index";}}}',
+  'to_arg_functions' => '',
+  'access_callback' => 'user_edit_access',
+  'access_arguments' => 'a:1:{i:0;i:1;}',
+  'page_callback' => 'user_edit',
+  'page_arguments' => 'a:1:{i:0;i:1;}',
+  'fit' => '11',
+  'number_parts' => '4',
+  'tab_parent' => 'user/%/edit',
+  'tab_root' => 'user/%',
+  'title' => 'Account',
+  'title_callback' => 't',
+  'title_arguments' => '',
+  'type' => '136',
+  'block_callback' => '',
+  'description' => '',
+  'position' => '',
+  'weight' => '0',
+  'file' => 'modules/user/user.pages.inc',
+))
+->values(array(
+  'path' => 'user/%/view',
+  'load_functions' => 'a:1:{i:1;s:9:"user_load";}',
+  'to_arg_functions' => '',
+  'access_callback' => 'user_view_access',
+  'access_arguments' => 'a:1:{i:0;i:1;}',
+  'page_callback' => 'user_view',
+  'page_arguments' => 'a:1:{i:0;i:1;}',
+  'fit' => '5',
+  'number_parts' => '3',
+  'tab_parent' => 'user/%',
+  'tab_root' => 'user/%',
+  'title' => 'View',
+  'title_callback' => 't',
+  'title_arguments' => '',
+  'type' => '136',
+  'block_callback' => '',
+  'description' => '',
+  'position' => '',
+  'weight' => '-10',
+  'file' => 'modules/user/user.pages.inc',
+))
+->values(array(
+  'path' => 'user/autocomplete',
+  'load_functions' => '',
+  'to_arg_functions' => '',
+  'access_callback' => 'user_access',
+  'access_arguments' => 'a:1:{i:0;s:20:"access user profiles";}',
+  'page_callback' => 'user_autocomplete',
+  'page_arguments' => 'a:0:{}',
+  'fit' => '3',
+  'number_parts' => '2',
+  'tab_parent' => '',
+  'tab_root' => 'user/autocomplete',
+  'title' => 'User autocomplete',
+  'title_callback' => 't',
+  'title_arguments' => '',
+  'type' => '4',
+  'block_callback' => '',
+  'description' => '',
+  'position' => '',
+  'weight' => '0',
+  'file' => 'modules/user/user.pages.inc',
+))
+->values(array(
+  'path' => 'user/login',
+  'load_functions' => '',
+  'to_arg_functions' => '',
+  'access_callback' => 'user_is_anonymous',
+  'access_arguments' => 'a:0:{}',
+  'page_callback' => 'user_page',
+  'page_arguments' => 'a:0:{}',
+  'fit' => '3',
+  'number_parts' => '2',
+  'tab_parent' => 'user',
+  'tab_root' => 'user',
+  'title' => 'Log in',
+  'title_callback' => 't',
+  'title_arguments' => '',
+  'type' => '136',
+  'block_callback' => '',
+  'description' => '',
+  'position' => '',
+  'weight' => '0',
+  'file' => 'modules/user/user.pages.inc',
+))
+->values(array(
+  'path' => 'user/password',
+  'load_functions' => '',
+  'to_arg_functions' => '',
+  'access_callback' => 'user_is_anonymous',
+  'access_arguments' => 'a:0:{}',
+  'page_callback' => 'drupal_get_form',
+  'page_arguments' => 'a:1:{i:0;s:9:"user_pass";}',
+  'fit' => '3',
+  'number_parts' => '2',
+  'tab_parent' => 'user',
+  'tab_root' => 'user',
+  'title' => 'Request new password',
+  'title_callback' => 't',
+  'title_arguments' => '',
+  'type' => '128',
+  'block_callback' => '',
+  'description' => '',
+  'position' => '',
+  'weight' => '0',
+  'file' => 'modules/user/user.pages.inc',
+))
+->values(array(
+  'path' => 'user/register',
+  'load_functions' => '',
+  'to_arg_functions' => '',
+  'access_callback' => 'user_register_access',
+  'access_arguments' => 'a:0:{}',
+  'page_callback' => 'drupal_get_form',
+  'page_arguments' => 'a:1:{i:0;s:13:"user_register";}',
+  'fit' => '3',
+  'number_parts' => '2',
+  'tab_parent' => 'user',
+  'tab_root' => 'user',
+  'title' => 'Create new account',
+  'title_callback' => 't',
+  'title_arguments' => '',
+  'type' => '128',
+  'block_callback' => '',
+  'description' => '',
+  'position' => '',
+  'weight' => '0',
+  'file' => 'modules/user/user.pages.inc',
+))
+->values(array(
+  'path' => 'user/reset/%/%/%',
+  'load_functions' => 'a:3:{i:2;N;i:3;N;i:4;N;}',
+  'to_arg_functions' => '',
+  'access_callback' => '1',
+  'access_arguments' => 'a:0:{}',
+  'page_callback' => 'drupal_get_form',
+  'page_arguments' => 'a:4:{i:0;s:15:"user_pass_reset";i:1;i:2;i:2;i:3;i:3;i:4;}',
+  'fit' => '24',
+  'number_parts' => '5',
+  'tab_parent' => '',
+  'tab_root' => 'user/reset/%/%/%',
+  'title' => 'Reset password',
+  'title_callback' => 't',
+  'title_arguments' => '',
+  'type' => '4',
+  'block_callback' => '',
+  'description' => '',
+  'position' => '',
+  'weight' => '0',
+  'file' => 'modules/user/user.pages.inc',
+))
+->execute();
+
+db_create_table('node', array(
+  'fields' => array(
+    'nid' => array(
+      'type' => 'serial',
+      'unsigned' => TRUE,
+      'not null' => TRUE,
+    ),
+    'vid' => array(
+      'type' => 'int',
+      'unsigned' => TRUE,
+      'not null' => TRUE,
+      'default' => 0,
+    ),
+    'type' => array(
+      'type' => 'varchar',
+      'length' => 32,
+      'not null' => TRUE,
+      'default' => '',
+    ),
+    'language' => array(
+      'type' => 'varchar',
+      'length' => 12,
+      'not null' => TRUE,
+      'default' => '',
+    ),
+    'title' => array(
+      'type' => 'varchar',
+      'length' => 255,
+      'not null' => TRUE,
+      'default' => '',
+    ),
+    'uid' => array(
+      'type' => 'int',
+      'not null' => TRUE,
+      'default' => 0,
+    ),
+    'status' => array(
+      'type' => 'int',
+      'not null' => TRUE,
+      'default' => 1,
+    ),
+    'created' => array(
+      'type' => 'int',
+      'not null' => TRUE,
+      'default' => 0,
+    ),
+    'changed' => array(
+      'type' => 'int',
+      'not null' => TRUE,
+      'default' => 0,
+    ),
+    'comment' => array(
+      'type' => 'int',
+      'not null' => TRUE,
+      'default' => 0,
+    ),
+    'promote' => array(
+      'type' => 'int',
+      'not null' => TRUE,
+      'default' => 0,
+    ),
+    'moderate' => array(
+      'type' => 'int',
+      'not null' => TRUE,
+      'default' => 0,
+    ),
+    'sticky' => array(
+      'type' => 'int',
+      'not null' => TRUE,
+      'default' => 0,
+    ),
+    'tnid' => array(
+      'type' => 'int',
+      'unsigned' => TRUE,
+      'not null' => TRUE,
+      'default' => 0,
+    ),
+    'translate' => array(
+      'type' => 'int',
+      'not null' => TRUE,
+      'default' => 0,
+    ),
+  ),
+  'indexes' => array(
+    'node_changed' => array(
+      'changed',
+    ),
+    'node_created' => array(
+      'created',
+    ),
+    'node_moderate' => array(
+      'moderate',
+    ),
+    'node_promote_status' => array(
+      'promote',
+      'status',
+    ),
+    'node_status_type' => array(
+      'status',
+      'type',
+      'nid',
+    ),
+    'node_title_type' => array(
+      'title',
+      array(
+        'type',
+        4,
+      ),
+    ),
+    'node_type' => array(
+      array(
+        'type',
+        4,
+      ),
+    ),
+    'uid' => array(
+      'uid',
+    ),
+    'tnid' => array(
+      'tnid',
+    ),
+    'translate' => array(
+      'translate',
+    ),
+  ),
+  'unique keys' => array(
+    'vid' => array(
+      'vid',
+    ),
+  ),
+  'primary key' => array(
+    'nid',
+  ),
+  'module' => 'node',
+  'name' => 'node',
+));
+db_insert('node')->fields(array(
+  'nid',
+  'vid',
+  'type',
+  'language',
+  'title',
+  'uid',
+  'status',
+  'created',
+  'changed',
+  'comment',
+  'promote',
+  'moderate',
+  'sticky',
+  'tnid',
+  'translate',
+))
+->values(array(
+  'nid' => '1',
+  'vid' => '2',
+  'type' => 'page',
+  'language' => '',
+  'title' => 'node title 1 rev 1 (i=0) rev2 2',
+  'uid' => '3',
+  'status' => '0',
+  'created' => '1262732400',
+  'changed' => '1282936266',
+  'comment' => '0',
+  'promote' => '0',
+  'moderate' => '0',
+  'sticky' => '0',
+  'tnid' => '0',
+  'translate' => '0',
+))
+->values(array(
+  'nid' => '2',
+  'vid' => '4',
+  'type' => 'page',
+  'language' => '',
+  'title' => 'node title 2 rev 3 (i=1) rev2 4',
+  'uid' => '3',
+  'status' => '0',
+  'created' => '1262818800',
+  'changed' => '1282936266',
+  'comment' => '0',
+  'promote' => '1',
+  'moderate' => '0',
+  'sticky' => '0',
+  'tnid' => '0',
+  'translate' => '0',
+))
+->values(array(
+  'nid' => '3',
+  'vid' => '6',
+  'type' => 'page',
+  'language' => '',
+  'title' => 'node title 3 rev 5 (i=2) rev2 6',
+  'uid' => '3',
+  'status' => '0',
+  'created' => '1262905200',
+  'changed' => '1282936266',
+  'comment' => '0',
+  'promote' => '0',
+  'moderate' => '0',
+  'sticky' => '0',
+  'tnid' => '0',
+  'translate' => '0',
+))
+->values(array(
+  'nid' => '4',
+  'vid' => '8',
+  'type' => 'page',
+  'language' => '',
+  'title' => 'node title 4 rev 7 (i=3) rev2 8',
+  'uid' => '3',
+  'status' => '0',
+  'created' => '1262991600',
+  'changed' => '1282936266',
+  'comment' => '0',
+  'promote' => '1',
+  'moderate' => '0',
+  'sticky' => '0',
+  'tnid' => '0',
+  'translate' => '0',
+))
+->values(array(
+  'nid' => '5',
+  'vid' => '10',
+  'type' => 'page',
+  'language' => '',
+  'title' => 'node title 5 rev 9 (i=4) rev2 10',
+  'uid' => '3',
+  'status' => '1',
+  'created' => '1263078000',
+  'changed' => '1282936266',
+  'comment' => '0',
+  'promote' => '0',
+  'moderate' => '0',
+  'sticky' => '0',
+  'tnid' => '0',
+  'translate' => '0',
+))
+->values(array(
+  'nid' => '6',
+  'vid' => '12',
+  'type' => 'page',
+  'language' => '',
+  'title' => 'node title 6 rev 11 (i=5) rev2 12',
+  'uid' => '3',
+  'status' => '1',
+  'created' => '1263164400',
+  'changed' => '1282936266',
+  'comment' => '0',
+  'promote' => '1',
+  'moderate' => '0',
+  'sticky' => '0',
+  'tnid' => '0',
+  'translate' => '0',
+))
+->values(array(
+  'nid' => '7',
+  'vid' => '14',
+  'type' => 'page',
+  'language' => '',
+  'title' => 'node title 7 rev 13 (i=6) rev2 14',
+  'uid' => '3',
+  'status' => '1',
+  'created' => '1263250800',
+  'changed' => '1282936266',
+  'comment' => '0',
+  'promote' => '0',
+  'moderate' => '0',
+  'sticky' => '0',
+  'tnid' => '0',
+  'translate' => '0',
+))
+->values(array(
+  'nid' => '8',
+  'vid' => '16',
+  'type' => 'page',
+  'language' => '',
+  'title' => 'node title 8 rev 15 (i=7) rev2 16',
+  'uid' => '3',
+  'status' => '1',
+  'created' => '1263337200',
+  'changed' => '1282936266',
+  'comment' => '0',
+  'promote' => '1',
+  'moderate' => '0',
+  'sticky' => '0',
+  'tnid' => '0',
+  'translate' => '0',
+))
+->values(array(
+  'nid' => '9',
+  'vid' => '18',
+  'type' => 'page',
+  'language' => '',
+  'title' => 'node title 9 rev 17 (i=8) rev2 18',
+  'uid' => '4',
+  'status' => '0',
+  'created' => '1263423600',
+  'changed' => '1282936266',
+  'comment' => '0',
+  'promote' => '0',
+  'moderate' => '0',
+  'sticky' => '0',
+  'tnid' => '0',
+  'translate' => '0',
+))
+->values(array(
+  'nid' => '10',
+  'vid' => '20',
+  'type' => 'page',
+  'language' => '',
+  'title' => 'node title 10 rev 19 (i=9) rev2 20',
+  'uid' => '4',
+  'status' => '0',
+  'created' => '1263510000',
+  'changed' => '1282936266',
+  'comment' => '0',
+  'promote' => '1',
+  'moderate' => '0',
+  'sticky' => '0',
+  'tnid' => '0',
+  'translate' => '0',
+))
+->values(array(
+  'nid' => '11',
+  'vid' => '22',
+  'type' => 'page',
+  'language' => '',
+  'title' => 'node title 11 rev 21 (i=10) rev2 22',
+  'uid' => '4',
+  'status' => '0',
+  'created' => '1263596400',
+  'changed' => '1282936267',
+  'comment' => '0',
+  'promote' => '0',
+  'moderate' => '0',
+  'sticky' => '0',
+  'tnid' => '0',
+  'translate' => '0',
+))
+->values(array(
+  'nid' => '12',
+  'vid' => '24',
+  'type' => 'page',
+  'language' => '',
+  'title' => 'node title 12 rev 23 (i=11) rev2 24',
+  'uid' => '4',
+  'status' => '0',
+  'created' => '1263682800',
+  'changed' => '1282936267',
+  'comment' => '0',
+  'promote' => '1',
+  'moderate' => '0',
+  'sticky' => '0',
+  'tnid' => '0',
+  'translate' => '0',
+))
+->values(array(
+  'nid' => '13',
+  'vid' => '25',
+  'type' => 'story',
+  'language' => '',
+  'title' => 'node title 13 rev 25 (i=12)',
+  'uid' => '4',
+  'status' => '1',
+  'created' => '1263769200',
+  'changed' => '1282936267',
+  'comment' => '0',
+  'promote' => '0',
+  'moderate' => '0',
+  'sticky' => '0',
+  'tnid' => '0',
+  'translate' => '0',
+))
+->values(array(
+  'nid' => '14',
+  'vid' => '26',
+  'type' => 'story',
+  'language' => '',
+  'title' => 'node title 14 rev 26 (i=13)',
+  'uid' => '4',
+  'status' => '1',
+  'created' => '1263855600',
+  'changed' => '1282936267',
+  'comment' => '0',
+  'promote' => '1',
+  'moderate' => '0',
+  'sticky' => '0',
+  'tnid' => '0',
+  'translate' => '0',
+))
+->values(array(
+  'nid' => '15',
+  'vid' => '27',
+  'type' => 'story',
+  'language' => '',
+  'title' => 'node title 15 rev 27 (i=14)',
+  'uid' => '4',
+  'status' => '1',
+  'created' => '1263942000',
+  'changed' => '1282936267',
+  'comment' => '0',
+  'promote' => '0',
+  'moderate' => '0',
+  'sticky' => '0',
+  'tnid' => '0',
+  'translate' => '0',
+))
+->values(array(
+  'nid' => '16',
+  'vid' => '28',
+  'type' => 'story',
+  'language' => '',
+  'title' => 'node title 16 rev 28 (i=15)',
+  'uid' => '4',
+  'status' => '1',
+  'created' => '1264028400',
+  'changed' => '1282936267',
+  'comment' => '0',
+  'promote' => '1',
+  'moderate' => '0',
+  'sticky' => '0',
+  'tnid' => '0',
+  'translate' => '0',
+))
+->values(array(
+  'nid' => '17',
+  'vid' => '29',
+  'type' => 'story',
+  'language' => '',
+  'title' => 'node title 17 rev 29 (i=16)',
+  'uid' => '5',
+  'status' => '0',
+  'created' => '1264114800',
+  'changed' => '1282936267',
+  'comment' => '0',
+  'promote' => '0',
+  'moderate' => '0',
+  'sticky' => '0',
+  'tnid' => '0',
+  'translate' => '0',
+))
+->values(array(
+  'nid' => '18',
+  'vid' => '30',
+  'type' => 'story',
+  'language' => '',
+  'title' => 'node title 18 rev 30 (i=17)',
+  'uid' => '5',
+  'status' => '0',
+  'created' => '1264201200',
+  'changed' => '1282936267',
+  'comment' => '0',
+  'promote' => '1',
+  'moderate' => '0',
+  'sticky' => '0',
+  'tnid' => '0',
+  'translate' => '0',
+))
+->values(array(
+  'nid' => '19',
+  'vid' => '31',
+  'type' => 'story',
+  'language' => '',
+  'title' => 'node title 19 rev 31 (i=18)',
+  'uid' => '5',
+  'status' => '0',
+  'created' => '1264287600',
+  'changed' => '1282936267',
+  'comment' => '0',
+  'promote' => '0',
+  'moderate' => '0',
+  'sticky' => '0',
+  'tnid' => '0',
+  'translate' => '0',
+))
+->values(array(
+  'nid' => '20',
+  'vid' => '32',
+  'type' => 'story',
+  'language' => '',
+  'title' => 'node title 20 rev 32 (i=19)',
+  'uid' => '5',
+  'status' => '0',
+  'created' => '1264374000',
+  'changed' => '1282936267',
+  'comment' => '0',
+  'promote' => '1',
+  'moderate' => '0',
+  'sticky' => '0',
+  'tnid' => '0',
+  'translate' => '0',
+))
+->values(array(
+  'nid' => '21',
+  'vid' => '33',
+  'type' => 'story',
+  'language' => '',
+  'title' => 'node title 21 rev 33 (i=20)',
+  'uid' => '5',
+  'status' => '1',
+  'created' => '1264460400',
+  'changed' => '1282936267',
+  'comment' => '0',
+  'promote' => '0',
+  'moderate' => '0',
+  'sticky' => '0',
+  'tnid' => '0',
+  'translate' => '0',
+))
+->values(array(
+  'nid' => '22',
+  'vid' => '34',
+  'type' => 'story',
+  'language' => '',
+  'title' => 'node title 22 rev 34 (i=21)',
+  'uid' => '5',
+  'status' => '1',
+  'created' => '1264546800',
+  'changed' => '1282936267',
+  'comment' => '0',
+  'promote' => '1',
+  'moderate' => '0',
+  'sticky' => '0',
+  'tnid' => '0',
+  'translate' => '0',
+))
+->values(array(
+  'nid' => '23',
+  'vid' => '35',
+  'type' => 'story',
+  'language' => '',
+  'title' => 'node title 23 rev 35 (i=22)',
+  'uid' => '5',
+  'status' => '1',
+  'created' => '1264633200',
+  'changed' => '1282936267',
+  'comment' => '0',
+  'promote' => '0',
+  'moderate' => '0',
+  'sticky' => '0',
+  'tnid' => '0',
+  'translate' => '0',
+))
+->values(array(
+  'nid' => '24',
+  'vid' => '36',
+  'type' => 'story',
+  'language' => '',
+  'title' => 'node title 24 rev 36 (i=23)',
+  'uid' => '5',
+  'status' => '1',
+  'created' => '1264719600',
+  'changed' => '1282936267',
+  'comment' => '0',
+  'promote' => '1',
+  'moderate' => '0',
+  'sticky' => '0',
+  'tnid' => '0',
+  'translate' => '0',
+))
+->values(array(
+  'nid' => '25',
+  'vid' => '37',
+  'type' => 'poll',
+  'language' => '',
+  'title' => 'poll title 0',
+  'uid' => '3',
+  'status' => '0',
+  'created' => '1262732400',
+  'changed' => '1282936268',
+  'comment' => '0',
+  'promote' => '0',
+  'moderate' => '0',
+  'sticky' => '0',
+  'tnid' => '0',
+  'translate' => '0',
+))
+->values(array(
+  'nid' => '26',
+  'vid' => '38',
+  'type' => 'poll',
+  'language' => '',
+  'title' => 'poll title 1',
+  'uid' => '3',
+  'status' => '0',
+  'created' => '1262775600',
+  'changed' => '1282936268',
+  'comment' => '0',
+  'promote' => '1',
+  'moderate' => '0',
+  'sticky' => '0',
+  'tnid' => '0',
+  'translate' => '0',
+))
+->values(array(
+  'nid' => '27',
+  'vid' => '39',
+  'type' => 'poll',
+  'language' => '',
+  'title' => 'poll title 2',
+  'uid' => '3',
+  'status' => '1',
+  'created' => '1262818800',
+  'changed' => '1282936268',
+  'comment' => '0',
+  'promote' => '0',
+  'moderate' => '0',
+  'sticky' => '0',
+  'tnid' => '0',
+  'translate' => '0',
+))
+->values(array(
+  'nid' => '28',
+  'vid' => '40',
+  'type' => 'poll',
+  'language' => '',
+  'title' => 'poll title 3',
+  'uid' => '3',
+  'status' => '1',
+  'created' => '1262862000',
+  'changed' => '1282936268',
+  'comment' => '0',
+  'promote' => '1',
+  'moderate' => '0',
+  'sticky' => '0',
+  'tnid' => '0',
+  'translate' => '0',
+))
+->values(array(
+  'nid' => '29',
+  'vid' => '41',
+  'type' => 'poll',
+  'language' => '',
+  'title' => 'poll title 4',
+  'uid' => '4',
+  'status' => '0',
+  'created' => '1262905200',
+  'changed' => '1282936268',
+  'comment' => '0',
+  'promote' => '0',
+  'moderate' => '0',
+  'sticky' => '0',
+  'tnid' => '0',
+  'translate' => '0',
+))
+->values(array(
+  'nid' => '30',
+  'vid' => '42',
+  'type' => 'poll',
+  'language' => '',
+  'title' => 'poll title 5',
+  'uid' => '4',
+  'status' => '0',
+  'created' => '1262948400',
+  'changed' => '1282936268',
+  'comment' => '0',
+  'promote' => '1',
+  'moderate' => '0',
+  'sticky' => '0',
+  'tnid' => '0',
+  'translate' => '0',
+))
+->values(array(
+  'nid' => '31',
+  'vid' => '43',
+  'type' => 'poll',
+  'language' => '',
+  'title' => 'poll title 6',
+  'uid' => '4',
+  'status' => '1',
+  'created' => '1262991600',
+  'changed' => '1282936268',
+  'comment' => '0',
+  'promote' => '0',
+  'moderate' => '0',
+  'sticky' => '0',
+  'tnid' => '0',
+  'translate' => '0',
+))
+->values(array(
+  'nid' => '32',
+  'vid' => '44',
+  'type' => 'poll',
+  'language' => '',
+  'title' => 'poll title 7',
+  'uid' => '4',
+  'status' => '1',
+  'created' => '1263034800',
+  'changed' => '1282936268',
+  'comment' => '0',
+  'promote' => '1',
+  'moderate' => '0',
+  'sticky' => '0',
+  'tnid' => '0',
+  'translate' => '0',
+))
+->values(array(
+  'nid' => '33',
+  'vid' => '45',
+  'type' => 'poll',
+  'language' => '',
+  'title' => 'poll title 8',
+  'uid' => '5',
+  'status' => '0',
+  'created' => '1263078000',
+  'changed' => '1282936268',
+  'comment' => '0',
+  'promote' => '0',
+  'moderate' => '0',
+  'sticky' => '0',
+  'tnid' => '0',
+  'translate' => '0',
+))
+->values(array(
+  'nid' => '34',
+  'vid' => '46',
+  'type' => 'poll',
+  'language' => '',
+  'title' => 'poll title 9',
+  'uid' => '5',
+  'status' => '0',
+  'created' => '1263121200',
+  'changed' => '1282936268',
+  'comment' => '0',
+  'promote' => '1',
+  'moderate' => '0',
+  'sticky' => '0',
+  'tnid' => '0',
+  'translate' => '0',
+))
+->values(array(
+  'nid' => '35',
+  'vid' => '47',
+  'type' => 'poll',
+  'language' => '',
+  'title' => 'poll title 10',
+  'uid' => '5',
+  'status' => '1',
+  'created' => '1263164400',
+  'changed' => '1282936268',
+  'comment' => '0',
+  'promote' => '0',
+  'moderate' => '0',
+  'sticky' => '0',
+  'tnid' => '0',
+  'translate' => '0',
+))
+->values(array(
+  'nid' => '36',
+  'vid' => '48',
+  'type' => 'poll',
+  'language' => '',
+  'title' => 'poll title 11',
+  'uid' => '5',
+  'status' => '1',
+  'created' => '1263207600',
+  'changed' => '1282936268',
+  'comment' => '0',
+  'promote' => '1',
+  'moderate' => '0',
+  'sticky' => '0',
+  'tnid' => '0',
+  'translate' => '0',
+))
+->values(array(
+  'nid' => '37',
+  'vid' => '49',
+  'type' => 'broken',
+  'language' => '',
+  'title' => 'node title 24',
+  'uid' => '6',
+  'status' => '1',
+  'created' => '1263769200',
+  'changed' => '1279310614',
+  'comment' => '0',
+  'promote' => '0',
+  'moderate' => '0',
+  'sticky' => '0',
+  'tnid' => '0',
+  'translate' => '0',
+))
+->execute();
+
+db_create_table('node_access', array(
+  'fields' => array(
+    'nid' => array(
+      'type' => 'int',
+      'unsigned' => TRUE,
+      'not null' => TRUE,
+      'default' => 0,
+    ),
+    'gid' => array(
+      'type' => 'int',
+      'unsigned' => TRUE,
+      'not null' => TRUE,
+      'default' => 0,
+    ),
+    'realm' => array(
+      'type' => 'varchar',
+      'length' => 255,
+      'not null' => TRUE,
+      'default' => '',
+    ),
+    'grant_view' => array(
+      'type' => 'int',
+      'unsigned' => TRUE,
+      'not null' => TRUE,
+      'default' => 0,
+      'size' => 'tiny',
+    ),
+    'grant_update' => array(
+      'type' => 'int',
+      'unsigned' => TRUE,
+      'not null' => TRUE,
+      'default' => 0,
+      'size' => 'tiny',
+    ),
+    'grant_delete' => array(
+      'type' => 'int',
+      'unsigned' => TRUE,
+      'not null' => TRUE,
+      'default' => 0,
+      'size' => 'tiny',
+    ),
+  ),
+  'primary key' => array(
+    'nid',
+    'gid',
+    'realm',
+  ),
+  'module' => 'node',
+  'name' => 'node_access',
+));
+db_insert('node_access')->fields(array(
+  'nid',
+  'gid',
+  'realm',
+  'grant_view',
+  'grant_update',
+  'grant_delete',
+))
+->values(array(
+  'nid' => '0',
+  'gid' => '0',
+  'realm' => 'all',
+  'grant_view' => '1',
+  'grant_update' => '0',
+  'grant_delete' => '0',
+))
+->execute();
+
+db_create_table('node_comment_statistics', array(
+  'fields' => array(
+    'nid' => array(
+      'type' => 'int',
+      'unsigned' => TRUE,
+      'not null' => TRUE,
+      'default' => 0,
+    ),
+    'last_comment_timestamp' => array(
+      'type' => 'int',
+      'not null' => TRUE,
+      'default' => 0,
+    ),
+    'last_comment_name' => array(
+      'type' => 'varchar',
+      'length' => 60,
+      'not null' => FALSE,
+    ),
+    'last_comment_uid' => array(
+      'type' => 'int',
+      'not null' => TRUE,
+      'default' => 0,
+    ),
+    'comment_count' => array(
+      'type' => 'int',
+      'unsigned' => TRUE,
+      'not null' => TRUE,
+      'default' => 0,
+    ),
+  ),
+  'primary key' => array(
+    'nid',
+  ),
+  'indexes' => array(
+    'node_comment_timestamp' => array(
+      'last_comment_timestamp',
+    ),
+  ),
+  'module' => 'comment',
+  'name' => 'node_comment_statistics',
+));
+db_insert('node_comment_statistics')->fields(array(
+  'nid',
+  'last_comment_timestamp',
+  'last_comment_name',
+  'last_comment_uid',
+  'comment_count',
+))
+->values(array(
+  'nid' => '1',
+  'last_comment_timestamp' => '1282936266',
+  'last_comment_name' => NULL,
+  'last_comment_uid' => '3',
+  'comment_count' => '0',
+))
+->values(array(
+  'nid' => '2',
+  'last_comment_timestamp' => '1282936266',
+  'last_comment_name' => NULL,
+  'last_comment_uid' => '3',
+  'comment_count' => '0',
+))
+->values(array(
+  'nid' => '3',
+  'last_comment_timestamp' => '1282936266',
+  'last_comment_name' => NULL,
+  'last_comment_uid' => '3',
+  'comment_count' => '0',
+))
+->values(array(
+  'nid' => '4',
+  'last_comment_timestamp' => '1282936266',
+  'last_comment_name' => NULL,
+  'last_comment_uid' => '3',
+  'comment_count' => '0',
+))
+->values(array(
+  'nid' => '5',
+  'last_comment_timestamp' => '1282936266',
+  'last_comment_name' => NULL,
+  'last_comment_uid' => '3',
+  'comment_count' => '0',
+))
+->values(array(
+  'nid' => '6',
+  'last_comment_timestamp' => '1282936266',
+  'last_comment_name' => NULL,
+  'last_comment_uid' => '3',
+  'comment_count' => '0',
+))
+->values(array(
+  'nid' => '7',
+  'last_comment_timestamp' => '1282936266',
+  'last_comment_name' => NULL,
+  'last_comment_uid' => '3',
+  'comment_count' => '0',
+))
+->values(array(
+  'nid' => '8',
+  'last_comment_timestamp' => '1282936266',
+  'last_comment_name' => NULL,
+  'last_comment_uid' => '3',
+  'comment_count' => '0',
+))
+->values(array(
+  'nid' => '9',
+  'last_comment_timestamp' => '1282936266',
+  'last_comment_name' => NULL,
+  'last_comment_uid' => '4',
+  'comment_count' => '0',
+))
+->values(array(
+  'nid' => '10',
+  'last_comment_timestamp' => '1282936266',
+  'last_comment_name' => NULL,
+  'last_comment_uid' => '4',
+  'comment_count' => '0',
+))
+->values(array(
+  'nid' => '11',
+  'last_comment_timestamp' => '1282936267',
+  'last_comment_name' => NULL,
+  'last_comment_uid' => '4',
+  'comment_count' => '0',
+))
+->values(array(
+  'nid' => '12',
+  'last_comment_timestamp' => '1282936267',
+  'last_comment_name' => NULL,
+  'last_comment_uid' => '4',
+  'comment_count' => '0',
+))
+->values(array(
+  'nid' => '13',
+  'last_comment_timestamp' => '1282936267',
+  'last_comment_name' => NULL,
+  'last_comment_uid' => '4',
+  'comment_count' => '0',
+))
+->values(array(
+  'nid' => '14',
+  'last_comment_timestamp' => '1282936267',
+  'last_comment_name' => NULL,
+  'last_comment_uid' => '4',
+  'comment_count' => '0',
+))
+->values(array(
+  'nid' => '15',
+  'last_comment_timestamp' => '1282936267',
+  'last_comment_name' => NULL,
+  'last_comment_uid' => '4',
+  'comment_count' => '0',
+))
+->values(array(
+  'nid' => '16',
+  'last_comment_timestamp' => '1282936267',
+  'last_comment_name' => NULL,
+  'last_comment_uid' => '4',
+  'comment_count' => '0',
+))
+->values(array(
+  'nid' => '17',
+  'last_comment_timestamp' => '1282936267',
+  'last_comment_name' => NULL,
+  'last_comment_uid' => '5',
+  'comment_count' => '0',
+))
+->values(array(
+  'nid' => '18',
+  'last_comment_timestamp' => '1282936267',
+  'last_comment_name' => NULL,
+  'last_comment_uid' => '5',
+  'comment_count' => '0',
+))
+->values(array(
+  'nid' => '19',
+  'last_comment_timestamp' => '1282936267',
+  'last_comment_name' => NULL,
+  'last_comment_uid' => '5',
+  'comment_count' => '0',
+))
+->values(array(
+  'nid' => '20',
+  'last_comment_timestamp' => '1282936267',
+  'last_comment_name' => NULL,
+  'last_comment_uid' => '5',
+  'comment_count' => '0',
+))
+->values(array(
+  'nid' => '21',
+  'last_comment_timestamp' => '1282936267',
+  'last_comment_name' => NULL,
+  'last_comment_uid' => '5',
+  'comment_count' => '0',
+))
+->values(array(
+  'nid' => '22',
+  'last_comment_timestamp' => '1282936267',
+  'last_comment_name' => NULL,
+  'last_comment_uid' => '5',
+  'comment_count' => '0',
+))
+->values(array(
+  'nid' => '23',
+  'last_comment_timestamp' => '1282936267',
+  'last_comment_name' => NULL,
+  'last_comment_uid' => '5',
+  'comment_count' => '0',
+))
+->values(array(
+  'nid' => '24',
+  'last_comment_timestamp' => '1282936267',
+  'last_comment_name' => NULL,
+  'last_comment_uid' => '5',
+  'comment_count' => '0',
+))
+->values(array(
+  'nid' => '25',
+  'last_comment_timestamp' => '1282936268',
+  'last_comment_name' => NULL,
+  'last_comment_uid' => '3',
+  'comment_count' => '0',
+))
+->values(array(
+  'nid' => '26',
+  'last_comment_timestamp' => '1282936268',
+  'last_comment_name' => NULL,
+  'last_comment_uid' => '3',
+  'comment_count' => '0',
+))
+->values(array(
+  'nid' => '27',
+  'last_comment_timestamp' => '1282936268',
+  'last_comment_name' => NULL,
+  'last_comment_uid' => '3',
+  'comment_count' => '0',
+))
+->values(array(
+  'nid' => '28',
+  'last_comment_timestamp' => '1282936268',
+  'last_comment_name' => NULL,
+  'last_comment_uid' => '3',
+  'comment_count' => '0',
+))
+->values(array(
+  'nid' => '29',
+  'last_comment_timestamp' => '1282936268',
+  'last_comment_name' => NULL,
+  'last_comment_uid' => '4',
+  'comment_count' => '0',
+))
+->values(array(
+  'nid' => '30',
+  'last_comment_timestamp' => '1282936268',
+  'last_comment_name' => NULL,
+  'last_comment_uid' => '4',
+  'comment_count' => '0',
+))
+->values(array(
+  'nid' => '31',
+  'last_comment_timestamp' => '1282936268',
+  'last_comment_name' => NULL,
+  'last_comment_uid' => '4',
+  'comment_count' => '0',
+))
+->values(array(
+  'nid' => '32',
+  'last_comment_timestamp' => '1282936268',
+  'last_comment_name' => NULL,
+  'last_comment_uid' => '4',
+  'comment_count' => '0',
+))
+->values(array(
+  'nid' => '33',
+  'last_comment_timestamp' => '1282936268',
+  'last_comment_name' => NULL,
+  'last_comment_uid' => '5',
+  'comment_count' => '0',
+))
+->values(array(
+  'nid' => '34',
+  'last_comment_timestamp' => '1282936268',
+  'last_comment_name' => NULL,
+  'last_comment_uid' => '5',
+  'comment_count' => '0',
+))
+->values(array(
+  'nid' => '35',
+  'last_comment_timestamp' => '1282936268',
+  'last_comment_name' => NULL,
+  'last_comment_uid' => '5',
+  'comment_count' => '0',
+))
+->values(array(
+  'nid' => '36',
+  'last_comment_timestamp' => '1282936268',
+  'last_comment_name' => NULL,
+  'last_comment_uid' => '5',
+  'comment_count' => '0',
+))
+->values(array(
+  'nid' => '37',
+  'last_comment_timestamp' => '1279310615',
+  'last_comment_name' => NULL,
+  'last_comment_uid' => '6',
+  'comment_count' => '0',
+))
+->execute();
+
+db_create_table('node_counter', array(
+  'fields' => array(
+    'nid' => array(
+      'type' => 'int',
+      'not null' => TRUE,
+      'default' => 0,
+    ),
+    'totalcount' => array(
+      'type' => 'int',
+      'unsigned' => TRUE,
+      'not null' => TRUE,
+      'default' => 0,
+      'size' => 'big',
+    ),
+    'daycount' => array(
+      'type' => 'int',
+      'unsigned' => TRUE,
+      'not null' => TRUE,
+      'default' => 0,
+      'size' => 'medium',
+    ),
+    'timestamp' => array(
+      'type' => 'int',
+      'unsigned' => TRUE,
+      'not null' => TRUE,
+      'default' => 0,
+    ),
+  ),
+  'primary key' => array(
+    'nid',
+  ),
+  'module' => 'node',
+  'name' => 'node_counter',
+));
+
+db_create_table('node_revisions', array(
+  'fields' => array(
+    'nid' => array(
+      'type' => 'int',
+      'unsigned' => TRUE,
+      'not null' => TRUE,
+      'default' => 0,
+    ),
+    'vid' => array(
+      'type' => 'serial',
+      'unsigned' => TRUE,
+      'not null' => TRUE,
+    ),
+    'uid' => array(
+      'type' => 'int',
+      'not null' => TRUE,
+      'default' => 0,
+    ),
+    'title' => array(
+      'type' => 'varchar',
+      'length' => 255,
+      'not null' => TRUE,
+      'default' => '',
+    ),
+    'body' => array(
+      'type' => 'text',
+      'not null' => TRUE,
+      'size' => 'big',
+    ),
+    'teaser' => array(
+      'type' => 'text',
+      'not null' => TRUE,
+      'size' => 'big',
+    ),
+    'log' => array(
+      'type' => 'text',
+      'not null' => TRUE,
+      'size' => 'big',
+    ),
+    'timestamp' => array(
+      'type' => 'int',
+      'not null' => TRUE,
+      'default' => 0,
+    ),
+    'format' => array(
+      'type' => 'int',
+      'not null' => TRUE,
+      'default' => 0,
+    ),
+  ),
+  'indexes' => array(
+    'nid' => array(
+      'nid',
+    ),
+    'uid' => array(
+      'uid',
+    ),
+  ),
+  'primary key' => array(
+    'vid',
+  ),
+  'module' => 'node',
+  'name' => 'node_revisions',
+));
+db_insert('node_revisions')->fields(array(
+  'nid',
+  'vid',
+  'uid',
+  'title',
+  'body',
+  'teaser',
+  'log',
+  'timestamp',
+  'format',
+))
+->values(array(
+  'nid' => '1',
+  'vid' => '1',
+  'uid' => '3',
+  'title' => 'node title 1 rev 1 (i=0)',
+  'body' => 'node body (page) - 0node body (page) - 0node body (page) - 0node body (page) - 0node body (page) - 0node body (page) - 0node body (page) - 0node body (page) - 0node body (page) - 0node body (page) - 0node body (page) - 0node body (page) - 0node body (page) - 0node body (page) - 0node body (page) - 0node body (page) - 0node body (page) - 0node body (page) - 0node body (page) - 0node body (page) - 0node body (page) - 0node body (page) - 0node body (page) - 0node body (page) - 0node body (page) - 0node body (page) - 0node body (page) - 0node body (page) - 0node body (page) - 0node body (page) - 0node body (page) - 0node body (page) - 0node body (page) - 0node body (page) - 0node body (page) - 0node body (page) - 0node body (page) - 0node body (page) - 0node body (page) - 0node body (page) - 0node body (page) - 0node body (page) - 0node body (page) - 0node body (page) - 0node body (page) - 0node body (page) - 0node body (page) - 0node body (page) - 0node body (page) - 0node body (page) - 0node body (page) - 0node body (page) - 0node body (page) - 0node body (page) - 0node body (page) - 0node body (page) - 0node body (page) - 0node body (page) - 0node body (page) - 0node body (page) - 0node body (page) - 0node body (page) - 0node body (page) - 0node body (page) - 0node body (page) - 0node body (page) - 0node body (page) - 0node body (page) - 0node body (page) - 0node body (page) - 0node body (page) - 0node body (page) - 0node body (page) - 0node body (page) - 0node body (page) - 0node body (page) - 0node body (page) - 0node body (page) - 0node body (page) - 0node body (page) - 0node body (page) - 0node body (page) - 0node body (page) - 0node body (page) - 0node body (page) - 0node body (page) - 0node body (page) - 0node body (page) - 0node body (page) - 0node body (page) - 0node body (page) - 0node body (page) - 0node body (page) - 0node body (page) - 0node body (page) - 0node body (page) - 0node body (page) - 0node body (page) - 0node body (page) - 0node body (page) - 0',
+  'teaser' => 'node body (page) - 0node body (page) - 0node body (page) - 0node body (page) - 0node body (page) - 0node body (page) - 0node body (page) - 0node body (page) - 0node body (page) - 0node body (page) - 0node body (page) - 0node body (page) - 0node body (page) - 0node body (page) - 0node body (page) - 0node body (page) - 0node body (page) - 0node body (page) - 0node body (page) - 0node body (page) - 0node body (page) - 0node body (page) - 0node body (page) - 0node body (page) - 0node body (page) - 0node body (page) - 0node body (page) - 0node body (page) - 0node body (page) - 0node body (page) - 0',
+  'log' => 'added 0 node',
+  'timestamp' => '1282936266',
+  'format' => '0',
+))
+->values(array(
+  'nid' => '1',
+  'vid' => '2',
+  'uid' => '6',
+  'title' => 'node title 1 rev 1 (i=0) rev2 2',
+  'body' => 'node revision body (page) - 0node revision body (page) - 0node revision body (page) - 0node revision body (page) - 0node revision body (page) - 0node revision body (page) - 0node revision body (page) - 0node revision body (page) - 0node revision body (page) - 0node revision body (page) - 0node revision body (page) - 0node revision body (page) - 0node revision body (page) - 0node revision body (page) - 0node revision body (page) - 0node revision body (page) - 0node revision body (page) - 0node revision body (page) - 0node revision body (page) - 0node revision body (page) - 0node revision body (page) - 0node revision body (page) - 0node revision body (page) - 0node revision body (page) - 0node revision body (page) - 0node revision body (page) - 0node revision body (page) - 0node revision body (page) - 0node revision body (page) - 0node revision body (page) - 0node revision body (page) - 0node revision body (page) - 0node revision body (page) - 0node revision body (page) - 0node revision body (page) - 0node revision body (page) - 0node revision body (page) - 0node revision body (page) - 0node revision body (page) - 0node revision body (page) - 0node revision body (page) - 0node revision body (page) - 0node revision body (page) - 0node revision body (page) - 0node revision body (page) - 0node revision body (page) - 0node revision body (page) - 0node revision body (page) - 0node revision body (page) - 0node revision body (page) - 0node revision body (page) - 0node revision body (page) - 0node revision body (page) - 0node revision body (page) - 0node revision body (page) - 0node revision body (page) - 0node revision body (page) - 0node revision body (page) - 0node revision body (page) - 0node revision body (page) - 0node revision body (page) - 0node revision body (page) - 0node revision body (page) - 0node revision body (page) - 0node revision body (page) - 0node revision body (page) - 0node revision body (page) - 0node revision body (page) - 0node revision body (page) - 0node revision body (page) - 0node revision body (page) - 0node revision body (page) - 0node revision body (page) - 0node revision body (page) - 0node revision body (page) - 0node revision body (page) - 0node revision body (page) - 0node revision body (page) - 0node revision body (page) - 0node revision body (page) - 0node revision body (page) - 0node revision body (page) - 0node revision body (page) - 0node revision body (page) - 0node revision body (page) - 0node revision body (page) - 0node revision body (page) - 0node revision body (page) - 0node revision body (page) - 0node revision body (page) - 0node revision body (page) - 0node revision body (page) - 0node revision body (page) - 0node revision body (page) - 0node revision body (page) - 0node revision body (page) - 0node revision body (page) - 0node revision body (page) - 0node revision body (page) - 0node revision body (page) - 0',
+  'teaser' => 'node body (page) - 0node body (page) - 0node body (page) - 0node body (page) - 0node body (page) - 0node body (page) - 0node body (page) - 0node body (page) - 0node body (page) - 0node body (page) - 0node body (page) - 0node body (page) - 0node body (page) - 0node body (page) - 0node body (page) - 0node body (page) - 0node body (page) - 0node body (page) - 0node body (page) - 0node body (page) - 0node body (page) - 0node body (page) - 0node body (page) - 0node body (page) - 0node body (page) - 0node body (page) - 0node body (page) - 0node body (page) - 0node body (page) - 0node body (page) - 0',
+  'log' => 'added 0 revision',
+  'timestamp' => '1282936266',
+  'format' => '0',
+))
+->values(array(
+  'nid' => '2',
+  'vid' => '3',
+  'uid' => '3',
+  'title' => 'node title 2 rev 3 (i=1)',
+  'body' => 'node body (page) - 1node body (page) - 1node body (page) - 1node body (page) - 1node body (page) - 1node body (page) - 1node body (page) - 1node body (page) - 1node body (page) - 1node body (page) - 1node body (page) - 1node body (page) - 1node body (page) - 1node body (page) - 1node body (page) - 1node body (page) - 1node body (page) - 1node body (page) - 1node body (page) - 1node body (page) - 1node body (page) - 1node body (page) - 1node body (page) - 1node body (page) - 1node body (page) - 1node body (page) - 1node body (page) - 1node body (page) - 1node body (page) - 1node body (page) - 1node body (page) - 1node body (page) - 1node body (page) - 1node body (page) - 1node body (page) - 1node body (page) - 1node body (page) - 1node body (page) - 1node body (page) - 1node body (page) - 1node body (page) - 1node body (page) - 1node body (page) - 1node body (page) - 1node body (page) - 1node body (page) - 1node body (page) - 1node body (page) - 1node body (page) - 1node body (page) - 1node body (page) - 1node body (page) - 1node body (page) - 1node body (page) - 1node body (page) - 1node body (page) - 1node body (page) - 1node body (page) - 1node body (page) - 1node body (page) - 1node body (page) - 1node body (page) - 1node body (page) - 1node body (page) - 1node body (page) - 1node body (page) - 1node body (page) - 1node body (page) - 1node body (page) - 1node body (page) - 1node body (page) - 1node body (page) - 1node body (page) - 1node body (page) - 1node body (page) - 1node body (page) - 1node body (page) - 1node body (page) - 1node body (page) - 1node body (page) - 1node body (page) - 1node body (page) - 1node body (page) - 1node body (page) - 1node body (page) - 1node body (page) - 1node body (page) - 1node body (page) - 1node body (page) - 1node body (page) - 1node body (page) - 1node body (page) - 1node body (page) - 1node body (page) - 1node body (page) - 1node body (page) - 1node body (page) - 1node body (page) - 1node body (page) - 1node body (page) - 1',
+  'teaser' => 'node body (page) - 1node body (page) - 1node body (page) - 1node body (page) - 1node body (page) - 1node body (page) - 1node body (page) - 1node body (page) - 1node body (page) - 1node body (page) - 1node body (page) - 1node body (page) - 1node body (page) - 1node body (page) - 1node body (page) - 1node body (page) - 1node body (page) - 1node body (page) - 1node body (page) - 1node body (page) - 1node body (page) - 1node body (page) - 1node body (page) - 1node body (page) - 1node body (page) - 1node body (page) - 1node body (page) - 1node body (page) - 1node body (page) - 1node body (page) - 1',
+  'log' => 'added 1 node',
+  'timestamp' => '1282936266',
+  'format' => '0',
+))
+->values(array(
+  'nid' => '2',
+  'vid' => '4',
+  'uid' => '6',
+  'title' => 'node title 2 rev 3 (i=1) rev2 4',
+  'body' => 'node revision body (page) - 1node revision body (page) - 1node revision body (page) - 1node revision body (page) - 1node revision body (page) - 1node revision body (page) - 1node revision body (page) - 1node revision body (page) - 1node revision body (page) - 1node revision body (page) - 1node revision body (page) - 1node revision body (page) - 1node revision body (page) - 1node revision body (page) - 1node revision body (page) - 1node revision body (page) - 1node revision body (page) - 1node revision body (page) - 1node revision body (page) - 1node revision body (page) - 1node revision body (page) - 1node revision body (page) - 1node revision body (page) - 1node revision body (page) - 1node revision body (page) - 1node revision body (page) - 1node revision body (page) - 1node revision body (page) - 1node revision body (page) - 1node revision body (page) - 1node revision body (page) - 1node revision body (page) - 1node revision body (page) - 1node revision body (page) - 1node revision body (page) - 1node revision body (page) - 1node revision body (page) - 1node revision body (page) - 1node revision body (page) - 1node revision body (page) - 1node revision body (page) - 1node revision body (page) - 1node revision body (page) - 1node revision body (page) - 1node revision body (page) - 1node revision body (page) - 1node revision body (page) - 1node revision body (page) - 1node revision body (page) - 1node revision body (page) - 1node revision body (page) - 1node revision body (page) - 1node revision body (page) - 1node revision body (page) - 1node revision body (page) - 1node revision body (page) - 1node revision body (page) - 1node revision body (page) - 1node revision body (page) - 1node revision body (page) - 1node revision body (page) - 1node revision body (page) - 1node revision body (page) - 1node revision body (page) - 1node revision body (page) - 1node revision body (page) - 1node revision body (page) - 1node revision body (page) - 1node revision body (page) - 1node revision body (page) - 1node revision body (page) - 1node revision body (page) - 1node revision body (page) - 1node revision body (page) - 1node revision body (page) - 1node revision body (page) - 1node revision body (page) - 1node revision body (page) - 1node revision body (page) - 1node revision body (page) - 1node revision body (page) - 1node revision body (page) - 1node revision body (page) - 1node revision body (page) - 1node revision body (page) - 1node revision body (page) - 1node revision body (page) - 1node revision body (page) - 1node revision body (page) - 1node revision body (page) - 1node revision body (page) - 1node revision body (page) - 1node revision body (page) - 1node revision body (page) - 1node revision body (page) - 1node revision body (page) - 1node revision body (page) - 1node revision body (page) - 1node revision body (page) - 1node revision body (page) - 1',
+  'teaser' => 'node body (page) - 1node body (page) - 1node body (page) - 1node body (page) - 1node body (page) - 1node body (page) - 1node body (page) - 1node body (page) - 1node body (page) - 1node body (page) - 1node body (page) - 1node body (page) - 1node body (page) - 1node body (page) - 1node body (page) - 1node body (page) - 1node body (page) - 1node body (page) - 1node body (page) - 1node body (page) - 1node body (page) - 1node body (page) - 1node body (page) - 1node body (page) - 1node body (page) - 1node body (page) - 1node body (page) - 1node body (page) - 1node body (page) - 1node body (page) - 1',
+  'log' => 'added 1 revision',
+  'timestamp' => '1282936266',
+  'format' => '0',
+))
+->values(array(
+  'nid' => '3',
+  'vid' => '5',
+  'uid' => '3',
+  'title' => 'node title 3 rev 5 (i=2)',
+  'body' => 'node body (page) - 2node body (page) - 2node body (page) - 2node body (page) - 2node body (page) - 2node body (page) - 2node body (page) - 2node body (page) - 2node body (page) - 2node body (page) - 2node body (page) - 2node body (page) - 2node body (page) - 2node body (page) - 2node body (page) - 2node body (page) - 2node body (page) - 2node body (page) - 2node body (page) - 2node body (page) - 2node body (page) - 2node body (page) - 2node body (page) - 2node body (page) - 2node body (page) - 2node body (page) - 2node body (page) - 2node body (page) - 2node body (page) - 2node body (page) - 2node body (page) - 2node body (page) - 2node body (page) - 2node body (page) - 2node body (page) - 2node body (page) - 2node body (page) - 2node body (page) - 2node body (page) - 2node body (page) - 2node body (page) - 2node body (page) - 2node body (page) - 2node body (page) - 2node body (page) - 2node body (page) - 2node body (page) - 2node body (page) - 2node body (page) - 2node body (page) - 2node body (page) - 2node body (page) - 2node body (page) - 2node body (page) - 2node body (page) - 2node body (page) - 2node body (page) - 2node body (page) - 2node body (page) - 2node body (page) - 2node body (page) - 2node body (page) - 2node body (page) - 2node body (page) - 2node body (page) - 2node body (page) - 2node body (page) - 2node body (page) - 2node body (page) - 2node body (page) - 2node body (page) - 2node body (page) - 2node body (page) - 2node body (page) - 2node body (page) - 2node body (page) - 2node body (page) - 2node body (page) - 2node body (page) - 2node body (page) - 2node body (page) - 2node body (page) - 2node body (page) - 2node body (page) - 2node body (page) - 2node body (page) - 2node body (page) - 2node body (page) - 2node body (page) - 2node body (page) - 2node body (page) - 2node body (page) - 2node body (page) - 2node body (page) - 2node body (page) - 2node body (page) - 2node body (page) - 2node body (page) - 2node body (page) - 2node body (page) - 2',
+  'teaser' => 'node body (page) - 2node body (page) - 2node body (page) - 2node body (page) - 2node body (page) - 2node body (page) - 2node body (page) - 2node body (page) - 2node body (page) - 2node body (page) - 2node body (page) - 2node body (page) - 2node body (page) - 2node body (page) - 2node body (page) - 2node body (page) - 2node body (page) - 2node body (page) - 2node body (page) - 2node body (page) - 2node body (page) - 2node body (page) - 2node body (page) - 2node body (page) - 2node body (page) - 2node body (page) - 2node body (page) - 2node body (page) - 2node body (page) - 2node body (page) - 2',
+  'log' => 'added 2 node',
+  'timestamp' => '1282936266',
+  'format' => '0',
+))
+->values(array(
+  'nid' => '3',
+  'vid' => '6',
+  'uid' => '6',
+  'title' => 'node title 3 rev 5 (i=2) rev2 6',
+  'body' => 'node revision body (page) - 2node revision body (page) - 2node revision body (page) - 2node revision body (page) - 2node revision body (page) - 2node revision body (page) - 2node revision body (page) - 2node revision body (page) - 2node revision body (page) - 2node revision body (page) - 2node revision body (page) - 2node revision body (page) - 2node revision body (page) - 2node revision body (page) - 2node revision body (page) - 2node revision body (page) - 2node revision body (page) - 2node revision body (page) - 2node revision body (page) - 2node revision body (page) - 2node revision body (page) - 2node revision body (page) - 2node revision body (page) - 2node revision body (page) - 2node revision body (page) - 2node revision body (page) - 2node revision body (page) - 2node revision body (page) - 2node revision body (page) - 2node revision body (page) - 2node revision body (page) - 2node revision body (page) - 2node revision body (page) - 2node revision body (page) - 2node revision body (page) - 2node revision body (page) - 2node revision body (page) - 2node revision body (page) - 2node revision body (page) - 2node revision body (page) - 2node revision body (page) - 2node revision body (page) - 2node revision body (page) - 2node revision body (page) - 2node revision body (page) - 2node revision body (page) - 2node revision body (page) - 2node revision body (page) - 2node revision body (page) - 2node revision body (page) - 2node revision body (page) - 2node revision body (page) - 2node revision body (page) - 2node revision body (page) - 2node revision body (page) - 2node revision body (page) - 2node revision body (page) - 2node revision body (page) - 2node revision body (page) - 2node revision body (page) - 2node revision body (page) - 2node revision body (page) - 2node revision body (page) - 2node revision body (page) - 2node revision body (page) - 2node revision body (page) - 2node revision body (page) - 2node revision body (page) - 2node revision body (page) - 2node revision body (page) - 2node revision body (page) - 2node revision body (page) - 2node revision body (page) - 2node revision body (page) - 2node revision body (page) - 2node revision body (page) - 2node revision body (page) - 2node revision body (page) - 2node revision body (page) - 2node revision body (page) - 2node revision body (page) - 2node revision body (page) - 2node revision body (page) - 2node revision body (page) - 2node revision body (page) - 2node revision body (page) - 2node revision body (page) - 2node revision body (page) - 2node revision body (page) - 2node revision body (page) - 2node revision body (page) - 2node revision body (page) - 2node revision body (page) - 2node revision body (page) - 2node revision body (page) - 2node revision body (page) - 2node revision body (page) - 2node revision body (page) - 2node revision body (page) - 2node revision body (page) - 2',
+  'teaser' => 'node body (page) - 2node body (page) - 2node body (page) - 2node body (page) - 2node body (page) - 2node body (page) - 2node body (page) - 2node body (page) - 2node body (page) - 2node body (page) - 2node body (page) - 2node body (page) - 2node body (page) - 2node body (page) - 2node body (page) - 2node body (page) - 2node body (page) - 2node body (page) - 2node body (page) - 2node body (page) - 2node body (page) - 2node body (page) - 2node body (page) - 2node body (page) - 2node body (page) - 2node body (page) - 2node body (page) - 2node body (page) - 2node body (page) - 2node body (page) - 2',
+  'log' => 'added 2 revision',
+  'timestamp' => '1282936266',
+  'format' => '0',
+))
+->values(array(
+  'nid' => '4',
+  'vid' => '7',
+  'uid' => '3',
+  'title' => 'node title 4 rev 7 (i=3)',
+  'body' => 'node body (page) - 3node body (page) - 3node body (page) - 3node body (page) - 3node body (page) - 3node body (page) - 3node body (page) - 3node body (page) - 3node body (page) - 3node body (page) - 3node body (page) - 3node body (page) - 3node body (page) - 3node body (page) - 3node body (page) - 3node body (page) - 3node body (page) - 3node body (page) - 3node body (page) - 3node body (page) - 3node body (page) - 3node body (page) - 3node body (page) - 3node body (page) - 3node body (page) - 3node body (page) - 3node body (page) - 3node body (page) - 3node body (page) - 3node body (page) - 3node body (page) - 3node body (page) - 3node body (page) - 3node body (page) - 3node body (page) - 3node body (page) - 3node body (page) - 3node body (page) - 3node body (page) - 3node body (page) - 3node body (page) - 3node body (page) - 3node body (page) - 3node body (page) - 3node body (page) - 3node body (page) - 3node body (page) - 3node body (page) - 3node body (page) - 3node body (page) - 3node body (page) - 3node body (page) - 3node body (page) - 3node body (page) - 3node body (page) - 3node body (page) - 3node body (page) - 3node body (page) - 3node body (page) - 3node body (page) - 3node body (page) - 3node body (page) - 3node body (page) - 3node body (page) - 3node body (page) - 3node body (page) - 3node body (page) - 3node body (page) - 3node body (page) - 3node body (page) - 3node body (page) - 3node body (page) - 3node body (page) - 3node body (page) - 3node body (page) - 3node body (page) - 3node body (page) - 3node body (page) - 3node body (page) - 3node body (page) - 3node body (page) - 3node body (page) - 3node body (page) - 3node body (page) - 3node body (page) - 3node body (page) - 3node body (page) - 3node body (page) - 3node body (page) - 3node body (page) - 3node body (page) - 3node body (page) - 3node body (page) - 3node body (page) - 3node body (page) - 3node body (page) - 3node body (page) - 3node body (page) - 3node body (page) - 3node body (page) - 3',
+  'teaser' => 'node body (page) - 3node body (page) - 3node body (page) - 3node body (page) - 3node body (page) - 3node body (page) - 3node body (page) - 3node body (page) - 3node body (page) - 3node body (page) - 3node body (page) - 3node body (page) - 3node body (page) - 3node body (page) - 3node body (page) - 3node body (page) - 3node body (page) - 3node body (page) - 3node body (page) - 3node body (page) - 3node body (page) - 3node body (page) - 3node body (page) - 3node body (page) - 3node body (page) - 3node body (page) - 3node body (page) - 3node body (page) - 3node body (page) - 3node body (page) - 3',
+  'log' => 'added 3 node',
+  'timestamp' => '1282936266',
+  'format' => '0',
+))
+->values(array(
+  'nid' => '4',
+  'vid' => '8',
+  'uid' => '6',
+  'title' => 'node title 4 rev 7 (i=3) rev2 8',
+  'body' => 'node revision body (page) - 3node revision body (page) - 3node revision body (page) - 3node revision body (page) - 3node revision body (page) - 3node revision body (page) - 3node revision body (page) - 3node revision body (page) - 3node revision body (page) - 3node revision body (page) - 3node revision body (page) - 3node revision body (page) - 3node revision body (page) - 3node revision body (page) - 3node revision body (page) - 3node revision body (page) - 3node revision body (page) - 3node revision body (page) - 3node revision body (page) - 3node revision body (page) - 3node revision body (page) - 3node revision body (page) - 3node revision body (page) - 3node revision body (page) - 3node revision body (page) - 3node revision body (page) - 3node revision body (page) - 3node revision body (page) - 3node revision body (page) - 3node revision body (page) - 3node revision body (page) - 3node revision body (page) - 3node revision body (page) - 3node revision body (page) - 3node revision body (page) - 3node revision body (page) - 3node revision body (page) - 3node revision body (page) - 3node revision body (page) - 3node revision body (page) - 3node revision body (page) - 3node revision body (page) - 3node revision body (page) - 3node revision body (page) - 3node revision body (page) - 3node revision body (page) - 3node revision body (page) - 3node revision body (page) - 3node revision body (page) - 3node revision body (page) - 3node revision body (page) - 3node revision body (page) - 3node revision body (page) - 3node revision body (page) - 3node revision body (page) - 3node revision body (page) - 3node revision body (page) - 3node revision body (page) - 3node revision body (page) - 3node revision body (page) - 3node revision body (page) - 3node revision body (page) - 3node revision body (page) - 3node revision body (page) - 3node revision body (page) - 3node revision body (page) - 3node revision body (page) - 3node revision body (page) - 3node revision body (page) - 3node revision body (page) - 3node revision body (page) - 3node revision body (page) - 3node revision body (page) - 3node revision body (page) - 3node revision body (page) - 3node revision body (page) - 3node revision body (page) - 3node revision body (page) - 3node revision body (page) - 3node revision body (page) - 3node revision body (page) - 3node revision body (page) - 3node revision body (page) - 3node revision body (page) - 3node revision body (page) - 3node revision body (page) - 3node revision body (page) - 3node revision body (page) - 3node revision body (page) - 3node revision body (page) - 3node revision body (page) - 3node revision body (page) - 3node revision body (page) - 3node revision body (page) - 3node revision body (page) - 3node revision body (page) - 3node revision body (page) - 3node revision body (page) - 3node revision body (page) - 3node revision body (page) - 3',
+  'teaser' => 'node body (page) - 3node body (page) - 3node body (page) - 3node body (page) - 3node body (page) - 3node body (page) - 3node body (page) - 3node body (page) - 3node body (page) - 3node body (page) - 3node body (page) - 3node body (page) - 3node body (page) - 3node body (page) - 3node body (page) - 3node body (page) - 3node body (page) - 3node body (page) - 3node body (page) - 3node body (page) - 3node body (page) - 3node body (page) - 3node body (page) - 3node body (page) - 3node body (page) - 3node body (page) - 3node body (page) - 3node body (page) - 3node body (page) - 3node body (page) - 3',
+  'log' => 'added 3 revision',
+  'timestamp' => '1282936266',
+  'format' => '0',
+))
+->values(array(
+  'nid' => '5',
+  'vid' => '9',
+  'uid' => '3',
+  'title' => 'node title 5 rev 9 (i=4)',
+  'body' => 'node body (page) - 4node body (page) - 4node body (page) - 4node body (page) - 4node body (page) - 4node body (page) - 4node body (page) - 4node body (page) - 4node body (page) - 4node body (page) - 4node body (page) - 4node body (page) - 4node body (page) - 4node body (page) - 4node body (page) - 4node body (page) - 4node body (page) - 4node body (page) - 4node body (page) - 4node body (page) - 4node body (page) - 4node body (page) - 4node body (page) - 4node body (page) - 4node body (page) - 4node body (page) - 4node body (page) - 4node body (page) - 4node body (page) - 4node body (page) - 4node body (page) - 4node body (page) - 4node body (page) - 4node body (page) - 4node body (page) - 4node body (page) - 4node body (page) - 4node body (page) - 4node body (page) - 4node body (page) - 4node body (page) - 4node body (page) - 4node body (page) - 4node body (page) - 4node body (page) - 4node body (page) - 4node body (page) - 4node body (page) - 4node body (page) - 4node body (page) - 4node body (page) - 4node body (page) - 4node body (page) - 4node body (page) - 4node body (page) - 4node body (page) - 4node body (page) - 4node body (page) - 4node body (page) - 4node body (page) - 4node body (page) - 4node body (page) - 4node body (page) - 4node body (page) - 4node body (page) - 4node body (page) - 4node body (page) - 4node body (page) - 4node body (page) - 4node body (page) - 4node body (page) - 4node body (page) - 4node body (page) - 4node body (page) - 4node body (page) - 4node body (page) - 4node body (page) - 4node body (page) - 4node body (page) - 4node body (page) - 4node body (page) - 4node body (page) - 4node body (page) - 4node body (page) - 4node body (page) - 4node body (page) - 4node body (page) - 4node body (page) - 4node body (page) - 4node body (page) - 4node body (page) - 4node body (page) - 4node body (page) - 4node body (page) - 4node body (page) - 4node body (page) - 4node body (page) - 4node body (page) - 4node body (page) - 4node body (page) - 4',
+  'teaser' => 'node body (page) - 4node body (page) - 4node body (page) - 4node body (page) - 4node body (page) - 4node body (page) - 4node body (page) - 4node body (page) - 4node body (page) - 4node body (page) - 4node body (page) - 4node body (page) - 4node body (page) - 4node body (page) - 4node body (page) - 4node body (page) - 4node body (page) - 4node body (page) - 4node body (page) - 4node body (page) - 4node body (page) - 4node body (page) - 4node body (page) - 4node body (page) - 4node body (page) - 4node body (page) - 4node body (page) - 4node body (page) - 4node body (page) - 4node body (page) - 4',
+  'log' => 'added 4 node',
+  'timestamp' => '1282936266',
+  'format' => '0',
+))
+->values(array(
+  'nid' => '5',
+  'vid' => '10',
+  'uid' => '6',
+  'title' => 'node title 5 rev 9 (i=4) rev2 10',
+  'body' => 'node revision body (page) - 4node revision body (page) - 4node revision body (page) - 4node revision body (page) - 4node revision body (page) - 4node revision body (page) - 4node revision body (page) - 4node revision body (page) - 4node revision body (page) - 4node revision body (page) - 4node revision body (page) - 4node revision body (page) - 4node revision body (page) - 4node revision body (page) - 4node revision body (page) - 4node revision body (page) - 4node revision body (page) - 4node revision body (page) - 4node revision body (page) - 4node revision body (page) - 4node revision body (page) - 4node revision body (page) - 4node revision body (page) - 4node revision body (page) - 4node revision body (page) - 4node revision body (page) - 4node revision body (page) - 4node revision body (page) - 4node revision body (page) - 4node revision body (page) - 4node revision body (page) - 4node revision body (page) - 4node revision body (page) - 4node revision body (page) - 4node revision body (page) - 4node revision body (page) - 4node revision body (page) - 4node revision body (page) - 4node revision body (page) - 4node revision body (page) - 4node revision body (page) - 4node revision body (page) - 4node revision body (page) - 4node revision body (page) - 4node revision body (page) - 4node revision body (page) - 4node revision body (page) - 4node revision body (page) - 4node revision body (page) - 4node revision body (page) - 4node revision body (page) - 4node revision body (page) - 4node revision body (page) - 4node revision body (page) - 4node revision body (page) - 4node revision body (page) - 4node revision body (page) - 4node revision body (page) - 4node revision body (page) - 4node revision body (page) - 4node revision body (page) - 4node revision body (page) - 4node revision body (page) - 4node revision body (page) - 4node revision body (page) - 4node revision body (page) - 4node revision body (page) - 4node revision body (page) - 4node revision body (page) - 4node revision body (page) - 4node revision body (page) - 4node revision body (page) - 4node revision body (page) - 4node revision body (page) - 4node revision body (page) - 4node revision body (page) - 4node revision body (page) - 4node revision body (page) - 4node revision body (page) - 4node revision body (page) - 4node revision body (page) - 4node revision body (page) - 4node revision body (page) - 4node revision body (page) - 4node revision body (page) - 4node revision body (page) - 4node revision body (page) - 4node revision body (page) - 4node revision body (page) - 4node revision body (page) - 4node revision body (page) - 4node revision body (page) - 4node revision body (page) - 4node revision body (page) - 4node revision body (page) - 4node revision body (page) - 4node revision body (page) - 4node revision body (page) - 4node revision body (page) - 4node revision body (page) - 4',
+  'teaser' => 'node body (page) - 4node body (page) - 4node body (page) - 4node body (page) - 4node body (page) - 4node body (page) - 4node body (page) - 4node body (page) - 4node body (page) - 4node body (page) - 4node body (page) - 4node body (page) - 4node body (page) - 4node body (page) - 4node body (page) - 4node body (page) - 4node body (page) - 4node body (page) - 4node body (page) - 4node body (page) - 4node body (page) - 4node body (page) - 4node body (page) - 4node body (page) - 4node body (page) - 4node body (page) - 4node body (page) - 4node body (page) - 4node body (page) - 4node body (page) - 4',
+  'log' => 'added 4 revision',
+  'timestamp' => '1282936266',
+  'format' => '0',
+))
+->values(array(
+  'nid' => '6',
+  'vid' => '11',
+  'uid' => '3',
+  'title' => 'node title 6 rev 11 (i=5)',
+  'body' => 'node body (page) - 5node body (page) - 5node body (page) - 5node body (page) - 5node body (page) - 5node body (page) - 5node body (page) - 5node body (page) - 5node body (page) - 5node body (page) - 5node body (page) - 5node body (page) - 5node body (page) - 5node body (page) - 5node body (page) - 5node body (page) - 5node body (page) - 5node body (page) - 5node body (page) - 5node body (page) - 5node body (page) - 5node body (page) - 5node body (page) - 5node body (page) - 5node body (page) - 5node body (page) - 5node body (page) - 5node body (page) - 5node body (page) - 5node body (page) - 5node body (page) - 5node body (page) - 5node body (page) - 5node body (page) - 5node body (page) - 5node body (page) - 5node body (page) - 5node body (page) - 5node body (page) - 5node body (page) - 5node body (page) - 5node body (page) - 5node body (page) - 5node body (page) - 5node body (page) - 5node body (page) - 5node body (page) - 5node body (page) - 5node body (page) - 5node body (page) - 5node body (page) - 5node body (page) - 5node body (page) - 5node body (page) - 5node body (page) - 5node body (page) - 5node body (page) - 5node body (page) - 5node body (page) - 5node body (page) - 5node body (page) - 5node body (page) - 5node body (page) - 5node body (page) - 5node body (page) - 5node body (page) - 5node body (page) - 5node body (page) - 5node body (page) - 5node body (page) - 5node body (page) - 5node body (page) - 5node body (page) - 5node body (page) - 5node body (page) - 5node body (page) - 5node body (page) - 5node body (page) - 5node body (page) - 5node body (page) - 5node body (page) - 5node body (page) - 5node body (page) - 5node body (page) - 5node body (page) - 5node body (page) - 5node body (page) - 5node body (page) - 5node body (page) - 5node body (page) - 5node body (page) - 5node body (page) - 5node body (page) - 5node body (page) - 5node body (page) - 5node body (page) - 5node body (page) - 5node body (page) - 5node body (page) - 5node body (page) - 5',
+  'teaser' => 'node body (page) - 5node body (page) - 5node body (page) - 5node body (page) - 5node body (page) - 5node body (page) - 5node body (page) - 5node body (page) - 5node body (page) - 5node body (page) - 5node body (page) - 5node body (page) - 5node body (page) - 5node body (page) - 5node body (page) - 5node body (page) - 5node body (page) - 5node body (page) - 5node body (page) - 5node body (page) - 5node body (page) - 5node body (page) - 5node body (page) - 5node body (page) - 5node body (page) - 5node body (page) - 5node body (page) - 5node body (page) - 5node body (page) - 5node body (page) - 5',
+  'log' => 'added 5 node',
+  'timestamp' => '1282936266',
+  'format' => '0',
+))
+->values(array(
+  'nid' => '6',
+  'vid' => '12',
+  'uid' => '6',
+  'title' => 'node title 6 rev 11 (i=5) rev2 12',
+  'body' => 'node revision body (page) - 5node revision body (page) - 5node revision body (page) - 5node revision body (page) - 5node revision body (page) - 5node revision body (page) - 5node revision body (page) - 5node revision body (page) - 5node revision body (page) - 5node revision body (page) - 5node revision body (page) - 5node revision body (page) - 5node revision body (page) - 5node revision body (page) - 5node revision body (page) - 5node revision body (page) - 5node revision body (page) - 5node revision body (page) - 5node revision body (page) - 5node revision body (page) - 5node revision body (page) - 5node revision body (page) - 5node revision body (page) - 5node revision body (page) - 5node revision body (page) - 5node revision body (page) - 5node revision body (page) - 5node revision body (page) - 5node revision body (page) - 5node revision body (page) - 5node revision body (page) - 5node revision body (page) - 5node revision body (page) - 5node revision body (page) - 5node revision body (page) - 5node revision body (page) - 5node revision body (page) - 5node revision body (page) - 5node revision body (page) - 5node revision body (page) - 5node revision body (page) - 5node revision body (page) - 5node revision body (page) - 5node revision body (page) - 5node revision body (page) - 5node revision body (page) - 5node revision body (page) - 5node revision body (page) - 5node revision body (page) - 5node revision body (page) - 5node revision body (page) - 5node revision body (page) - 5node revision body (page) - 5node revision body (page) - 5node revision body (page) - 5node revision body (page) - 5node revision body (page) - 5node revision body (page) - 5node revision body (page) - 5node revision body (page) - 5node revision body (page) - 5node revision body (page) - 5node revision body (page) - 5node revision body (page) - 5node revision body (page) - 5node revision body (page) - 5node revision body (page) - 5node revision body (page) - 5node revision body (page) - 5node revision body (page) - 5node revision body (page) - 5node revision body (page) - 5node revision body (page) - 5node revision body (page) - 5node revision body (page) - 5node revision body (page) - 5node revision body (page) - 5node revision body (page) - 5node revision body (page) - 5node revision body (page) - 5node revision body (page) - 5node revision body (page) - 5node revision body (page) - 5node revision body (page) - 5node revision body (page) - 5node revision body (page) - 5node revision body (page) - 5node revision body (page) - 5node revision body (page) - 5node revision body (page) - 5node revision body (page) - 5node revision body (page) - 5node revision body (page) - 5node revision body (page) - 5node revision body (page) - 5node revision body (page) - 5node revision body (page) - 5node revision body (page) - 5node revision body (page) - 5node revision body (page) - 5',
+  'teaser' => 'node body (page) - 5node body (page) - 5node body (page) - 5node body (page) - 5node body (page) - 5node body (page) - 5node body (page) - 5node body (page) - 5node body (page) - 5node body (page) - 5node body (page) - 5node body (page) - 5node body (page) - 5node body (page) - 5node body (page) - 5node body (page) - 5node body (page) - 5node body (page) - 5node body (page) - 5node body (page) - 5node body (page) - 5node body (page) - 5node body (page) - 5node body (page) - 5node body (page) - 5node body (page) - 5node body (page) - 5node body (page) - 5node body (page) - 5node body (page) - 5',
+  'log' => 'added 5 revision',
+  'timestamp' => '1282936266',
+  'format' => '0',
+))
+->values(array(
+  'nid' => '7',
+  'vid' => '13',
+  'uid' => '3',
+  'title' => 'node title 7 rev 13 (i=6)',
+  'body' => 'node body (page) - 6node body (page) - 6node body (page) - 6node body (page) - 6node body (page) - 6node body (page) - 6node body (page) - 6node body (page) - 6node body (page) - 6node body (page) - 6node body (page) - 6node body (page) - 6node body (page) - 6node body (page) - 6node body (page) - 6node body (page) - 6node body (page) - 6node body (page) - 6node body (page) - 6node body (page) - 6node body (page) - 6node body (page) - 6node body (page) - 6node body (page) - 6node body (page) - 6node body (page) - 6node body (page) - 6node body (page) - 6node body (page) - 6node body (page) - 6node body (page) - 6node body (page) - 6node body (page) - 6node body (page) - 6node body (page) - 6node body (page) - 6node body (page) - 6node body (page) - 6node body (page) - 6node body (page) - 6node body (page) - 6node body (page) - 6node body (page) - 6node body (page) - 6node body (page) - 6node body (page) - 6node body (page) - 6node body (page) - 6node body (page) - 6node body (page) - 6node body (page) - 6node body (page) - 6node body (page) - 6node body (page) - 6node body (page) - 6node body (page) - 6node body (page) - 6node body (page) - 6node body (page) - 6node body (page) - 6node body (page) - 6node body (page) - 6node body (page) - 6node body (page) - 6node body (page) - 6node body (page) - 6node body (page) - 6node body (page) - 6node body (page) - 6node body (page) - 6node body (page) - 6node body (page) - 6node body (page) - 6node body (page) - 6node body (page) - 6node body (page) - 6node body (page) - 6node body (page) - 6node body (page) - 6node body (page) - 6node body (page) - 6node body (page) - 6node body (page) - 6node body (page) - 6node body (page) - 6node body (page) - 6node body (page) - 6node body (page) - 6node body (page) - 6node body (page) - 6node body (page) - 6node body (page) - 6node body (page) - 6node body (page) - 6node body (page) - 6node body (page) - 6node body (page) - 6node body (page) - 6node body (page) - 6node body (page) - 6',
+  'teaser' => 'node body (page) - 6node body (page) - 6node body (page) - 6node body (page) - 6node body (page) - 6node body (page) - 6node body (page) - 6node body (page) - 6node body (page) - 6node body (page) - 6node body (page) - 6node body (page) - 6node body (page) - 6node body (page) - 6node body (page) - 6node body (page) - 6node body (page) - 6node body (page) - 6node body (page) - 6node body (page) - 6node body (page) - 6node body (page) - 6node body (page) - 6node body (page) - 6node body (page) - 6node body (page) - 6node body (page) - 6node body (page) - 6node body (page) - 6node body (page) - 6',
+  'log' => 'added 6 node',
+  'timestamp' => '1282936266',
+  'format' => '0',
+))
+->values(array(
+  'nid' => '7',
+  'vid' => '14',
+  'uid' => '6',
+  'title' => 'node title 7 rev 13 (i=6) rev2 14',
+  'body' => 'node revision body (page) - 6node revision body (page) - 6node revision body (page) - 6node revision body (page) - 6node revision body (page) - 6node revision body (page) - 6node revision body (page) - 6node revision body (page) - 6node revision body (page) - 6node revision body (page) - 6node revision body (page) - 6node revision body (page) - 6node revision body (page) - 6node revision body (page) - 6node revision body (page) - 6node revision body (page) - 6node revision body (page) - 6node revision body (page) - 6node revision body (page) - 6node revision body (page) - 6node revision body (page) - 6node revision body (page) - 6node revision body (page) - 6node revision body (page) - 6node revision body (page) - 6node revision body (page) - 6node revision body (page) - 6node revision body (page) - 6node revision body (page) - 6node revision body (page) - 6node revision body (page) - 6node revision body (page) - 6node revision body (page) - 6node revision body (page) - 6node revision body (page) - 6node revision body (page) - 6node revision body (page) - 6node revision body (page) - 6node revision body (page) - 6node revision body (page) - 6node revision body (page) - 6node revision body (page) - 6node revision body (page) - 6node revision body (page) - 6node revision body (page) - 6node revision body (page) - 6node revision body (page) - 6node revision body (page) - 6node revision body (page) - 6node revision body (page) - 6node revision body (page) - 6node revision body (page) - 6node revision body (page) - 6node revision body (page) - 6node revision body (page) - 6node revision body (page) - 6node revision body (page) - 6node revision body (page) - 6node revision body (page) - 6node revision body (page) - 6node revision body (page) - 6node revision body (page) - 6node revision body (page) - 6node revision body (page) - 6node revision body (page) - 6node revision body (page) - 6node revision body (page) - 6node revision body (page) - 6node revision body (page) - 6node revision body (page) - 6node revision body (page) - 6node revision body (page) - 6node revision body (page) - 6node revision body (page) - 6node revision body (page) - 6node revision body (page) - 6node revision body (page) - 6node revision body (page) - 6node revision body (page) - 6node revision body (page) - 6node revision body (page) - 6node revision body (page) - 6node revision body (page) - 6node revision body (page) - 6node revision body (page) - 6node revision body (page) - 6node revision body (page) - 6node revision body (page) - 6node revision body (page) - 6node revision body (page) - 6node revision body (page) - 6node revision body (page) - 6node revision body (page) - 6node revision body (page) - 6node revision body (page) - 6node revision body (page) - 6node revision body (page) - 6node revision body (page) - 6node revision body (page) - 6node revision body (page) - 6',
+  'teaser' => 'node body (page) - 6node body (page) - 6node body (page) - 6node body (page) - 6node body (page) - 6node body (page) - 6node body (page) - 6node body (page) - 6node body (page) - 6node body (page) - 6node body (page) - 6node body (page) - 6node body (page) - 6node body (page) - 6node body (page) - 6node body (page) - 6node body (page) - 6node body (page) - 6node body (page) - 6node body (page) - 6node body (page) - 6node body (page) - 6node body (page) - 6node body (page) - 6node body (page) - 6node body (page) - 6node body (page) - 6node body (page) - 6node body (page) - 6node body (page) - 6',
+  'log' => 'added 6 revision',
+  'timestamp' => '1282936266',
+  'format' => '0',
+))
+->values(array(
+  'nid' => '8',
+  'vid' => '15',
+  'uid' => '3',
+  'title' => 'node title 8 rev 15 (i=7)',
+  'body' => 'node body (page) - 7node body (page) - 7node body (page) - 7node body (page) - 7node body (page) - 7node body (page) - 7node body (page) - 7node body (page) - 7node body (page) - 7node body (page) - 7node body (page) - 7node body (page) - 7node body (page) - 7node body (page) - 7node body (page) - 7node body (page) - 7node body (page) - 7node body (page) - 7node body (page) - 7node body (page) - 7node body (page) - 7node body (page) - 7node body (page) - 7node body (page) - 7node body (page) - 7node body (page) - 7node body (page) - 7node body (page) - 7node body (page) - 7node body (page) - 7node body (page) - 7node body (page) - 7node body (page) - 7node body (page) - 7node body (page) - 7node body (page) - 7node body (page) - 7node body (page) - 7node body (page) - 7node body (page) - 7node body (page) - 7node body (page) - 7node body (page) - 7node body (page) - 7node body (page) - 7node body (page) - 7node body (page) - 7node body (page) - 7node body (page) - 7node body (page) - 7node body (page) - 7node body (page) - 7node body (page) - 7node body (page) - 7node body (page) - 7node body (page) - 7node body (page) - 7node body (page) - 7node body (page) - 7node body (page) - 7node body (page) - 7node body (page) - 7node body (page) - 7node body (page) - 7node body (page) - 7node body (page) - 7node body (page) - 7node body (page) - 7node body (page) - 7node body (page) - 7node body (page) - 7node body (page) - 7node body (page) - 7node body (page) - 7node body (page) - 7node body (page) - 7node body (page) - 7node body (page) - 7node body (page) - 7node body (page) - 7node body (page) - 7node body (page) - 7node body (page) - 7node body (page) - 7node body (page) - 7node body (page) - 7node body (page) - 7node body (page) - 7node body (page) - 7node body (page) - 7node body (page) - 7node body (page) - 7node body (page) - 7node body (page) - 7node body (page) - 7node body (page) - 7node body (page) - 7node body (page) - 7node body (page) - 7node body (page) - 7',
+  'teaser' => 'node body (page) - 7node body (page) - 7node body (page) - 7node body (page) - 7node body (page) - 7node body (page) - 7node body (page) - 7node body (page) - 7node body (page) - 7node body (page) - 7node body (page) - 7node body (page) - 7node body (page) - 7node body (page) - 7node body (page) - 7node body (page) - 7node body (page) - 7node body (page) - 7node body (page) - 7node body (page) - 7node body (page) - 7node body (page) - 7node body (page) - 7node body (page) - 7node body (page) - 7node body (page) - 7node body (page) - 7node body (page) - 7node body (page) - 7node body (page) - 7',
+  'log' => 'added 7 node',
+  'timestamp' => '1282936266',
+  'format' => '0',
+))
+->values(array(
+  'nid' => '8',
+  'vid' => '16',
+  'uid' => '6',
+  'title' => 'node title 8 rev 15 (i=7) rev2 16',
+  'body' => 'node revision body (page) - 7node revision body (page) - 7node revision body (page) - 7node revision body (page) - 7node revision body (page) - 7node revision body (page) - 7node revision body (page) - 7node revision body (page) - 7node revision body (page) - 7node revision body (page) - 7node revision body (page) - 7node revision body (page) - 7node revision body (page) - 7node revision body (page) - 7node revision body (page) - 7node revision body (page) - 7node revision body (page) - 7node revision body (page) - 7node revision body (page) - 7node revision body (page) - 7node revision body (page) - 7node revision body (page) - 7node revision body (page) - 7node revision body (page) - 7node revision body (page) - 7node revision body (page) - 7node revision body (page) - 7node revision body (page) - 7node revision body (page) - 7node revision body (page) - 7node revision body (page) - 7node revision body (page) - 7node revision body (page) - 7node revision body (page) - 7node revision body (page) - 7node revision body (page) - 7node revision body (page) - 7node revision body (page) - 7node revision body (page) - 7node revision body (page) - 7node revision body (page) - 7node revision body (page) - 7node revision body (page) - 7node revision body (page) - 7node revision body (page) - 7node revision body (page) - 7node revision body (page) - 7node revision body (page) - 7node revision body (page) - 7node revision body (page) - 7node revision body (page) - 7node revision body (page) - 7node revision body (page) - 7node revision body (page) - 7node revision body (page) - 7node revision body (page) - 7node revision body (page) - 7node revision body (page) - 7node revision body (page) - 7node revision body (page) - 7node revision body (page) - 7node revision body (page) - 7node revision body (page) - 7node revision body (page) - 7node revision body (page) - 7node revision body (page) - 7node revision body (page) - 7node revision body (page) - 7node revision body (page) - 7node revision body (page) - 7node revision body (page) - 7node revision body (page) - 7node revision body (page) - 7node revision body (page) - 7node revision body (page) - 7node revision body (page) - 7node revision body (page) - 7node revision body (page) - 7node revision body (page) - 7node revision body (page) - 7node revision body (page) - 7node revision body (page) - 7node revision body (page) - 7node revision body (page) - 7node revision body (page) - 7node revision body (page) - 7node revision body (page) - 7node revision body (page) - 7node revision body (page) - 7node revision body (page) - 7node revision body (page) - 7node revision body (page) - 7node revision body (page) - 7node revision body (page) - 7node revision body (page) - 7node revision body (page) - 7node revision body (page) - 7node revision body (page) - 7node revision body (page) - 7node revision body (page) - 7',
+  'teaser' => 'node body (page) - 7node body (page) - 7node body (page) - 7node body (page) - 7node body (page) - 7node body (page) - 7node body (page) - 7node body (page) - 7node body (page) - 7node body (page) - 7node body (page) - 7node body (page) - 7node body (page) - 7node body (page) - 7node body (page) - 7node body (page) - 7node body (page) - 7node body (page) - 7node body (page) - 7node body (page) - 7node body (page) - 7node body (page) - 7node body (page) - 7node body (page) - 7node body (page) - 7node body (page) - 7node body (page) - 7node body (page) - 7node body (page) - 7node body (page) - 7',
+  'log' => 'added 7 revision',
+  'timestamp' => '1282936266',
+  'format' => '0',
+))
+->values(array(
+  'nid' => '9',
+  'vid' => '17',
+  'uid' => '4',
+  'title' => 'node title 9 rev 17 (i=8)',
+  'body' => 'node body (page) - 8node body (page) - 8node body (page) - 8node body (page) - 8node body (page) - 8node body (page) - 8node body (page) - 8node body (page) - 8node body (page) - 8node body (page) - 8node body (page) - 8node body (page) - 8node body (page) - 8node body (page) - 8node body (page) - 8node body (page) - 8node body (page) - 8node body (page) - 8node body (page) - 8node body (page) - 8node body (page) - 8node body (page) - 8node body (page) - 8node body (page) - 8node body (page) - 8node body (page) - 8node body (page) - 8node body (page) - 8node body (page) - 8node body (page) - 8node body (page) - 8node body (page) - 8node body (page) - 8node body (page) - 8node body (page) - 8node body (page) - 8node body (page) - 8node body (page) - 8node body (page) - 8node body (page) - 8node body (page) - 8node body (page) - 8node body (page) - 8node body (page) - 8node body (page) - 8node body (page) - 8node body (page) - 8node body (page) - 8node body (page) - 8node body (page) - 8node body (page) - 8node body (page) - 8node body (page) - 8node body (page) - 8node body (page) - 8node body (page) - 8node body (page) - 8node body (page) - 8node body (page) - 8node body (page) - 8node body (page) - 8node body (page) - 8node body (page) - 8node body (page) - 8node body (page) - 8node body (page) - 8node body (page) - 8node body (page) - 8node body (page) - 8node body (page) - 8node body (page) - 8node body (page) - 8node body (page) - 8node body (page) - 8node body (page) - 8node body (page) - 8node body (page) - 8node body (page) - 8node body (page) - 8node body (page) - 8node body (page) - 8node body (page) - 8node body (page) - 8node body (page) - 8node body (page) - 8node body (page) - 8node body (page) - 8node body (page) - 8node body (page) - 8node body (page) - 8node body (page) - 8node body (page) - 8node body (page) - 8node body (page) - 8node body (page) - 8node body (page) - 8node body (page) - 8node body (page) - 8node body (page) - 8node body (page) - 8',
+  'teaser' => 'node body (page) - 8node body (page) - 8node body (page) - 8node body (page) - 8node body (page) - 8node body (page) - 8node body (page) - 8node body (page) - 8node body (page) - 8node body (page) - 8node body (page) - 8node body (page) - 8node body (page) - 8node body (page) - 8node body (page) - 8node body (page) - 8node body (page) - 8node body (page) - 8node body (page) - 8node body (page) - 8node body (page) - 8node body (page) - 8node body (page) - 8node body (page) - 8node body (page) - 8node body (page) - 8node body (page) - 8node body (page) - 8node body (page) - 8node body (page) - 8',
+  'log' => 'added 8 node',
+  'timestamp' => '1282936266',
+  'format' => '0',
+))
+->values(array(
+  'nid' => '9',
+  'vid' => '18',
+  'uid' => '7',
+  'title' => 'node title 9 rev 17 (i=8) rev2 18',
+  'body' => 'node revision body (page) - 8node revision body (page) - 8node revision body (page) - 8node revision body (page) - 8node revision body (page) - 8node revision body (page) - 8node revision body (page) - 8node revision body (page) - 8node revision body (page) - 8node revision body (page) - 8node revision body (page) - 8node revision body (page) - 8node revision body (page) - 8node revision body (page) - 8node revision body (page) - 8node revision body (page) - 8node revision body (page) - 8node revision body (page) - 8node revision body (page) - 8node revision body (page) - 8node revision body (page) - 8node revision body (page) - 8node revision body (page) - 8node revision body (page) - 8node revision body (page) - 8node revision body (page) - 8node revision body (page) - 8node revision body (page) - 8node revision body (page) - 8node revision body (page) - 8node revision body (page) - 8node revision body (page) - 8node revision body (page) - 8node revision body (page) - 8node revision body (page) - 8node revision body (page) - 8node revision body (page) - 8node revision body (page) - 8node revision body (page) - 8node revision body (page) - 8node revision body (page) - 8node revision body (page) - 8node revision body (page) - 8node revision body (page) - 8node revision body (page) - 8node revision body (page) - 8node revision body (page) - 8node revision body (page) - 8node revision body (page) - 8node revision body (page) - 8node revision body (page) - 8node revision body (page) - 8node revision body (page) - 8node revision body (page) - 8node revision body (page) - 8node revision body (page) - 8node revision body (page) - 8node revision body (page) - 8node revision body (page) - 8node revision body (page) - 8node revision body (page) - 8node revision body (page) - 8node revision body (page) - 8node revision body (page) - 8node revision body (page) - 8node revision body (page) - 8node revision body (page) - 8node revision body (page) - 8node revision body (page) - 8node revision body (page) - 8node revision body (page) - 8node revision body (page) - 8node revision body (page) - 8node revision body (page) - 8node revision body (page) - 8node revision body (page) - 8node revision body (page) - 8node revision body (page) - 8node revision body (page) - 8node revision body (page) - 8node revision body (page) - 8node revision body (page) - 8node revision body (page) - 8node revision body (page) - 8node revision body (page) - 8node revision body (page) - 8node revision body (page) - 8node revision body (page) - 8node revision body (page) - 8node revision body (page) - 8node revision body (page) - 8node revision body (page) - 8node revision body (page) - 8node revision body (page) - 8node revision body (page) - 8node revision body (page) - 8node revision body (page) - 8node revision body (page) - 8node revision body (page) - 8node revision body (page) - 8',
+  'teaser' => 'node body (page) - 8node body (page) - 8node body (page) - 8node body (page) - 8node body (page) - 8node body (page) - 8node body (page) - 8node body (page) - 8node body (page) - 8node body (page) - 8node body (page) - 8node body (page) - 8node body (page) - 8node body (page) - 8node body (page) - 8node body (page) - 8node body (page) - 8node body (page) - 8node body (page) - 8node body (page) - 8node body (page) - 8node body (page) - 8node body (page) - 8node body (page) - 8node body (page) - 8node body (page) - 8node body (page) - 8node body (page) - 8node body (page) - 8node body (page) - 8',
+  'log' => 'added 8 revision',
+  'timestamp' => '1282936266',
+  'format' => '0',
+))
+->values(array(
+  'nid' => '10',
+  'vid' => '19',
+  'uid' => '4',
+  'title' => 'node title 10 rev 19 (i=9)',
+  'body' => 'node body (page) - 9node body (page) - 9node body (page) - 9node body (page) - 9node body (page) - 9node body (page) - 9node body (page) - 9node body (page) - 9node body (page) - 9node body (page) - 9node body (page) - 9node body (page) - 9node body (page) - 9node body (page) - 9node body (page) - 9node body (page) - 9node body (page) - 9node body (page) - 9node body (page) - 9node body (page) - 9node body (page) - 9node body (page) - 9node body (page) - 9node body (page) - 9node body (page) - 9node body (page) - 9node body (page) - 9node body (page) - 9node body (page) - 9node body (page) - 9node body (page) - 9node body (page) - 9node body (page) - 9node body (page) - 9node body (page) - 9node body (page) - 9node body (page) - 9node body (page) - 9node body (page) - 9node body (page) - 9node body (page) - 9node body (page) - 9node body (page) - 9node body (page) - 9node body (page) - 9node body (page) - 9node body (page) - 9node body (page) - 9node body (page) - 9node body (page) - 9node body (page) - 9node body (page) - 9node body (page) - 9node body (page) - 9node body (page) - 9node body (page) - 9node body (page) - 9node body (page) - 9node body (page) - 9node body (page) - 9node body (page) - 9node body (page) - 9node body (page) - 9node body (page) - 9node body (page) - 9node body (page) - 9node body (page) - 9node body (page) - 9node body (page) - 9node body (page) - 9node body (page) - 9node body (page) - 9node body (page) - 9node body (page) - 9node body (page) - 9node body (page) - 9node body (page) - 9node body (page) - 9node body (page) - 9node body (page) - 9node body (page) - 9node body (page) - 9node body (page) - 9node body (page) - 9node body (page) - 9node body (page) - 9node body (page) - 9node body (page) - 9node body (page) - 9node body (page) - 9node body (page) - 9node body (page) - 9node body (page) - 9node body (page) - 9node body (page) - 9node body (page) - 9node body (page) - 9node body (page) - 9node body (page) - 9node body (page) - 9',
+  'teaser' => 'node body (page) - 9node body (page) - 9node body (page) - 9node body (page) - 9node body (page) - 9node body (page) - 9node body (page) - 9node body (page) - 9node body (page) - 9node body (page) - 9node body (page) - 9node body (page) - 9node body (page) - 9node body (page) - 9node body (page) - 9node body (page) - 9node body (page) - 9node body (page) - 9node body (page) - 9node body (page) - 9node body (page) - 9node body (page) - 9node body (page) - 9node body (page) - 9node body (page) - 9node body (page) - 9node body (page) - 9node body (page) - 9node body (page) - 9node body (page) - 9',
+  'log' => 'added 9 node',
+  'timestamp' => '1282936266',
+  'format' => '0',
+))
+->values(array(
+  'nid' => '10',
+  'vid' => '20',
+  'uid' => '7',
+  'title' => 'node title 10 rev 19 (i=9) rev2 20',
+  'body' => 'node revision body (page) - 9node revision body (page) - 9node revision body (page) - 9node revision body (page) - 9node revision body (page) - 9node revision body (page) - 9node revision body (page) - 9node revision body (page) - 9node revision body (page) - 9node revision body (page) - 9node revision body (page) - 9node revision body (page) - 9node revision body (page) - 9node revision body (page) - 9node revision body (page) - 9node revision body (page) - 9node revision body (page) - 9node revision body (page) - 9node revision body (page) - 9node revision body (page) - 9node revision body (page) - 9node revision body (page) - 9node revision body (page) - 9node revision body (page) - 9node revision body (page) - 9node revision body (page) - 9node revision body (page) - 9node revision body (page) - 9node revision body (page) - 9node revision body (page) - 9node revision body (page) - 9node revision body (page) - 9node revision body (page) - 9node revision body (page) - 9node revision body (page) - 9node revision body (page) - 9node revision body (page) - 9node revision body (page) - 9node revision body (page) - 9node revision body (page) - 9node revision body (page) - 9node revision body (page) - 9node revision body (page) - 9node revision body (page) - 9node revision body (page) - 9node revision body (page) - 9node revision body (page) - 9node revision body (page) - 9node revision body (page) - 9node revision body (page) - 9node revision body (page) - 9node revision body (page) - 9node revision body (page) - 9node revision body (page) - 9node revision body (page) - 9node revision body (page) - 9node revision body (page) - 9node revision body (page) - 9node revision body (page) - 9node revision body (page) - 9node revision body (page) - 9node revision body (page) - 9node revision body (page) - 9node revision body (page) - 9node revision body (page) - 9node revision body (page) - 9node revision body (page) - 9node revision body (page) - 9node revision body (page) - 9node revision body (page) - 9node revision body (page) - 9node revision body (page) - 9node revision body (page) - 9node revision body (page) - 9node revision body (page) - 9node revision body (page) - 9node revision body (page) - 9node revision body (page) - 9node revision body (page) - 9node revision body (page) - 9node revision body (page) - 9node revision body (page) - 9node revision body (page) - 9node revision body (page) - 9node revision body (page) - 9node revision body (page) - 9node revision body (page) - 9node revision body (page) - 9node revision body (page) - 9node revision body (page) - 9node revision body (page) - 9node revision body (page) - 9node revision body (page) - 9node revision body (page) - 9node revision body (page) - 9node revision body (page) - 9node revision body (page) - 9node revision body (page) - 9node revision body (page) - 9node revision body (page) - 9',
+  'teaser' => 'node body (page) - 9node body (page) - 9node body (page) - 9node body (page) - 9node body (page) - 9node body (page) - 9node body (page) - 9node body (page) - 9node body (page) - 9node body (page) - 9node body (page) - 9node body (page) - 9node body (page) - 9node body (page) - 9node body (page) - 9node body (page) - 9node body (page) - 9node body (page) - 9node body (page) - 9node body (page) - 9node body (page) - 9node body (page) - 9node body (page) - 9node body (page) - 9node body (page) - 9node body (page) - 9node body (page) - 9node body (page) - 9node body (page) - 9node body (page) - 9',
+  'log' => 'added 9 revision',
+  'timestamp' => '1282936266',
+  'format' => '0',
+))
+->values(array(
+  'nid' => '11',
+  'vid' => '21',
+  'uid' => '4',
+  'title' => 'node title 11 rev 21 (i=10)',
+  'body' => 'node body (page) - 10node body (page) - 10node body (page) - 10node body (page) - 10node body (page) - 10node body (page) - 10node body (page) - 10node body (page) - 10node body (page) - 10node body (page) - 10node body (page) - 10node body (page) - 10node body (page) - 10node body (page) - 10node body (page) - 10node body (page) - 10node body (page) - 10node body (page) - 10node body (page) - 10node body (page) - 10node body (page) - 10node body (page) - 10node body (page) - 10node body (page) - 10node body (page) - 10node body (page) - 10node body (page) - 10node body (page) - 10node body (page) - 10node body (page) - 10node body (page) - 10node body (page) - 10node body (page) - 10node body (page) - 10node body (page) - 10node body (page) - 10node body (page) - 10node body (page) - 10node body (page) - 10node body (page) - 10node body (page) - 10node body (page) - 10node body (page) - 10node body (page) - 10node body (page) - 10node body (page) - 10node body (page) - 10node body (page) - 10node body (page) - 10node body (page) - 10node body (page) - 10node body (page) - 10node body (page) - 10node body (page) - 10node body (page) - 10node body (page) - 10node body (page) - 10node body (page) - 10node body (page) - 10node body (page) - 10node body (page) - 10node body (page) - 10node body (page) - 10node body (page) - 10node body (page) - 10node body (page) - 10node body (page) - 10node body (page) - 10node body (page) - 10node body (page) - 10node body (page) - 10node body (page) - 10node body (page) - 10node body (page) - 10node body (page) - 10node body (page) - 10node body (page) - 10node body (page) - 10node body (page) - 10node body (page) - 10node body (page) - 10node body (page) - 10node body (page) - 10node body (page) - 10node body (page) - 10node body (page) - 10node body (page) - 10node body (page) - 10node body (page) - 10node body (page) - 10node body (page) - 10node body (page) - 10node body (page) - 10node body (page) - 10node body (page) - 10node body (page) - 10node body (page) - 10node body (page) - 10node body (page) - 10node body (page) - 10',
+  'teaser' => 'node body (page) - 10node body (page) - 10node body (page) - 10node body (page) - 10node body (page) - 10node body (page) - 10node body (page) - 10node body (page) - 10node body (page) - 10node body (page) - 10node body (page) - 10node body (page) - 10node body (page) - 10node body (page) - 10node body (page) - 10node body (page) - 10node body (page) - 10node body (page) - 10node body (page) - 10node body (page) - 10node body (page) - 10node body (page) - 10node body (page) - 10node body (page) - 10node body (page) - 10node body (page) - 10node body (page) - 10node body (page) - 10node body (p',
+  'log' => 'added 10 node',
+  'timestamp' => '1282936267',
+  'format' => '0',
+))
+->values(array(
+  'nid' => '11',
+  'vid' => '22',
+  'uid' => '7',
+  'title' => 'node title 11 rev 21 (i=10) rev2 22',
+  'body' => 'node revision body (page) - 10node revision body (page) - 10node revision body (page) - 10node revision body (page) - 10node revision body (page) - 10node revision body (page) - 10node revision body (page) - 10node revision body (page) - 10node revision body (page) - 10node revision body (page) - 10node revision body (page) - 10node revision body (page) - 10node revision body (page) - 10node revision body (page) - 10node revision body (page) - 10node revision body (page) - 10node revision body (page) - 10node revision body (page) - 10node revision body (page) - 10node revision body (page) - 10node revision body (page) - 10node revision body (page) - 10node revision body (page) - 10node revision body (page) - 10node revision body (page) - 10node revision body (page) - 10node revision body (page) - 10node revision body (page) - 10node revision body (page) - 10node revision body (page) - 10node revision body (page) - 10node revision body (page) - 10node revision body (page) - 10node revision body (page) - 10node revision body (page) - 10node revision body (page) - 10node revision body (page) - 10node revision body (page) - 10node revision body (page) - 10node revision body (page) - 10node revision body (page) - 10node revision body (page) - 10node revision body (page) - 10node revision body (page) - 10node revision body (page) - 10node revision body (page) - 10node revision body (page) - 10node revision body (page) - 10node revision body (page) - 10node revision body (page) - 10node revision body (page) - 10node revision body (page) - 10node revision body (page) - 10node revision body (page) - 10node revision body (page) - 10node revision body (page) - 10node revision body (page) - 10node revision body (page) - 10node revision body (page) - 10node revision body (page) - 10node revision body (page) - 10node revision body (page) - 10node revision body (page) - 10node revision body (page) - 10node revision body (page) - 10node revision body (page) - 10node revision body (page) - 10node revision body (page) - 10node revision body (page) - 10node revision body (page) - 10node revision body (page) - 10node revision body (page) - 10node revision body (page) - 10node revision body (page) - 10node revision body (page) - 10node revision body (page) - 10node revision body (page) - 10node revision body (page) - 10node revision body (page) - 10node revision body (page) - 10node revision body (page) - 10node revision body (page) - 10node revision body (page) - 10node revision body (page) - 10node revision body (page) - 10node revision body (page) - 10node revision body (page) - 10node revision body (page) - 10node revision body (page) - 10node revision body (page) - 10node revision body (page) - 10node revision body (page) - 10node revision body (page) - 10node revision body (page) - 10node revision body (page) - 10node revision body (page) - 10node revision body (page) - 10node revision body (page) - 10node revision body (page) - 10node revision body (page) - 10',
+  'teaser' => 'node body (page) - 10node body (page) - 10node body (page) - 10node body (page) - 10node body (page) - 10node body (page) - 10node body (page) - 10node body (page) - 10node body (page) - 10node body (page) - 10node body (page) - 10node body (page) - 10node body (page) - 10node body (page) - 10node body (page) - 10node body (page) - 10node body (page) - 10node body (page) - 10node body (page) - 10node body (page) - 10node body (page) - 10node body (page) - 10node body (page) - 10node body (page) - 10node body (page) - 10node body (page) - 10node body (page) - 10node body (page) - 10node body (p',
+  'log' => 'added 10 revision',
+  'timestamp' => '1282936267',
+  'format' => '0',
+))
+->values(array(
+  'nid' => '12',
+  'vid' => '23',
+  'uid' => '4',
+  'title' => 'node title 12 rev 23 (i=11)',
+  'body' => 'node body (page) - 11node body (page) - 11node body (page) - 11node body (page) - 11node body (page) - 11node body (page) - 11node body (page) - 11node body (page) - 11node body (page) - 11node body (page) - 11node body (page) - 11node body (page) - 11node body (page) - 11node body (page) - 11node body (page) - 11node body (page) - 11node body (page) - 11node body (page) - 11node body (page) - 11node body (page) - 11node body (page) - 11node body (page) - 11node body (page) - 11node body (page) - 11node body (page) - 11node body (page) - 11node body (page) - 11node body (page) - 11node body (page) - 11node body (page) - 11node body (page) - 11node body (page) - 11node body (page) - 11node body (page) - 11node body (page) - 11node body (page) - 11node body (page) - 11node body (page) - 11node body (page) - 11node body (page) - 11node body (page) - 11node body (page) - 11node body (page) - 11node body (page) - 11node body (page) - 11node body (page) - 11node body (page) - 11node body (page) - 11node body (page) - 11node body (page) - 11node body (page) - 11node body (page) - 11node body (page) - 11node body (page) - 11node body (page) - 11node body (page) - 11node body (page) - 11node body (page) - 11node body (page) - 11node body (page) - 11node body (page) - 11node body (page) - 11node body (page) - 11node body (page) - 11node body (page) - 11node body (page) - 11node body (page) - 11node body (page) - 11node body (page) - 11node body (page) - 11node body (page) - 11node body (page) - 11node body (page) - 11node body (page) - 11node body (page) - 11node body (page) - 11node body (page) - 11node body (page) - 11node body (page) - 11node body (page) - 11node body (page) - 11node body (page) - 11node body (page) - 11node body (page) - 11node body (page) - 11node body (page) - 11node body (page) - 11node body (page) - 11node body (page) - 11node body (page) - 11node body (page) - 11node body (page) - 11node body (page) - 11node body (page) - 11node body (page) - 11node body (page) - 11node body (page) - 11node body (page) - 11node body (page) - 11node body (page) - 11',
+  'teaser' => 'node body (page) - 11node body (page) - 11node body (page) - 11node body (page) - 11node body (page) - 11node body (page) - 11node body (page) - 11node body (page) - 11node body (page) - 11node body (page) - 11node body (page) - 11node body (page) - 11node body (page) - 11node body (page) - 11node body (page) - 11node body (page) - 11node body (page) - 11node body (page) - 11node body (page) - 11node body (page) - 11node body (page) - 11node body (page) - 11node body (page) - 11node body (page) - 11node body (page) - 11node body (page) - 11node body (page) - 11node body (page) - 11node body (p',
+  'log' => 'added 11 node',
+  'timestamp' => '1282936267',
+  'format' => '0',
+))
+->values(array(
+  'nid' => '12',
+  'vid' => '24',
+  'uid' => '7',
+  'title' => 'node title 12 rev 23 (i=11) rev2 24',
+  'body' => 'node revision body (page) - 11node revision body (page) - 11node revision body (page) - 11node revision body (page) - 11node revision body (page) - 11node revision body (page) - 11node revision body (page) - 11node revision body (page) - 11node revision body (page) - 11node revision body (page) - 11node revision body (page) - 11node revision body (page) - 11node revision body (page) - 11node revision body (page) - 11node revision body (page) - 11node revision body (page) - 11node revision body (page) - 11node revision body (page) - 11node revision body (page) - 11node revision body (page) - 11node revision body (page) - 11node revision body (page) - 11node revision body (page) - 11node revision body (page) - 11node revision body (page) - 11node revision body (page) - 11node revision body (page) - 11node revision body (page) - 11node revision body (page) - 11node revision body (page) - 11node revision body (page) - 11node revision body (page) - 11node revision body (page) - 11node revision body (page) - 11node revision body (page) - 11node revision body (page) - 11node revision body (page) - 11node revision body (page) - 11node revision body (page) - 11node revision body (page) - 11node revision body (page) - 11node revision body (page) - 11node revision body (page) - 11node revision body (page) - 11node revision body (page) - 11node revision body (page) - 11node revision body (page) - 11node revision body (page) - 11node revision body (page) - 11node revision body (page) - 11node revision body (page) - 11node revision body (page) - 11node revision body (page) - 11node revision body (page) - 11node revision body (page) - 11node revision body (page) - 11node revision body (page) - 11node revision body (page) - 11node revision body (page) - 11node revision body (page) - 11node revision body (page) - 11node revision body (page) - 11node revision body (page) - 11node revision body (page) - 11node revision body (page) - 11node revision body (page) - 11node revision body (page) - 11node revision body (page) - 11node revision body (page) - 11node revision body (page) - 11node revision body (page) - 11node revision body (page) - 11node revision body (page) - 11node revision body (page) - 11node revision body (page) - 11node revision body (page) - 11node revision body (page) - 11node revision body (page) - 11node revision body (page) - 11node revision body (page) - 11node revision body (page) - 11node revision body (page) - 11node revision body (page) - 11node revision body (page) - 11node revision body (page) - 11node revision body (page) - 11node revision body (page) - 11node revision body (page) - 11node revision body (page) - 11node revision body (page) - 11node revision body (page) - 11node revision body (page) - 11node revision body (page) - 11node revision body (page) - 11node revision body (page) - 11node revision body (page) - 11node revision body (page) - 11node revision body (page) - 11node revision body (page) - 11node revision body (page) - 11',
+  'teaser' => 'node body (page) - 11node body (page) - 11node body (page) - 11node body (page) - 11node body (page) - 11node body (page) - 11node body (page) - 11node body (page) - 11node body (page) - 11node body (page) - 11node body (page) - 11node body (page) - 11node body (page) - 11node body (page) - 11node body (page) - 11node body (page) - 11node body (page) - 11node body (page) - 11node body (page) - 11node body (page) - 11node body (page) - 11node body (page) - 11node body (page) - 11node body (page) - 11node body (page) - 11node body (page) - 11node body (page) - 11node body (page) - 11node body (p',
+  'log' => 'added 11 revision',
+  'timestamp' => '1282936267',
+  'format' => '0',
+))
+->values(array(
+  'nid' => '13',
+  'vid' => '25',
+  'uid' => '4',
+  'title' => 'node title 13 rev 25 (i=12)',
+  'body' => 'node body (story) - 12node body (story) - 12node body (story) - 12node body (story) - 12node body (story) - 12node body (story) - 12node body (story) - 12node body (story) - 12node body (story) - 12node body (story) - 12node body (story) - 12node body (story) - 12node body (story) - 12node body (story) - 12node body (story) - 12node body (story) - 12node body (story) - 12node body (story) - 12node body (story) - 12node body (story) - 12node body (story) - 12node body (story) - 12node body (story) - 12node body (story) - 12node body (story) - 12node body (story) - 12node body (story) - 12node body (story) - 12node body (story) - 12node body (story) - 12node body (story) - 12node body (story) - 12node body (story) - 12node body (story) - 12node body (story) - 12node body (story) - 12node body (story) - 12node body (story) - 12node body (story) - 12node body (story) - 12node body (story) - 12node body (story) - 12node body (story) - 12node body (story) - 12node body (story) - 12node body (story) - 12node body (story) - 12node body (story) - 12node body (story) - 12node body (story) - 12node body (story) - 12node body (story) - 12node body (story) - 12node body (story) - 12node body (story) - 12node body (story) - 12node body (story) - 12node body (story) - 12node body (story) - 12node body (story) - 12node body (story) - 12node body (story) - 12node body (story) - 12node body (story) - 12node body (story) - 12node body (story) - 12node body (story) - 12node body (story) - 12node body (story) - 12node body (story) - 12node body (story) - 12node body (story) - 12node body (story) - 12node body (story) - 12node body (story) - 12node body (story) - 12node body (story) - 12node body (story) - 12node body (story) - 12node body (story) - 12node body (story) - 12node body (story) - 12node body (story) - 12node body (story) - 12node body (story) - 12node body (story) - 12node body (story) - 12node body (story) - 12node body (story) - 12node body (story) - 12node body (story) - 12node body (story) - 12node body (story) - 12node body (story) - 12node body (story) - 12node body (story) - 12node body (story) - 12node body (story) - 12node body (story) - 12node body (story) - 12',
+  'teaser' => 'node body (story) - 12node body (story) - 12node body (story) - 12node body (story) - 12node body (story) - 12node body (story) - 12node body (story) - 12node body (story) - 12node body (story) - 12node body (story) - 12node body (story) - 12node body (story) - 12node body (story) - 12node body (story) - 12node body (story) - 12node body (story) - 12node body (story) - 12node body (story) - 12node body (story) - 12node body (story) - 12node body (story) - 12node body (story) - 12node body (story) - 12node body (story) - 12node body (story) - 12node body (story) - 12node body (story) - 12node b',
+  'log' => 'added 12 node',
+  'timestamp' => '1282936267',
+  'format' => '0',
+))
+->values(array(
+  'nid' => '14',
+  'vid' => '26',
+  'uid' => '4',
+  'title' => 'node title 14 rev 26 (i=13)',
+  'body' => 'node body (story) - 13node body (story) - 13node body (story) - 13node body (story) - 13node body (story) - 13node body (story) - 13node body (story) - 13node body (story) - 13node body (story) - 13node body (story) - 13node body (story) - 13node body (story) - 13node body (story) - 13node body (story) - 13node body (story) - 13node body (story) - 13node body (story) - 13node body (story) - 13node body (story) - 13node body (story) - 13node body (story) - 13node body (story) - 13node body (story) - 13node body (story) - 13node body (story) - 13node body (story) - 13node body (story) - 13node body (story) - 13node body (story) - 13node body (story) - 13node body (story) - 13node body (story) - 13node body (story) - 13node body (story) - 13node body (story) - 13node body (story) - 13node body (story) - 13node body (story) - 13node body (story) - 13node body (story) - 13node body (story) - 13node body (story) - 13node body (story) - 13node body (story) - 13node body (story) - 13node body (story) - 13node body (story) - 13node body (story) - 13node body (story) - 13node body (story) - 13node body (story) - 13node body (story) - 13node body (story) - 13node body (story) - 13node body (story) - 13node body (story) - 13node body (story) - 13node body (story) - 13node body (story) - 13node body (story) - 13node body (story) - 13node body (story) - 13node body (story) - 13node body (story) - 13node body (story) - 13node body (story) - 13node body (story) - 13node body (story) - 13node body (story) - 13node body (story) - 13node body (story) - 13node body (story) - 13node body (story) - 13node body (story) - 13node body (story) - 13node body (story) - 13node body (story) - 13node body (story) - 13node body (story) - 13node body (story) - 13node body (story) - 13node body (story) - 13node body (story) - 13node body (story) - 13node body (story) - 13node body (story) - 13node body (story) - 13node body (story) - 13node body (story) - 13node body (story) - 13node body (story) - 13node body (story) - 13node body (story) - 13node body (story) - 13node body (story) - 13node body (story) - 13node body (story) - 13node body (story) - 13node body (story) - 13node body (story) - 13',
+  'teaser' => 'node body (story) - 13node body (story) - 13node body (story) - 13node body (story) - 13node body (story) - 13node body (story) - 13node body (story) - 13node body (story) - 13node body (story) - 13node body (story) - 13node body (story) - 13node body (story) - 13node body (story) - 13node body (story) - 13node body (story) - 13node body (story) - 13node body (story) - 13node body (story) - 13node body (story) - 13node body (story) - 13node body (story) - 13node body (story) - 13node body (story) - 13node body (story) - 13node body (story) - 13node body (story) - 13node body (story) - 13node b',
+  'log' => 'added 13 node',
+  'timestamp' => '1282936267',
+  'format' => '0',
+))
+->values(array(
+  'nid' => '15',
+  'vid' => '27',
+  'uid' => '4',
+  'title' => 'node title 15 rev 27 (i=14)',
+  'body' => 'node body (story) - 14node body (story) - 14node body (story) - 14node body (story) - 14node body (story) - 14node body (story) - 14node body (story) - 14node body (story) - 14node body (story) - 14node body (story) - 14node body (story) - 14node body (story) - 14node body (story) - 14node body (story) - 14node body (story) - 14node body (story) - 14node body (story) - 14node body (story) - 14node body (story) - 14node body (story) - 14node body (story) - 14node body (story) - 14node body (story) - 14node body (story) - 14node body (story) - 14node body (story) - 14node body (story) - 14node body (story) - 14node body (story) - 14node body (story) - 14node body (story) - 14node body (story) - 14node body (story) - 14node body (story) - 14node body (story) - 14node body (story) - 14node body (story) - 14node body (story) - 14node body (story) - 14node body (story) - 14node body (story) - 14node body (story) - 14node body (story) - 14node body (story) - 14node body (story) - 14node body (story) - 14node body (story) - 14node body (story) - 14node body (story) - 14node body (story) - 14node body (story) - 14node body (story) - 14node body (story) - 14node body (story) - 14node body (story) - 14node body (story) - 14node body (story) - 14node body (story) - 14node body (story) - 14node body (story) - 14node body (story) - 14node body (story) - 14node body (story) - 14node body (story) - 14node body (story) - 14node body (story) - 14node body (story) - 14node body (story) - 14node body (story) - 14node body (story) - 14node body (story) - 14node body (story) - 14node body (story) - 14node body (story) - 14node body (story) - 14node body (story) - 14node body (story) - 14node body (story) - 14node body (story) - 14node body (story) - 14node body (story) - 14node body (story) - 14node body (story) - 14node body (story) - 14node body (story) - 14node body (story) - 14node body (story) - 14node body (story) - 14node body (story) - 14node body (story) - 14node body (story) - 14node body (story) - 14node body (story) - 14node body (story) - 14node body (story) - 14node body (story) - 14node body (story) - 14node body (story) - 14node body (story) - 14node body (story) - 14',
+  'teaser' => 'node body (story) - 14node body (story) - 14node body (story) - 14node body (story) - 14node body (story) - 14node body (story) - 14node body (story) - 14node body (story) - 14node body (story) - 14node body (story) - 14node body (story) - 14node body (story) - 14node body (story) - 14node body (story) - 14node body (story) - 14node body (story) - 14node body (story) - 14node body (story) - 14node body (story) - 14node body (story) - 14node body (story) - 14node body (story) - 14node body (story) - 14node body (story) - 14node body (story) - 14node body (story) - 14node body (story) - 14node b',
+  'log' => 'added 14 node',
+  'timestamp' => '1282936267',
+  'format' => '0',
+))
+->values(array(
+  'nid' => '16',
+  'vid' => '28',
+  'uid' => '4',
+  'title' => 'node title 16 rev 28 (i=15)',
+  'body' => 'node body (story) - 15node body (story) - 15node body (story) - 15node body (story) - 15node body (story) - 15node body (story) - 15node body (story) - 15node body (story) - 15node body (story) - 15node body (story) - 15node body (story) - 15node body (story) - 15node body (story) - 15node body (story) - 15node body (story) - 15node body (story) - 15node body (story) - 15node body (story) - 15node body (story) - 15node body (story) - 15node body (story) - 15node body (story) - 15node body (story) - 15node body (story) - 15node body (story) - 15node body (story) - 15node body (story) - 15node body (story) - 15node body (story) - 15node body (story) - 15node body (story) - 15node body (story) - 15node body (story) - 15node body (story) - 15node body (story) - 15node body (story) - 15node body (story) - 15node body (story) - 15node body (story) - 15node body (story) - 15node body (story) - 15node body (story) - 15node body (story) - 15node body (story) - 15node body (story) - 15node body (story) - 15node body (story) - 15node body (story) - 15node body (story) - 15node body (story) - 15node body (story) - 15node body (story) - 15node body (story) - 15node body (story) - 15node body (story) - 15node body (story) - 15node body (story) - 15node body (story) - 15node body (story) - 15node body (story) - 15node body (story) - 15node body (story) - 15node body (story) - 15node body (story) - 15node body (story) - 15node body (story) - 15node body (story) - 15node body (story) - 15node body (story) - 15node body (story) - 15node body (story) - 15node body (story) - 15node body (story) - 15node body (story) - 15node body (story) - 15node body (story) - 15node body (story) - 15node body (story) - 15node body (story) - 15node body (story) - 15node body (story) - 15node body (story) - 15node body (story) - 15node body (story) - 15node body (story) - 15node body (story) - 15node body (story) - 15node body (story) - 15node body (story) - 15node body (story) - 15node body (story) - 15node body (story) - 15node body (story) - 15node body (story) - 15node body (story) - 15node body (story) - 15node body (story) - 15node body (story) - 15node body (story) - 15node body (story) - 15',
+  'teaser' => 'node body (story) - 15node body (story) - 15node body (story) - 15node body (story) - 15node body (story) - 15node body (story) - 15node body (story) - 15node body (story) - 15node body (story) - 15node body (story) - 15node body (story) - 15node body (story) - 15node body (story) - 15node body (story) - 15node body (story) - 15node body (story) - 15node body (story) - 15node body (story) - 15node body (story) - 15node body (story) - 15node body (story) - 15node body (story) - 15node body (story) - 15node body (story) - 15node body (story) - 15node body (story) - 15node body (story) - 15node b',
+  'log' => 'added 15 node',
+  'timestamp' => '1282936267',
+  'format' => '0',
+))
+->values(array(
+  'nid' => '17',
+  'vid' => '29',
+  'uid' => '5',
+  'title' => 'node title 17 rev 29 (i=16)',
+  'body' => 'node body (story) - 16node body (story) - 16node body (story) - 16node body (story) - 16node body (story) - 16node body (story) - 16node body (story) - 16node body (story) - 16node body (story) - 16node body (story) - 16node body (story) - 16node body (story) - 16node body (story) - 16node body (story) - 16node body (story) - 16node body (story) - 16node body (story) - 16node body (story) - 16node body (story) - 16node body (story) - 16node body (story) - 16node body (story) - 16node body (story) - 16node body (story) - 16node body (story) - 16node body (story) - 16node body (story) - 16node body (story) - 16node body (story) - 16node body (story) - 16node body (story) - 16node body (story) - 16node body (story) - 16node body (story) - 16node body (story) - 16node body (story) - 16node body (story) - 16node body (story) - 16node body (story) - 16node body (story) - 16node body (story) - 16node body (story) - 16node body (story) - 16node body (story) - 16node body (story) - 16node body (story) - 16node body (story) - 16node body (story) - 16node body (story) - 16node body (story) - 16node body (story) - 16node body (story) - 16node body (story) - 16node body (story) - 16node body (story) - 16node body (story) - 16node body (story) - 16node body (story) - 16node body (story) - 16node body (story) - 16node body (story) - 16node body (story) - 16node body (story) - 16node body (story) - 16node body (story) - 16node body (story) - 16node body (story) - 16node body (story) - 16node body (story) - 16node body (story) - 16node body (story) - 16node body (story) - 16node body (story) - 16node body (story) - 16node body (story) - 16node body (story) - 16node body (story) - 16node body (story) - 16node body (story) - 16node body (story) - 16node body (story) - 16node body (story) - 16node body (story) - 16node body (story) - 16node body (story) - 16node body (story) - 16node body (story) - 16node body (story) - 16node body (story) - 16node body (story) - 16node body (story) - 16node body (story) - 16node body (story) - 16node body (story) - 16node body (story) - 16node body (story) - 16node body (story) - 16node body (story) - 16node body (story) - 16node body (story) - 16',
+  'teaser' => 'node body (story) - 16node body (story) - 16node body (story) - 16node body (story) - 16node body (story) - 16node body (story) - 16node body (story) - 16node body (story) - 16node body (story) - 16node body (story) - 16node body (story) - 16node body (story) - 16node body (story) - 16node body (story) - 16node body (story) - 16node body (story) - 16node body (story) - 16node body (story) - 16node body (story) - 16node body (story) - 16node body (story) - 16node body (story) - 16node body (story) - 16node body (story) - 16node body (story) - 16node body (story) - 16node body (story) - 16node b',
+  'log' => 'added 16 node',
+  'timestamp' => '1282936267',
+  'format' => '0',
+))
+->values(array(
+  'nid' => '18',
+  'vid' => '30',
+  'uid' => '5',
+  'title' => 'node title 18 rev 30 (i=17)',
+  'body' => 'node body (story) - 17node body (story) - 17node body (story) - 17node body (story) - 17node body (story) - 17node body (story) - 17node body (story) - 17node body (story) - 17node body (story) - 17node body (story) - 17node body (story) - 17node body (story) - 17node body (story) - 17node body (story) - 17node body (story) - 17node body (story) - 17node body (story) - 17node body (story) - 17node body (story) - 17node body (story) - 17node body (story) - 17node body (story) - 17node body (story) - 17node body (story) - 17node body (story) - 17node body (story) - 17node body (story) - 17node body (story) - 17node body (story) - 17node body (story) - 17node body (story) - 17node body (story) - 17node body (story) - 17node body (story) - 17node body (story) - 17node body (story) - 17node body (story) - 17node body (story) - 17node body (story) - 17node body (story) - 17node body (story) - 17node body (story) - 17node body (story) - 17node body (story) - 17node body (story) - 17node body (story) - 17node body (story) - 17node body (story) - 17node body (story) - 17node body (story) - 17node body (story) - 17node body (story) - 17node body (story) - 17node body (story) - 17node body (story) - 17node body (story) - 17node body (story) - 17node body (story) - 17node body (story) - 17node body (story) - 17node body (story) - 17node body (story) - 17node body (story) - 17node body (story) - 17node body (story) - 17node body (story) - 17node body (story) - 17node body (story) - 17node body (story) - 17node body (story) - 17node body (story) - 17node body (story) - 17node body (story) - 17node body (story) - 17node body (story) - 17node body (story) - 17node body (story) - 17node body (story) - 17node body (story) - 17node body (story) - 17node body (story) - 17node body (story) - 17node body (story) - 17node body (story) - 17node body (story) - 17node body (story) - 17node body (story) - 17node body (story) - 17node body (story) - 17node body (story) - 17node body (story) - 17node body (story) - 17node body (story) - 17node body (story) - 17node body (story) - 17node body (story) - 17node body (story) - 17node body (story) - 17node body (story) - 17node body (story) - 17',
+  'teaser' => 'node body (story) - 17node body (story) - 17node body (story) - 17node body (story) - 17node body (story) - 17node body (story) - 17node body (story) - 17node body (story) - 17node body (story) - 17node body (story) - 17node body (story) - 17node body (story) - 17node body (story) - 17node body (story) - 17node body (story) - 17node body (story) - 17node body (story) - 17node body (story) - 17node body (story) - 17node body (story) - 17node body (story) - 17node body (story) - 17node body (story) - 17node body (story) - 17node body (story) - 17node body (story) - 17node body (story) - 17node b',
+  'log' => 'added 17 node',
+  'timestamp' => '1282936267',
+  'format' => '0',
+))
+->values(array(
+  'nid' => '19',
+  'vid' => '31',
+  'uid' => '5',
+  'title' => 'node title 19 rev 31 (i=18)',
+  'body' => 'node body (story) - 18node body (story) - 18node body (story) - 18node body (story) - 18node body (story) - 18node body (story) - 18node body (story) - 18node body (story) - 18node body (story) - 18node body (story) - 18node body (story) - 18node body (story) - 18node body (story) - 18node body (story) - 18node body (story) - 18node body (story) - 18node body (story) - 18node body (story) - 18node body (story) - 18node body (story) - 18node body (story) - 18node body (story) - 18node body (story) - 18node body (story) - 18node body (story) - 18node body (story) - 18node body (story) - 18node body (story) - 18node body (story) - 18node body (story) - 18node body (story) - 18node body (story) - 18node body (story) - 18node body (story) - 18node body (story) - 18node body (story) - 18node body (story) - 18node body (story) - 18node body (story) - 18node body (story) - 18node body (story) - 18node body (story) - 18node body (story) - 18node body (story) - 18node body (story) - 18node body (story) - 18node body (story) - 18node body (story) - 18node body (story) - 18node body (story) - 18node body (story) - 18node body (story) - 18node body (story) - 18node body (story) - 18node body (story) - 18node body (story) - 18node body (story) - 18node body (story) - 18node body (story) - 18node body (story) - 18node body (story) - 18node body (story) - 18node body (story) - 18node body (story) - 18node body (story) - 18node body (story) - 18node body (story) - 18node body (story) - 18node body (story) - 18node body (story) - 18node body (story) - 18node body (story) - 18node body (story) - 18node body (story) - 18node body (story) - 18node body (story) - 18node body (story) - 18node body (story) - 18node body (story) - 18node body (story) - 18node body (story) - 18node body (story) - 18node body (story) - 18node body (story) - 18node body (story) - 18node body (story) - 18node body (story) - 18node body (story) - 18node body (story) - 18node body (story) - 18node body (story) - 18node body (story) - 18node body (story) - 18node body (story) - 18node body (story) - 18node body (story) - 18node body (story) - 18node body (story) - 18node body (story) - 18node body (story) - 18',
+  'teaser' => 'node body (story) - 18node body (story) - 18node body (story) - 18node body (story) - 18node body (story) - 18node body (story) - 18node body (story) - 18node body (story) - 18node body (story) - 18node body (story) - 18node body (story) - 18node body (story) - 18node body (story) - 18node body (story) - 18node body (story) - 18node body (story) - 18node body (story) - 18node body (story) - 18node body (story) - 18node body (story) - 18node body (story) - 18node body (story) - 18node body (story) - 18node body (story) - 18node body (story) - 18node body (story) - 18node body (story) - 18node b',
+  'log' => 'added 18 node',
+  'timestamp' => '1282936267',
+  'format' => '0',
+))
+->values(array(
+  'nid' => '20',
+  'vid' => '32',
+  'uid' => '5',
+  'title' => 'node title 20 rev 32 (i=19)',
+  'body' => 'node body (story) - 19node body (story) - 19node body (story) - 19node body (story) - 19node body (story) - 19node body (story) - 19node body (story) - 19node body (story) - 19node body (story) - 19node body (story) - 19node body (story) - 19node body (story) - 19node body (story) - 19node body (story) - 19node body (story) - 19node body (story) - 19node body (story) - 19node body (story) - 19node body (story) - 19node body (story) - 19node body (story) - 19node body (story) - 19node body (story) - 19node body (story) - 19node body (story) - 19node body (story) - 19node body (story) - 19node body (story) - 19node body (story) - 19node body (story) - 19node body (story) - 19node body (story) - 19node body (story) - 19node body (story) - 19node body (story) - 19node body (story) - 19node body (story) - 19node body (story) - 19node body (story) - 19node body (story) - 19node body (story) - 19node body (story) - 19node body (story) - 19node body (story) - 19node body (story) - 19node body (story) - 19node body (story) - 19node body (story) - 19node body (story) - 19node body (story) - 19node body (story) - 19node body (story) - 19node body (story) - 19node body (story) - 19node body (story) - 19node body (story) - 19node body (story) - 19node body (story) - 19node body (story) - 19node body (story) - 19node body (story) - 19node body (story) - 19node body (story) - 19node body (story) - 19node body (story) - 19node body (story) - 19node body (story) - 19node body (story) - 19node body (story) - 19node body (story) - 19node body (story) - 19node body (story) - 19node body (story) - 19node body (story) - 19node body (story) - 19node body (story) - 19node body (story) - 19node body (story) - 19node body (story) - 19node body (story) - 19node body (story) - 19node body (story) - 19node body (story) - 19node body (story) - 19node body (story) - 19node body (story) - 19node body (story) - 19node body (story) - 19node body (story) - 19node body (story) - 19node body (story) - 19node body (story) - 19node body (story) - 19node body (story) - 19node body (story) - 19node body (story) - 19node body (story) - 19node body (story) - 19node body (story) - 19node body (story) - 19',
+  'teaser' => 'node body (story) - 19node body (story) - 19node body (story) - 19node body (story) - 19node body (story) - 19node body (story) - 19node body (story) - 19node body (story) - 19node body (story) - 19node body (story) - 19node body (story) - 19node body (story) - 19node body (story) - 19node body (story) - 19node body (story) - 19node body (story) - 19node body (story) - 19node body (story) - 19node body (story) - 19node body (story) - 19node body (story) - 19node body (story) - 19node body (story) - 19node body (story) - 19node body (story) - 19node body (story) - 19node body (story) - 19node b',
+  'log' => 'added 19 node',
+  'timestamp' => '1282936267',
+  'format' => '0',
+))
+->values(array(
+  'nid' => '21',
+  'vid' => '33',
+  'uid' => '5',
+  'title' => 'node title 21 rev 33 (i=20)',
+  'body' => 'node body (story) - 20node body (story) - 20node body (story) - 20node body (story) - 20node body (story) - 20node body (story) - 20node body (story) - 20node body (story) - 20node body (story) - 20node body (story) - 20node body (story) - 20node body (story) - 20node body (story) - 20node body (story) - 20node body (story) - 20node body (story) - 20node body (story) - 20node body (story) - 20node body (story) - 20node body (story) - 20node body (story) - 20node body (story) - 20node body (story) - 20node body (story) - 20node body (story) - 20node body (story) - 20node body (story) - 20node body (story) - 20node body (story) - 20node body (story) - 20node body (story) - 20node body (story) - 20node body (story) - 20node body (story) - 20node body (story) - 20node body (story) - 20node body (story) - 20node body (story) - 20node body (story) - 20node body (story) - 20node body (story) - 20node body (story) - 20node body (story) - 20node body (story) - 20node body (story) - 20node body (story) - 20node body (story) - 20node body (story) - 20node body (story) - 20node body (story) - 20node body (story) - 20node body (story) - 20node body (story) - 20node body (story) - 20node body (story) - 20node body (story) - 20node body (story) - 20node body (story) - 20node body (story) - 20node body (story) - 20node body (story) - 20node body (story) - 20node body (story) - 20node body (story) - 20node body (story) - 20node body (story) - 20node body (story) - 20node body (story) - 20node body (story) - 20node body (story) - 20node body (story) - 20node body (story) - 20node body (story) - 20node body (story) - 20node body (story) - 20node body (story) - 20node body (story) - 20node body (story) - 20node body (story) - 20node body (story) - 20node body (story) - 20node body (story) - 20node body (story) - 20node body (story) - 20node body (story) - 20node body (story) - 20node body (story) - 20node body (story) - 20node body (story) - 20node body (story) - 20node body (story) - 20node body (story) - 20node body (story) - 20node body (story) - 20node body (story) - 20node body (story) - 20node body (story) - 20node body (story) - 20node body (story) - 20node body (story) - 20',
+  'teaser' => 'node body (story) - 20node body (story) - 20node body (story) - 20node body (story) - 20node body (story) - 20node body (story) - 20node body (story) - 20node body (story) - 20node body (story) - 20node body (story) - 20node body (story) - 20node body (story) - 20node body (story) - 20node body (story) - 20node body (story) - 20node body (story) - 20node body (story) - 20node body (story) - 20node body (story) - 20node body (story) - 20node body (story) - 20node body (story) - 20node body (story) - 20node body (story) - 20node body (story) - 20node body (story) - 20node body (story) - 20node b',
+  'log' => 'added 20 node',
+  'timestamp' => '1282936267',
+  'format' => '0',
+))
+->values(array(
+  'nid' => '22',
+  'vid' => '34',
+  'uid' => '5',
+  'title' => 'node title 22 rev 34 (i=21)',
+  'body' => 'node body (story) - 21node body (story) - 21node body (story) - 21node body (story) - 21node body (story) - 21node body (story) - 21node body (story) - 21node body (story) - 21node body (story) - 21node body (story) - 21node body (story) - 21node body (story) - 21node body (story) - 21node body (story) - 21node body (story) - 21node body (story) - 21node body (story) - 21node body (story) - 21node body (story) - 21node body (story) - 21node body (story) - 21node body (story) - 21node body (story) - 21node body (story) - 21node body (story) - 21node body (story) - 21node body (story) - 21node body (story) - 21node body (story) - 21node body (story) - 21node body (story) - 21node body (story) - 21node body (story) - 21node body (story) - 21node body (story) - 21node body (story) - 21node body (story) - 21node body (story) - 21node body (story) - 21node body (story) - 21node body (story) - 21node body (story) - 21node body (story) - 21node body (story) - 21node body (story) - 21node body (story) - 21node body (story) - 21node body (story) - 21node body (story) - 21node body (story) - 21node body (story) - 21node body (story) - 21node body (story) - 21node body (story) - 21node body (story) - 21node body (story) - 21node body (story) - 21node body (story) - 21node body (story) - 21node body (story) - 21node body (story) - 21node body (story) - 21node body (story) - 21node body (story) - 21node body (story) - 21node body (story) - 21node body (story) - 21node body (story) - 21node body (story) - 21node body (story) - 21node body (story) - 21node body (story) - 21node body (story) - 21node body (story) - 21node body (story) - 21node body (story) - 21node body (story) - 21node body (story) - 21node body (story) - 21node body (story) - 21node body (story) - 21node body (story) - 21node body (story) - 21node body (story) - 21node body (story) - 21node body (story) - 21node body (story) - 21node body (story) - 21node body (story) - 21node body (story) - 21node body (story) - 21node body (story) - 21node body (story) - 21node body (story) - 21node body (story) - 21node body (story) - 21node body (story) - 21node body (story) - 21node body (story) - 21node body (story) - 21',
+  'teaser' => 'node body (story) - 21node body (story) - 21node body (story) - 21node body (story) - 21node body (story) - 21node body (story) - 21node body (story) - 21node body (story) - 21node body (story) - 21node body (story) - 21node body (story) - 21node body (story) - 21node body (story) - 21node body (story) - 21node body (story) - 21node body (story) - 21node body (story) - 21node body (story) - 21node body (story) - 21node body (story) - 21node body (story) - 21node body (story) - 21node body (story) - 21node body (story) - 21node body (story) - 21node body (story) - 21node body (story) - 21node b',
+  'log' => 'added 21 node',
+  'timestamp' => '1282936267',
+  'format' => '0',
+))
+->values(array(
+  'nid' => '23',
+  'vid' => '35',
+  'uid' => '5',
+  'title' => 'node title 23 rev 35 (i=22)',
+  'body' => 'node body (story) - 22node body (story) - 22node body (story) - 22node body (story) - 22node body (story) - 22node body (story) - 22node body (story) - 22node body (story) - 22node body (story) - 22node body (story) - 22node body (story) - 22node body (story) - 22node body (story) - 22node body (story) - 22node body (story) - 22node body (story) - 22node body (story) - 22node body (story) - 22node body (story) - 22node body (story) - 22node body (story) - 22node body (story) - 22node body (story) - 22node body (story) - 22node body (story) - 22node body (story) - 22node body (story) - 22node body (story) - 22node body (story) - 22node body (story) - 22node body (story) - 22node body (story) - 22node body (story) - 22node body (story) - 22node body (story) - 22node body (story) - 22node body (story) - 22node body (story) - 22node body (story) - 22node body (story) - 22node body (story) - 22node body (story) - 22node body (story) - 22node body (story) - 22node body (story) - 22node body (story) - 22node body (story) - 22node body (story) - 22node body (story) - 22node body (story) - 22node body (story) - 22node body (story) - 22node body (story) - 22node body (story) - 22node body (story) - 22node body (story) - 22node body (story) - 22node body (story) - 22node body (story) - 22node body (story) - 22node body (story) - 22node body (story) - 22node body (story) - 22node body (story) - 22node body (story) - 22node body (story) - 22node body (story) - 22node body (story) - 22node body (story) - 22node body (story) - 22node body (story) - 22node body (story) - 22node body (story) - 22node body (story) - 22node body (story) - 22node body (story) - 22node body (story) - 22node body (story) - 22node body (story) - 22node body (story) - 22node body (story) - 22node body (story) - 22node body (story) - 22node body (story) - 22node body (story) - 22node body (story) - 22node body (story) - 22node body (story) - 22node body (story) - 22node body (story) - 22node body (story) - 22node body (story) - 22node body (story) - 22node body (story) - 22node body (story) - 22node body (story) - 22node body (story) - 22node body (story) - 22node body (story) - 22node body (story) - 22',
+  'teaser' => 'node body (story) - 22node body (story) - 22node body (story) - 22node body (story) - 22node body (story) - 22node body (story) - 22node body (story) - 22node body (story) - 22node body (story) - 22node body (story) - 22node body (story) - 22node body (story) - 22node body (story) - 22node body (story) - 22node body (story) - 22node body (story) - 22node body (story) - 22node body (story) - 22node body (story) - 22node body (story) - 22node body (story) - 22node body (story) - 22node body (story) - 22node body (story) - 22node body (story) - 22node body (story) - 22node body (story) - 22node b',
+  'log' => 'added 22 node',
+  'timestamp' => '1282936267',
+  'format' => '0',
+))
+->values(array(
+  'nid' => '24',
+  'vid' => '36',
+  'uid' => '5',
+  'title' => 'node title 24 rev 36 (i=23)',
+  'body' => 'node body (story) - 23node body (story) - 23node body (story) - 23node body (story) - 23node body (story) - 23node body (story) - 23node body (story) - 23node body (story) - 23node body (story) - 23node body (story) - 23node body (story) - 23node body (story) - 23node body (story) - 23node body (story) - 23node body (story) - 23node body (story) - 23node body (story) - 23node body (story) - 23node body (story) - 23node body (story) - 23node body (story) - 23node body (story) - 23node body (story) - 23node body (story) - 23node body (story) - 23node body (story) - 23node body (story) - 23node body (story) - 23node body (story) - 23node body (story) - 23node body (story) - 23node body (story) - 23node body (story) - 23node body (story) - 23node body (story) - 23node body (story) - 23node body (story) - 23node body (story) - 23node body (story) - 23node body (story) - 23node body (story) - 23node body (story) - 23node body (story) - 23node body (story) - 23node body (story) - 23node body (story) - 23node body (story) - 23node body (story) - 23node body (story) - 23node body (story) - 23node body (story) - 23node body (story) - 23node body (story) - 23node body (story) - 23node body (story) - 23node body (story) - 23node body (story) - 23node body (story) - 23node body (story) - 23node body (story) - 23node body (story) - 23node body (story) - 23node body (story) - 23node body (story) - 23node body (story) - 23node body (story) - 23node body (story) - 23node body (story) - 23node body (story) - 23node body (story) - 23node body (story) - 23node body (story) - 23node body (story) - 23node body (story) - 23node body (story) - 23node body (story) - 23node body (story) - 23node body (story) - 23node body (story) - 23node body (story) - 23node body (story) - 23node body (story) - 23node body (story) - 23node body (story) - 23node body (story) - 23node body (story) - 23node body (story) - 23node body (story) - 23node body (story) - 23node body (story) - 23node body (story) - 23node body (story) - 23node body (story) - 23node body (story) - 23node body (story) - 23node body (story) - 23node body (story) - 23node body (story) - 23node body (story) - 23node body (story) - 23',
+  'teaser' => 'node body (story) - 23node body (story) - 23node body (story) - 23node body (story) - 23node body (story) - 23node body (story) - 23node body (story) - 23node body (story) - 23node body (story) - 23node body (story) - 23node body (story) - 23node body (story) - 23node body (story) - 23node body (story) - 23node body (story) - 23node body (story) - 23node body (story) - 23node body (story) - 23node body (story) - 23node body (story) - 23node body (story) - 23node body (story) - 23node body (story) - 23node body (story) - 23node body (story) - 23node body (story) - 23node body (story) - 23node b',
+  'log' => 'added 23 node',
+  'timestamp' => '1282936267',
+  'format' => '0',
+))
+->values(array(
+  'nid' => '25',
+  'vid' => '37',
+  'uid' => '3',
+  'title' => 'poll title 0',
+  'body' => '',
+  'teaser' => '',
+  'log' => 'added 0 poll',
+  'timestamp' => '1282936268',
+  'format' => '0',
+))
+->values(array(
+  'nid' => '26',
+  'vid' => '38',
+  'uid' => '3',
+  'title' => 'poll title 1',
+  'body' => '',
+  'teaser' => '',
+  'log' => 'added 1 poll',
+  'timestamp' => '1282936268',
+  'format' => '0',
+))
+->values(array(
+  'nid' => '27',
+  'vid' => '39',
+  'uid' => '3',
+  'title' => 'poll title 2',
+  'body' => '',
+  'teaser' => '',
+  'log' => 'added 2 poll',
+  'timestamp' => '1282936268',
+  'format' => '0',
+))
+->values(array(
+  'nid' => '28',
+  'vid' => '40',
+  'uid' => '3',
+  'title' => 'poll title 3',
+  'body' => '',
+  'teaser' => '',
+  'log' => 'added 3 poll',
+  'timestamp' => '1282936268',
+  'format' => '0',
+))
+->values(array(
+  'nid' => '29',
+  'vid' => '41',
+  'uid' => '4',
+  'title' => 'poll title 4',
+  'body' => '',
+  'teaser' => '',
+  'log' => 'added 4 poll',
+  'timestamp' => '1282936268',
+  'format' => '0',
+))
+->values(array(
+  'nid' => '30',
+  'vid' => '42',
+  'uid' => '4',
+  'title' => 'poll title 5',
+  'body' => '',
+  'teaser' => '',
+  'log' => 'added 5 poll',
+  'timestamp' => '1282936268',
+  'format' => '0',
+))
+->values(array(
+  'nid' => '31',
+  'vid' => '43',
+  'uid' => '4',
+  'title' => 'poll title 6',
+  'body' => '',
+  'teaser' => '',
+  'log' => 'added 6 poll',
+  'timestamp' => '1282936268',
+  'format' => '0',
+))
+->values(array(
+  'nid' => '32',
+  'vid' => '44',
+  'uid' => '4',
+  'title' => 'poll title 7',
+  'body' => '',
+  'teaser' => '',
+  'log' => 'added 7 poll',
+  'timestamp' => '1282936268',
+  'format' => '0',
+))
+->values(array(
+  'nid' => '33',
+  'vid' => '45',
+  'uid' => '5',
+  'title' => 'poll title 8',
+  'body' => '',
+  'teaser' => '',
+  'log' => 'added 8 poll',
+  'timestamp' => '1282936268',
+  'format' => '0',
+))
+->values(array(
+  'nid' => '34',
+  'vid' => '46',
+  'uid' => '5',
+  'title' => 'poll title 9',
+  'body' => '',
+  'teaser' => '',
+  'log' => 'added 9 poll',
+  'timestamp' => '1282936268',
+  'format' => '0',
+))
+->values(array(
+  'nid' => '35',
+  'vid' => '47',
+  'uid' => '5',
+  'title' => 'poll title 10',
+  'body' => '',
+  'teaser' => '',
+  'log' => 'added 10 poll',
+  'timestamp' => '1282936268',
+  'format' => '0',
+))
+->values(array(
+  'nid' => '36',
+  'vid' => '48',
+  'uid' => '5',
+  'title' => 'poll title 11',
+  'body' => '',
+  'teaser' => '',
+  'log' => 'added 11 poll',
+  'timestamp' => '1282936268',
+  'format' => '0',
+))
+->values(array(
+  'nid' => '37',
+  'vid' => '49',
+  'uid' => '6',
+  'title' => 'node title 24',
+  'body' => 'node body (broken) - 37node body (broken) - 37node body (broken) - 37node body (broken) - 37node body (broken) - 37node body (broken) - 37node body (broken) - 37node body (broken) - 37node body (broken) - 37node body (broken) - 37node body (broken) - 37node body (broken) - 37node body (broken) - 37node body (broken) - 37node body (broken) - 37node body (broken) - 37node body (broken) - 37node body (broken) - 37node body (broken) - 37node body (broken) - 37node body (broken) - 37node body (broken) - 37node body (broken) - 37node body (broken) - 37node body (broken) - 37node body (broken) - 37node body (broken) - 37node body (broken) - 37node body (broken) - 37node body (broken) - 37node body (broken) - 37node body (broken) - 37node body (broken) - 37node body (broken) - 37node body (broken) - 37node body (broken) - 37node body (broken) - 37node body (broken) - 37node body (broken) - 37node body (broken) - 37node body (broken) - 37node body (broken) - 37node body (broken) - 37node body (broken) - 37node body (broken) - 37node body (broken) - 37node body (broken) - 37node body (broken) - 37node body (broken) - 37node body (broken) - 37node body (broken) - 37node body (broken) - 37node body (broken) - 37node body (broken) - 37node body (broken) - 37node body (broken) - 37node body (broken) - 37node body (broken) - 37node body (broken) - 37node body (broken) - 37node body (broken) - 37node body (broken) - 37node body (broken) - 37node body (broken) - 37node body (broken) - 37node body (broken) - 37node body (broken) - 37node body (broken) - 37node body (broken) - 37node body (broken) - 37node body (broken) - 37node body (broken) - 37node body (broken) - 37node body (broken) - 37node body (broken) - 37node body (broken) - 37node body (broken) - 37node body (broken) - 37node body (broken) - 37node body (broken) - 37node body (broken) - 37node body (broken) - 37node body (broken) - 37node body (broken) - 37node body (broken) - 37node body (broken) - 37node body (broken) - 37node body (broken) - 37node body (broken) - 37node body (broken) - 37node body (broken) - 37node body (broken) - 37node body (broken) - 37node body (broken) - 37node body (broken) - 37node body (broken) - 37node body (broken) - 37node body (broken) - 37node body (broken) - 37node body (broken) - 37',
+  'teaser' => 'node body (broken) - 37node body (broken) - 37node body (broken) - 37node body (broken) - 37node body (broken) - 37node body (broken) - 37node body (broken) - 37node body (broken) - 37node body (broken) - 37node body (broken) - 37node body (broken) - 37node body (broken) - 37node body (broken) - 37node body (broken) - 37node body (broken) - 37node body (broken) - 37node body (broken) - 37node body (broken) - 37node body (broken) - 37node body (broken) - 37node body (broken) - 37node body (broken) - 37node body (broken) - 37node body (broken) - 37node body (broken) - 37node body (broken) - 37no',
+  'log' => 'added 12 node',
+  'timestamp' => '1279310614',
+  'format' => '0',
+))
+->execute();
+
+db_create_table('node_type', array(
+  'fields' => array(
+    'type' => array(
+      'type' => 'varchar',
+      'length' => 32,
+      'not null' => TRUE,
+    ),
+    'name' => array(
+      'type' => 'varchar',
+      'length' => 255,
+      'not null' => TRUE,
+      'default' => '',
+    ),
+    'module' => array(
+      'type' => 'varchar',
+      'length' => 255,
+      'not null' => TRUE,
+    ),
+    'description' => array(
+      'type' => 'text',
+      'not null' => TRUE,
+      'size' => 'medium',
+    ),
+    'help' => array(
+      'type' => 'text',
+      'not null' => TRUE,
+      'size' => 'medium',
+    ),
+    'has_title' => array(
+      'type' => 'int',
+      'unsigned' => TRUE,
+      'not null' => TRUE,
+      'size' => 'tiny',
+    ),
+    'title_label' => array(
+      'type' => 'varchar',
+      'length' => 255,
+      'not null' => TRUE,
+      'default' => '',
+    ),
+    'has_body' => array(
+      'type' => 'int',
+      'unsigned' => TRUE,
+      'not null' => TRUE,
+      'size' => 'tiny',
+    ),
+    'body_label' => array(
+      'type' => 'varchar',
+      'length' => 255,
+      'not null' => TRUE,
+      'default' => '',
+    ),
+    'min_word_count' => array(
+      'type' => 'int',
+      'unsigned' => TRUE,
+      'not null' => TRUE,
+      'size' => 'small',
+    ),
+    'custom' => array(
+      'type' => 'int',
+      'not null' => TRUE,
+      'default' => 0,
+      'size' => 'tiny',
+    ),
+    'modified' => array(
+      'type' => 'int',
+      'not null' => TRUE,
+      'default' => 0,
+      'size' => 'tiny',
+    ),
+    'locked' => array(
+      'type' => 'int',
+      'not null' => TRUE,
+      'default' => 0,
+      'size' => 'tiny',
+    ),
+    'orig_type' => array(
+      'type' => 'varchar',
+      'length' => 255,
+      'not null' => TRUE,
+      'default' => '',
+    ),
+  ),
+  'primary key' => array(
+    'type',
+  ),
+  'module' => 'node',
+  'name' => 'node_type',
+));
+db_insert('node_type')->fields(array(
+  'type',
+  'name',
+  'module',
+  'description',
+  'help',
+  'has_title',
+  'title_label',
+  'has_body',
+  'body_label',
+  'min_word_count',
+  'custom',
+  'modified',
+  'locked',
+  'orig_type',
+))
+->values(array(
+  'type' => 'page',
+  'name' => 'Page',
+  'module' => 'node',
+  'description' => "A <em>page</em>, similar in form to a <em>story</em>, is a simple method for creating and displaying information that rarely changes, such as an \"About us\" section of a website. By default, a <em>page</em> entry does not allow visitor comments and is not featured on the site's initial home page.",
+  'help' => '',
+  'has_title' => '1',
+  'title_label' => 'Title',
+  'has_body' => '1',
+  'body_label' => 'Body',
+  'min_word_count' => '0',
+  'custom' => '1',
+  'modified' => '1',
+  'locked' => '0',
+  'orig_type' => 'page',
+))
+->values(array(
+  'type' => 'poll',
+  'name' => 'Poll',
+  'module' => 'poll',
+  'description' => 'A <em>poll</em> is a question with a set of possible responses. A <em>poll</em>, once created, automatically provides a simple running count of the number of votes received for each response.',
+  'help' => '',
+  'has_title' => '1',
+  'title_label' => 'Question',
+  'has_body' => '0',
+  'body_label' => '',
+  'min_word_count' => '0',
+  'custom' => '0',
+  'modified' => '0',
+  'locked' => '1',
+  'orig_type' => 'poll',
+))
+->values(array(
+  'type' => 'story',
+  'name' => 'Story',
+  'module' => 'node',
+  'description' => "A <em>story</em>, similar in form to a <em>page</em>, is ideal for creating and displaying content that informs or engages website visitors. Press releases, site announcements, and informal blog-like entries may all be created with a <em>story</em> entry. By default, a <em>story</em> entry is automatically featured on the site's initial home page, and provides the ability to post comments.",
+  'help' => '',
+  'has_title' => '1',
+  'title_label' => 'Title',
+  'has_body' => '1',
+  'body_label' => 'Body',
+  'min_word_count' => '0',
+  'custom' => '1',
+  'modified' => '1',
+  'locked' => '0',
+  'orig_type' => 'story',
+))
+->execute();
+
+db_create_table('permission', array(
+  'fields' => array(
+    'pid' => array(
+      'type' => 'serial',
+      'not null' => TRUE,
+    ),
+    'rid' => array(
+      'type' => 'int',
+      'unsigned' => TRUE,
+      'not null' => TRUE,
+      'default' => 0,
+    ),
+    'perm' => array(
+      'type' => 'text',
+      'not null' => FALSE,
+      'size' => 'big',
+    ),
+    'tid' => array(
+      'type' => 'int',
+      'unsigned' => TRUE,
+      'not null' => TRUE,
+      'default' => 0,
+    ),
+  ),
+  'primary key' => array(
+    'pid',
+  ),
+  'indexes' => array(
+    'rid' => array(
+      'rid',
+    ),
+  ),
+  'module' => 'user',
+  'name' => 'permission',
+));
+db_insert('permission')->fields(array(
+  'pid',
+  'rid',
+  'perm',
+  'tid',
+))
+->values(array(
+  'pid' => '1',
+  'rid' => '1',
+  'perm' => 'access content',
+  'tid' => '0',
+))
+->values(array(
+  'pid' => '2',
+  'rid' => '2',
+  'perm' => 'access comments, access content, post comments, post comments without approval',
+  'tid' => '0',
+))
+->execute();
+
+db_create_table('poll', array(
+  'fields' => array(
+    'nid' => array(
+      'type' => 'int',
+      'unsigned' => TRUE,
+      'not null' => TRUE,
+      'default' => 0,
+    ),
+    'runtime' => array(
+      'type' => 'int',
+      'not null' => TRUE,
+      'default' => 0,
+    ),
+    'active' => array(
+      'type' => 'int',
+      'unsigned' => TRUE,
+      'not null' => TRUE,
+      'default' => 0,
+    ),
+  ),
+  'primary key' => array(
+    'nid',
+  ),
+  'module' => 'poll',
+  'name' => 'poll',
+));
+db_insert('poll')->fields(array(
+  'nid',
+  'runtime',
+  'active',
+))
+->values(array(
+  'nid' => '25',
+  'runtime' => '0',
+  'active' => '1',
+))
+->values(array(
+  'nid' => '26',
+  'runtime' => '0',
+  'active' => '1',
+))
+->values(array(
+  'nid' => '27',
+  'runtime' => '0',
+  'active' => '1',
+))
+->values(array(
+  'nid' => '28',
+  'runtime' => '0',
+  'active' => '1',
+))
+->values(array(
+  'nid' => '29',
+  'runtime' => '0',
+  'active' => '1',
+))
+->values(array(
+  'nid' => '30',
+  'runtime' => '0',
+  'active' => '1',
+))
+->values(array(
+  'nid' => '31',
+  'runtime' => '0',
+  'active' => '1',
+))
+->values(array(
+  'nid' => '32',
+  'runtime' => '0',
+  'active' => '1',
+))
+->values(array(
+  'nid' => '33',
+  'runtime' => '0',
+  'active' => '1',
+))
+->values(array(
+  'nid' => '34',
+  'runtime' => '0',
+  'active' => '1',
+))
+->values(array(
+  'nid' => '35',
+  'runtime' => '0',
+  'active' => '1',
+))
+->values(array(
+  'nid' => '36',
+  'runtime' => '0',
+  'active' => '1',
+))
+->execute();
+
+db_create_table('poll_choices', array(
+  'fields' => array(
+    'chid' => array(
+      'type' => 'serial',
+      'unsigned' => TRUE,
+      'not null' => TRUE,
+    ),
+    'nid' => array(
+      'type' => 'int',
+      'unsigned' => TRUE,
+      'not null' => TRUE,
+      'default' => 0,
+    ),
+    'chtext' => array(
+      'type' => 'varchar',
+      'length' => 128,
+      'not null' => TRUE,
+      'default' => '',
+    ),
+    'chvotes' => array(
+      'type' => 'int',
+      'not null' => TRUE,
+      'default' => 0,
+    ),
+    'chorder' => array(
+      'type' => 'int',
+      'not null' => TRUE,
+      'default' => 0,
+    ),
+  ),
+  'indexes' => array(
+    'nid' => array(
+      'nid',
+    ),
+  ),
+  'primary key' => array(
+    'chid',
+  ),
+  'module' => 'poll',
+  'name' => 'poll_choices',
+));
+db_insert('poll_choices')->fields(array(
+  'chid',
+  'nid',
+  'chtext',
+  'chvotes',
+  'chorder',
+))
+->values(array(
+  'chid' => '1',
+  'nid' => '25',
+  'chtext' => 'Choice 0 for poll 0',
+  'chvotes' => '3',
+  'chorder' => '0',
+))
+->values(array(
+  'chid' => '2',
+  'nid' => '25',
+  'chtext' => 'Choice 1 for poll 0',
+  'chvotes' => '2',
+  'chorder' => '1',
+))
+->values(array(
+  'chid' => '3',
+  'nid' => '26',
+  'chtext' => 'Choice 0 for poll 1',
+  'chvotes' => '2',
+  'chorder' => '0',
+))
+->values(array(
+  'chid' => '4',
+  'nid' => '26',
+  'chtext' => 'Choice 1 for poll 1',
+  'chvotes' => '2',
+  'chorder' => '1',
+))
+->values(array(
+  'chid' => '5',
+  'nid' => '26',
+  'chtext' => 'Choice 2 for poll 1',
+  'chvotes' => '2',
+  'chorder' => '2',
+))
+->values(array(
+  'chid' => '6',
+  'nid' => '27',
+  'chtext' => 'Choice 0 for poll 2',
+  'chvotes' => '2',
+  'chorder' => '0',
+))
+->values(array(
+  'chid' => '7',
+  'nid' => '27',
+  'chtext' => 'Choice 1 for poll 2',
+  'chvotes' => '2',
+  'chorder' => '1',
+))
+->values(array(
+  'chid' => '8',
+  'nid' => '27',
+  'chtext' => 'Choice 2 for poll 2',
+  'chvotes' => '2',
+  'chorder' => '2',
+))
+->values(array(
+  'chid' => '9',
+  'nid' => '27',
+  'chtext' => 'Choice 3 for poll 2',
+  'chvotes' => '1',
+  'chorder' => '3',
+))
+->values(array(
+  'chid' => '10',
+  'nid' => '28',
+  'chtext' => 'Choice 0 for poll 3',
+  'chvotes' => '2',
+  'chorder' => '0',
+))
+->values(array(
+  'chid' => '11',
+  'nid' => '28',
+  'chtext' => 'Choice 1 for poll 3',
+  'chvotes' => '2',
+  'chorder' => '1',
+))
+->values(array(
+  'chid' => '12',
+  'nid' => '28',
+  'chtext' => 'Choice 2 for poll 3',
+  'chvotes' => '2',
+  'chorder' => '2',
+))
+->values(array(
+  'chid' => '13',
+  'nid' => '28',
+  'chtext' => 'Choice 3 for poll 3',
+  'chvotes' => '1',
+  'chorder' => '3',
+))
+->values(array(
+  'chid' => '14',
+  'nid' => '28',
+  'chtext' => 'Choice 4 for poll 3',
+  'chvotes' => '1',
+  'chorder' => '4',
+))
+->values(array(
+  'chid' => '15',
+  'nid' => '29',
+  'chtext' => 'Choice 0 for poll 4',
+  'chvotes' => '3',
+  'chorder' => '0',
+))
+->values(array(
+  'chid' => '16',
+  'nid' => '29',
+  'chtext' => 'Choice 1 for poll 4',
+  'chvotes' => '2',
+  'chorder' => '1',
+))
+->values(array(
+  'chid' => '17',
+  'nid' => '30',
+  'chtext' => 'Choice 0 for poll 5',
+  'chvotes' => '2',
+  'chorder' => '0',
+))
+->values(array(
+  'chid' => '18',
+  'nid' => '30',
+  'chtext' => 'Choice 1 for poll 5',
+  'chvotes' => '2',
+  'chorder' => '1',
+))
+->values(array(
+  'chid' => '19',
+  'nid' => '30',
+  'chtext' => 'Choice 2 for poll 5',
+  'chvotes' => '2',
+  'chorder' => '2',
+))
+->values(array(
+  'chid' => '20',
+  'nid' => '31',
+  'chtext' => 'Choice 0 for poll 6',
+  'chvotes' => '2',
+  'chorder' => '0',
+))
+->values(array(
+  'chid' => '21',
+  'nid' => '31',
+  'chtext' => 'Choice 1 for poll 6',
+  'chvotes' => '2',
+  'chorder' => '1',
+))
+->values(array(
+  'chid' => '22',
+  'nid' => '31',
+  'chtext' => 'Choice 2 for poll 6',
+  'chvotes' => '2',
+  'chorder' => '2',
+))
+->values(array(
+  'chid' => '23',
+  'nid' => '31',
+  'chtext' => 'Choice 3 for poll 6',
+  'chvotes' => '1',
+  'chorder' => '3',
+))
+->values(array(
+  'chid' => '24',
+  'nid' => '32',
+  'chtext' => 'Choice 0 for poll 7',
+  'chvotes' => '2',
+  'chorder' => '0',
+))
+->values(array(
+  'chid' => '25',
+  'nid' => '32',
+  'chtext' => 'Choice 1 for poll 7',
+  'chvotes' => '2',
+  'chorder' => '1',
+))
+->values(array(
+  'chid' => '26',
+  'nid' => '32',
+  'chtext' => 'Choice 2 for poll 7',
+  'chvotes' => '2',
+  'chorder' => '2',
+))
+->values(array(
+  'chid' => '27',
+  'nid' => '32',
+  'chtext' => 'Choice 3 for poll 7',
+  'chvotes' => '1',
+  'chorder' => '3',
+))
+->values(array(
+  'chid' => '28',
+  'nid' => '32',
+  'chtext' => 'Choice 4 for poll 7',
+  'chvotes' => '1',
+  'chorder' => '4',
+))
+->values(array(
+  'chid' => '29',
+  'nid' => '33',
+  'chtext' => 'Choice 0 for poll 8',
+  'chvotes' => '3',
+  'chorder' => '0',
+))
+->values(array(
+  'chid' => '30',
+  'nid' => '33',
+  'chtext' => 'Choice 1 for poll 8',
+  'chvotes' => '2',
+  'chorder' => '1',
+))
+->values(array(
+  'chid' => '31',
+  'nid' => '34',
+  'chtext' => 'Choice 0 for poll 9',
+  'chvotes' => '2',
+  'chorder' => '0',
+))
+->values(array(
+  'chid' => '32',
+  'nid' => '34',
+  'chtext' => 'Choice 1 for poll 9',
+  'chvotes' => '2',
+  'chorder' => '1',
+))
+->values(array(
+  'chid' => '33',
+  'nid' => '34',
+  'chtext' => 'Choice 2 for poll 9',
+  'chvotes' => '2',
+  'chorder' => '2',
+))
+->values(array(
+  'chid' => '34',
+  'nid' => '35',
+  'chtext' => 'Choice 0 for poll 10',
+  'chvotes' => '2',
+  'chorder' => '0',
+))
+->values(array(
+  'chid' => '35',
+  'nid' => '35',
+  'chtext' => 'Choice 1 for poll 10',
+  'chvotes' => '2',
+  'chorder' => '1',
+))
+->values(array(
+  'chid' => '36',
+  'nid' => '35',
+  'chtext' => 'Choice 2 for poll 10',
+  'chvotes' => '2',
+  'chorder' => '2',
+))
+->values(array(
+  'chid' => '37',
+  'nid' => '35',
+  'chtext' => 'Choice 3 for poll 10',
+  'chvotes' => '1',
+  'chorder' => '3',
+))
+->values(array(
+  'chid' => '38',
+  'nid' => '36',
+  'chtext' => 'Choice 0 for poll 11',
+  'chvotes' => '2',
+  'chorder' => '0',
+))
+->values(array(
+  'chid' => '39',
+  'nid' => '36',
+  'chtext' => 'Choice 1 for poll 11',
+  'chvotes' => '2',
+  'chorder' => '1',
+))
+->values(array(
+  'chid' => '40',
+  'nid' => '36',
+  'chtext' => 'Choice 2 for poll 11',
+  'chvotes' => '2',
+  'chorder' => '2',
+))
+->values(array(
+  'chid' => '41',
+  'nid' => '36',
+  'chtext' => 'Choice 3 for poll 11',
+  'chvotes' => '1',
+  'chorder' => '3',
+))
+->values(array(
+  'chid' => '42',
+  'nid' => '36',
+  'chtext' => 'Choice 4 for poll 11',
+  'chvotes' => '1',
+  'chorder' => '4',
+))
+->execute();
+
+db_create_table('poll_votes', array(
+  'fields' => array(
+    'nid' => array(
+      'type' => 'int',
+      'unsigned' => TRUE,
+      'not null' => TRUE,
+    ),
+    'uid' => array(
+      'type' => 'int',
+      'unsigned' => TRUE,
+      'not null' => TRUE,
+      'default' => 0,
+    ),
+    'chorder' => array(
+      'type' => 'int',
+      'not null' => TRUE,
+      'default' => -1,
+    ),
+    'hostname' => array(
+      'type' => 'varchar',
+      'length' => 128,
+      'not null' => TRUE,
+      'default' => '',
+    ),
+  ),
+  'primary key' => array(
+    'nid',
+    'uid',
+    'hostname',
+  ),
+  'indexes' => array(
+    'hostname' => array(
+      'hostname',
+    ),
+    'uid' => array(
+      'uid',
+    ),
+  ),
+  'module' => 'poll',
+  'name' => 'poll_votes',
+));
+db_insert('poll_votes')->fields(array(
+  'nid',
+  'uid',
+  'chorder',
+  'hostname',
+))
+->values(array(
+  'nid' => '25',
+  'uid' => '3',
+  'chorder' => '0',
+  'hostname' => '',
+))
+->values(array(
+  'nid' => '26',
+  'uid' => '3',
+  'chorder' => '0',
+  'hostname' => '',
+))
+->values(array(
+  'nid' => '27',
+  'uid' => '3',
+  'chorder' => '0',
+  'hostname' => '',
+))
+->values(array(
+  'nid' => '28',
+  'uid' => '3',
+  'chorder' => '0',
+  'hostname' => '',
+))
+->values(array(
+  'nid' => '29',
+  'uid' => '4',
+  'chorder' => '0',
+  'hostname' => '',
+))
+->values(array(
+  'nid' => '30',
+  'uid' => '4',
+  'chorder' => '0',
+  'hostname' => '',
+))
+->values(array(
+  'nid' => '31',
+  'uid' => '4',
+  'chorder' => '0',
+  'hostname' => '',
+))
+->values(array(
+  'nid' => '32',
+  'uid' => '4',
+  'chorder' => '0',
+  'hostname' => '',
+))
+->values(array(
+  'nid' => '33',
+  'uid' => '5',
+  'chorder' => '0',
+  'hostname' => '',
+))
+->values(array(
+  'nid' => '34',
+  'uid' => '5',
+  'chorder' => '0',
+  'hostname' => '',
+))
+->values(array(
+  'nid' => '35',
+  'uid' => '5',
+  'chorder' => '0',
+  'hostname' => '',
+))
+->values(array(
+  'nid' => '36',
+  'uid' => '5',
+  'chorder' => '0',
+  'hostname' => '',
+))
+->execute();
+
+db_create_table('role', array(
+  'fields' => array(
+    'rid' => array(
+      'type' => 'serial',
+      'unsigned' => TRUE,
+      'not null' => TRUE,
+    ),
+    'name' => array(
+      'type' => 'varchar',
+      'length' => 64,
+      'not null' => TRUE,
+      'default' => '',
+    ),
+  ),
+  'unique keys' => array(
+    'name' => array(
+      'name',
+    ),
+  ),
+  'primary key' => array(
+    'rid',
+  ),
+  'module' => 'user',
+  'name' => 'role',
+));
+db_insert('role')->fields(array(
+  'rid',
+  'name',
+))
+->values(array(
+  'rid' => '1',
+  'name' => 'anonymous user',
+))
+->values(array(
+  'rid' => '2',
+  'name' => 'authenticated user',
+))
+->execute();
+
+db_create_table('semaphore', array(
+  'fields' => array(
+    'name' => array(
+      'type' => 'varchar',
+      'length' => 255,
+      'not null' => TRUE,
+      'default' => '',
+    ),
+    'value' => array(
+      'type' => 'varchar',
+      'length' => 255,
+      'not null' => TRUE,
+      'default' => '',
+    ),
+    'expire' => array(
+      'type' => 'float',
+      'size' => 'big',
+      'not null' => TRUE,
+    ),
+  ),
+  'indexes' => array(
+    'expire' => array(
+      'expire',
+    ),
+  ),
+  'primary key' => array(
+    'name',
+  ),
+  'module' => 'system',
+  'name' => 'semaphore',
+));
+
+db_create_table('sessions', array(
+  'fields' => array(
+    'uid' => array(
+      'type' => 'int',
+      'unsigned' => TRUE,
+      'not null' => TRUE,
+    ),
+    'sid' => array(
+      'type' => 'varchar',
+      'length' => 64,
+      'not null' => TRUE,
+      'default' => '',
+    ),
+    'hostname' => array(
+      'type' => 'varchar',
+      'length' => 128,
+      'not null' => TRUE,
+      'default' => '',
+    ),
+    'timestamp' => array(
+      'type' => 'int',
+      'not null' => TRUE,
+      'default' => 0,
+    ),
+    'cache' => array(
+      'type' => 'int',
+      'not null' => TRUE,
+      'default' => 0,
+    ),
+    'session' => array(
+      'type' => 'text',
+      'not null' => FALSE,
+      'size' => 'big',
+    ),
+  ),
+  'primary key' => array(
+    'sid',
+  ),
+  'indexes' => array(
+    'timestamp' => array(
+      'timestamp',
+    ),
+    'uid' => array(
+      'uid',
+    ),
+  ),
+  'module' => 'system',
+  'name' => 'sessions',
+));
+
+db_create_table('system', array(
+  'fields' => array(
+    'filename' => array(
+      'type' => 'varchar',
+      'length' => 255,
+      'not null' => TRUE,
+      'default' => '',
+    ),
+    'name' => array(
+      'type' => 'varchar',
+      'length' => 255,
+      'not null' => TRUE,
+      'default' => '',
+    ),
+    'type' => array(
+      'type' => 'varchar',
+      'length' => 255,
+      'not null' => TRUE,
+      'default' => '',
+    ),
+    'owner' => array(
+      'type' => 'varchar',
+      'length' => 255,
+      'not null' => TRUE,
+      'default' => '',
+    ),
+    'status' => array(
+      'type' => 'int',
+      'not null' => TRUE,
+      'default' => 0,
+    ),
+    'throttle' => array(
+      'type' => 'int',
+      'not null' => TRUE,
+      'default' => 0,
+      'size' => 'tiny',
+    ),
+    'bootstrap' => array(
+      'type' => 'int',
+      'not null' => TRUE,
+      'default' => 0,
+    ),
+    'schema_version' => array(
+      'type' => 'int',
+      'not null' => TRUE,
+      'default' => -1,
+      'size' => 'small',
+    ),
+    'weight' => array(
+      'type' => 'int',
+      'not null' => TRUE,
+      'default' => 0,
+    ),
+    'info' => array(
+      'type' => 'text',
+      'not null' => FALSE,
+    ),
+  ),
+  'primary key' => array(
+    'filename',
+  ),
+  'indexes' => array(
+    'modules' => array(
+      array(
+        'type',
+        12,
+      ),
+      'status',
+      'weight',
+      'filename',
+    ),
+    'bootstrap' => array(
+      array(
+        'type',
+        12,
+      ),
+      'status',
+      'bootstrap',
+      'weight',
+      'filename',
+    ),
+    'type_name' => array(
+      array(
+        'type',
+        12,
+      ),
+      'name',
+    ),
+  ),
+  'module' => 'system',
+  'name' => 'system',
+));
+db_insert('system')->fields(array(
+  'filename',
+  'name',
+  'type',
+  'owner',
+  'status',
+  'throttle',
+  'bootstrap',
+  'schema_version',
+  'weight',
+  'info',
+))
+->values(array(
+  'filename' => 'modules/aggregator/aggregator.module',
+  'name' => 'aggregator',
+  'type' => 'module',
+  'owner' => '',
+  'status' => '0',
+  'throttle' => '0',
+  'bootstrap' => '0',
+  'schema_version' => '-1',
+  'weight' => '0',
+  'info' => 'a:8:{s:4:"name";s:10:"Aggregator";s:11:"description";s:57:"Aggregates syndicated content (RSS, RDF, and Atom feeds).";s:7:"package";s:15:"Core - optional";s:7:"version";s:8:"6.20-dev";s:4:"core";s:3:"6.x";s:12:"dependencies";a:0:{}s:10:"dependents";a:0:{}s:3:"php";s:5:"4.3.5";}',
+))
+->values(array(
+  'filename' => 'modules/block/block.module',
+  'name' => 'block',
+  'type' => 'module',
+  'owner' => '',
+  'status' => '1',
+  'throttle' => '0',
+  'bootstrap' => '0',
+  'schema_version' => '0',
+  'weight' => '0',
+  'info' => 'a:8:{s:4:"name";s:5:"Block";s:11:"description";s:62:"Controls the boxes that are displayed around the main content.";s:7:"package";s:15:"Core - required";s:7:"version";s:8:"6.20-dev";s:4:"core";s:3:"6.x";s:12:"dependencies";a:0:{}s:10:"dependents";a:0:{}s:3:"php";s:5:"4.3.5";}',
+))
+->values(array(
+  'filename' => 'modules/blog/blog.module',
+  'name' => 'blog',
+  'type' => 'module',
+  'owner' => '',
+  'status' => '0',
+  'throttle' => '0',
+  'bootstrap' => '0',
+  'schema_version' => '-1',
+  'weight' => '0',
+  'info' => 'a:8:{s:4:"name";s:4:"Blog";s:11:"description";s:69:"Enables keeping easily and regularly updated user web pages or blogs.";s:7:"package";s:15:"Core - optional";s:7:"version";s:8:"6.20-dev";s:4:"core";s:3:"6.x";s:12:"dependencies";a:0:{}s:10:"dependents";a:0:{}s:3:"php";s:5:"4.3.5";}',
+))
+->values(array(
+  'filename' => 'modules/blogapi/blogapi.module',
+  'name' => 'blogapi',
+  'type' => 'module',
+  'owner' => '',
+  'status' => '0',
+  'throttle' => '0',
+  'bootstrap' => '0',
+  'schema_version' => '-1',
+  'weight' => '0',
+  'info' => 'a:8:{s:4:"name";s:8:"Blog API";s:11:"description";s:79:"Allows users to post content using applications that support XML-RPC blog APIs.";s:7:"package";s:15:"Core - optional";s:7:"version";s:8:"6.20-dev";s:4:"core";s:3:"6.x";s:12:"dependencies";a:0:{}s:10:"dependents";a:0:{}s:3:"php";s:5:"4.3.5";}',
+))
+->values(array(
+  'filename' => 'modules/book/book.module',
+  'name' => 'book',
+  'type' => 'module',
+  'owner' => '',
+  'status' => '0',
+  'throttle' => '0',
+  'bootstrap' => '0',
+  'schema_version' => '-1',
+  'weight' => '0',
+  'info' => 'a:8:{s:4:"name";s:4:"Book";s:11:"description";s:63:"Allows users to structure site pages in a hierarchy or outline.";s:7:"package";s:15:"Core - optional";s:7:"version";s:8:"6.20-dev";s:4:"core";s:3:"6.x";s:12:"dependencies";a:0:{}s:10:"dependents";a:0:{}s:3:"php";s:5:"4.3.5";}',
+))
+->values(array(
+  'filename' => 'modules/color/color.module',
+  'name' => 'color',
+  'type' => 'module',
+  'owner' => '',
+  'status' => '1',
+  'throttle' => '0',
+  'bootstrap' => '0',
+  'schema_version' => '0',
+  'weight' => '0',
+  'info' => 'a:8:{s:4:"name";s:5:"Color";s:11:"description";s:61:"Allows the user to change the color scheme of certain themes.";s:7:"package";s:15:"Core - optional";s:7:"version";s:8:"6.20-dev";s:4:"core";s:3:"6.x";s:12:"dependencies";a:0:{}s:10:"dependents";a:0:{}s:3:"php";s:5:"4.3.5";}',
+))
+->values(array(
+  'filename' => 'modules/comment/comment.module',
+  'name' => 'comment',
+  'type' => 'module',
+  'owner' => '',
+  'status' => '1',
+  'throttle' => '0',
+  'bootstrap' => '0',
+  'schema_version' => '6003',
+  'weight' => '0',
+  'info' => 'a:8:{s:4:"name";s:7:"Comment";s:11:"description";s:57:"Allows users to comment on and discuss published content.";s:7:"package";s:15:"Core - optional";s:7:"version";s:8:"6.20-dev";s:4:"core";s:3:"6.x";s:12:"dependencies";a:0:{}s:10:"dependents";a:0:{}s:3:"php";s:5:"4.3.5";}',
+))
+->values(array(
+  'filename' => 'modules/contact/contact.module',
+  'name' => 'contact',
+  'type' => 'module',
+  'owner' => '',
+  'status' => '0',
+  'throttle' => '0',
+  'bootstrap' => '0',
+  'schema_version' => '-1',
+  'weight' => '0',
+  'info' => 'a:8:{s:4:"name";s:7:"Contact";s:11:"description";s:61:"Enables the use of both personal and site-wide contact forms.";s:7:"package";s:15:"Core - optional";s:7:"version";s:8:"6.20-dev";s:4:"core";s:3:"6.x";s:12:"dependencies";a:0:{}s:10:"dependents";a:0:{}s:3:"php";s:5:"4.3.5";}',
+))
+->values(array(
+  'filename' => 'modules/dblog/dblog.module',
+  'name' => 'dblog',
+  'type' => 'module',
+  'owner' => '',
+  'status' => '1',
+  'throttle' => '0',
+  'bootstrap' => '0',
+  'schema_version' => '6000',
+  'weight' => '0',
+  'info' => 'a:8:{s:4:"name";s:16:"Database logging";s:11:"description";s:47:"Logs and records system events to the database.";s:7:"package";s:15:"Core - optional";s:7:"version";s:8:"6.20-dev";s:4:"core";s:3:"6.x";s:12:"dependencies";a:0:{}s:10:"dependents";a:0:{}s:3:"php";s:5:"4.3.5";}',
+))
+->values(array(
+  'filename' => 'modules/filter/filter.module',
+  'name' => 'filter',
+  'type' => 'module',
+  'owner' => '',
+  'status' => '1',
+  'throttle' => '0',
+  'bootstrap' => '0',
+  'schema_version' => '0',
+  'weight' => '0',
+  'info' => 'a:8:{s:4:"name";s:6:"Filter";s:11:"description";s:60:"Handles the filtering of content in preparation for display.";s:7:"package";s:15:"Core - required";s:7:"version";s:8:"6.20-dev";s:4:"core";s:3:"6.x";s:12:"dependencies";a:0:{}s:10:"dependents";a:0:{}s:3:"php";s:5:"4.3.5";}',
+))
+->values(array(
+  'filename' => 'modules/forum/forum.module',
+  'name' => 'forum',
+  'type' => 'module',
+  'owner' => '',
+  'status' => '0',
+  'throttle' => '0',
+  'bootstrap' => '0',
+  'schema_version' => '-1',
+  'weight' => '0',
+  'info' => 'a:8:{s:4:"name";s:5:"Forum";s:11:"description";s:50:"Enables threaded discussions about general topics.";s:12:"dependencies";a:2:{i:0;s:8:"taxonomy";i:1;s:7:"comment";}s:7:"package";s:15:"Core - optional";s:7:"version";s:8:"6.20-dev";s:4:"core";s:3:"6.x";s:10:"dependents";a:0:{}s:3:"php";s:5:"4.3.5";}',
+))
+->values(array(
+  'filename' => 'modules/help/help.module',
+  'name' => 'help',
+  'type' => 'module',
+  'owner' => '',
+  'status' => '1',
+  'throttle' => '0',
+  'bootstrap' => '0',
+  'schema_version' => '0',
+  'weight' => '0',
+  'info' => 'a:8:{s:4:"name";s:4:"Help";s:11:"description";s:35:"Manages the display of online help.";s:7:"package";s:15:"Core - optional";s:7:"version";s:8:"6.20-dev";s:4:"core";s:3:"6.x";s:12:"dependencies";a:0:{}s:10:"dependents";a:0:{}s:3:"php";s:5:"4.3.5";}',
+))
+->values(array(
+  'filename' => 'modules/locale/locale.module',
+  'name' => 'locale',
+  'type' => 'module',
+  'owner' => '',
+  'status' => '0',
+  'throttle' => '0',
+  'bootstrap' => '0',
+  'schema_version' => '-1',
+  'weight' => '0',
+  'info' => 'a:8:{s:4:"name";s:6:"Locale";s:11:"description";s:119:"Adds language handling functionality and enables the translation of the user interface to languages other than English.";s:7:"package";s:15:"Core - optional";s:7:"version";s:8:"6.20-dev";s:4:"core";s:3:"6.x";s:12:"dependencies";a:0:{}s:10:"dependents";a:0:{}s:3:"php";s:5:"4.3.5";}',
+))
+->values(array(
+  'filename' => 'modules/menu/menu.module',
+  'name' => 'menu',
+  'type' => 'module',
+  'owner' => '',
+  'status' => '1',
+  'throttle' => '0',
+  'bootstrap' => '0',
+  'schema_version' => '0',
+  'weight' => '0',
+  'info' => 'a:8:{s:4:"name";s:4:"Menu";s:11:"description";s:60:"Allows administrators to customize the site navigation menu.";s:7:"package";s:15:"Core - optional";s:7:"version";s:8:"6.20-dev";s:4:"core";s:3:"6.x";s:12:"dependencies";a:0:{}s:10:"dependents";a:0:{}s:3:"php";s:5:"4.3.5";}',
+))
+->values(array(
+  'filename' => 'modules/node/node.module',
+  'name' => 'node',
+  'type' => 'module',
+  'owner' => '',
+  'status' => '1',
+  'throttle' => '0',
+  'bootstrap' => '0',
+  'schema_version' => '0',
+  'weight' => '0',
+  'info' => 'a:8:{s:4:"name";s:4:"Node";s:11:"description";s:66:"Allows content to be submitted to the site and displayed on pages.";s:7:"package";s:15:"Core - required";s:7:"version";s:8:"6.20-dev";s:4:"core";s:3:"6.x";s:12:"dependencies";a:0:{}s:10:"dependents";a:0:{}s:3:"php";s:5:"4.3.5";}',
+))
+->values(array(
+  'filename' => 'modules/openid/openid.module',
+  'name' => 'openid',
+  'type' => 'module',
+  'owner' => '',
+  'status' => '0',
+  'throttle' => '0',
+  'bootstrap' => '0',
+  'schema_version' => '-1',
+  'weight' => '0',
+  'info' => 'a:8:{s:4:"name";s:6:"OpenID";s:11:"description";s:48:"Allows users to log into your site using OpenID.";s:7:"version";s:8:"6.20-dev";s:7:"package";s:15:"Core - optional";s:4:"core";s:3:"6.x";s:12:"dependencies";a:0:{}s:10:"dependents";a:0:{}s:3:"php";s:5:"4.3.5";}',
+))
+->values(array(
+  'filename' => 'modules/path/path.module',
+  'name' => 'path',
+  'type' => 'module',
+  'owner' => '',
+  'status' => '1',
+  'throttle' => '0',
+  'bootstrap' => '0',
+  'schema_version' => '0',
+  'weight' => '0',
+  'info' => 'a:8:{s:4:"name";s:4:"Path";s:11:"description";s:28:"Allows users to rename URLs.";s:7:"package";s:15:"Core - optional";s:7:"version";s:8:"6.20-dev";s:4:"core";s:3:"6.x";s:12:"dependencies";a:0:{}s:10:"dependents";a:0:{}s:3:"php";s:5:"4.3.5";}',
+))
+->values(array(
+  'filename' => 'modules/php/php.module',
+  'name' => 'php',
+  'type' => 'module',
+  'owner' => '',
+  'status' => '0',
+  'throttle' => '0',
+  'bootstrap' => '0',
+  'schema_version' => '-1',
+  'weight' => '0',
+  'info' => 'a:8:{s:4:"name";s:10:"PHP filter";s:11:"description";s:50:"Allows embedded PHP code/snippets to be evaluated.";s:7:"package";s:15:"Core - optional";s:7:"version";s:8:"6.20-dev";s:4:"core";s:3:"6.x";s:12:"dependencies";a:0:{}s:10:"dependents";a:0:{}s:3:"php";s:5:"4.3.5";}',
+))
+->values(array(
+  'filename' => 'modules/ping/ping.module',
+  'name' => 'ping',
+  'type' => 'module',
+  'owner' => '',
+  'status' => '0',
+  'throttle' => '0',
+  'bootstrap' => '0',
+  'schema_version' => '-1',
+  'weight' => '0',
+  'info' => 'a:8:{s:4:"name";s:4:"Ping";s:11:"description";s:51:"Alerts other sites when your site has been updated.";s:7:"package";s:15:"Core - optional";s:7:"version";s:8:"6.20-dev";s:4:"core";s:3:"6.x";s:12:"dependencies";a:0:{}s:10:"dependents";a:0:{}s:3:"php";s:5:"4.3.5";}',
+))
+->values(array(
+  'filename' => 'modules/poll/poll.module',
+  'name' => 'poll',
+  'type' => 'module',
+  'owner' => '',
+  'status' => '1',
+  'throttle' => '0',
+  'bootstrap' => '0',
+  'schema_version' => '0',
+  'weight' => '0',
+  'info' => 'a:8:{s:4:"name";s:4:"Poll";s:11:"description";s:95:"Allows your site to capture votes on different topics in the form of multiple choice questions.";s:7:"package";s:15:"Core - optional";s:7:"version";s:8:"6.20-dev";s:4:"core";s:3:"6.x";s:12:"dependencies";a:0:{}s:10:"dependents";a:0:{}s:3:"php";s:5:"4.3.5";}',
+))
+->values(array(
+  'filename' => 'modules/profile/profile.module',
+  'name' => 'profile',
+  'type' => 'module',
+  'owner' => '',
+  'status' => '0',
+  'throttle' => '0',
+  'bootstrap' => '0',
+  'schema_version' => '-1',
+  'weight' => '0',
+  'info' => 'a:8:{s:4:"name";s:7:"Profile";s:11:"description";s:36:"Supports configurable user profiles.";s:7:"package";s:15:"Core - optional";s:7:"version";s:8:"6.20-dev";s:4:"core";s:3:"6.x";s:12:"dependencies";a:0:{}s:10:"dependents";a:0:{}s:3:"php";s:5:"4.3.5";}',
+))
+->values(array(
+  'filename' => 'modules/search/search.module',
+  'name' => 'search',
+  'type' => 'module',
+  'owner' => '',
+  'status' => '0',
+  'throttle' => '0',
+  'bootstrap' => '0',
+  'schema_version' => '-1',
+  'weight' => '0',
+  'info' => 'a:8:{s:4:"name";s:6:"Search";s:11:"description";s:36:"Enables site-wide keyword searching.";s:7:"package";s:15:"Core - optional";s:7:"version";s:8:"6.20-dev";s:4:"core";s:3:"6.x";s:12:"dependencies";a:0:{}s:10:"dependents";a:0:{}s:3:"php";s:5:"4.3.5";}',
+))
+->values(array(
+  'filename' => 'modules/statistics/statistics.module',
+  'name' => 'statistics',
+  'type' => 'module',
+  'owner' => '',
+  'status' => '0',
+  'throttle' => '0',
+  'bootstrap' => '0',
+  'schema_version' => '-1',
+  'weight' => '0',
+  'info' => 'a:8:{s:4:"name";s:10:"Statistics";s:11:"description";s:37:"Logs access statistics for your site.";s:7:"package";s:15:"Core - optional";s:7:"version";s:8:"6.20-dev";s:4:"core";s:3:"6.x";s:12:"dependencies";a:0:{}s:10:"dependents";a:0:{}s:3:"php";s:5:"4.3.5";}',
+))
+->values(array(
+  'filename' => 'modules/syslog/syslog.module',
+  'name' => 'syslog',
+  'type' => 'module',
+  'owner' => '',
+  'status' => '0',
+  'throttle' => '0',
+  'bootstrap' => '0',
+  'schema_version' => '-1',
+  'weight' => '0',
+  'info' => 'a:8:{s:4:"name";s:6:"Syslog";s:11:"description";s:41:"Logs and records system events to syslog.";s:7:"package";s:15:"Core - optional";s:7:"version";s:8:"6.20-dev";s:4:"core";s:3:"6.x";s:12:"dependencies";a:0:{}s:10:"dependents";a:0:{}s:3:"php";s:5:"4.3.5";}',
+))
+->values(array(
+  'filename' => 'modules/system/system.module',
+  'name' => 'system',
+  'type' => 'module',
+  'owner' => '',
+  'status' => '1',
+  'throttle' => '0',
+  'bootstrap' => '0',
+  'schema_version' => '6055',
+  'weight' => '0',
+  'info' => 'a:8:{s:4:"name";s:6:"System";s:11:"description";s:54:"Handles general site configuration for administrators.";s:7:"package";s:15:"Core - required";s:7:"version";s:8:"6.20-dev";s:4:"core";s:3:"6.x";s:12:"dependencies";a:0:{}s:10:"dependents";a:0:{}s:3:"php";s:5:"4.3.5";}',
+))
+->values(array(
+  'filename' => 'modules/taxonomy/taxonomy.module',
+  'name' => 'taxonomy',
+  'type' => 'module',
+  'owner' => '',
+  'status' => '1',
+  'throttle' => '0',
+  'bootstrap' => '0',
+  'schema_version' => '0',
+  'weight' => '0',
+  'info' => 'a:8:{s:4:"name";s:8:"Taxonomy";s:11:"description";s:38:"Enables the categorization of content.";s:7:"package";s:15:"Core - optional";s:7:"version";s:8:"6.20-dev";s:4:"core";s:3:"6.x";s:12:"dependencies";a:0:{}s:10:"dependents";a:0:{}s:3:"php";s:5:"4.3.5";}',
+))
+->values(array(
+  'filename' => 'modules/throttle/throttle.module',
+  'name' => 'throttle',
+  'type' => 'module',
+  'owner' => '',
+  'status' => '0',
+  'throttle' => '0',
+  'bootstrap' => '0',
+  'schema_version' => '-1',
+  'weight' => '0',
+  'info' => 'a:8:{s:4:"name";s:8:"Throttle";s:11:"description";s:66:"Handles the auto-throttling mechanism, to control site congestion.";s:7:"package";s:15:"Core - optional";s:7:"version";s:8:"6.20-dev";s:4:"core";s:3:"6.x";s:12:"dependencies";a:0:{}s:10:"dependents";a:0:{}s:3:"php";s:5:"4.3.5";}',
+))
+->values(array(
+  'filename' => 'modules/tracker/tracker.module',
+  'name' => 'tracker',
+  'type' => 'module',
+  'owner' => '',
+  'status' => '0',
+  'throttle' => '0',
+  'bootstrap' => '0',
+  'schema_version' => '-1',
+  'weight' => '0',
+  'info' => 'a:8:{s:4:"name";s:7:"Tracker";s:11:"description";s:43:"Enables tracking of recent posts for users.";s:12:"dependencies";a:1:{i:0;s:7:"comment";}s:7:"package";s:15:"Core - optional";s:7:"version";s:8:"6.20-dev";s:4:"core";s:3:"6.x";s:10:"dependents";a:0:{}s:3:"php";s:5:"4.3.5";}',
+))
+->values(array(
+  'filename' => 'modules/translation/translation.module',
+  'name' => 'translation',
+  'type' => 'module',
+  'owner' => '',
+  'status' => '0',
+  'throttle' => '0',
+  'bootstrap' => '0',
+  'schema_version' => '-1',
+  'weight' => '0',
+  'info' => 'a:8:{s:4:"name";s:19:"Content translation";s:11:"description";s:57:"Allows content to be translated into different languages.";s:12:"dependencies";a:1:{i:0;s:6:"locale";}s:7:"package";s:15:"Core - optional";s:7:"version";s:8:"6.20-dev";s:4:"core";s:3:"6.x";s:10:"dependents";a:0:{}s:3:"php";s:5:"4.3.5";}',
+))
+->values(array(
+  'filename' => 'modules/trigger/trigger.module',
+  'name' => 'trigger',
+  'type' => 'module',
+  'owner' => '',
+  'status' => '0',
+  'throttle' => '0',
+  'bootstrap' => '0',
+  'schema_version' => '-1',
+  'weight' => '0',
+  'info' => 'a:8:{s:4:"name";s:7:"Trigger";s:11:"description";s:90:"Enables actions to be fired on certain system events, such as when new content is created.";s:7:"package";s:15:"Core - optional";s:7:"version";s:8:"6.20-dev";s:4:"core";s:3:"6.x";s:12:"dependencies";a:0:{}s:10:"dependents";a:0:{}s:3:"php";s:5:"4.3.5";}',
+))
+->values(array(
+  'filename' => 'modules/update/update.module',
+  'name' => 'update',
+  'type' => 'module',
+  'owner' => '',
+  'status' => '1',
+  'throttle' => '0',
+  'bootstrap' => '0',
+  'schema_version' => '6000',
+  'weight' => '0',
+  'info' => 'a:8:{s:4:"name";s:13:"Update status";s:11:"description";s:88:"Checks the status of available updates for Drupal and your installed modules and themes.";s:7:"version";s:8:"6.20-dev";s:7:"package";s:15:"Core - optional";s:4:"core";s:3:"6.x";s:12:"dependencies";a:0:{}s:10:"dependents";a:0:{}s:3:"php";s:5:"4.3.5";}',
+))
+->values(array(
+  'filename' => 'modules/upload/upload.module',
+  'name' => 'upload',
+  'type' => 'module',
+  'owner' => '',
+  'status' => '0',
+  'throttle' => '0',
+  'bootstrap' => '0',
+  'schema_version' => '-1',
+  'weight' => '0',
+  'info' => 'a:8:{s:4:"name";s:6:"Upload";s:11:"description";s:51:"Allows users to upload and attach files to content.";s:7:"package";s:15:"Core - optional";s:7:"version";s:8:"6.20-dev";s:4:"core";s:3:"6.x";s:12:"dependencies";a:0:{}s:10:"dependents";a:0:{}s:3:"php";s:5:"4.3.5";}',
+))
+->values(array(
+  'filename' => 'modules/user/user.module',
+  'name' => 'user',
+  'type' => 'module',
+  'owner' => '',
+  'status' => '1',
+  'throttle' => '0',
+  'bootstrap' => '0',
+  'schema_version' => '0',
+  'weight' => '0',
+  'info' => 'a:8:{s:4:"name";s:4:"User";s:11:"description";s:47:"Manages the user registration and login system.";s:7:"package";s:15:"Core - required";s:7:"version";s:8:"6.20-dev";s:4:"core";s:3:"6.x";s:12:"dependencies";a:0:{}s:10:"dependents";a:0:{}s:3:"php";s:5:"4.3.5";}',
+))
+->values(array(
+  'filename' => 'sites/all/modules/admin_menu/admin_menu.module',
+  'name' => 'admin_menu',
+  'type' => 'module',
+  'owner' => '',
+  'status' => '0',
+  'throttle' => '0',
+  'bootstrap' => '0',
+  'schema_version' => '-1',
+  'weight' => '0',
+  'info' => 'a:8:{s:4:"name";s:19:"Administration Menu";s:11:"description";s:90:"Renders a menu tree for administrative purposes as dropdown menu at the top of the window.";s:7:"package";s:14:"Administration";s:4:"core";s:3:"6.x";s:12:"dependencies";a:0:{}s:10:"dependents";a:0:{}s:7:"version";N;s:3:"php";s:5:"4.3.5";}',
+))
+->values(array(
+  'filename' => 'sites/all/modules/cck/content.module',
+  'name' => 'content',
+  'type' => 'module',
+  'owner' => '',
+  'status' => '0',
+  'throttle' => '0',
+  'bootstrap' => '0',
+  'schema_version' => '-1',
+  'weight' => '0',
+  'info' => 'a:8:{s:4:"name";s:7:"Content";s:11:"description";s:50:"Allows administrators to define new content types.";s:7:"package";s:3:"CCK";s:4:"core";s:3:"6.x";s:12:"dependencies";a:0:{}s:10:"dependents";a:0:{}s:7:"version";N;s:3:"php";s:5:"4.3.5";}',
+))
+->values(array(
+  'filename' => 'sites/all/modules/cck/modules/content_copy/content_copy.module',
+  'name' => 'content_copy',
+  'type' => 'module',
+  'owner' => '',
+  'status' => '0',
+  'throttle' => '0',
+  'bootstrap' => '0',
+  'schema_version' => '-1',
+  'weight' => '0',
+  'info' => 'a:8:{s:4:"name";s:12:"Content Copy";s:11:"description";s:51:"Enables ability to import/export field definitions.";s:12:"dependencies";a:1:{i:0;s:7:"content";}s:7:"package";s:3:"CCK";s:4:"core";s:3:"6.x";s:10:"dependents";a:0:{}s:7:"version";N;s:3:"php";s:5:"4.3.5";}',
+))
+->values(array(
+  'filename' => 'sites/all/modules/cck/modules/content_permissions/content_permissions.module',
+  'name' => 'content_permissions',
+  'type' => 'module',
+  'owner' => '',
+  'status' => '0',
+  'throttle' => '0',
+  'bootstrap' => '0',
+  'schema_version' => '-1',
+  'weight' => '0',
+  'info' => 'a:8:{s:4:"name";s:19:"Content Permissions";s:11:"description";s:43:"Set field-level permissions for CCK fields.";s:7:"package";s:3:"CCK";s:4:"core";s:3:"6.x";s:12:"dependencies";a:1:{i:0;s:7:"content";}s:10:"dependents";a:0:{}s:7:"version";N;s:3:"php";s:5:"4.3.5";}',
+))
+->values(array(
+  'filename' => 'sites/all/modules/cck/modules/fieldgroup/fieldgroup.module',
+  'name' => 'fieldgroup',
+  'type' => 'module',
+  'owner' => '',
+  'status' => '0',
+  'throttle' => '0',
+  'bootstrap' => '0',
+  'schema_version' => '-1',
+  'weight' => '0',
+  'info' => 'a:8:{s:4:"name";s:10:"Fieldgroup";s:11:"description";s:35:"Create field groups for CCK fields.";s:12:"dependencies";a:1:{i:0;s:7:"content";}s:7:"package";s:3:"CCK";s:4:"core";s:3:"6.x";s:10:"dependents";a:0:{}s:7:"version";N;s:3:"php";s:5:"4.3.5";}',
+))
+->values(array(
+  'filename' => 'sites/all/modules/cck/modules/nodereference/nodereference.module',
+  'name' => 'nodereference',
+  'type' => 'module',
+  'owner' => '',
+  'status' => '0',
+  'throttle' => '0',
+  'bootstrap' => '0',
+  'schema_version' => '-1',
+  'weight' => '0',
+  'info' => 'a:8:{s:4:"name";s:14:"Node Reference";s:11:"description";s:59:"Defines a field type for referencing one node from another.";s:12:"dependencies";a:3:{i:0;s:7:"content";i:1;s:4:"text";i:2;s:13:"optionwidgets";}s:7:"package";s:3:"CCK";s:4:"core";s:3:"6.x";s:10:"dependents";a:0:{}s:7:"version";N;s:3:"php";s:5:"4.3.5";}',
+))
+->values(array(
+  'filename' => 'sites/all/modules/cck/modules/number/number.module',
+  'name' => 'number',
+  'type' => 'module',
+  'owner' => '',
+  'status' => '0',
+  'throttle' => '0',
+  'bootstrap' => '0',
+  'schema_version' => '-1',
+  'weight' => '0',
+  'info' => 'a:8:{s:4:"name";s:6:"Number";s:11:"description";s:28:"Defines numeric field types.";s:12:"dependencies";a:1:{i:0;s:7:"content";}s:7:"package";s:3:"CCK";s:4:"core";s:3:"6.x";s:10:"dependents";a:0:{}s:7:"version";N;s:3:"php";s:5:"4.3.5";}',
+))
+->values(array(
+  'filename' => 'sites/all/modules/cck/modules/optionwidgets/optionwidgets.module',
+  'name' => 'optionwidgets',
+  'type' => 'module',
+  'owner' => '',
+  'status' => '0',
+  'throttle' => '0',
+  'bootstrap' => '0',
+  'schema_version' => '-1',
+  'weight' => '0',
+  'info' => 'a:8:{s:4:"name";s:14:"Option Widgets";s:11:"description";s:82:"Defines selection, check box and radio button widgets for text and numeric fields.";s:12:"dependencies";a:1:{i:0;s:7:"content";}s:7:"package";s:3:"CCK";s:4:"core";s:3:"6.x";s:10:"dependents";a:0:{}s:7:"version";N;s:3:"php";s:5:"4.3.5";}',
+))
+->values(array(
+  'filename' => 'sites/all/modules/cck/modules/text/text.module',
+  'name' => 'text',
+  'type' => 'module',
+  'owner' => '',
+  'status' => '0',
+  'throttle' => '0',
+  'bootstrap' => '0',
+  'schema_version' => '-1',
+  'weight' => '0',
+  'info' => 'a:8:{s:4:"name";s:4:"Text";s:11:"description";s:32:"Defines simple text field types.";s:12:"dependencies";a:1:{i:0;s:7:"content";}s:7:"package";s:3:"CCK";s:4:"core";s:3:"6.x";s:10:"dependents";a:0:{}s:7:"version";N;s:3:"php";s:5:"4.3.5";}',
+))
+->values(array(
+  'filename' => 'sites/all/modules/cck/modules/userreference/userreference.module',
+  'name' => 'userreference',
+  'type' => 'module',
+  'owner' => '',
+  'status' => '0',
+  'throttle' => '0',
+  'bootstrap' => '0',
+  'schema_version' => '-1',
+  'weight' => '0',
+  'info' => 'a:8:{s:4:"name";s:14:"User Reference";s:11:"description";s:56:"Defines a field type for referencing a user from a node.";s:12:"dependencies";a:3:{i:0;s:7:"content";i:1;s:4:"text";i:2;s:13:"optionwidgets";}s:7:"package";s:3:"CCK";s:4:"core";s:3:"6.x";s:10:"dependents";a:0:{}s:7:"version";N;s:3:"php";s:5:"4.3.5";}',
+))
+->values(array(
+  'filename' => 'sites/all/modules/devel/devel.module',
+  'name' => 'devel',
+  'type' => 'module',
+  'owner' => '',
+  'status' => '0',
+  'throttle' => '0',
+  'bootstrap' => '0',
+  'schema_version' => '-1',
+  'weight' => '0',
+  'info' => 'a:8:{s:4:"name";s:5:"Devel";s:11:"description";s:52:"Various blocks, pages, and functions for developers.";s:7:"package";s:11:"Development";s:12:"dependencies";a:1:{i:0;s:4:"menu";}s:4:"core";s:3:"6.x";s:10:"dependents";a:0:{}s:7:"version";N;s:3:"php";s:5:"4.3.5";}',
+))
+->values(array(
+  'filename' => 'sites/all/modules/devel/devel_generate.module',
+  'name' => 'devel_generate',
+  'type' => 'module',
+  'owner' => '',
+  'status' => '0',
+  'throttle' => '0',
+  'bootstrap' => '0',
+  'schema_version' => '-1',
+  'weight' => '0',
+  'info' => 'a:8:{s:4:"name";s:14:"Devel generate";s:11:"description";s:48:"Generate dummy users, nodes, and taxonomy terms.";s:7:"package";s:11:"Development";s:4:"core";s:3:"6.x";s:12:"dependencies";a:0:{}s:10:"dependents";a:0:{}s:7:"version";N;s:3:"php";s:5:"4.3.5";}',
+))
+->values(array(
+  'filename' => 'sites/all/modules/devel/devel_node_access.module',
+  'name' => 'devel_node_access',
+  'type' => 'module',
+  'owner' => '',
+  'status' => '0',
+  'throttle' => '0',
+  'bootstrap' => '0',
+  'schema_version' => '-1',
+  'weight' => '0',
+  'info' => 'a:8:{s:4:"name";s:17:"Devel node access";s:11:"description";s:67:"Developer block and page illustrating relevant node_access records.";s:7:"package";s:11:"Development";s:4:"core";s:3:"6.x";s:12:"dependencies";a:0:{}s:10:"dependents";a:0:{}s:7:"version";N;s:3:"php";s:5:"4.3.5";}',
+))
+->values(array(
+  'filename' => 'sites/all/modules/devel/devel_themer.module',
+  'name' => 'devel_themer',
+  'type' => 'module',
+  'owner' => '',
+  'status' => '0',
+  'throttle' => '0',
+  'bootstrap' => '0',
+  'schema_version' => '-1',
+  'weight' => '0',
+  'info' => 'a:8:{s:4:"name";s:15:"Theme developer";s:11:"description";s:52:"Essential theme API information for theme developers";s:7:"package";s:11:"Development";s:12:"dependencies";a:1:{i:0;s:5:"devel";}s:4:"core";s:3:"6.x";s:10:"dependents";a:0:{}s:7:"version";N;s:3:"php";s:5:"4.3.5";}',
+))
+->values(array(
+  'filename' => 'sites/all/modules/devel/macro.module',
+  'name' => 'macro',
+  'type' => 'module',
+  'owner' => '',
+  'status' => '0',
+  'throttle' => '0',
+  'bootstrap' => '0',
+  'schema_version' => '-1',
+  'weight' => '0',
+  'info' => 'a:8:{s:4:"name";s:5:"Macro";s:11:"description";s:62:"Allows administrators to record and playback form submissions.";s:7:"package";s:11:"Development";s:4:"core";s:3:"6.x";s:12:"dependencies";a:0:{}s:10:"dependents";a:0:{}s:7:"version";N;s:3:"php";s:5:"4.3.5";}',
+))
+->values(array(
+  'filename' => 'sites/all/modules/devel/performance/performance.module',
+  'name' => 'performance',
+  'type' => 'module',
+  'owner' => '',
+  'status' => '0',
+  'throttle' => '0',
+  'bootstrap' => '0',
+  'schema_version' => '-1',
+  'weight' => '0',
+  'info' => 'a:8:{s:4:"name";s:19:"Performance Logging";s:11:"description";s:91:"Logs detailed and/or summary page generation time and memory consumption for page requests.";s:7:"package";s:11:"Development";s:4:"core";s:3:"6.x";s:12:"dependencies";a:0:{}s:10:"dependents";a:0:{}s:7:"version";N;s:3:"php";s:5:"4.3.5";}',
+))
+->values(array(
+  'filename' => 'sites/all/modules/drush_extras/drush_extras.module',
+  'name' => 'drush_extras',
+  'type' => 'module',
+  'owner' => '',
+  'status' => '0',
+  'throttle' => '0',
+  'bootstrap' => '0',
+  'schema_version' => '-1',
+  'weight' => '0',
+  'info' => 'a:9:{s:4:"name";s:12:"Drush extras";s:11:"description";s:43:"Useful Drush commands. Requires Drush core.";s:7:"package";s:11:"Development";s:4:"core";s:3:"7.x";s:5:"files";a:7:{i:0;s:19:"drush_extras.module";i:1;s:12:"pm.drush.inc";i:2;s:16:"pm_cvs.drush.inc";i:3;s:16:"pm_svn.drush.inc";i:4;s:20:"simpletest.drush.inc";i:5;s:13:"sql.drush.inc";i:6;s:15:"tools.drush.inc";}s:12:"dependencies";a:0:{}s:10:"dependents";a:0:{}s:7:"version";N;s:3:"php";s:5:"4.3.5";}',
+))
+->values(array(
+  'filename' => 'sites/all/modules/mymap/mymap.module',
+  'name' => 'mymap',
+  'type' => 'module',
+  'owner' => '',
+  'status' => '0',
+  'throttle' => '0',
+  'bootstrap' => '0',
+  'schema_version' => '-1',
+  'weight' => '0',
+  'info' => 'a:7:{s:4:"name";s:6:"My Map";s:11:"description";s:36:"Allows any node to have a Google map";s:4:"core";s:3:"6.x";s:12:"dependencies";a:0:{}s:10:"dependents";a:0:{}s:7:"version";N;s:3:"php";s:5:"4.3.5";}',
+))
+->values(array(
+  'filename' => 'sites/all/modules/plugin_manager.module',
+  'name' => 'plugin_manager',
+  'type' => 'module',
+  'owner' => '',
+  'status' => '0',
+  'throttle' => '0',
+  'bootstrap' => '0',
+  'schema_version' => '-1',
+  'weight' => '0',
+  'info' => 'a:8:{s:4:"name";s:14:"Plugin Manager";s:11:"description";s:72:"Enables the automated installation of modules and themes from drupal.org";s:4:"core";s:3:"6.x";s:3:"php";s:1:"5";s:7:"package";s:14:"Administration";s:12:"dependencies";a:0:{}s:10:"dependents";a:0:{}s:7:"version";N;}',
+))
+->values(array(
+  'filename' => 'sites/all/modules/schema/schema.module',
+  'name' => 'schema',
+  'type' => 'module',
+  'owner' => '',
+  'status' => '0',
+  'throttle' => '0',
+  'bootstrap' => '0',
+  'schema_version' => '-1',
+  'weight' => '0',
+  'info' => 'a:8:{s:4:"name";s:6:"Schema";s:11:"description";s:65:"The Schema module provides functionality built on the Schema API.";s:7:"package";s:8:"Database";s:4:"core";s:3:"6.x";s:12:"dependencies";a:0:{}s:10:"dependents";a:0:{}s:7:"version";N;s:3:"php";s:5:"4.3.5";}',
+))
+->values(array(
+  'filename' => 'sites/all/modules/views/views.module',
+  'name' => 'views',
+  'type' => 'module',
+  'owner' => '',
+  'status' => '0',
+  'throttle' => '0',
+  'bootstrap' => '0',
+  'schema_version' => '-1',
+  'weight' => '0',
+  'info' => 'a:8:{s:4:"name";s:5:"Views";s:11:"description";s:55:"Create customized lists and queries from your database.";s:7:"package";s:5:"Views";s:4:"core";s:3:"6.x";s:12:"dependencies";a:0:{}s:10:"dependents";a:0:{}s:7:"version";N;s:3:"php";s:5:"4.3.5";}',
+))
+->values(array(
+  'filename' => 'sites/all/modules/views/views_export/views_export.module',
+  'name' => 'views_export',
+  'type' => 'module',
+  'owner' => '',
+  'status' => '0',
+  'throttle' => '0',
+  'bootstrap' => '0',
+  'schema_version' => '-1',
+  'weight' => '0',
+  'info' => 'a:8:{s:4:"name";s:14:"Views exporter";s:11:"description";s:40:"Allows exporting multiple views at once.";s:7:"package";s:5:"Views";s:12:"dependencies";a:1:{i:0;s:5:"views";}s:4:"core";s:3:"6.x";s:10:"dependents";a:0:{}s:7:"version";N;s:3:"php";s:5:"4.3.5";}',
+))
+->values(array(
+  'filename' => 'sites/all/modules/views/views_ui.module',
+  'name' => 'views_ui',
+  'type' => 'module',
+  'owner' => '',
+  'status' => '0',
+  'throttle' => '0',
+  'bootstrap' => '0',
+  'schema_version' => '-1',
+  'weight' => '0',
+  'info' => 'a:8:{s:4:"name";s:8:"Views UI";s:11:"description";s:93:"Administrative interface to views. Without this module, you cannot create or edit your views.";s:7:"package";s:5:"Views";s:4:"core";s:3:"6.x";s:12:"dependencies";a:1:{i:0;s:5:"views";}s:10:"dependents";a:0:{}s:7:"version";N;s:3:"php";s:5:"4.3.5";}',
+))
+->values(array(
+  'filename' => 'themes/bluemarine/bluemarine.info',
+  'name' => 'bluemarine',
+  'type' => 'theme',
+  'owner' => 'themes/engines/phptemplate/phptemplate.engine',
+  'status' => '0',
+  'throttle' => '0',
+  'bootstrap' => '0',
+  'schema_version' => '-1',
+  'weight' => '0',
+  'info' => 'a:11:{s:4:"name";s:10:"Bluemarine";s:11:"description";s:66:"Table-based multi-column theme with a marine and ash color scheme.";s:7:"version";s:8:"6.20-dev";s:4:"core";s:3:"6.x";s:6:"engine";s:11:"phptemplate";s:7:"regions";a:5:{s:4:"left";s:12:"Left sidebar";s:5:"right";s:13:"Right sidebar";s:7:"content";s:7:"Content";s:6:"header";s:6:"Header";s:6:"footer";s:6:"Footer";}s:8:"features";a:10:{i:0;s:20:"comment_user_picture";i:1;s:7:"favicon";i:2;s:7:"mission";i:3;s:4:"logo";i:4;s:4:"name";i:5;s:17:"node_user_picture";i:6;s:6:"search";i:7;s:6:"slogan";i:8;s:13:"primary_links";i:9;s:15:"secondary_links";}s:11:"stylesheets";a:1:{s:3:"all";a:1:{s:9:"style.css";s:27:"themes/bluemarine/style.css";}}s:7:"scripts";a:1:{s:9:"script.js";s:27:"themes/bluemarine/script.js";}s:10:"screenshot";s:32:"themes/bluemarine/screenshot.png";s:3:"php";s:5:"4.3.5";}',
+))
+->values(array(
+  'filename' => 'themes/chameleon/chameleon.info',
+  'name' => 'chameleon',
+  'type' => 'theme',
+  'owner' => 'themes/chameleon/chameleon.theme',
+  'status' => '0',
+  'throttle' => '0',
+  'bootstrap' => '0',
+  'schema_version' => '-1',
+  'weight' => '0',
+  'info' => 'a:10:{s:4:"name";s:9:"Chameleon";s:11:"description";s:42:"Minimalist tabled theme with light colors.";s:7:"regions";a:2:{s:4:"left";s:12:"Left sidebar";s:5:"right";s:13:"Right sidebar";}s:8:"features";a:4:{i:0;s:4:"logo";i:1;s:7:"favicon";i:2;s:4:"name";i:3;s:6:"slogan";}s:11:"stylesheets";a:1:{s:3:"all";a:2:{s:9:"style.css";s:26:"themes/chameleon/style.css";s:10:"common.css";s:27:"themes/chameleon/common.css";}}s:7:"version";s:8:"6.20-dev";s:4:"core";s:3:"6.x";s:7:"scripts";a:1:{s:9:"script.js";s:26:"themes/chameleon/script.js";}s:10:"screenshot";s:31:"themes/chameleon/screenshot.png";s:3:"php";s:5:"4.3.5";}',
+))
+->values(array(
+  'filename' => 'themes/chameleon/marvin/marvin.info',
+  'name' => 'marvin',
+  'type' => 'theme',
+  'owner' => '',
+  'status' => '0',
+  'throttle' => '0',
+  'bootstrap' => '0',
+  'schema_version' => '-1',
+  'weight' => '0',
+  'info' => 'a:11:{s:4:"name";s:6:"Marvin";s:11:"description";s:31:"Boxy tabled theme in all grays.";s:7:"regions";a:2:{s:4:"left";s:12:"Left sidebar";s:5:"right";s:13:"Right sidebar";}s:7:"version";s:8:"6.20-dev";s:4:"core";s:3:"6.x";s:10:"base theme";s:9:"chameleon";s:8:"features";a:10:{i:0;s:20:"comment_user_picture";i:1;s:7:"favicon";i:2;s:7:"mission";i:3;s:4:"logo";i:4;s:4:"name";i:5;s:17:"node_user_picture";i:6;s:6:"search";i:7;s:6:"slogan";i:8;s:13:"primary_links";i:9;s:15:"secondary_links";}s:11:"stylesheets";a:1:{s:3:"all";a:1:{s:9:"style.css";s:33:"themes/chameleon/marvin/style.css";}}s:7:"scripts";a:1:{s:9:"script.js";s:33:"themes/chameleon/marvin/script.js";}s:10:"screenshot";s:38:"themes/chameleon/marvin/screenshot.png";s:3:"php";s:5:"4.3.5";}',
+))
+->values(array(
+  'filename' => 'themes/garland/garland.info',
+  'name' => 'garland',
+  'type' => 'theme',
+  'owner' => 'themes/engines/phptemplate/phptemplate.engine',
+  'status' => '1',
+  'throttle' => '0',
+  'bootstrap' => '0',
+  'schema_version' => '-1',
+  'weight' => '0',
+  'info' => 'a:11:{s:4:"name";s:7:"Garland";s:11:"description";s:66:"Tableless, recolorable, multi-column, fluid width theme (default).";s:7:"version";s:8:"6.20-dev";s:4:"core";s:3:"6.x";s:6:"engine";s:11:"phptemplate";s:11:"stylesheets";a:2:{s:3:"all";a:1:{s:9:"style.css";s:24:"themes/garland/style.css";}s:5:"print";a:1:{s:9:"print.css";s:24:"themes/garland/print.css";}}s:7:"regions";a:5:{s:4:"left";s:12:"Left sidebar";s:5:"right";s:13:"Right sidebar";s:7:"content";s:7:"Content";s:6:"header";s:6:"Header";s:6:"footer";s:6:"Footer";}s:8:"features";a:10:{i:0;s:20:"comment_user_picture";i:1;s:7:"favicon";i:2;s:7:"mission";i:3;s:4:"logo";i:4;s:4:"name";i:5;s:17:"node_user_picture";i:6;s:6:"search";i:7;s:6:"slogan";i:8;s:13:"primary_links";i:9;s:15:"secondary_links";}s:7:"scripts";a:1:{s:9:"script.js";s:24:"themes/garland/script.js";}s:10:"screenshot";s:29:"themes/garland/screenshot.png";s:3:"php";s:5:"4.3.5";}',
+))
+->values(array(
+  'filename' => 'themes/garland/minnelli/minnelli.info',
+  'name' => 'minnelli',
+  'type' => 'theme',
+  'owner' => 'themes/engines/phptemplate/phptemplate.engine',
+  'status' => '0',
+  'throttle' => '0',
+  'bootstrap' => '0',
+  'schema_version' => '-1',
+  'weight' => '0',
+  'info' => 'a:12:{s:4:"name";s:8:"Minnelli";s:11:"description";s:56:"Tableless, recolorable, multi-column, fixed width theme.";s:7:"version";s:8:"6.20-dev";s:4:"core";s:3:"6.x";s:10:"base theme";s:7:"garland";s:11:"stylesheets";a:1:{s:3:"all";a:1:{s:12:"minnelli.css";s:36:"themes/garland/minnelli/minnelli.css";}}s:7:"regions";a:5:{s:4:"left";s:12:"Left sidebar";s:5:"right";s:13:"Right sidebar";s:7:"content";s:7:"Content";s:6:"header";s:6:"Header";s:6:"footer";s:6:"Footer";}s:8:"features";a:10:{i:0;s:20:"comment_user_picture";i:1;s:7:"favicon";i:2;s:7:"mission";i:3;s:4:"logo";i:4;s:4:"name";i:5;s:17:"node_user_picture";i:6;s:6:"search";i:7;s:6:"slogan";i:8;s:13:"primary_links";i:9;s:15:"secondary_links";}s:7:"scripts";a:1:{s:9:"script.js";s:33:"themes/garland/minnelli/script.js";}s:10:"screenshot";s:38:"themes/garland/minnelli/screenshot.png";s:3:"php";s:5:"4.3.5";s:6:"engine";s:11:"phptemplate";}',
+))
+->values(array(
+  'filename' => 'themes/pushbutton/pushbutton.info',
+  'name' => 'pushbutton',
+  'type' => 'theme',
+  'owner' => 'themes/engines/phptemplate/phptemplate.engine',
+  'status' => '0',
+  'throttle' => '0',
+  'bootstrap' => '0',
+  'schema_version' => '-1',
+  'weight' => '0',
+  'info' => 'a:11:{s:4:"name";s:10:"Pushbutton";s:11:"description";s:52:"Tabled, multi-column theme in blue and orange tones.";s:7:"version";s:8:"6.20-dev";s:4:"core";s:3:"6.x";s:6:"engine";s:11:"phptemplate";s:7:"regions";a:5:{s:4:"left";s:12:"Left sidebar";s:5:"right";s:13:"Right sidebar";s:7:"content";s:7:"Content";s:6:"header";s:6:"Header";s:6:"footer";s:6:"Footer";}s:8:"features";a:10:{i:0;s:20:"comment_user_picture";i:1;s:7:"favicon";i:2;s:7:"mission";i:3;s:4:"logo";i:4;s:4:"name";i:5;s:17:"node_user_picture";i:6;s:6:"search";i:7;s:6:"slogan";i:8;s:13:"primary_links";i:9;s:15:"secondary_links";}s:11:"stylesheets";a:1:{s:3:"all";a:1:{s:9:"style.css";s:27:"themes/pushbutton/style.css";}}s:7:"scripts";a:1:{s:9:"script.js";s:27:"themes/pushbutton/script.js";}s:10:"screenshot";s:32:"themes/pushbutton/screenshot.png";s:3:"php";s:5:"4.3.5";}',
+))
+->execute();
+
+db_create_table('term_data', array(
+  'fields' => array(
+    'tid' => array(
+      'type' => 'serial',
+      'unsigned' => TRUE,
+      'not null' => TRUE,
+    ),
+    'vid' => array(
+      'type' => 'int',
+      'unsigned' => TRUE,
+      'not null' => TRUE,
+      'default' => 0,
+    ),
+    'name' => array(
+      'type' => 'varchar',
+      'length' => 255,
+      'not null' => TRUE,
+      'default' => '',
+    ),
+    'description' => array(
+      'type' => 'text',
+      'not null' => FALSE,
+      'size' => 'big',
+    ),
+    'weight' => array(
+      'type' => 'int',
+      'not null' => TRUE,
+      'default' => 0,
+      'size' => 'tiny',
+    ),
+  ),
+  'primary key' => array(
+    'tid',
+  ),
+  'indexes' => array(
+    'taxonomy_tree' => array(
+      'vid',
+      'weight',
+      'name',
+    ),
+    'vid_name' => array(
+      'vid',
+      'name',
+    ),
+  ),
+  'module' => 'taxonomy',
+  'name' => 'term_data',
+));
+db_insert('term_data')->fields(array(
+  'tid',
+  'vid',
+  'name',
+  'description',
+  'weight',
+))
+->values(array(
+  'tid' => '1',
+  'vid' => '1',
+  'name' => 'term 1 of vocabulary 1 (j=0)',
+  'description' => 'description of term 1 of vocabulary 1 (j=0)',
+  'weight' => '0',
+))
+->values(array(
+  'tid' => '2',
+  'vid' => '2',
+  'name' => 'term 2 of vocabulary 2 (j=0)',
+  'description' => 'description of term 2 of vocabulary 2 (j=0)',
+  'weight' => '3',
+))
+->values(array(
+  'tid' => '3',
+  'vid' => '2',
+  'name' => 'term 3 of vocabulary 2 (j=1)',
+  'description' => 'description of term 3 of vocabulary 2 (j=1)',
+  'weight' => '4',
+))
+->values(array(
+  'tid' => '4',
+  'vid' => '3',
+  'name' => 'term 4 of vocabulary 3 (j=0)',
+  'description' => 'description of term 4 of vocabulary 3 (j=0)',
+  'weight' => '6',
+))
+->values(array(
+  'tid' => '5',
+  'vid' => '3',
+  'name' => 'term 5 of vocabulary 3 (j=1)',
+  'description' => 'description of term 5 of vocabulary 3 (j=1)',
+  'weight' => '7',
+))
+->values(array(
+  'tid' => '6',
+  'vid' => '3',
+  'name' => 'term 6 of vocabulary 3 (j=2)',
+  'description' => 'description of term 6 of vocabulary 3 (j=2)',
+  'weight' => '8',
+))
+->values(array(
+  'tid' => '7',
+  'vid' => '4',
+  'name' => 'term 7 of vocabulary 4 (j=0)',
+  'description' => 'description of term 7 of vocabulary 4 (j=0)',
+  'weight' => '9',
+))
+->values(array(
+  'tid' => '8',
+  'vid' => '5',
+  'name' => 'term 8 of vocabulary 5 (j=0)',
+  'description' => 'description of term 8 of vocabulary 5 (j=0)',
+  'weight' => '12',
+))
+->values(array(
+  'tid' => '9',
+  'vid' => '5',
+  'name' => 'term 9 of vocabulary 5 (j=1)',
+  'description' => 'description of term 9 of vocabulary 5 (j=1)',
+  'weight' => '13',
+))
+->values(array(
+  'tid' => '10',
+  'vid' => '6',
+  'name' => 'term 10 of vocabulary 6 (j=0)',
+  'description' => 'description of term 10 of vocabulary 6 (j=0)',
+  'weight' => '15',
+))
+->values(array(
+  'tid' => '11',
+  'vid' => '6',
+  'name' => 'term 11 of vocabulary 6 (j=1)',
+  'description' => 'description of term 11 of vocabulary 6 (j=1)',
+  'weight' => '16',
+))
+->values(array(
+  'tid' => '12',
+  'vid' => '6',
+  'name' => 'term 12 of vocabulary 6 (j=2)',
+  'description' => 'description of term 12 of vocabulary 6 (j=2)',
+  'weight' => '17',
+))
+->values(array(
+  'tid' => '13',
+  'vid' => '7',
+  'name' => 'term 13 of vocabulary 7 (j=0)',
+  'description' => 'description of term 13 of vocabulary 7 (j=0)',
+  'weight' => '18',
+))
+->values(array(
+  'tid' => '14',
+  'vid' => '8',
+  'name' => 'term 14 of vocabulary 8 (j=0)',
+  'description' => 'description of term 14 of vocabulary 8 (j=0)',
+  'weight' => '21',
+))
+->values(array(
+  'tid' => '15',
+  'vid' => '8',
+  'name' => 'term 15 of vocabulary 8 (j=1)',
+  'description' => 'description of term 15 of vocabulary 8 (j=1)',
+  'weight' => '22',
+))
+->values(array(
+  'tid' => '16',
+  'vid' => '9',
+  'name' => 'term 16 of vocabulary 9 (j=0)',
+  'description' => 'description of term 16 of vocabulary 9 (j=0)',
+  'weight' => '24',
+))
+->values(array(
+  'tid' => '17',
+  'vid' => '9',
+  'name' => 'term 17 of vocabulary 9 (j=1)',
+  'description' => 'description of term 17 of vocabulary 9 (j=1)',
+  'weight' => '25',
+))
+->values(array(
+  'tid' => '18',
+  'vid' => '9',
+  'name' => 'term 18 of vocabulary 9 (j=2)',
+  'description' => 'description of term 18 of vocabulary 9 (j=2)',
+  'weight' => '26',
+))
+->values(array(
+  'tid' => '19',
+  'vid' => '10',
+  'name' => 'term 19 of vocabulary 10 (j=0)',
+  'description' => 'description of term 19 of vocabulary 10 (j=0)',
+  'weight' => '27',
+))
+->values(array(
+  'tid' => '20',
+  'vid' => '11',
+  'name' => 'term 20 of vocabulary 11 (j=0)',
+  'description' => 'description of term 20 of vocabulary 11 (j=0)',
+  'weight' => '30',
+))
+->values(array(
+  'tid' => '21',
+  'vid' => '11',
+  'name' => 'term 21 of vocabulary 11 (j=1)',
+  'description' => 'description of term 21 of vocabulary 11 (j=1)',
+  'weight' => '31',
+))
+->values(array(
+  'tid' => '22',
+  'vid' => '12',
+  'name' => 'term 22 of vocabulary 12 (j=0)',
+  'description' => 'description of term 22 of vocabulary 12 (j=0)',
+  'weight' => '33',
+))
+->values(array(
+  'tid' => '23',
+  'vid' => '12',
+  'name' => 'term 23 of vocabulary 12 (j=1)',
+  'description' => 'description of term 23 of vocabulary 12 (j=1)',
+  'weight' => '34',
+))
+->values(array(
+  'tid' => '24',
+  'vid' => '12',
+  'name' => 'term 24 of vocabulary 12 (j=2)',
+  'description' => 'description of term 24 of vocabulary 12 (j=2)',
+  'weight' => '35',
+))
+->values(array(
+  'tid' => '25',
+  'vid' => '13',
+  'name' => 'term 25 of vocabulary 13 (j=0)',
+  'description' => 'description of term 25 of vocabulary 13 (j=0)',
+  'weight' => '36',
+))
+->values(array(
+  'tid' => '26',
+  'vid' => '14',
+  'name' => 'term 26 of vocabulary 14 (j=0)',
+  'description' => 'description of term 26 of vocabulary 14 (j=0)',
+  'weight' => '39',
+))
+->values(array(
+  'tid' => '27',
+  'vid' => '14',
+  'name' => 'term 27 of vocabulary 14 (j=1)',
+  'description' => 'description of term 27 of vocabulary 14 (j=1)',
+  'weight' => '40',
+))
+->values(array(
+  'tid' => '28',
+  'vid' => '15',
+  'name' => 'term 28 of vocabulary 15 (j=0)',
+  'description' => 'description of term 28 of vocabulary 15 (j=0)',
+  'weight' => '42',
+))
+->values(array(
+  'tid' => '29',
+  'vid' => '15',
+  'name' => 'term 29 of vocabulary 15 (j=1)',
+  'description' => 'description of term 29 of vocabulary 15 (j=1)',
+  'weight' => '43',
+))
+->values(array(
+  'tid' => '30',
+  'vid' => '15',
+  'name' => 'term 30 of vocabulary 15 (j=2)',
+  'description' => 'description of term 30 of vocabulary 15 (j=2)',
+  'weight' => '44',
+))
+->values(array(
+  'tid' => '31',
+  'vid' => '16',
+  'name' => 'term 31 of vocabulary 16 (j=0)',
+  'description' => 'description of term 31 of vocabulary 16 (j=0)',
+  'weight' => '45',
+))
+->values(array(
+  'tid' => '32',
+  'vid' => '17',
+  'name' => 'term 32 of vocabulary 17 (j=0)',
+  'description' => 'description of term 32 of vocabulary 17 (j=0)',
+  'weight' => '48',
+))
+->values(array(
+  'tid' => '33',
+  'vid' => '17',
+  'name' => 'term 33 of vocabulary 17 (j=1)',
+  'description' => 'description of term 33 of vocabulary 17 (j=1)',
+  'weight' => '49',
+))
+->values(array(
+  'tid' => '34',
+  'vid' => '18',
+  'name' => 'term 34 of vocabulary 18 (j=0)',
+  'description' => 'description of term 34 of vocabulary 18 (j=0)',
+  'weight' => '51',
+))
+->values(array(
+  'tid' => '35',
+  'vid' => '18',
+  'name' => 'term 35 of vocabulary 18 (j=1)',
+  'description' => 'description of term 35 of vocabulary 18 (j=1)',
+  'weight' => '52',
+))
+->values(array(
+  'tid' => '36',
+  'vid' => '18',
+  'name' => 'term 36 of vocabulary 18 (j=2)',
+  'description' => 'description of term 36 of vocabulary 18 (j=2)',
+  'weight' => '53',
+))
+->values(array(
+  'tid' => '37',
+  'vid' => '19',
+  'name' => 'term 37 of vocabulary 19 (j=0)',
+  'description' => 'description of term 37 of vocabulary 19 (j=0)',
+  'weight' => '54',
+))
+->values(array(
+  'tid' => '38',
+  'vid' => '20',
+  'name' => 'term 38 of vocabulary 20 (j=0)',
+  'description' => 'description of term 38 of vocabulary 20 (j=0)',
+  'weight' => '57',
+))
+->values(array(
+  'tid' => '39',
+  'vid' => '20',
+  'name' => 'term 39 of vocabulary 20 (j=1)',
+  'description' => 'description of term 39 of vocabulary 20 (j=1)',
+  'weight' => '58',
+))
+->values(array(
+  'tid' => '40',
+  'vid' => '21',
+  'name' => 'term 40 of vocabulary 21 (j=0)',
+  'description' => 'description of term 40 of vocabulary 21 (j=0)',
+  'weight' => '60',
+))
+->values(array(
+  'tid' => '41',
+  'vid' => '21',
+  'name' => 'term 41 of vocabulary 21 (j=1)',
+  'description' => 'description of term 41 of vocabulary 21 (j=1)',
+  'weight' => '61',
+))
+->values(array(
+  'tid' => '42',
+  'vid' => '21',
+  'name' => 'term 42 of vocabulary 21 (j=2)',
+  'description' => 'description of term 42 of vocabulary 21 (j=2)',
+  'weight' => '62',
+))
+->values(array(
+  'tid' => '43',
+  'vid' => '22',
+  'name' => 'term 43 of vocabulary 22 (j=0)',
+  'description' => 'description of term 43 of vocabulary 22 (j=0)',
+  'weight' => '63',
+))
+->values(array(
+  'tid' => '44',
+  'vid' => '23',
+  'name' => 'term 44 of vocabulary 23 (j=0)',
+  'description' => 'description of term 44 of vocabulary 23 (j=0)',
+  'weight' => '66',
+))
+->values(array(
+  'tid' => '45',
+  'vid' => '23',
+  'name' => 'term 45 of vocabulary 23 (j=1)',
+  'description' => 'description of term 45 of vocabulary 23 (j=1)',
+  'weight' => '67',
+))
+->values(array(
+  'tid' => '46',
+  'vid' => '24',
+  'name' => 'term 46 of vocabulary 24 (j=0)',
+  'description' => 'description of term 46 of vocabulary 24 (j=0)',
+  'weight' => '69',
+))
+->values(array(
+  'tid' => '47',
+  'vid' => '24',
+  'name' => 'term 47 of vocabulary 24 (j=1)',
+  'description' => 'description of term 47 of vocabulary 24 (j=1)',
+  'weight' => '70',
+))
+->values(array(
+  'tid' => '48',
+  'vid' => '24',
+  'name' => 'term 48 of vocabulary 24 (j=2)',
+  'description' => 'description of term 48 of vocabulary 24 (j=2)',
+  'weight' => '71',
+))
+->execute();
+
+db_create_table('term_hierarchy', array(
+  'fields' => array(
+    'tid' => array(
+      'type' => 'int',
+      'unsigned' => TRUE,
+      'not null' => TRUE,
+      'default' => 0,
+    ),
+    'parent' => array(
+      'type' => 'int',
+      'unsigned' => TRUE,
+      'not null' => TRUE,
+      'default' => 0,
+    ),
+  ),
+  'indexes' => array(
+    'parent' => array(
+      'parent',
+    ),
+  ),
+  'primary key' => array(
+    'tid',
+    'parent',
+  ),
+  'module' => 'taxonomy',
+  'name' => 'term_hierarchy',
+));
+db_insert('term_hierarchy')->fields(array(
+  'tid',
+  'parent',
+))
+->values(array(
+  'tid' => '1',
+  'parent' => '0',
+))
+->values(array(
+  'tid' => '2',
+  'parent' => '0',
+))
+->values(array(
+  'tid' => '4',
+  'parent' => '0',
+))
+->values(array(
+  'tid' => '7',
+  'parent' => '0',
+))
+->values(array(
+  'tid' => '8',
+  'parent' => '0',
+))
+->values(array(
+  'tid' => '10',
+  'parent' => '0',
+))
+->values(array(
+  'tid' => '13',
+  'parent' => '0',
+))
+->values(array(
+  'tid' => '14',
+  'parent' => '0',
+))
+->values(array(
+  'tid' => '16',
+  'parent' => '0',
+))
+->values(array(
+  'tid' => '19',
+  'parent' => '0',
+))
+->values(array(
+  'tid' => '20',
+  'parent' => '0',
+))
+->values(array(
+  'tid' => '22',
+  'parent' => '0',
+))
+->values(array(
+  'tid' => '25',
+  'parent' => '0',
+))
+->values(array(
+  'tid' => '26',
+  'parent' => '0',
+))
+->values(array(
+  'tid' => '28',
+  'parent' => '0',
+))
+->values(array(
+  'tid' => '31',
+  'parent' => '0',
+))
+->values(array(
+  'tid' => '32',
+  'parent' => '0',
+))
+->values(array(
+  'tid' => '34',
+  'parent' => '0',
+))
+->values(array(
+  'tid' => '37',
+  'parent' => '0',
+))
+->values(array(
+  'tid' => '38',
+  'parent' => '0',
+))
+->values(array(
+  'tid' => '40',
+  'parent' => '0',
+))
+->values(array(
+  'tid' => '43',
+  'parent' => '0',
+))
+->values(array(
+  'tid' => '44',
+  'parent' => '0',
+))
+->values(array(
+  'tid' => '46',
+  'parent' => '0',
+))
+->values(array(
+  'tid' => '3',
+  'parent' => '2',
+))
+->values(array(
+  'tid' => '5',
+  'parent' => '4',
+))
+->values(array(
+  'tid' => '6',
+  'parent' => '4',
+))
+->values(array(
+  'tid' => '6',
+  'parent' => '5',
+))
+->values(array(
+  'tid' => '9',
+  'parent' => '8',
+))
+->values(array(
+  'tid' => '11',
+  'parent' => '10',
+))
+->values(array(
+  'tid' => '12',
+  'parent' => '10',
+))
+->values(array(
+  'tid' => '12',
+  'parent' => '11',
+))
+->values(array(
+  'tid' => '15',
+  'parent' => '14',
+))
+->values(array(
+  'tid' => '17',
+  'parent' => '16',
+))
+->values(array(
+  'tid' => '18',
+  'parent' => '16',
+))
+->values(array(
+  'tid' => '18',
+  'parent' => '17',
+))
+->values(array(
+  'tid' => '21',
+  'parent' => '20',
+))
+->values(array(
+  'tid' => '23',
+  'parent' => '22',
+))
+->values(array(
+  'tid' => '24',
+  'parent' => '22',
+))
+->values(array(
+  'tid' => '24',
+  'parent' => '23',
+))
+->values(array(
+  'tid' => '27',
+  'parent' => '26',
+))
+->values(array(
+  'tid' => '29',
+  'parent' => '28',
+))
+->values(array(
+  'tid' => '30',
+  'parent' => '28',
+))
+->values(array(
+  'tid' => '30',
+  'parent' => '29',
+))
+->values(array(
+  'tid' => '33',
+  'parent' => '32',
+))
+->values(array(
+  'tid' => '35',
+  'parent' => '34',
+))
+->values(array(
+  'tid' => '36',
+  'parent' => '34',
+))
+->values(array(
+  'tid' => '36',
+  'parent' => '35',
+))
+->values(array(
+  'tid' => '39',
+  'parent' => '38',
+))
+->values(array(
+  'tid' => '41',
+  'parent' => '40',
+))
+->values(array(
+  'tid' => '42',
+  'parent' => '40',
+))
+->values(array(
+  'tid' => '42',
+  'parent' => '41',
+))
+->values(array(
+  'tid' => '45',
+  'parent' => '44',
+))
+->values(array(
+  'tid' => '47',
+  'parent' => '46',
+))
+->values(array(
+  'tid' => '48',
+  'parent' => '46',
+))
+->values(array(
+  'tid' => '48',
+  'parent' => '47',
+))
+->execute();
+
+db_create_table('term_node', array(
+  'fields' => array(
+    'nid' => array(
+      'type' => 'int',
+      'unsigned' => TRUE,
+      'not null' => TRUE,
+      'default' => 0,
+    ),
+    'vid' => array(
+      'type' => 'int',
+      'unsigned' => TRUE,
+      'not null' => TRUE,
+      'default' => 0,
+    ),
+    'tid' => array(
+      'type' => 'int',
+      'unsigned' => TRUE,
+      'not null' => TRUE,
+      'default' => 0,
+    ),
+  ),
+  'indexes' => array(
+    'vid' => array(
+      'vid',
+    ),
+    'nid' => array(
+      'nid',
+    ),
+  ),
+  'primary key' => array(
+    'tid',
+    'vid',
+  ),
+  'module' => 'taxonomy',
+  'name' => 'term_node',
+));
+db_insert('term_node')->fields(array(
+  'nid',
+  'vid',
+  'tid',
+))
+->values(array(
+  'nid' => '1',
+  'vid' => '1',
+  'tid' => '0',
+))
+->values(array(
+  'nid' => '1',
+  'vid' => '1',
+  'tid' => '1',
+))
+->values(array(
+  'nid' => '1',
+  'vid' => '2',
+  'tid' => '2',
+))
+->values(array(
+  'nid' => '1',
+  'vid' => '2',
+  'tid' => '3',
+))
+->values(array(
+  'nid' => '1',
+  'vid' => '2',
+  'tid' => '4',
+))
+->values(array(
+  'nid' => '1',
+  'vid' => '2',
+  'tid' => '5',
+))
+->values(array(
+  'nid' => '1',
+  'vid' => '2',
+  'tid' => '6',
+))
+->values(array(
+  'nid' => '1',
+  'vid' => '2',
+  'tid' => '7',
+))
+->values(array(
+  'nid' => '1',
+  'vid' => '2',
+  'tid' => '8',
+))
+->values(array(
+  'nid' => '1',
+  'vid' => '2',
+  'tid' => '9',
+))
+->values(array(
+  'nid' => '1',
+  'vid' => '2',
+  'tid' => '10',
+))
+->values(array(
+  'nid' => '1',
+  'vid' => '2',
+  'tid' => '11',
+))
+->values(array(
+  'nid' => '1',
+  'vid' => '2',
+  'tid' => '12',
+))
+->values(array(
+  'nid' => '1',
+  'vid' => '2',
+  'tid' => '13',
+))
+->values(array(
+  'nid' => '1',
+  'vid' => '2',
+  'tid' => '14',
+))
+->values(array(
+  'nid' => '1',
+  'vid' => '2',
+  'tid' => '15',
+))
+->values(array(
+  'nid' => '1',
+  'vid' => '2',
+  'tid' => '16',
+))
+->values(array(
+  'nid' => '1',
+  'vid' => '2',
+  'tid' => '17',
+))
+->values(array(
+  'nid' => '1',
+  'vid' => '2',
+  'tid' => '18',
+))
+->values(array(
+  'nid' => '1',
+  'vid' => '2',
+  'tid' => '19',
+))
+->values(array(
+  'nid' => '1',
+  'vid' => '2',
+  'tid' => '20',
+))
+->values(array(
+  'nid' => '1',
+  'vid' => '2',
+  'tid' => '21',
+))
+->values(array(
+  'nid' => '1',
+  'vid' => '2',
+  'tid' => '22',
+))
+->values(array(
+  'nid' => '1',
+  'vid' => '2',
+  'tid' => '23',
+))
+->values(array(
+  'nid' => '1',
+  'vid' => '2',
+  'tid' => '24',
+))
+->values(array(
+  'nid' => '1',
+  'vid' => '2',
+  'tid' => '25',
+))
+->values(array(
+  'nid' => '1',
+  'vid' => '2',
+  'tid' => '26',
+))
+->values(array(
+  'nid' => '1',
+  'vid' => '2',
+  'tid' => '27',
+))
+->values(array(
+  'nid' => '1',
+  'vid' => '2',
+  'tid' => '28',
+))
+->values(array(
+  'nid' => '1',
+  'vid' => '2',
+  'tid' => '29',
+))
+->values(array(
+  'nid' => '1',
+  'vid' => '2',
+  'tid' => '30',
+))
+->values(array(
+  'nid' => '1',
+  'vid' => '2',
+  'tid' => '31',
+))
+->values(array(
+  'nid' => '1',
+  'vid' => '2',
+  'tid' => '32',
+))
+->values(array(
+  'nid' => '1',
+  'vid' => '2',
+  'tid' => '33',
+))
+->values(array(
+  'nid' => '1',
+  'vid' => '2',
+  'tid' => '34',
+))
+->values(array(
+  'nid' => '1',
+  'vid' => '2',
+  'tid' => '35',
+))
+->values(array(
+  'nid' => '1',
+  'vid' => '2',
+  'tid' => '36',
+))
+->values(array(
+  'nid' => '1',
+  'vid' => '2',
+  'tid' => '37',
+))
+->values(array(
+  'nid' => '1',
+  'vid' => '2',
+  'tid' => '38',
+))
+->values(array(
+  'nid' => '1',
+  'vid' => '2',
+  'tid' => '39',
+))
+->values(array(
+  'nid' => '1',
+  'vid' => '2',
+  'tid' => '40',
+))
+->values(array(
+  'nid' => '1',
+  'vid' => '2',
+  'tid' => '41',
+))
+->values(array(
+  'nid' => '1',
+  'vid' => '2',
+  'tid' => '42',
+))
+->values(array(
+  'nid' => '1',
+  'vid' => '2',
+  'tid' => '43',
+))
+->values(array(
+  'nid' => '1',
+  'vid' => '2',
+  'tid' => '44',
+))
+->values(array(
+  'nid' => '1',
+  'vid' => '2',
+  'tid' => '45',
+))
+->values(array(
+  'nid' => '1',
+  'vid' => '2',
+  'tid' => '46',
+))
+->values(array(
+  'nid' => '1',
+  'vid' => '2',
+  'tid' => '47',
+))
+->values(array(
+  'nid' => '1',
+  'vid' => '1',
+  'tid' => '48',
+))
+->values(array(
+  'nid' => '2',
+  'vid' => '4',
+  'tid' => '1',
+))
+->values(array(
+  'nid' => '2',
+  'vid' => '3',
+  'tid' => '2',
+))
+->values(array(
+  'nid' => '2',
+  'vid' => '4',
+  'tid' => '3',
+))
+->values(array(
+  'nid' => '2',
+  'vid' => '4',
+  'tid' => '4',
+))
+->values(array(
+  'nid' => '2',
+  'vid' => '4',
+  'tid' => '5',
+))
+->values(array(
+  'nid' => '2',
+  'vid' => '4',
+  'tid' => '6',
+))
+->values(array(
+  'nid' => '2',
+  'vid' => '4',
+  'tid' => '7',
+))
+->values(array(
+  'nid' => '2',
+  'vid' => '4',
+  'tid' => '8',
+))
+->values(array(
+  'nid' => '2',
+  'vid' => '4',
+  'tid' => '9',
+))
+->values(array(
+  'nid' => '2',
+  'vid' => '4',
+  'tid' => '10',
+))
+->values(array(
+  'nid' => '2',
+  'vid' => '4',
+  'tid' => '11',
+))
+->values(array(
+  'nid' => '2',
+  'vid' => '4',
+  'tid' => '12',
+))
+->values(array(
+  'nid' => '2',
+  'vid' => '4',
+  'tid' => '13',
+))
+->values(array(
+  'nid' => '2',
+  'vid' => '4',
+  'tid' => '14',
+))
+->values(array(
+  'nid' => '2',
+  'vid' => '4',
+  'tid' => '15',
+))
+->values(array(
+  'nid' => '2',
+  'vid' => '4',
+  'tid' => '16',
+))
+->values(array(
+  'nid' => '2',
+  'vid' => '4',
+  'tid' => '17',
+))
+->values(array(
+  'nid' => '2',
+  'vid' => '4',
+  'tid' => '18',
+))
+->values(array(
+  'nid' => '2',
+  'vid' => '4',
+  'tid' => '19',
+))
+->values(array(
+  'nid' => '2',
+  'vid' => '4',
+  'tid' => '20',
+))
+->values(array(
+  'nid' => '2',
+  'vid' => '4',
+  'tid' => '21',
+))
+->values(array(
+  'nid' => '2',
+  'vid' => '4',
+  'tid' => '22',
+))
+->values(array(
+  'nid' => '2',
+  'vid' => '4',
+  'tid' => '23',
+))
+->values(array(
+  'nid' => '2',
+  'vid' => '4',
+  'tid' => '24',
+))
+->values(array(
+  'nid' => '2',
+  'vid' => '4',
+  'tid' => '25',
+))
+->values(array(
+  'nid' => '2',
+  'vid' => '4',
+  'tid' => '26',
+))
+->values(array(
+  'nid' => '2',
+  'vid' => '4',
+  'tid' => '27',
+))
+->values(array(
+  'nid' => '2',
+  'vid' => '4',
+  'tid' => '28',
+))
+->values(array(
+  'nid' => '2',
+  'vid' => '4',
+  'tid' => '29',
+))
+->values(array(
+  'nid' => '2',
+  'vid' => '4',
+  'tid' => '30',
+))
+->values(array(
+  'nid' => '2',
+  'vid' => '4',
+  'tid' => '31',
+))
+->values(array(
+  'nid' => '2',
+  'vid' => '4',
+  'tid' => '32',
+))
+->values(array(
+  'nid' => '2',
+  'vid' => '4',
+  'tid' => '33',
+))
+->values(array(
+  'nid' => '2',
+  'vid' => '4',
+  'tid' => '34',
+))
+->values(array(
+  'nid' => '2',
+  'vid' => '4',
+  'tid' => '35',
+))
+->values(array(
+  'nid' => '2',
+  'vid' => '4',
+  'tid' => '36',
+))
+->values(array(
+  'nid' => '2',
+  'vid' => '4',
+  'tid' => '37',
+))
+->values(array(
+  'nid' => '2',
+  'vid' => '4',
+  'tid' => '38',
+))
+->values(array(
+  'nid' => '2',
+  'vid' => '4',
+  'tid' => '39',
+))
+->values(array(
+  'nid' => '2',
+  'vid' => '4',
+  'tid' => '40',
+))
+->values(array(
+  'nid' => '2',
+  'vid' => '4',
+  'tid' => '41',
+))
+->values(array(
+  'nid' => '2',
+  'vid' => '4',
+  'tid' => '42',
+))
+->values(array(
+  'nid' => '2',
+  'vid' => '4',
+  'tid' => '43',
+))
+->values(array(
+  'nid' => '2',
+  'vid' => '4',
+  'tid' => '44',
+))
+->values(array(
+  'nid' => '2',
+  'vid' => '4',
+  'tid' => '45',
+))
+->values(array(
+  'nid' => '2',
+  'vid' => '4',
+  'tid' => '46',
+))
+->values(array(
+  'nid' => '2',
+  'vid' => '3',
+  'tid' => '47',
+))
+->values(array(
+  'nid' => '2',
+  'vid' => '4',
+  'tid' => '48',
+))
+->values(array(
+  'nid' => '3',
+  'vid' => '6',
+  'tid' => '1',
+))
+->values(array(
+  'nid' => '3',
+  'vid' => '6',
+  'tid' => '2',
+))
+->values(array(
+  'nid' => '3',
+  'vid' => '5',
+  'tid' => '3',
+))
+->values(array(
+  'nid' => '3',
+  'vid' => '6',
+  'tid' => '4',
+))
+->values(array(
+  'nid' => '3',
+  'vid' => '6',
+  'tid' => '5',
+))
+->values(array(
+  'nid' => '3',
+  'vid' => '6',
+  'tid' => '6',
+))
+->values(array(
+  'nid' => '3',
+  'vid' => '6',
+  'tid' => '7',
+))
+->values(array(
+  'nid' => '3',
+  'vid' => '6',
+  'tid' => '8',
+))
+->values(array(
+  'nid' => '3',
+  'vid' => '6',
+  'tid' => '9',
+))
+->values(array(
+  'nid' => '3',
+  'vid' => '6',
+  'tid' => '10',
+))
+->values(array(
+  'nid' => '3',
+  'vid' => '6',
+  'tid' => '11',
+))
+->values(array(
+  'nid' => '3',
+  'vid' => '6',
+  'tid' => '12',
+))
+->values(array(
+  'nid' => '3',
+  'vid' => '6',
+  'tid' => '13',
+))
+->values(array(
+  'nid' => '3',
+  'vid' => '6',
+  'tid' => '14',
+))
+->values(array(
+  'nid' => '3',
+  'vid' => '6',
+  'tid' => '15',
+))
+->values(array(
+  'nid' => '3',
+  'vid' => '6',
+  'tid' => '16',
+))
+->values(array(
+  'nid' => '3',
+  'vid' => '6',
+  'tid' => '17',
+))
+->values(array(
+  'nid' => '3',
+  'vid' => '6',
+  'tid' => '18',
+))
+->values(array(
+  'nid' => '3',
+  'vid' => '6',
+  'tid' => '19',
+))
+->values(array(
+  'nid' => '3',
+  'vid' => '6',
+  'tid' => '20',
+))
+->values(array(
+  'nid' => '3',
+  'vid' => '6',
+  'tid' => '21',
+))
+->values(array(
+  'nid' => '3',
+  'vid' => '6',
+  'tid' => '22',
+))
+->values(array(
+  'nid' => '3',
+  'vid' => '6',
+  'tid' => '23',
+))
+->values(array(
+  'nid' => '3',
+  'vid' => '6',
+  'tid' => '24',
+))
+->values(array(
+  'nid' => '3',
+  'vid' => '6',
+  'tid' => '25',
+))
+->values(array(
+  'nid' => '3',
+  'vid' => '6',
+  'tid' => '26',
+))
+->values(array(
+  'nid' => '3',
+  'vid' => '6',
+  'tid' => '27',
+))
+->values(array(
+  'nid' => '3',
+  'vid' => '6',
+  'tid' => '28',
+))
+->values(array(
+  'nid' => '3',
+  'vid' => '6',
+  'tid' => '29',
+))
+->values(array(
+  'nid' => '3',
+  'vid' => '6',
+  'tid' => '30',
+))
+->values(array(
+  'nid' => '3',
+  'vid' => '6',
+  'tid' => '31',
+))
+->values(array(
+  'nid' => '3',
+  'vid' => '6',
+  'tid' => '32',
+))
+->values(array(
+  'nid' => '3',
+  'vid' => '6',
+  'tid' => '33',
+))
+->values(array(
+  'nid' => '3',
+  'vid' => '6',
+  'tid' => '34',
+))
+->values(array(
+  'nid' => '3',
+  'vid' => '6',
+  'tid' => '35',
+))
+->values(array(
+  'nid' => '3',
+  'vid' => '6',
+  'tid' => '36',
+))
+->values(array(
+  'nid' => '3',
+  'vid' => '6',
+  'tid' => '37',
+))
+->values(array(
+  'nid' => '3',
+  'vid' => '6',
+  'tid' => '38',
+))
+->values(array(
+  'nid' => '3',
+  'vid' => '6',
+  'tid' => '39',
+))
+->values(array(
+  'nid' => '3',
+  'vid' => '6',
+  'tid' => '40',
+))
+->values(array(
+  'nid' => '3',
+  'vid' => '6',
+  'tid' => '41',
+))
+->values(array(
+  'nid' => '3',
+  'vid' => '6',
+  'tid' => '42',
+))
+->values(array(
+  'nid' => '3',
+  'vid' => '6',
+  'tid' => '43',
+))
+->values(array(
+  'nid' => '3',
+  'vid' => '6',
+  'tid' => '44',
+))
+->values(array(
+  'nid' => '3',
+  'vid' => '6',
+  'tid' => '45',
+))
+->values(array(
+  'nid' => '3',
+  'vid' => '5',
+  'tid' => '46',
+))
+->values(array(
+  'nid' => '3',
+  'vid' => '6',
+  'tid' => '47',
+))
+->values(array(
+  'nid' => '3',
+  'vid' => '6',
+  'tid' => '48',
+))
+->values(array(
+  'nid' => '4',
+  'vid' => '8',
+  'tid' => '1',
+))
+->values(array(
+  'nid' => '4',
+  'vid' => '8',
+  'tid' => '2',
+))
+->values(array(
+  'nid' => '4',
+  'vid' => '8',
+  'tid' => '3',
+))
+->values(array(
+  'nid' => '4',
+  'vid' => '7',
+  'tid' => '4',
+))
+->values(array(
+  'nid' => '4',
+  'vid' => '8',
+  'tid' => '5',
+))
+->values(array(
+  'nid' => '4',
+  'vid' => '8',
+  'tid' => '6',
+))
+->values(array(
+  'nid' => '4',
+  'vid' => '8',
+  'tid' => '7',
+))
+->values(array(
+  'nid' => '4',
+  'vid' => '8',
+  'tid' => '8',
+))
+->values(array(
+  'nid' => '4',
+  'vid' => '8',
+  'tid' => '9',
+))
+->values(array(
+  'nid' => '4',
+  'vid' => '8',
+  'tid' => '10',
+))
+->values(array(
+  'nid' => '4',
+  'vid' => '8',
+  'tid' => '11',
+))
+->values(array(
+  'nid' => '4',
+  'vid' => '8',
+  'tid' => '12',
+))
+->values(array(
+  'nid' => '4',
+  'vid' => '8',
+  'tid' => '13',
+))
+->values(array(
+  'nid' => '4',
+  'vid' => '8',
+  'tid' => '14',
+))
+->values(array(
+  'nid' => '4',
+  'vid' => '8',
+  'tid' => '15',
+))
+->values(array(
+  'nid' => '4',
+  'vid' => '8',
+  'tid' => '16',
+))
+->values(array(
+  'nid' => '4',
+  'vid' => '8',
+  'tid' => '17',
+))
+->values(array(
+  'nid' => '4',
+  'vid' => '8',
+  'tid' => '18',
+))
+->values(array(
+  'nid' => '4',
+  'vid' => '8',
+  'tid' => '19',
+))
+->values(array(
+  'nid' => '4',
+  'vid' => '8',
+  'tid' => '20',
+))
+->values(array(
+  'nid' => '4',
+  'vid' => '8',
+  'tid' => '21',
+))
+->values(array(
+  'nid' => '4',
+  'vid' => '8',
+  'tid' => '22',
+))
+->values(array(
+  'nid' => '4',
+  'vid' => '8',
+  'tid' => '23',
+))
+->values(array(
+  'nid' => '4',
+  'vid' => '8',
+  'tid' => '24',
+))
+->values(array(
+  'nid' => '4',
+  'vid' => '8',
+  'tid' => '25',
+))
+->values(array(
+  'nid' => '4',
+  'vid' => '8',
+  'tid' => '26',
+))
+->values(array(
+  'nid' => '4',
+  'vid' => '8',
+  'tid' => '27',
+))
+->values(array(
+  'nid' => '4',
+  'vid' => '8',
+  'tid' => '28',
+))
+->values(array(
+  'nid' => '4',
+  'vid' => '8',
+  'tid' => '29',
+))
+->values(array(
+  'nid' => '4',
+  'vid' => '8',
+  'tid' => '30',
+))
+->values(array(
+  'nid' => '4',
+  'vid' => '8',
+  'tid' => '31',
+))
+->values(array(
+  'nid' => '4',
+  'vid' => '8',
+  'tid' => '32',
+))
+->values(array(
+  'nid' => '4',
+  'vid' => '8',
+  'tid' => '33',
+))
+->values(array(
+  'nid' => '4',
+  'vid' => '8',
+  'tid' => '34',
+))
+->values(array(
+  'nid' => '4',
+  'vid' => '8',
+  'tid' => '35',
+))
+->values(array(
+  'nid' => '4',
+  'vid' => '8',
+  'tid' => '36',
+))
+->values(array(
+  'nid' => '4',
+  'vid' => '8',
+  'tid' => '37',
+))
+->values(array(
+  'nid' => '4',
+  'vid' => '8',
+  'tid' => '38',
+))
+->values(array(
+  'nid' => '4',
+  'vid' => '8',
+  'tid' => '39',
+))
+->values(array(
+  'nid' => '4',
+  'vid' => '8',
+  'tid' => '40',
+))
+->values(array(
+  'nid' => '4',
+  'vid' => '8',
+  'tid' => '41',
+))
+->values(array(
+  'nid' => '4',
+  'vid' => '8',
+  'tid' => '42',
+))
+->values(array(
+  'nid' => '4',
+  'vid' => '8',
+  'tid' => '43',
+))
+->values(array(
+  'nid' => '4',
+  'vid' => '8',
+  'tid' => '44',
+))
+->values(array(
+  'nid' => '4',
+  'vid' => '7',
+  'tid' => '45',
+))
+->values(array(
+  'nid' => '4',
+  'vid' => '8',
+  'tid' => '46',
+))
+->values(array(
+  'nid' => '4',
+  'vid' => '8',
+  'tid' => '47',
+))
+->values(array(
+  'nid' => '4',
+  'vid' => '8',
+  'tid' => '48',
+))
+->values(array(
+  'nid' => '5',
+  'vid' => '10',
+  'tid' => '1',
+))
+->values(array(
+  'nid' => '5',
+  'vid' => '10',
+  'tid' => '2',
+))
+->values(array(
+  'nid' => '5',
+  'vid' => '10',
+  'tid' => '3',
+))
+->values(array(
+  'nid' => '5',
+  'vid' => '10',
+  'tid' => '4',
+))
+->values(array(
+  'nid' => '5',
+  'vid' => '9',
+  'tid' => '5',
+))
+->values(array(
+  'nid' => '5',
+  'vid' => '10',
+  'tid' => '6',
+))
+->values(array(
+  'nid' => '5',
+  'vid' => '10',
+  'tid' => '7',
+))
+->values(array(
+  'nid' => '5',
+  'vid' => '10',
+  'tid' => '8',
+))
+->values(array(
+  'nid' => '5',
+  'vid' => '10',
+  'tid' => '9',
+))
+->values(array(
+  'nid' => '5',
+  'vid' => '10',
+  'tid' => '10',
+))
+->values(array(
+  'nid' => '5',
+  'vid' => '10',
+  'tid' => '11',
+))
+->values(array(
+  'nid' => '5',
+  'vid' => '10',
+  'tid' => '12',
+))
+->values(array(
+  'nid' => '5',
+  'vid' => '10',
+  'tid' => '13',
+))
+->values(array(
+  'nid' => '5',
+  'vid' => '10',
+  'tid' => '14',
+))
+->values(array(
+  'nid' => '5',
+  'vid' => '10',
+  'tid' => '15',
+))
+->values(array(
+  'nid' => '5',
+  'vid' => '10',
+  'tid' => '16',
+))
+->values(array(
+  'nid' => '5',
+  'vid' => '10',
+  'tid' => '17',
+))
+->values(array(
+  'nid' => '5',
+  'vid' => '10',
+  'tid' => '18',
+))
+->values(array(
+  'nid' => '5',
+  'vid' => '10',
+  'tid' => '19',
+))
+->values(array(
+  'nid' => '5',
+  'vid' => '10',
+  'tid' => '20',
+))
+->values(array(
+  'nid' => '5',
+  'vid' => '10',
+  'tid' => '21',
+))
+->values(array(
+  'nid' => '5',
+  'vid' => '10',
+  'tid' => '22',
+))
+->values(array(
+  'nid' => '5',
+  'vid' => '10',
+  'tid' => '23',
+))
+->values(array(
+  'nid' => '5',
+  'vid' => '10',
+  'tid' => '24',
+))
+->values(array(
+  'nid' => '5',
+  'vid' => '10',
+  'tid' => '25',
+))
+->values(array(
+  'nid' => '5',
+  'vid' => '10',
+  'tid' => '26',
+))
+->values(array(
+  'nid' => '5',
+  'vid' => '10',
+  'tid' => '27',
+))
+->values(array(
+  'nid' => '5',
+  'vid' => '10',
+  'tid' => '28',
+))
+->values(array(
+  'nid' => '5',
+  'vid' => '10',
+  'tid' => '29',
+))
+->values(array(
+  'nid' => '5',
+  'vid' => '10',
+  'tid' => '30',
+))
+->values(array(
+  'nid' => '5',
+  'vid' => '10',
+  'tid' => '31',
+))
+->values(array(
+  'nid' => '5',
+  'vid' => '10',
+  'tid' => '32',
+))
+->values(array(
+  'nid' => '5',
+  'vid' => '10',
+  'tid' => '33',
+))
+->values(array(
+  'nid' => '5',
+  'vid' => '10',
+  'tid' => '34',
+))
+->values(array(
+  'nid' => '5',
+  'vid' => '10',
+  'tid' => '35',
+))
+->values(array(
+  'nid' => '5',
+  'vid' => '10',
+  'tid' => '36',
+))
+->values(array(
+  'nid' => '5',
+  'vid' => '10',
+  'tid' => '37',
+))
+->values(array(
+  'nid' => '5',
+  'vid' => '10',
+  'tid' => '38',
+))
+->values(array(
+  'nid' => '5',
+  'vid' => '10',
+  'tid' => '39',
+))
+->values(array(
+  'nid' => '5',
+  'vid' => '10',
+  'tid' => '40',
+))
+->values(array(
+  'nid' => '5',
+  'vid' => '10',
+  'tid' => '41',
+))
+->values(array(
+  'nid' => '5',
+  'vid' => '10',
+  'tid' => '42',
+))
+->values(array(
+  'nid' => '5',
+  'vid' => '10',
+  'tid' => '43',
+))
+->values(array(
+  'nid' => '5',
+  'vid' => '9',
+  'tid' => '44',
+))
+->values(array(
+  'nid' => '5',
+  'vid' => '10',
+  'tid' => '45',
+))
+->values(array(
+  'nid' => '5',
+  'vid' => '10',
+  'tid' => '46',
+))
+->values(array(
+  'nid' => '5',
+  'vid' => '10',
+  'tid' => '47',
+))
+->values(array(
+  'nid' => '5',
+  'vid' => '10',
+  'tid' => '48',
+))
+->values(array(
+  'nid' => '6',
+  'vid' => '12',
+  'tid' => '1',
+))
+->values(array(
+  'nid' => '6',
+  'vid' => '12',
+  'tid' => '2',
+))
+->values(array(
+  'nid' => '6',
+  'vid' => '12',
+  'tid' => '3',
+))
+->values(array(
+  'nid' => '6',
+  'vid' => '12',
+  'tid' => '4',
+))
+->values(array(
+  'nid' => '6',
+  'vid' => '12',
+  'tid' => '5',
+))
+->values(array(
+  'nid' => '6',
+  'vid' => '11',
+  'tid' => '6',
+))
+->values(array(
+  'nid' => '6',
+  'vid' => '12',
+  'tid' => '7',
+))
+->values(array(
+  'nid' => '6',
+  'vid' => '12',
+  'tid' => '8',
+))
+->values(array(
+  'nid' => '6',
+  'vid' => '12',
+  'tid' => '9',
+))
+->values(array(
+  'nid' => '6',
+  'vid' => '12',
+  'tid' => '10',
+))
+->values(array(
+  'nid' => '6',
+  'vid' => '12',
+  'tid' => '11',
+))
+->values(array(
+  'nid' => '6',
+  'vid' => '12',
+  'tid' => '12',
+))
+->values(array(
+  'nid' => '6',
+  'vid' => '12',
+  'tid' => '13',
+))
+->values(array(
+  'nid' => '6',
+  'vid' => '12',
+  'tid' => '14',
+))
+->values(array(
+  'nid' => '6',
+  'vid' => '12',
+  'tid' => '15',
+))
+->values(array(
+  'nid' => '6',
+  'vid' => '12',
+  'tid' => '16',
+))
+->values(array(
+  'nid' => '6',
+  'vid' => '12',
+  'tid' => '17',
+))
+->values(array(
+  'nid' => '6',
+  'vid' => '12',
+  'tid' => '18',
+))
+->values(array(
+  'nid' => '6',
+  'vid' => '12',
+  'tid' => '19',
+))
+->values(array(
+  'nid' => '6',
+  'vid' => '12',
+  'tid' => '20',
+))
+->values(array(
+  'nid' => '6',
+  'vid' => '12',
+  'tid' => '21',
+))
+->values(array(
+  'nid' => '6',
+  'vid' => '12',
+  'tid' => '22',
+))
+->values(array(
+  'nid' => '6',
+  'vid' => '12',
+  'tid' => '23',
+))
+->values(array(
+  'nid' => '6',
+  'vid' => '12',
+  'tid' => '24',
+))
+->values(array(
+  'nid' => '6',
+  'vid' => '12',
+  'tid' => '25',
+))
+->values(array(
+  'nid' => '6',
+  'vid' => '12',
+  'tid' => '26',
+))
+->values(array(
+  'nid' => '6',
+  'vid' => '12',
+  'tid' => '27',
+))
+->values(array(
+  'nid' => '6',
+  'vid' => '12',
+  'tid' => '28',
+))
+->values(array(
+  'nid' => '6',
+  'vid' => '12',
+  'tid' => '29',
+))
+->values(array(
+  'nid' => '6',
+  'vid' => '12',
+  'tid' => '30',
+))
+->values(array(
+  'nid' => '6',
+  'vid' => '12',
+  'tid' => '31',
+))
+->values(array(
+  'nid' => '6',
+  'vid' => '12',
+  'tid' => '32',
+))
+->values(array(
+  'nid' => '6',
+  'vid' => '12',
+  'tid' => '33',
+))
+->values(array(
+  'nid' => '6',
+  'vid' => '12',
+  'tid' => '34',
+))
+->values(array(
+  'nid' => '6',
+  'vid' => '12',
+  'tid' => '35',
+))
+->values(array(
+  'nid' => '6',
+  'vid' => '12',
+  'tid' => '36',
+))
+->values(array(
+  'nid' => '6',
+  'vid' => '12',
+  'tid' => '37',
+))
+->values(array(
+  'nid' => '6',
+  'vid' => '12',
+  'tid' => '38',
+))
+->values(array(
+  'nid' => '6',
+  'vid' => '12',
+  'tid' => '39',
+))
+->values(array(
+  'nid' => '6',
+  'vid' => '12',
+  'tid' => '40',
+))
+->values(array(
+  'nid' => '6',
+  'vid' => '12',
+  'tid' => '41',
+))
+->values(array(
+  'nid' => '6',
+  'vid' => '12',
+  'tid' => '42',
+))
+->values(array(
+  'nid' => '6',
+  'vid' => '11',
+  'tid' => '43',
+))
+->values(array(
+  'nid' => '6',
+  'vid' => '12',
+  'tid' => '44',
+))
+->values(array(
+  'nid' => '6',
+  'vid' => '12',
+  'tid' => '45',
+))
+->values(array(
+  'nid' => '6',
+  'vid' => '12',
+  'tid' => '46',
+))
+->values(array(
+  'nid' => '6',
+  'vid' => '12',
+  'tid' => '47',
+))
+->values(array(
+  'nid' => '6',
+  'vid' => '12',
+  'tid' => '48',
+))
+->values(array(
+  'nid' => '7',
+  'vid' => '14',
+  'tid' => '1',
+))
+->values(array(
+  'nid' => '7',
+  'vid' => '14',
+  'tid' => '2',
+))
+->values(array(
+  'nid' => '7',
+  'vid' => '14',
+  'tid' => '3',
+))
+->values(array(
+  'nid' => '7',
+  'vid' => '14',
+  'tid' => '4',
+))
+->values(array(
+  'nid' => '7',
+  'vid' => '14',
+  'tid' => '5',
+))
+->values(array(
+  'nid' => '7',
+  'vid' => '14',
+  'tid' => '6',
+))
+->values(array(
+  'nid' => '7',
+  'vid' => '13',
+  'tid' => '7',
+))
+->values(array(
+  'nid' => '7',
+  'vid' => '14',
+  'tid' => '8',
+))
+->values(array(
+  'nid' => '7',
+  'vid' => '14',
+  'tid' => '9',
+))
+->values(array(
+  'nid' => '7',
+  'vid' => '14',
+  'tid' => '10',
+))
+->values(array(
+  'nid' => '7',
+  'vid' => '14',
+  'tid' => '11',
+))
+->values(array(
+  'nid' => '7',
+  'vid' => '14',
+  'tid' => '12',
+))
+->values(array(
+  'nid' => '7',
+  'vid' => '14',
+  'tid' => '13',
+))
+->values(array(
+  'nid' => '7',
+  'vid' => '14',
+  'tid' => '14',
+))
+->values(array(
+  'nid' => '7',
+  'vid' => '14',
+  'tid' => '15',
+))
+->values(array(
+  'nid' => '7',
+  'vid' => '14',
+  'tid' => '16',
+))
+->values(array(
+  'nid' => '7',
+  'vid' => '14',
+  'tid' => '17',
+))
+->values(array(
+  'nid' => '7',
+  'vid' => '14',
+  'tid' => '18',
+))
+->values(array(
+  'nid' => '7',
+  'vid' => '14',
+  'tid' => '19',
+))
+->values(array(
+  'nid' => '7',
+  'vid' => '14',
+  'tid' => '20',
+))
+->values(array(
+  'nid' => '7',
+  'vid' => '14',
+  'tid' => '21',
+))
+->values(array(
+  'nid' => '7',
+  'vid' => '14',
+  'tid' => '22',
+))
+->values(array(
+  'nid' => '7',
+  'vid' => '14',
+  'tid' => '23',
+))
+->values(array(
+  'nid' => '7',
+  'vid' => '14',
+  'tid' => '24',
+))
+->values(array(
+  'nid' => '7',
+  'vid' => '14',
+  'tid' => '25',
+))
+->values(array(
+  'nid' => '7',
+  'vid' => '14',
+  'tid' => '26',
+))
+->values(array(
+  'nid' => '7',
+  'vid' => '14',
+  'tid' => '27',
+))
+->values(array(
+  'nid' => '7',
+  'vid' => '14',
+  'tid' => '28',
+))
+->values(array(
+  'nid' => '7',
+  'vid' => '14',
+  'tid' => '29',
+))
+->values(array(
+  'nid' => '7',
+  'vid' => '14',
+  'tid' => '30',
+))
+->values(array(
+  'nid' => '7',
+  'vid' => '14',
+  'tid' => '31',
+))
+->values(array(
+  'nid' => '7',
+  'vid' => '14',
+  'tid' => '32',
+))
+->values(array(
+  'nid' => '7',
+  'vid' => '14',
+  'tid' => '33',
+))
+->values(array(
+  'nid' => '7',
+  'vid' => '14',
+  'tid' => '34',
+))
+->values(array(
+  'nid' => '7',
+  'vid' => '14',
+  'tid' => '35',
+))
+->values(array(
+  'nid' => '7',
+  'vid' => '14',
+  'tid' => '36',
+))
+->values(array(
+  'nid' => '7',
+  'vid' => '14',
+  'tid' => '37',
+))
+->values(array(
+  'nid' => '7',
+  'vid' => '14',
+  'tid' => '38',
+))
+->values(array(
+  'nid' => '7',
+  'vid' => '14',
+  'tid' => '39',
+))
+->values(array(
+  'nid' => '7',
+  'vid' => '14',
+  'tid' => '40',
+))
+->values(array(
+  'nid' => '7',
+  'vid' => '14',
+  'tid' => '41',
+))
+->values(array(
+  'nid' => '7',
+  'vid' => '13',
+  'tid' => '42',
+))
+->values(array(
+  'nid' => '7',
+  'vid' => '14',
+  'tid' => '43',
+))
+->values(array(
+  'nid' => '7',
+  'vid' => '14',
+  'tid' => '44',
+))
+->values(array(
+  'nid' => '7',
+  'vid' => '14',
+  'tid' => '45',
+))
+->values(array(
+  'nid' => '7',
+  'vid' => '14',
+  'tid' => '46',
+))
+->values(array(
+  'nid' => '7',
+  'vid' => '14',
+  'tid' => '47',
+))
+->values(array(
+  'nid' => '7',
+  'vid' => '14',
+  'tid' => '48',
+))
+->values(array(
+  'nid' => '8',
+  'vid' => '16',
+  'tid' => '1',
+))
+->values(array(
+  'nid' => '8',
+  'vid' => '16',
+  'tid' => '2',
+))
+->values(array(
+  'nid' => '8',
+  'vid' => '16',
+  'tid' => '3',
+))
+->values(array(
+  'nid' => '8',
+  'vid' => '16',
+  'tid' => '4',
+))
+->values(array(
+  'nid' => '8',
+  'vid' => '16',
+  'tid' => '5',
+))
+->values(array(
+  'nid' => '8',
+  'vid' => '16',
+  'tid' => '6',
+))
+->values(array(
+  'nid' => '8',
+  'vid' => '16',
+  'tid' => '7',
+))
+->values(array(
+  'nid' => '8',
+  'vid' => '15',
+  'tid' => '8',
+))
+->values(array(
+  'nid' => '8',
+  'vid' => '16',
+  'tid' => '9',
+))
+->values(array(
+  'nid' => '8',
+  'vid' => '16',
+  'tid' => '10',
+))
+->values(array(
+  'nid' => '8',
+  'vid' => '16',
+  'tid' => '11',
+))
+->values(array(
+  'nid' => '8',
+  'vid' => '16',
+  'tid' => '12',
+))
+->values(array(
+  'nid' => '8',
+  'vid' => '16',
+  'tid' => '13',
+))
+->values(array(
+  'nid' => '8',
+  'vid' => '16',
+  'tid' => '14',
+))
+->values(array(
+  'nid' => '8',
+  'vid' => '16',
+  'tid' => '15',
+))
+->values(array(
+  'nid' => '8',
+  'vid' => '16',
+  'tid' => '16',
+))
+->values(array(
+  'nid' => '8',
+  'vid' => '16',
+  'tid' => '17',
+))
+->values(array(
+  'nid' => '8',
+  'vid' => '16',
+  'tid' => '18',
+))
+->values(array(
+  'nid' => '8',
+  'vid' => '16',
+  'tid' => '19',
+))
+->values(array(
+  'nid' => '8',
+  'vid' => '16',
+  'tid' => '20',
+))
+->values(array(
+  'nid' => '8',
+  'vid' => '16',
+  'tid' => '21',
+))
+->values(array(
+  'nid' => '8',
+  'vid' => '16',
+  'tid' => '22',
+))
+->values(array(
+  'nid' => '8',
+  'vid' => '16',
+  'tid' => '23',
+))
+->values(array(
+  'nid' => '8',
+  'vid' => '16',
+  'tid' => '24',
+))
+->values(array(
+  'nid' => '8',
+  'vid' => '16',
+  'tid' => '25',
+))
+->values(array(
+  'nid' => '8',
+  'vid' => '16',
+  'tid' => '26',
+))
+->values(array(
+  'nid' => '8',
+  'vid' => '16',
+  'tid' => '27',
+))
+->values(array(
+  'nid' => '8',
+  'vid' => '16',
+  'tid' => '28',
+))
+->values(array(
+  'nid' => '8',
+  'vid' => '16',
+  'tid' => '29',
+))
+->values(array(
+  'nid' => '8',
+  'vid' => '16',
+  'tid' => '30',
+))
+->values(array(
+  'nid' => '8',
+  'vid' => '16',
+  'tid' => '31',
+))
+->values(array(
+  'nid' => '8',
+  'vid' => '16',
+  'tid' => '32',
+))
+->values(array(
+  'nid' => '8',
+  'vid' => '16',
+  'tid' => '33',
+))
+->values(array(
+  'nid' => '8',
+  'vid' => '16',
+  'tid' => '34',
+))
+->values(array(
+  'nid' => '8',
+  'vid' => '16',
+  'tid' => '35',
+))
+->values(array(
+  'nid' => '8',
+  'vid' => '16',
+  'tid' => '36',
+))
+->values(array(
+  'nid' => '8',
+  'vid' => '16',
+  'tid' => '37',
+))
+->values(array(
+  'nid' => '8',
+  'vid' => '16',
+  'tid' => '38',
+))
+->values(array(
+  'nid' => '8',
+  'vid' => '16',
+  'tid' => '39',
+))
+->values(array(
+  'nid' => '8',
+  'vid' => '16',
+  'tid' => '40',
+))
+->values(array(
+  'nid' => '8',
+  'vid' => '15',
+  'tid' => '41',
+))
+->values(array(
+  'nid' => '8',
+  'vid' => '16',
+  'tid' => '42',
+))
+->values(array(
+  'nid' => '8',
+  'vid' => '16',
+  'tid' => '43',
+))
+->values(array(
+  'nid' => '8',
+  'vid' => '16',
+  'tid' => '44',
+))
+->values(array(
+  'nid' => '8',
+  'vid' => '16',
+  'tid' => '45',
+))
+->values(array(
+  'nid' => '8',
+  'vid' => '16',
+  'tid' => '46',
+))
+->values(array(
+  'nid' => '8',
+  'vid' => '16',
+  'tid' => '47',
+))
+->values(array(
+  'nid' => '8',
+  'vid' => '16',
+  'tid' => '48',
+))
+->values(array(
+  'nid' => '9',
+  'vid' => '18',
+  'tid' => '1',
+))
+->values(array(
+  'nid' => '9',
+  'vid' => '18',
+  'tid' => '2',
+))
+->values(array(
+  'nid' => '9',
+  'vid' => '18',
+  'tid' => '3',
+))
+->values(array(
+  'nid' => '9',
+  'vid' => '18',
+  'tid' => '4',
+))
+->values(array(
+  'nid' => '9',
+  'vid' => '18',
+  'tid' => '5',
+))
+->values(array(
+  'nid' => '9',
+  'vid' => '18',
+  'tid' => '6',
+))
+->values(array(
+  'nid' => '9',
+  'vid' => '18',
+  'tid' => '7',
+))
+->values(array(
+  'nid' => '9',
+  'vid' => '18',
+  'tid' => '8',
+))
+->values(array(
+  'nid' => '9',
+  'vid' => '17',
+  'tid' => '9',
+))
+->values(array(
+  'nid' => '9',
+  'vid' => '18',
+  'tid' => '10',
+))
+->values(array(
+  'nid' => '9',
+  'vid' => '18',
+  'tid' => '11',
+))
+->values(array(
+  'nid' => '9',
+  'vid' => '18',
+  'tid' => '12',
+))
+->values(array(
+  'nid' => '9',
+  'vid' => '18',
+  'tid' => '13',
+))
+->values(array(
+  'nid' => '9',
+  'vid' => '18',
+  'tid' => '14',
+))
+->values(array(
+  'nid' => '9',
+  'vid' => '18',
+  'tid' => '15',
+))
+->values(array(
+  'nid' => '9',
+  'vid' => '18',
+  'tid' => '16',
+))
+->values(array(
+  'nid' => '9',
+  'vid' => '18',
+  'tid' => '17',
+))
+->values(array(
+  'nid' => '9',
+  'vid' => '18',
+  'tid' => '18',
+))
+->values(array(
+  'nid' => '9',
+  'vid' => '18',
+  'tid' => '19',
+))
+->values(array(
+  'nid' => '9',
+  'vid' => '18',
+  'tid' => '20',
+))
+->values(array(
+  'nid' => '9',
+  'vid' => '18',
+  'tid' => '21',
+))
+->values(array(
+  'nid' => '9',
+  'vid' => '18',
+  'tid' => '22',
+))
+->values(array(
+  'nid' => '9',
+  'vid' => '18',
+  'tid' => '23',
+))
+->values(array(
+  'nid' => '9',
+  'vid' => '18',
+  'tid' => '24',
+))
+->values(array(
+  'nid' => '9',
+  'vid' => '18',
+  'tid' => '25',
+))
+->values(array(
+  'nid' => '9',
+  'vid' => '18',
+  'tid' => '26',
+))
+->values(array(
+  'nid' => '9',
+  'vid' => '18',
+  'tid' => '27',
+))
+->values(array(
+  'nid' => '9',
+  'vid' => '18',
+  'tid' => '28',
+))
+->values(array(
+  'nid' => '9',
+  'vid' => '18',
+  'tid' => '29',
+))
+->values(array(
+  'nid' => '9',
+  'vid' => '18',
+  'tid' => '30',
+))
+->values(array(
+  'nid' => '9',
+  'vid' => '18',
+  'tid' => '31',
+))
+->values(array(
+  'nid' => '9',
+  'vid' => '18',
+  'tid' => '32',
+))
+->values(array(
+  'nid' => '9',
+  'vid' => '18',
+  'tid' => '33',
+))
+->values(array(
+  'nid' => '9',
+  'vid' => '18',
+  'tid' => '34',
+))
+->values(array(
+  'nid' => '9',
+  'vid' => '18',
+  'tid' => '35',
+))
+->values(array(
+  'nid' => '9',
+  'vid' => '18',
+  'tid' => '36',
+))
+->values(array(
+  'nid' => '9',
+  'vid' => '18',
+  'tid' => '37',
+))
+->values(array(
+  'nid' => '9',
+  'vid' => '18',
+  'tid' => '38',
+))
+->values(array(
+  'nid' => '9',
+  'vid' => '18',
+  'tid' => '39',
+))
+->values(array(
+  'nid' => '9',
+  'vid' => '17',
+  'tid' => '40',
+))
+->values(array(
+  'nid' => '9',
+  'vid' => '18',
+  'tid' => '41',
+))
+->values(array(
+  'nid' => '9',
+  'vid' => '18',
+  'tid' => '42',
+))
+->values(array(
+  'nid' => '9',
+  'vid' => '18',
+  'tid' => '43',
+))
+->values(array(
+  'nid' => '9',
+  'vid' => '18',
+  'tid' => '44',
+))
+->values(array(
+  'nid' => '9',
+  'vid' => '18',
+  'tid' => '45',
+))
+->values(array(
+  'nid' => '9',
+  'vid' => '18',
+  'tid' => '46',
+))
+->values(array(
+  'nid' => '9',
+  'vid' => '18',
+  'tid' => '47',
+))
+->values(array(
+  'nid' => '9',
+  'vid' => '18',
+  'tid' => '48',
+))
+->values(array(
+  'nid' => '10',
+  'vid' => '20',
+  'tid' => '1',
+))
+->values(array(
+  'nid' => '10',
+  'vid' => '20',
+  'tid' => '2',
+))
+->values(array(
+  'nid' => '10',
+  'vid' => '20',
+  'tid' => '3',
+))
+->values(array(
+  'nid' => '10',
+  'vid' => '20',
+  'tid' => '4',
+))
+->values(array(
+  'nid' => '10',
+  'vid' => '20',
+  'tid' => '5',
+))
+->values(array(
+  'nid' => '10',
+  'vid' => '20',
+  'tid' => '6',
+))
+->values(array(
+  'nid' => '10',
+  'vid' => '20',
+  'tid' => '7',
+))
+->values(array(
+  'nid' => '10',
+  'vid' => '20',
+  'tid' => '8',
+))
+->values(array(
+  'nid' => '10',
+  'vid' => '20',
+  'tid' => '9',
+))
+->values(array(
+  'nid' => '10',
+  'vid' => '19',
+  'tid' => '10',
+))
+->values(array(
+  'nid' => '10',
+  'vid' => '20',
+  'tid' => '11',
+))
+->values(array(
+  'nid' => '10',
+  'vid' => '20',
+  'tid' => '12',
+))
+->values(array(
+  'nid' => '10',
+  'vid' => '20',
+  'tid' => '13',
+))
+->values(array(
+  'nid' => '10',
+  'vid' => '20',
+  'tid' => '14',
+))
+->values(array(
+  'nid' => '10',
+  'vid' => '20',
+  'tid' => '15',
+))
+->values(array(
+  'nid' => '10',
+  'vid' => '20',
+  'tid' => '16',
+))
+->values(array(
+  'nid' => '10',
+  'vid' => '20',
+  'tid' => '17',
+))
+->values(array(
+  'nid' => '10',
+  'vid' => '20',
+  'tid' => '18',
+))
+->values(array(
+  'nid' => '10',
+  'vid' => '20',
+  'tid' => '19',
+))
+->values(array(
+  'nid' => '10',
+  'vid' => '20',
+  'tid' => '20',
+))
+->values(array(
+  'nid' => '10',
+  'vid' => '20',
+  'tid' => '21',
+))
+->values(array(
+  'nid' => '10',
+  'vid' => '20',
+  'tid' => '22',
+))
+->values(array(
+  'nid' => '10',
+  'vid' => '20',
+  'tid' => '23',
+))
+->values(array(
+  'nid' => '10',
+  'vid' => '20',
+  'tid' => '24',
+))
+->values(array(
+  'nid' => '10',
+  'vid' => '20',
+  'tid' => '25',
+))
+->values(array(
+  'nid' => '10',
+  'vid' => '20',
+  'tid' => '26',
+))
+->values(array(
+  'nid' => '10',
+  'vid' => '20',
+  'tid' => '27',
+))
+->values(array(
+  'nid' => '10',
+  'vid' => '20',
+  'tid' => '28',
+))
+->values(array(
+  'nid' => '10',
+  'vid' => '20',
+  'tid' => '29',
+))
+->values(array(
+  'nid' => '10',
+  'vid' => '20',
+  'tid' => '30',
+))
+->values(array(
+  'nid' => '10',
+  'vid' => '20',
+  'tid' => '31',
+))
+->values(array(
+  'nid' => '10',
+  'vid' => '20',
+  'tid' => '32',
+))
+->values(array(
+  'nid' => '10',
+  'vid' => '20',
+  'tid' => '33',
+))
+->values(array(
+  'nid' => '10',
+  'vid' => '20',
+  'tid' => '34',
+))
+->values(array(
+  'nid' => '10',
+  'vid' => '20',
+  'tid' => '35',
+))
+->values(array(
+  'nid' => '10',
+  'vid' => '20',
+  'tid' => '36',
+))
+->values(array(
+  'nid' => '10',
+  'vid' => '20',
+  'tid' => '37',
+))
+->values(array(
+  'nid' => '10',
+  'vid' => '20',
+  'tid' => '38',
+))
+->values(array(
+  'nid' => '10',
+  'vid' => '19',
+  'tid' => '39',
+))
+->values(array(
+  'nid' => '10',
+  'vid' => '20',
+  'tid' => '40',
+))
+->values(array(
+  'nid' => '10',
+  'vid' => '20',
+  'tid' => '41',
+))
+->values(array(
+  'nid' => '10',
+  'vid' => '20',
+  'tid' => '42',
+))
+->values(array(
+  'nid' => '10',
+  'vid' => '20',
+  'tid' => '43',
+))
+->values(array(
+  'nid' => '10',
+  'vid' => '20',
+  'tid' => '44',
+))
+->values(array(
+  'nid' => '10',
+  'vid' => '20',
+  'tid' => '45',
+))
+->values(array(
+  'nid' => '10',
+  'vid' => '20',
+  'tid' => '46',
+))
+->values(array(
+  'nid' => '10',
+  'vid' => '20',
+  'tid' => '47',
+))
+->values(array(
+  'nid' => '10',
+  'vid' => '20',
+  'tid' => '48',
+))
+->values(array(
+  'nid' => '11',
+  'vid' => '22',
+  'tid' => '1',
+))
+->values(array(
+  'nid' => '11',
+  'vid' => '22',
+  'tid' => '2',
+))
+->values(array(
+  'nid' => '11',
+  'vid' => '22',
+  'tid' => '3',
+))
+->values(array(
+  'nid' => '11',
+  'vid' => '22',
+  'tid' => '4',
+))
+->values(array(
+  'nid' => '11',
+  'vid' => '22',
+  'tid' => '5',
+))
+->values(array(
+  'nid' => '11',
+  'vid' => '22',
+  'tid' => '6',
+))
+->values(array(
+  'nid' => '11',
+  'vid' => '22',
+  'tid' => '7',
+))
+->values(array(
+  'nid' => '11',
+  'vid' => '22',
+  'tid' => '8',
+))
+->values(array(
+  'nid' => '11',
+  'vid' => '22',
+  'tid' => '9',
+))
+->values(array(
+  'nid' => '11',
+  'vid' => '22',
+  'tid' => '10',
+))
+->values(array(
+  'nid' => '11',
+  'vid' => '21',
+  'tid' => '11',
+))
+->values(array(
+  'nid' => '11',
+  'vid' => '22',
+  'tid' => '12',
+))
+->values(array(
+  'nid' => '11',
+  'vid' => '22',
+  'tid' => '13',
+))
+->values(array(
+  'nid' => '11',
+  'vid' => '22',
+  'tid' => '14',
+))
+->values(array(
+  'nid' => '11',
+  'vid' => '22',
+  'tid' => '15',
+))
+->values(array(
+  'nid' => '11',
+  'vid' => '22',
+  'tid' => '16',
+))
+->values(array(
+  'nid' => '11',
+  'vid' => '22',
+  'tid' => '17',
+))
+->values(array(
+  'nid' => '11',
+  'vid' => '22',
+  'tid' => '18',
+))
+->values(array(
+  'nid' => '11',
+  'vid' => '22',
+  'tid' => '19',
+))
+->values(array(
+  'nid' => '11',
+  'vid' => '22',
+  'tid' => '20',
+))
+->values(array(
+  'nid' => '11',
+  'vid' => '22',
+  'tid' => '21',
+))
+->values(array(
+  'nid' => '11',
+  'vid' => '22',
+  'tid' => '22',
+))
+->values(array(
+  'nid' => '11',
+  'vid' => '22',
+  'tid' => '23',
+))
+->values(array(
+  'nid' => '11',
+  'vid' => '22',
+  'tid' => '24',
+))
+->values(array(
+  'nid' => '11',
+  'vid' => '22',
+  'tid' => '25',
+))
+->values(array(
+  'nid' => '11',
+  'vid' => '22',
+  'tid' => '26',
+))
+->values(array(
+  'nid' => '11',
+  'vid' => '22',
+  'tid' => '27',
+))
+->values(array(
+  'nid' => '11',
+  'vid' => '22',
+  'tid' => '28',
+))
+->values(array(
+  'nid' => '11',
+  'vid' => '22',
+  'tid' => '29',
+))
+->values(array(
+  'nid' => '11',
+  'vid' => '22',
+  'tid' => '30',
+))
+->values(array(
+  'nid' => '11',
+  'vid' => '22',
+  'tid' => '31',
+))
+->values(array(
+  'nid' => '11',
+  'vid' => '22',
+  'tid' => '32',
+))
+->values(array(
+  'nid' => '11',
+  'vid' => '22',
+  'tid' => '33',
+))
+->values(array(
+  'nid' => '11',
+  'vid' => '22',
+  'tid' => '34',
+))
+->values(array(
+  'nid' => '11',
+  'vid' => '22',
+  'tid' => '35',
+))
+->values(array(
+  'nid' => '11',
+  'vid' => '22',
+  'tid' => '36',
+))
+->values(array(
+  'nid' => '11',
+  'vid' => '22',
+  'tid' => '37',
+))
+->values(array(
+  'nid' => '11',
+  'vid' => '21',
+  'tid' => '38',
+))
+->values(array(
+  'nid' => '11',
+  'vid' => '22',
+  'tid' => '39',
+))
+->values(array(
+  'nid' => '11',
+  'vid' => '22',
+  'tid' => '40',
+))
+->values(array(
+  'nid' => '11',
+  'vid' => '22',
+  'tid' => '41',
+))
+->values(array(
+  'nid' => '11',
+  'vid' => '22',
+  'tid' => '42',
+))
+->values(array(
+  'nid' => '11',
+  'vid' => '22',
+  'tid' => '43',
+))
+->values(array(
+  'nid' => '11',
+  'vid' => '22',
+  'tid' => '44',
+))
+->values(array(
+  'nid' => '11',
+  'vid' => '22',
+  'tid' => '45',
+))
+->values(array(
+  'nid' => '11',
+  'vid' => '22',
+  'tid' => '46',
+))
+->values(array(
+  'nid' => '11',
+  'vid' => '22',
+  'tid' => '47',
+))
+->values(array(
+  'nid' => '11',
+  'vid' => '22',
+  'tid' => '48',
+))
+->values(array(
+  'nid' => '12',
+  'vid' => '24',
+  'tid' => '1',
+))
+->values(array(
+  'nid' => '12',
+  'vid' => '24',
+  'tid' => '2',
+))
+->values(array(
+  'nid' => '12',
+  'vid' => '24',
+  'tid' => '3',
+))
+->values(array(
+  'nid' => '12',
+  'vid' => '24',
+  'tid' => '4',
+))
+->values(array(
+  'nid' => '12',
+  'vid' => '24',
+  'tid' => '5',
+))
+->values(array(
+  'nid' => '12',
+  'vid' => '24',
+  'tid' => '6',
+))
+->values(array(
+  'nid' => '12',
+  'vid' => '24',
+  'tid' => '7',
+))
+->values(array(
+  'nid' => '12',
+  'vid' => '24',
+  'tid' => '8',
+))
+->values(array(
+  'nid' => '12',
+  'vid' => '24',
+  'tid' => '9',
+))
+->values(array(
+  'nid' => '12',
+  'vid' => '24',
+  'tid' => '10',
+))
+->values(array(
+  'nid' => '12',
+  'vid' => '24',
+  'tid' => '11',
+))
+->values(array(
+  'nid' => '12',
+  'vid' => '23',
+  'tid' => '12',
+))
+->values(array(
+  'nid' => '12',
+  'vid' => '24',
+  'tid' => '13',
+))
+->values(array(
+  'nid' => '12',
+  'vid' => '24',
+  'tid' => '14',
+))
+->values(array(
+  'nid' => '12',
+  'vid' => '24',
+  'tid' => '15',
+))
+->values(array(
+  'nid' => '12',
+  'vid' => '24',
+  'tid' => '16',
+))
+->values(array(
+  'nid' => '12',
+  'vid' => '24',
+  'tid' => '17',
+))
+->values(array(
+  'nid' => '12',
+  'vid' => '24',
+  'tid' => '18',
+))
+->values(array(
+  'nid' => '12',
+  'vid' => '24',
+  'tid' => '19',
+))
+->values(array(
+  'nid' => '12',
+  'vid' => '24',
+  'tid' => '20',
+))
+->values(array(
+  'nid' => '12',
+  'vid' => '24',
+  'tid' => '21',
+))
+->values(array(
+  'nid' => '12',
+  'vid' => '24',
+  'tid' => '22',
+))
+->values(array(
+  'nid' => '12',
+  'vid' => '24',
+  'tid' => '23',
+))
+->values(array(
+  'nid' => '12',
+  'vid' => '24',
+  'tid' => '24',
+))
+->values(array(
+  'nid' => '12',
+  'vid' => '24',
+  'tid' => '25',
+))
+->values(array(
+  'nid' => '12',
+  'vid' => '24',
+  'tid' => '26',
+))
+->values(array(
+  'nid' => '12',
+  'vid' => '24',
+  'tid' => '27',
+))
+->values(array(
+  'nid' => '12',
+  'vid' => '24',
+  'tid' => '28',
+))
+->values(array(
+  'nid' => '12',
+  'vid' => '24',
+  'tid' => '29',
+))
+->values(array(
+  'nid' => '12',
+  'vid' => '24',
+  'tid' => '30',
+))
+->values(array(
+  'nid' => '12',
+  'vid' => '24',
+  'tid' => '31',
+))
+->values(array(
+  'nid' => '12',
+  'vid' => '24',
+  'tid' => '32',
+))
+->values(array(
+  'nid' => '12',
+  'vid' => '24',
+  'tid' => '33',
+))
+->values(array(
+  'nid' => '12',
+  'vid' => '24',
+  'tid' => '34',
+))
+->values(array(
+  'nid' => '12',
+  'vid' => '24',
+  'tid' => '35',
+))
+->values(array(
+  'nid' => '12',
+  'vid' => '24',
+  'tid' => '36',
+))
+->values(array(
+  'nid' => '12',
+  'vid' => '23',
+  'tid' => '37',
+))
+->values(array(
+  'nid' => '12',
+  'vid' => '24',
+  'tid' => '38',
+))
+->values(array(
+  'nid' => '12',
+  'vid' => '24',
+  'tid' => '39',
+))
+->values(array(
+  'nid' => '12',
+  'vid' => '24',
+  'tid' => '40',
+))
+->values(array(
+  'nid' => '12',
+  'vid' => '24',
+  'tid' => '41',
+))
+->values(array(
+  'nid' => '12',
+  'vid' => '24',
+  'tid' => '42',
+))
+->values(array(
+  'nid' => '12',
+  'vid' => '24',
+  'tid' => '43',
+))
+->values(array(
+  'nid' => '12',
+  'vid' => '24',
+  'tid' => '44',
+))
+->values(array(
+  'nid' => '12',
+  'vid' => '24',
+  'tid' => '45',
+))
+->values(array(
+  'nid' => '12',
+  'vid' => '24',
+  'tid' => '46',
+))
+->values(array(
+  'nid' => '12',
+  'vid' => '24',
+  'tid' => '47',
+))
+->values(array(
+  'nid' => '12',
+  'vid' => '24',
+  'tid' => '48',
+))
+->values(array(
+  'nid' => '13',
+  'vid' => '25',
+  'tid' => '1',
+))
+->values(array(
+  'nid' => '13',
+  'vid' => '25',
+  'tid' => '2',
+))
+->values(array(
+  'nid' => '13',
+  'vid' => '25',
+  'tid' => '3',
+))
+->values(array(
+  'nid' => '13',
+  'vid' => '25',
+  'tid' => '4',
+))
+->values(array(
+  'nid' => '13',
+  'vid' => '25',
+  'tid' => '5',
+))
+->values(array(
+  'nid' => '13',
+  'vid' => '25',
+  'tid' => '6',
+))
+->values(array(
+  'nid' => '13',
+  'vid' => '25',
+  'tid' => '7',
+))
+->values(array(
+  'nid' => '13',
+  'vid' => '25',
+  'tid' => '8',
+))
+->values(array(
+  'nid' => '13',
+  'vid' => '25',
+  'tid' => '9',
+))
+->values(array(
+  'nid' => '13',
+  'vid' => '25',
+  'tid' => '10',
+))
+->values(array(
+  'nid' => '13',
+  'vid' => '25',
+  'tid' => '11',
+))
+->values(array(
+  'nid' => '13',
+  'vid' => '25',
+  'tid' => '12',
+))
+->values(array(
+  'nid' => '13',
+  'vid' => '25',
+  'tid' => '14',
+))
+->values(array(
+  'nid' => '13',
+  'vid' => '25',
+  'tid' => '15',
+))
+->values(array(
+  'nid' => '13',
+  'vid' => '25',
+  'tid' => '16',
+))
+->values(array(
+  'nid' => '13',
+  'vid' => '25',
+  'tid' => '17',
+))
+->values(array(
+  'nid' => '13',
+  'vid' => '25',
+  'tid' => '18',
+))
+->values(array(
+  'nid' => '13',
+  'vid' => '25',
+  'tid' => '19',
+))
+->values(array(
+  'nid' => '13',
+  'vid' => '25',
+  'tid' => '20',
+))
+->values(array(
+  'nid' => '13',
+  'vid' => '25',
+  'tid' => '21',
+))
+->values(array(
+  'nid' => '13',
+  'vid' => '25',
+  'tid' => '22',
+))
+->values(array(
+  'nid' => '13',
+  'vid' => '25',
+  'tid' => '23',
+))
+->values(array(
+  'nid' => '13',
+  'vid' => '25',
+  'tid' => '24',
+))
+->values(array(
+  'nid' => '13',
+  'vid' => '25',
+  'tid' => '25',
+))
+->values(array(
+  'nid' => '13',
+  'vid' => '25',
+  'tid' => '26',
+))
+->values(array(
+  'nid' => '13',
+  'vid' => '25',
+  'tid' => '27',
+))
+->values(array(
+  'nid' => '13',
+  'vid' => '25',
+  'tid' => '28',
+))
+->values(array(
+  'nid' => '13',
+  'vid' => '25',
+  'tid' => '29',
+))
+->values(array(
+  'nid' => '13',
+  'vid' => '25',
+  'tid' => '30',
+))
+->values(array(
+  'nid' => '13',
+  'vid' => '25',
+  'tid' => '31',
+))
+->values(array(
+  'nid' => '13',
+  'vid' => '25',
+  'tid' => '32',
+))
+->values(array(
+  'nid' => '13',
+  'vid' => '25',
+  'tid' => '33',
+))
+->values(array(
+  'nid' => '13',
+  'vid' => '25',
+  'tid' => '34',
+))
+->values(array(
+  'nid' => '13',
+  'vid' => '25',
+  'tid' => '35',
+))
+->values(array(
+  'nid' => '13',
+  'vid' => '25',
+  'tid' => '37',
+))
+->values(array(
+  'nid' => '13',
+  'vid' => '25',
+  'tid' => '38',
+))
+->values(array(
+  'nid' => '13',
+  'vid' => '25',
+  'tid' => '39',
+))
+->values(array(
+  'nid' => '13',
+  'vid' => '25',
+  'tid' => '40',
+))
+->values(array(
+  'nid' => '13',
+  'vid' => '25',
+  'tid' => '41',
+))
+->values(array(
+  'nid' => '13',
+  'vid' => '25',
+  'tid' => '42',
+))
+->values(array(
+  'nid' => '13',
+  'vid' => '25',
+  'tid' => '43',
+))
+->values(array(
+  'nid' => '13',
+  'vid' => '25',
+  'tid' => '44',
+))
+->values(array(
+  'nid' => '13',
+  'vid' => '25',
+  'tid' => '45',
+))
+->values(array(
+  'nid' => '13',
+  'vid' => '25',
+  'tid' => '46',
+))
+->values(array(
+  'nid' => '13',
+  'vid' => '25',
+  'tid' => '47',
+))
+->values(array(
+  'nid' => '13',
+  'vid' => '25',
+  'tid' => '48',
+))
+->values(array(
+  'nid' => '14',
+  'vid' => '26',
+  'tid' => '1',
+))
+->values(array(
+  'nid' => '14',
+  'vid' => '26',
+  'tid' => '2',
+))
+->values(array(
+  'nid' => '14',
+  'vid' => '26',
+  'tid' => '3',
+))
+->values(array(
+  'nid' => '14',
+  'vid' => '26',
+  'tid' => '4',
+))
+->values(array(
+  'nid' => '14',
+  'vid' => '26',
+  'tid' => '5',
+))
+->values(array(
+  'nid' => '14',
+  'vid' => '26',
+  'tid' => '6',
+))
+->values(array(
+  'nid' => '14',
+  'vid' => '26',
+  'tid' => '7',
+))
+->values(array(
+  'nid' => '14',
+  'vid' => '26',
+  'tid' => '8',
+))
+->values(array(
+  'nid' => '14',
+  'vid' => '26',
+  'tid' => '9',
+))
+->values(array(
+  'nid' => '14',
+  'vid' => '26',
+  'tid' => '10',
+))
+->values(array(
+  'nid' => '14',
+  'vid' => '26',
+  'tid' => '11',
+))
+->values(array(
+  'nid' => '14',
+  'vid' => '26',
+  'tid' => '12',
+))
+->values(array(
+  'nid' => '14',
+  'vid' => '26',
+  'tid' => '13',
+))
+->values(array(
+  'nid' => '14',
+  'vid' => '26',
+  'tid' => '15',
+))
+->values(array(
+  'nid' => '14',
+  'vid' => '26',
+  'tid' => '16',
+))
+->values(array(
+  'nid' => '14',
+  'vid' => '26',
+  'tid' => '17',
+))
+->values(array(
+  'nid' => '14',
+  'vid' => '26',
+  'tid' => '18',
+))
+->values(array(
+  'nid' => '14',
+  'vid' => '26',
+  'tid' => '19',
+))
+->values(array(
+  'nid' => '14',
+  'vid' => '26',
+  'tid' => '20',
+))
+->values(array(
+  'nid' => '14',
+  'vid' => '26',
+  'tid' => '21',
+))
+->values(array(
+  'nid' => '14',
+  'vid' => '26',
+  'tid' => '22',
+))
+->values(array(
+  'nid' => '14',
+  'vid' => '26',
+  'tid' => '23',
+))
+->values(array(
+  'nid' => '14',
+  'vid' => '26',
+  'tid' => '24',
+))
+->values(array(
+  'nid' => '14',
+  'vid' => '26',
+  'tid' => '25',
+))
+->values(array(
+  'nid' => '14',
+  'vid' => '26',
+  'tid' => '26',
+))
+->values(array(
+  'nid' => '14',
+  'vid' => '26',
+  'tid' => '27',
+))
+->values(array(
+  'nid' => '14',
+  'vid' => '26',
+  'tid' => '28',
+))
+->values(array(
+  'nid' => '14',
+  'vid' => '26',
+  'tid' => '29',
+))
+->values(array(
+  'nid' => '14',
+  'vid' => '26',
+  'tid' => '30',
+))
+->values(array(
+  'nid' => '14',
+  'vid' => '26',
+  'tid' => '31',
+))
+->values(array(
+  'nid' => '14',
+  'vid' => '26',
+  'tid' => '32',
+))
+->values(array(
+  'nid' => '14',
+  'vid' => '26',
+  'tid' => '33',
+))
+->values(array(
+  'nid' => '14',
+  'vid' => '26',
+  'tid' => '34',
+))
+->values(array(
+  'nid' => '14',
+  'vid' => '26',
+  'tid' => '36',
+))
+->values(array(
+  'nid' => '14',
+  'vid' => '26',
+  'tid' => '37',
+))
+->values(array(
+  'nid' => '14',
+  'vid' => '26',
+  'tid' => '38',
+))
+->values(array(
+  'nid' => '14',
+  'vid' => '26',
+  'tid' => '39',
+))
+->values(array(
+  'nid' => '14',
+  'vid' => '26',
+  'tid' => '40',
+))
+->values(array(
+  'nid' => '14',
+  'vid' => '26',
+  'tid' => '41',
+))
+->values(array(
+  'nid' => '14',
+  'vid' => '26',
+  'tid' => '42',
+))
+->values(array(
+  'nid' => '14',
+  'vid' => '26',
+  'tid' => '43',
+))
+->values(array(
+  'nid' => '14',
+  'vid' => '26',
+  'tid' => '44',
+))
+->values(array(
+  'nid' => '14',
+  'vid' => '26',
+  'tid' => '45',
+))
+->values(array(
+  'nid' => '14',
+  'vid' => '26',
+  'tid' => '46',
+))
+->values(array(
+  'nid' => '14',
+  'vid' => '26',
+  'tid' => '47',
+))
+->values(array(
+  'nid' => '14',
+  'vid' => '26',
+  'tid' => '48',
+))
+->values(array(
+  'nid' => '15',
+  'vid' => '27',
+  'tid' => '1',
+))
+->values(array(
+  'nid' => '15',
+  'vid' => '27',
+  'tid' => '2',
+))
+->values(array(
+  'nid' => '15',
+  'vid' => '27',
+  'tid' => '3',
+))
+->values(array(
+  'nid' => '15',
+  'vid' => '27',
+  'tid' => '4',
+))
+->values(array(
+  'nid' => '15',
+  'vid' => '27',
+  'tid' => '5',
+))
+->values(array(
+  'nid' => '15',
+  'vid' => '27',
+  'tid' => '6',
+))
+->values(array(
+  'nid' => '15',
+  'vid' => '27',
+  'tid' => '7',
+))
+->values(array(
+  'nid' => '15',
+  'vid' => '27',
+  'tid' => '8',
+))
+->values(array(
+  'nid' => '15',
+  'vid' => '27',
+  'tid' => '9',
+))
+->values(array(
+  'nid' => '15',
+  'vid' => '27',
+  'tid' => '10',
+))
+->values(array(
+  'nid' => '15',
+  'vid' => '27',
+  'tid' => '11',
+))
+->values(array(
+  'nid' => '15',
+  'vid' => '27',
+  'tid' => '12',
+))
+->values(array(
+  'nid' => '15',
+  'vid' => '27',
+  'tid' => '13',
+))
+->values(array(
+  'nid' => '15',
+  'vid' => '27',
+  'tid' => '14',
+))
+->values(array(
+  'nid' => '15',
+  'vid' => '27',
+  'tid' => '16',
+))
+->values(array(
+  'nid' => '15',
+  'vid' => '27',
+  'tid' => '17',
+))
+->values(array(
+  'nid' => '15',
+  'vid' => '27',
+  'tid' => '18',
+))
+->values(array(
+  'nid' => '15',
+  'vid' => '27',
+  'tid' => '19',
+))
+->values(array(
+  'nid' => '15',
+  'vid' => '27',
+  'tid' => '20',
+))
+->values(array(
+  'nid' => '15',
+  'vid' => '27',
+  'tid' => '21',
+))
+->values(array(
+  'nid' => '15',
+  'vid' => '27',
+  'tid' => '22',
+))
+->values(array(
+  'nid' => '15',
+  'vid' => '27',
+  'tid' => '23',
+))
+->values(array(
+  'nid' => '15',
+  'vid' => '27',
+  'tid' => '24',
+))
+->values(array(
+  'nid' => '15',
+  'vid' => '27',
+  'tid' => '25',
+))
+->values(array(
+  'nid' => '15',
+  'vid' => '27',
+  'tid' => '26',
+))
+->values(array(
+  'nid' => '15',
+  'vid' => '27',
+  'tid' => '27',
+))
+->values(array(
+  'nid' => '15',
+  'vid' => '27',
+  'tid' => '28',
+))
+->values(array(
+  'nid' => '15',
+  'vid' => '27',
+  'tid' => '29',
+))
+->values(array(
+  'nid' => '15',
+  'vid' => '27',
+  'tid' => '30',
+))
+->values(array(
+  'nid' => '15',
+  'vid' => '27',
+  'tid' => '31',
+))
+->values(array(
+  'nid' => '15',
+  'vid' => '27',
+  'tid' => '32',
+))
+->values(array(
+  'nid' => '15',
+  'vid' => '27',
+  'tid' => '33',
+))
+->values(array(
+  'nid' => '15',
+  'vid' => '27',
+  'tid' => '35',
+))
+->values(array(
+  'nid' => '15',
+  'vid' => '27',
+  'tid' => '36',
+))
+->values(array(
+  'nid' => '15',
+  'vid' => '27',
+  'tid' => '37',
+))
+->values(array(
+  'nid' => '15',
+  'vid' => '27',
+  'tid' => '38',
+))
+->values(array(
+  'nid' => '15',
+  'vid' => '27',
+  'tid' => '39',
+))
+->values(array(
+  'nid' => '15',
+  'vid' => '27',
+  'tid' => '40',
+))
+->values(array(
+  'nid' => '15',
+  'vid' => '27',
+  'tid' => '41',
+))
+->values(array(
+  'nid' => '15',
+  'vid' => '27',
+  'tid' => '42',
+))
+->values(array(
+  'nid' => '15',
+  'vid' => '27',
+  'tid' => '43',
+))
+->values(array(
+  'nid' => '15',
+  'vid' => '27',
+  'tid' => '44',
+))
+->values(array(
+  'nid' => '15',
+  'vid' => '27',
+  'tid' => '45',
+))
+->values(array(
+  'nid' => '15',
+  'vid' => '27',
+  'tid' => '46',
+))
+->values(array(
+  'nid' => '15',
+  'vid' => '27',
+  'tid' => '47',
+))
+->values(array(
+  'nid' => '15',
+  'vid' => '27',
+  'tid' => '48',
+))
+->values(array(
+  'nid' => '16',
+  'vid' => '28',
+  'tid' => '1',
+))
+->values(array(
+  'nid' => '16',
+  'vid' => '28',
+  'tid' => '2',
+))
+->values(array(
+  'nid' => '16',
+  'vid' => '28',
+  'tid' => '3',
+))
+->values(array(
+  'nid' => '16',
+  'vid' => '28',
+  'tid' => '4',
+))
+->values(array(
+  'nid' => '16',
+  'vid' => '28',
+  'tid' => '5',
+))
+->values(array(
+  'nid' => '16',
+  'vid' => '28',
+  'tid' => '6',
+))
+->values(array(
+  'nid' => '16',
+  'vid' => '28',
+  'tid' => '7',
+))
+->values(array(
+  'nid' => '16',
+  'vid' => '28',
+  'tid' => '8',
+))
+->values(array(
+  'nid' => '16',
+  'vid' => '28',
+  'tid' => '9',
+))
+->values(array(
+  'nid' => '16',
+  'vid' => '28',
+  'tid' => '10',
+))
+->values(array(
+  'nid' => '16',
+  'vid' => '28',
+  'tid' => '11',
+))
+->values(array(
+  'nid' => '16',
+  'vid' => '28',
+  'tid' => '12',
+))
+->values(array(
+  'nid' => '16',
+  'vid' => '28',
+  'tid' => '13',
+))
+->values(array(
+  'nid' => '16',
+  'vid' => '28',
+  'tid' => '14',
+))
+->values(array(
+  'nid' => '16',
+  'vid' => '28',
+  'tid' => '15',
+))
+->values(array(
+  'nid' => '16',
+  'vid' => '28',
+  'tid' => '17',
+))
+->values(array(
+  'nid' => '16',
+  'vid' => '28',
+  'tid' => '18',
+))
+->values(array(
+  'nid' => '16',
+  'vid' => '28',
+  'tid' => '19',
+))
+->values(array(
+  'nid' => '16',
+  'vid' => '28',
+  'tid' => '20',
+))
+->values(array(
+  'nid' => '16',
+  'vid' => '28',
+  'tid' => '21',
+))
+->values(array(
+  'nid' => '16',
+  'vid' => '28',
+  'tid' => '22',
+))
+->values(array(
+  'nid' => '16',
+  'vid' => '28',
+  'tid' => '23',
+))
+->values(array(
+  'nid' => '16',
+  'vid' => '28',
+  'tid' => '24',
+))
+->values(array(
+  'nid' => '16',
+  'vid' => '28',
+  'tid' => '25',
+))
+->values(array(
+  'nid' => '16',
+  'vid' => '28',
+  'tid' => '26',
+))
+->values(array(
+  'nid' => '16',
+  'vid' => '28',
+  'tid' => '27',
+))
+->values(array(
+  'nid' => '16',
+  'vid' => '28',
+  'tid' => '28',
+))
+->values(array(
+  'nid' => '16',
+  'vid' => '28',
+  'tid' => '29',
+))
+->values(array(
+  'nid' => '16',
+  'vid' => '28',
+  'tid' => '30',
+))
+->values(array(
+  'nid' => '16',
+  'vid' => '28',
+  'tid' => '31',
+))
+->values(array(
+  'nid' => '16',
+  'vid' => '28',
+  'tid' => '32',
+))
+->values(array(
+  'nid' => '16',
+  'vid' => '28',
+  'tid' => '34',
+))
+->values(array(
+  'nid' => '16',
+  'vid' => '28',
+  'tid' => '35',
+))
+->values(array(
+  'nid' => '16',
+  'vid' => '28',
+  'tid' => '36',
+))
+->values(array(
+  'nid' => '16',
+  'vid' => '28',
+  'tid' => '37',
+))
+->values(array(
+  'nid' => '16',
+  'vid' => '28',
+  'tid' => '38',
+))
+->values(array(
+  'nid' => '16',
+  'vid' => '28',
+  'tid' => '39',
+))
+->values(array(
+  'nid' => '16',
+  'vid' => '28',
+  'tid' => '40',
+))
+->values(array(
+  'nid' => '16',
+  'vid' => '28',
+  'tid' => '41',
+))
+->values(array(
+  'nid' => '16',
+  'vid' => '28',
+  'tid' => '42',
+))
+->values(array(
+  'nid' => '16',
+  'vid' => '28',
+  'tid' => '43',
+))
+->values(array(
+  'nid' => '16',
+  'vid' => '28',
+  'tid' => '44',
+))
+->values(array(
+  'nid' => '16',
+  'vid' => '28',
+  'tid' => '45',
+))
+->values(array(
+  'nid' => '16',
+  'vid' => '28',
+  'tid' => '46',
+))
+->values(array(
+  'nid' => '16',
+  'vid' => '28',
+  'tid' => '47',
+))
+->values(array(
+  'nid' => '16',
+  'vid' => '28',
+  'tid' => '48',
+))
+->values(array(
+  'nid' => '17',
+  'vid' => '29',
+  'tid' => '1',
+))
+->values(array(
+  'nid' => '17',
+  'vid' => '29',
+  'tid' => '2',
+))
+->values(array(
+  'nid' => '17',
+  'vid' => '29',
+  'tid' => '3',
+))
+->values(array(
+  'nid' => '17',
+  'vid' => '29',
+  'tid' => '4',
+))
+->values(array(
+  'nid' => '17',
+  'vid' => '29',
+  'tid' => '5',
+))
+->values(array(
+  'nid' => '17',
+  'vid' => '29',
+  'tid' => '6',
+))
+->values(array(
+  'nid' => '17',
+  'vid' => '29',
+  'tid' => '7',
+))
+->values(array(
+  'nid' => '17',
+  'vid' => '29',
+  'tid' => '8',
+))
+->values(array(
+  'nid' => '17',
+  'vid' => '29',
+  'tid' => '9',
+))
+->values(array(
+  'nid' => '17',
+  'vid' => '29',
+  'tid' => '10',
+))
+->values(array(
+  'nid' => '17',
+  'vid' => '29',
+  'tid' => '11',
+))
+->values(array(
+  'nid' => '17',
+  'vid' => '29',
+  'tid' => '12',
+))
+->values(array(
+  'nid' => '17',
+  'vid' => '29',
+  'tid' => '13',
+))
+->values(array(
+  'nid' => '17',
+  'vid' => '29',
+  'tid' => '14',
+))
+->values(array(
+  'nid' => '17',
+  'vid' => '29',
+  'tid' => '15',
+))
+->values(array(
+  'nid' => '17',
+  'vid' => '29',
+  'tid' => '16',
+))
+->values(array(
+  'nid' => '17',
+  'vid' => '29',
+  'tid' => '18',
+))
+->values(array(
+  'nid' => '17',
+  'vid' => '29',
+  'tid' => '19',
+))
+->values(array(
+  'nid' => '17',
+  'vid' => '29',
+  'tid' => '20',
+))
+->values(array(
+  'nid' => '17',
+  'vid' => '29',
+  'tid' => '21',
+))
+->values(array(
+  'nid' => '17',
+  'vid' => '29',
+  'tid' => '22',
+))
+->values(array(
+  'nid' => '17',
+  'vid' => '29',
+  'tid' => '23',
+))
+->values(array(
+  'nid' => '17',
+  'vid' => '29',
+  'tid' => '24',
+))
+->values(array(
+  'nid' => '17',
+  'vid' => '29',
+  'tid' => '25',
+))
+->values(array(
+  'nid' => '17',
+  'vid' => '29',
+  'tid' => '26',
+))
+->values(array(
+  'nid' => '17',
+  'vid' => '29',
+  'tid' => '27',
+))
+->values(array(
+  'nid' => '17',
+  'vid' => '29',
+  'tid' => '28',
+))
+->values(array(
+  'nid' => '17',
+  'vid' => '29',
+  'tid' => '29',
+))
+->values(array(
+  'nid' => '17',
+  'vid' => '29',
+  'tid' => '30',
+))
+->values(array(
+  'nid' => '17',
+  'vid' => '29',
+  'tid' => '31',
+))
+->values(array(
+  'nid' => '17',
+  'vid' => '29',
+  'tid' => '33',
+))
+->values(array(
+  'nid' => '17',
+  'vid' => '29',
+  'tid' => '34',
+))
+->values(array(
+  'nid' => '17',
+  'vid' => '29',
+  'tid' => '35',
+))
+->values(array(
+  'nid' => '17',
+  'vid' => '29',
+  'tid' => '36',
+))
+->values(array(
+  'nid' => '17',
+  'vid' => '29',
+  'tid' => '37',
+))
+->values(array(
+  'nid' => '17',
+  'vid' => '29',
+  'tid' => '38',
+))
+->values(array(
+  'nid' => '17',
+  'vid' => '29',
+  'tid' => '39',
+))
+->values(array(
+  'nid' => '17',
+  'vid' => '29',
+  'tid' => '40',
+))
+->values(array(
+  'nid' => '17',
+  'vid' => '29',
+  'tid' => '41',
+))
+->values(array(
+  'nid' => '17',
+  'vid' => '29',
+  'tid' => '42',
+))
+->values(array(
+  'nid' => '17',
+  'vid' => '29',
+  'tid' => '43',
+))
+->values(array(
+  'nid' => '17',
+  'vid' => '29',
+  'tid' => '44',
+))
+->values(array(
+  'nid' => '17',
+  'vid' => '29',
+  'tid' => '45',
+))
+->values(array(
+  'nid' => '17',
+  'vid' => '29',
+  'tid' => '46',
+))
+->values(array(
+  'nid' => '17',
+  'vid' => '29',
+  'tid' => '47',
+))
+->values(array(
+  'nid' => '17',
+  'vid' => '29',
+  'tid' => '48',
+))
+->values(array(
+  'nid' => '18',
+  'vid' => '30',
+  'tid' => '1',
+))
+->values(array(
+  'nid' => '18',
+  'vid' => '30',
+  'tid' => '2',
+))
+->values(array(
+  'nid' => '18',
+  'vid' => '30',
+  'tid' => '3',
+))
+->values(array(
+  'nid' => '18',
+  'vid' => '30',
+  'tid' => '4',
+))
+->values(array(
+  'nid' => '18',
+  'vid' => '30',
+  'tid' => '5',
+))
+->values(array(
+  'nid' => '18',
+  'vid' => '30',
+  'tid' => '6',
+))
+->values(array(
+  'nid' => '18',
+  'vid' => '30',
+  'tid' => '7',
+))
+->values(array(
+  'nid' => '18',
+  'vid' => '30',
+  'tid' => '8',
+))
+->values(array(
+  'nid' => '18',
+  'vid' => '30',
+  'tid' => '9',
+))
+->values(array(
+  'nid' => '18',
+  'vid' => '30',
+  'tid' => '10',
+))
+->values(array(
+  'nid' => '18',
+  'vid' => '30',
+  'tid' => '11',
+))
+->values(array(
+  'nid' => '18',
+  'vid' => '30',
+  'tid' => '12',
+))
+->values(array(
+  'nid' => '18',
+  'vid' => '30',
+  'tid' => '13',
+))
+->values(array(
+  'nid' => '18',
+  'vid' => '30',
+  'tid' => '14',
+))
+->values(array(
+  'nid' => '18',
+  'vid' => '30',
+  'tid' => '15',
+))
+->values(array(
+  'nid' => '18',
+  'vid' => '30',
+  'tid' => '16',
+))
+->values(array(
+  'nid' => '18',
+  'vid' => '30',
+  'tid' => '17',
+))
+->values(array(
+  'nid' => '18',
+  'vid' => '30',
+  'tid' => '19',
+))
+->values(array(
+  'nid' => '18',
+  'vid' => '30',
+  'tid' => '20',
+))
+->values(array(
+  'nid' => '18',
+  'vid' => '30',
+  'tid' => '21',
+))
+->values(array(
+  'nid' => '18',
+  'vid' => '30',
+  'tid' => '22',
+))
+->values(array(
+  'nid' => '18',
+  'vid' => '30',
+  'tid' => '23',
+))
+->values(array(
+  'nid' => '18',
+  'vid' => '30',
+  'tid' => '24',
+))
+->values(array(
+  'nid' => '18',
+  'vid' => '30',
+  'tid' => '25',
+))
+->values(array(
+  'nid' => '18',
+  'vid' => '30',
+  'tid' => '26',
+))
+->values(array(
+  'nid' => '18',
+  'vid' => '30',
+  'tid' => '27',
+))
+->values(array(
+  'nid' => '18',
+  'vid' => '30',
+  'tid' => '28',
+))
+->values(array(
+  'nid' => '18',
+  'vid' => '30',
+  'tid' => '29',
+))
+->values(array(
+  'nid' => '18',
+  'vid' => '30',
+  'tid' => '30',
+))
+->values(array(
+  'nid' => '18',
+  'vid' => '30',
+  'tid' => '32',
+))
+->values(array(
+  'nid' => '18',
+  'vid' => '30',
+  'tid' => '33',
+))
+->values(array(
+  'nid' => '18',
+  'vid' => '30',
+  'tid' => '34',
+))
+->values(array(
+  'nid' => '18',
+  'vid' => '30',
+  'tid' => '35',
+))
+->values(array(
+  'nid' => '18',
+  'vid' => '30',
+  'tid' => '36',
+))
+->values(array(
+  'nid' => '18',
+  'vid' => '30',
+  'tid' => '37',
+))
+->values(array(
+  'nid' => '18',
+  'vid' => '30',
+  'tid' => '38',
+))
+->values(array(
+  'nid' => '18',
+  'vid' => '30',
+  'tid' => '39',
+))
+->values(array(
+  'nid' => '18',
+  'vid' => '30',
+  'tid' => '40',
+))
+->values(array(
+  'nid' => '18',
+  'vid' => '30',
+  'tid' => '41',
+))
+->values(array(
+  'nid' => '18',
+  'vid' => '30',
+  'tid' => '42',
+))
+->values(array(
+  'nid' => '18',
+  'vid' => '30',
+  'tid' => '43',
+))
+->values(array(
+  'nid' => '18',
+  'vid' => '30',
+  'tid' => '44',
+))
+->values(array(
+  'nid' => '18',
+  'vid' => '30',
+  'tid' => '45',
+))
+->values(array(
+  'nid' => '18',
+  'vid' => '30',
+  'tid' => '46',
+))
+->values(array(
+  'nid' => '18',
+  'vid' => '30',
+  'tid' => '47',
+))
+->values(array(
+  'nid' => '18',
+  'vid' => '30',
+  'tid' => '48',
+))
+->values(array(
+  'nid' => '19',
+  'vid' => '31',
+  'tid' => '1',
+))
+->values(array(
+  'nid' => '19',
+  'vid' => '31',
+  'tid' => '2',
+))
+->values(array(
+  'nid' => '19',
+  'vid' => '31',
+  'tid' => '3',
+))
+->values(array(
+  'nid' => '19',
+  'vid' => '31',
+  'tid' => '4',
+))
+->values(array(
+  'nid' => '19',
+  'vid' => '31',
+  'tid' => '5',
+))
+->values(array(
+  'nid' => '19',
+  'vid' => '31',
+  'tid' => '6',
+))
+->values(array(
+  'nid' => '19',
+  'vid' => '31',
+  'tid' => '7',
+))
+->values(array(
+  'nid' => '19',
+  'vid' => '31',
+  'tid' => '8',
+))
+->values(array(
+  'nid' => '19',
+  'vid' => '31',
+  'tid' => '9',
+))
+->values(array(
+  'nid' => '19',
+  'vid' => '31',
+  'tid' => '10',
+))
+->values(array(
+  'nid' => '19',
+  'vid' => '31',
+  'tid' => '11',
+))
+->values(array(
+  'nid' => '19',
+  'vid' => '31',
+  'tid' => '12',
+))
+->values(array(
+  'nid' => '19',
+  'vid' => '31',
+  'tid' => '13',
+))
+->values(array(
+  'nid' => '19',
+  'vid' => '31',
+  'tid' => '14',
+))
+->values(array(
+  'nid' => '19',
+  'vid' => '31',
+  'tid' => '15',
+))
+->values(array(
+  'nid' => '19',
+  'vid' => '31',
+  'tid' => '16',
+))
+->values(array(
+  'nid' => '19',
+  'vid' => '31',
+  'tid' => '17',
+))
+->values(array(
+  'nid' => '19',
+  'vid' => '31',
+  'tid' => '18',
+))
+->values(array(
+  'nid' => '19',
+  'vid' => '31',
+  'tid' => '20',
+))
+->values(array(
+  'nid' => '19',
+  'vid' => '31',
+  'tid' => '21',
+))
+->values(array(
+  'nid' => '19',
+  'vid' => '31',
+  'tid' => '22',
+))
+->values(array(
+  'nid' => '19',
+  'vid' => '31',
+  'tid' => '23',
+))
+->values(array(
+  'nid' => '19',
+  'vid' => '31',
+  'tid' => '24',
+))
+->values(array(
+  'nid' => '19',
+  'vid' => '31',
+  'tid' => '25',
+))
+->values(array(
+  'nid' => '19',
+  'vid' => '31',
+  'tid' => '26',
+))
+->values(array(
+  'nid' => '19',
+  'vid' => '31',
+  'tid' => '27',
+))
+->values(array(
+  'nid' => '19',
+  'vid' => '31',
+  'tid' => '28',
+))
+->values(array(
+  'nid' => '19',
+  'vid' => '31',
+  'tid' => '29',
+))
+->values(array(
+  'nid' => '19',
+  'vid' => '31',
+  'tid' => '31',
+))
+->values(array(
+  'nid' => '19',
+  'vid' => '31',
+  'tid' => '32',
+))
+->values(array(
+  'nid' => '19',
+  'vid' => '31',
+  'tid' => '33',
+))
+->values(array(
+  'nid' => '19',
+  'vid' => '31',
+  'tid' => '34',
+))
+->values(array(
+  'nid' => '19',
+  'vid' => '31',
+  'tid' => '35',
+))
+->values(array(
+  'nid' => '19',
+  'vid' => '31',
+  'tid' => '36',
+))
+->values(array(
+  'nid' => '19',
+  'vid' => '31',
+  'tid' => '37',
+))
+->values(array(
+  'nid' => '19',
+  'vid' => '31',
+  'tid' => '38',
+))
+->values(array(
+  'nid' => '19',
+  'vid' => '31',
+  'tid' => '39',
+))
+->values(array(
+  'nid' => '19',
+  'vid' => '31',
+  'tid' => '40',
+))
+->values(array(
+  'nid' => '19',
+  'vid' => '31',
+  'tid' => '41',
+))
+->values(array(
+  'nid' => '19',
+  'vid' => '31',
+  'tid' => '42',
+))
+->values(array(
+  'nid' => '19',
+  'vid' => '31',
+  'tid' => '43',
+))
+->values(array(
+  'nid' => '19',
+  'vid' => '31',
+  'tid' => '44',
+))
+->values(array(
+  'nid' => '19',
+  'vid' => '31',
+  'tid' => '45',
+))
+->values(array(
+  'nid' => '19',
+  'vid' => '31',
+  'tid' => '46',
+))
+->values(array(
+  'nid' => '19',
+  'vid' => '31',
+  'tid' => '47',
+))
+->values(array(
+  'nid' => '19',
+  'vid' => '31',
+  'tid' => '48',
+))
+->values(array(
+  'nid' => '20',
+  'vid' => '32',
+  'tid' => '1',
+))
+->values(array(
+  'nid' => '20',
+  'vid' => '32',
+  'tid' => '2',
+))
+->values(array(
+  'nid' => '20',
+  'vid' => '32',
+  'tid' => '3',
+))
+->values(array(
+  'nid' => '20',
+  'vid' => '32',
+  'tid' => '4',
+))
+->values(array(
+  'nid' => '20',
+  'vid' => '32',
+  'tid' => '5',
+))
+->values(array(
+  'nid' => '20',
+  'vid' => '32',
+  'tid' => '6',
+))
+->values(array(
+  'nid' => '20',
+  'vid' => '32',
+  'tid' => '7',
+))
+->values(array(
+  'nid' => '20',
+  'vid' => '32',
+  'tid' => '8',
+))
+->values(array(
+  'nid' => '20',
+  'vid' => '32',
+  'tid' => '9',
+))
+->values(array(
+  'nid' => '20',
+  'vid' => '32',
+  'tid' => '10',
+))
+->values(array(
+  'nid' => '20',
+  'vid' => '32',
+  'tid' => '11',
+))
+->values(array(
+  'nid' => '20',
+  'vid' => '32',
+  'tid' => '12',
+))
+->values(array(
+  'nid' => '20',
+  'vid' => '32',
+  'tid' => '13',
+))
+->values(array(
+  'nid' => '20',
+  'vid' => '32',
+  'tid' => '14',
+))
+->values(array(
+  'nid' => '20',
+  'vid' => '32',
+  'tid' => '15',
+))
+->values(array(
+  'nid' => '20',
+  'vid' => '32',
+  'tid' => '16',
+))
+->values(array(
+  'nid' => '20',
+  'vid' => '32',
+  'tid' => '17',
+))
+->values(array(
+  'nid' => '20',
+  'vid' => '32',
+  'tid' => '18',
+))
+->values(array(
+  'nid' => '20',
+  'vid' => '32',
+  'tid' => '19',
+))
+->values(array(
+  'nid' => '20',
+  'vid' => '32',
+  'tid' => '21',
+))
+->values(array(
+  'nid' => '20',
+  'vid' => '32',
+  'tid' => '22',
+))
+->values(array(
+  'nid' => '20',
+  'vid' => '32',
+  'tid' => '23',
+))
+->values(array(
+  'nid' => '20',
+  'vid' => '32',
+  'tid' => '24',
+))
+->values(array(
+  'nid' => '20',
+  'vid' => '32',
+  'tid' => '25',
+))
+->values(array(
+  'nid' => '20',
+  'vid' => '32',
+  'tid' => '26',
+))
+->values(array(
+  'nid' => '20',
+  'vid' => '32',
+  'tid' => '27',
+))
+->values(array(
+  'nid' => '20',
+  'vid' => '32',
+  'tid' => '28',
+))
+->values(array(
+  'nid' => '20',
+  'vid' => '32',
+  'tid' => '30',
+))
+->values(array(
+  'nid' => '20',
+  'vid' => '32',
+  'tid' => '31',
+))
+->values(array(
+  'nid' => '20',
+  'vid' => '32',
+  'tid' => '32',
+))
+->values(array(
+  'nid' => '20',
+  'vid' => '32',
+  'tid' => '33',
+))
+->values(array(
+  'nid' => '20',
+  'vid' => '32',
+  'tid' => '34',
+))
+->values(array(
+  'nid' => '20',
+  'vid' => '32',
+  'tid' => '35',
+))
+->values(array(
+  'nid' => '20',
+  'vid' => '32',
+  'tid' => '36',
+))
+->values(array(
+  'nid' => '20',
+  'vid' => '32',
+  'tid' => '37',
+))
+->values(array(
+  'nid' => '20',
+  'vid' => '32',
+  'tid' => '38',
+))
+->values(array(
+  'nid' => '20',
+  'vid' => '32',
+  'tid' => '39',
+))
+->values(array(
+  'nid' => '20',
+  'vid' => '32',
+  'tid' => '40',
+))
+->values(array(
+  'nid' => '20',
+  'vid' => '32',
+  'tid' => '41',
+))
+->values(array(
+  'nid' => '20',
+  'vid' => '32',
+  'tid' => '42',
+))
+->values(array(
+  'nid' => '20',
+  'vid' => '32',
+  'tid' => '43',
+))
+->values(array(
+  'nid' => '20',
+  'vid' => '32',
+  'tid' => '44',
+))
+->values(array(
+  'nid' => '20',
+  'vid' => '32',
+  'tid' => '45',
+))
+->values(array(
+  'nid' => '20',
+  'vid' => '32',
+  'tid' => '46',
+))
+->values(array(
+  'nid' => '20',
+  'vid' => '32',
+  'tid' => '47',
+))
+->values(array(
+  'nid' => '20',
+  'vid' => '32',
+  'tid' => '48',
+))
+->values(array(
+  'nid' => '21',
+  'vid' => '33',
+  'tid' => '1',
+))
+->values(array(
+  'nid' => '21',
+  'vid' => '33',
+  'tid' => '2',
+))
+->values(array(
+  'nid' => '21',
+  'vid' => '33',
+  'tid' => '3',
+))
+->values(array(
+  'nid' => '21',
+  'vid' => '33',
+  'tid' => '4',
+))
+->values(array(
+  'nid' => '21',
+  'vid' => '33',
+  'tid' => '5',
+))
+->values(array(
+  'nid' => '21',
+  'vid' => '33',
+  'tid' => '6',
+))
+->values(array(
+  'nid' => '21',
+  'vid' => '33',
+  'tid' => '7',
+))
+->values(array(
+  'nid' => '21',
+  'vid' => '33',
+  'tid' => '8',
+))
+->values(array(
+  'nid' => '21',
+  'vid' => '33',
+  'tid' => '9',
+))
+->values(array(
+  'nid' => '21',
+  'vid' => '33',
+  'tid' => '10',
+))
+->values(array(
+  'nid' => '21',
+  'vid' => '33',
+  'tid' => '11',
+))
+->values(array(
+  'nid' => '21',
+  'vid' => '33',
+  'tid' => '12',
+))
+->values(array(
+  'nid' => '21',
+  'vid' => '33',
+  'tid' => '13',
+))
+->values(array(
+  'nid' => '21',
+  'vid' => '33',
+  'tid' => '14',
+))
+->values(array(
+  'nid' => '21',
+  'vid' => '33',
+  'tid' => '15',
+))
+->values(array(
+  'nid' => '21',
+  'vid' => '33',
+  'tid' => '16',
+))
+->values(array(
+  'nid' => '21',
+  'vid' => '33',
+  'tid' => '17',
+))
+->values(array(
+  'nid' => '21',
+  'vid' => '33',
+  'tid' => '18',
+))
+->values(array(
+  'nid' => '21',
+  'vid' => '33',
+  'tid' => '19',
+))
+->values(array(
+  'nid' => '21',
+  'vid' => '33',
+  'tid' => '20',
+))
+->values(array(
+  'nid' => '21',
+  'vid' => '33',
+  'tid' => '22',
+))
+->values(array(
+  'nid' => '21',
+  'vid' => '33',
+  'tid' => '23',
+))
+->values(array(
+  'nid' => '21',
+  'vid' => '33',
+  'tid' => '24',
+))
+->values(array(
+  'nid' => '21',
+  'vid' => '33',
+  'tid' => '25',
+))
+->values(array(
+  'nid' => '21',
+  'vid' => '33',
+  'tid' => '26',
+))
+->values(array(
+  'nid' => '21',
+  'vid' => '33',
+  'tid' => '27',
+))
+->values(array(
+  'nid' => '21',
+  'vid' => '33',
+  'tid' => '29',
+))
+->values(array(
+  'nid' => '21',
+  'vid' => '33',
+  'tid' => '30',
+))
+->values(array(
+  'nid' => '21',
+  'vid' => '33',
+  'tid' => '31',
+))
+->values(array(
+  'nid' => '21',
+  'vid' => '33',
+  'tid' => '32',
+))
+->values(array(
+  'nid' => '21',
+  'vid' => '33',
+  'tid' => '33',
+))
+->values(array(
+  'nid' => '21',
+  'vid' => '33',
+  'tid' => '34',
+))
+->values(array(
+  'nid' => '21',
+  'vid' => '33',
+  'tid' => '35',
+))
+->values(array(
+  'nid' => '21',
+  'vid' => '33',
+  'tid' => '36',
+))
+->values(array(
+  'nid' => '21',
+  'vid' => '33',
+  'tid' => '37',
+))
+->values(array(
+  'nid' => '21',
+  'vid' => '33',
+  'tid' => '38',
+))
+->values(array(
+  'nid' => '21',
+  'vid' => '33',
+  'tid' => '39',
+))
+->values(array(
+  'nid' => '21',
+  'vid' => '33',
+  'tid' => '40',
+))
+->values(array(
+  'nid' => '21',
+  'vid' => '33',
+  'tid' => '41',
+))
+->values(array(
+  'nid' => '21',
+  'vid' => '33',
+  'tid' => '42',
+))
+->values(array(
+  'nid' => '21',
+  'vid' => '33',
+  'tid' => '43',
+))
+->values(array(
+  'nid' => '21',
+  'vid' => '33',
+  'tid' => '44',
+))
+->values(array(
+  'nid' => '21',
+  'vid' => '33',
+  'tid' => '45',
+))
+->values(array(
+  'nid' => '21',
+  'vid' => '33',
+  'tid' => '46',
+))
+->values(array(
+  'nid' => '21',
+  'vid' => '33',
+  'tid' => '47',
+))
+->values(array(
+  'nid' => '21',
+  'vid' => '33',
+  'tid' => '48',
+))
+->values(array(
+  'nid' => '22',
+  'vid' => '34',
+  'tid' => '1',
+))
+->values(array(
+  'nid' => '22',
+  'vid' => '34',
+  'tid' => '2',
+))
+->values(array(
+  'nid' => '22',
+  'vid' => '34',
+  'tid' => '3',
+))
+->values(array(
+  'nid' => '22',
+  'vid' => '34',
+  'tid' => '4',
+))
+->values(array(
+  'nid' => '22',
+  'vid' => '34',
+  'tid' => '5',
+))
+->values(array(
+  'nid' => '22',
+  'vid' => '34',
+  'tid' => '6',
+))
+->values(array(
+  'nid' => '22',
+  'vid' => '34',
+  'tid' => '7',
+))
+->values(array(
+  'nid' => '22',
+  'vid' => '34',
+  'tid' => '8',
+))
+->values(array(
+  'nid' => '22',
+  'vid' => '34',
+  'tid' => '9',
+))
+->values(array(
+  'nid' => '22',
+  'vid' => '34',
+  'tid' => '10',
+))
+->values(array(
+  'nid' => '22',
+  'vid' => '34',
+  'tid' => '11',
+))
+->values(array(
+  'nid' => '22',
+  'vid' => '34',
+  'tid' => '12',
+))
+->values(array(
+  'nid' => '22',
+  'vid' => '34',
+  'tid' => '13',
+))
+->values(array(
+  'nid' => '22',
+  'vid' => '34',
+  'tid' => '14',
+))
+->values(array(
+  'nid' => '22',
+  'vid' => '34',
+  'tid' => '15',
+))
+->values(array(
+  'nid' => '22',
+  'vid' => '34',
+  'tid' => '16',
+))
+->values(array(
+  'nid' => '22',
+  'vid' => '34',
+  'tid' => '17',
+))
+->values(array(
+  'nid' => '22',
+  'vid' => '34',
+  'tid' => '18',
+))
+->values(array(
+  'nid' => '22',
+  'vid' => '34',
+  'tid' => '19',
+))
+->values(array(
+  'nid' => '22',
+  'vid' => '34',
+  'tid' => '20',
+))
+->values(array(
+  'nid' => '22',
+  'vid' => '34',
+  'tid' => '21',
+))
+->values(array(
+  'nid' => '22',
+  'vid' => '34',
+  'tid' => '23',
+))
+->values(array(
+  'nid' => '22',
+  'vid' => '34',
+  'tid' => '24',
+))
+->values(array(
+  'nid' => '22',
+  'vid' => '34',
+  'tid' => '25',
+))
+->values(array(
+  'nid' => '22',
+  'vid' => '34',
+  'tid' => '26',
+))
+->values(array(
+  'nid' => '22',
+  'vid' => '34',
+  'tid' => '28',
+))
+->values(array(
+  'nid' => '22',
+  'vid' => '34',
+  'tid' => '29',
+))
+->values(array(
+  'nid' => '22',
+  'vid' => '34',
+  'tid' => '30',
+))
+->values(array(
+  'nid' => '22',
+  'vid' => '34',
+  'tid' => '31',
+))
+->values(array(
+  'nid' => '22',
+  'vid' => '34',
+  'tid' => '32',
+))
+->values(array(
+  'nid' => '22',
+  'vid' => '34',
+  'tid' => '33',
+))
+->values(array(
+  'nid' => '22',
+  'vid' => '34',
+  'tid' => '34',
+))
+->values(array(
+  'nid' => '22',
+  'vid' => '34',
+  'tid' => '35',
+))
+->values(array(
+  'nid' => '22',
+  'vid' => '34',
+  'tid' => '36',
+))
+->values(array(
+  'nid' => '22',
+  'vid' => '34',
+  'tid' => '37',
+))
+->values(array(
+  'nid' => '22',
+  'vid' => '34',
+  'tid' => '38',
+))
+->values(array(
+  'nid' => '22',
+  'vid' => '34',
+  'tid' => '39',
+))
+->values(array(
+  'nid' => '22',
+  'vid' => '34',
+  'tid' => '40',
+))
+->values(array(
+  'nid' => '22',
+  'vid' => '34',
+  'tid' => '41',
+))
+->values(array(
+  'nid' => '22',
+  'vid' => '34',
+  'tid' => '42',
+))
+->values(array(
+  'nid' => '22',
+  'vid' => '34',
+  'tid' => '43',
+))
+->values(array(
+  'nid' => '22',
+  'vid' => '34',
+  'tid' => '44',
+))
+->values(array(
+  'nid' => '22',
+  'vid' => '34',
+  'tid' => '45',
+))
+->values(array(
+  'nid' => '22',
+  'vid' => '34',
+  'tid' => '46',
+))
+->values(array(
+  'nid' => '22',
+  'vid' => '34',
+  'tid' => '47',
+))
+->values(array(
+  'nid' => '22',
+  'vid' => '34',
+  'tid' => '48',
+))
+->values(array(
+  'nid' => '23',
+  'vid' => '35',
+  'tid' => '1',
+))
+->values(array(
+  'nid' => '23',
+  'vid' => '35',
+  'tid' => '2',
+))
+->values(array(
+  'nid' => '23',
+  'vid' => '35',
+  'tid' => '3',
+))
+->values(array(
+  'nid' => '23',
+  'vid' => '35',
+  'tid' => '4',
+))
+->values(array(
+  'nid' => '23',
+  'vid' => '35',
+  'tid' => '5',
+))
+->values(array(
+  'nid' => '23',
+  'vid' => '35',
+  'tid' => '6',
+))
+->values(array(
+  'nid' => '23',
+  'vid' => '35',
+  'tid' => '7',
+))
+->values(array(
+  'nid' => '23',
+  'vid' => '35',
+  'tid' => '8',
+))
+->values(array(
+  'nid' => '23',
+  'vid' => '35',
+  'tid' => '9',
+))
+->values(array(
+  'nid' => '23',
+  'vid' => '35',
+  'tid' => '10',
+))
+->values(array(
+  'nid' => '23',
+  'vid' => '35',
+  'tid' => '11',
+))
+->values(array(
+  'nid' => '23',
+  'vid' => '35',
+  'tid' => '12',
+))
+->values(array(
+  'nid' => '23',
+  'vid' => '35',
+  'tid' => '13',
+))
+->values(array(
+  'nid' => '23',
+  'vid' => '35',
+  'tid' => '14',
+))
+->values(array(
+  'nid' => '23',
+  'vid' => '35',
+  'tid' => '15',
+))
+->values(array(
+  'nid' => '23',
+  'vid' => '35',
+  'tid' => '16',
+))
+->values(array(
+  'nid' => '23',
+  'vid' => '35',
+  'tid' => '17',
+))
+->values(array(
+  'nid' => '23',
+  'vid' => '35',
+  'tid' => '18',
+))
+->values(array(
+  'nid' => '23',
+  'vid' => '35',
+  'tid' => '19',
+))
+->values(array(
+  'nid' => '23',
+  'vid' => '35',
+  'tid' => '20',
+))
+->values(array(
+  'nid' => '23',
+  'vid' => '35',
+  'tid' => '21',
+))
+->values(array(
+  'nid' => '23',
+  'vid' => '35',
+  'tid' => '22',
+))
+->values(array(
+  'nid' => '23',
+  'vid' => '35',
+  'tid' => '24',
+))
+->values(array(
+  'nid' => '23',
+  'vid' => '35',
+  'tid' => '25',
+))
+->values(array(
+  'nid' => '23',
+  'vid' => '35',
+  'tid' => '27',
+))
+->values(array(
+  'nid' => '23',
+  'vid' => '35',
+  'tid' => '28',
+))
+->values(array(
+  'nid' => '23',
+  'vid' => '35',
+  'tid' => '29',
+))
+->values(array(
+  'nid' => '23',
+  'vid' => '35',
+  'tid' => '30',
+))
+->values(array(
+  'nid' => '23',
+  'vid' => '35',
+  'tid' => '31',
+))
+->values(array(
+  'nid' => '23',
+  'vid' => '35',
+  'tid' => '32',
+))
+->values(array(
+  'nid' => '23',
+  'vid' => '35',
+  'tid' => '33',
+))
+->values(array(
+  'nid' => '23',
+  'vid' => '35',
+  'tid' => '34',
+))
+->values(array(
+  'nid' => '23',
+  'vid' => '35',
+  'tid' => '35',
+))
+->values(array(
+  'nid' => '23',
+  'vid' => '35',
+  'tid' => '36',
+))
+->values(array(
+  'nid' => '23',
+  'vid' => '35',
+  'tid' => '37',
+))
+->values(array(
+  'nid' => '23',
+  'vid' => '35',
+  'tid' => '38',
+))
+->values(array(
+  'nid' => '23',
+  'vid' => '35',
+  'tid' => '39',
+))
+->values(array(
+  'nid' => '23',
+  'vid' => '35',
+  'tid' => '40',
+))
+->values(array(
+  'nid' => '23',
+  'vid' => '35',
+  'tid' => '41',
+))
+->values(array(
+  'nid' => '23',
+  'vid' => '35',
+  'tid' => '42',
+))
+->values(array(
+  'nid' => '23',
+  'vid' => '35',
+  'tid' => '43',
+))
+->values(array(
+  'nid' => '23',
+  'vid' => '35',
+  'tid' => '44',
+))
+->values(array(
+  'nid' => '23',
+  'vid' => '35',
+  'tid' => '45',
+))
+->values(array(
+  'nid' => '23',
+  'vid' => '35',
+  'tid' => '46',
+))
+->values(array(
+  'nid' => '23',
+  'vid' => '35',
+  'tid' => '47',
+))
+->values(array(
+  'nid' => '23',
+  'vid' => '35',
+  'tid' => '48',
+))
+->values(array(
+  'nid' => '24',
+  'vid' => '36',
+  'tid' => '1',
+))
+->values(array(
+  'nid' => '24',
+  'vid' => '36',
+  'tid' => '2',
+))
+->values(array(
+  'nid' => '24',
+  'vid' => '36',
+  'tid' => '3',
+))
+->values(array(
+  'nid' => '24',
+  'vid' => '36',
+  'tid' => '4',
+))
+->values(array(
+  'nid' => '24',
+  'vid' => '36',
+  'tid' => '5',
+))
+->values(array(
+  'nid' => '24',
+  'vid' => '36',
+  'tid' => '6',
+))
+->values(array(
+  'nid' => '24',
+  'vid' => '36',
+  'tid' => '7',
+))
+->values(array(
+  'nid' => '24',
+  'vid' => '36',
+  'tid' => '8',
+))
+->values(array(
+  'nid' => '24',
+  'vid' => '36',
+  'tid' => '9',
+))
+->values(array(
+  'nid' => '24',
+  'vid' => '36',
+  'tid' => '10',
+))
+->values(array(
+  'nid' => '24',
+  'vid' => '36',
+  'tid' => '11',
+))
+->values(array(
+  'nid' => '24',
+  'vid' => '36',
+  'tid' => '12',
+))
+->values(array(
+  'nid' => '24',
+  'vid' => '36',
+  'tid' => '13',
+))
+->values(array(
+  'nid' => '24',
+  'vid' => '36',
+  'tid' => '14',
+))
+->values(array(
+  'nid' => '24',
+  'vid' => '36',
+  'tid' => '15',
+))
+->values(array(
+  'nid' => '24',
+  'vid' => '36',
+  'tid' => '16',
+))
+->values(array(
+  'nid' => '24',
+  'vid' => '36',
+  'tid' => '17',
+))
+->values(array(
+  'nid' => '24',
+  'vid' => '36',
+  'tid' => '18',
+))
+->values(array(
+  'nid' => '24',
+  'vid' => '36',
+  'tid' => '19',
+))
+->values(array(
+  'nid' => '24',
+  'vid' => '36',
+  'tid' => '20',
+))
+->values(array(
+  'nid' => '24',
+  'vid' => '36',
+  'tid' => '21',
+))
+->values(array(
+  'nid' => '24',
+  'vid' => '36',
+  'tid' => '22',
+))
+->values(array(
+  'nid' => '24',
+  'vid' => '36',
+  'tid' => '23',
+))
+->values(array(
+  'nid' => '24',
+  'vid' => '36',
+  'tid' => '26',
+))
+->values(array(
+  'nid' => '24',
+  'vid' => '36',
+  'tid' => '27',
+))
+->values(array(
+  'nid' => '24',
+  'vid' => '36',
+  'tid' => '28',
+))
+->values(array(
+  'nid' => '24',
+  'vid' => '36',
+  'tid' => '29',
+))
+->values(array(
+  'nid' => '24',
+  'vid' => '36',
+  'tid' => '30',
+))
+->values(array(
+  'nid' => '24',
+  'vid' => '36',
+  'tid' => '31',
+))
+->values(array(
+  'nid' => '24',
+  'vid' => '36',
+  'tid' => '32',
+))
+->values(array(
+  'nid' => '24',
+  'vid' => '36',
+  'tid' => '33',
+))
+->values(array(
+  'nid' => '24',
+  'vid' => '36',
+  'tid' => '34',
+))
+->values(array(
+  'nid' => '24',
+  'vid' => '36',
+  'tid' => '35',
+))
+->values(array(
+  'nid' => '24',
+  'vid' => '36',
+  'tid' => '36',
+))
+->values(array(
+  'nid' => '24',
+  'vid' => '36',
+  'tid' => '37',
+))
+->values(array(
+  'nid' => '24',
+  'vid' => '36',
+  'tid' => '38',
+))
+->values(array(
+  'nid' => '24',
+  'vid' => '36',
+  'tid' => '39',
+))
+->values(array(
+  'nid' => '24',
+  'vid' => '36',
+  'tid' => '40',
+))
+->values(array(
+  'nid' => '24',
+  'vid' => '36',
+  'tid' => '41',
+))
+->values(array(
+  'nid' => '24',
+  'vid' => '36',
+  'tid' => '42',
+))
+->values(array(
+  'nid' => '24',
+  'vid' => '36',
+  'tid' => '43',
+))
+->values(array(
+  'nid' => '24',
+  'vid' => '36',
+  'tid' => '44',
+))
+->values(array(
+  'nid' => '24',
+  'vid' => '36',
+  'tid' => '45',
+))
+->values(array(
+  'nid' => '24',
+  'vid' => '36',
+  'tid' => '46',
+))
+->values(array(
+  'nid' => '24',
+  'vid' => '36',
+  'tid' => '47',
+))
+->values(array(
+  'nid' => '24',
+  'vid' => '36',
+  'tid' => '48',
+))
+->execute();
+
+db_create_table('term_relation', array(
+  'fields' => array(
+    'trid' => array(
+      'type' => 'serial',
+      'not null' => TRUE,
+    ),
+    'tid1' => array(
+      'type' => 'int',
+      'unsigned' => TRUE,
+      'not null' => TRUE,
+      'default' => 0,
+    ),
+    'tid2' => array(
+      'type' => 'int',
+      'unsigned' => TRUE,
+      'not null' => TRUE,
+      'default' => 0,
+    ),
+  ),
+  'unique keys' => array(
+    'tid1_tid2' => array(
+      'tid1',
+      'tid2',
+    ),
+  ),
+  'indexes' => array(
+    'tid2' => array(
+      'tid2',
+    ),
+  ),
+  'primary key' => array(
+    'trid',
+  ),
+  'module' => 'taxonomy',
+  'name' => 'term_relation',
+));
+
+db_create_table('term_synonym', array(
+  'fields' => array(
+    'tsid' => array(
+      'type' => 'serial',
+      'not null' => TRUE,
+    ),
+    'tid' => array(
+      'type' => 'int',
+      'unsigned' => TRUE,
+      'not null' => TRUE,
+      'default' => 0,
+    ),
+    'name' => array(
+      'type' => 'varchar',
+      'length' => 255,
+      'not null' => TRUE,
+      'default' => '',
+    ),
+  ),
+  'indexes' => array(
+    'tid' => array(
+      'tid',
+    ),
+    'name_tid' => array(
+      'name',
+      'tid',
+    ),
+  ),
+  'primary key' => array(
+    'tsid',
+  ),
+  'module' => 'taxonomy',
+  'name' => 'term_synonym',
+));
+
+db_create_table('url_alias', array(
+  'fields' => array(
+    'pid' => array(
+      'type' => 'serial',
+      'unsigned' => TRUE,
+      'not null' => TRUE,
+    ),
+    'src' => array(
+      'type' => 'varchar',
+      'length' => 128,
+      'not null' => TRUE,
+      'default' => '',
+    ),
+    'dst' => array(
+      'type' => 'varchar',
+      'length' => 128,
+      'not null' => TRUE,
+      'default' => '',
+    ),
+    'language' => array(
+      'type' => 'varchar',
+      'length' => 12,
+      'not null' => TRUE,
+      'default' => '',
+    ),
+  ),
+  'unique keys' => array(
+    'dst_language_pid' => array(
+      'dst',
+      'language',
+      'pid',
+    ),
+  ),
+  'primary key' => array(
+    'pid',
+  ),
+  'indexes' => array(
+    'src_language_pid' => array(
+      'src',
+      'language',
+      'pid',
+    ),
+  ),
+  'module' => 'system',
+  'name' => 'url_alias',
+));
+db_insert('url_alias')->fields(array(
+  'pid',
+  'src',
+  'dst',
+  'language',
+))
+->values(array(
+  'pid' => '1',
+  'src' => 'node/1',
+  'dst' => 'content/1262732400',
+  'language' => '',
+))
+->values(array(
+  'pid' => '2',
+  'src' => 'node/2',
+  'dst' => 'content/1262818800',
+  'language' => '',
+))
+->values(array(
+  'pid' => '3',
+  'src' => 'node/3',
+  'dst' => 'content/1262905200',
+  'language' => '',
+))
+->values(array(
+  'pid' => '4',
+  'src' => 'node/4',
+  'dst' => 'content/1262991600',
+  'language' => '',
+))
+->values(array(
+  'pid' => '5',
+  'src' => 'node/5',
+  'dst' => 'content/1263078000',
+  'language' => '',
+))
+->values(array(
+  'pid' => '6',
+  'src' => 'node/6',
+  'dst' => 'content/1263164400',
+  'language' => '',
+))
+->values(array(
+  'pid' => '7',
+  'src' => 'node/7',
+  'dst' => 'content/1263250800',
+  'language' => '',
+))
+->values(array(
+  'pid' => '8',
+  'src' => 'node/8',
+  'dst' => 'content/1263337200',
+  'language' => '',
+))
+->values(array(
+  'pid' => '9',
+  'src' => 'node/9',
+  'dst' => 'content/1263423600',
+  'language' => '',
+))
+->values(array(
+  'pid' => '10',
+  'src' => 'node/10',
+  'dst' => 'content/1263510000',
+  'language' => '',
+))
+->values(array(
+  'pid' => '11',
+  'src' => 'node/11',
+  'dst' => 'content/1263596400',
+  'language' => '',
+))
+->values(array(
+  'pid' => '12',
+  'src' => 'node/12',
+  'dst' => 'content/1263682800',
+  'language' => '',
+))
+->values(array(
+  'pid' => '13',
+  'src' => 'node/13',
+  'dst' => 'content/1263769200',
+  'language' => '',
+))
+->values(array(
+  'pid' => '14',
+  'src' => 'node/14',
+  'dst' => 'content/1263855600',
+  'language' => '',
+))
+->values(array(
+  'pid' => '15',
+  'src' => 'node/15',
+  'dst' => 'content/1263942000',
+  'language' => '',
+))
+->values(array(
+  'pid' => '16',
+  'src' => 'node/16',
+  'dst' => 'content/1264028400',
+  'language' => '',
+))
+->values(array(
+  'pid' => '17',
+  'src' => 'node/17',
+  'dst' => 'content/1264114800',
+  'language' => '',
+))
+->values(array(
+  'pid' => '18',
+  'src' => 'node/18',
+  'dst' => 'content/1264201200',
+  'language' => '',
+))
+->values(array(
+  'pid' => '19',
+  'src' => 'node/19',
+  'dst' => 'content/1264287600',
+  'language' => '',
+))
+->values(array(
+  'pid' => '20',
+  'src' => 'node/20',
+  'dst' => 'content/1264374000',
+  'language' => '',
+))
+->values(array(
+  'pid' => '21',
+  'src' => 'node/21',
+  'dst' => 'content/1264460400',
+  'language' => '',
+))
+->values(array(
+  'pid' => '22',
+  'src' => 'node/22',
+  'dst' => 'content/1264546800',
+  'language' => '',
+))
+->values(array(
+  'pid' => '23',
+  'src' => 'node/23',
+  'dst' => 'content/1264633200',
+  'language' => '',
+))
+->values(array(
+  'pid' => '24',
+  'src' => 'node/24',
+  'dst' => 'content/1264719600',
+  'language' => '',
+))
+->values(array(
+  'pid' => '25',
+  'src' => 'node/25',
+  'dst' => 'content/poll/0',
+  'language' => '',
+))
+->values(array(
+  'pid' => '26',
+  'src' => 'node/25/results',
+  'dst' => 'content/poll/0/results',
+  'language' => '',
+))
+->values(array(
+  'pid' => '27',
+  'src' => 'node/26',
+  'dst' => 'content/poll/1',
+  'language' => '',
+))
+->values(array(
+  'pid' => '28',
+  'src' => 'node/26/results',
+  'dst' => 'content/poll/1/results',
+  'language' => '',
+))
+->values(array(
+  'pid' => '29',
+  'src' => 'node/27',
+  'dst' => 'content/poll/2',
+  'language' => '',
+))
+->values(array(
+  'pid' => '30',
+  'src' => 'node/27/results',
+  'dst' => 'content/poll/2/results',
+  'language' => '',
+))
+->values(array(
+  'pid' => '31',
+  'src' => 'node/28',
+  'dst' => 'content/poll/3',
+  'language' => '',
+))
+->values(array(
+  'pid' => '32',
+  'src' => 'node/28/results',
+  'dst' => 'content/poll/3/results',
+  'language' => '',
+))
+->values(array(
+  'pid' => '33',
+  'src' => 'node/29',
+  'dst' => 'content/poll/4',
+  'language' => '',
+))
+->values(array(
+  'pid' => '34',
+  'src' => 'node/29/results',
+  'dst' => 'content/poll/4/results',
+  'language' => '',
+))
+->values(array(
+  'pid' => '35',
+  'src' => 'node/30',
+  'dst' => 'content/poll/5',
+  'language' => '',
+))
+->values(array(
+  'pid' => '36',
+  'src' => 'node/30/results',
+  'dst' => 'content/poll/5/results',
+  'language' => '',
+))
+->values(array(
+  'pid' => '37',
+  'src' => 'node/31',
+  'dst' => 'content/poll/6',
+  'language' => '',
+))
+->values(array(
+  'pid' => '38',
+  'src' => 'node/31/results',
+  'dst' => 'content/poll/6/results',
+  'language' => '',
+))
+->values(array(
+  'pid' => '39',
+  'src' => 'node/32',
+  'dst' => 'content/poll/7',
+  'language' => '',
+))
+->values(array(
+  'pid' => '40',
+  'src' => 'node/32/results',
+  'dst' => 'content/poll/7/results',
+  'language' => '',
+))
+->values(array(
+  'pid' => '41',
+  'src' => 'node/33',
+  'dst' => 'content/poll/8',
+  'language' => '',
+))
+->values(array(
+  'pid' => '42',
+  'src' => 'node/33/results',
+  'dst' => 'content/poll/8/results',
+  'language' => '',
+))
+->values(array(
+  'pid' => '43',
+  'src' => 'node/34',
+  'dst' => 'content/poll/9',
+  'language' => '',
+))
+->values(array(
+  'pid' => '44',
+  'src' => 'node/34/results',
+  'dst' => 'content/poll/9/results',
+  'language' => '',
+))
+->values(array(
+  'pid' => '45',
+  'src' => 'node/35',
+  'dst' => 'content/poll/10',
+  'language' => '',
+))
+->values(array(
+  'pid' => '46',
+  'src' => 'node/35/results',
+  'dst' => 'content/poll/10/results',
+  'language' => '',
+))
+->values(array(
+  'pid' => '47',
+  'src' => 'node/36',
+  'dst' => 'content/poll/11',
+  'language' => '',
+))
+->values(array(
+  'pid' => '48',
+  'src' => 'node/36/results',
+  'dst' => 'content/poll/11/results',
+  'language' => '',
+))
+->values(array(
+  'pid' => '49',
+  'src' => 'node/37',
+  'dst' => 'content/1263769200',
+  'language' => '',
+))
+->execute();
+
+db_create_table('users', array(
+  'fields' => array(
+    'uid' => array(
+      'type' => 'serial',
+      'unsigned' => TRUE,
+      'not null' => TRUE,
+    ),
+    'name' => array(
+      'type' => 'varchar',
+      'length' => 60,
+      'not null' => TRUE,
+      'default' => '',
+    ),
+    'pass' => array(
+      'type' => 'varchar',
+      'length' => 32,
+      'not null' => TRUE,
+      'default' => '',
+    ),
+    'mail' => array(
+      'type' => 'varchar',
+      'length' => 64,
+      'not null' => FALSE,
+      'default' => '',
+    ),
+    'mode' => array(
+      'type' => 'int',
+      'not null' => TRUE,
+      'default' => 0,
+      'size' => 'tiny',
+    ),
+    'sort' => array(
+      'type' => 'int',
+      'not null' => FALSE,
+      'default' => 0,
+      'size' => 'tiny',
+    ),
+    'threshold' => array(
+      'type' => 'int',
+      'not null' => FALSE,
+      'default' => 0,
+      'size' => 'tiny',
+    ),
+    'theme' => array(
+      'type' => 'varchar',
+      'length' => 255,
+      'not null' => TRUE,
+      'default' => '',
+    ),
+    'signature' => array(
+      'type' => 'varchar',
+      'length' => 255,
+      'not null' => TRUE,
+      'default' => '',
+    ),
+    'signature_format' => array(
+      'type' => 'int',
+      'size' => 'small',
+      'not null' => TRUE,
+      'default' => 0,
+    ),
+    'created' => array(
+      'type' => 'int',
+      'not null' => TRUE,
+      'default' => 0,
+    ),
+    'access' => array(
+      'type' => 'int',
+      'not null' => TRUE,
+      'default' => 0,
+    ),
+    'login' => array(
+      'type' => 'int',
+      'not null' => TRUE,
+      'default' => 0,
+    ),
+    'status' => array(
+      'type' => 'int',
+      'not null' => TRUE,
+      'default' => 0,
+      'size' => 'tiny',
+    ),
+    'timezone' => array(
+      'type' => 'varchar',
+      'length' => 8,
+      'not null' => FALSE,
+    ),
+    'language' => array(
+      'type' => 'varchar',
+      'length' => 12,
+      'not null' => TRUE,
+      'default' => '',
+    ),
+    'picture' => array(
+      'type' => 'varchar',
+      'length' => 255,
+      'not null' => TRUE,
+      'default' => '',
+    ),
+    'init' => array(
+      'type' => 'varchar',
+      'length' => 64,
+      'not null' => FALSE,
+      'default' => '',
+    ),
+    'data' => array(
+      'type' => 'text',
+      'not null' => FALSE,
+      'size' => 'big',
+    ),
+  ),
+  'indexes' => array(
+    'access' => array(
+      'access',
+    ),
+    'created' => array(
+      'created',
+    ),
+    'mail' => array(
+      'mail',
+    ),
+  ),
+  'unique keys' => array(
+    'name' => array(
+      'name',
+    ),
+  ),
+  'primary key' => array(
+    'uid',
+  ),
+  'module' => 'user',
+  'name' => 'users',
+));
+db_insert('users')->fields(array(
+  'uid',
+  'name',
+  'pass',
+  'mail',
+  'mode',
+  'sort',
+  'threshold',
+  'theme',
+  'signature',
+  'signature_format',
+  'created',
+  'access',
+  'login',
+  'status',
+  'timezone',
+  'language',
+  'picture',
+  'init',
+  'data',
+))
+->values(array(
+  'uid' => 1,
+  'name' => '',
+  'pass' => '',
+  'mail' => '',
+  'mode' => '0',
+  'sort' => '0',
+  'threshold' => '0',
+  'theme' => '',
+  'signature' => '',
+  'signature_format' => '0',
+  'created' => '0',
+  'access' => '0',
+  'login' => '0',
+  'status' => '0',
+  'timezone' => NULL,
+  'language' => '',
+  'picture' => '',
+  'init' => '',
+  'data' => NULL,
+))
+->values(array(
+  'uid' => 2,
+  'name' => 'admin',
+  'pass' => '21232f297a57a5a743894a0e4a801fc3',
+  'mail' => 'admin@aexample.com',
+  'mode' => '0',
+  'sort' => '0',
+  'threshold' => '0',
+  'theme' => '',
+  'signature' => '',
+  'signature_format' => '0',
+  'created' => '1282936261',
+  'access' => '1282936264',
+  'login' => '1282936263',
+  'status' => '1',
+  'timezone' => NULL,
+  'language' => '',
+  'picture' => '',
+  'init' => 'admin@aexample.com',
+  'data' => 'a:0:{}',
+))
+->values(array(
+  'uid' => 4,
+  'name' => 'test user 0',
+  'pass' => '4dd188028f74622e61048f6683208c2f',
+  'mail' => 'test0@example.com',
+  'mode' => '0',
+  'sort' => '0',
+  'threshold' => '0',
+  'theme' => '',
+  'signature' => '',
+  'signature_format' => '0',
+  'created' => '1262300400',
+  'access' => '1262300400',
+  'login' => '0',
+  'status' => '1',
+  'timezone' => NULL,
+  'language' => '',
+  'picture' => '',
+  'init' => '',
+  'data' => NULL,
+))
+->values(array(
+  'uid' => 5,
+  'name' => 'test user 1',
+  'pass' => '388ee5249286bf5eed0dae9205743969',
+  'mail' => 'test1@example.com',
+  'mode' => '0',
+  'sort' => '0',
+  'threshold' => '0',
+  'theme' => '',
+  'signature' => '',
+  'signature_format' => '0',
+  'created' => '1262386800',
+  'access' => '1262386800',
+  'login' => '0',
+  'status' => '1',
+  'timezone' => NULL,
+  'language' => '',
+  'picture' => '',
+  'init' => '',
+  'data' => NULL,
+))
+->values(array(
+  'uid' => 6,
+  'name' => 'test user 2',
+  'pass' => 'ff8a825362e1e06dca5c13c60fe407c9',
+  'mail' => 'test2@example.com',
+  'mode' => '0',
+  'sort' => '0',
+  'threshold' => '0',
+  'theme' => '',
+  'signature' => '',
+  'signature_format' => '0',
+  'created' => '1262473200',
+  'access' => '1262473200',
+  'login' => '0',
+  'status' => '1',
+  'timezone' => NULL,
+  'language' => '',
+  'picture' => '',
+  'init' => '',
+  'data' => NULL,
+))
+->values(array(
+  'uid' => 7,
+  'name' => 'test user 3',
+  'pass' => '9d4bd7b0570cb513dc7c6ea8de15003a',
+  'mail' => 'test3@example.com',
+  'mode' => '0',
+  'sort' => '0',
+  'threshold' => '0',
+  'theme' => '',
+  'signature' => '',
+  'signature_format' => '0',
+  'created' => '1262559600',
+  'access' => '1262559600',
+  'login' => '0',
+  'status' => '1',
+  'timezone' => NULL,
+  'language' => '',
+  'picture' => '',
+  'init' => '',
+  'data' => NULL,
+))
+->values(array(
+  'uid' => 8,
+  'name' => 'test user 4',
+  'pass' => '7903c9dd9d71bcd70e3a18141711cb42',
+  'mail' => 'test4@example.com',
+  'mode' => '0',
+  'sort' => '0',
+  'threshold' => '0',
+  'theme' => '',
+  'signature' => '',
+  'signature_format' => '0',
+  'created' => '1262646000',
+  'access' => '1262646000',
+  'login' => '0',
+  'status' => '1',
+  'timezone' => NULL,
+  'language' => '',
+  'picture' => '',
+  'init' => '',
+  'data' => NULL,
+))
+->values(array(
+  'uid' => 9,
+  'name' => 'test user 5',
+  'pass' => '8eb7221204ea80db4e66247b4c748071',
+  'mail' => 'test5@example.com',
+  'mode' => '0',
+  'sort' => '0',
+  'threshold' => '0',
+  'theme' => '',
+  'signature' => '',
+  'signature_format' => '0',
+  'created' => '1262732400',
+  'access' => '1262732400',
+  'login' => '0',
+  'status' => '1',
+  'timezone' => NULL,
+  'language' => '',
+  'picture' => '',
+  'init' => '',
+  'data' => NULL,
+))
+->execute();
+db_query('UPDATE {users} SET uid = uid - 1');
+
+db_create_table('users_roles', array(
+  'fields' => array(
+    'uid' => array(
+      'type' => 'int',
+      'unsigned' => TRUE,
+      'not null' => TRUE,
+      'default' => 0,
+    ),
+    'rid' => array(
+      'type' => 'int',
+      'unsigned' => TRUE,
+      'not null' => TRUE,
+      'default' => 0,
+    ),
+  ),
+  'primary key' => array(
+    'uid',
+    'rid',
+  ),
+  'indexes' => array(
+    'rid' => array(
+      'rid',
+    ),
+  ),
+  'module' => 'user',
+  'name' => 'users_roles',
+));
+
+db_create_table('variable', array(
+  'fields' => array(
+    'name' => array(
+      'type' => 'varchar',
+      'length' => 128,
+      'not null' => TRUE,
+      'default' => '',
+    ),
+    'value' => array(
+      'type' => 'text',
+      'not null' => TRUE,
+      'size' => 'big',
+    ),
+  ),
+  'primary key' => array(
+    'name',
+  ),
+  'module' => 'system',
+  'name' => 'variable',
+));
+db_insert('variable')->fields(array(
+  'name',
+  'value',
+))
+->values(array(
+  'name' => 'clean_url',
+  'value' => 's:1:"1";',
+))
+->values(array(
+  'name' => 'comment_page',
+  'value' => 'i:0;',
+))
+->values(array(
+  'name' => 'cron_last',
+  'value' => 'i:1282936266;',
+))
+->values(array(
+  'name' => 'css_js_query_string',
+  'value' => 's:20:"i0000000000000000000";',
+))
+->values(array(
+  'name' => 'date_default_timezone',
+  'value' => 's:6:"-39600";',
+))
+->values(array(
+  'name' => 'drupal_private_key',
+  'value' => 's:64:"c2f015f78636f97527f2ce6c0869fccd1c7a674005ed203d48b106cbd6db3947";',
+))
+->values(array(
+  'name' => 'file_directory_temp',
+  'value' => 's:29:"/drupal-6/file/directory/temp";',
+))
+->values(array(
+  'name' => 'file_directory_path',
+  'value' => 's:29:"/drupal-6/file/directory/path";',
+))
+->values(array(
+  'name' => 'file_downloads',
+  'value' => 'i:2;',
+))
+->values(array(
+  'name' => 'filter_html_1',
+  'value' => 'i:1;',
+))
+// Add the Escape HTML filter to the custom input format 'Escape HTML Filter'
+// to test that the filter may be upgraded to its Drupal 7 equivalent.
+->values(array(
+  'name' => 'filter_html_3',
+  'value' => 'i:2;',
+))
+->values(array(
+  'name' => 'install_profile',
+  'value' => 's:7:"default";',
+))
+->values(array(
+  'name' => 'install_task',
+  'value' => 's:4:"done";',
+))
+->values(array(
+  'name' => 'install_time',
+  'value' => 'i:1282936263;',
+))
+->values(array(
+  'name' => 'javascript_parsed',
+  'value' => 'a:0:{}',
+))
+->values(array(
+  'name' => 'menu_expanded',
+  'value' => 'a:0:{}',
+))
+->values(array(
+  'name' => 'menu_masks',
+  'value' => 'a:17:{i:0;i:62;i:1;i:61;i:2;i:59;i:3;i:31;i:4;i:30;i:5;i:29;i:6;i:24;i:7;i:21;i:8;i:15;i:9;i:14;i:10;i:11;i:11;i:7;i:12;i:6;i:13;i:5;i:14;i:3;i:15;i:2;i:16;i:1;}',
+))
+->values(array(
+  'name' => 'node_options_forum',
+  'value' => 'a:1:{i:0;s:6:"status";}',
+))
+->values(array(
+  'name' => 'node_options_page',
+  'value' => 'a:1:{i:0;s:6:"status";}',
+))
+->values(array(
+  'name' => 'site_mail',
+  'value' => 's:21:"site_mail@example.com";',
+))
+->values(array(
+  'name' => 'site_name',
+  'value' => 's:9:"site_name";',
+))
+->values(array(
+  'name' => 'theme_default',
+  'value' => 's:7:"garland";',
+))
+->values(array(
+  'name' => 'theme_settings',
+  'value' => 'a:1:{s:21:"toggle_node_info_page";b:0;}',
+))
+->values(array(
+  'name' => 'update_last_check',
+  'value' => 'i:1282936266;',
+))
+->values(array(
+  'name' => 'user_email_verification',
+  'value' => 'b:1;',
+))
+->execute();
+
+db_create_table('vocabulary', array(
+  'fields' => array(
+    'vid' => array(
+      'type' => 'serial',
+      'unsigned' => TRUE,
+      'not null' => TRUE,
+    ),
+    'name' => array(
+      'type' => 'varchar',
+      'length' => 255,
+      'not null' => TRUE,
+      'default' => '',
+    ),
+    'description' => array(
+      'type' => 'text',
+      'not null' => FALSE,
+      'size' => 'big',
+    ),
+    'help' => array(
+      'type' => 'varchar',
+      'length' => 255,
+      'not null' => TRUE,
+      'default' => '',
+    ),
+    'relations' => array(
+      'type' => 'int',
+      'unsigned' => TRUE,
+      'not null' => TRUE,
+      'default' => 0,
+      'size' => 'tiny',
+    ),
+    'hierarchy' => array(
+      'type' => 'int',
+      'unsigned' => TRUE,
+      'not null' => TRUE,
+      'default' => 0,
+      'size' => 'tiny',
+    ),
+    'multiple' => array(
+      'type' => 'int',
+      'unsigned' => TRUE,
+      'not null' => TRUE,
+      'default' => 0,
+      'size' => 'tiny',
+    ),
+    'required' => array(
+      'type' => 'int',
+      'unsigned' => TRUE,
+      'not null' => TRUE,
+      'default' => 0,
+      'size' => 'tiny',
+    ),
+    'tags' => array(
+      'type' => 'int',
+      'unsigned' => TRUE,
+      'not null' => TRUE,
+      'default' => 0,
+      'size' => 'tiny',
+    ),
+    'module' => array(
+      'type' => 'varchar',
+      'length' => 255,
+      'not null' => TRUE,
+      'default' => '',
+    ),
+    'weight' => array(
+      'type' => 'int',
+      'not null' => TRUE,
+      'default' => 0,
+      'size' => 'tiny',
+    ),
+  ),
+  'primary key' => array(
+    'vid',
+  ),
+  'indexes' => array(
+    'list' => array(
+      'weight',
+      'name',
+    ),
+  ),
+  'module' => 'taxonomy',
+  'name' => 'vocabulary',
+));
+db_insert('vocabulary')->fields(array(
+  'vid',
+  'name',
+  'description',
+  'help',
+  'relations',
+  'hierarchy',
+  'multiple',
+  'required',
+  'tags',
+  'module',
+  'weight',
+))
+->values(array(
+  'vid' => '1',
+  'name' => 'vocabulary 1 (i=0)',
+  'description' => 'description of vocabulary 1 (i=0)',
+  'help' => '',
+  'relations' => '1',
+  'hierarchy' => '0',
+  'multiple' => '0',
+  'required' => '0',
+  'tags' => '0',
+  'module' => 'taxonomy',
+  'weight' => '0',
+))
+->values(array(
+  'vid' => '2',
+  'name' => 'vocabulary 2 (i=1)',
+  'description' => 'description of vocabulary 2 (i=1)',
+  'help' => '',
+  'relations' => '1',
+  'hierarchy' => '1',
+  'multiple' => '1',
+  'required' => '0',
+  'tags' => '0',
+  'module' => 'taxonomy',
+  'weight' => '1',
+))
+->values(array(
+  'vid' => '3',
+  'name' => 'vocabulary 3 (i=2)',
+  'description' => 'description of vocabulary 3 (i=2)',
+  'help' => '',
+  'relations' => '1',
+  'hierarchy' => '2',
+  'multiple' => '0',
+  'required' => '0',
+  'tags' => '0',
+  'module' => 'taxonomy',
+  'weight' => '2',
+))
+->values(array(
+  'vid' => '4',
+  'name' => 'vocabulary 4 (i=3)',
+  'description' => 'description of vocabulary 4 (i=3)',
+  'help' => '',
+  'relations' => '1',
+  'hierarchy' => '0',
+  'multiple' => '1',
+  'required' => '0',
+  'tags' => '0',
+  'module' => 'taxonomy',
+  'weight' => '3',
+))
+->values(array(
+  'vid' => '5',
+  'name' => 'vocabulary 5 (i=4)',
+  'description' => 'description of vocabulary 5 (i=4)',
+  'help' => '',
+  'relations' => '1',
+  'hierarchy' => '1',
+  'multiple' => '0',
+  'required' => '0',
+  'tags' => '0',
+  'module' => 'taxonomy',
+  'weight' => '4',
+))
+->values(array(
+  'vid' => '6',
+  'name' => 'vocabulary 6 (i=5)',
+  'description' => 'description of vocabulary 6 (i=5)',
+  'help' => '',
+  'relations' => '1',
+  'hierarchy' => '2',
+  'multiple' => '1',
+  'required' => '0',
+  'tags' => '0',
+  'module' => 'taxonomy',
+  'weight' => '5',
+))
+->values(array(
+  'vid' => '7',
+  'name' => 'vocabulary 7 (i=6)',
+  'description' => 'description of vocabulary 7 (i=6)',
+  'help' => '',
+  'relations' => '1',
+  'hierarchy' => '0',
+  'multiple' => '0',
+  'required' => '1',
+  'tags' => '0',
+  'module' => 'taxonomy',
+  'weight' => '6',
+))
+->values(array(
+  'vid' => '8',
+  'name' => 'vocabulary 8 (i=7)',
+  'description' => 'description of vocabulary 8 (i=7)',
+  'help' => '',
+  'relations' => '1',
+  'hierarchy' => '1',
+  'multiple' => '1',
+  'required' => '1',
+  'tags' => '0',
+  'module' => 'taxonomy',
+  'weight' => '7',
+))
+->values(array(
+  'vid' => '9',
+  'name' => 'vocabulary 9 (i=8)',
+  'description' => 'description of vocabulary 9 (i=8)',
+  'help' => '',
+  'relations' => '1',
+  'hierarchy' => '2',
+  'multiple' => '0',
+  'required' => '1',
+  'tags' => '0',
+  'module' => 'taxonomy',
+  'weight' => '8',
+))
+->values(array(
+  'vid' => '10',
+  'name' => 'vocabulary 10 (i=9)',
+  'description' => 'description of vocabulary 10 (i=9)',
+  'help' => '',
+  'relations' => '1',
+  'hierarchy' => '0',
+  'multiple' => '1',
+  'required' => '1',
+  'tags' => '0',
+  'module' => 'taxonomy',
+  'weight' => '9',
+))
+->values(array(
+  'vid' => '11',
+  'name' => 'vocabulary 11 (i=10)',
+  'description' => 'description of vocabulary 11 (i=10)',
+  'help' => '',
+  'relations' => '1',
+  'hierarchy' => '1',
+  'multiple' => '0',
+  'required' => '1',
+  'tags' => '0',
+  'module' => 'taxonomy',
+  'weight' => '10',
+))
+->values(array(
+  'vid' => '12',
+  'name' => 'vocabulary 12 (i=11)',
+  'description' => 'description of vocabulary 12 (i=11)',
+  'help' => '',
+  'relations' => '1',
+  'hierarchy' => '2',
+  'multiple' => '1',
+  'required' => '1',
+  'tags' => '0',
+  'module' => 'taxonomy',
+  'weight' => '11',
+))
+->values(array(
+  'vid' => '13',
+  'name' => 'vocabulary 13 (i=12)',
+  'description' => 'description of vocabulary 13 (i=12)',
+  'help' => '',
+  'relations' => '1',
+  'hierarchy' => '0',
+  'multiple' => '0',
+  'required' => '0',
+  'tags' => '0',
+  'module' => 'taxonomy',
+  'weight' => '12',
+))
+->values(array(
+  'vid' => '14',
+  'name' => 'vocabulary 14 (i=13)',
+  'description' => 'description of vocabulary 14 (i=13)',
+  'help' => '',
+  'relations' => '1',
+  'hierarchy' => '1',
+  'multiple' => '1',
+  'required' => '0',
+  'tags' => '0',
+  'module' => 'taxonomy',
+  'weight' => '13',
+))
+->values(array(
+  'vid' => '15',
+  'name' => 'vocabulary 15 (i=14)',
+  'description' => 'description of vocabulary 15 (i=14)',
+  'help' => '',
+  'relations' => '1',
+  'hierarchy' => '2',
+  'multiple' => '0',
+  'required' => '0',
+  'tags' => '0',
+  'module' => 'taxonomy',
+  'weight' => '14',
+))
+->values(array(
+  'vid' => '16',
+  'name' => 'vocabulary 16 (i=15)',
+  'description' => 'description of vocabulary 16 (i=15)',
+  'help' => '',
+  'relations' => '1',
+  'hierarchy' => '0',
+  'multiple' => '1',
+  'required' => '0',
+  'tags' => '0',
+  'module' => 'taxonomy',
+  'weight' => '15',
+))
+->values(array(
+  'vid' => '17',
+  'name' => 'vocabulary 17 (i=16)',
+  'description' => 'description of vocabulary 17 (i=16)',
+  'help' => '',
+  'relations' => '1',
+  'hierarchy' => '1',
+  'multiple' => '0',
+  'required' => '0',
+  'tags' => '0',
+  'module' => 'taxonomy',
+  'weight' => '16',
+))
+->values(array(
+  'vid' => '18',
+  'name' => 'vocabulary 18 (i=17)',
+  'description' => 'description of vocabulary 18 (i=17)',
+  'help' => '',
+  'relations' => '1',
+  'hierarchy' => '2',
+  'multiple' => '1',
+  'required' => '0',
+  'tags' => '0',
+  'module' => 'taxonomy',
+  'weight' => '17',
+))
+->values(array(
+  'vid' => '19',
+  'name' => 'vocabulary 19 (i=18)',
+  'description' => 'description of vocabulary 19 (i=18)',
+  'help' => '',
+  'relations' => '1',
+  'hierarchy' => '0',
+  'multiple' => '0',
+  'required' => '1',
+  'tags' => '0',
+  'module' => 'taxonomy',
+  'weight' => '18',
+))
+->values(array(
+  'vid' => '20',
+  'name' => 'vocabulary 20 (i=19)',
+  'description' => 'description of vocabulary 20 (i=19)',
+  'help' => '',
+  'relations' => '1',
+  'hierarchy' => '1',
+  'multiple' => '1',
+  'required' => '1',
+  'tags' => '0',
+  'module' => 'taxonomy',
+  'weight' => '19',
+))
+->values(array(
+  'vid' => '21',
+  'name' => 'vocabulary 21 (i=20)',
+  'description' => 'description of vocabulary 21 (i=20)',
+  'help' => '',
+  'relations' => '1',
+  'hierarchy' => '2',
+  'multiple' => '0',
+  'required' => '1',
+  'tags' => '0',
+  'module' => 'taxonomy',
+  'weight' => '20',
+))
+->values(array(
+  'vid' => '22',
+  'name' => 'vocabulary 22 (i=21)',
+  'description' => 'description of vocabulary 22 (i=21)',
+  'help' => '',
+  'relations' => '1',
+  'hierarchy' => '0',
+  'multiple' => '1',
+  'required' => '1',
+  'tags' => '0',
+  'module' => 'taxonomy',
+  'weight' => '21',
+))
+->values(array(
+  'vid' => '23',
+  'name' => 'vocabulary 23 (i=22)',
+  'description' => 'description of vocabulary 23 (i=22)',
+  'help' => '',
+  'relations' => '1',
+  'hierarchy' => '1',
+  'multiple' => '0',
+  'required' => '1',
+  'tags' => '0',
+  'module' => 'taxonomy',
+  'weight' => '22',
+))
+->values(array(
+  'vid' => '24',
+  'name' => 'vocabulary 24 (i=23)',
+  'description' => 'description of vocabulary 24 (i=23)',
+  'help' => '',
+  'relations' => '1',
+  'hierarchy' => '2',
+  'multiple' => '1',
+  'required' => '1',
+  'tags' => '0',
+  'module' => 'taxonomy',
+  'weight' => '23',
+))
+->execute();
+
+db_create_table('vocabulary_node_types', array(
+  'fields' => array(
+    'vid' => array(
+      'type' => 'int',
+      'unsigned' => TRUE,
+      'not null' => TRUE,
+      'default' => 0,
+    ),
+    'type' => array(
+      'type' => 'varchar',
+      'length' => 32,
+      'not null' => TRUE,
+      'default' => '',
+    ),
+  ),
+  'primary key' => array(
+    'type',
+    'vid',
+  ),
+  'indexes' => array(
+    'vid' => array(
+      'vid',
+    ),
+  ),
+  'module' => 'taxonomy',
+  'name' => 'vocabulary_node_types',
+));
+db_insert('vocabulary_node_types')->fields(array(
+  'vid',
+  'type',
+))
+->values(array(
+  'vid' => '13',
+  'type' => 'page',
+))
+->values(array(
+  'vid' => '14',
+  'type' => 'page',
+))
+->values(array(
+  'vid' => '15',
+  'type' => 'page',
+))
+->values(array(
+  'vid' => '16',
+  'type' => 'page',
+))
+->values(array(
+  'vid' => '17',
+  'type' => 'page',
+))
+->values(array(
+  'vid' => '18',
+  'type' => 'page',
+))
+->values(array(
+  'vid' => '19',
+  'type' => 'page',
+))
+->values(array(
+  'vid' => '20',
+  'type' => 'page',
+))
+->values(array(
+  'vid' => '21',
+  'type' => 'page',
+))
+->values(array(
+  'vid' => '22',
+  'type' => 'page',
+))
+->values(array(
+  'vid' => '23',
+  'type' => 'page',
+))
+->values(array(
+  'vid' => '24',
+  'type' => 'page',
+))
+->execute();
+
+db_create_table('watchdog', array(
+  'fields' => array(
+    'wid' => array(
+      'type' => 'serial',
+      'not null' => TRUE,
+    ),
+    'uid' => array(
+      'type' => 'int',
+      'not null' => TRUE,
+      'default' => 0,
+    ),
+    'type' => array(
+      'type' => 'varchar',
+      'length' => 16,
+      'not null' => TRUE,
+      'default' => '',
+    ),
+    'message' => array(
+      'type' => 'text',
+      'not null' => TRUE,
+      'size' => 'big',
+    ),
+    'variables' => array(
+      'type' => 'text',
+      'not null' => TRUE,
+      'size' => 'big',
+    ),
+    'severity' => array(
+      'type' => 'int',
+      'unsigned' => TRUE,
+      'not null' => TRUE,
+      'default' => 0,
+      'size' => 'tiny',
+    ),
+    'link' => array(
+      'type' => 'varchar',
+      'length' => 255,
+      'not null' => TRUE,
+      'default' => '',
+    ),
+    'location' => array(
+      'type' => 'text',
+      'not null' => TRUE,
+    ),
+    'referer' => array(
+      'type' => 'text',
+      'not null' => FALSE,
+    ),
+    'hostname' => array(
+      'type' => 'varchar',
+      'length' => 128,
+      'not null' => TRUE,
+      'default' => '',
+    ),
+    'timestamp' => array(
+      'type' => 'int',
+      'not null' => TRUE,
+      'default' => 0,
+    ),
+  ),
+  'primary key' => array(
+    'wid',
+  ),
+  'indexes' => array(
+    'type' => array(
+      'type',
+    ),
+  ),
+  'module' => 'dblog',
+  'name' => 'watchdog',
+));
+
diff --git a/modules/simpletest/tests/upgrade/drupal-6.forum.database.php b/modules/simpletest/tests/upgrade/drupal-6.forum.database.php
new file mode 100644
index 0000000..5a2cc33
--- /dev/null
+++ b/modules/simpletest/tests/upgrade/drupal-6.forum.database.php
@@ -0,0 +1,260 @@
+<?php
+
+/**
+ * Database additions for forum tests.
+ */
+
+db_create_table('forum', array(
+  'fields' => array(
+    'nid' => array(
+      'type' => 'int',
+      'unsigned' => TRUE,
+      'not null' => TRUE,
+      'default' => 0,
+    ),
+    'vid' => array(
+      'type' => 'int',
+      'unsigned' => TRUE,
+      'not null' => TRUE,
+      'default' => 0,
+    ),
+    'tid' => array(
+      'type' => 'int',
+      'unsigned' => TRUE,
+      'not null' => TRUE,
+      'default' => 0,
+    ),
+  ),
+  'indexes' => array(
+    'nid' => array(
+      'nid',
+    ),
+    'tid' => array(
+      'tid',
+    ),
+  ),
+  'primary key' => array(
+    'vid',
+  ),
+  'module' => 'forum',
+  'name' => 'forum',
+));
+db_insert('forum')->fields(array(
+  'nid',
+  'vid',
+  'tid',
+))
+->values(array(
+  'nid' => '51',
+  'vid' => '61',
+  'tid' => '81',
+))
+->execute();
+
+db_insert('node')->fields(array(
+  'nid',
+  'vid',
+  'type',
+  'language',
+  'title',
+  'uid',
+  'status',
+  'created',
+  'changed',
+  'comment',
+  'promote',
+  'moderate',
+  'sticky',
+  'tnid',
+  'translate',
+))
+->values(array(
+  'nid' => '51',
+  'vid' => '61',
+  'type' => 'forum',
+  'language' => '',
+  'title' => 'Apples',
+  'uid' => '1',
+  'status' => '1',
+  'created' => '1298363952',
+  'changed' => '1298363952',
+  'comment' => '2',
+  'promote' => '0',
+  'moderate' => '0',
+  'sticky' => '0',
+  'tnid' => '0',
+  'translate' => '0',
+))
+->execute();
+
+db_insert('node_revisions')->fields(array(
+  'nid',
+  'vid',
+  'uid',
+  'title',
+  'body',
+  'teaser',
+  'log',
+  'timestamp',
+  'format',
+))
+->values(array(
+  'nid' => '51',
+  'vid' => '61',
+  'uid' => '1',
+  'title' => 'Apples',
+  'body' => 'A fruit.',
+  'teaser' => 'A fruit.',
+  'log' => '',
+  'timestamp' => '1298363952',
+  'format' => '1',
+))
+->execute();
+
+db_insert('node_comment_statistics')->fields(array(
+  'nid',
+  'last_comment_timestamp',
+  'last_comment_name',
+  'last_comment_uid',
+  'comment_count',
+))
+->values(array(
+  'nid' => '51',
+  'last_comment_timestamp' => '1298363952',
+  'last_comment_name' => NULL,
+  'last_comment_uid' => '1',
+  'comment_count' => '0',
+))
+->execute();
+
+db_insert('node_type')->fields(array(
+  'type',
+  'name',
+  'module',
+  'description',
+  'help',
+  'has_title',
+  'title_label',
+  'has_body',
+  'body_label',
+  'min_word_count',
+  'custom',
+  'modified',
+  'locked',
+  'orig_type',
+))
+->values(array(
+  'type' => 'forum',
+  'name' => 'Forum topic',
+  'module' => 'forum',
+  'description' => 'A <em>forum topic</em> is the initial post to a new discussion thread within a forum.',
+  'help' => '',
+  'has_title' => '1',
+  'title_label' => 'Subject',
+  'has_body' => '1',
+  'body_label' => 'Body',
+  'min_word_count' => '0',
+  'custom' => '0',
+  'modified' => '0',
+  'locked' => '1',
+  'orig_type' => 'forum',
+))
+->execute();
+
+db_update('system')->fields(array(
+  'schema_version' => '6000',
+  'status' => '1',
+))
+->condition('filename', 'modules/forum/forum.module')
+->execute();
+
+db_insert('term_data')->fields(array(
+  'tid',
+  'vid',
+  'name',
+  'description',
+  'weight',
+))
+->values(array(
+  'tid' => '81',
+  'vid' => '101',
+  'name' => 'Fruits',
+  'description' => 'Fruits.',
+  'weight' => '0',
+))
+->execute();
+
+db_insert('term_hierarchy')->fields(array(
+  'tid',
+  'parent',
+))
+->values(array(
+  'tid' => '81',
+  'parent' => '0',
+))
+->execute();
+
+db_insert('term_node')->fields(array(
+  'nid',
+  'vid',
+  'tid',
+))
+->values(array(
+  'nid' => '51',
+  'vid' => '61',
+  'tid' => '81',
+))
+->execute();
+
+db_insert('variable')->fields(array(
+  'name',
+  'value',
+))
+->values(array(
+  'name' => 'forum_nav_vocabulary',
+  'value' => 's:3:"101";',
+))
+->values(array(
+  'name' => 'forum_containers',
+  'value' => 'a:1:{i:0;s:3:"101";}',
+))
+->execute();
+
+db_insert('vocabulary')->fields(array(
+  'vid',
+  'name',
+  'description',
+  'help',
+  'relations',
+  'hierarchy',
+  'multiple',
+  'required',
+  'tags',
+  'module',
+  'weight',
+))
+->values(array(
+  'vid' => '101',
+  'name' => 'Upgrade test for forums',
+  'description' => 'Vocabulary used for Forums. The name is changed from the default "Forums" so that the upgrade path may be tested.',
+  'help' => '',
+  'relations' => '1',
+  'hierarchy' => '1',
+  'multiple' => '0',
+  'required' => '0',
+  'tags' => '0',
+  'module' => 'forum',
+  'weight' => '-10',
+))
+->execute();
+
+db_insert('vocabulary_node_types')->fields(array(
+  'vid',
+  'type',
+))
+->values(array(
+  'vid' => '101',
+  'type' => 'forum',
+))
+->execute();
+
diff --git a/modules/simpletest/tests/upgrade/drupal-6.locale.database.php b/modules/simpletest/tests/upgrade/drupal-6.locale.database.php
new file mode 100644
index 0000000..c8af671
--- /dev/null
+++ b/modules/simpletest/tests/upgrade/drupal-6.locale.database.php
@@ -0,0 +1,276 @@
+<?php
+
+/**
+ * Database additions for locale tests.
+ */
+
+db_create_table('languages', array(
+  'fields' => array(
+    'language' => array(
+      'type' => 'varchar',
+      'length' => 12,
+      'not null' => TRUE,
+      'default' => '',
+    ),
+    'name' => array(
+      'type' => 'varchar',
+      'length' => 64,
+      'not null' => TRUE,
+      'default' => '',
+    ),
+    'native' => array(
+      'type' => 'varchar',
+      'length' => 64,
+      'not null' => TRUE,
+      'default' => '',
+    ),
+    'direction' => array(
+      'type' => 'int',
+      'not null' => TRUE,
+      'default' => 0,
+    ),
+    'enabled' => array(
+      'type' => 'int',
+      'not null' => TRUE,
+      'default' => 0,
+    ),
+    'plurals' => array(
+      'type' => 'int',
+      'not null' => TRUE,
+      'default' => 0,
+    ),
+    'formula' => array(
+      'type' => 'varchar',
+      'length' => 128,
+      'not null' => TRUE,
+      'default' => '',
+    ),
+    'domain' => array(
+      'type' => 'varchar',
+      'length' => 128,
+      'not null' => TRUE,
+      'default' => '',
+    ),
+    'prefix' => array(
+      'type' => 'varchar',
+      'length' => 128,
+      'not null' => TRUE,
+      'default' => '',
+    ),
+    'weight' => array(
+      'type' => 'int',
+      'not null' => TRUE,
+      'default' => 0,
+    ),
+    'javascript' => array(
+      'type' => 'varchar',
+      'length' => 32,
+      'not null' => TRUE,
+      'default' => '',
+    ),
+  ),
+  'primary key' => array(
+    'language',
+  ),
+  'indexes' => array(
+    'list' => array(
+      'weight',
+      'name',
+    ),
+  ),
+  'module' => 'locale',
+  'name' => 'languages',
+));
+db_insert('languages')->fields(array(
+  'language',
+  'name',
+  'native',
+  'direction',
+  'enabled',
+  'plurals',
+  'formula',
+  'domain',
+  'prefix',
+  'weight',
+  'javascript',
+))
+->values(array(
+  'language' => 'en',
+  'name' => 'English',
+  'native' => 'English',
+  'direction' => '0',
+  'enabled' => '1',
+  'plurals' => '0',
+  'formula' => '',
+  'domain' => 'http://en.example.com',
+  'prefix' => 'en',
+  'weight' => '0',
+  'javascript' => '',
+))
+->values(array(
+  'language' => 'fr',
+  'name' => 'French',
+  'native' => 'Français',
+  'direction' => '0',
+  'enabled' => '1',
+  'plurals' => '2',
+  'formula' => '($n>1)',
+  'domain' => '',
+  'prefix' => 'fr',
+  'weight' => '-3',
+  'javascript' => '51e92dcfe1491f4595b9df7f3b287753',
+))
+->execute();
+
+db_create_table('locales_source', array(
+  'fields' => array(
+    'lid' => array(
+      'type' => 'serial',
+      'not null' => TRUE,
+    ),
+    'location' => array(
+      'type' => 'varchar',
+      'length' => 255,
+      'not null' => TRUE,
+      'default' => '',
+    ),
+    'textgroup' => array(
+      'type' => 'varchar',
+      'length' => 255,
+      'not null' => TRUE,
+      'default' => 'default',
+    ),
+    'source' => array(
+      'type' => 'text',
+      'mysql_type' => 'blob',
+      'not null' => TRUE,
+    ),
+    'version' => array(
+      'type' => 'varchar',
+      'length' => 20,
+      'not null' => TRUE,
+      'default' => 'none',
+    ),
+  ),
+  'primary key' => array(
+    'lid',
+  ),
+  'indexes' => array(
+    'source' => array(
+      array(
+        'source',
+        30,
+      ),
+    ),
+  ),
+  'module' => 'locale',
+  'name' => 'locales_source',
+));
+
+db_create_table('locales_target', array(
+  'fields' => array(
+    'lid' => array(
+      'type' => 'int',
+      'not null' => TRUE,
+      'default' => 0,
+    ),
+    'translation' => array(
+      'type' => 'text',
+      'mysql_type' => 'blob',
+      'not null' => TRUE,
+    ),
+    'language' => array(
+      'type' => 'varchar',
+      'length' => 12,
+      'not null' => TRUE,
+      'default' => '',
+    ),
+    'plid' => array(
+      'type' => 'int',
+      'not null' => TRUE,
+      'default' => 0,
+    ),
+    'plural' => array(
+      'type' => 'int',
+      'not null' => TRUE,
+      'default' => 0,
+    ),
+  ),
+  'primary key' => array(
+    'language',
+    'lid',
+    'plural',
+  ),
+  'indexes' => array(
+    'lid' => array(
+      'lid',
+    ),
+    'plid' => array(
+      'plid',
+    ),
+    'plural' => array(
+      'plural',
+    ),
+  ),
+  'module' => 'locale',
+  'name' => 'locales_target',
+));
+
+// Enable the locale module.
+db_update('system')->fields(array(
+  'status' => 1,
+  'schema_version' => '6006',
+))
+->condition('type', 'module')
+->condition('name', 'locale')
+->execute();
+
+// Set the default language.
+db_insert('variable')->fields(array(
+  'name',
+  'value',
+))
+->values(array(
+  'name' => 'language_default',
+  'value' => 'O:8:"stdClass":11:{s:8:"language";s:2:"fr";s:4:"name";s:6:"French";s:6:"native";s:9:"Français";s:9:"direction";s:1:"0";s:7:"enabled";i:1;s:7:"plurals";s:1:"2";s:7:"formula";s:6:"($n>1)";s:6:"domain";s:0:"";s:6:"prefix";s:0:"";s:6:"weight";s:2:"-3";s:10:"javascript";s:32:"51e92dcfe1491f4595b9df7f3b287753";}',
+))
+->values(array(
+  'name' => 'language_count',
+  'value' => 'i:2;',
+))
+->values(array(
+  'name' => 'language_negotiation',
+  'value' => 'i:0;',
+))
+->execute();
+
+// Add the language switcher block in the left region.
+db_insert('blocks')->fields(array(
+  'module',
+  'delta',
+  'theme',
+  'status',
+  'weight',
+  'region',
+  'custom',
+  'throttle',
+  'visibility',
+  'pages',
+  'title',
+  'cache',
+))
+->values(array(
+  'module' => 'locale',
+  'delta' => '0',
+  'theme' => 'garland',
+  'status' => '1',
+  'weight' => '0',
+  'region' => 'left',
+  'custom' => '0',
+  'throttle' => '0',
+  'visibility' => '0',
+  'pages' => '',
+  'title' => '',
+  'cache' => '-1',
+))
+->execute();
diff --git a/modules/simpletest/tests/upgrade/drupal-6.menu.database.php b/modules/simpletest/tests/upgrade/drupal-6.menu.database.php
new file mode 100644
index 0000000..d10c4ee
--- /dev/null
+++ b/modules/simpletest/tests/upgrade/drupal-6.menu.database.php
@@ -0,0 +1,10 @@
+<?php
+db_insert('variable')->fields(array(
+  'name',
+  'value',
+))
+->values(array(
+  'name' => 'menu_default_node_menu',
+  'value' => 's:15:"secondary-links";',
+))
+->execute();
diff --git a/modules/simpletest/tests/upgrade/drupal-6.upload.database.php b/modules/simpletest/tests/upgrade/drupal-6.upload.database.php
new file mode 100644
index 0000000..493483f
--- /dev/null
+++ b/modules/simpletest/tests/upgrade/drupal-6.upload.database.php
@@ -0,0 +1,397 @@
+<?php
+
+db_insert('files')->fields(array(
+  'fid',
+  'uid',
+  'filename',
+  'filepath',
+  'filemime',
+  'filesize',
+  'status',
+  'timestamp',
+))
+/*
+ * This entry is deliberately omitted to test the upgrade routine when facing
+ * possible data corruption.
+ *
+->values(array(
+  'fid' => '1',
+  'uid' => '1',
+  'filename' => 'powered-blue-80x15.png',
+  'filepath' => 'sites/default/files/powered-blue-80x15.png',
+  'filemime' => 'image/png',
+  'filesize' => '1011',
+  'status' => '1',
+  'timestamp' => '1285700240',
+)) */
+->values(array(
+  'fid' => '2',
+  'uid' => '1',
+  'filename' => 'powered-blue-80x15.png',
+  'filepath' => 'sites/default/files/powered-blue-80x15_0.png',
+  'filemime' => 'image/png',
+  'filesize' => '1011',
+  'status' => '1',
+  'timestamp' => '1285700317',
+))
+->values(array(
+  'fid' => '3',
+  'uid' => '1',
+  'filename' => 'powered-blue-88x31.png',
+  'filepath' => 'sites/default/files/powered-blue-88x31.png',
+  'filemime' => 'image/png',
+  'filesize' => '2113',
+  'status' => '1',
+  'timestamp' => '1285700343',
+))
+->values(array(
+  'fid' => '4',
+  'uid' => '1',
+  'filename' => 'powered-blue-135x42.png',
+  'filepath' => 'sites/default/files/powered-blue-135x42.png',
+  'filemime' => 'image/png',
+  'filesize' => '3027',
+  'status' => '1',
+  'timestamp' => '1285700366',
+))
+->values(array(
+  'fid' => '5',
+  'uid' => '1',
+  'filename' => 'powered-black-80x15.png',
+  'filepath' => 'sites/default/files/powered-black-80x15.png',
+  'filemime' => 'image/png',
+  'filesize' => '1467',
+  'status' => '1',
+  'timestamp' => '1285700529',
+))
+->values(array(
+  'fid' => '6',
+  'uid' => '1',
+  'filename' => 'powered-black-135x42.png',
+  'filepath' => 'sites/default/files/powered-black-135x42.png',
+  'filemime' => 'image/png',
+  'filesize' => '2817',
+  'status' => '1',
+  'timestamp' => '1285700552',
+))
+->values(array(
+  'fid' => '7',
+  'uid' => '1',
+  'filename' => 'forum-hot-new.png',
+  'filepath' => 'sites/default/files/forum-hot-new.png',
+  'filemime' => 'image/png',
+  'filesize' => '237',
+  'status' => '1',
+  'timestamp' => '1285708937',
+))
+->values(array(
+  'fid' => '8',
+  'uid' => '1',
+  'filename' => 'forum-hot.png',
+  'filepath' => 'sites/default/files/forum-hot.png',
+  'filemime' => 'image/png',
+  'filesize' => '229',
+  'status' => '1',
+  'timestamp' => '1285708944',
+))
+->values(array(
+  'fid' => '9',
+  'uid' => '1',
+  'filename' => 'forum-new.png',
+  'filepath' => 'sites/default/files/forum-new.png',
+  'filemime' => 'image/png',
+  'filesize' => '175',
+  'status' => '1',
+  'timestamp' => '1285708950',
+))
+->values(array(
+  'fid' => '10',
+  'uid' => '1',
+  'filename' => 'forum-sticky.png',
+  'filepath' => 'sites/default/files/forum-sticky.png',
+  'filemime' => 'image/png',
+  'filesize' => '329',
+  'status' => '1',
+  'timestamp' => '1285708957',
+))
+->execute();
+
+db_insert('node')->fields(array(
+  'nid',
+  'vid',
+  'type',
+  'language',
+  'title',
+  'uid',
+  'status',
+  'created',
+  'changed',
+  'comment',
+  'promote',
+  'moderate',
+  'sticky',
+  'tnid',
+  'translate',
+))
+->values(array(
+  'nid' => '38',
+  'vid' => '50',
+  'type' => 'page',
+  'language' => '',
+  'title' => 'node title 38 revision 50',
+  'uid' => '1',
+  'status' => '1',
+  'created' => '1285603317',
+  'changed' => '1285603317',
+  'comment' => '0',
+  'promote' => '0',
+  'moderate' => '0',
+  'sticky' => '0',
+  'tnid' => '0',
+  'translate' => '0',
+))
+->values(array(
+  'nid' => '39',
+  'vid' => '52',
+  'type' => 'page',
+  'language' => '',
+  'title' => 'node title 39 revision 52',
+  'uid' => '1',
+  'status' => '1',
+  'created' => '1285700317',
+  'changed' => '1285700600',
+  'comment' => '0',
+  'promote' => '0',
+  'moderate' => '0',
+  'sticky' => '0',
+  'tnid' => '0',
+  'translate' => '0',
+))
+->values(array(
+  'nid' => '40',
+  'vid' => '53',
+  'type' => 'page',
+  'language' => '',
+  'title' => 'node title 40 revision 53',
+  'uid' => '1',
+  'status' => '1',
+  'created' => '1285709012',
+  'changed' => '1285709012',
+  'comment' => '0',
+  'promote' => '0',
+  'moderate' => '0',
+  'sticky' => '0',
+  'tnid' => '0',
+  'translate' => '0',
+))
+ ->execute();
+
+db_insert('node_revisions')->fields(array(
+  'nid',
+  'vid',
+  'uid',
+  'title',
+  'body',
+  'teaser',
+  'log',
+  'timestamp',
+  'format',
+))
+->values(array(
+  'nid' => '38',
+  'vid' => '50',
+  'uid' => '1',
+  'title' => 'node title 38 revision 50',
+  'body' => "Attachments:\r\npowered-blue-80x15.png",
+  'teaser' => "Attachments:\r\npowered-blue-80x15.png",
+  'log' => '',
+  'timestamp' => '1285603317',
+  'format' => '1',
+))
+->values(array(
+  'nid' => '39',
+  'vid' => '51',
+  'uid' => '1',
+  'title' => 'node title 39 revision 51',
+  'body' => "Attachments:\r\npowered-blue-80x15.png\r\npowered-blue-88x31.png\r\npowered-blue-135x42.png",
+  'teaser' => "Attachments:\r\npowered-blue-80x15.png\r\npowered-blue-88x31.png\r\npowered-blue-135x42.png",
+  'log' => '',
+  'timestamp' => '1285700487',
+  'format' => '1',
+))
+->values(array(
+  'nid' => '39',
+  'vid' => '52',
+  'uid' => '1',
+  'title' => 'node title 39 revision 52',
+  'body' => "Attachments:\r\npowered-blue-88x31.png\r\npowered-black-80x15.png\r\npowered-black-135x42.png",
+  'teaser' => "Attachments:\r\npowered-blue-88x31.png\r\npowered-black-80x15.png\r\npowered-black-135x42.png",
+  'log' => '',
+  'timestamp' => '1285700600',
+  'format' => '1',
+))
+->values(array(
+  'nid' => '40',
+  'vid' => '53',
+  'uid' => '1',
+  'title' => 'node title 40 revision 53',
+  'body' => "Attachments:\r\nforum-hot-new.png\r\nforum-hot.png\r\nforum-sticky.png\r\nforum-new.png",
+  'teaser' => "Attachments:\r\nforum-hot-new.png\r\nforum-hot.png\r\nforum-sticky.png\r\nforum-new.png",
+  'log' => '',
+  'timestamp' => '1285709012',
+  'format' => '1',
+))
+ ->execute();
+
+db_create_table('upload', array(
+  'fields' => array(
+    'fid' => array(
+      'type' => 'int',
+      'unsigned' => TRUE,
+      'not null' => TRUE,
+      'default' => 0,
+    ),
+    'nid' => array(
+      'type' => 'int',
+      'unsigned' => TRUE,
+      'not null' => TRUE,
+      'default' => 0,
+    ),
+    'vid' => array(
+      'type' => 'int',
+      'unsigned' => TRUE,
+      'not null' => TRUE,
+      'default' => 0,
+    ),
+    'description' => array(
+      'type' => 'varchar',
+      'length' => 255,
+      'not null' => TRUE,
+      'default' => '',
+    ),
+    'list' => array(
+      'type' => 'int',
+      'unsigned' => TRUE,
+      'not null' => TRUE,
+      'default' => 0,
+      'size' => 'tiny',
+    ),
+    'weight' => array(
+      'type' => 'int',
+      'not null' => TRUE,
+      'default' => 0,
+      'size' => 'tiny',
+    ),
+  ),
+  'primary key' => array(
+    'vid',
+    'fid',
+  ),
+  'indexes' => array(
+    'fid' => array(
+      'fid',
+    ),
+    'nid' => array(
+      'nid',
+    ),
+  ),
+  'module' => 'upload',
+  'name' => 'upload',
+));
+db_insert('upload')->fields(array(
+  'fid',
+  'nid',
+  'vid',
+  'description',
+  'list',
+  'weight',
+))
+->values(array(
+  'fid' => '1',
+  'nid' => '38',
+  'vid' => '50',
+  'description' => 'powered-blue-80x15.png',
+  'list' => '1',
+  'weight' => '0',
+))
+->values(array(
+  'fid' => '2',
+  'nid' => '39',
+  'vid' => '51',
+  'description' => 'powered-blue-80x15.png',
+  'list' => '1',
+  'weight' => '0',
+))
+->values(array(
+  'fid' => '3',
+  'nid' => '39',
+  'vid' => '51',
+  'description' => 'powered-blue-88x31.png',
+  'list' => '1',
+  'weight' => '0',
+))
+->values(array(
+  'fid' => '4',
+  'nid' => '39',
+  'vid' => '51',
+  'description' => 'powered-blue-135x42.png',
+  'list' => '1',
+  'weight' => '0',
+))
+->values(array(
+  'fid' => '3',
+  'nid' => '39',
+  'vid' => '52',
+  'description' => 'powered-blue-88x31.png',
+  'list' => '1',
+  'weight' => '0',
+))
+->values(array(
+  'fid' => '5',
+  'nid' => '39',
+  'vid' => '52',
+  'description' => 'powered-black-80x15.png',
+  'list' => '1',
+  'weight' => '0',
+))
+->values(array(
+  'fid' => '6',
+  'nid' => '39',
+  'vid' => '52',
+  'description' => 'powered-black-135x42.png',
+  'list' => '1',
+  'weight' => '0',
+))
+->values(array(
+  'fid' => '7',
+  'nid' => '40',
+  'vid' => '53',
+  'description' => 'forum-hot-new.png',
+  'list' => '1',
+  'weight' => '-4',
+))
+->values(array(
+  'fid' => '8',
+  'nid' => '40',
+  'vid' => '53',
+  'description' => 'forum-hot.png',
+  'list' => '1',
+  'weight' => '-3',
+))
+->values(array(
+  'fid' => '10',
+  'nid' => '40',
+  'vid' => '53',
+  'description' => 'forum-sticky.png',
+  'list' => '1',
+  'weight' => '-2',
+))
+->values(array(
+  'fid' => '9',
+  'nid' => '40',
+  'vid' => '53',
+  'description' => 'forum-new.png',
+  'list' => '1',
+  'weight' => '-1',
+))
+->execute();
diff --git a/modules/simpletest/tests/upgrade/drupal-6.user-no-password-token.database.php b/modules/simpletest/tests/upgrade/drupal-6.user-no-password-token.database.php
new file mode 100644
index 0000000..6463194
--- /dev/null
+++ b/modules/simpletest/tests/upgrade/drupal-6.user-no-password-token.database.php
@@ -0,0 +1,10 @@
+<?php
+db_insert('variable')->fields(array(
+  'name',
+  'value',
+))
+->values(array(
+  'name' => 'user_mail_register_no_approval_required_body',
+  'value' => 's:86:"!username, !site, !uri, !uri_brief, !mailto, !date, !login_uri, !edit_uri, !login_url.";',
+))
+->execute();
diff --git a/modules/simpletest/tests/upgrade/drupal-6.user-password-token.database.php b/modules/simpletest/tests/upgrade/drupal-6.user-password-token.database.php
new file mode 100644
index 0000000..367c704
--- /dev/null
+++ b/modules/simpletest/tests/upgrade/drupal-6.user-password-token.database.php
@@ -0,0 +1,10 @@
+<?php
+db_insert('variable')->fields(array(
+  'name',
+  'value',
+))
+->values(array(
+  'name' => 'user_mail_register_no_approval_required_body',
+  'value' => 's:97:"!password, !username, !site, !uri, !uri_brief, !mailto, !date, !login_uri, !edit_uri, !login_url.";',
+))
+->execute();
diff --git a/modules/simpletest/tests/upgrade/upgrade.comment.test b/modules/simpletest/tests/upgrade/upgrade.comment.test
new file mode 100644
index 0000000..5fcf0b4
--- /dev/null
+++ b/modules/simpletest/tests/upgrade/upgrade.comment.test
@@ -0,0 +1,32 @@
+<?php
+
+/**
+ * Upgrade test for comment.module.
+ */
+class CommentUpgradePathTestCase extends UpgradePathTestCase {
+  public static function getInfo() {
+    return array(
+      'name'  => 'Comment upgrade path',
+      'description'  => 'Comment upgrade path tests.',
+      'group' => 'Upgrade path',
+    );
+  }
+
+  public function setUp() {
+    // Path to the database dump files.
+    $this->databaseDumpFiles = array(
+      drupal_get_path('module', 'simpletest') . '/tests/upgrade/drupal-6.filled.database.php',
+      drupal_get_path('module', 'simpletest') . '/tests/upgrade/drupal-6.comments.database.php',
+    );
+    parent::setUp();
+
+    $this->uninstallModulesExcept(array('comment'));
+  }
+
+  /**
+   * Test a successful upgrade.
+   */
+  public function testCommentUpgrade() {
+    $this->assertTrue($this->performUpgrade(), t('The upgrade was completed successfully.'));
+  }
+}
diff --git a/modules/simpletest/tests/upgrade/upgrade.filter.test b/modules/simpletest/tests/upgrade/upgrade.filter.test
new file mode 100644
index 0000000..86248b7
--- /dev/null
+++ b/modules/simpletest/tests/upgrade/upgrade.filter.test
@@ -0,0 +1,55 @@
+<?php
+
+/**
+ * Upgrade test for filter format identifiers.
+ *
+ * Filter format identifiers changed from sequential ids to machine names.
+ * Verify that filter formats and references to filter formats in core are
+ * converted properly.
+ */
+class FilterFormatUpgradePathTestCase extends UpgradePathTestCase {
+  public static function getInfo() {
+    return array(
+      'name' => 'Filter format upgrade path',
+      'description' => 'Verifies that filter formats and references to filter formats are converted properly.',
+      'group' => 'Upgrade path',
+    );
+  }
+
+  function setUp() {
+    // Path to the database dump.
+    $this->databaseDumpFiles = array(
+      drupal_get_path('module', 'simpletest') . '/tests/upgrade/drupal-6.filled.database.php',
+    );
+    parent::setUp();
+  }
+
+  /**
+   * Test a successful upgrade.
+   */
+  function testFilterFormatUpgrade() {
+    $this->assertTrue($this->performUpgrade(), t('The upgrade was completed successfully.'));
+
+    $format = filter_format_load('1');
+    $this->assertTrue($format->format == '1', t('Filter format found.'));
+    $format->format = 'test_filter';
+    $format->name = 'Test filter';
+    filter_format_save($format);
+    $format = filter_format_load('test_filter');
+    $this->assertTrue($format->format == 'test_filter', t('Saved a filter format with machine name.'));
+
+    $account = user_load(4);
+    user_save($account, array('signature_format' => 'test_filter'));
+    $account = user_load(4);
+    $this->assertTrue($account->signature_format == 'test_filter', t('Signature format changed successfully to a filter format with machine name.'));
+
+    $delta = db_insert('block_custom')
+      ->fields(array(
+        'body' => 'Test block',
+        'info' => 'Test block',
+        'format' => 'test_filter',
+      ))
+      ->execute();
+    $this->assertTrue($delta > 0, t('Created a custom block using a filter format with machine name.'));
+  }
+}
diff --git a/modules/simpletest/tests/upgrade/upgrade.forum.test b/modules/simpletest/tests/upgrade/upgrade.forum.test
new file mode 100644
index 0000000..99269d9
--- /dev/null
+++ b/modules/simpletest/tests/upgrade/upgrade.forum.test
@@ -0,0 +1,60 @@
+<?php
+
+/**
+ * Upgrade test for forum.module.
+ */
+class ForumUpgradePathTestCase extends UpgradePathTestCase {
+  public static function getInfo() {
+    return array(
+      'name'  => 'Forum upgrade path',
+      'description'  => 'Upgrade path tests for the Forum module.',
+      'group' => 'Upgrade path',
+    );
+  }
+
+  public function setUp() {
+    // Path to the database dump files.
+    $this->databaseDumpFiles = array(
+      drupal_get_path('module', 'simpletest') . '/tests/upgrade/drupal-6.filled.database.php',
+      drupal_get_path('module', 'simpletest') . '/tests/upgrade/drupal-6.forum.database.php',
+    );
+    parent::setUp();
+
+    $this->uninstallModulesExcept(array('comment', 'forum', 'taxonomy'));
+  }
+
+  /**
+   * Test a successful upgrade (no negotiation).
+   */
+  public function testForumUpgrade() {
+    $this->assertTrue($this->performUpgrade(), t('The upgrade was completed successfully.'));
+
+    // Work around http://drupal.org/node/931512
+    $this->drupalPost('admin/structure/types/manage/forum/fields', array(), t('Save'));
+
+    // The D6 database forum vocabulary contains the term "Fruits" with id 81.
+    $tid = 81;
+    $this->drupalGet("forum/$tid");
+
+    // There is one forum topic in Fruits, with the title "Apples".
+    $this->clickLink('Apples');
+    $this->clickLink('Edit');
+
+    // Add a forum topic "Bananas" to the "Fruits" forum.
+    $edit = array(
+      'title' => $title = 'Bananas',
+      'body[' . LANGUAGE_NONE . '][0][value]' => $body = 'It is another fruit.',
+    );
+    $this->drupalPost("node/add/forum/$tid", $edit, t('Save'));
+    $type = t('Forum topic');
+    $this->assertRaw(t('@type %title has been created.', array('@type' => $type, '%title' => $title)), t('Forum topic was created'));
+
+    // Retrieve node object, ensure that the topic was created and in the proper forum.
+    $node = $this->drupalGetNodeByTitle($title);
+    $this->assertTrue($node != NULL, t('Node @title was loaded', array('@title' => $title)));
+    $this->assertEqual($node->taxonomy_forums[LANGUAGE_NONE][0]['tid'], $tid, 'Saved forum topic was in the expected forum');
+
+    $this->drupalGet("forum/$tid");
+    $this->assertText('Bananas');
+    }
+}
diff --git a/modules/simpletest/tests/upgrade/upgrade.locale.test b/modules/simpletest/tests/upgrade/upgrade.locale.test
new file mode 100644
index 0000000..aec559d
--- /dev/null
+++ b/modules/simpletest/tests/upgrade/upgrade.locale.test
@@ -0,0 +1,143 @@
+<?php
+
+/**
+ * Upgrade test for locale.module.
+ */
+class LocaleUpgradePathTestCase extends UpgradePathTestCase {
+  public static function getInfo() {
+    return array(
+      'name'  => 'Locale upgrade path',
+      'description'  => 'Upgrade path tests for the Locale module.',
+      'group' => 'Upgrade path',
+    );
+  }
+
+  public function setUp() {
+    // Path to the database dump files.
+    $this->databaseDumpFiles = array(
+      drupal_get_path('module', 'simpletest') . '/tests/upgrade/drupal-6.filled.database.php',
+      drupal_get_path('module', 'simpletest') . '/tests/upgrade/drupal-6.locale.database.php',
+    );
+    parent::setUp();
+
+    $this->uninstallModulesExcept(array('locale', 'comment'));
+  }
+
+  /**
+   * Test a successful upgrade (no negotiation).
+   */
+  public function testLocaleUpgrade() {
+    $this->assertTrue($this->performUpgrade(), t('The upgrade was completed successfully.'));
+
+    // The home page should be in French.
+    $this->assertPageInLanguage('', 'fr');
+
+    // No prefixed page should exist.
+    $this->drupalGet('en');
+    $this->assertResponse(404);
+    $this->drupalGet('fr');
+    $this->assertResponse(404);
+  }
+
+  /**
+   * Test an upgrade with path-based negotiation.
+   */
+  public function testLocaleUpgradePathDefault() {
+    // LANGUAGE_NEGOTIATION_PATH_DEFAULT.
+    $this->variable_set('language_negotiation', 1);
+
+    $this->assertTrue($this->performUpgrade(), t('The upgrade was completed successfully.'));
+
+    // The home page should be in French.
+    $this->assertPageInLanguage('', 'fr');
+
+    // The language switcher block should be displayed.
+    $this->assertRaw('block-locale-language', t('The language switcher block is displayed.'));
+
+    // The French prefix should not be active because French is the default language.
+    $this->drupalGet('fr');
+    $this->assertResponse(404);
+
+    // The English prefix should be active.
+    $this->assertPageInLanguage('en', 'en');
+  }
+
+  /**
+   * Test an upgrade with path-based (with fallback) negotiation.
+   */
+  public function testLocaleUpgradePathFallback() {
+    // LANGUAGE_NEGOTIATION_PATH.
+    $this->variable_set('language_negotiation', 2);
+
+    // Set the language of the admin user to English.
+    db_update('users')
+      ->fields(array('language' => 'en'))
+      ->condition('uid', 1)
+      ->execute();
+
+    $this->assertTrue($this->performUpgrade(), t('The upgrade was completed successfully.'));
+
+    // Both prefixes should be active.
+    $this->assertPageInLanguage('fr', 'fr');
+    $this->assertPageInLanguage('en', 'en');
+
+    // The home page should be in the admin user language.
+    $this->assertPageInLanguage('', 'en');
+
+    // The language switcher block should be displayed.
+    $this->assertRaw('block-locale-language', t('The language switcher block is displayed.'));
+  }
+
+  /**
+   * Test an upgrade with domain-based negotiation.
+   */
+  public function testLocaleUpgradeDomain() {
+    // LANGUAGE_NEGOTIATION_DOMAIN.
+    $this->variable_set('language_negotiation', 3);
+
+    $this->assertTrue($this->performUpgrade(), t('The upgrade was completed successfully.'));
+
+    // The home page should be in French.
+    $this->assertPageInLanguage('', 'fr');
+
+    // The language switcher block should be displayed.
+    $this->assertRaw('block-locale-language', t('The language switcher block is displayed.'));
+
+    // The language switcher block should point to http://en.example.com.
+    $language_links = $this->xpath('//ul[contains(@class, :class)]/li/a', array(':class' => 'language-switcher-locale-url'));
+    $found_english_link = FALSE;
+    foreach ($language_links as $link) {
+      if ((string) $link['href'] == 'http://en.example.com/') {
+        $found_english_link = TRUE;
+      }
+    }
+    $this->assertTrue($found_english_link, t('The English link points to the correct domain.'));
+
+    // Both prefixes should be inactive.
+    $this->drupalGet('en');
+    $this->assertResponse(404);
+    $this->drupalGet('fr');
+    $this->assertResponse(404);
+
+  }
+
+  /**
+   * Asserts that a page exists and is in the specified language.
+   */
+  public function assertPageInLanguage($path = NULL, $langcode) {
+    if (isset($path)) {
+      $this->drupalGet($path);
+    }
+
+    if (!$this->assertResponse(200)) {
+      return FALSE;
+    }
+
+    if ($this->parse()) {
+      return $this->assertIdentical($langcode, (string) $this->elements['xml:lang']);
+    }
+    else {
+      return FALSE;
+    }
+  }
+}
diff --git a/modules/simpletest/tests/upgrade/upgrade.menu.test b/modules/simpletest/tests/upgrade/upgrade.menu.test
new file mode 100644
index 0000000..beb2027
--- /dev/null
+++ b/modules/simpletest/tests/upgrade/upgrade.menu.test
@@ -0,0 +1,44 @@
+<?php
+
+/**
+ * Upgrade test for menu.module.
+ */
+class MenuUpgradePathTestCase extends UpgradePathTestCase {
+  public static function getInfo() {
+    return array(
+      'name'  => 'Menu upgrade path',
+      'description'  => 'Menu upgrade path tests.',
+      'group' => 'Upgrade path',
+    );
+  }
+
+  public function setUp() {
+    // Path to the database dump files.
+    $this->databaseDumpFiles = array(
+      drupal_get_path('module', 'simpletest') . '/tests/upgrade/drupal-6.filled.database.php',
+      drupal_get_path('module', 'simpletest') . '/tests/upgrade/drupal-6.menu.database.php',
+    );
+    parent::setUp();
+
+    $this->uninstallModulesExcept(array('menu'));
+  }
+
+  /**
+   * Test a successful upgrade.
+   */
+  public function testMenuUpgrade() {
+    $this->assertTrue($this->performUpgrade(), t('The upgrade was completed successfully.'));
+
+    // Test the migration of "Default menu for content" setting to individual node types.
+    $this->drupalGet("admin/structure/types/manage/page/edit");
+    $this->assertNoFieldChecked('edit-menu-options-management', 'Management menu is not selected as available menu');
+    $this->assertNoFieldChecked('edit-menu-options-navigation', 'Navigation menu is not selected as available menu');
+    $this->assertNoFieldChecked('edit-menu-options-primary-links', 'Primary Links menu is not selected as available menu');
+    $this->assertFieldChecked('edit-menu-options-secondary-links', 'Secondary Links menu is selected as available menu');
+    $this->assertNoFieldChecked('edit-menu-options-user-menu', 'User menu is not selected as available menu');
+    $this->assertOptionSelected('edit-menu-parent', 'secondary-links:0', 'Secondary links is selected as default parent item');
+
+    $this->assertEqual(variable_get('menu_default_node_menu'), NULL, 'Redundant variable menu_default_node_menu has been removed');
+
+  }
+}
diff --git a/modules/simpletest/tests/upgrade/upgrade.node.test b/modules/simpletest/tests/upgrade/upgrade.node.test
new file mode 100644
index 0000000..163dbef
--- /dev/null
+++ b/modules/simpletest/tests/upgrade/upgrade.node.test
@@ -0,0 +1,111 @@
+<?php
+
+/**
+ * Upgrade test for node bodies.
+ *
+ * Load a filled installation of Drupal 6 and run the upgrade process on it.
+ */
+class NodeBodyUpgradePathTestCase extends UpgradePathTestCase {
+  public static function getInfo() {
+    return array(
+      'name'  => 'Node body upgrade path',
+      'description'  => 'Node body upgrade path tests.',
+      'group' => 'Upgrade path',
+    );
+  }
+
+  public function setUp() {
+    // Path to the database dump.
+    $this->databaseDumpFiles = array(
+      drupal_get_path('module', 'simpletest') . '/tests/upgrade/drupal-6.filled.database.php',
+    );
+    parent::setUp();
+  }
+
+  /**
+   * Test a successful upgrade.
+   */
+  public function testNodeBodyUpgrade() {
+    $this->assertTrue($this->performUpgrade(), t('The upgrade was completed successfully.'));
+    $this->drupalGet("content/1263769200");
+    $this->assertText('node body (broken) - 37');
+
+    // Find a published node revision and make sure it still has a body.
+    $revision = db_query_range("SELECT r.nid, r.vid FROM {node_revision} r JOIN {node} n ON n.nid = r.nid WHERE n.status = 1 AND n.type <> 'poll' AND n.vid <> r.vid", 0, 1)->fetch();
+    $revision = node_load($revision->nid, $revision->vid);
+    $this->assertTrue(!empty($revision->body), 'Non-current node revisions still have a node body.');
+    // Find an unpublished node revision and make sure it still has a body.
+    $revision = db_query_range("SELECT r.nid, r.vid FROM {node_revision} r JOIN {node} n ON n.nid = r.nid WHERE n.status = 0 AND n.type <> 'poll' AND n.vid <> r.vid", 0, 1)->fetch();
+    $revision = node_load($revision->nid, $revision->vid);
+    $this->assertTrue(!empty($revision->body), 'Unpublished non-current node revisions still have a node body.');
+
+    // Check that fields created during the upgrade can be edited and resaved
+    // in the UI.
+    $this->drupalPost('admin/structure/types/manage/story/fields/body', array(), t('Save settings'));
+  }
+}
+
+/**
+ * Upgrade test for node type poll.
+ *
+ * Load a bare installation of Drupal 6 and run the upgrade process on it.
+ *
+ * The install only contains dblog (although it's optional, it's only so that
+ * another hook_watchdog module can take its place, the site is not functional
+ * without watchdog) and update.
+ */
+class PollUpgradePathTestCase extends UpgradePathTestCase {
+  public static function getInfo() {
+    return array(
+      'name'  => 'Poll upgrade path',
+      'description'  => 'Poll upgrade path tests.',
+      'group' => 'Upgrade path',
+    );
+  }
+
+  public function setUp() {
+    // Path to the database dump.
+    $this->databaseDumpFiles = array(
+      drupal_get_path('module', 'simpletest') . '/tests/upgrade/drupal-6.filled.database.php',
+    );
+    parent::setUp();
+
+    $this->uninstallModulesExcept(array('poll'));
+  }
+
+  /**
+   * Test a successful upgrade.
+   */
+  public function testPollUpgrade() {
+    $this->assertTrue($this->performUpgrade(), t('The upgrade was completed successfully.'));
+
+    // Check modules page for poll
+    $this->drupalGet('admin/modules');
+
+    // Verify that the poll data is still correctly available
+    for ($i = 0; $i < 12; $i++) {
+      $this->drupalGet("content/poll/$i");
+
+      $nbchoices = ($i % 4) + 2;
+
+      for ($c = 0; $c < $nbchoices; $c++) {
+        $this->assertText("Choice $c for poll $i", t('Choice text is displayed correctly on poll view'));
+      }
+
+      // Now check that the votes are correct
+      $this->clickLink(t('Results'));
+
+      for ($c = 0; $c < $nbchoices; $c++) {
+        $this->assertText("Choice $c for poll $i", t('Choice text is displayed correctly on result view'));
+      }
+
+      $nbvotes = floor (($i % 4) + 5);
+      $elements = $this->xpath("//div[@class='percent']");
+      for ($c = 0; $c < $nbchoices; $c++) {
+        $votes = floor($nbvotes / $nbchoices);
+        if (($nbvotes % $nbchoices) > $c) $votes++;
+        $this->assertTrue(preg_match("/$votes vote/", $elements[$c]), t('The number of votes is displayed correctly: expected ' . $votes . ', got ' . $elements[$c]));
+      }
+    }
+  }
+}
diff --git a/modules/simpletest/tests/upgrade/upgrade.poll.test b/modules/simpletest/tests/upgrade/upgrade.poll.test
new file mode 100644
index 0000000..9bbbf90
--- /dev/null
+++ b/modules/simpletest/tests/upgrade/upgrade.poll.test
@@ -0,0 +1,66 @@
+<?php
+
+/**
+ * Upgrade test for poll.module.
+ *
+ * Load a bare installation of Drupal 6 and run the upgrade process on it.
+ *
+ * The install only contains dblog (although it's optional, it's only so that
+ * another hook_watchdog module can take its place, the site is not functional
+ * without watchdog) and update.
+ */
+class PollUpgradePathTestCase extends UpgradePathTestCase {
+  public static function getInfo() {
+    return array(
+      'name'  => 'Poll upgrade path',
+      'description'  => 'Poll upgrade path tests.',
+      'group' => 'Upgrade path',
+    );
+  }
+
+  public function setUp() {
+    // Path to the database dump files.
+    $this->databaseDumpFiles = array(
+      drupal_get_path('module', 'simpletest') . '/tests/upgrade/drupal-6.filled.database.php',
+    );
+    parent::setUp();
+
+    $this->uninstallModulesExcept(array('poll'));
+  }
+
+  /**
+   * Test a successful upgrade.
+   */
+  public function testPollUpgrade() {
+    $this->assertTrue($this->performUpgrade(), t('The upgrade was completed successfully.'));
+
+    // Check modules page for poll
+    $this->drupalGet('admin/modules');
+
+    // Verify that the poll data is still correctly available
+    for ($i = 0; $i < 12; $i++) {
+      $this->drupalGet("content/poll/$i");
+
+      $nbchoices = ($i % 4) + 2;
+
+      for ($c = 0; $c < $nbchoices; $c++) {
+        $this->assertText("Choice $c for poll $i", t('Choice text is displayed correctly on poll view'));
+      }
+
+      // Now check that the votes are correct
+      $this->clickLink(t('Results'));
+
+      for ($c = 0; $c < $nbchoices; $c++) {
+        $this->assertText("Choice $c for poll $i", t('Choice text is displayed correctly on result view'));
+      }
+
+      $nbvotes = floor (($i % 4) + 5);
+      $elements = $this->xpath("//div[@class='percent']");
+      for ($c = 0; $c < $nbchoices; $c++) {
+        $votes = floor($nbvotes / $nbchoices);
+        if (($nbvotes % $nbchoices) > $c) $votes++;
+        $this->assertTrue(preg_match("/$votes vote/", $elements[$c]), t('The number of votes is displayed correctly: expected ' . $votes . ', got ' . $elements[$c]));
+      }
+    }
+  }
+}
diff --git a/modules/simpletest/tests/upgrade/upgrade.taxonomy.test b/modules/simpletest/tests/upgrade/upgrade.taxonomy.test
new file mode 100644
index 0000000..dadb98e
--- /dev/null
+++ b/modules/simpletest/tests/upgrade/upgrade.taxonomy.test
@@ -0,0 +1,190 @@
+<?php
+
+/**
+ * Test taxonomy upgrades.
+ */
+class UpgradePathTaxonomyTestCase extends UpgradePathTestCase {
+  public static function getInfo() {
+    return array(
+      'name'  => 'Taxonomy upgrade path',
+      'description'  => 'Taxonomy upgrade path tests.',
+      'group' => 'Upgrade path',
+    );
+  }
+
+  public function setUp() {
+    // Path to the database dump.
+    $this->databaseDumpFiles = array(
+     drupal_get_path('module', 'simpletest') . '/tests/upgrade/drupal-6.filled.database.php',
+    );
+    parent::setUp();
+  }
+
+  /**
+   * Retrieve an array mapping allowed vocabulary id to field name for
+   * all taxonomy_term_reference fields for which an instance exists
+   * for the specified entity type and bundle.
+   */
+  function instanceVocabularies($entity_type, $bundle) {
+    $instances = array();
+    foreach (field_info_instances($entity_type, $bundle) as $instance) {
+      $field = field_info_field($instance['field_name']);
+      if ($field['type'] == 'taxonomy_term_reference') {
+        foreach ($field['settings']['allowed_values'] as $tree) {
+          // Prefer valid taxonomy term reference fields for a given vocabulary
+          // when they exist.
+          if (empty($instances[$tree['vocabulary']]) || $instances[$tree['vocabulary']] == 'taxonomyextra') {
+            $instances[$tree['vocabulary']] = $field['field_name'];
+          }
+        }
+      }
+    }
+    return $instances;
+  }
+
+  /**
+   * Basic tests for the taxonomy upgrade.
+   */
+  public function testTaxonomyUpgrade() {
+    $this->assertTrue($this->performUpgrade(), t('The upgrade was completed successfully.'));
+
+    // Visit the front page to assert for PHP warning and errors.
+    $this->drupalGet('');
+
+    // Check that taxonomy_vocabulary_node_type and taxonomy_term_node have been
+    // removed.
+    $this->assertFalse(db_table_exists('taxonomy_vocabulary_node_type'), t('taxonomy_vocabulary_node_type has been removed.'));
+    $this->assertFalse(db_table_exists('taxonomy_term_node'), t('taxonomy_term_node has been removed.'));
+
+    // Check that the node type 'page' has been associated to a taxonomy
+    // reference field for each vocabulary.
+    $voc_keys = array();
+    foreach (taxonomy_get_vocabularies() as $vocab) {
+      $voc_keys[] = $vocab->machine_name;
+    }
+    $instances = $this->instanceVocabularies('node', 'page');
+    $inst_keys = array_keys($instances);
+    sort($voc_keys);
+    sort($inst_keys);
+    $this->assertEqual($voc_keys, $inst_keys, t('Node type page has instances for every vocabulary.'));
+
+    // Node type 'story' was not explicitly in $vocabulary->nodes but
+    // each node of type 'story' was associated to one or more terms.
+    // Check that the node type 'story' has been associated only to
+    // the taxonomyextra field.
+    $instances = $this->instanceVocabularies('node', 'story');
+    $field_names = array_flip($instances);
+    $this->assertEqual(count($field_names), 1, t('Only one taxonomy term field instance exists for story nodes'));
+    $this->assertEqual(key($field_names), 'taxonomyextra', t('Only the excess taxonomy term field is used on story nodes'));
+
+    // Check that the node type 'poll' has been associated to no taxonomy
+    // reference field.
+    $instances = $this->instanceVocabularies('node', 'poll');
+    $this->assertTrue(empty($instances), t('Node type poll has no taxonomy term reference field instances.'));
+
+    // Check that each node of type 'page' and 'story' is associated to all the
+    // terms except terms whose ID is equal to the node ID or is equal to the
+    // node ID subtracted from 49.
+    $nodes = node_load_multiple(array(), array('type' => 'page'));
+    $nodes += node_load_multiple(array(), array('type' => 'story'));
+    $terms = db_select('taxonomy_term_data', 'td')
+      ->fields('td')
+      ->orderBy('vid')
+      ->orderBy('tid')
+      ->execute()
+      ->fetchAllAssoc('tid');
+    field_attach_prepare_view('node', $nodes, 'full');
+    foreach ($nodes as $nid => $node) {
+      $node->content = field_attach_view('node', $node, 'full');
+      $render = drupal_render($node->content);
+      $this->drupalSetContent($render);
+      $this->verbose($render);
+
+      $vocabulary_seen = array();
+      foreach ($terms as $tid => $term) {
+        // In our test database, each node is arbitrary associated with all
+        // terms except two: one whose tid is ($nid) and one whose tid is
+        // (49 - $nid).
+        $should_be_displayed = ($tid != $nid) && ($tid + $nid != 49);
+
+        // Only vocabularies 13 to 24 are properly associated with the node
+        // type 'page'. All other node types are not associated with any
+        // vocabulary, but still are associated with terms. Those terms
+        // will be moved to the taxonomy extra field.
+        if ($node->type == 'page' && $term->vid >= 13 && $term->vid <= 24) {
+          $vocabulary = taxonomy_vocabulary_load($term->vid);
+          $field_class = 'field-name-' . strtr('taxonomy_' . $vocabulary->machine_name, '_', '-');;
+        }
+        else {
+          $field_class = 'field-name-taxonomyextra';
+        }
+
+        // Odd vocabularies are single, so any additional term will be moved
+        // to the taxonomy extra field.
+        if ($should_be_displayed) {
+          if ($term->vid % 2 == 1 && !empty($vocabulary_seen[$term->vid])) {
+            $field_class = 'field-name-taxonomyextra';
+          }
+          $vocabulary_seen[$term->vid] = TRUE;
+        }
+
+        $args = array(
+          '%name' => $term->name,
+          '@field' => $field_class,
+          '%nid' => $nid,
+        );
+
+        // Use link rather than term name because migrated term names can be
+        // substrings of other term names. e.g. "term 1 of vocabulary 2" is
+        // found when "term 1 of vocabulary 20" is output.
+        $term_path = url('taxonomy/term/' . $term->tid);
+        if (!$should_be_displayed) {
+          // Look for any link with the term path.
+          $links = $this->xpath('//a[@href=:term_path]', array(':term_path' => $term_path));
+          $this->assertFalse($links, t('Term %name (@field) is not displayed on node %nid', $args));
+        }
+        else {
+          // Look for a link with the term path inside the correct field.
+          // We search for "SPACE + class + SPACE" to avoid matching a substring
+          // of the class.
+          $links = $this->xpath('//div[contains(concat(" ", normalize-space(@class), " "), :field_class)]//a[@href=:term_path]', array(':field_class' => ' ' . $field_class . ' ', ':term_path' => $term_path));
+          $this->assertTrue($links, t('Term %name (@field) is displayed on node %nid', $args));
+        }
+      }
+
+      // nid 1, revision 1 had a bogus record in {term_node} pointing to term
+      // ID 0. Make sure we ignored this instead of generating a bogus term.
+      if ($node->nid == 1) {
+        $link = l($term->name, 'taxonomy/term/0');
+        $this->assertNoRaw($link, t('Bogus term (tid 0) is not displayed on node 1 vid %old_vid.', $args));
+      }
+
+      // The first 12 nodes have two revisions. For nodes with
+      // revisions, check that the oldest revision is associated only
+      // to terms whose ID is equal to the node ID or 49 less the node ID.
+      $revisions = node_revision_list($node);
+      if ($node->nid < 13) {
+        $this->assertEqual(count($revisions), 2, t('Node %nid has two revisions.', $args));
+        $last_rev = end($revisions);
+        $args['%old_vid'] = $last_rev->vid;
+
+        $node_old = node_load($node->nid, $last_rev->vid);
+        field_attach_prepare_view('node', array($node_old->nid => $node_old), 'full');
+        $node_old->content = field_attach_view('node', $node_old, 'full');
+        $render = drupal_render($node_old->content);
+        $this->drupalSetContent($render);
+        $this->verbose($render);
+
+        $term = $terms[$node->nid];
+        $link = l($term->name, 'taxonomy/term/' . $term->tid);
+        $this->assertRaw($link, t('Term %name (@field) is displayed on node %nid vid %old_vid.', $args));
+        $term = $terms[49-$node->nid];
+        $link = l($term->name, 'taxonomy/term/' . $term->tid);
+        $this->assertRaw($link, t('Term %name (@field) is displayed on node %nid %old_vid.', $args));
+      }
+      else {
+        $this->assertEqual(count($revisions), 1, t('Node %nid has one revision.', $args));
+      }
+    }
+  }
+}
diff --git a/modules/simpletest/tests/upgrade/upgrade.test b/modules/simpletest/tests/upgrade/upgrade.test
index 1ef8525..8a3da81 100644
--- a/modules/simpletest/tests/upgrade/upgrade.test
+++ b/modules/simpletest/tests/upgrade/upgrade.test
@@ -317,3 +317,90 @@ abstract class UpgradePathTestCase extends DrupalWebTestCase {
   }
 
 }
+
+/**
+ * Perform basic upgrade tests.
+ *
+ * Load a bare installation of Drupal 6 and run the upgrade process on it.
+ *
+ * The install only contains dblog (although it's optional, it's only so that
+ * another hook_watchdog module can take its place, the site is not functional
+ * without watchdog) and update.
+ */
+class BasicUpgradePath extends UpgradePathTestCase {
+  public static function getInfo() {
+    return array(
+      'name'  => 'Basic upgrade path',
+      'description'  => 'Basic upgrade path tests.',
+      'group' => 'Upgrade path',
+    );
+  }
+
+  public function setUp() {
+    // Path to the database dump files.
+    $this->databaseDumpFiles = array(
+      drupal_get_path('module', 'simpletest') . '/tests/upgrade/drupal-6.bare.database.php',
+    );
+    parent::setUp();
+  }
+
+  /**
+   * Test a failed upgrade, and verify that the failure is reported.
+   */
+  public function testFailedUpgrade() {
+    // Destroy a table that the upgrade process needs.
+    db_drop_table('access');
+    // Assert that the upgrade fails.
+    $this->assertFalse($this->performUpgrade(FALSE), t('A failed upgrade should return messages.'));
+  }
+
+  /**
+   * Test a successful upgrade.
+   */
+  public function testBasicUpgrade() {
+    $this->assertTrue($this->performUpgrade(), t('The upgrade was completed successfully.'));
+
+    // Hit the frontpage.
+    $this->drupalGet('');
+    $this->assertResponse(200);
+
+    // Verify that we are still logged in.
+    $this->drupalGet('user');
+    $this->clickLink(t('Edit'));
+    $this->assertEqual($this->getUrl(), url('user/1/edit', array('absolute' => TRUE)), t('We are still logged in as admin at the end of the upgrade.'));
+
+    // Logout and verify that we can login back in with our initial password.
+    $this->drupalLogout();
+    $this->drupalLogin((object) array(
+      'uid' => 1,
+      'name' => 'admin',
+      'pass_raw' => 'admin',
+    ));
+
+    // The previous login should've triggered a password rehash, so login one
+    // more time to make sure the new hash is readable.
+    $this->drupalLogout();
+    $this->drupalLogin((object) array(
+      'uid' => 1,
+      'name' => 'admin',
+      'pass_raw' => 'admin',
+    ));
+
+    // Test that the site name is correctly displayed.
+    $this->assertText('Drupal 6', t('The site name is correctly displayed.'));
+
+    // Verify that the main admin sections are available.
+    $this->drupalGet('admin');
+    $this->assertText(t('Content'));
+    $this->assertText(t('Appearance'));
+    $this->assertText(t('People'));
+    $this->assertText(t('Configuration'));
+    $this->assertText(t('Reports'));
+    $this->assertText(t('Structure'));
+    $this->assertText(t('Modules'));
+
+    // Confirm that no {menu_links} entry exists for user/autocomplete.
+    $result = db_query('SELECT COUNT(*) FROM {menu_links} WHERE link_path = :user_autocomplete', array(':user_autocomplete' => 'user/autocomplete'))->fetchField();
+    $this->assertFalse($result, t('No {menu_links} entry exists for user/autocomplete'));
+  }
+}
diff --git a/modules/simpletest/tests/upgrade/upgrade.upload.test b/modules/simpletest/tests/upgrade/upgrade.upload.test
new file mode 100644
index 0000000..e3e1dc2
--- /dev/null
+++ b/modules/simpletest/tests/upgrade/upgrade.upload.test
@@ -0,0 +1,77 @@
+<?php
+
+/**
+ * Upgrade test for comment.module.
+ */
+class UploadUpgradePathTestCase extends UpgradePathTestCase {
+  public static function getInfo() {
+    return array(
+      'name'  => 'Upload upgrade path',
+      'description'  => 'Upload upgrade path tests.',
+      'group' => 'Upgrade path',
+    );
+  }
+
+  public function setUp() {
+    // Path to the database dump files.
+    $this->databaseDumpFiles = array(
+      drupal_get_path('module', 'simpletest') . '/tests/upgrade/drupal-6.filled.database.php',
+      drupal_get_path('module', 'simpletest') . '/tests/upgrade/drupal-6.upload.database.php',
+    );
+    parent::setUp();
+    // Set a small batch size to test multiple iterations of the batch.
+    $this->variable_set('upload_update_batch_size', 2);
+
+    $this->uninstallModulesExcept(array('upload'));
+  }
+
+  /**
+   * Test a successful upgrade.
+   */
+  public function testUploadUpgrade() {
+    $this->assertTrue($this->performUpgrade(), t('The upgrade was completed successfully.'));
+    $query = new EntityFieldQuery();
+    $query->entityCondition('entity_type', 'node');
+    $query->entityCondition('bundle', 'page');
+    $query->age(FIELD_LOAD_REVISION);
+    $query->fieldCondition('upload');
+    $entities = $query->execute();
+    $revisions = $entities['node'];
+    // Node revision 50 should not have uploaded files, as the entry in {files}
+    // is corrupted.
+    $this->assertFalse((isset($revisions[50])), 'Nodes with missing files do not contain filefield data.');
+    // Node revisions 51-53 should have uploaded files.
+    $this->assertTrue((isset($revisions[51]) && isset($revisions[52]) && isset($revisions[53])), 'Nodes with uploaded files now contain filefield data.');
+    // The test database lists uploaded filenames in the body of each node with
+    // uploaded files attached. Make sure all files are there in the same order.
+    foreach ($revisions as $vid => $revision) {
+      $node = node_load($revision->nid, $vid);
+
+      // Assemble a list of the filenames as recorded in the node body before
+      // the upgrade.
+      $recorded_filenames = preg_split('/\s+/', $node->body[LANGUAGE_NONE][0]['value']);
+      // The first line of the node body should be "Attachments:"
+      if (strstr($recorded_filenames[0], "Attachments:")) {
+        unset($recorded_filenames[0]);
+      }
+      $recorded_filenames = array_values($recorded_filenames);
+
+      $files = $node->upload[LANGUAGE_NONE];
+      // Assemble a list of the filenames as they exist after the upgrade.
+      $filenames = array();
+      foreach ($files as $file) {
+        $filenames[] = $file['filename'];
+      }
+      $this->assertIdentical($filenames, $recorded_filenames, 'The uploaded files are present in the same order after the upgrade.');
+    }
+    // Make sure the file settings were properly migrated.
+    $d6_file_directory_temp = '/drupal-6/file/directory/temp';
+    $d6_file_directory_path = '/drupal-6/file/directory/path';
+    $d6_file_downloads = 2; // FILE_DOWNLOADS_PRIVATE
+
+    $this->assertNull(variable_get('file_directory_temp', NULL), "The 'file_directory_temp' variable was properly removed.");
+    $this->assertEqual(variable_get('file_temporary_path', 'drupal-7-bogus'), $d6_file_directory_temp, "The 'file_temporary_path' setting was properly migrated.");
+    $this->assertEqual(variable_get('file_default_scheme', 'drupal-7-bogus'), 'private', "The 'file_default_scheme' setting was properly migrated.");
+    $this->assertEqual(variable_get('file_private_path', 'drupal-7-bogus'), $d6_file_directory_path, "The 'file_private_path' setting was properly migrated.");
+  }
+}
diff --git a/modules/simpletest/tests/upgrade/upgrade.user.test b/modules/simpletest/tests/upgrade/upgrade.user.test
new file mode 100644
index 0000000..6c66921
--- /dev/null
+++ b/modules/simpletest/tests/upgrade/upgrade.user.test
@@ -0,0 +1,60 @@
+<?php
+/**
+ * Upgrade test for user.module (password token involved).
+ */
+class UserUpgradePathPasswordTokenTestCase extends UpgradePathTestCase {
+  public static function getInfo() {
+    return array(
+      'name'  => 'User upgrade path (password token involved)',
+      'description'  => 'User upgrade path tests (password token involved).',
+      'group' => 'Upgrade path',
+    );
+  }
+
+  public function setUp() {
+    // Path to the database dump files.
+    $this->databaseDumpFiles = array(
+      drupal_get_path('module', 'simpletest') . '/tests/upgrade/drupal-6.bare.database.php',
+      drupal_get_path('module', 'simpletest') . '/tests/upgrade/drupal-6.user-password-token.database.php',
+    );
+    parent::setUp();
+  }
+
+  /**
+   * Test a successful upgrade.
+   */
+  public function testUserUpgrade() {
+    $this->assertTrue($this->performUpgrade(), 'The upgrade was completed successfully.');
+    $this->assertEqual(variable_get('user_mail_register_no_approval_required_body'), ', [user:name], [site:name], [site:url], [site:url-brief], [user:mail], [date:medium], [site:login-url], [user:edit-url], [user:one-time-login-url].', 'Existing email templates have been modified (password token involved).');
+  }
+}
+
+/**
+ * Upgrade test for user.module (password token not involved).
+ */
+class UserUpgradePathNoPasswordTokenTestCase extends UpgradePathTestCase {
+  public static function getInfo() {
+    return array(
+      'name'  => 'User upgrade path (password token not involved)',
+      'description'  => 'User upgrade path tests (password token not involved).',
+      'group' => 'Upgrade path',
+    );
+  }
+
+  public function setUp() {
+    // Path to the database dump files.
+    $this->databaseDumpFiles = array(
+      drupal_get_path('module', 'simpletest') . '/tests/upgrade/drupal-6.bare.database.php',
+      drupal_get_path('module', 'simpletest') . '/tests/upgrade/drupal-6.user-no-password-token.database.php',
+    );
+    parent::setUp();
+  }
+
+  /**
+   * Test a successful upgrade.
+   */
+  public function testUserUpgrade() {
+    $this->assertTrue($this->performUpgrade(), 'The upgrade was completed successfully.');
+    $this->assertEqual(variable_get('user_mail_register_no_approval_required_body'), '[user:name], [site:name], [site:url], [site:url-brief], [user:mail], [date:medium], [site:login-url], [user:edit-url], [user:one-time-login-url].', 'Existing email templates have been modified (password token not involved).');
+  }
+}
diff --git a/modules/simpletest/tests/url_alter_test.info b/modules/simpletest/tests/url_alter_test.info
index 1947b2e..a8e9474 100644
--- a/modules/simpletest/tests/url_alter_test.info
+++ b/modules/simpletest/tests/url_alter_test.info
@@ -1,6 +1,6 @@
 name = Url_alter tests
 description = A support modules for url_alter hook testing.
-core = 8.x
+core = 7.x
 package = Testing
 version = VERSION
 hidden = TRUE
diff --git a/modules/simpletest/tests/xmlrpc_test.info b/modules/simpletest/tests/xmlrpc_test.info
index 6985439..bddfc95 100644
--- a/modules/simpletest/tests/xmlrpc_test.info
+++ b/modules/simpletest/tests/xmlrpc_test.info
@@ -2,5 +2,5 @@ name = "XML-RPC Test"
 description = "Support module for XML-RPC tests according to the validator1 specification."
 package = Testing
 version = VERSION
-core = 8.x
+core = 7.x
 hidden = TRUE
diff --git a/modules/statistics/statistics.info b/modules/statistics/statistics.info
index e7add60..d3d1f54 100644
--- a/modules/statistics/statistics.info
+++ b/modules/statistics/statistics.info
@@ -2,6 +2,6 @@ name = Statistics
 description = Logs access statistics for your site.
 package = Core
 version = VERSION
-core = 8.x
+core = 7.x
 files[] = statistics.test
 configure = admin/config/system/statistics
diff --git a/modules/statistics/statistics.install b/modules/statistics/statistics.install
index a5dc7f8..d5855a7 100644
--- a/modules/statistics/statistics.install
+++ b/modules/statistics/statistics.install
@@ -134,3 +134,25 @@ function statistics_schema() {
 
   return $schema;
 }
+
+/**
+ * @addtogroup updates-6.x-to-7.x
+ * @{
+ */
+
+/**
+ * Update the {accesslog}.sid column to match the length of {sessions}.sid
+ */
+function statistics_update_7000() {
+  db_change_field('accesslog', 'sid', 'sid', array(
+    'type' => 'varchar',
+    'length' => 128,
+    'not null' => TRUE,
+    'default' => '',
+    'description' => 'Browser session ID of user that visited page.',
+  ));
+}
+
+/**
+ * @} End of "addtogroup updates-6.x-to-7.x"
+ */
diff --git a/modules/syslog/syslog.info b/modules/syslog/syslog.info
index 4024bfd..e0ef55c 100644
--- a/modules/syslog/syslog.info
+++ b/modules/syslog/syslog.info
@@ -2,5 +2,5 @@ name = Syslog
 description = Logs and records system events to syslog.
 package = Core
 version = VERSION
-core = 8.x
+core = 7.x
 files[] = syslog.test
diff --git a/modules/system/system.admin.inc b/modules/system/system.admin.inc
index 92c534e..9e7d69d 100644
--- a/modules/system/system.admin.inc
+++ b/modules/system/system.admin.inc
@@ -349,6 +349,14 @@ function system_theme_default() {
       }
       // Set the default theme.
       variable_set('theme_default', $theme);
+
+      // Rebuild the menu. This duplicates the menu_rebuild() in theme_enable().
+      // However, modules must know the current default theme in order to use
+      // this information in hook_menu() or hook_menu_alter() implementations,
+      // and doing the variable_set() before the theme_enable() could result
+      // in a race condition where the theme is default but not enabled.
+      menu_rebuild();
+
       // The status message depends on whether an admin theme is currently in use:
       // a value of 0 means the admin theme is set to be the default theme.
       $admin_theme = variable_get('admin_theme', 0);
diff --git a/modules/system/system.api.php b/modules/system/system.api.php
index d5beb19..ece18ac 100644
--- a/modules/system/system.api.php
+++ b/modules/system/system.api.php
@@ -87,16 +87,16 @@ function hook_hook_info_alter(&$hooks) {
  *   - uri callback: A function taking an entity as argument and returning the
  *     uri elements of the entity, e.g. 'path' and 'options'. The actual entity
  *     uri can be constructed by passing these elements to url().
- *   - label callback: (optional) A function taking an entity as argument and
- *     returning the label of the entity. The entity label is the main string
- *     associated with an entity; for example, the title of a node or the
- *     subject of a comment. If there is an entity object property that defines
- *     the label, use the 'label' element of the 'entity keys' return
- *     value component to provide this information (see below). If more complex
- *     logic is needed to determine the label of an entity, you can instead
- *     specify a callback function here, which will be called to determine the
- *     entity label. See also the entity_label() function, which implements this
- *     logic.
+ *   - label callback: (optional) A function taking an entity and an entity type
+ *     as arguments and returning the label of the entity. The entity label is
+ *     the main string associated with an entity; for example, the title of a
+ *     node or the subject of a comment. If there is an entity object property
+ *     that defines the label, use the 'label' element of the 'entity keys'
+ *     return value component to provide this information (see below). If more
+ *     complex logic is needed to determine the label of an entity, you can
+ *     instead specify a callback function here, which will be called to
+ *     determine the entity label. See also the entity_label() function, which
+ *     implements this logic.
  *   - fieldable: Set to TRUE if you want your entity type to accept fields
  *     being attached to it.
  *   - translation: An associative array of modules registered as field
@@ -502,8 +502,10 @@ function hook_admin_paths_alter(&$paths) {
  *   The entities keyed by entity ID.
  * @param $type
  *   The type of entities being loaded (i.e. node, user, comment).
+ * @param $langcode
+ *   The language to display the entity in.
  */
-function hook_entity_prepare_view($entities, $type) {
+function hook_entity_prepare_view($entities, $type, $langcode) {
   // Load a specific node into the user object for later theming.
   if ($type == 'user') {
     $nodes = mymodule_get_user_nodes(array_keys($entities));
@@ -651,7 +653,7 @@ function hook_element_info() {
  * A module may implement this hook in order to alter the element type defaults
  * defined by a module.
  *
- * @param &$type
+ * @param $type
  *   All element type defaults as collected by hook_element_info().
  *
  * @see hook_element_info()
@@ -1840,7 +1842,7 @@ function hook_mail_alter(&$message) {
  * hook in order to reorder the implementing modules, which are otherwise
  * ordered by the module's system weight.
  *
- * @param &$implementations
+ * @param $implementations
  *   An array keyed by the module's name. The value of each item corresponds
  *   to a $group, which is usually FALSE, unless the implementation is in a
  *   file named $module.$group.inc.
@@ -1867,7 +1869,7 @@ function hook_module_implements_alter(&$implementations, $hook) {
  * add to or alter the data generated by reading the .info file with
  * drupal_parse_info_file().
  *
- * @param &$info
+ * @param $info
  *   The .info file contents, passed by reference so that it can be altered.
  * @param $file
  *   Full information about the module or theme, including $file->name, and
@@ -2367,7 +2369,7 @@ function hook_flush_caches() {
  * enable hooks are invoked.
  *
  * @param $modules
- *   An array of the installed modules.
+ *   An array of the modules that were installed.
  *
  * @see module_enable()
  * @see hook_modules_enabled()
@@ -2389,7 +2391,7 @@ function hook_modules_installed($modules) {
  * invoked.
  *
  * @param $modules
- *   An array of the enabled modules.
+ *   An array of the modules that were enabled.
  *
  * @see hook_enable()
  * @see hook_modules_installed()
@@ -2410,7 +2412,7 @@ function hook_modules_enabled($modules) {
  * is only called on the module actually being disabled.
  *
  * @param $modules
- *   An array of the disabled modules.
+ *   An array of the modules that were disabled.
  *
  * @see hook_disable()
  * @see hook_modules_uninstalled()
@@ -2432,7 +2434,7 @@ function hook_modules_disabled($modules) {
  * data that may have been set by other modules.
  *
  * @param $modules
- *   An array of the uninstalled modules.
+ *   An array of the modules that were uninstalled.
  *
  * @see hook_uninstall()
  * @see hook_modules_disabled()
@@ -2761,9 +2763,10 @@ function hook_file_url_alter(&$uri) {
 /**
  * Check installation requirements and do status reporting.
  *
- * This hook has two closely related uses, determined by the $phase argument:
- * checking installation requirements ($phase == 'install')
- * and status reporting ($phase == 'runtime').
+ * This hook has three closely related uses, determined by the $phase argument:
+ * - Checking installation requirements ($phase == 'install').
+ * - Checking update requirements ($phase == 'update').
+ * - Status reporting ($phase == 'runtime').
  *
  * Note that this hook, like all others dealing with installation and updates,
  * must reside in a module_name.install file, or it will not properly abort
@@ -3206,21 +3209,21 @@ function hook_update_N(&$sandbox) {
  * @see hook_update_N()
  */
 function hook_update_dependencies() {
-  // Indicate that the mymodule_update_8000() function provided by this module
-  // must run after the another_module_update_8002() function provided by the
+  // Indicate that the mymodule_update_7000() function provided by this module
+  // must run after the another_module_update_7002() function provided by the
   // 'another_module' module.
-  $dependencies['mymodule'][8000] = array(
-    'another_module' => 8002,
+  $dependencies['mymodule'][7000] = array(
+    'another_module' => 7002,
   );
-  // Indicate that the mymodule_update_8001() function provided by this module
-  // must run before the yet_another_module_update_8004() function provided by
+  // Indicate that the mymodule_update_7001() function provided by this module
+  // must run before the yet_another_module_update_7004() function provided by
   // the 'yet_another_module' module. (Note that declaring dependencies in this
   // direction should be done only in rare situations, since it can lead to the
   // following problem: If a site has already run the yet_another_module
   // module's database updates before it updates its codebase to pick up the
   // newest mymodule code, then the dependency declared here will be ignored.)
-  $dependencies['yet_another_module'][8004] = array(
-    'mymodule' => 8001,
+  $dependencies['yet_another_module'][7004] = array(
+    'mymodule' => 7001,
   );
   return $dependencies;
 }
@@ -3516,11 +3519,11 @@ function hook_install_tasks() {
 /**
  * Change the page the user is sent to by drupal_goto().
  *
- * @param &$path
+ * @param $path
  *   A Drupal path or a full URL.
- * @param &$options
+ * @param $options
  *   An associative array of additional URL options to pass to url().
- * @param &$http_response_code
+ * @param $http_response_code
  *   The HTTP status code to use for the redirection. See drupal_goto() for more
  *   information.
  */
@@ -3921,7 +3924,11 @@ function hook_system_themes_page_alter(&$theme_groups) {
   foreach ($theme_groups as $state => &$group) {
     foreach ($theme_groups[$state] as &$theme) {
       // Add a foo link to each list of theme operations.
-      $theme->operations[] = l(t('Foo'), 'admin/appearance/foo', array('query' => array('theme' => $theme->name)));
+      $theme->operations[] = array(
+        'title' => t('Foo'),
+        'href' => 'admin/appearance/foo',
+        'query' => array('theme' => $theme->name)
+      );
     }
   }
 }
@@ -3989,7 +3996,7 @@ function hook_url_outbound_alter(&$path, &$options, $original_path) {
  * displayed. Can be used to ensure user privacy in situations where
  * $account->name is too revealing.
  *
- * @param &$name
+ * @param $name
  *   The string that format_username() will return.
  *
  * @param $account
diff --git a/modules/system/system.info b/modules/system/system.info
index c394849..28abf66 100644
--- a/modules/system/system.info
+++ b/modules/system/system.info
@@ -2,7 +2,7 @@ name = System
 description = Handles general site configuration for administrators.
 package = Core
 version = VERSION
-core = 8.x
+core = 7.x
 files[] = system.archiver.inc
 files[] = system.mail.inc
 files[] = system.queue.inc
diff --git a/modules/system/system.install b/modules/system/system.install
index 11967e4..e067444 100644
--- a/modules/system/system.install
+++ b/modules/system/system.install
@@ -1527,7 +1527,7 @@ function system_schema() {
         'default' => '',
       ),
       'type' => array(
-        'description' => 'The type of the item, either module, theme, theme_engine, or profile.',
+        'description' => 'The type of the item, either module, theme, or theme_engine.',
         'type' => 'varchar',
         'length' => 12,
         'not null' => TRUE,
@@ -1619,26 +1619,1353 @@ function system_schema() {
   return $schema;
 }
 
+/**
+ * The cache schema corresponding to system_update_7054.
+ *
+ * Drupal 7 adds several new cache tables. Since they all have identical schema
+ * this helper function allows them to re-use the same definition, without
+ * relying on system_schema(), which may change with future updates.
+ */
+function system_schema_cache_7054() {
+  return array(
+    'description' => 'Generic cache table for caching things not separated out into their own tables. Contributed modules may also use this to store cached items.',
+    'fields' => array(
+      'cid' => array(
+        'description' => 'Primary Key: Unique cache ID.',
+        'type' => 'varchar',
+        'length' => 255,
+        'not null' => TRUE,
+        'default' => '',
+      ),
+      'data' => array(
+        'description' => 'A collection of data to cache.',
+        'type' => 'blob',
+        'not null' => FALSE,
+        'size' => 'big',
+      ),
+      'expire' => array(
+        'description' => 'A Unix timestamp indicating when the cache entry should expire, or 0 for never.',
+        'type' => 'int',
+        'not null' => TRUE,
+        'default' => 0,
+      ),
+      'created' => array(
+        'description' => 'A Unix timestamp indicating when the cache entry was created.',
+        'type' => 'int',
+        'not null' => TRUE,
+        'default' => 0,
+      ),
+      'serialized' => array(
+        'description' => 'A flag to indicate whether content is serialized (1) or not (0).',
+        'type' => 'int',
+        'size' => 'small',
+        'not null' => TRUE,
+        'default' => 0,
+      ),
+    ),
+    'indexes' => array(
+      'expire' => array('expire'),
+    ),
+    'primary key' => array('cid'),
+  );
+}
+
+
 // Updates for core.
 
 function system_update_last_removed() {
-  return 7069;
+  return 6055;
 }
 
 /**
- * @defgroup updates-7.x-to-8.x Updates from 7.x to 8.x
+ * Implements hook_update_dependencies().
+ */
+function system_update_dependencies() {
+  // Update 7053 adds new blocks, so make sure the block tables are updated.
+  $dependencies['system'][7053] = array(
+    'block' => 7002,
+  );
+
+  return $dependencies;
+}
+
+/**
+ * @defgroup updates-6.x-to-7.x Updates from 6.x to 7.x
  * @{
- * Update functions from 7.x to 8.x.
+ * Update functions from 6.x to 7.x.
+ */
+
+/**
+ * Rename blog and forum permissions to be consistent with other content types.
+ */
+function system_update_7000() {
+  $result = db_query("SELECT rid, perm FROM {permission} ORDER BY rid");
+  foreach ($result as $role) {
+    $renamed_permission = preg_replace('/(?<=^|,\ )create\ blog\ entries(?=,|$)/', 'create blog content', $role->perm);
+    $renamed_permission = preg_replace('/(?<=^|,\ )edit\ own\ blog\ entries(?=,|$)/', 'edit own blog content', $role->perm);
+    $renamed_permission = preg_replace('/(?<=^|,\ )edit\ any\ blog\ entry(?=,|$)/', 'edit any blog content', $role->perm);
+    $renamed_permission = preg_replace('/(?<=^|,\ )delete\ own\ blog\ entries(?=,|$)/', 'delete own blog content', $role->perm);
+    $renamed_permission = preg_replace('/(?<=^|,\ )delete\ any\ blog\ entry(?=,|$)/', 'delete any blog content', $role->perm);
+
+    $renamed_permission = preg_replace('/(?<=^|,\ )create\ forum\ topics(?=,|$)/', 'create forum content', $role->perm);
+    $renamed_permission = preg_replace('/(?<=^|,\ )delete\ any\ forum\ topic(?=,|$)/', 'delete any forum content', $role->perm);
+    $renamed_permission = preg_replace('/(?<=^|,\ )delete\ own\ forum\ topics(?=,|$)/', 'delete own forum content', $role->perm);
+    $renamed_permission = preg_replace('/(?<=^|,\ )edit\ any\ forum\ topic(?=,|$)/', 'edit any forum content', $role->perm);
+    $renamed_permission = preg_replace('/(?<=^|,\ )edit\ own\ forum\ topics(?=,|$)/', 'edit own forum content', $role->perm);
+
+    if ($renamed_permission != $role->perm) {
+      db_update('permission')
+        ->fields(array('perm' => $renamed_permission))
+        ->condition('rid', $role->rid)
+        ->execute();
+    }
+  }
+}
+
+/**
+ * Generate a cron key and save it in the variables table.
+ */
+function system_update_7001() {
+  variable_set('cron_key', drupal_hash_base64(drupal_random_bytes(55)));
+}
+
+/**
+ * Add a table to store blocked IP addresses.
+ */
+function system_update_7002() {
+  $schema['blocked_ips'] = array(
+    'description' => 'Stores blocked IP addresses.',
+    'fields' => array(
+      'iid' => array(
+        'description' => 'Primary Key: unique ID for IP addresses.',
+        'type' => 'serial',
+        'unsigned' => TRUE,
+        'not null' => TRUE,
+      ),
+      'ip' => array(
+        'description' => 'IP address',
+        'type' => 'varchar',
+        'length' => 32,
+        'not null' => TRUE,
+        'default' => '',
+      ),
+    ),
+    'indexes' => array(
+      'blocked_ip' => array('ip'),
+    ),
+    'primary key' => array('iid'),
+  );
+
+  db_create_table('blocked_ips', $schema['blocked_ips']);
+}
+
+/**
+ * Update {blocked_ips} with valid IP addresses from {access}.
+ */
+function system_update_7003() {
+  $messages = array();
+  $type = 'host';
+  $result = db_query("SELECT mask FROM {access} WHERE status = :status AND type = :type", array(
+    ':status' => 0,
+    ':type' => $type,
+  ));
+  foreach ($result as $blocked) {
+    if (filter_var($blocked->mask, FILTER_VALIDATE_IP, FILTER_FLAG_NO_RES_RANGE) !== FALSE) {
+      db_insert('blocked_ips')
+        ->fields(array('ip' => $blocked->mask))
+        ->execute();
+    }
+    else {
+      $invalid_host = check_plain($blocked->mask);
+      $messages[] = t('The host !host is no longer blocked because it is not a valid IP address.', array('!host' => $invalid_host ));
+    }
+  }
+  if (isset($invalid_host)) {
+    drupal_set_message('Drupal no longer supports wildcard IP address blocking. Visitors whose IP addresses match ranges you have previously set using <em>access rules</em> will no longer be blocked from your site when you put the site online. See the <a href="http://drupal.org/node/24302">IP address and referrer blocking Handbook page</a> for alternative methods.', 'warning');
+  }
+  // Make sure not to block any IP addresses that were specifically allowed by access rules.
+  if (!empty($result)) {
+    $result = db_query("SELECT mask FROM {access} WHERE status = :status AND type = :type", array(
+      ':status' => 1,
+      ':type' => $type,
+    ));
+    $or = db_condition('or');
+    foreach ($result as $allowed) {
+      $or->condition('ip', $allowed->mask, 'LIKE');
+    }
+    if (count($or)) {
+      db_delete('blocked_ips')
+        ->condition($or)
+        ->execute();
+    }
+  }
+}
+
+/**
+ * Remove hardcoded numeric deltas from all blocks in core.
+ */
+function system_update_7004(&$sandbox) {
+  // Get an array of the renamed block deltas, organized by module.
+  $renamed_deltas = array(
+    'blog' => array('0' => 'recent'),
+    'book' => array('0' => 'navigation'),
+    'comment' => array('0' => 'recent'),
+    'forum' => array(
+      '0' => 'active',
+      '1' => 'new',
+    ),
+    'locale' => array('0' => LANGUAGE_TYPE_INTERFACE),
+    'node' => array('0' => 'syndicate'),
+    'poll' => array('0' => 'recent'),
+    'profile' => array('0' => 'author-information'),
+    'search' => array('0' => 'form'),
+    'statistics' => array('0' => 'popular'),
+    'system' => array('0' => 'powered-by'),
+    'user' => array(
+      '0' => 'login',
+      '1' => 'navigation',
+      '2' => 'new',
+      '3' => 'online',
+    ),
+  );
+
+  $moved_deltas = array(
+    'user' => array('navigation' => 'system'),
+  );
+
+  // Only run this the first time through the batch update.
+  if (!isset($sandbox['progress'])) {
+    // Rename forum module's block variables.
+    $forum_block_num_0 = variable_get('forum_block_num_0');
+    if (isset($forum_block_num_0)) {
+      variable_set('forum_block_num_active', $forum_block_num_0);
+      variable_del('forum_block_num_0');
+    }
+    $forum_block_num_1 = variable_get('forum_block_num_1');
+    if (isset($forum_block_num_1)) {
+      variable_set('forum_block_num_new', $forum_block_num_1);
+      variable_del('forum_block_num_1');
+    }
+  }
+
+  update_fix_d7_block_deltas($sandbox, $renamed_deltas, $moved_deltas);
+
+}
+
+/**
+ * Remove throttle columns and variables.
+ */
+function system_update_7005() {
+  db_drop_field('blocks', 'throttle');
+  db_drop_field('system', 'throttle');
+  variable_del('throttle_user');
+  variable_del('throttle_anonymous');
+  variable_del('throttle_level');
+  variable_del('throttle_probability_limiter');
+}
+
+/**
+ * Convert to new method of storing permissions.
+ *
+ * This update is in system.install rather than user.install so that
+ * all modules can use the updated permission scheme during their updates.
+ */
+function system_update_7007() {
+  // Copy the permissions from the old {permission} table to the new {role_permission} table.
+  $messages = array();
+  $result = db_query("SELECT rid, perm FROM {permission} ORDER BY rid ASC");
+  $query = db_insert('role_permission')->fields(array('rid', 'permission'));
+  foreach ($result as $role) {
+    foreach (explode(', ', $role->perm) as $perm) {
+      $query->values(array(
+        'rid' => $role->rid,
+        'permission' => $perm,
+      ));
+    }
+    $messages[] = t('Inserted into {role_permission} the permissions for role ID !id', array('!id' => $role->rid));
+  }
+  $query->execute();
+  db_drop_table('permission');
+
+  return implode(', ', $messages);
+}
+
+/**
+ * Rename the variable for primary links.
+ */
+function system_update_7009() {
+  $current_primary = variable_get('menu_primary_links_source');
+  if (isset($current_primary)) {
+    variable_set('menu_main_links_source', $current_primary);
+    variable_del('menu_primary_links_source');
+  }
+}
+
+/**
+ * Split the 'bypass node access' permission from 'administer nodes'.
+ */
+function system_update_7011() {
+  // Get existing roles that can 'administer nodes'.
+  $rids = array();
+  $rids = db_query("SELECT rid FROM {role_permission} WHERE permission = :perm", array(':perm' => 'administer nodes'))->fetchCol();
+  // None found.
+  if (empty($rids)) {
+    return;
+  }
+  $insert = db_insert('role_permission')->fields(array('rid', 'permission'));
+  foreach ($rids as $rid) {
+    $insert->values(array(
+    'rid' => $rid,
+    'permission' => 'bypass node access',
+    ));
+  }
+  $insert->execute();
+}
+
+/**
+ * Convert default time zone offset to default time zone name.
+ */
+function system_update_7013() {
+  $timezone = NULL;
+  $timezones = system_time_zones();
+  // If the contributed Date module set a default time zone name, use this
+  // setting as the default time zone.
+  if (($timezone_name = variable_get('date_default_timezone_name')) && isset($timezones[$timezone_name])) {
+    $timezone = $timezone_name;
+  }
+  // If the contributed Event module has set a default site time zone, look up
+  // the time zone name and use it as the default time zone.
+  if (!$timezone && ($timezone_id = variable_get('date_default_timezone_id', 0))) {
+    try {
+      $timezone_name = db_query('SELECT name FROM {event_timezones} WHERE timezone = :timezone_id', array(':timezone_id' => $timezone_id))->fetchField();
+      if (($timezone_name = str_replace(' ', '_', $timezone_name)) && isset($timezones[$timezone_name])) {
+        $timezone = $timezone_name;
+      }
+    }
+    catch (PDOException $e) {
+      // Ignore error if event_timezones table does not exist or unexpected
+      // schema found.
+    }
+  }
+
+  // Check to see if timezone was overriden in update_prepare_d7_bootstrap().
+  $offset = variable_get('date_temporary_timezone');
+  // If not, use the default.
+  if (!isset($offset)) {
+    $offset = variable_get('date_default_timezone', 0);
+  }
+
+  // If the previous default time zone was a non-zero offset, guess the site's
+  // intended time zone based on that offset and the server's daylight saving
+  // time status.
+  if (!$timezone && $offset) {
+    $timezone_name = timezone_name_from_abbr('', intval($offset), date('I'));
+    if ($timezone_name && isset($timezones[$timezone_name])) {
+      $timezone = $timezone_name;
+    }
+  }
+  // Otherwise, the default time zone offset was zero, which is UTC.
+  if (!$timezone) {
+    $timezone = 'UTC';
+  }
+  variable_set('date_default_timezone', $timezone);
+  drupal_set_message('The default time zone has been set to <em>' . check_plain($timezone) . '</em>. Check the ' . l('date and time configuration page', 'admin/config/regional/settings') . ' to configure it correctly.', 'warning');
+  // Remove temporary override.
+  variable_del('date_temporary_timezone');
+}
+
+/**
+ * Change the user logout path.
+ */
+function system_update_7015() {
+  db_update('menu_links')
+    ->fields(array('link_path' => 'user/logout'))
+    ->condition('link_path', 'logout')
+    ->execute();
+  db_update('menu_links')
+    ->fields(array('router_path' => 'user/logout'))
+    ->condition('router_path', 'logout')
+    ->execute();
+
+  db_update('menu_links')
+    ->fields(array(
+      'menu_name' => 'user-menu',
+      'plid' => 0,
+    ))
+    ->condition(db_or()
+      ->condition('link_path', 'user/logout')
+      ->condition('router_path', 'user/logout')
+    )
+    ->condition('module', 'system')
+    ->condition('customized', 0)
+    ->execute();
+}
+
+/**
+ * Remove custom datatype *_unsigned in PostgreSQL.
+ */
+function system_update_7016() {
+  // Only run these queries if the driver used is pgsql.
+  if (db_driver() == 'pgsql') {
+    $result = db_query("SELECT c.relname AS table, a.attname AS field,
+                        pg_catalog.format_type(a.atttypid, a.atttypmod) AS type
+                        FROM pg_catalog.pg_attribute a
+                        LEFT JOIN pg_class c ON (c.oid =  a.attrelid)
+                        WHERE pg_catalog.pg_table_is_visible(c.oid) AND c.relkind = 'r'
+                        AND pg_catalog.format_type(a.atttypid, a.atttypmod) LIKE '%unsigned%'");
+    foreach ($result as $row) {
+      switch ($row->type) {
+        case 'smallint_unsigned':
+          $datatype = 'int';
+          break;
+        case 'int_unsigned':
+        case 'bigint_unsigned':
+        default:
+          $datatype = 'bigint';
+          break;
+      }
+      db_query('ALTER TABLE ' . $row->table . ' ALTER COLUMN "' . $row->field . '" TYPE ' . $datatype);
+      db_query('ALTER TABLE ' . $row->table . ' ADD CHECK ("' . $row->field . '" >= 0)');
+    }
+    db_query('DROP DOMAIN IF EXISTS smallint_unsigned');
+    db_query('DROP DOMAIN IF EXISTS int_unsigned');
+    db_query('DROP DOMAIN IF EXISTS bigint_unsigned');
+  }
+}
+
+/**
+ * Change the theme setting 'toggle_node_info' into a per content type variable.
+ */
+function system_update_7017() {
+  // Get the global theme settings.
+  $settings = variable_get('theme_settings', array());
+  // Get the settings of the default theme.
+  $settings = array_merge($settings, variable_get('theme_' . variable_get('theme_default', 'garland') . '_settings', array()));
+
+  $types = _update_7000_node_get_types();
+  foreach ($types as $type) {
+    if (isset($settings['toggle_node_info_' . $type->type])) {
+      variable_set('node_submitted_' . $type->type, $settings['toggle_node_info_' . $type->type]);
+    }
+  }
+
+  // Unset deprecated 'toggle_node_info' theme settings.
+  $theme_settings = variable_get('theme_settings', array());
+  foreach ($theme_settings as $setting => $value) {
+    if (substr($setting, 0, 16) == 'toggle_node_info') {
+      unset($theme_settings[$setting]);
+    }
+  }
+  variable_set('theme_settings', $theme_settings);
+}
+
+/**
+ * Shorten the {system}.type column and modify indexes.
+ */
+function system_update_7018() {
+  db_drop_index('system', 'modules');
+  db_drop_index('system', 'type_name');
+  db_change_field('system', 'type', 'type', array('type' => 'varchar', 'length' => 12, 'not null' => TRUE, 'default' => ''));
+  db_add_index('system', 'type_name', array('type', 'name'));
+}
+
+/**
+ * Enable field and field_ui modules.
+ */
+function system_update_7020() {
+  $module_list = array('field_sql_storage', 'field', 'field_ui');
+  module_enable($module_list, FALSE);
+}
+
+/**
+ * Change the PHP for settings permission.
+ */
+function system_update_7021() {
+  db_update('role_permission')
+    ->fields(array('permission' => 'use PHP for settings'))
+    ->condition('permission', 'use PHP for block visibility')
+    ->execute();
+}
+
+/**
+ * Enable field type modules.
+ */
+function system_update_7027() {
+  $module_list = array('text', 'number', 'list', 'options');
+  module_enable($module_list, FALSE);
+}
+
+/**
+ * Add new 'view own unpublished content' permission for authenticated users.
+ * Preserves legacy behavior from Drupal 6.x.
  */
+function system_update_7029() {
+  db_insert('role_permission')
+    ->fields(array(
+      'rid' => DRUPAL_AUTHENTICATED_RID,
+      'permission' => 'view own unpublished content',
+    ))
+    ->execute();
+}
+
+/**
+* Alter field hostname to identifier in the {flood} table.
+ */
+function system_update_7032() {
+  db_drop_index('flood', 'allow');
+  db_change_field('flood', 'hostname', 'identifier', array('type' => 'varchar', 'length' => 128, 'not null' => TRUE, 'default' => ''));
+  db_add_index('flood', 'allow', array('event', 'identifier', 'timestamp'));
+}
+
+/**
+ * Move CACHE_AGGRESSIVE to CACHE_NORMAL.
+ */
+function system_update_7033() {
+  if (variable_get('cache') == 2) {
+    variable_set('cache', 1);
+    return t('Aggressive caching was disabled and replaced with normal caching. Read the page caching section in default.settings.php for more information on how to enable similar functionality.');
+  }
+}
+
+/**
+ * Migrate the file path settings and create the new {file_managed} table.
+ */
+function system_update_7034() {
+  $files_directory = variable_get('file_directory_path', NULL);
+  if (variable_get('file_downloads', 1) == 1) {
+    // Our default is public, so we don't need to set anything.
+    if (!empty($files_directory)) {
+      variable_set('file_public_path', $files_directory);
+    }
+  }
+  elseif (variable_get('file_downloads', 1) == 2) {
+    variable_set('file_default_scheme', 'private');
+    if (!empty($files_directory)) {
+      variable_set('file_private_path', $files_directory);
+    }
+  }
+  variable_del('file_downloads');
+
+  $schema['file_managed'] = array(
+    'description' => 'Stores information for uploaded files.',
+    'fields' => array(
+      'fid' => array(
+        'description' => 'File ID.',
+        'type' => 'serial',
+        'unsigned' => TRUE,
+        'not null' => TRUE,
+      ),
+      'uid' => array(
+        'description' => 'The {user}.uid of the user who is associated with the file.',
+        'type' => 'int',
+        'unsigned' => TRUE,
+        'not null' => TRUE,
+        'default' => 0,
+      ),
+      'filename' => array(
+        'description' => 'Name of the file with no path components. This may differ from the basename of the filepath if the file is renamed to avoid overwriting an existing file.',
+        'type' => 'varchar',
+        'length' => 255,
+        'not null' => TRUE,
+        'default' => '',
+      ),
+      'uri' => array(
+        'description' => 'URI of file.',
+        'type' => 'varchar',
+        'length' => 255,
+        'not null' => TRUE,
+        'default' => '',
+      ),
+      'filemime' => array(
+        'description' => "The file's MIME type.",
+        'type' => 'varchar',
+        'length' => 255,
+        'not null' => TRUE,
+        'default' => '',
+      ),
+      'filesize' => array(
+        'description' => 'The size of the file in bytes.',
+        'type' => 'int',
+        'unsigned' => TRUE,
+        'not null' => TRUE,
+        'default' => 0,
+      ),
+      'status' => array(
+        'description' => 'A field indicating the status of the file. Two status are defined in core: temporary (0) and permanent (1). Temporary files older than DRUPAL_MAXIMUM_TEMP_FILE_AGE will be removed during a cron run.',
+        'type' => 'int',
+        'not null' => TRUE,
+        'default' => 0,
+        'size' => 'tiny',
+      ),
+      'timestamp' => array(
+        'description' => 'UNIX timestamp for when the file was added.',
+        'type' => 'int',
+        'unsigned' => TRUE,
+        'not null' => TRUE,
+        'default' => 0,
+      ),
+    ),
+    'indexes' => array(
+      'uid' => array('uid'),
+      'status' => array('status'),
+      'timestamp' => array('timestamp'),
+    ),
+    'unique keys' => array(
+      'uri' => array('uri'),
+    ),
+    'primary key' => array('fid'),
+  );
+
+  db_create_table('file_managed', $schema['file_managed']);
+}
+
+/**
+ * Split the 'access site in maintenance mode' permission from 'administer site configuration'.
+ */
+function system_update_7036() {
+  // Get existing roles that can 'administer site configuration'.
+  $rids = db_query("SELECT rid FROM {role_permission} WHERE permission = :perm", array(':perm' => 'administer site configuration'))->fetchCol();
+  // None found.
+  if (empty($rids)) {
+    return;
+  }
+  $insert = db_insert('role_permission')->fields(array('rid', 'permission'));
+  foreach ($rids as $rid) {
+    $insert->values(array(
+      'rid' => $rid,
+      'permission' => 'access site in maintenance mode',
+    ));
+  }
+  $insert->execute();
+
+  // Remove obsolete variable 'site_offline_message'. See
+  // update_fix_d7_requirements().
+  variable_del('site_offline_message');
+}
+
+/**
+ * Upgrade the {url_alias} table and create a cache bin for path aliases.
+ */
+function system_update_7042() {
+  // update_fix_d7_requirements() adds 'fake' source and alias columns to
+  // allow bootstrap to run without fatal errors. Remove those columns now
+  // so that we can rename properly.
+  db_drop_field('url_alias', 'source');
+  db_drop_field('url_alias', 'alias');
+
+  // Drop indexes.
+  db_drop_index('url_alias', 'src_language_pid');
+  db_drop_unique_key('url_alias', 'dst_language_pid');
+  // Rename the fields, and increase their length to 255 characters.
+  db_change_field('url_alias', 'src', 'source', array('type' => 'varchar', 'length' => 255, 'not null' => TRUE, 'default' => ''));
+  db_change_field('url_alias', 'dst', 'alias', array('type' => 'varchar', 'length' => 255, 'not null' => TRUE, 'default' => ''));
+  // Add indexes back. We replace the unique key with an index since it never
+  // provided any meaningful unique constraint ('pid' is a primary key).
+  db_add_index('url_alias', 'source_language_pid', array('source', 'language', 'pid'));
+  db_add_index('url_alias', 'alias_language_pid', array('alias', 'language', 'pid'));
+}
+
+/**
+ * Drop the actions_aid table.
+ */
+function system_update_7044() {
+  // The current value of the increment has been taken into account when
+  // creating the sequences table in update_fix_d7_requirements().
+  db_drop_table('actions_aid');
+}
+
+/**
+ * Add expiration field to the {flood} table.
+ */
+function system_update_7045() {
+  db_add_field('flood', 'expiration', array('description' => 'Expiration timestamp. Expired events are purged on cron run.', 'type' => 'int', 'not null' => TRUE, 'default' => 0));
+  db_add_index('flood', 'purge', array('expiration'));
+}
+
+/**
+ * Switch from the Minnelli theme if it is the default or admin theme.
+ */
+function system_update_7046() {
+  if (variable_get('theme_default') == 'minnelli' || variable_get('admin_theme') == 'minnelli') {
+    // Make sure Garland is enabled.
+    db_update('system')
+      ->fields(array('status' => 1))
+      ->condition('type', 'theme')
+      ->condition('name', 'garland')
+      ->execute();
+    if (variable_get('theme_default') != 'garland') {
+      // If the default theme isn't Garland, transfer all of Minnelli's old
+      // settings to Garland.
+      $settings = variable_get('theme_minnelli_settings', array());
+      // Set the theme setting width to "fixed" to match Minnelli's old layout.
+      $settings['garland_width'] = 'fixed';
+      variable_set('theme_garland_settings', $settings);
+      // Remove Garland's color files since they won't match Minnelli's.
+      foreach (variable_get('color_garland_files', array()) as $file) {
+        @drupal_unlink($file);
+      }
+      if (isset($file) && $file = dirname($file)) {
+        @drupal_rmdir($file);
+      }
+      variable_del('color_garland_palette');
+      variable_del('color_garland_stylesheets');
+      variable_del('color_garland_logo');
+      variable_del('color_garland_files');
+      variable_del('color_garland_screenshot');
+    }
+    if (variable_get('theme_default') == 'minnelli') {
+      variable_set('theme_default', 'garland');
+    }
+    if (variable_get('admin_theme') == 'minnelli') {
+      variable_set('admin_theme', 'garland');
+    }
+  }
+}
+
+/**
+ * Normalize the front page path variable.
+ */
+function system_update_7047() {
+  variable_set('site_frontpage', drupal_get_normal_path(variable_get('site_frontpage', 'node')));
+}
+
+/**
+ * Convert path languages from the empty string to LANGUAGE_NONE.
+ */
+function system_update_7048() {
+  db_update('url_alias')
+    ->fields(array('language' => LANGUAGE_NONE))
+    ->condition('language', '')
+    ->execute();
+}
+
+/**
+ * Rename 'Default' profile to 'Standard.'
+ */
+function system_update_7049() {
+  if (variable_get('install_profile', 'standard') == 'default') {
+    variable_set('install_profile', 'standard');
+  }
+}
+
+/**
+ * Change {batch}.id column from serial to regular int.
+ */
+function system_update_7050() {
+  db_change_field('batch', 'bid', 'bid', array('description' => 'Primary Key: Unique batch ID.', 'type' => 'int', 'unsigned' => TRUE, 'not null' => TRUE));
+}
+
+/**
+ * make the IP field IPv6 compatible
+ */
+function system_update_7051() {
+  db_change_field('blocked_ips', 'ip', 'ip', array('description' => 'IP address', 'type' => 'varchar', 'length' => 40, 'not null' => TRUE, 'default' => ''));
+}
+
+/**
+ * Rename file to include_file in {menu_router} table.
+ */
+function system_update_7052() {
+  db_change_field('menu_router', 'file', 'include_file', array('type' => 'text', 'size' => 'medium'));
+}
+
+/**
+ * Upgrade standard blocks and menus.
+ */
+function system_update_7053() {
+  if (db_table_exists('menu_custom')) {
+    // Create the same menus as in menu_install().
+    db_insert('menu_custom')
+      ->fields(array('menu_name' => 'user-menu', 'title' => 'User Menu', 'description' => "The <em>User</em> menu contains links related to the user's account, as well as the 'Log out' link."))
+      ->execute();
+
+    db_insert('menu_custom')
+      ->fields(array('menu_name' => 'management', 'title' => 'Management', 'description' => "The <em>Management</em> menu contains links for administrative tasks."))
+      ->execute();
+  }
+
+  block_flush_caches();
+
+  // Show the new menu blocks along the navigation block.
+  $blocks = db_query("SELECT theme, status, region, weight, visibility, pages FROM {block} WHERE module = 'system' AND delta = 'navigation'");
+  $deltas = db_or()
+    ->condition('delta', 'user-menu')
+    ->condition('delta', 'management');
+
+  foreach ($blocks as $block) {
+    db_update('block')
+      ->fields(array(
+        'status' => $block->status,
+        'region' => $block->region,
+        'weight' => $block->weight,
+        'visibility' => $block->visibility,
+        'pages' => $block->pages,
+      ))
+      ->condition('theme', $block->theme)
+      ->condition('module', 'system')
+      ->condition($deltas)
+      ->execute();
+  }
+}
+
+/**
+ * Remove {cache_*}.headers columns.
+ */
+function system_update_7054() {
+  // Update: update_fix_d7_requirements() installs this version for cache_path
+  // already, so we don't include it in this particular update. It should be
+  // included in later updates though.
+  $cache_tables = array(
+    'cache' => 'Generic cache table for caching things not separated out into their own tables. Contributed modules may also use this to store cached items.',
+    'cache_form' => 'Cache table for the form system to store recently built forms and their storage data, to be used in subsequent page requests.',
+    'cache_page' => 'Cache table used to store compressed pages for anonymous users, if page caching is enabled.',
+    'cache_menu' => 'Cache table for the menu system to store router information as well as generated link trees for various menu/page/user combinations.',
+  );
+  $schema = system_schema_cache_7054();
+  foreach ($cache_tables as $table => $description) {
+    $schema['description'] = $description;
+    db_drop_table($table);
+    db_create_table($table, $schema);
+  }
+}
+
+/**
+ * Converts fields that store serialized variables from text to blob.
+ */
+function system_update_7055() {
+  $spec = array(
+    'description' => 'The value of the variable.',
+    'type' => 'blob',
+    'not null' => TRUE,
+    'size' => 'big',
+    'translatable' => TRUE,
+  );
+  db_change_field('variable', 'value', 'value', $spec);
+
+  $spec = array(
+    'description' => 'Parameters to be passed to the callback function.',
+    'type' => 'blob',
+    'not null' => TRUE,
+    'size' => 'big',
+  );
+  db_change_field('actions', 'parameters', 'parameters', $spec);
+
+  $spec = array(
+    'description' => 'A serialized array containing the processing data for the batch.',
+    'type' => 'blob',
+    'not null' => FALSE,
+    'size' => 'big',
+  );
+  db_change_field('batch', 'batch', 'batch', $spec);
+
+  $spec = array(
+    'description' => 'A serialized array of function names (like node_load) to be called to load an object corresponding to a part of the current path.',
+    'type' => 'blob',
+    'not null' => TRUE,
+  );
+  db_change_field('menu_router', 'load_functions', 'load_functions', $spec);
+
+  $spec = array(
+    'description' => 'A serialized array of function names (like user_uid_optional_to_arg) to be called to replace a part of the router path with another string.',
+    'type' => 'blob',
+    'not null' => TRUE,
+  );
+  db_change_field('menu_router', 'to_arg_functions', 'to_arg_functions', $spec);
+
+  $spec = array(
+    'description' => 'A serialized array of arguments for the access callback.',
+    'type' => 'blob',
+    'not null' => FALSE,
+  );
+  db_change_field('menu_router', 'access_arguments', 'access_arguments', $spec);
+
+  $spec = array(
+    'description' => 'A serialized array of arguments for the page callback.',
+    'type' => 'blob',
+    'not null' => FALSE,
+  );
+  db_change_field('menu_router', 'page_arguments', 'page_arguments', $spec);
+
+  $spec = array(
+    'description' => 'A serialized array of options to be passed to the url() or l() function, such as a query string or HTML attributes.',
+    'type' => 'blob',
+    'not null' => FALSE,
+    'translatable' => TRUE,
+  );
+  db_change_field('menu_links', 'options', 'options', $spec);
+
+  $spec = array(
+    'description' => 'The serialized contents of $_SESSION, an array of name/value pairs that persists across page requests by this session ID. Drupal loads $_SESSION from here at the start of each request and saves it at the end.',
+    'type' => 'blob',
+    'not null' => FALSE,
+    'size' => 'big',
+  );
+  db_change_field('sessions', 'session', 'session', $spec);
+
+  $spec = array(
+    'description' => "A serialized array containing information from the module's .info file; keys can include name, description, package, version, core, dependencies, and php.",
+    'type' => 'blob',
+    'not null' => FALSE,
+  );
+  db_change_field('system', 'info', 'info', $spec);
+}
+
+/**
+ * Increase the size of session-ids.
+ */
+function system_update_7057() {
+  $spec = array(
+    'description' => "A session ID. The value is generated by PHP's Session API.",
+    'type' => 'varchar',
+    'length' => 128,
+    'not null' => TRUE,
+    'default' => '',
+  );
+  db_change_field('sessions', 'sid', 'sid', $spec);
+}
+
+/**
+ * Remove cron semaphore variable.
+ */
+function system_update_7058() {
+  variable_del('cron_semaphore');
+}
+
+/**
+ * Create the {file_usage} table.
+ */
+function system_update_7059() {
+  $spec = array(
+    'description' => 'Track where a file is used.',
+    'fields' => array(
+      'fid' => array(
+        'description' => 'File ID.',
+        'type' => 'int',
+        'unsigned' => TRUE,
+        'not null' => TRUE,
+      ),
+      'module' => array(
+        'description' => 'The name of the module that is using the file.',
+        'type' => 'varchar',
+        'length' => 255,
+        'not null' => TRUE,
+        'default' => '',
+      ),
+      'type' => array(
+        'description' => 'The name of the object type in which the file is used.',
+        'type' => 'varchar',
+        'length' => 64,
+        'not null' => TRUE,
+        'default' => '',
+      ),
+      'id' => array(
+        'description' => 'The primary key of the object using the file.',
+        'type' => 'int',
+        'unsigned' => TRUE,
+        'not null' => TRUE,
+        'default' => 0,
+      ),
+      'count' => array(
+        'description' => 'The number of times this file is used by this object.',
+        'type' => 'int',
+        'unsigned' => TRUE,
+        'not null' => TRUE,
+        'default' => 0,
+      ),
+    ),
+    'primary key' => array('fid', 'type', 'id', 'module'),
+    'indexes' => array(
+      'type_id' => array('type', 'id'),
+      'fid_count' => array('fid', 'count'),
+      'fid_module' => array('fid', 'module'),
+    ),
+  );
+  db_create_table('file_usage', $spec);
+}
+
+/**
+ * Create fields in preparation for migrating upload.module to file.module.
+ */
+function system_update_7060() {
+  if (!db_table_exists('upload')) {
+    return;
+  }
+
+  if (!db_query_range('SELECT 1 FROM {upload}', 0, 1)->fetchField()) {
+    // There is nothing to migrate. Delete variables and the empty table. There
+    // is no need to create fields that are not going to be used.
+    foreach (_update_7000_node_get_types() as $node_type) {
+      variable_del('upload_' . $node_type->type);
+    }
+    db_drop_table('upload');
+    return;
+  }
+
+  // Check which node types have upload.module attachments enabled.
+  $context['types'] = array();
+  foreach (_update_7000_node_get_types() as $node_type) {
+    if (variable_get('upload_' . $node_type->type, 0)) {
+      $context['types'][$node_type->type] = $node_type->type;
+    }
+  }
+
+  // The {upload} table will be deleted when this update is complete so we
+  // want to be careful to migrate all the data, even for node types that
+  // may have had attachments disabled after files were uploaded. Look for
+  // any other node types referenced by the upload records and add those to
+  // the list. The admin can always remove the field later.
+  $results = db_query('SELECT DISTINCT type FROM {node} n INNER JOIN {node_revision} nr ON n.nid = nr.nid INNER JOIN {upload} u ON nr.vid = u.vid');
+  foreach ($results as $row) {
+    if (!isset($context['types'][$row->type])) {
+      drupal_set_message(t('The content type %rowtype had uploads disabled but contained uploaded file data. Uploads have been re-enabled to migrate the existing data. You may delete the "File attachments" field in the %rowtype type if this data is not necessary.', array('%rowtype' => $row->type)));
+      $context['types'][$row->type] = $row->type;
+    }
+  }
+
+  // Create a single "upload" field on all the content types that have uploads
+  // enabled, then add an instance to each enabled type.
+  if (count($context['types']) > 0) {
+    module_enable(array('file'));
+    $field = array(
+      'field_name' => 'upload',
+      'type' => 'file',
+      'module' => 'file',
+      'locked' => FALSE,
+      'cardinality' => FIELD_CARDINALITY_UNLIMITED,
+      'translatable' => FALSE,
+      'settings' => array(
+        'display_field' => 1,
+        'display_default' => variable_get('upload_list_default', 1),
+        'uri_scheme' => file_default_scheme(),
+        'default_file' => 0,
+      ),
+    );
+
+    $upload_size = variable_get('upload_uploadsize_default', 1);
+    $instance = array(
+      'field_name' => 'upload',
+      'entity_type' => 'node',
+      'bundle' => NULL,
+      'label' => 'File attachments',
+      'required' => 0,
+      'description' => '',
+      'widget' => array(
+        'weight' => '1',
+        'settings' => array(
+          'progress_indicator' => 'throbber',
+        ),
+        'type' => 'file_generic',
+      ),
+      'settings' => array(
+        'max_filesize' => $upload_size ? ($upload_size . ' MB') : '',
+        'file_extensions' => variable_get('upload_extensions_default', 'jpg jpeg gif png txt doc xls pdf ppt pps odt ods odp'),
+        'file_directory' => '',
+        'description_field' => 1,
+      ),
+      'display' => array(
+        'default' => array(
+          'label' => 'hidden',
+          'type' => 'file_table',
+          'settings' => array(),
+          'weight' => 0,
+          'module' => 'file',
+        ),
+        'full' => array(
+          'label' => 'hidden',
+          'type' => 'file_table',
+          'settings' => array(),
+          'weight' => 0,
+          'module' => 'file',
+        ),
+        'teaser' => array(
+          'label' => 'hidden',
+          'type' => 'hidden',
+          'settings' => array(),
+          'weight' => 0,
+          'module' => NULL,
+        ),
+        'rss' => array(
+          'label' => 'hidden',
+          'type' => 'file_table',
+          'settings' => array(),
+          'weight' => 0,
+          'module' => 'file',
+        ),
+      ),
+    );
+
+    // Create the field.
+    _update_7000_field_create_field($field);
+
+    // Create the instances.
+    foreach ($context['types'] as $bundle) {
+      $instance['bundle'] = $bundle;
+      _update_7000_field_create_instance($field, $instance);
+      // Now that the instance is created, we can safely delete any legacy
+      // node type information.
+      variable_del('upload_' . $bundle);
+    }
+  }
+  else {
+    // No uploads or content types with uploads enabled.
+    db_drop_table('upload');
+  }
+}
+
+/**
+ * Migrate upload.module data to the newly created file field.
+ */
+function system_update_7061(&$sandbox) {
+  if (!db_table_exists('upload')) {
+    return;
+  }
+
+  if (!isset($sandbox['progress'])) {
+    // Retrieve a list of node revisions that have uploaded files attached.
+    // DISTINCT queries are expensive, especially when paged, so we store the
+    // data in its own table for the duration of the update.
+    $table = array(
+      'description' => t('Stores temporary data for system_update_7061.'),
+      'fields' => array('vid' => array('type' => 'int')),
+      'primary key' => array('vid'),
+    );
+    db_create_table('system_update_7061', $table);
+    $query = db_select('upload', 'u');
+    $query->distinct();
+    $query->addField('u','vid');
+    db_insert('system_update_7061')
+      ->from($query)
+      ->execute();
+
+    // Initialize batch update information.
+    $sandbox['progress'] = 0;
+    $sandbox['last_vid_processed'] = -1;
+    $sandbox['max'] = db_query("SELECT COUNT(*) FROM {system_update_7061}")->fetchField();
+  }
+
+  // Determine vids for this batch.
+  // Process all files attached to a given revision during the same batch.
+  $limit = variable_get('upload_update_batch_size', 100);
+  $vids = db_query_range('SELECT vid FROM {system_update_7061} WHERE vid > :lastvid ORDER BY vid', 0, $limit, array(':lastvid' => $sandbox['last_vid_processed']))
+    ->fetchCol();
+
+  // Retrieve information on all the files attached to these revisions.
+  if (!empty($vids)) {
+    $node_revisions = array();
+    $result = db_query('SELECT u.fid, u.vid, u.list, u.description, n.nid, n.type, u.weight FROM {upload} u INNER JOIN {node_revision} nr ON u.vid = nr.vid INNER JOIN {node} n ON n.nid = nr.nid WHERE u.vid IN (:vids) ORDER BY u.vid, u.weight, u.fid', array(':vids' => $vids));
+    foreach ($result as $record) {
+      // For each uploaded file, retrieve the corresponding data from the old
+      // files table (since upload doesn't know about the new entry in the
+      // file_managed table).
+      $file = db_select('files', 'f')
+        ->fields('f', array('fid', 'uid', 'filename', 'filepath', 'filemime', 'filesize', 'status', 'timestamp'))
+        ->condition('f.fid', $record->fid)
+        ->execute()
+        ->fetchAssoc();
+      if (!$file) {
+        continue;
+      }
+
+      // Add in the file information from the upload table.
+      $file['description'] = $record->description;
+      $file['display'] = $record->list;
+
+      // Create one record for each revision that contains all the uploaded
+      // files.
+      $node_revisions[$record->vid]['nid'] = $record->nid;
+      $node_revisions[$record->vid]['vid'] = $record->vid;
+      $node_revisions[$record->vid]['type'] = $record->type;
+      $node_revisions[$record->vid]['file'][LANGUAGE_NONE][] = $file;
+    }
+
+    // Now that we know which files belong to which revisions, update the
+    // files'// database entries, and save a reference to each file in the
+    // upload field on their node revisions.
+    $basename = variable_get('file_directory_path', conf_path() . '/files');
+    $scheme = file_default_scheme() . '://';
+    foreach ($node_revisions as $vid => $revision) {
+      foreach ($revision['file'][LANGUAGE_NONE] as $delta => $file) {
+        // We will convert filepaths to uri using the default scheme
+        // and stripping off the existing file directory path.
+        $file['uri'] = $scheme . str_replace($basename, '', $file['filepath']);
+        $file['uri'] = file_stream_wrapper_uri_normalize($file['uri']);
+        unset($file['filepath']);
+        // Insert into the file_managed table.
+        // Each fid should only be stored once in file_managed.
+        db_merge('file_managed')
+          ->key(array(
+            'fid' => $file['fid'],
+          ))
+          ->fields(array(
+            'uid' => $file['uid'],
+            'filename' => $file['filename'],
+            'uri' => $file['uri'],
+            'filemime' => $file['filemime'],
+            'filesize' => $file['filesize'],
+            'status' => $file['status'],
+            'timestamp' => $file['timestamp'],
+          ))
+          ->execute();
+
+        // Add the usage entry for the file.
+        $file = (object) $file;
+        file_usage_add($file, 'file', 'node', $revision['nid']);
+
+        // Update the node revision's upload file field with the file data.
+        $revision['file'][LANGUAGE_NONE][$delta] = array('fid' => $file->fid, 'display' => $file->display, 'description' => $file->description);
+      }
+
+      // Write the revision's upload field data into the field_upload tables.
+      $node = (object) $revision;
+      _update_7000_field_sql_storage_write('node', $node->type, $node->nid, $node->vid, 'upload', $node->file);
+
+      // Update our progress information for the batch update.
+      $sandbox['progress']++;
+      $sandbox['last_vid_processed'] = $vid;
+    }
+  }
+
+  // If less than limit node revisions were processed, the update process is
+  // finished.
+  if (count($vids) < $limit) {
+    $finished = TRUE;
+  }
+
+  // If there's no max value then there's nothing to update and we're finished.
+  if (empty($sandbox['max']) || isset($finished)) {
+    db_drop_table('upload');
+    db_drop_table('system_update_7061');
+    return t('Upload module has been migrated to File module.');
+  }
+  else {
+    // Indicate our current progress to the batch update system.
+    $sandbox['#finished'] = $sandbox['progress'] / $sandbox['max'];
+  }
+}
+
+/**
+ * Replace 'system_list' index with 'bootstrap' index on {system}.
+ */
+function system_update_7062() {
+  db_drop_index('system', 'bootstrap');
+  db_drop_index('system', 'system_list');
+  db_add_index('system', 'system_list', array('status', 'bootstrap', 'type', 'weight', 'name'));
+}
+
+/**
+ * Delete {menu_links} records for 'type' => MENU_CALLBACK which would not appear in a fresh install.
+ */
+function system_update_7063() {
+  // For router items where 'type' => MENU_CALLBACK, {menu_router}.type is
+  // stored as 4 in Drupal 6, and 0 in Drupal 7. Fortunately Drupal 7 doesn't
+  // store any types as 4, so delete both.
+  $result = db_query('SELECT ml.mlid FROM {menu_links} ml INNER JOIN {menu_router} mr ON ml.router_path = mr.path WHERE ml.module = :system AND ml.customized = 0 AND mr.type IN(:callbacks)', array(':callbacks' => array(0, 4), ':system' => 'system'));
+  foreach ($result as $record) {
+    db_delete('menu_links')->condition('mlid', $record->mlid)->execute();
+  }
+}
+
+/**
+ * Remove block_callback field from {menu_router}.
+ */
+function system_update_7064() {
+  db_drop_field('menu_router', 'block_callback');
+}
+
+/**
+ * Remove the default value for sid.
+ */
+function system_update_7065() {
+  $spec = array(
+    'description' => "A session ID. The value is generated by Drupal's session handlers.",
+    'type' => 'varchar',
+    'length' => 128,
+    'not null' => TRUE,
+  );
+  db_drop_primary_key('sessions');
+  db_change_field('sessions', 'sid', 'sid', $spec, array('primary key' => array('sid', 'ssid')));
+  // Delete any sessions with empty session ID.
+  db_delete('sessions')->condition('sid', '')->execute();
+}
+
+/**
+ * Migrate the 'file_directory_temp' variable.
+ */
+function system_update_7066() {
+  $d6_file_directory_temp = variable_get('file_directory_temp', file_directory_temp());
+  variable_set('file_temporary_path', $d6_file_directory_temp);
+  variable_del('file_directory_temp');
+}
+
+/**
+ * Grant administrators permission to view the administration theme.
+ */
+function system_update_7067() {
+  // Users with access to administration pages already see the administration
+  // theme in some places (if one is enabled on the site), so we want them to
+  // continue seeing it.
+  $admin_roles = user_roles(FALSE, 'access administration pages');
+  foreach (array_keys($admin_roles) as $rid) {
+    _update_7000_user_role_grant_permissions($rid, array('view the administration theme'), 'system');
+  }
+  // The above check is not guaranteed to reach all administrative users of the
+  // site, so if the site is currently using an administration theme, display a
+  // message also.
+  if (variable_get('admin_theme')) {
+    if (empty($admin_roles)) {
+      drupal_set_message('The new "View the administration theme" permission is required in order to view your site\'s administration theme. You can grant this permission to your site\'s administrators on the <a href="' . url('admin/people/permissions', array('fragment' => 'module-system')) . '">permissions page</a>.');
+    }
+    else {
+      drupal_set_message('The new "View the administration theme" permission is required in order to view your site\'s administration theme. This permission has been automatically granted to the following roles: <em>' . check_plain(implode(', ', $admin_roles)) . '</em>. You can grant this permission to other roles on the <a href="' . url('admin/people/permissions', array('fragment' => 'module-system')) . '">permissions page</a>.');
+    }
+  }
+}
+
+/**
+ * Update {url_alias}.language description.
+ */
+function system_update_7068() {
+  $spec = array(
+    'description' => "The language this alias is for; if 'und', the alias will be used for unknown languages. Each Drupal path can have an alias for each supported language.",
+    'type' => 'varchar',
+    'length' => 12,
+    'not null' => TRUE,
+    'default' => '',
+  );
+  db_change_field('url_alias', 'language', 'language', $spec);
+}
+
+/**
+ * Remove the obsolete 'site_offline' variable.
+ *
+ * @see update_fix_d7_requirements()
+ */
+function system_update_7069() {
+  variable_del('site_offline');
+}
+
+/**
+ * Remove the obsolete 'drupal_badge_color' and 'drupal_badge_size' variables.
+ */
+function system_update_7070() {
+  variable_del('drupal_badge_color');
+  variable_del('drupal_badge_size');
+}
 
 /**
- * Placeholder update to set the schema version to 8000.
+ * Add index missed during upgrade, and fix field default.
  */
-function system_update_8000() {
-  // Fill in the first update to Drupal 8 when needed.
+function system_update_7071() {
+  db_drop_index('date_format_type', 'title');
+  db_add_index('date_format_type', 'title', array('title'));
+  db_change_field('registry', 'filename', 'filename', array(
+    'type' => 'varchar',
+    'length' => 255,
+    'not null' => TRUE,
+  ));
 }
 
 /**
- * @} End of "defgroup updates-7.x-to-8.x"
- * The next series of updates should start at 9000.
+ * @} End of "defgroup updates-6.x-to-7.x"
+ * The next series of updates should start at 8000.
  */
diff --git a/modules/system/system.module b/modules/system/system.module
index 21b23f4..5af9ad4 100644
--- a/modules/system/system.module
+++ b/modules/system/system.module
@@ -635,13 +635,13 @@ function system_menu() {
     'weight' => -1,
   );
 
-  foreach (list_themes() as $key => $theme) {
+  foreach (list_themes() as $theme) {
     $items['admin/appearance/settings/' . $theme->name] = array(
       'title' => $theme->info['name'],
       'page arguments' => array('system_theme_settings', $theme->name),
       'type' => MENU_LOCAL_TASK,
       'access callback' => '_system_themes_access',
-      'access arguments' => array($key),
+      'access arguments' => array($theme),
       'file' => 'system.admin.inc',
     );
   }
diff --git a/modules/system/system.queue.inc b/modules/system/system.queue.inc
index 00d3940..806015c 100644
--- a/modules/system/system.queue.inc
+++ b/modules/system/system.queue.inc
@@ -215,7 +215,7 @@ class SystemQueue implements DrupalReliableQueueInterface {
   }
 
   public function createItem($data) {
-    // During a Drupal 6.x to 8.x update, drupal_get_schema() does not contain
+    // During a Drupal 6.x to 7.x update, drupal_get_schema() does not contain
     // the queue table yet, so we cannot rely on drupal_write_record().
     $query = db_insert('queue')
       ->fields(array(
diff --git a/modules/system/system.test b/modules/system/system.test
index ae69d1f..be4e366 100644
--- a/modules/system/system.test
+++ b/modules/system/system.test
@@ -411,7 +411,7 @@ class ModuleVersionTestCase extends ModuleTestCase {
    */
   function testModuleVersions() {
     $dependencies = array(
-      // Alternating between being compatible and incompatible with 8.x-2.4-beta3.
+      // Alternating between being compatible and incompatible with 7.x-2.4-beta3.
       // The first is always a compatible.
       'common_test',
       // Branch incompatibility.
@@ -427,9 +427,9 @@ class ModuleVersionTestCase extends ModuleTestCase {
       // Another branch compatibility.
       'common_test (>=2.x)',
       // Nonsense, misses a dash. Incompatible with everything.
-      'common_test (=8.x2.x, >=2.4)',
+      'common_test (=7.x2.x, >=2.4)',
       // Core version is optional. Compatible.
-      'common_test (=8.x-2.x, >=2.4-alpha2)',
+      'common_test (=7.x-2.x, >=2.4-alpha2)',
       // Test !=, explicitly incompatible.
       'common_test (=2.x, !=2.4-beta3)',
       // Three operations. Compatible.
@@ -1359,7 +1359,7 @@ class SystemThemeFunctionalTest extends DrupalWebTestCase {
   function setUp() {
     parent::setUp();
 
-    $this->admin_user = $this->drupalCreateUser(array('access administration pages', 'view the administration theme', 'administer themes', 'bypass node access'));
+    $this->admin_user = $this->drupalCreateUser(array('access administration pages', 'view the administration theme', 'administer themes', 'bypass node access', 'administer blocks'));
     $this->drupalLogin($this->admin_user);
     $this->node = $this->drupalCreateNode();
   }
@@ -1443,6 +1443,26 @@ class SystemThemeFunctionalTest extends DrupalWebTestCase {
     $this->drupalGet('node/add');
     $this->assertRaw('themes/bartik', t('Site default theme used on the add content page.'));
   }
+
+  /**
+   * Test switching the default theme.
+   */
+  function testSwitchDefaultTheme() {
+    // Enable "stark" and set it as the default theme.
+    theme_enable(array('stark'));
+    $this->drupalGet('admin/appearance');
+    $this->clickLink(t('Set default'), 1);
+    $this->assertTrue(variable_get('theme_default', '') == 'stark', t('Site default theme switched successfully.'));
+
+    // Test the default theme on the secondary links (blocks admin page).
+    $this->drupalGet('admin/structure/block');
+    $this->assertText('Stark(' . t('active tab') . ')', t('Default local task on blocks admin page is the default theme.'));
+    // Switch back to Bartik and test again to test that the menu cache is cleared.
+    $this->drupalGet('admin/appearance');
+    $this->clickLink(t('Set default'), 0);
+    $this->drupalGet('admin/structure/block');
+    $this->assertText('Bartik(' . t('active tab') . ')', t('Default local task on blocks admin page has changed.'));
+  }
 }
 
 
@@ -1596,6 +1616,35 @@ class TokenReplaceTestCase extends DrupalWebTestCase {
   }
 
   /**
+   * Test whether token-replacement works in various contexts.
+   */
+  function testSystemTokenRecognition() {
+    global $language;
+
+    // Generate prefixes and suffixes for the token context.
+    $tests = array(
+      array('prefix' => 'this is the ', 'suffix' => ' site'),
+      array('prefix' => 'this is the', 'suffix' => 'site'),
+      array('prefix' => '[', 'suffix' => ']'),
+      array('prefix' => '', 'suffix' => ']]]'),
+      array('prefix' => '[[[', 'suffix' => ''),
+      array('prefix' => ':[:', 'suffix' => '--]'),
+      array('prefix' => '-[-', 'suffix' => ':]:'),
+      array('prefix' => '[:', 'suffix' => ']'),
+      array('prefix' => '[site:', 'suffix' => ':name]'),
+      array('prefix' => '[site:', 'suffix' => ']'),
+    );
+
+    // Check if the token is recognized in each of the contexts.
+    foreach ($tests as $test) {
+      $input = $test['prefix'] . '[site:name]' . $test['suffix'];
+      $expected = $test['prefix'] . 'Drupal' . $test['suffix'];
+      $output = token_replace($input, array(), array('language' => $language));
+      $this->assertTrue($output == $expected, t('Token recognized in string %string', array('%string' => $input)));
+    }
+  }
+
+  /**
    * Tests the generation of all system site information tokens.
    */
   function testSystemSiteTokenReplacement() {
@@ -2149,3 +2198,37 @@ class SystemAuthorizeCase extends DrupalWebTestCase {
     $this->assertText('System Test Username');
   }
 }
+
+/**
+ * Test the handling of requests containing 'index.php'.
+ */
+class SystemIndexPhpTest extends DrupalWebTestCase {
+  public static function getInfo() {
+    return array(
+      'name' => 'Index.php handling',
+      'description' => "Test the handling of requests containing 'index.php'.",
+      'group' => 'System',
+    );
+  }
+
+  function setUp() {
+    parent::setUp();
+  }
+
+  /**
+   * Test index.php handling.
+   */
+  function testIndexPhpHandling() {
+    $index_php = $GLOBALS['base_url'] . '/index.php';
+
+    $this->drupalGet($index_php, array('external' => TRUE));
+    $this->assertResponse(200, t('Make sure index.php returns a valid page.'));
+
+    $this->drupalGet($index_php, array('external' => TRUE, 'query' => array('q' => 'user')));
+    $this->assertResponse(200, t('Make sure index.php?q=user returns a valid page.'));
+
+    $this->drupalGet($index_php .'/user', array('external' => TRUE));
+    $this->assertResponse(404, t("Make sure index.php/user returns a 'page not found'."));
+  }
+}
+
diff --git a/modules/taxonomy/taxonomy.admin.inc b/modules/taxonomy/taxonomy.admin.inc
index 13b2ce8..d83f5d3 100644
--- a/modules/taxonomy/taxonomy.admin.inc
+++ b/modules/taxonomy/taxonomy.admin.inc
@@ -99,10 +99,11 @@ function theme_taxonomy_overview_vocabularies($variables) {
 }
 
 /**
- * Display form for adding and editing vocabularies.
+ * Form builder for the vocabulary editing form.
  *
  * @ingroup forms
  * @see taxonomy_form_vocabulary_submit()
+ * @see taxonomy_form_vocabulary_validate()
  */
 function taxonomy_form_vocabulary($form, &$form_state, $edit = array()) {
   // During initial form build, add the entity to the form state for use
@@ -174,11 +175,38 @@ function taxonomy_form_vocabulary($form, &$form_state, $edit = array()) {
     $form['vid'] = array('#type' => 'value', '#value' => $vocabulary->vid);
     $form['module'] = array('#type' => 'value', '#value' => $vocabulary->module);
   }
+  $form['#validate'][] = 'taxonomy_form_vocabulary_validate';
+
   return $form;
 }
 
 /**
- * Accept the form submission for a vocabulary and save the results.
+ * Form validation handler for taxonomy_form_vocabulary().
+ *
+ * Makes sure that the machine name of the vocabulary is not in the
+ * disallowed list (names that conflict with menu items, such as 'list'
+ * and 'add').
+ *
+ * @see taxonomy_form_vocabulary()
+ * @see taxonomy_form_vocabulary_submit()
+ */
+function taxonomy_form_vocabulary_validate($form, &$form_state) {
+  // During the deletion there is no 'machine_name' key
+  if (isset($form_state['values']['machine_name'])) {
+    // Do not allow machine names to conflict with taxonomy path arguments.
+    $machine_name = $form_state['values']['machine_name'];
+    $disallowed = array('add', 'list');
+    if (in_array($machine_name, $disallowed)) {
+      form_set_error('machine_name', t('The machine-readable name cannot be "add" or "list".'));
+    }
+  }
+}
+
+/**
+ * Form submission handler for taxonomy_form_vocabulary().
+ *
+ * @see taxonomy_form_vocabulary()
+ * @see taxonomy_form_vocabulary_validate()
  */
 function taxonomy_form_vocabulary_submit($form, &$form_state) {
   if ($form_state['clicked_button']['#value'] == t('Delete')) {
diff --git a/modules/taxonomy/taxonomy.info b/modules/taxonomy/taxonomy.info
index cba3869..44d4ebc 100644
--- a/modules/taxonomy/taxonomy.info
+++ b/modules/taxonomy/taxonomy.info
@@ -2,7 +2,7 @@ name = Taxonomy
 description = Enables the categorization of content.
 package = Core
 version = VERSION
-core = 8.x
+core = 7.x
 dependencies[] = options
 files[] = taxonomy.module
 files[] = taxonomy.test
diff --git a/modules/taxonomy/taxonomy.install b/modules/taxonomy/taxonomy.install
index 10009d6..f28ffed 100644
--- a/modules/taxonomy/taxonomy.install
+++ b/modules/taxonomy/taxonomy.install
@@ -241,3 +241,581 @@ function taxonomy_field_schema($field) {
     ),
   );
 }
+
+/**
+ * Implements hook_update_dependencies().
+ */
+function taxonomy_update_dependencies() {
+  // Taxonomy update 7002 creates comment Field API bundles and therefore must
+  // run after the Field module has been enabled, but before upgrading field
+  // data.
+  $dependencies['taxonomy'][7002] = array(
+    'system' => 7049,
+  );
+  $dependencies['user'][7006] = array(
+    'taxonomy' => 7002,
+  );
+  $dependencies['system'][7050] = array(
+    'taxonomy' => 7002,
+  );
+  // It also must run before nodes are upgraded to use the Field API.
+  $dependencies['node'][7006] = array(
+    'taxonomy' => 7002,
+  );
+  // Ensure that format columns are only changed after Filter module has changed
+  // the primary records.
+  $dependencies['taxonomy'][7009] = array(
+    'filter' => 7010,
+  );
+
+  return $dependencies;
+}
+
+/**
+ * Utility function: get the list of vocabularies directly from the database.
+ *
+ * This function is valid for a database schema version 7002.
+ *
+ * @ingroup update-api-6.x-to-7.x
+ */
+function _update_7002_taxonomy_get_vocabularies() {
+  return db_query('SELECT v.* FROM {taxonomy_vocabulary} v ORDER BY v.weight, v.name')->fetchAllAssoc('vid', PDO::FETCH_OBJ);
+}
+
+/**
+ * Rename taxonomy tables.
+ */
+function taxonomy_update_7001() {
+  db_rename_table('term_data', 'taxonomy_term_data');
+  db_rename_table('term_hierarchy', 'taxonomy_term_hierarchy');
+  db_rename_table('term_node', 'taxonomy_term_node');
+  db_rename_table('term_relation', 'taxonomy_term_relation');
+  db_rename_table('term_synonym', 'taxonomy_term_synonym');
+  db_rename_table('vocabulary', 'taxonomy_vocabulary');
+  db_rename_table('vocabulary_node_types', 'taxonomy_vocabulary_node_type');
+}
+
+/**
+ * Add {vocabulary}.machine_name column.
+ */
+function taxonomy_update_7002() {
+  $field = array(
+    'type' => 'varchar',
+    'length' => 255,
+    'not null' => TRUE,
+    'default' => '',
+    'description' => 'The vocabulary machine name.',
+  );
+
+  db_add_field('taxonomy_vocabulary', 'machine_name', $field);
+
+  // Do a direct query here, rather than calling taxonomy_get_vocabularies(),
+  // in case Taxonomy module is disabled.
+  $vids = db_query('SELECT vid FROM {taxonomy_vocabulary}')->fetchCol();
+  foreach ($vids as $vid) {
+    $machine_name = 'vocabulary_' . $vid;
+    db_update('taxonomy_vocabulary')
+      ->fields(array('machine_name' => $machine_name))
+      ->condition('vid', $vid)
+      ->execute();
+  }
+
+  // The machine_name unique key can only be added after we ensure the
+  // machine_name column contains unique values.
+  db_add_unique_key('taxonomy_vocabulary', 'machine_name', array('machine_name'));
+}
+
+/**
+ * Remove the related terms setting from vocabularies.
+ *
+ * This setting has not been used since Drupal 6. The {taxonomy_relations} table
+ * itself is retained to allow for data to be upgraded.
+ */
+function taxonomy_update_7003() {
+  db_drop_field('taxonomy_vocabulary', 'relations');
+}
+
+/**
+ * Move taxonomy vocabulary associations for nodes to fields and field instances.
+ */
+function taxonomy_update_7004() {
+  $taxonomy_index = array(
+    'description' => 'Maintains denormalized information about node/term relationships.',
+    'fields' => array(
+      'nid' => array(
+        'description' => 'The {node}.nid this record tracks.',
+        'type' => 'int',
+        'unsigned' => TRUE,
+        'not null' => TRUE,
+        'default' => 0,
+      ),
+      'tid' => array(
+         'description' => 'The term ID.',
+         'type' => 'int',
+         'unsigned' => TRUE,
+         'not null' => TRUE,
+         'default' => 0,
+      ),
+      'sticky' => array(
+        'description' => 'Boolean indicating whether the node is sticky.',
+        'type' => 'int',
+        'not null' => FALSE,
+        'default' => 0,
+        'size' => 'tiny',
+      ),
+      'created' => array(
+        'description' => 'The Unix timestamp when the node was created.',
+        'type' => 'int',
+        'unsigned' => TRUE,
+        'not null' => TRUE,
+        'default'=> 0,
+      ),
+    ),
+    'indexes' => array(
+      'term_node' => array('tid', 'sticky', 'created'),
+      'nid' => array('nid'),
+    ),
+    'foreign keys' => array(
+      'tracked_node' => array(
+        'table' => 'node',
+        'columns' => array('nid' => 'nid'),
+      ),
+      'term' => array(
+        'table' => 'taxonomy_term_data',
+        'columns' => array('tid' => 'tid'),
+      ),
+    ),
+  );
+  db_create_table('taxonomy_index', $taxonomy_index);
+
+  // Use an inline version of Drupal 6 taxonomy_get_vocabularies() here since
+  // we can no longer rely on $vocabulary->nodes from the API function.
+  $result = db_query('SELECT v.*, n.type FROM {taxonomy_vocabulary} v LEFT JOIN {taxonomy_vocabulary_node_type} n ON v.vid = n.vid ORDER BY v.weight, v.name');
+  $vocabularies = array();
+  foreach ($result as $record) {
+    // If no node types are associated with a vocabulary, the LEFT JOIN will
+    // return a NULL value for type.
+    if (isset($record->type)) {
+      $node_types[$record->vid][$record->type] = $record->type;
+      unset($record->type);
+      $record->nodes = $node_types[$record->vid];
+    }
+    elseif (!isset($record->nodes)) {
+      $record->nodes = array();
+    }
+    $vocabularies[$record->vid] = $record;
+  }
+
+  foreach ($vocabularies as $vocabulary) {
+    $field_name = 'taxonomy_' . $vocabulary->machine_name;
+    $field = array(
+      'field_name' => $field_name,
+      'module' => 'taxonomy',
+      'type' => 'taxonomy_term_reference',
+      'cardinality' => $vocabulary->multiple || $vocabulary->tags ? FIELD_CARDINALITY_UNLIMITED : 1,
+      'settings' => array(
+        'required' => $vocabulary->required ? TRUE : FALSE,
+        'allowed_values' => array(
+          array(
+            'vocabulary' => $vocabulary->machine_name,
+            'parent' => 0,
+          ),
+        ),
+      ),
+    );
+    _update_7000_field_create_field($field);
+
+    foreach ($vocabulary->nodes as $bundle) {
+      $instance = array(
+        'label' => $vocabulary->name,
+        'field_name' => $field_name,
+        'bundle' => $bundle,
+        'entity_type' => 'node',
+        'settings' => array(),
+        'description' => $vocabulary->help,
+        'widget' => array(),
+        'display' => array(
+          'default' => array(
+            'type' => 'taxonomy_term_reference_link',
+            'weight' => 10,
+          ),
+          'teaser' => array(
+            'type' => 'taxonomy_term_reference_link',
+            'weight' => 10,
+          ),
+        ),
+      );
+      if ($vocabulary->tags) {
+        $instance['widget'] = array(
+          'type' => 'taxonomy_autocomplete',
+          'module' => 'taxonomy',
+          'settings' => array(
+            'size' => 60,
+            'autocomplete_path' => 'taxonomy/autocomplete',
+          ),
+        );
+      }
+      else {
+        $instance['widget'] = array(
+          'type' => 'select',
+          'module' => 'options',
+          'settings' => array(),
+        );
+      }
+      _update_7000_field_create_instance($field, $instance);
+    }
+  }
+
+  // Some contrib projects stored term node associations without regard for the
+  // selections in the taxonomy_vocabulary_node_types table, or have more terms
+  // for a single node than the vocabulary allowed. We construct the
+  // taxonomyextra field to store all the extra stuff.
+
+  // Allowed values for this extra vocabs field is every vocabulary.
+  $allowed_values = array();
+  foreach (_update_7002_taxonomy_get_vocabularies() as $vocabulary) {
+    $allowed_values[] = array(
+      'vocabulary' => $vocabulary->machine_name,
+      'parent' => 0,
+    );
+  }
+
+  $field_name = 'taxonomyextra';
+  $field = array(
+    'field_name' => $field_name,
+    'module' => 'taxonomy',
+    'type' => 'taxonomy_term_reference',
+    'cardinality' => FIELD_CARDINALITY_UNLIMITED,
+    'settings' => array(
+      'required' => FALSE,
+      'allowed_values' => $allowed_values,
+    ),
+  );
+  _update_7000_field_create_field($field);
+
+  foreach (_update_7000_node_get_types() as $bundle) {
+    $instance = array(
+      'label' => 'Taxonomy upgrade extras',
+      'field_name' => $field_name,
+      'entity_type' => 'node',
+      'bundle' => $bundle->type,
+      'settings' => array(),
+      'description' => 'Debris left over after upgrade from Drupal 6',
+      'widget' => array(
+        'type' => 'taxonomy_autocomplete',
+        'module' => 'taxonomy',
+        'settings' => array(),
+      ),
+      'display' => array(
+        'default' => array(
+          'type' => 'taxonomy_term_reference_link',
+          'weight' => 10,
+        ),
+        'teaser' => array(
+          'type' => 'taxonomy_term_reference_link',
+          'weight' => 10,
+        ),
+      ),
+    );
+    _update_7000_field_create_instance($field, $instance);
+  }
+
+  $fields = array('help', 'multiple', 'required', 'tags');
+  foreach ($fields as $field) {
+    db_drop_field('taxonomy_vocabulary', $field);
+  }
+}
+
+/**
+ * Migrate {taxonomy_term_node} table to field storage.
+ *
+ * @todo: This function can possibly be made much faster by wrapping a
+ * transaction around all the inserts.
+ */
+function taxonomy_update_7005(&$sandbox) {
+  // $sandbox contents:
+  // - total: The total number of term_node relationships to migrate.
+  // - count: The number of term_node relationships that have been
+  //   migrated so far.
+  // - last: The db_query_range() offset to use when querying
+  //   term_node; this field is incremented in quantities of $batch
+  //   (1000) but at the end of each call to this function, last and
+  //   count are the same.
+  // - vocabularies: An associative array mapping vocabulary id and node
+  //   type to field name. If a voc id/node type pair does not appear
+  //   in this array but a term_node relationship exists mapping a
+  //   term in voc id to node of that type, the relationship is
+  //   assigned to the taxonomymyextra field which allows terms of all
+  //   vocabularies.
+  // - cursor[values], cursor[deltas]: The contents of $values and
+  //   $deltas at the end of the previous call to this function. These
+  //   need to be preserved across calls because a single batch of
+  //   1000 rows from term_node may end in the middle of the terms for
+  //   a single node revision.
+  //
+  // $values is the array of values about to be/most recently inserted
+  // into the SQL data table for the taxonomy_term_reference
+  // field. Before $values is constructed for each record, the
+  // $values from the previous insert is checked to see if the two
+  // records are for the same node revision id; this enables knowing
+  // when to reset the delta counters which are incremented across all
+  // terms for a single field on a single revision, but reset for each
+  // new field and revision.
+  //
+  // $deltas is an associative array mapping field name to the number
+  // of term references stored so far for the current revision, which
+  // provides the delta value for each term reference data insert. The
+  // deltas are reset for each new revision.
+  
+  $conditions = array(
+    'type' => 'taxonomy_term_reference',
+    'deleted' => 0,
+  );
+  $field_info = _update_7000_field_read_fields($conditions, 'field_name');
+
+  // This is a multi-pass update. On the first call we need to initialize some
+  // variables.
+  if (!isset($sandbox['total'])) {
+    $sandbox['last'] = 0;
+    $sandbox['count'] = 0;
+
+    // Run the same joins as the query that is used later to retrieve the
+    // term_node data, this ensures that bad records in that table - for
+    // tids which aren't in taxonomy_term_data or nids which aren't in {node}
+    // are not included in the count.
+    $sandbox['total'] = db_query('SELECT COUNT(*) FROM {taxonomy_term_data} td INNER JOIN {taxonomy_term_node} tn ON td.tid = tn.tid INNER JOIN {node} n ON tn.nid = n.nid LEFT JOIN {node} n2 ON tn.vid = n2.vid')->fetchField();
+
+    // Use an inline version of Drupal 6 taxonomy_get_vocabularies() here since
+    // we can no longer rely on $vocabulary->nodes from the API function.
+    $result = db_query('SELECT v.vid, v.machine_name, n.type FROM {taxonomy_vocabulary} v INNER JOIN {taxonomy_vocabulary_node_type} n ON v.vid = n.vid');
+    $vocabularies = array();
+    foreach ($result as $record) {
+
+      // If no node types are associated with a vocabulary, the LEFT JOIN will
+      // return a NULL value for type.
+      if (isset($record->type)) {
+        $vocabularies[$record->vid][$record->type] = 'taxonomy_'. $record->machine_name;
+      }
+    }
+
+    if (!empty($vocabularies)) {
+      $sandbox['vocabularies'] = $vocabularies;
+    }
+  }
+  else {
+    // We do each pass in batches of 1000.
+    $batch = 1000;
+
+    // Query selects all revisions at once and processes them in revision and
+    // term weight order. Join types:
+    //
+    // - INNER JOIN term_node ON tn.tid: We are migrating term-node
+    //   relationships. If there are none for a term, we do not need the
+    //   term_data row.
+    // - INNER JOIN {node} n ON n.nid: If a term-node relationship exists for a
+    //   nid that does not exist, we cannot migrate it as we have no node to
+    //   relate it to; thus we do not need that row from term_node.
+    // - LEFT JOIN {node} n2 ON n2.vid: If the current term-node relationship
+    //   is for the current revision of the node, this left join will match and
+    //   is_current will be non-NULL (we also get the current sticky and
+    //   created in this case). This tells us whether to insert into the
+    //   current data tables in addition to the revision data tables.
+    //
+    // This query must return a consistent ordering across multiple calls.  We
+    // need them ordered by node vid (since we use that to decide when to reset
+    // the delta counters) and by term weight so they appear within each node
+    // in weight order. However, tn.vid,td.weight is not guaranteed to be
+    // unique, so we add tn.tid as an additional sort key because tn.tid,tn.vid
+    // is the primary key of the D6 term_node table and so is guaranteed
+    // unique. Unfortunately it also happens to be in the wrong order which is
+    // less efficient, but c'est la vie.
+    $query = 'SELECT td.vid AS vocab_id, td.tid, tn.nid, tn.vid, n.type, n2.created, n2.sticky, n2.nid AS is_current FROM {taxonomy_term_data} td INNER JOIN {taxonomy_term_node} tn ON td.tid = tn.tid INNER JOIN {node} n ON tn.nid = n.nid LEFT JOIN {node} n2 ON tn.vid = n2.vid ORDER BY tn.vid, td.weight ASC, tn.tid';
+    $result = db_query_range($query, $sandbox['last'], $batch);
+    if (isset($sandbox['cursor'])) {
+      $values = $sandbox['cursor']['values'];
+      $deltas = $sandbox['cursor']['deltas'];
+    }
+    else {
+      $deltas = array();
+    }
+    foreach ($result as $record) {
+      $sandbox['count'] += 1;
+
+      // Use the valid field for this vocabulary and node type or use the
+      // overflow vocabulary if there is no valid field.
+      $field_name = isset($sandbox['vocabularies'][$record->vocab_id][$record->type]) ? $sandbox['vocabularies'][$record->vocab_id][$record->type] : 'taxonomyextra';
+      $field = $field_info[$field_name];
+
+      // Start deltas from 0, and increment by one for each term attached to a
+      // node.
+      if (!isset($deltas[$field_name])) {
+        $deltas[$field_name] = 0;
+      }
+
+      if (isset($values)) {
+
+        // If the last inserted revision_id is the same as the current record,
+        // use the previous deltas to calculate the next delta.
+        if ($record->vid == $values[2]) {
+
+          // For limited cardinality fields, the delta must not be allowed to
+          // exceed the cardinality during the update. So ensure that the
+          // delta about to be inserted is within this limit.
+          // @see field_default_validate().
+          if ($field['cardinality'] != FIELD_CARDINALITY_UNLIMITED && ($deltas[$field_name] + 1) > $field['cardinality']) {
+
+            // For excess values of a single-term vocabulary, switch over to
+            // the overflow field.
+            $field_name = 'taxonomyextra';
+            $field = $field_info[$field_name];
+            if (!isset($deltas[$field_name])) {
+              $deltas[$field_name] = 0;
+            }
+          }
+        }
+        else {
+
+          // When the record is a new revision, empty the deltas array.
+          $deltas = array($field_name => 0);
+        }
+      }
+
+      // Table and column found in the field's storage details. During upgrades,
+      // it's always SQL.
+      $table_name = "field_data_{$field_name}";
+      $revision_name = "field_revision_{$field_name}";
+      $value_column = $field_name . '_tid';
+
+      // Column names and values in field storage are the same for current and
+      // revision.
+      $columns = array('entity_type', 'entity_id', 'revision_id', 'bundle', 'language', 'delta', $value_column);
+      $values = array('node', $record->nid, $record->vid, $record->type, LANGUAGE_NONE, $deltas[$field_name]++, $record->tid);
+
+      // Insert rows into the revision table.
+      db_insert($revision_name)->fields($columns)->values($values)->execute();
+
+      // is_current column is a node ID if this revision is also current.
+      if ($record->is_current) {
+        db_insert($table_name)->fields($columns)->values($values)->execute();
+
+        // Update the {taxonomy_index} table.
+        db_insert('taxonomy_index')
+          ->fields(array('nid', 'tid', 'sticky', 'created',))
+          ->values(array($record->nid, $record->tid, $record->sticky, $record->created))
+          ->execute();
+      }
+    }
+
+    // Store the set of inserted values and the current revision's deltas in the
+    // sandbox.
+    $sandbox['cursor'] = array(
+      'values' => $values,
+      'deltas' => $deltas,
+    );
+    $sandbox['last'] += $batch;
+  }
+
+  if ($sandbox['count'] < $sandbox['total']) {
+    $sandbox['#finished'] = FALSE;
+  }
+  else {
+    db_drop_table('taxonomy_vocabulary_node_type');
+    db_drop_table('taxonomy_term_node');
+
+    // If there are no vocabs, we're done.
+    $sandbox['#finished'] = TRUE;
+
+    // Determine necessity of taxonomyextras field.
+    $field = $field_info['taxonomyextra'];
+    $revision_name = 'field_revision_' . $field['field_name'];
+    $node_types = db_select($revision_name)->distinct()->fields($revision_name, array('bundle'))
+      ->execute()->fetchCol();
+
+    if (empty($node_types)) {
+      // Delete the overflow field if there are no rows in the revision table.
+      _update_7000_field_delete_field('taxonomyextra');
+    }
+    else {
+      // Remove instances which are not actually used.
+      $bundles = db_query('SELECT bundle FROM {field_config_instance} WHERE field_name = :field_name', array(':field_name' => 'taxonomyextra'))->fetchCol();
+      $bundles = array_diff($bundles, $node_types);
+      foreach ($bundles as $bundle) {
+        _update_7000_field_delete_instance('taxonomyextra', 'node', $bundle);
+      }
+    }
+  }
+}
+
+/**
+ * Add {taxonomy_term_data}.format column.
+ */
+function taxonomy_update_7006() {
+  db_add_field('taxonomy_term_data', 'format', array(
+    'type' => 'int',
+    'unsigned' => TRUE,
+    'not null' => FALSE,
+    'description' => 'The {filter_format}.format of the description.',
+  ));
+}
+
+/**
+ * Add index on {taxonomy_term_data}.name column to speed up taxonomy_get_term_by_name().
+ */
+function taxonomy_update_7007() {
+  db_add_index('taxonomy_term_data', 'name', array('name'));
+}
+
+/**
+ * Change the weight columns to normal int.
+ */
+function taxonomy_update_7008() {
+  db_drop_index('taxonomy_term_data', 'taxonomy_tree');
+  db_change_field('taxonomy_term_data', 'weight', 'weight', array(
+    'type' => 'int',
+    'not null' => TRUE,
+    'default' => 0,
+    'description' => 'The weight of this term in relation to other terms.',
+  ), array(
+    'indexes' => array(
+       'taxonomy_tree' => array('vid', 'weight', 'name'),
+    ),
+  ));
+
+  db_drop_index('taxonomy_vocabulary', 'list');
+  db_change_field('taxonomy_vocabulary', 'weight', 'weight', array(
+    'type' => 'int',
+    'not null' => TRUE,
+    'default' => 0,
+    'description' => 'The weight of this vocabulary in relation to other vocabularies.',
+  ), array(
+    'indexes' => array(
+      'list' => array('weight', 'name'),
+    ),
+  ));
+}
+
+/**
+ * Change {taxonomy_term_data}.format into varchar.
+ */
+function taxonomy_update_7009() {
+  db_change_field('taxonomy_term_data', 'format', 'format', array(
+    'type' => 'varchar',
+    'length' => 255,
+    'not null' => FALSE,
+    'description' => 'The {filter_format}.format of the description.',
+  ));
+}
+
+/**
+ * Change {taxonomy_index}.created to support signed int.
+*/
+function taxonomy_update_7010() {
+  db_change_field('taxonomy_index', 'created', 'created', array(
+    'description' => 'The Unix timestamp when the node was created.',
+    'type' => 'int',
+    'unsigned' => FALSE,
+    'not null' => TRUE,
+    'default'=> 0,
+  ));
+}
+
diff --git a/modules/taxonomy/taxonomy.module b/modules/taxonomy/taxonomy.module
index d14a169..c171c06 100644
--- a/modules/taxonomy/taxonomy.module
+++ b/modules/taxonomy/taxonomy.module
@@ -682,8 +682,8 @@ function taxonomy_term_view($term, $view_mode = 'full', $langcode = NULL) {
     $langcode = $GLOBALS['language_content']->language;
   }
 
-  field_attach_prepare_view('taxonomy_term', array($term->tid => $term), $view_mode);
-  entity_prepare_view('taxonomy_term', array($term->tid => $term));
+  field_attach_prepare_view('taxonomy_term', array($term->tid => $term), $view_mode, $langcode);
+  entity_prepare_view('taxonomy_term', array($term->tid => $term), $langcode);
 
   $build = array(
     '#theme' => 'taxonomy_term',
@@ -694,12 +694,15 @@ function taxonomy_term_view($term, $view_mode = 'full', $langcode = NULL) {
 
   $build += field_attach_view('taxonomy_term', $term, $view_mode, $langcode);
 
-  $build['description'] = array(
-    '#markup' => check_markup($term->description, $term->format, '', TRUE),
-    '#weight' => 0,
-    '#prefix' => '<div class="taxonomy-term-description">',
-    '#suffix' => '</div>',
-  );
+  // Add term description if the term has one.
+  if (!empty($term->description)) {
+    $build['description'] = array(
+      '#markup' => check_markup($term->description, $term->format, '', TRUE),
+      '#weight' => 0,
+      '#prefix' => '<div class="taxonomy-term-description">',
+      '#suffix' => '</div>',
+    );
+  }
 
   $build['#attached']['css'][] = drupal_get_path('module', 'taxonomy') . '/taxonomy.css';
 
@@ -727,6 +730,7 @@ function template_preprocess_taxonomy_term(&$variables) {
   $variables = array_merge((array) $term, $variables);
 
   // Helpful $content variable for templates.
+  $variables['content'] = array();
   foreach (element_children($variables['elements']) as $key) {
     $variables['content'][$key] = $variables['elements'][$key];
   }
@@ -1088,7 +1092,8 @@ class TaxonomyVocabularyController extends DrupalDefaultEntityController {
  *   this function.
  *
  * @return
- *   An array of term objects, indexed by tid.
+ *   An array of term objects, indexed by tid. When no results are found, an
+ *   empty array is returned.
  *
  * @todo Remove $conditions in Drupal 8.
  */
@@ -1312,7 +1317,7 @@ function taxonomy_field_validate($entity_type, $entity, $field, $instance, $lang
       if (!$validate) {
         $errors[$field['field_name']][$langcode][$delta][] = array(
           'error' => 'taxonomy_term_reference_illegal_value',
-          'message' => t('%name: illegal value.', array('%name' => t($instance['label']))),
+          'message' => t('%name: illegal value.', array('%name' => $instance['label'])),
         );
       }
     }
diff --git a/modules/taxonomy/taxonomy.pages.inc b/modules/taxonomy/taxonomy.pages.inc
index 25cf642..3aed290 100644
--- a/modules/taxonomy/taxonomy.pages.inc
+++ b/modules/taxonomy/taxonomy.pages.inc
@@ -31,14 +31,12 @@ function taxonomy_term_page($term) {
   drupal_add_feed('taxonomy/term/' . $term->tid . '/feed', 'RSS - ' . $term->name);
 
   $build = array();
-  // Add term heading if the term has a description
-  if (!empty($term->description)) {
-    $build['term_heading'] = array(
-      '#prefix' => '<div class="term-listing-heading">',
-      '#suffix' => '</div>',
-      'term' => taxonomy_term_view($term, 'full'),
-    );
-  }
+
+  $build['term_heading'] = array(
+    '#prefix' => '<div class="term-listing-heading">',
+    '#suffix' => '</div>',
+    'term' => taxonomy_term_view($term, 'full'),
+  );
 
   if ($nids = taxonomy_select_nodes($term->tid, TRUE, variable_get('default_nodes_main', 10))) {
     $nodes = node_load_multiple($nids);
diff --git a/modules/taxonomy/taxonomy.test b/modules/taxonomy/taxonomy.test
index a6ac332..1fd47f5 100644
--- a/modules/taxonomy/taxonomy.test
+++ b/modules/taxonomy/taxonomy.test
@@ -648,12 +648,12 @@ class TaxonomyTermTestCase extends TaxonomyWebTestCase {
     $this->assertText($edit['description[value]'], t('The randomly generated term description is present.'));
 
     // Did this page request display a 'term-listing-heading'?
-    $this->assertPattern('|class="term-listing-heading"|', 'Term page displayed the term description element.');
+    $this->assertPattern('|class="taxonomy-term-description"|', 'Term page displayed the term description element.');
     // Check that it does NOT show a description when description is blank.
     $term->description = '';
     taxonomy_term_save($term);
     $this->drupalGet('taxonomy/term/' . $term->tid);
-    $this->assertNoPattern('|class="term-listing-heading"|', 'Term page did not display the term description when description was blank.');
+    $this->assertNoPattern('|class="taxonomy-term-description"|', 'Term page did not display the term description when description was blank.');
 
     // Check that the term feed page is working.
     $this->drupalGet('taxonomy/term/' . $term->tid . '/feed');
diff --git a/modules/toolbar/toolbar.info b/modules/toolbar/toolbar.info
index 758dc9c..2c5abbb 100644
--- a/modules/toolbar/toolbar.info
+++ b/modules/toolbar/toolbar.info
@@ -1,5 +1,5 @@
 name = Toolbar
 description = Provides a toolbar that shows the top-level administration menu items and links from other modules.
-core = 8.x
+core = 7.x
 package = Core
 version = VERSION
diff --git a/modules/tracker/tracker.info b/modules/tracker/tracker.info
index a765504..1d7c65b 100644
--- a/modules/tracker/tracker.info
+++ b/modules/tracker/tracker.info
@@ -3,5 +3,5 @@ description = Enables tracking of recent content for users.
 dependencies[] = comment
 package = Core
 version = VERSION
-core = 8.x
+core = 7.x
 files[] = tracker.test
diff --git a/modules/tracker/tracker.install b/modules/tracker/tracker.install
index cfe8dc7..244f537 100644
--- a/modules/tracker/tracker.install
+++ b/modules/tracker/tracker.install
@@ -111,3 +111,110 @@ function tracker_schema() {
 
   return $schema;
 }
+
+/**
+ * @addtogroup updates-6.x-to-7.x
+ * @{
+ */
+
+/**
+ * Create new tracker_node and tracker_user tables.
+ */
+function tracker_update_7000() {
+  $schema['tracker_node'] = array(
+    'description' => 'Tracks when nodes were last changed or commented on',
+    'fields' => array(
+      'nid' => array(
+        'description' => 'The {node}.nid this record tracks.',
+        'type' => 'int',
+        'unsigned' => TRUE,
+        'not null' => TRUE,
+        'default' => 0,
+      ),
+      'published' => array(
+        'description' => 'Boolean indicating whether the node is published.',
+        'type' => 'int',
+        'not null' => FALSE,
+        'default' => 0,
+        'size' => 'tiny',
+      ),
+      'changed' => array(
+        'description' => 'The Unix timestamp when the node was most recently saved or commented on.',
+        'type' => 'int',
+        'unsigned' => TRUE,
+        'not null' => TRUE,
+        'default' => 0,
+      ),
+    ),
+    'indexes' => array(
+      'tracker' => array('published', 'changed'),
+    ),
+    'primary key' => array('nid'),
+    'foreign keys' => array(
+      'tracked_node' => array(
+        'table' => 'node',
+        'columns' => array('nid' => 'nid'),
+      ),
+    ),
+  );
+
+  $schema['tracker_user'] = array(
+    'description' => 'Tracks when nodes were last changed or commented on, for each user that authored the node or one of its comments.',
+    'fields' => array(
+      'nid' => array(
+        'description' => 'The {node}.nid this record tracks.',
+        'type' => 'int',
+        'unsigned' => TRUE,
+        'not null' => TRUE,
+        'default' => 0,
+      ),
+      'uid' => array(
+        'description' => 'The {users}.uid of the node author or commenter.',
+        'type' => 'int',
+        'not null' => TRUE,
+        'default' => 0,
+      ),
+      'published' => array(
+        'description' => 'Boolean indicating whether the node is published.',
+        'type' => 'int',
+        'not null' => FALSE,
+        'default' => 0,
+        'size' => 'tiny',
+      ),
+      'changed' => array(
+        'description' => 'The Unix timestamp when the node was most recently saved or commented on.',
+        'type' => 'int',
+        'unsigned' => TRUE,
+        'not null' => TRUE,
+        'default' => 0,
+      ),
+    ),
+    'indexes' => array(
+      'tracker' => array('uid', 'published', 'changed'),
+    ),
+    'primary key' => array('nid', 'uid'),
+    'foreign keys' => array(
+      'tracked_node' => array(
+        'table' => 'node',
+        'columns' => array('nid' => 'nid'),
+      ),
+      'tracked_user' => array(
+        'table' => 'users',
+        'columns' => array('uid' => 'uid'),
+      ),
+    ),
+  );
+
+  foreach ($schema as $name => $table) {
+    db_create_table($name, $table);
+  }
+
+  $max_nid = db_query('SELECT MAX(nid) FROM {node}')->fetchField();
+  if ($max_nid != 0) {
+    variable_set('tracker_index_nid', $max_nid);
+  }
+}
+
+/**
+ * @} End of "addtogroup updates-6.x-to-7.x"
+ */
diff --git a/modules/translation/tests/translation_test.info b/modules/translation/tests/translation_test.info
index 5b42c5a..ee1d7ec 100644
--- a/modules/translation/tests/translation_test.info
+++ b/modules/translation/tests/translation_test.info
@@ -1,6 +1,6 @@
 name = "Content Translation Test"
 description = "Support module for the content translation tests."
-core = 8.x
+core = 7.x
 package = Testing
 version = VERSION
 hidden = TRUE
diff --git a/modules/translation/translation.info b/modules/translation/translation.info
index ab6feec..6c652a1 100644
--- a/modules/translation/translation.info
+++ b/modules/translation/translation.info
@@ -3,5 +3,5 @@ description = Allows content to be translated into different languages.
 dependencies[] = locale
 package = Core
 version = VERSION
-core = 8.x
+core = 7.x
 files[] = translation.test
diff --git a/modules/translation/translation.module b/modules/translation/translation.module
index 9bb0b43..697929f 100644
--- a/modules/translation/translation.module
+++ b/modules/translation/translation.module
@@ -113,7 +113,7 @@ function translation_form_node_type_form_alter(&$form, &$form_state) {
   // Add translation option to content type form.
   $form['workflow']['language_content_type']['#options'][TRANSLATION_ENABLED] = t('Enabled, with translation');
   // Description based on text from locale.module.
-  $form['workflow']['language_content_type']['#description'] = t('Enable multilingual support for this content type. If enabled, a language selection field will be added to the editing form, allowing you to select from one of the <a href="!languages">enabled languages</a>. You can also turn on translation for this content type, which lets you have content translated to any of the enabled languages. If disabled, new posts are saved with the default language. Existing content will not be affected by changing this option.', array('!languages' => url('admin/config/regional/language')));
+  $form['workflow']['language_content_type']['#description'] = t('Enable multilingual support for this content type. If enabled, a language selection field will be added to the editing form, allowing you to select from one of the <a href="!languages">enabled languages</a>. You can also turn on translation for this content type, which lets you have content translated to any of the installed languages. If disabled, new posts are saved with the default language. Existing content will not be affected by changing this option.', array('!languages' => url('admin/config/regional/language')));
 }
 
 /**
@@ -133,7 +133,7 @@ function translation_form_node_form_alter(&$form, &$form_state) {
     // might need to distinguish between enabled and disabled languages, hence
     // we divide them in two option groups.
     if ($translator_widget) {
-      $options = array();
+      $options = array($groups[1] => array(LANGUAGE_NONE => t('Language neutral')));
       $language_list = locale_language_list('name', TRUE);
       foreach (array(1, 0) as $status) {
         $group = $groups[$status];
@@ -502,8 +502,23 @@ function translation_path_get_translations($path) {
  */
 function translation_language_switch_links_alter(array &$links, $type, $path) {
   $language_type = variable_get('translation_language_type', LANGUAGE_TYPE_INTERFACE);
-  if ($type == $language_type && preg_match("!^node/(\d+)(/.+|)!", $path, $matches) && ($node = node_load((int) $matches[1]))) {
-    $translations = $node->tnid ? translation_node_get_translations($node->tnid) : array($node->language => $node);
+
+  if ($type == $language_type && preg_match("!^node/(\d+)(/.+|)!", $path, $matches)) {
+    $node = node_load((int) $matches[1]);
+
+    if (empty($node->tnid)) {
+      // If the node cannot be found nothing needs to be done. If it does not
+      // have translations it might be a language neutral node, in which case we
+      // must leave the language switch links unaltered. This is true also for
+      // nodes not having translation support enabled.
+      if (empty($node) || $node->language == LANGUAGE_NONE || !translation_supported_type($node->type)) {
+        return;
+      }
+      $translations = array($node->language => $node);
+    }
+    else {
+      $translations = translation_node_get_translations($node->tnid);
+    }
 
     foreach ($links as $langcode => $link) {
       if (isset($translations[$langcode]) && $translations[$langcode]->status) {
diff --git a/modules/translation/translation.pages.inc b/modules/translation/translation.pages.inc
index 102d1b8..7e4f0af 100644
--- a/modules/translation/translation.pages.inc
+++ b/modules/translation/translation.pages.inc
@@ -37,12 +37,12 @@ function translation_node_overview($node) {
       $translation_node = node_load($translations[$langcode]->nid);
       $path = 'node/' . $translation_node->nid;
       $links = language_negotiation_get_switch_links($type, $path);
-      $title = empty($links->links[$langcode]) ? l($translation_node->title, $path) : l($translation_node->title, $links->links[$langcode]['href'], $links->links[$langcode]);
+      $title = empty($links->links[$langcode]['href']) ? l($translation_node->title, $path) : l($translation_node->title, $links->links[$langcode]['href'], $links->links[$langcode]);
       if (node_access('update', $translation_node)) {
         $text = t('edit');
         $path = 'node/' . $translation_node->nid . '/edit';
         $links = language_negotiation_get_switch_links($type, $path);
-        $options[] = empty($links->links[$langcode]) ? l($text, $path) : l($text, $links->links[$langcode]['href'], $links->links[$langcode]);
+        $options[] = empty($links->links[$langcode]['href']) ? l($text, $path) : l($text, $links->links[$langcode]['href'], $links->links[$langcode]);
       }
       $status = $translation_node->status ? t('Published') : t('Not published');
       $status .= $translation_node->translate ? ' - <span class="marker">' . t('outdated') . '</span>' : '';
@@ -58,7 +58,7 @@ function translation_node_overview($node) {
         $path = 'node/add/' . str_replace('_', '-', $node->type);
         $links = language_negotiation_get_switch_links($type, $path);
         $query = array('query' => array('translation' => $node->nid, 'target' => $langcode));
-        $options[] = empty($links->links[$langcode]) ? l($text, $path, $query) : l($text, $links->links[$langcode]['href'], array_merge_recursive($links->links[$langcode], $query));
+        $options[] = empty($links->links[$langcode]['href']) ? l($text, $path, $query) : l($text, $links->links[$langcode]['href'], array_merge_recursive($links->links[$langcode], $query));
       }
       $status = t('Not translated');
     }
diff --git a/modules/translation/translation.test b/modules/translation/translation.test
index f578750..54b53d9 100644
--- a/modules/translation/translation.test
+++ b/modules/translation/translation.test
@@ -20,7 +20,7 @@ class TranslationTestCase extends DrupalWebTestCase {
     parent::setUp('locale', 'translation', 'translation_test');
 
     // Setup users.
-    $this->admin_user = $this->drupalCreateUser(array('bypass node access', 'administer nodes', 'administer languages', 'administer content types', 'administer blocks', 'access administration pages'));
+    $this->admin_user = $this->drupalCreateUser(array('bypass node access', 'administer nodes', 'administer languages', 'administer content types', 'administer blocks', 'access administration pages', 'translate content'));
     $this->translator = $this->drupalCreateUser(array('create page content', 'edit own page content', 'translate content'));
 
     $this->drupalLogin($this->admin_user);
@@ -67,6 +67,14 @@ class TranslationTestCase extends DrupalWebTestCase {
     $node_body =  $this->randomName();
     $node = $this->createPage($node_title, $node_body, 'en');
 
+    // Unpublish the original node to check that this has no impact on the
+    // translation overview page, publish it again afterwards.
+    $this->drupalLogin($this->admin_user);
+    $this->drupalPost('node/' . $node->nid . '/edit', array('status' => FALSE), t('Save'));
+    $this->drupalGet('node/' . $node->nid . '/translate');
+    $this->drupalPost('node/' . $node->nid . '/edit', array('status' => NODE_PUBLISHED), t('Save'));
+    $this->drupalLogin($this->translator);
+
     // Check that the "add translation" link uses a localized path.
     $languages = language_list();
     $this->drupalGet('node/' . $node->nid . '/translate');
@@ -125,6 +133,13 @@ class TranslationTestCase extends DrupalWebTestCase {
     $translation_it = $this->createTranslation($node, $this->randomName(), $this->randomName(), 'it');
     $this->assertRaw($translation_it->body['it'][0]['value'], t('Content created in Italian (disabled).'));
 
+    // Confirm that language neutral is an option for translators when there are
+    // disabled languages.
+    $this->drupalGet('node/add/page');
+    $this->assertFieldByXPath('//select[@name="language"]//option', LANGUAGE_NONE, t('Language neutral is available in language selection with disabled languages.'));
+    $node2 = $this->createPage($this->randomName(), $this->randomName(), LANGUAGE_NONE);
+    $this->assertRaw($node2->body[LANGUAGE_NONE][0]['value'], t('Language neutral content created with disabled languages available.'));
+
     // Leave just one language enabled and check that the translation overview
     // page is still accessible.
     $this->drupalLogin($this->admin_user);
@@ -204,6 +219,38 @@ class TranslationTestCase extends DrupalWebTestCase {
     $this->assertLanguageSwitchLinks($node, $node, TRUE, $type);
     $this->assertLanguageSwitchLinks($node, $translation_es, TRUE, $type);
     $this->assertLanguageSwitchLinks($node, $translation_it, TRUE, $type);
+
+    // Create a language neutral node and check that the language switcher is
+    // left untouched.
+    $node2 = $this->createPage($this->randomName(), $this->randomName(), LANGUAGE_NONE);
+    $node2_en = (object) array('nid' => $node2->nid, 'language' => 'en');
+    $node2_es = (object) array('nid' => $node2->nid, 'language' => 'es');
+    $node2_it = (object) array('nid' => $node2->nid, 'language' => 'it');
+    $this->assertLanguageSwitchLinks($node2_en, $node2_en, TRUE, $type);
+    $this->assertLanguageSwitchLinks($node2_en, $node2_es, TRUE, $type);
+    $this->assertLanguageSwitchLinks($node2_en, $node2_it, TRUE, $type);
+
+    // Disable translation support to check that the language switcher is left
+    // untouched only for new nodes.
+    $this->drupalLogin($this->admin_user);
+    $edit = array('language_content_type' => 0);
+    $this->drupalPost('admin/structure/types/manage/page', $edit, t('Save content type'));
+    $this->drupalLogin($this->translator);
+
+    // Existing translations trigger alterations even if translation support is
+    // disabled.
+    $this->assertLanguageSwitchLinks($node, $node, TRUE, $type);
+    $this->assertLanguageSwitchLinks($node, $translation_es, TRUE, $type);
+    $this->assertLanguageSwitchLinks($node, $translation_it, TRUE, $type);
+
+    // Check that new nodes with a language assigned do not trigger language
+    // switcher alterations when translation support is disabled.
+    $node = $this->createPage($this->randomName(), $this->randomName());
+    $node_es = (object) array('nid' => $node->nid, 'language' => 'es');
+    $node_it = (object) array('nid' => $node->nid, 'language' => 'it');
+    $this->assertLanguageSwitchLinks($node, $node, TRUE, $type);
+    $this->assertLanguageSwitchLinks($node, $node_es, TRUE, $type);
+    $this->assertLanguageSwitchLinks($node, $node_it, TRUE, $type);
   }
 
   /**
@@ -268,12 +315,14 @@ class TranslationTestCase extends DrupalWebTestCase {
    * @param
    *   $language Language code.
    */
-  function createPage($title, $body, $language) {
+  function createPage($title, $body, $language = NULL) {
     $edit = array();
     $langcode = LANGUAGE_NONE;
     $edit["title"] = $title;
     $edit["body[$langcode][0][value]"] = $body;
-    $edit['language'] = $language;
+    if (!empty($language)) {
+      $edit['language'] = $language;
+    }
     $this->drupalPost('node/add/page', $edit, t('Save'));
     $this->assertRaw(t('Basic page %title has been created.', array('%title' => $title)), t('Basic page created.'));
 
diff --git a/modules/trigger/tests/trigger_test.info b/modules/trigger/tests/trigger_test.info
index 8b25cd9..bd94331 100644
--- a/modules/trigger/tests/trigger_test.info
+++ b/modules/trigger/tests/trigger_test.info
@@ -1,5 +1,5 @@
 name = "Trigger Test"
 description = "Support module for Trigger tests."
 package = Testing
-core = 8.x
+core = 7.x
 hidden = TRUE
diff --git a/modules/trigger/trigger.info b/modules/trigger/trigger.info
index f47604d..76102a2 100644
--- a/modules/trigger/trigger.info
+++ b/modules/trigger/trigger.info
@@ -2,6 +2,6 @@ name = Trigger
 description = Enables actions to be fired on certain system events, such as when new content is created.
 package = Core
 version = VERSION
-core = 8.x
+core = 7.x
 files[] = trigger.test
 configure = admin/structure/trigger
diff --git a/modules/trigger/trigger.install b/modules/trigger/trigger.install
index 7dded60..9a172a2 100644
--- a/modules/trigger/trigger.install
+++ b/modules/trigger/trigger.install
@@ -51,3 +51,20 @@ function trigger_install() {
   // Do initial synchronization of actions in code and the database.
   actions_synchronize();
 }
+
+/**
+ * Adds operation names to the hook names and drops the "op" field.
+ */
+function trigger_update_7000() {
+  $result = db_query("SELECT hook, op, aid FROM {trigger_assignments} WHERE op <> ''");
+
+  foreach ($result as $record) {
+    db_update('trigger_assignments')
+      ->fields(array('hook' => $record->hook . '_' . $record->op))
+      ->condition('hook', $record->hook)
+      ->condition('op', $record->op)
+      ->condition('aid', $record->aid)
+      ->execute();
+  }
+  db_drop_field('trigger_assignments', 'op');
+}
diff --git a/modules/update/tests/aaa_update_test.1_0.xml b/modules/update/tests/aaa_update_test.1_0.xml
index 5fc0d44..a168453 100644
--- a/modules/update/tests/aaa_update_test.1_0.xml
+++ b/modules/update/tests/aaa_update_test.1_0.xml
@@ -3,7 +3,7 @@
 <title>AAA Update test</title>
 <short_name>aaa_update_test</short_name>
 <dc:creator>Drupal</dc:creator>
-<api_version>8.x</api_version>
+<api_version>7.x</api_version>
 <recommended_major>1</recommended_major>
 <supported_majors>1</supported_majors>
 <default_major>1</default_major>
@@ -14,14 +14,14 @@
   </terms>
 <releases>
  <release>
-  <name>aaa_update_test 8.x-1.0</name>
-  <version>8.x-1.0</version>
+  <name>aaa_update_test 7.x-1.0</name>
+  <version>7.x-1.0</version>
   <tag>DRUPAL-7--1-0</tag>
   <version_major>1</version_major>
   <version_patch>0</version_patch>
   <status>published</status>
   <release_link>http://example.com/aaa_update_test-7-x-1-0-release</release_link>
-  <download_link>http://example.com/aaa_update_test-8.x-1.0.tar.gz</download_link>
+  <download_link>http://example.com/aaa_update_test-7.x-1.0.tar.gz</download_link>
   <date>1250424521</date>
   <mdhash>b966255555d9c9b86d480ca08cfaa98e</mdhash>
   <filesize>1073741824</filesize>
diff --git a/modules/update/tests/aaa_update_test.info b/modules/update/tests/aaa_update_test.info
index 6064678..a283720 100644
--- a/modules/update/tests/aaa_update_test.info
+++ b/modules/update/tests/aaa_update_test.info
@@ -1,5 +1,5 @@
 name = AAA Update test
 description = Support module for update module testing.
 package = Testing
-core = 8.x
+core = 7.x
 hidden = TRUE
diff --git a/modules/update/tests/aaa_update_test.tar.gz b/modules/update/tests/aaa_update_test.tar.gz
index 34f96c8..22c9719 100644
Binary files a/modules/update/tests/aaa_update_test.tar.gz and b/modules/update/tests/aaa_update_test.tar.gz differ
diff --git a/modules/update/tests/bbb_update_test.1_0.xml b/modules/update/tests/bbb_update_test.1_0.xml
index 8d705b5..bfdf196 100644
--- a/modules/update/tests/bbb_update_test.1_0.xml
+++ b/modules/update/tests/bbb_update_test.1_0.xml
@@ -3,7 +3,7 @@
 <title>BBB Update test</title>
 <short_name>bbb_update_test</short_name>
 <dc:creator>Drupal</dc:creator>
-<api_version>8.x</api_version>
+<api_version>7.x</api_version>
 <recommended_major>1</recommended_major>
 <supported_majors>1</supported_majors>
 <default_major>1</default_major>
@@ -14,14 +14,14 @@
   </terms>
 <releases>
  <release>
-  <name>bbb_update_test 8.x-1.0</name>
-  <version>8.x-1.0</version>
+  <name>bbb_update_test 7.x-1.0</name>
+  <version>7.x-1.0</version>
   <tag>DRUPAL-7--1-0</tag>
   <version_major>1</version_major>
   <version_patch>0</version_patch>
   <status>published</status>
   <release_link>http://example.com/bbb_update_test-7-x-1-0-release</release_link>
-  <download_link>http://example.com/bbb_update_test-8.x-1.0.tar.gz</download_link>
+  <download_link>http://example.com/bbb_update_test-7.x-1.0.tar.gz</download_link>
   <date>1250424521</date>
   <mdhash>b966255555d9c9b86d480ca08cfaa98e</mdhash>
   <filesize>1073741824</filesize>
diff --git a/modules/update/tests/bbb_update_test.info b/modules/update/tests/bbb_update_test.info
index 95aacba..75084ae 100644
--- a/modules/update/tests/bbb_update_test.info
+++ b/modules/update/tests/bbb_update_test.info
@@ -1,5 +1,5 @@
 name = BBB Update test
 description = Support module for update module testing.
 package = Testing
-core = 8.x
+core = 7.x
 hidden = TRUE
diff --git a/modules/update/tests/ccc_update_test.1_0.xml b/modules/update/tests/ccc_update_test.1_0.xml
index 82764c2..1b9ba75 100644
--- a/modules/update/tests/ccc_update_test.1_0.xml
+++ b/modules/update/tests/ccc_update_test.1_0.xml
@@ -3,7 +3,7 @@
 <title>CCC Update test</title>
 <short_name>ccc_update_test</short_name>
 <dc:creator>Drupal</dc:creator>
-<api_version>8.x</api_version>
+<api_version>7.x</api_version>
 <recommended_major>1</recommended_major>
 <supported_majors>1</supported_majors>
 <default_major>1</default_major>
@@ -14,14 +14,14 @@
   </terms>
 <releases>
  <release>
-  <name>ccc_update_test 8.x-1.0</name>
-  <version>8.x-1.0</version>
+  <name>ccc_update_test 7.x-1.0</name>
+  <version>7.x-1.0</version>
   <tag>DRUPAL-7--1-0</tag>
   <version_major>1</version_major>
   <version_patch>0</version_patch>
   <status>published</status>
   <release_link>http://example.com/ccc_update_test-7-x-1-0-release</release_link>
-  <download_link>http://example.com/ccc_update_test-8.x-1.0.tar.gz</download_link>
+  <download_link>http://example.com/ccc_update_test-7.x-1.0.tar.gz</download_link>
   <date>1250424521</date>
   <mdhash>b966255555d9c9b86d480ca08cfaa98e</mdhash>
   <filesize>1073741824</filesize>
diff --git a/modules/update/tests/ccc_update_test.info b/modules/update/tests/ccc_update_test.info
index f4df516..0bd4cde 100644
--- a/modules/update/tests/ccc_update_test.info
+++ b/modules/update/tests/ccc_update_test.info
@@ -1,5 +1,5 @@
 name = CCC Update test
 description = Support module for update module testing.
 package = Testing
-core = 8.x
+core = 7.x
 hidden = TRUE
diff --git a/modules/update/tests/drupal.0.xml b/modules/update/tests/drupal.0.xml
index 7e32072..701e11e 100644
--- a/modules/update/tests/drupal.0.xml
+++ b/modules/update/tests/drupal.0.xml
@@ -3,7 +3,7 @@
 <title>Drupal</title>
 <short_name>drupal</short_name>
 <dc:creator>Drupal</dc:creator>
-<api_version>8.x</api_version>
+<api_version>7.x</api_version>
 <recommended_major>7</recommended_major>
 <supported_majors>7</supported_majors>
 <default_major>7</default_major>
diff --git a/modules/update/tests/drupal.1.xml b/modules/update/tests/drupal.1.xml
index c210a5a..de4cfd0 100644
--- a/modules/update/tests/drupal.1.xml
+++ b/modules/update/tests/drupal.1.xml
@@ -3,7 +3,7 @@
 <title>Drupal</title>
 <short_name>drupal</short_name>
 <dc:creator>Drupal</dc:creator>
-<api_version>8.x</api_version>
+<api_version>7.x</api_version>
 <recommended_major>7</recommended_major>
 <supported_majors>7</supported_majors>
 <default_major>7</default_major>
diff --git a/modules/update/tests/drupal.2-sec.xml b/modules/update/tests/drupal.2-sec.xml
index 8018fa2..1e68c8d 100644
--- a/modules/update/tests/drupal.2-sec.xml
+++ b/modules/update/tests/drupal.2-sec.xml
@@ -3,7 +3,7 @@
 <title>Drupal</title>
 <short_name>drupal</short_name>
 <dc:creator>Drupal</dc:creator>
-<api_version>8.x</api_version>
+<api_version>7.x</api_version>
 <recommended_major>7</recommended_major>
 <supported_majors>7</supported_majors>
 <default_major>7</default_major>
diff --git a/modules/update/tests/drupal.dev.xml b/modules/update/tests/drupal.dev.xml
index 4f70789..49dcc3f 100644
--- a/modules/update/tests/drupal.dev.xml
+++ b/modules/update/tests/drupal.dev.xml
@@ -3,7 +3,7 @@
 <title>Drupal</title>
 <short_name>drupal</short_name>
 <dc:creator>Drupal</dc:creator>
-<api_version>8.x</api_version>
+<api_version>7.x</api_version>
 <recommended_major>7</recommended_major>
 <supported_majors>7</supported_majors>
 <default_major>7</default_major>
@@ -31,14 +31,14 @@
   </terms>
  </release>
  <release>
-  <name>Drupal 8.x-dev</name>
-  <version>8.x-dev</version>
+  <name>Drupal 7.x-dev</name>
+  <version>7.x-dev</version>
   <tag>DRUPAL-7</tag>
   <version_major>7</version_major>
   <version_extra>dev</version_extra>
   <status>published</status>
   <release_link>http://example.com/drupal-7-x-dev-release</release_link>
-  <download_link>http://example.com/drupal-8.x-dev.tar.gz</download_link>
+  <download_link>http://example.com/drupal-7.x-dev.tar.gz</download_link>
   <date>1250424581</date>
   <mdhash>b966255555d9c9b86d480ca08cfaa98e</mdhash>
   <filesize>2147483648</filesize>
diff --git a/modules/update/tests/update_test.info b/modules/update/tests/update_test.info
index 708dc97..f68dc9d 100644
--- a/modules/update/tests/update_test.info
+++ b/modules/update/tests/update_test.info
@@ -2,5 +2,5 @@ name = Update test
 description = Support module for update module testing.
 package = Testing
 version = VERSION
-core = 8.x
+core = 7.x
 hidden = TRUE
diff --git a/modules/update/tests/update_test_basetheme.1_1-sec.xml b/modules/update/tests/update_test_basetheme.1_1-sec.xml
index 462558b..5c11c03 100644
--- a/modules/update/tests/update_test_basetheme.1_1-sec.xml
+++ b/modules/update/tests/update_test_basetheme.1_1-sec.xml
@@ -3,7 +3,7 @@
 <title>Update test base theme</title>
 <short_name>update_test_basetheme</short_name>
 <dc:creator>Drupal</dc:creator>
-<api_version>8.x</api_version>
+<api_version>7.x</api_version>
 <recommended_major>1</recommended_major>
 <supported_majors>1</supported_majors>
 <default_major>1</default_major>
@@ -14,14 +14,14 @@
   </terms>
 <releases>
  <release>
-  <name>update_test_basetheme 8.x-1.1</name>
-  <version>8.x-1.1</version>
+  <name>update_test_basetheme 7.x-1.1</name>
+  <version>7.x-1.1</version>
   <tag>DRUPAL-7--1-1</tag>
   <version_major>1</version_major>
   <version_patch>1</version_patch>
   <status>published</status>
   <release_link>http://example.com/update_test_basetheme-7-x-1-1-release</release_link>
-  <download_link>http://example.com/update_test_basetheme-8.x-1.1.tar.gz</download_link>
+  <download_link>http://example.com/update_test_basetheme-7.x-1.1.tar.gz</download_link>
   <date>1250624521</date>
   <mdhash>b966255555d9c9b86d480ca08cfaa98e</mdhash>
   <filesize>1073763241</filesize>
@@ -32,14 +32,14 @@
   </terms>
  </release>
  <release>
-  <name>update_test_basetheme 8.x-1.0</name>
-  <version>8.x-1.0</version>
+  <name>update_test_basetheme 7.x-1.0</name>
+  <version>7.x-1.0</version>
   <tag>DRUPAL-7--1-0</tag>
   <version_major>1</version_major>
   <version_patch>0</version_patch>
   <status>published</status>
   <release_link>http://example.com/update_test_basetheme-7-x-1-0-release</release_link>
-  <download_link>http://example.com/update_test_basetheme-8.x-1.0.tar.gz</download_link>
+  <download_link>http://example.com/update_test_basetheme-7.x-1.0.tar.gz</download_link>
   <date>1250524521</date>
   <mdhash>b966255555d9c9b86d480ca08cfaa98e</mdhash>
   <filesize>1073741824</filesize>
diff --git a/modules/update/tests/update_test_subtheme.1_0.xml b/modules/update/tests/update_test_subtheme.1_0.xml
index c791b7f..5d04ec8 100644
--- a/modules/update/tests/update_test_subtheme.1_0.xml
+++ b/modules/update/tests/update_test_subtheme.1_0.xml
@@ -3,7 +3,7 @@
 <title>Update test subtheme</title>
 <short_name>update_test_subtheme</short_name>
 <dc:creator>Drupal</dc:creator>
-<api_version>8.x</api_version>
+<api_version>7.x</api_version>
 <recommended_major>1</recommended_major>
 <supported_majors>1</supported_majors>
 <default_major>1</default_major>
@@ -14,14 +14,14 @@
   </terms>
 <releases>
  <release>
-  <name>update_test_subtheme 8.x-1.0</name>
-  <version>8.x-1.0</version>
+  <name>update_test_subtheme 7.x-1.0</name>
+  <version>7.x-1.0</version>
   <tag>DRUPAL-7--1-0</tag>
   <version_major>1</version_major>
   <version_patch>0</version_patch>
   <status>published</status>
   <release_link>http://example.com/update_test_subtheme-7-x-1-0-release</release_link>
-  <download_link>http://example.com/update_test_subtheme-8.x-1.0.tar.gz</download_link>
+  <download_link>http://example.com/update_test_subtheme-7.x-1.0.tar.gz</download_link>
   <date>1250524521</date>
   <mdhash>b966255555d9c9b86d480ca08cfaa98e</mdhash>
   <filesize>1073741824</filesize>
diff --git a/modules/update/update.api.php b/modules/update/update.api.php
index 83b93b2..87f95ca 100644
--- a/modules/update/update.api.php
+++ b/modules/update/update.api.php
@@ -48,8 +48,8 @@ function hook_update_projects_alter(&$projects) {
     'info' => array(
       'name' => 'Some disabled module',
       'description' => 'A module not enabled on the site that you want to see in the available updates report.',
-      'version' => '8.x-1.0',
-      'core' => '8.x',
+      'version' => '7.x-1.0',
+      'core' => '7.x',
       // The maximum file change time (the "ctime" returned by the filectime()
       // PHP method) for all of the .info files included in this project.
       '_info_file_ctime' => 1243888165,
diff --git a/modules/update/update.authorize.inc b/modules/update/update.authorize.inc
index f4be44e..c9b76dd 100644
--- a/modules/update/update.authorize.inc
+++ b/modules/update/update.authorize.inc
@@ -101,7 +101,7 @@ function update_authorize_run_install($filetransfer, $project, $updater_name, $l
  *   already been downloaded and extracted into.
  * @param FileTransfer $filetransfer
  *   The FileTransfer object to use for performing this operation.
- * @param array &$context
+ * @param array $context
  *   Reference to an array used for BatchAPI storage.
  */
 function update_authorize_batch_copy_project($project, $updater_name, $local_url, $filetransfer, &$context) {
diff --git a/modules/update/update.info b/modules/update/update.info
index 83b9857..250cae1 100644
--- a/modules/update/update.info
+++ b/modules/update/update.info
@@ -2,6 +2,6 @@ name = Update manager
 description = Checks for available updates, and can securely install or update modules and themes via a web interface.
 version = VERSION
 package = Core
-core = 8.x
+core = 7.x
 files[] = update.test
 configure = admin/reports/updates/settings
diff --git a/modules/update/update.install b/modules/update/update.install
index f0d5499..70fb6c3 100644
--- a/modules/update/update.install
+++ b/modules/update/update.install
@@ -157,3 +157,34 @@ function _update_requirement_check($project, $type) {
   $requirement['value'] = l($requirement_label, update_manager_access() ? 'admin/reports/updates/update' : 'admin/reports/updates');
   return $requirement;
 }
+
+/**
+ * @addtogroup updates-6.x-to-7.x
+ * @{
+ */
+
+/**
+ * Create a queue to store tasks for requests to fetch available update data.
+ */
+function update_update_7000() {
+  module_load_include('inc', 'system', 'system.queue');
+  $queue = DrupalQueue::get('update_fetch_tasks');
+  $queue->createQueue();
+}
+
+/**
+ * Recreates cache_update table.
+ *
+ * Converts fields that hold serialized variables from text to blob.
+ * Removes 'headers' column.
+ */
+function update_update_7001() {
+  $schema = system_schema_cache_7054();
+
+  db_drop_table('cache_update');
+  db_create_table('cache_update', $schema);
+}
+
+/**
+ * @} End of "addtogroup updates-6.x-to-7.x"
+ */
diff --git a/modules/update/update.manager.inc b/modules/update/update.manager.inc
index b0def17..35b2929 100644
--- a/modules/update/update.manager.inc
+++ b/modules/update/update.manager.inc
@@ -731,26 +731,6 @@ function update_manager_install_form_submit($form, &$form_state) {
  */
 
 /**
- * Return the directory where update archive files should be extracted.
- *
- * If the directory does not already exist, attempt to create it.
- *
- * @return
- *   The full path to the temporary directory where update file archives
- *   should be extracted.
- */
-function _update_manager_extract_directory() {
-  $directory = &drupal_static(__FUNCTION__, '');
-  if (empty($directory)) {
-    $directory = 'temporary://update-extraction';
-    if (!file_exists($directory)) {
-      mkdir($directory);
-    }
-  }
-  return $directory;
-}
-
-/**
  * Unpack a downloaded archive file.
  *
  * @param string $project
@@ -829,13 +809,9 @@ function update_manager_file_get($url) {
   }
 
   // Check the cache and download the file if needed.
-  $cache_directory = 'temporary://update-cache';
+  $cache_directory = _update_manager_cache_directory();
   $local = $cache_directory . '/' . basename($parsed_url['path']);
 
-  if (!file_exists($cache_directory)) {
-    mkdir($cache_directory);
-  }
-
   if (!file_exists($local) || update_delete_file_if_stale($local)) {
     return system_retrieve_file($url, $local, FALSE, FILE_EXISTS_REPLACE);
   }
@@ -855,7 +831,7 @@ function update_manager_file_get($url) {
  *   The short name of the project to download.
  * @param string $url
  *   The URL to download a specific project release archive file.
- * @param array &$context
+ * @param array $context
  *   Reference to an array used for BatchAPI storage.
  *
  * @see update_manager_download_page()
diff --git a/modules/update/update.module b/modules/update/update.module
index 1008964..a2d705a 100644
--- a/modules/update/update.module
+++ b/modules/update/update.module
@@ -293,6 +293,7 @@ function update_cron() {
     // the cached data for all projects, attempt to re-fetch, and trigger any
     // configured notifications about the new status.
     update_refresh();
+    update_fetch_data();
     _update_cron_notify();
   }
   else {
@@ -857,13 +858,70 @@ function update_flush_caches() {
  */
 
 /**
+ * Return a short unique identifier for this Drupal installation.
+ *
+ * @return
+ *   An eight character string uniquely identifying this Drupal installation.
+ */
+function _update_manager_unique_identifier() {
+  $id = &drupal_static(__FUNCTION__, '');
+  if (empty($id)) {
+    $id = substr(hash('sha256', drupal_get_hash_salt()), 0, 8);
+  }
+  return $id;
+}
+
+/**
+ * Return the directory where update archive files should be extracted.
+ *
+ * @param $create
+ *   If TRUE, attempt to create the directory if it does not already exist.
+ *
+ * @return
+ *   The full path to the temporary directory where update file archives
+ *   should be extracted.
+ */
+function _update_manager_extract_directory($create = TRUE) {
+  $directory = &drupal_static(__FUNCTION__, '');
+  if (empty($directory)) {
+    $directory = 'temporary://update-extraction-' . _update_manager_unique_identifier();
+    if ($create && !file_exists($directory)) {
+      mkdir($directory);
+    }
+  }
+  return $directory;
+}
+
+/**
+ * Return the directory where update archive files should be cached.
+ *
+ * @param $create
+ *   If TRUE, attempt to create the directory if it does not already exist.
+ *
+ * @return
+ *   The full path to the temporary directory where update file archives
+ *   should be cached.
+ */
+function _update_manager_cache_directory($create = TRUE) {
+  $directory = &drupal_static(__FUNCTION__, '');
+  if (empty($directory)) {
+    $directory = 'temporary://update-cache-' . _update_manager_unique_identifier();
+    if ($create && !file_exists($directory)) {
+      mkdir($directory);
+    }
+  }
+  return $directory;
+}
+
+/**
  * Clear the temporary files and directories based on file age from disk.
  */
 function update_clear_update_disk_cache() {
-  // List of update module cache directories.
+  // List of update module cache directories. Do not create the directories if
+  // they do not exist.
   $directories = array(
-    'temporary://update-cache',
-    'temporary://update-extraction',
+    _update_manager_cache_directory(FALSE),
+    _update_manager_extract_directory(FALSE),
   );
 
   // Search for files and directories in base folder only without recursion.
diff --git a/modules/update/update.report.inc b/modules/update/update.report.inc
index 8e9dbae..3f5933a 100644
--- a/modules/update/update.report.inc
+++ b/modules/update/update.report.inc
@@ -57,25 +57,25 @@ function theme_update_report($variables) {
     switch ($project['status']) {
       case UPDATE_CURRENT:
         $class = 'ok';
-        $icon = theme('image', array('path' => 'misc/watchdog-ok.png', 'alt' => t('ok'), 'title' => t('ok')));
+        $icon = theme('image', array('path' => 'misc/watchdog-ok.png', 'width' => 18, 'height' => 18, 'alt' => t('ok'), 'title' => t('ok')));
         break;
       case UPDATE_UNKNOWN:
       case UPDATE_FETCH_PENDING:
       case UPDATE_NOT_FETCHED:
         $class = 'unknown';
-        $icon = theme('image', array('path' => 'misc/watchdog-warning.png', 'alt' => t('warning'), 'title' => t('warning')));
+        $icon = theme('image', array('path' => 'misc/watchdog-warning.png', 'width' => 18, 'height' => 18, 'alt' => t('warning'), 'title' => t('warning')));
         break;
       case UPDATE_NOT_SECURE:
       case UPDATE_REVOKED:
       case UPDATE_NOT_SUPPORTED:
         $class = 'error';
-        $icon = theme('image', array('path' => 'misc/watchdog-error.png', 'alt' => t('error'), 'title' => t('error')));
+        $icon = theme('image', array('path' => 'misc/watchdog-error.png', 'width' => 18, 'height' => 18, 'alt' => t('error'), 'title' => t('error')));
         break;
       case UPDATE_NOT_CHECKED:
       case UPDATE_NOT_CURRENT:
       default:
         $class = 'warning';
-        $icon = theme('image', array('path' => 'misc/watchdog-warning.png', 'alt' => t('warning'), 'title' => t('warning')));
+        $icon = theme('image', array('path' => 'misc/watchdog-warning.png', 'width' => 18, 'height' => 18, 'alt' => t('warning'), 'title' => t('warning')));
         break;
     }
 
diff --git a/modules/update/update.test b/modules/update/update.test
index 3affeb8..f0c214e 100644
--- a/modules/update/update.test
+++ b/modules/update/update.test
@@ -134,6 +134,19 @@ class UpdateCoreTestCase extends UpdateTestHelper {
   }
 
   /**
+   * Check that running cron updates the list of available updates.
+   */
+  function testModulePageRunCron() {
+    $this->setSystemInfo7_0();
+    variable_set('update_fetch_url', url('update-test', array('absolute' => TRUE)));
+    variable_set('update_test_xml_map', array('drupal' => '0'));
+
+    $this->cronRun();
+    $this->drupalGet('admin/modules');
+    $this->assertNoText(t('No update information available.'));
+  }
+
+  /**
    * Check the messages at admin/modules when the site is up to date.
    */
   function testModulePageUpToDate() {
@@ -142,10 +155,10 @@ class UpdateCoreTestCase extends UpdateTestHelper {
     variable_set('update_fetch_url', url('update-test', array('absolute' => TRUE)));
     variable_set('update_test_xml_map', array('drupal' => '0'));
 
-    $this->drupalGet('admin/modules');
-    $this->assertText(t('No update information available.'));
-    $this->clickLink(t('check manually'));
+    $this->drupalGet('admin/reports/updates');
+    $this->clickLink(t('Check manually'));
     $this->assertText(t('Checked available update data for one project.'));
+    $this->drupalGet('admin/modules');
     $this->assertNoText(t('There are updates available for your version of Drupal.'));
     $this->assertNoText(t('There is a security update available for your version of Drupal.'));
   }
@@ -159,10 +172,10 @@ class UpdateCoreTestCase extends UpdateTestHelper {
     variable_set('update_fetch_url', url('update-test', array('absolute' => TRUE)));
     variable_set('update_test_xml_map', array('drupal' => '1'));
 
-    $this->drupalGet('admin/modules');
-    $this->assertText(t('No update information available.'));
-    $this->clickLink(t('check manually'));
+    $this->drupalGet('admin/reports/updates');
+    $this->clickLink(t('Check manually'));
     $this->assertText(t('Checked available update data for one project.'));
+    $this->drupalGet('admin/modules');
     $this->assertText(t('There are updates available for your version of Drupal.'));
     $this->assertNoText(t('There is a security update available for your version of Drupal.'));
   }
@@ -176,10 +189,10 @@ class UpdateCoreTestCase extends UpdateTestHelper {
     variable_set('update_fetch_url', url('update-test', array('absolute' => TRUE)));
     variable_set('update_test_xml_map', array('drupal' => '2-sec'));
 
-    $this->drupalGet('admin/modules');
-    $this->assertText(t('No update information available.'));
-    $this->clickLink(t('check manually'));
+    $this->drupalGet('admin/reports/updates');
+    $this->clickLink(t('Check manually'));
     $this->assertText(t('Checked available update data for one project.'));
+    $this->drupalGet('admin/modules');
     $this->assertNoText(t('There are updates available for your version of Drupal.'));
     $this->assertText(t('There is a security update available for your version of Drupal.'));
 
@@ -239,7 +252,7 @@ class UpdateTestContribCase extends UpdateTestHelper {
       ),
       'aaa_update_test' => array(
         'project' => 'aaa_update_test',
-        'version' => '8.x-1.0',
+        'version' => '7.x-1.0',
         'hidden' => FALSE,
       ),
     );
@@ -267,7 +280,7 @@ class UpdateTestContribCase extends UpdateTestHelper {
       ),
       'aaa_update_test' => array(
         'project' => 'aaa_update_test',
-        'version' => '8.x-1.0',
+        'version' => '7.x-1.0',
         'hidden' => FALSE,
       ),
     );
@@ -304,21 +317,21 @@ class UpdateTestContribCase extends UpdateTestHelper {
       '#all' => array(
         'version' => '7.0',
       ),
-      // All the rest should be visible as contrib modules at version 8.x-1.0.
+      // All the rest should be visible as contrib modules at version 7.x-1.0.
 
       // aaa_update_test needs to be part of the "CCC Update test" project,
       // which would throw off the report if we weren't properly sorting by
       // the project names.
       'aaa_update_test' => array(
         'project' => 'ccc_update_test',
-        'version' => '8.x-1.0',
+        'version' => '7.x-1.0',
         'hidden' => FALSE,
       ),
 
       // This should be its own project, and listed first on the report.
       'bbb_update_test' => array(
         'project' => 'bbb_update_test',
-        'version' => '8.x-1.0',
+        'version' => '7.x-1.0',
         'hidden' => FALSE,
       ),
 
@@ -326,7 +339,7 @@ class UpdateTestContribCase extends UpdateTestHelper {
       // should come after the bbb_update_test project.
       'ccc_update_test' => array(
         'project' => 'ccc_update_test',
-        'version' => '8.x-1.0',
+        'version' => '7.x-1.0',
         'hidden' => FALSE,
       ),
     );
@@ -377,13 +390,13 @@ class UpdateTestContribCase extends UpdateTestHelper {
       // Show the update_test_basetheme
       'update_test_basetheme' => array(
         'project' => 'update_test_basetheme',
-        'version' => '8.x-1.0',
+        'version' => '7.x-1.0',
         'hidden' => FALSE,
       ),
       // Show the update_test_subtheme
       'update_test_subtheme' => array(
         'project' => 'update_test_subtheme',
-        'version' => '8.x-1.0',
+        'version' => '7.x-1.0',
         'hidden' => FALSE,
       ),
     );
@@ -418,13 +431,13 @@ class UpdateTestContribCase extends UpdateTestHelper {
       // The update_test_basetheme should be visible and up to date.
       'update_test_basetheme' => array(
         'project' => 'update_test_basetheme',
-        'version' => '8.x-1.1',
+        'version' => '7.x-1.1',
         'hidden' => FALSE,
       ),
       // The update_test_subtheme should be visible and up to date.
       'update_test_subtheme' => array(
         'project' => 'update_test_subtheme',
-        'version' => '8.x-1.0',
+        'version' => '7.x-1.0',
         'hidden' => FALSE,
       ),
     );
@@ -464,17 +477,17 @@ class UpdateTestContribCase extends UpdateTestHelper {
       ),
       'aaa_update_test' => array(
         'project' => 'aaa_update_test',
-        'version' => '8.x-1.0',
+        'version' => '7.x-1.0',
         'hidden' => FALSE,
       ),
       'bbb_update_test' => array(
         'project' => 'bbb_update_test',
-        'version' => '8.x-1.0',
+        'version' => '7.x-1.0',
         'hidden' => FALSE,
       ),
       'ccc_update_test' => array(
         'project' => 'ccc_update_test',
-        'version' => '8.x-1.0',
+        'version' => '7.x-1.0',
         'hidden' => FALSE,
       ),
     );
@@ -513,7 +526,7 @@ class UpdateTestContribCase extends UpdateTestHelper {
   /**
    * Check that hook_update_status_alter() works to change a status.
    *
-   * We provide the same external data as if aaa_update_test 8.x-1.0 were
+   * We provide the same external data as if aaa_update_test 7.x-1.0 were
    * installed and that was the latest release. Then we use
    * hook_update_status_alter() to try to mark this as missing a security
    * update, then assert if we see the appropriate warnings on the right
@@ -530,7 +543,7 @@ class UpdateTestContribCase extends UpdateTestHelper {
       ),
       'aaa_update_test' => array(
         'project' => 'aaa_update_test',
-        'version' => '8.x-1.0',
+        'version' => '7.x-1.0',
         'hidden' => FALSE,
       ),
     );
diff --git a/modules/user/tests/user_form_test.info b/modules/user/tests/user_form_test.info
index ed2f39e..39d6c57 100644
--- a/modules/user/tests/user_form_test.info
+++ b/modules/user/tests/user_form_test.info
@@ -2,5 +2,5 @@ name = "User module form tests"
 description = "Support module for user form testing."
 package = Testing
 version = VERSION
-core = 8.x
+core = 7.x
 hidden = TRUE
diff --git a/modules/user/user-rtl.css b/modules/user/user-rtl.css
index 498d6cb..5a1442c 100644
--- a/modules/user/user-rtl.css
+++ b/modules/user/user-rtl.css
@@ -7,19 +7,18 @@
 /**
  * Password strength indicator.
  */
-input.password-field {
-  margin-left: 10px;
-  margin-right: 0;
+.password-strength {
+  float: left;
 }
-input.password-confirm {
-  margin-left: 10px;
-  margin-right: 0;
+.password-strength-text {
+  float: left;
 }
-.password-strength-title {
-  float: right;
+div.password-confirm {
+  float: left;
 }
+.confirm-parent,
 .password-parent {
-  float: right;
+  clear: right;
 }
 
 /* Generated by user.module but used by profile.module: */
diff --git a/modules/user/user.api.php b/modules/user/user.api.php
index 272731a..069a9f8 100644
--- a/modules/user/user.api.php
+++ b/modules/user/user.api.php
@@ -24,9 +24,9 @@
  * @see profile_user_load()
  */
 function hook_user_load($users) {
-  $result = db_query('SELECT * FROM {my_table} WHERE uid IN (:uids)', array(':uids' => array_keys($users)));
+  $result = db_query('SELECT uid, foo FROM {my_table} WHERE uid IN (:uids)', array(':uids' => array_keys($users)));
   foreach ($result as $record) {
-    $users[$record->uid]->foo = $result->foo;
+    $users[$record->uid]->foo = $record->foo;
   }
 }
 
@@ -126,7 +126,7 @@ function hook_user_cancel($edit, $account, $method) {
  *   a method. If #access is defined, the method cannot be configured as default
  *   method.
  *
- * @param &$methods
+ * @param $methods
  *   An array containing user account cancellation methods, keyed by method id.
  *
  * @see user_cancel_methods()
@@ -213,7 +213,7 @@ function hook_user_categories() {
  * user account object is loaded, modules may add to $edit['data'] in order
  * to have their data serialized on save.
  *
- * @param &$edit
+ * @param $edit
  *   The array of form values submitted by the user.
  * @param $account
  *   The user object on which the operation is performed.
@@ -236,7 +236,7 @@ function hook_user_presave(&$edit, $account, $category) {
  * The module should save its custom additions to the user object into the
  * database.
  *
- * @param &$edit
+ * @param $edit
  *   The array of form values submitted by the user.
  * @param $account
  *   The user object on which the operation is being performed.
@@ -261,7 +261,7 @@ function hook_user_insert(&$edit, $account, $category) {
  * Modules may use this hook to update their user data in a custom storage
  * after a user account has been updated.
  *
- * @param &$edit
+ * @param $edit
  *   The array of form values submitted by the user.
  * @param $account
  *   The user object on which the operation is performed.
@@ -283,7 +283,7 @@ function hook_user_update(&$edit, $account, $category) {
 /**
  * The user just logged in.
  *
- * @param &$edit
+ * @param $edit
  *   The array of form values submitted by the user.
  * @param $account
  *   The user object on which the operation was just performed.
@@ -367,6 +367,25 @@ function hook_user_view_alter(&$build) {
 }
 
 /**
+ * Inform other modules that a user role is about to be saved.
+ *
+ * Modules implementing this hook can act on the user role object before
+ * it has been saved to the database.
+ *
+ * @param $role
+ *   A user role object.
+ *
+ * @see hook_user_role_insert()
+ * @see hook_user_role_update()
+ */
+function hook_user_role_presave($role) {
+  // Set a UUID for the user role if it doesn't already exist
+  if (empty($role->uuid)) {
+    $role->uuid = uuid_uuid();
+  }
+}
+
+/**
  * Inform other modules that a user role has been added.
  *
  * Modules implementing this hook can act on the user role object when saved to
diff --git a/modules/user/user.css b/modules/user/user.css
index 60f93bf..d6ed7c3 100644
--- a/modules/user/user.css
+++ b/modules/user/user.css
@@ -57,8 +57,10 @@ input.password-field {
   margin-bottom: 0.4em;
 }
 div.password-confirm {
-  display: inline;
-  padding-left: 1em;
+  float: right;  /* LTR */
+  margin-top: 1.5em;
+  visibility: hidden;
+  width: 17em;
 }
 div.form-item div.password-suggestions {
   padding: 0.2em 0.5em;
@@ -69,19 +71,11 @@ div.form-item div.password-suggestions {
 div.password-suggestions ul {
   margin-bottom: 0;
 }
+.confirm-parent,
 .password-parent {
+  clear: left; /* LTR */
   margin: 0;
-  width: 34.3em;
-}
-
-/**
- * Password confirmation checker.
- */
-.confirm-parent {
-  margin: 0;
-}
-div.password-confirm {
-  visibility: hidden;
+  width: 36.3em;
 }
 
 /* Generated by user.module but used by profile.module: */
diff --git a/modules/user/user.info b/modules/user/user.info
index a4d18d6..1154f53 100644
--- a/modules/user/user.info
+++ b/modules/user/user.info
@@ -2,7 +2,7 @@ name = User
 description = Manages the user registration and login system.
 package = Core
 version = VERSION
-core = 8.x
+core = 7.x
 files[] = user.module
 files[] = user.test
 required = TRUE
diff --git a/modules/user/user.install b/modules/user/user.install
index 370427f..75fca65 100644
--- a/modules/user/user.install
+++ b/modules/user/user.install
@@ -335,3 +335,551 @@ function user_install() {
       ->execute();
   }
 }
+
+/**
+ * Implements hook_update_dependencies().
+ */
+function user_update_dependencies() {
+  // Run all the critical user upgrades before everything.
+  $dependencies['system'][7000] = array(
+    'user' => 7008,
+  );
+  // Both user_update_7006() and user_update_7010() need to query the list of
+  // existing text formats and therefore must run after filter_update_7003().
+  // @todo: move user_update_7006 down below in the upgrade process.
+  $dependencies['user'][7006] = array(
+    'filter' => 7003,
+  );
+  // user_update_7013 relies on system_update_7060.
+  $dependencies['user'][7013] = array(
+    'system' => 7059,
+  );
+  // Ensure that format columns are only changed after Filter module has changed
+  // the primary records.
+  $dependencies['user'][7015] = array(
+    'filter' => 7010,
+  );
+
+  return $dependencies;
+}
+
+/**
+ * Utility function: grant a set of permissions to a role during update.
+ *
+ * This function is valid for a database schema version 7000.
+ *
+ * @param $rid
+ *   The role ID.
+ * @param $permissions
+ *   An array of permissions names.
+ * @param $module
+ *   The name of the module defining the permissions.
+ * @ingroup update-api-6.x-to-7.x
+ */
+function _update_7000_user_role_grant_permissions($rid, array $permissions, $module) {
+  // Grant new permissions for the role.
+  foreach ($permissions as $name) {
+    db_merge('role_permission')
+      ->key(array(
+        'rid' => $rid,
+        'permission' => $name,
+      ))
+      ->fields(array(
+        'module' => $module,
+      ))
+      ->execute();
+  }
+}
+
+/**
+ * @addtogroup updates-6.x-to-7.x
+ * @{
+ */
+
+/**
+ * Increase the length of the password field to accommodate better hashes.
+ *
+ * Also re-hashes all current passwords to improve security. This may be a
+ * lengthy process, and is performed batch-wise.
+ */
+function user_update_7000(&$sandbox) {
+  $sandbox['#finished'] = 0;
+  // Lower than DRUPAL_HASH_COUNT to make the update run at a reasonable speed.
+  $hash_count_log2 = 11;
+  // Multi-part update.
+  if (!isset($sandbox['user_from'])) {
+    db_change_field('users', 'pass', 'pass', array('type' => 'varchar', 'length' => 128, 'not null' => TRUE, 'default' => ''));
+    $sandbox['user_from'] = 0;
+    $sandbox['user_count'] = db_query("SELECT COUNT(uid) FROM {users}")->fetchField();
+  }
+  else {
+    require_once DRUPAL_ROOT . '/' . variable_get('password_inc', 'includes/password.inc');
+    //  Hash again all current hashed passwords.
+    $has_rows = FALSE;
+    // Update this many per page load.
+    $count = 1000;
+    $result = db_query_range("SELECT uid, pass FROM {users} WHERE uid > 0 ORDER BY uid", $sandbox['user_from'], $count);
+    foreach ($result as $account) {
+      $has_rows = TRUE;
+      $new_hash = user_hash_password($account->pass, $hash_count_log2);
+      if ($new_hash) {
+        // Indicate an updated password.
+        $new_hash  = 'U' . $new_hash;
+        db_update('users')
+          ->fields(array('pass' => $new_hash))
+          ->condition('uid', $account->uid)
+          ->execute();
+      }
+    }
+    $sandbox['#finished'] = $sandbox['user_from']/$sandbox['user_count'];
+    $sandbox['user_from'] += $count;
+    if (!$has_rows) {
+      $sandbox['#finished'] = 1;
+      return t('User passwords rehashed to improve security');
+    }
+  }
+}
+
+/**
+ * Remove the 'threshold', 'mode' and 'sort' columns from the {users} table.
+ *
+ * These fields were previously used to store per-user comment settings.
+ */
+
+function user_update_7001() {
+  db_drop_field('users', 'threshold');
+  db_drop_field('users', 'mode');
+  db_drop_field('users', 'sort');
+}
+
+/**
+ * Convert user time zones from time zone offsets to time zone names.
+ */
+function user_update_7002(&$sandbox) {
+  $sandbox['#finished'] = 0;
+
+  // Multi-part update.
+  if (!isset($sandbox['user_from'])) {
+    db_change_field('users', 'timezone', 'timezone', array('type' => 'varchar', 'length' => 32, 'not null' => FALSE));
+    $sandbox['user_from'] = 0;
+    $sandbox['user_count'] = db_query("SELECT COUNT(uid) FROM {users}")->fetchField();
+    $sandbox['user_not_migrated'] = 0;
+  }
+  else {
+    $timezones = system_time_zones();
+    // Update this many per page load.
+    $count = 10000;
+    $contributed_date_module = db_field_exists('users', 'timezone_name');
+    $contributed_event_module = db_field_exists('users', 'timezone_id');
+
+    $results = db_query_range("SELECT uid FROM {users} ORDER BY uid", $sandbox['user_from'], $count);
+    foreach ($results as $account) {
+      $timezone = NULL;
+      // If the contributed Date module has created a users.timezone_name
+      // column, use this data to set each user's time zone.
+      if ($contributed_date_module) {
+        $date_timezone = db_query("SELECT timezone_name FROM {users} WHERE uid = :uid", array(':uid' => $account->uid))->fetchField();
+        if (isset($timezones[$date_timezone])) {
+          $timezone = $date_timezone;
+        }
+      }
+      // If the contributed Event module has stored user time zone information
+      // use that information to update the user accounts.
+      if (!$timezone && $contributed_event_module) {
+        try {
+          $event_timezone = db_query("SELECT t.name FROM {users} u LEFT JOIN {event_timezones} t ON u.timezone_id = t.timezone WHERE u.uid = :uid", array(':uid' => $account->uid))->fetchField();
+          $event_timezone = str_replace(' ', '_', $event_timezone);
+          if (isset($timezones[$event_timezone])) {
+            $timezone = $event_timezone;
+          }
+        }
+        catch (PDOException $e) {
+          // Ignore error if event_timezones table does not exist or unexpected
+          // schema found.
+        }
+      }
+      if ($timezone) {
+        db_update('users')
+          ->fields(array('timezone' => $timezone))
+          ->condition('uid', $account->uid)
+          ->execute();
+      }
+      else {
+        $sandbox['user_not_migrated']++;
+        db_update('users')
+          ->fields(array('timezone' => NULL))
+          ->condition('uid', $account->uid)
+          ->execute();
+      }
+      $sandbox['user_from']++;
+    }
+
+    $sandbox['#finished'] = $sandbox['user_from'] / $sandbox['user_count'];
+    if ($sandbox['user_from'] == $sandbox['user_count']) {
+      if ($sandbox['user_not_migrated'] > 0) {
+        variable_set('empty_timezone_message', 1);
+        drupal_set_message('Some user time zones have been emptied and need to be set to the correct values. Use the new ' . l('time zone options', 'admin/config/regional/settings') . ' to choose whether to remind users at login to set the correct time zone.', 'warning');
+      }
+      return t('Migrated user time zones');
+    }
+  }
+}
+
+/**
+ * Update user settings for cancelling user accounts.
+ *
+ * Prior to 7.x, users were not able to cancel their accounts. When
+ * administrators deleted an account, all contents were assigned to uid 0,
+ * which is the same as the 'user_cancel_reassign' method now.
+ */
+function user_update_7003() {
+  // Set the default account cancellation method.
+  variable_set('user_cancel_method', 'user_cancel_reassign');
+  // Re-assign notification setting.
+  if ($setting = variable_get('user_mail_status_deleted_notify', FALSE)) {
+    variable_set('user_mail_status_canceled_notify', $setting);
+    variable_del('user_mail_status_deleted_notify');
+  }
+  // Re-assign "Account deleted" mail strings to "Account canceled" mail.
+  if ($setting = variable_get('user_mail_status_deleted_subject', FALSE)) {
+    variable_set('user_mail_status_canceled_subject', $setting);
+    variable_del('user_mail_status_deleted_subject');
+  }
+  if ($setting = variable_get('user_mail_status_deleted_body', FALSE)) {
+    variable_set('user_mail_status_canceled_body', $setting);
+    variable_del('user_mail_status_deleted_body');
+  }
+}
+
+/**
+ * Changes the users table to allow longer e-mail addresses.
+ */
+function user_update_7005(&$sandbox) {
+  $mail_field = array(
+    'type' => 'varchar',
+    'length' => 254,
+    'not null' => FALSE,
+    'default' => '',
+    'description' => "User's e-mail address.",
+  );
+  $init_field = array(
+    'type' => 'varchar',
+    'length' => 254,
+    'not null' => FALSE,
+    'default' => '',
+    'description' => 'E-mail address used for initial account creation.',
+  );
+  db_drop_index('users', 'mail');
+  db_change_field('users', 'mail', 'mail', $mail_field, array('indexes' => array('mail' => array('mail'))));
+  db_change_field('users', 'init', 'init', $init_field);
+}
+
+/**
+ * Add module data to {role_permission}.
+ */
+function user_update_7006(&$sandbox) {
+  $module_field = array(
+    'type' => 'varchar',
+    'length' => 255,
+    'not null' => TRUE,
+    'default' => '',
+    'description' => "The module declaring the permission.",
+  );
+  // Check that the field hasn't been updated in an aborted run of this
+  // update.
+  if (!db_field_exists('role_permission', 'module')) {
+    // Add a new field for the fid.
+    db_add_field('role_permission', 'module', $module_field);
+  }
+  $permissions = user_permission_get_modules();
+  foreach ($permissions as $key => $value) {
+    db_update('role_permission')
+      ->fields(array('module' => $value))
+      ->condition('permission', $key)
+      ->execute();
+  }
+}
+
+/**
+ * Add a weight column to user roles.
+ */
+function user_update_7007() {
+  db_add_field('role', 'weight', array('type' => 'int', 'not null' => TRUE, 'default' => 0));
+  db_add_index('role', 'name_weight', array('name', 'weight'));
+}
+
+/**
+ * If 'user_register' variable was unset in Drupal 6, set it to be the same as
+ * the Drupal 6 default setting.
+ */
+function user_update_7008() {
+  if (!isset($GLOBALS['conf']['user_register'])) {
+    // Set to the Drupal 6 default, "visitors can create accounts".
+    variable_set('user_register', USER_REGISTER_VISITORS);
+  }
+}
+
+/**
+ * Converts fields that store serialized variables from text to blob.
+ */
+function user_update_7009() {
+  $spec = array(
+    'type' => 'blob',
+    'not null' => FALSE,
+    'size' => 'big',
+    'serialize' => TRUE,
+    'description' => 'A serialized array of name value pairs that are related to the user. Any form values posted during user edit are stored and are loaded into the $user object during user_load(). Use of this field is discouraged and it will likely disappear in a future version of Drupal.',
+  );
+  db_change_field('users', 'data', 'data', $spec);
+}
+
+/**
+ * Update the {user}.signature_format column.
+ */
+function user_update_7010() {
+  // Update the database column to allow NULL values.
+  db_change_field('users', 'signature_format', 'signature_format', array(
+    'type' => 'int',
+    'unsigned' => TRUE,
+    'not null' => FALSE,
+    'description' => 'The {filter_format}.format of the signature.',
+  ));
+
+  // Replace the signature format with NULL if the signature is empty and does
+  // not already have a stored text format.
+  //
+  // In Drupal 6, "0" (the former FILTER_FORMAT_DEFAULT constant) could be used
+  // to indicate this situation, but in Drupal 7, only NULL is supported. This
+  // update therefore preserves the ability of user accounts which were never
+  // given a signature (for example, if the site did not have user signatures
+  // enabled, or if the user never edited their account information) to not
+  // have a particular text format assumed for them the first time the
+  // signature is edited.
+  db_update('users')
+    ->fields(array('signature_format' => NULL))
+    ->condition('signature', '')
+    ->condition('signature_format', 0)
+    ->execute();
+
+  // There are a number of situations in which a Drupal 6 site could store
+  // content with a nonexistent text format. This includes text formats that
+  // had later been deleted, or non-empty content stored with a value of "0"
+  // (the former FILTER_FORMAT_DEFAULT constant). Drupal 6 would filter this
+  // content using whatever the site-wide default text format was at the moment
+  // the text was being displayed.
+  //
+  // In Drupal 7, this behavior is no longer supported, and all content must be
+  // stored with an explicit text format (or it will not be displayed when it
+  // is filtered). Therefore, to preserve the behavior of the site after the
+  // upgrade, we must replace all instances described above with the current
+  // value of the (old) site-wide default format at the moment of the upgrade.
+  $existing_formats = db_query("SELECT format FROM {filter_format}")->fetchCol();
+  $default_format = variable_get('filter_default_format', 1);
+  db_update('users')
+    ->fields(array('signature_format' => $default_format))
+    ->isNotNull('signature_format')
+    ->condition('signature_format', $existing_formats, 'NOT IN')
+    ->execute();
+}
+
+/**
+ * Placeholder function.
+ *
+ * As a fix for user_update_7011() not updating email templates to use the new
+ * tokens, user_update_7017() now targets email templates of Drupal 6 sites and
+ * already upgraded sites.
+ */
+function user_update_7011() {
+}
+
+/**
+ * Add the user's pictures to the {file_managed} table and make them managed
+ * files.
+ */
+function user_update_7012(&$sandbox) {
+
+  $picture_field = array(
+    'type' => 'int',
+    'not null' => TRUE,
+    'default' => 0,
+    'description' => "Foreign key: {file_managed}.fid of user's picture.",
+  );
+
+  if (!isset($sandbox['progress'])) {
+    // Check that the field hasn't been updated in an aborted run of this
+    // update.
+    if (!db_field_exists('users', 'picture_fid')) {
+      // Add a new field for the fid.
+      db_add_field('users', 'picture_fid', $picture_field);
+    }
+
+    // Initialize batch update information.
+    $sandbox['progress'] = 0;
+    $sandbox['last_user_processed'] = -1;
+    $sandbox['max'] = db_query("SELECT COUNT(*) FROM {users} WHERE picture <> ''")->fetchField();
+  }
+
+  // As a batch operation move the photos into the {file_managed} table and
+  // update the {users} records.
+  $limit = 500;
+  $result = db_query_range("SELECT uid, picture FROM {users} WHERE picture <> '' AND uid > :uid ORDER BY uid", 0, $limit, array(':uid' => $sandbox['last_user_processed']));
+  foreach ($result as $user) {
+    // Don't bother adding files that don't exist.
+    if (file_exists($user->picture)) {
+
+      // Check if the file already exists.
+      $files = file_load_multiple(array(), array('uri' => $user->picture));
+      if (count($files)) {
+        $file = reset($files);
+      }
+      else {
+        // Create a file object.
+        $file = new stdClass();
+        $file->uri      = $user->picture;
+        $file->filename = basename($file->uri);
+        $file->filemime = file_get_mimetype($file->uri);
+        $file->uid      = $user->uid;
+        $file->status   = FILE_STATUS_PERMANENT;
+        $file = file_save($file);
+      }
+
+      db_update('users')
+        ->fields(array('picture_fid' => $file->fid))
+        ->condition('uid', $user->uid)
+        ->execute();
+    }
+
+    // Update our progress information for the batch update.
+    $sandbox['progress']++;
+    $sandbox['last_user_processed'] = $user->uid;
+  }
+
+  // Indicate our current progress to the batch update system. If there's no
+  // max value then there's nothing to update and we're finished.
+  $sandbox['#finished'] = empty($sandbox['max']) ? 1 : ($sandbox['progress'] / $sandbox['max']);
+
+  // When we're finished, drop the old picture field and rename the new one to
+  // replace it.
+  if (isset($sandbox['#finished']) && $sandbox['#finished'] == 1) {
+    db_drop_field('users', 'picture');
+    db_change_field('users', 'picture_fid', 'picture', $picture_field);
+  }
+}
+
+/**
+ * Add user module file usage entries.
+ */
+function user_update_7013(&$sandbox) {
+  if (!isset($sandbox['progress'])) {
+    // Initialize batch update information.
+    $sandbox['progress'] = 0;
+    $sandbox['last_uid_processed'] = -1;
+    $sandbox['max'] = db_query("SELECT COUNT(*) FROM {users} u WHERE u.picture <> 0")->fetchField();
+  }
+
+  // Add usage entries for the user picture files.
+  $limit = 500;
+  $result = db_query_range('SELECT f.*, u.uid as user_uid FROM {users} u INNER JOIN {file_managed} f ON u.picture = f.fid WHERE u.picture <> 0 AND u.uid > :uid ORDER BY u.uid', 0, $limit, array(':uid' => $sandbox['last_uid_processed']))->fetchAllAssoc('fid', PDO::FETCH_ASSOC);
+  foreach ($result as $row) {
+    $uid = $row['user_uid'];
+    $file = (object) $row;
+    file_usage_add($file, 'user', 'user', $uid);
+
+    // Update our progress information for the batch update.
+    $sandbox['progress']++;
+    $sandbox['last_uid_processed'] = $uid;
+  }
+
+  // Indicate our current progress to the batch update system.
+  $sandbox['#finished'] = empty($sandbox['max']) || ($sandbox['progress'] / $sandbox['max']);
+}
+
+/**
+ * Rename the 'post comments without approval' permission.
+ *
+ * In Drupal 7, this permission has been renamed to 'skip comment approval'.
+ */
+function user_update_7014() {
+  db_update('role_permission')
+        ->fields(array('permission' => 'skip comment approval'))
+        ->condition('permission', 'post comments without approval')
+        ->execute();
+
+  return t("Renamed the 'post comments without approval' permission to 'skip comment approval'.");
+}
+
+/**
+ * Change {users}.signature_format into varchar.
+ */
+function user_update_7015() {
+  db_change_field('users', 'signature_format', 'signature_format', array(
+    'type' => 'varchar',
+    'length' => 255,
+    'not null' => FALSE,
+    'description' => 'The {filter_format}.format of the signature.',
+  ));
+}
+
+/**
+ * Update the database to match the schema.
+ */
+function user_update_7016() {
+  // Add field default.
+  db_change_field('users', 'uid', 'uid', array(
+    'type' => 'int',
+    'unsigned' => TRUE,
+    'not null' => TRUE,
+    'default' => 0,
+  ));
+}
+
+/**
+ * Update email templates to use new tokens.
+ *
+ * This function upgrades customized email templates from the old !token format
+ * to the new core tokens format. Additionally, in Drupal 7 we no longer e-mail
+ * plain text passwords to users, and there is no token for a plain text
+ * password in the new token system. Therefore, it also modifies any saved
+ * templates using the old '!password' token such that the token is removed, and
+ * displays a warning to users that they may need to go and modify the wording
+ * of their templates.
+ */
+function user_update_7017() {
+  $message = '';
+
+  $tokens = array(
+    '!site' => '[site:name]',
+    '!username' => '[user:name]',
+    '!mailto' => '[user:mail]',
+    '!login_uri' => '[site:login-url]',
+    '!uri_brief' => '[site:url-brief]',
+    '!edit_uri' => '[user:edit-url]',
+    '!login_url' => '[user:one-time-login-url]',
+    '!uri' => '[site:url]',
+    '!date' => '[date:medium]',
+    '!password' => '',
+  );
+
+  $result = db_select('variable', 'v')
+    ->fields('v', array('name'))
+    ->condition('name', db_like('user_mail_') . '%', 'LIKE')
+    ->execute();
+
+  foreach ($result as $row) {
+    // Use variable_get() to get the unserialized value for free.
+    if ($value = variable_get($row->name, FALSE)) {
+
+      if (empty($message) && (strpos($value, '!password') !== FALSE)) {
+        $message = t('The ability to send users their passwords in plain text has been removed in Drupal 7. Your existing email templates have been modified to remove it. You should <a href="@template-url">review these templates</a> to make sure they read properly.', array('@template-url' => url('admin/config/people/accounts')));
+      }
+
+      variable_set($row->name, str_replace(array_keys($tokens), $tokens, $value));
+    }
+  }
+
+  return $message;
+}
+
+/**
+ * @} End of "addtogroup updates-6.x-to-7.x"
+ */
diff --git a/modules/user/user.js b/modules/user/user.js
index 8755c43..44c00f3 100644
--- a/modules/user/user.js
+++ b/modules/user/user.js
@@ -16,7 +16,7 @@ Drupal.behaviors.password = {
       innerWrapper.addClass('password-parent');
 
       // Add the password confirmation layer.
-      $('input.password-confirm', outerWrapper).after('<div class="password-confirm">' + translate['confirmTitle'] + ' <span></span></div>').parent().addClass('confirm-parent');
+      $('input.password-confirm', outerWrapper).parent().prepend('<div class="password-confirm">' + translate['confirmTitle'] + ' <span></span></div>').addClass('confirm-parent');
       var confirmInput = $('input.password-confirm', outerWrapper);
       var confirmResult = $('div.password-confirm', outerWrapper);
       var confirmChild = $('span', confirmResult);
diff --git a/modules/user/user.module b/modules/user/user.module
index 7f22f7c..4492c60 100644
--- a/modules/user/user.module
+++ b/modules/user/user.module
@@ -417,6 +417,9 @@ function user_save($account, $edit = array(), $category = 'account') {
       // Avoid overwriting an existing password with a blank password.
       unset($edit['pass']);
     }
+    if (isset($edit['mail'])) {
+      $edit['mail'] = trim($edit['mail']);
+    }
 
     // Load the stored entity, if any.
     if (!empty($account->uid) && !isset($account->original)) {
@@ -439,27 +442,18 @@ function user_save($account, $edit = array(), $category = 'account') {
     user_module_invoke('presave', $edit, $account, $category);
 
     // Invoke presave operations of Field Attach API and Entity API. Those APIs
-    // require a fully-fledged (and updated) entity object, so $edit is not
-    // necessarily sufficient, as it technically contains submitted form values
-    // only. Therefore, we need to clone $account into a new object and copy any
-    // new property values of $edit into it.
-    $account_updated = clone $account;
+    // require a fully-fledged and updated entity object. Therefore, we need to
+    // copy any new property values of $edit into it.
     foreach ($edit as $key => $value) {
-      $account_updated->$key = $value;
-    }
-    field_attach_presave('user', $account_updated);
-    module_invoke_all('entity_presave', $account_updated, 'user');
-    // Update $edit with any changes modules might have applied to the account.
-    foreach ($account_updated as $key => $value) {
-      if (!property_exists($account, $key) || $value !== $account->$key) {
-        $edit[$key] = $value;
-      }
+      $account->$key = $value;
     }
+    field_attach_presave('user', $account);
+    module_invoke_all('entity_presave', $account, 'user');
 
     if (is_object($account) && !$account->is_new) {
       // Process picture uploads.
-      if (!$delete_previous_picture = empty($edit['picture']->fid)) {
-        $picture = $edit['picture'];
+      if (!empty($account->picture->fid) && (!isset($account->original->picture->fid) || $account->picture->fid != $account->original->picture->fid)) {
+        $picture = $account->picture;
         // If the picture is a temporary file move it to its final location and
         // make it permanent.
         if (!$picture->status) {
@@ -472,26 +466,23 @@ function user_save($account, $edit = array(), $category = 'account') {
 
           // Move the temporary file into the final location.
           if ($picture = file_move($picture, $destination, FILE_EXISTS_RENAME)) {
-            $delete_previous_picture = TRUE;
             $picture->status = FILE_STATUS_PERMANENT;
-            $edit['picture'] = file_save($picture);
+            $account->picture = file_save($picture);
             file_usage_add($picture, 'user', 'user', $account->uid);
           }
         }
+        // Delete the previous picture if it was deleted or replaced.
+        if (!empty($account->original->picture->fid)) {
+          file_usage_delete($account->original->picture, 'user', 'user', $account->uid);
+          file_delete($account->original->picture);
+        }
       }
-
-      // Delete the previous picture if it was deleted or replaced.
-      if ($delete_previous_picture && !empty($account->picture->fid)) {
-        file_usage_delete($account->picture, 'user', 'user', $account->uid);
-        file_delete($account->picture);
-      }
-
-      $edit['picture'] = empty($edit['picture']->fid) ? 0 : $edit['picture']->fid;
+      $account->picture = empty($account->picture->fid) ? 0 : $account->picture->fid;
 
       // Do not allow 'uid' to be changed.
-      $edit['uid'] = $account->uid;
+      $account->uid = $account->original->uid;
       // Save changes to the user table.
-      $success = drupal_write_record('users', $edit, 'uid');
+      $success = drupal_write_record('users', $account, 'uid');
       if ($success === FALSE) {
         // The query failed - better to abort the save than risk further
         // data loss.
@@ -499,13 +490,13 @@ function user_save($account, $edit = array(), $category = 'account') {
       }
 
       // Reload user roles if provided.
-      if (isset($edit['roles']) && is_array($edit['roles'])) {
+      if ($account->roles != $account->original->roles) {
         db_delete('users_roles')
           ->condition('uid', $account->uid)
           ->execute();
 
         $query = db_insert('users_roles')->fields(array('uid', 'rid'));
-        foreach (array_keys($edit['roles']) as $rid) {
+        foreach (array_keys($account->roles) as $rid) {
           if (!in_array($rid, array(DRUPAL_ANONYMOUS_RID, DRUPAL_AUTHENTICATED_RID))) {
             $query->values(array(
               'uid' => $account->uid,
@@ -517,13 +508,13 @@ function user_save($account, $edit = array(), $category = 'account') {
       }
 
       // Delete a blocked user's sessions to kick them if they are online.
-      if (isset($edit['status']) && $edit['status'] == 0) {
+      if ($account->original->status != $account->status && $account->status == 0) {
         drupal_session_destroy_uid($account->uid);
       }
 
       // If the password changed, delete all open sessions and recreate
       // the current one.
-      if (!empty($edit['pass'])) {
+      if ($account->pass != $account->original->pass) {
         drupal_session_destroy_uid($account->uid);
         if ($account->uid == $GLOBALS['user']->uid) {
           drupal_session_regenerate();
@@ -531,61 +522,56 @@ function user_save($account, $edit = array(), $category = 'account') {
       }
 
       // Save Field data.
-      $entity = (object) $edit;
-      field_attach_update('user', $entity);
-
-      // Refresh user object.
-      $user = user_load($account->uid, TRUE);
-      // Make the original, unchanged user account available to update hooks.
-      if (isset($account->original)) {
-        $user->original = $account->original;
-      }
+      field_attach_update('user', $account);
 
       // Send emails after we have the new user object.
-      if (isset($edit['status']) && $edit['status'] != $account->status) {
+      if ($account->status != $account->original->status) {
         // The user's status is changing; conditionally send notification email.
-        $op = $edit['status'] == 1 ? 'status_activated' : 'status_blocked';
-        _user_mail_notify($op, $user);
+        $op = $account->status == 1 ? 'status_activated' : 'status_blocked';
+        _user_mail_notify($op, $account);
       }
 
-      user_module_invoke('update', $edit, $user, $category);
-      module_invoke_all('entity_update', $user, 'user');
-      unset($user->original);
+      // Update $edit with any interim changes to $account.
+      foreach ($account as $key => $value) {
+        if (!property_exists($account->original, $key) || $value !== $account->original->$key) {
+          $edit[$key] = $value;
+        }
+      }
+      user_module_invoke('update', $edit, $account, $category);
+      module_invoke_all('entity_update', $account, 'user');
     }
     else {
       // Allow 'uid' to be set by the caller. There is no danger of writing an
       // existing user as drupal_write_record will do an INSERT.
-      if (empty($edit['uid'])) {
-        $edit['uid'] = db_next_id(db_query('SELECT MAX(uid) FROM {users}')->fetchField());
+      if (empty($account->uid)) {
+        $account->uid = db_next_id(db_query('SELECT MAX(uid) FROM {users}')->fetchField());
       }
       // Allow 'created' to be set by the caller.
-      if (!isset($edit['created'])) {
-        $edit['created'] = REQUEST_TIME;
+      if (!isset($account->created)) {
+        $account->created = REQUEST_TIME;
       }
-      $edit['mail'] = trim($edit['mail']);
-      $success = drupal_write_record('users', $edit);
+      $success = drupal_write_record('users', $account);
       if ($success === FALSE) {
         // On a failed INSERT some other existing user's uid may be returned.
         // We must abort to avoid overwriting their account.
         return FALSE;
       }
 
-      // Build a stub user object.
-      $user = (object) $edit;
-      $user->roles[DRUPAL_AUTHENTICATED_RID] = 'authenticated user';
+      // Make sure $account is properly initialized.
+      $account->roles[DRUPAL_AUTHENTICATED_RID] = 'authenticated user';
 
-      field_attach_insert('user', $user);
-
-      user_module_invoke('insert', $edit, $user, $category);
-      module_invoke_all('entity_insert', $user, 'user');
+      field_attach_insert('user', $account);
+      $edit = (array) $account;
+      user_module_invoke('insert', $edit, $account, $category);
+      module_invoke_all('entity_insert', $account, 'user');
 
       // Save user roles.
-      if (isset($edit['roles']) && is_array($edit['roles'])) {
+      if (count($account->roles) > 1) {
         $query = db_insert('users_roles')->fields(array('uid', 'rid'));
-        foreach (array_keys($edit['roles']) as $rid) {
+        foreach (array_keys($account->roles) as $rid) {
           if (!in_array($rid, array(DRUPAL_ANONYMOUS_RID, DRUPAL_AUTHENTICATED_RID))) {
             $query->values(array(
-              'uid' => $edit['uid'],
+              'uid' => $account->uid,
               'rid' => $rid,
             ));
           }
@@ -593,8 +579,13 @@ function user_save($account, $edit = array(), $category = 'account') {
         $query->execute();
       }
     }
+    // Clear internal properties.
+    unset($account->is_new);
+    unset($account->original);
+    // Clear the static loading cache.
+    entity_get_controller('user')->resetCache(array($account->uid));
 
-    return $user;
+    return $account;
   }
   catch (Exception $e) {
     $transaction->rollback();
@@ -653,7 +644,6 @@ function user_validate_name($name) {
  *   If the address is valid, nothing is returned.
  */
 function user_validate_mail($mail) {
-  $mail = trim($mail);
   if (!$mail) {
     return t('You must enter an e-mail address.');
   }
@@ -1201,6 +1191,11 @@ function user_account_form_validate($form, &$form_state) {
       }
     }
 
+    // Trim whitespace from mail, to prevent confusing 'e-mail not valid'
+    // warnings often caused by cutting and pasting.
+    $mail = trim($form_state['values']['mail']);
+    form_set_value($form['account']['mail'], $mail, $form_state);
+
     // Validate the e-mail address, and check if it is taken by an existing user.
     if ($error = user_validate_mail($form_state['values']['mail'])) {
       form_set_error('mail', $error);
@@ -1478,6 +1473,7 @@ function template_preprocess_user_picture(&$variables) {
 function theme_user_list($variables) {
   $users = $variables['users'];
   $title = $variables['title'];
+  $items = array();
 
   if (!empty($users)) {
     foreach ($users as $user) {
@@ -2516,8 +2512,8 @@ function user_build_content($account, $view_mode = 'full', $langcode = NULL) {
   $account->content = array();
 
   // Build fields content.
-  field_attach_prepare_view('user', array($account->uid => $account), $view_mode);
-  entity_prepare_view('user', array($account->uid => $account));
+  field_attach_prepare_view('user', array($account->uid => $account), $view_mode, $langcode);
+  entity_prepare_view('user', array($account->uid => $account), $langcode);
   $account->content += field_attach_view('user', $account, $view_mode, $langcode);
 
   // Populate $account->content with a render() array.
@@ -2702,6 +2698,7 @@ Your account on [site:name] has been canceled.
 /**
  * Token callback to add unsafe tokens for user mails.
  *
+ * @see _user_mail_text()
  * @see user_mail()
  */
 function user_mail_tokens(&$replacements, $data, $options) {
@@ -2821,6 +2818,10 @@ function user_role_save($role) {
     $query->addExpression('MAX(weight)');
     $role->weight = $query->execute()->fetchField() + 1;
   }
+
+  // Let modules modify the user role before it is saved to the database.
+  module_invoke_all('user_role_presave', $role);
+
   if (!empty($role->rid) && $role->name) {
     $status = drupal_write_record('role', $role, 'rid');
     module_invoke_all('user_role_update', $role);
diff --git a/modules/user/user.test b/modules/user/user.test
index 3c453a8..6ecbfac 100644
--- a/modules/user/user.test
+++ b/modules/user/user.test
@@ -108,6 +108,31 @@ class UserRegistrationTestCase extends DrupalWebTestCase {
     $this->assertText(t('Member for'), t('User can log in after administrator approval.'));
   }
 
+  function testRegistrationEmailDuplicates() {
+    // Don't require e-mail verification.
+    variable_set('user_email_verification', FALSE);
+
+    // Allow registration by site visitors without administrator approval.
+    variable_set('user_register', USER_REGISTER_VISITORS);
+
+    // Set up a user to check for duplicates.
+    $duplicate_user = $this->drupalCreateUser();
+
+    $edit = array();
+    $edit['name'] = $this->randomName();
+    $edit['mail'] = $duplicate_user->mail;
+
+    // Attempt to create a new account using an existing e-mail address.
+    $this->drupalPost('user/register', $edit, t('Create new account'));
+    $this->assertText(t('The e-mail address @email is already registered.', array('@email' => $duplicate_user->mail)), t('Supplying an exact duplicate email address displays an error message'));
+
+    // Attempt to bypass duplicate email registration validation by adding spaces.
+    $edit['mail'] = '   ' . $duplicate_user->mail . '   ';
+
+    $this->drupalPost('user/register', $edit, t('Create new account'));
+    $this->assertText(t('The e-mail address @email is already registered.', array('@email' => $duplicate_user->mail)), t('Supplying a duplicate email address with added whitespace displays an error message'));
+  }
+
   function testRegistrationDefaultValues() {
     // Allow registration by site visitors without administrator approval.
     variable_set('user_register', USER_REGISTER_VISITORS);
diff --git a/profiles/minimal/minimal.info b/profiles/minimal/minimal.info
index c384680..9b0f250 100644
--- a/profiles/minimal/minimal.info
+++ b/profiles/minimal/minimal.info
@@ -1,7 +1,7 @@
 name = Minimal
 description = Start with only a few modules enabled.
 version = VERSION
-core = 8.x
+core = 7.x
 dependencies[] = block
 dependencies[] = dblog
 files[] = minimal.profile
diff --git a/profiles/standard/standard.info b/profiles/standard/standard.info
index 56e4308..73d5d9b 100644
--- a/profiles/standard/standard.info
+++ b/profiles/standard/standard.info
@@ -1,7 +1,7 @@
 name = Standard
 description = Install with commonly used features pre-configured.
 version = VERSION
-core = 8.x
+core = 7.x
 dependencies[] = block
 dependencies[] = color
 dependencies[] = comment
diff --git a/profiles/standard/standard.install b/profiles/standard/standard.install
index 75d8dbd..7082906 100644
--- a/profiles/standard/standard.install
+++ b/profiles/standard/standard.install
@@ -271,7 +271,7 @@ function standard_install() {
   $description = st('Use tags to group articles on similar topics into categories.');
   $help = st('Enter a comma-separated list of words to describe your content.');
   $vocabulary = (object) array(
-    'name' => 'Tags',
+    'name' => st('Tags'),
     'description' => $description,
     'machine_name' => 'tags',
     'help' => $help,
@@ -298,7 +298,7 @@ function standard_install() {
   $instance = array(
     'field_name' => 'field_' . $vocabulary->machine_name,
     'entity_type' => 'node',
-    'label' => $vocabulary->name,
+    'label' => 'Tags',
     'bundle' => 'article',
     'description' => $vocabulary->help,
     'widget' => array(
diff --git a/profiles/testing/modules/drupal_system_listing_compatible_test/drupal_system_listing_compatible_test.info b/profiles/testing/modules/drupal_system_listing_compatible_test/drupal_system_listing_compatible_test.info
index 53515e7..085c335 100644
--- a/profiles/testing/modules/drupal_system_listing_compatible_test/drupal_system_listing_compatible_test.info
+++ b/profiles/testing/modules/drupal_system_listing_compatible_test/drupal_system_listing_compatible_test.info
@@ -2,5 +2,5 @@ name = "Drupal system listing compatible test"
 description = "Support module for testing the drupal_system_listing function."
 package = Testing
 version = VERSION
-core = 8.x
+core = 7.x
 hidden = TRUE
diff --git a/profiles/testing/testing.info b/profiles/testing/testing.info
index 8e353ed..8217201 100644
--- a/profiles/testing/testing.info
+++ b/profiles/testing/testing.info
@@ -1,5 +1,5 @@
 name = Testing
 description = Minimal profile for running tests. Includes absolutely required modules only.
 version = VERSION
-core = 8.x
+core = 7.x
 hidden = TRUE
diff --git a/robots.txt b/robots.txt
index 490fa59..35ea42d 100644
--- a/robots.txt
+++ b/robots.txt
@@ -40,6 +40,7 @@ Disallow: /xmlrpc.php
 # Paths (clean URLs)
 Disallow: /admin/
 Disallow: /comment/reply/
+Disallow: /filter/tips/
 Disallow: /node/add/
 Disallow: /search/
 Disallow: /user/register/
@@ -49,6 +50,7 @@ Disallow: /user/logout/
 # Paths (no clean URLs)
 Disallow: /?q=admin/
 Disallow: /?q=comment/reply/
+Disallow: /?q=filter/tips/
 Disallow: /?q=node/add/
 Disallow: /?q=search/
 Disallow: /?q=user/password/
diff --git a/scripts/dump-database-d6.sh b/scripts/dump-database-d6.sh
index 23e3fca..41146b0 100644
--- a/scripts/dump-database-d6.sh
+++ b/scripts/dump-database-d6.sh
@@ -33,7 +33,6 @@ include_once dirname(__FILE__) . '/../includes/utility.inc';
 // Output the PHP header.
 $output = <<<ENDOFHEADER
 <?php
-// \$Id\$
 
 /**
  * @file
diff --git a/scripts/run-tests.sh b/scripts/run-tests.sh
index 2cfbcac..db34924 100755
--- a/scripts/run-tests.sh
+++ b/scripts/run-tests.sh
@@ -166,7 +166,7 @@ Drupal installation as the webserver user (differs per configuration), or root:
 sudo -u [wwwrun|www-data|etc] php ./scripts/{$args['script']}
   --url http://example.com/ --all
 sudo -u [wwwrun|www-data|etc] php ./scripts/{$args['script']}
-  --url http://example.com/ --class UploadTestCase
+  --url http://example.com/ --class BlockTestCase
 \n
 EOF;
 }
diff --git a/themes/bartik/bartik.info b/themes/bartik/bartik.info
index aab37a7..ce7e13f 100644
--- a/themes/bartik/bartik.info
+++ b/themes/bartik/bartik.info
@@ -3,7 +3,7 @@ name = Bartik
 description = A flexible, recolorable theme with many regions.
 package = Core
 version = VERSION
-core = 8.x
+core = 7.x
 
 stylesheets[all][] = css/layout.css
 stylesheets[all][] = css/style.css
diff --git a/themes/bartik/color/color.inc b/themes/bartik/color/color.inc
index fa323ed..7c29f50 100644
--- a/themes/bartik/color/color.inc
+++ b/themes/bartik/color/color.inc
@@ -6,86 +6,86 @@ drupal_add_js(array('color' => array('logo' => theme_get_setting('logo', 'bartik
 $info = array(
   // Available colors and color labels used in theme.
   'fields' => array(
-    'bg' => t('Main background'),
-    'link' => t('Link color'),
     'top' => t('Header top'),
     'bottom' => t('Header bottom'),
-    'text' => t('Text color'),
+    'bg' => t('Main background'),
     'sidebar' => t('Sidebar background'),
     'sidebarborders' => t('Sidebar borders'),
     'footer' => t('Footer background'),
     'titleslogan' => t('Title and slogan'),
+    'text' => t('Text color'),
+    'link' => t('Link color'),
   ),
   // Pre-defined color schemes.
   'schemes' => array(
     'default' => array(
       'title' => t('Blue Lagoon (default)'),
       'colors' => array(
-        'bg' => '#ffffff',
-        'link' => '#0071B3',
         'top' => '#0779bf',
         'bottom' => '#48a9e4',
-        'text' => '#3b3b3b',
+        'bg' => '#ffffff',
         'sidebar' => '#f6f6f2',
         'sidebarborders' => '#f9f9f9',
         'footer' => '#292929',
         'titleslogan' => '#fffeff',
+        'text' => '#3b3b3b',
+        'link' => '#0071B3',
       ),
     ),
     'firehouse' => array(
       'title' => t('Firehouse'),
       'colors' => array(
-        'bg' => '#ffffff',
-        'link' => '#d6121f',
         'top' => '#cd2d2d',
         'bottom' => '#cf3535',
-        'text' => '#3b3b3b',
+        'bg' => '#ffffff',
         'sidebar' => '#f1f4f0',
         'sidebarborders' => '#ededed',
         'footer' => '#1f1d1c',
         'titleslogan' => '#fffeff',
+        'text' => '#3b3b3b',
+        'link' => '#d6121f',
       ),
     ),
     'ice' => array(
       'title' => t('Ice'),
       'colors' => array(
-        'bg' => '#ffffff',
-        'link' => '#019dbf',
         'top' => '#d0d0d0',
         'bottom' => '#c2c4c5',
-        'text' => '#4a4a4a',
+        'bg' => '#ffffff',
         'sidebar' => '#ffffff',
         'sidebarborders' => '#cccccc',
         'footer' => '#24272c',
         'titleslogan' => '#000000',
+        'text' => '#4a4a4a',
+        'link' => '#019dbf',
       ),
     ),
     'plum' => array(
       'title' => t('Plum'),
       'colors' => array(
-        'bg' => '#fffdf7',
-        'link' => '#9d408d',
         'top' => '#4c1c58',
         'bottom' => '#593662',
-        'text' => '#301313',
+        'bg' => '#fffdf7',
         'sidebar' => '#edede7',
         'sidebarborders' => '#e7e7e7',
         'footer' => '#2c2c28',
         'titleslogan' => '#ffffff',
+        'text' => '#301313',
+        'link' => '#9d408d',
       ),
     ),
     'slate' => array(
       'title' => t('Slate'),
       'colors' => array(
-        'bg' => '#ffffff',
-        'link' => '#0073b6',
         'top' => '#4a4a4a',
         'bottom' => '#4e4e4e',
-        'text' => '#3b3b3b',
+        'bg' => '#ffffff',
         'sidebar' => '#ffffff',
         'sidebarborders' => '#d0d0d0',
         'footer' => '#161617',
         'titleslogan' => '#ffffff',
+        'text' => '#3b3b3b',
+        'link' => '#0073b6',
       ),
     ),
   ),
diff --git a/themes/bartik/css/colors.css b/themes/bartik/css/colors.css
index 7cd1cd2..fd83374 100644
--- a/themes/bartik/css/colors.css
+++ b/themes/bartik/css/colors.css
@@ -23,8 +23,12 @@ body.overlay {
 }
 #header {
   background-color: #48a9e4;
-  background-image: -webkit-gradient(linear, 0% 0%, 0% 100%, from(#0779bf), to(#48a9e4));
-  background-image: -moz-linear-gradient(-90deg, #0779bf, #48a9e4);
+  background-image: -moz-linear-gradient(top, #0779bf 0%, #48a9e4 100%);
+  background-image: -ms-linear-gradient(top, #0779bf 0%, #48a9e4 100%);
+  background-image: -o-linear-gradient(top, #0779bf 0%, #48a9e4 100%);
+  background-image: -webkit-gradient(linear, left top, left bottom, color-stop(0, #0779bf), color-stop(1, #48a9e4));
+  background-image: -webkit-linear-gradient(top, #0779bf 0%, #48a9e4 100%);
+  background-image: linear-gradient(top, #0779bf 0%, #48a9e4 100%);
 }
 a {
   color: #0071B3;
diff --git a/themes/bartik/css/style.css b/themes/bartik/css/style.css
index 75e43b0..7c14277 100644
--- a/themes/bartik/css/style.css
+++ b/themes/bartik/css/style.css
@@ -1066,25 +1066,26 @@ div.messages {
 
 /* -------------- Password Meter  ------------- */
 
+.confirm-parent,
+.password-parent {
+  width: 34em;
+}
 .password-parent,
 div.form-item div.password-suggestions {
   position: relative;
-  width: auto;
 }
-#password-strength {
-  float: none;
-  left: 16em;
-  position: absolute;
-  width: 11.5em;
-}
-#password-strength-text,
+.password-strength-text,
 .password-strength-title,
 div.password-confirm {
   font-size: 0.82em;
 }
-#password-strength-text {
+.password-strength-text {
   margin-top: 0.2em;
 }
+div.password-confirm {
+  margin-top: 2.2em;
+  width: 20.73em;
+}
 
 /* ---------------- Buttons    ---------------- */
 
@@ -1135,7 +1136,7 @@ fieldset {
 .fieldset-wrapper {
   margin-top: 25px;
 }
-.vertical-tabs .fieldset-wrapper {
+.node-form .vertical-tabs .fieldset-wrapper {
   margin-top: 0;
 }
 .filter-wrapper {
diff --git a/themes/engines/phptemplate/phptemplate.engine b/themes/engines/phptemplate/phptemplate.engine
index 78b54d5..d293b85 100644
--- a/themes/engines/phptemplate/phptemplate.engine
+++ b/themes/engines/phptemplate/phptemplate.engine
@@ -1,5 +1,4 @@
 <?php
-// $Id$
 
 /**
  * @file
diff --git a/themes/garland/garland.info b/themes/garland/garland.info
index add4149..307f03a 100644
--- a/themes/garland/garland.info
+++ b/themes/garland/garland.info
@@ -2,7 +2,7 @@ name = Garland
 description = A multi-column theme which can be configured to modify colors and switch between fixed and fluid width layouts.
 package = Core
 version = VERSION
-core = 8.x
+core = 7.x
 stylesheets[all][] = style.css
 stylesheets[print][] = print.css
 settings[garland_width] = fluid
diff --git a/themes/seven/seven.info b/themes/seven/seven.info
index 969f749..4293c07 100644
--- a/themes/seven/seven.info
+++ b/themes/seven/seven.info
@@ -2,7 +2,7 @@ name = Seven
 description = A simple one-column, tableless, fluid width administration theme.
 package = Core
 version = VERSION
-core = 8.x
+core = 7.x
 stylesheets[screen][] = reset.css
 stylesheets[screen][] = style.css
 settings[shortcut_module_link] = 1
diff --git a/themes/seven/template.php b/themes/seven/template.php
index 5be459b..4582749 100644
--- a/themes/seven/template.php
+++ b/themes/seven/template.php
@@ -88,10 +88,10 @@ function seven_tablesort_indicator($variables) {
   $style = $variables['style'];
   $theme_path = drupal_get_path('theme', 'seven');
   if ($style == 'asc') {
-    return theme('image', array('path' => $theme_path . '/images/arrow-asc.png', 'alt' => t('sort ascending'), 'title' => t('sort ascending')));
+    return theme('image', array('path' => $theme_path . '/images/arrow-asc.png', 'alt' => t('sort ascending'), 'width' => 13, 'height' => 13, 'title' => t('sort ascending')));
   }
   else {
-    return theme('image', array('path' => $theme_path . '/images/arrow-desc.png', 'alt' => t('sort descending'), 'title' => t('sort descending')));
+    return theme('image', array('path' => $theme_path . '/images/arrow-desc.png', 'alt' => t('sort descending'), 'width' => 13, 'height' => 13, 'title' => t('sort descending')));
   }
 }
 
diff --git a/themes/stark/stark.info b/themes/stark/stark.info
index 5773c5e..f9b88df 100644
--- a/themes/stark/stark.info
+++ b/themes/stark/stark.info
@@ -2,5 +2,5 @@ name = Stark
 description = This theme demonstrates Drupal's default HTML markup and CSS styles. To learn how to build your own theme and override Drupal's default code, see the <a href="http://drupal.org/theme-guide">Theming Guide</a>.
 package = Core
 version = VERSION
-core = 8.x
+core = 7.x
 stylesheets[all][] = layout.css
diff --git a/themes/tests/test_theme/test_theme.info b/themes/tests/test_theme/test_theme.info
index c32fe57..dd5584b 100644
--- a/themes/tests/test_theme/test_theme.info
+++ b/themes/tests/test_theme/test_theme.info
@@ -1,6 +1,6 @@
 name = Test theme
 description = Theme for testing the theme system
-core = 8.x
+core = 7.x
 hidden = TRUE
 
 ; Normally, themes may list CSS files like this, and if they exist in the theme
diff --git a/themes/tests/update_test_basetheme/update_test_basetheme.info b/themes/tests/update_test_basetheme/update_test_basetheme.info
index c8550b5..9718784 100644
--- a/themes/tests/update_test_basetheme/update_test_basetheme.info
+++ b/themes/tests/update_test_basetheme/update_test_basetheme.info
@@ -1,4 +1,4 @@
 name = Update test base theme
 description = Test theme which acts as a base theme for other test subthemes.
-core = 8.x
+core = 7.x
 hidden = TRUE
diff --git a/themes/tests/update_test_subtheme/update_test_subtheme.info b/themes/tests/update_test_subtheme/update_test_subtheme.info
index c783dc2..6ca42f4 100644
--- a/themes/tests/update_test_subtheme/update_test_subtheme.info
+++ b/themes/tests/update_test_subtheme/update_test_subtheme.info
@@ -1,5 +1,5 @@
 name = Update test subtheme
 description = Test theme which uses update_test_basetheme as the base theme.
-core = 8.x
+core = 7.x
 base theme = update_test_basetheme
 hidden = TRUE
diff --git a/update.php b/update.php
index 5a52ea5..ac594ff 100644
--- a/update.php
+++ b/update.php
@@ -56,9 +56,10 @@ function update_script_selection_form($form, &$form_state) {
   foreach ($updates as $module => $update) {
     if (!isset($update['start'])) {
       $form['start'][$module] = array(
-        '#title' => $module,
-        '#item'  => $update['warning'],
-        '#prefix' => '<div class="warning">',
+        '#type' => 'item',
+        '#title' => $module . ' module',
+        '#markup'  => $update['warning'],
+        '#prefix' => '<div class="messages warning">',
         '#suffix' => '</div>',
       );
       $incompatible_updates_exist = TRUE;
@@ -346,11 +347,20 @@ require_once DRUPAL_ROOT . '/includes/common.inc';
 require_once DRUPAL_ROOT . '/includes/file.inc';
 require_once DRUPAL_ROOT . '/includes/entity.inc';
 require_once DRUPAL_ROOT . '/includes/unicode.inc';
-update_prepare_d8_bootstrap();
+update_prepare_d7_bootstrap();
+
+// Temporarily disable configurable timezones so the upgrade process uses the
+// site-wide timezone. This prevents a PHP notice during session initlization
+// and before offsets have been converted in user_update_7002().
+$configurable_timezones = variable_get('configurable_timezones', 1);
+$conf['configurable_timezones'] = 0;
 
 // Determine if the current user has access to run update.php.
 drupal_bootstrap(DRUPAL_BOOTSTRAP_SESSION);
 
+// Reset configurable timezones.
+$conf['configurable_timezones'] = $configurable_timezones;
+
 // Only allow the requirements check to proceed if the current user has access
 // to run updates (since it may expose sensitive information about the site's
 // configuration).
@@ -382,13 +392,13 @@ if (empty($op) && update_access_allowed()) {
   install_goto('update.php?op=info');
 }
 
-// update_fix_d8_requirements() needs to run before bootstrapping beyond path.
+// update_fix_d7_requirements() needs to run before bootstrapping beyond path.
 // So bootstrap to DRUPAL_BOOTSTRAP_LANGUAGE then include unicode.inc.
 
 drupal_bootstrap(DRUPAL_BOOTSTRAP_LANGUAGE);
 include_once DRUPAL_ROOT . '/includes/unicode.inc';
 
-update_fix_d8_requirements();
+update_fix_d7_requirements();
 
 // Now proceed with a full bootstrap.
 
diff --git a/web.config b/web.config
index e990e03..34afd0a 100644
--- a/web.config
+++ b/web.config
@@ -3,89 +3,41 @@
   <system.webServer>
     <!-- Don't show directory listings for URLs which map to a directory. -->
     <directoryBrowse enabled="false" />
-
-    <!--
-       Caching configuration was not delegated by default. Some hosters may not
-       delegate the caching configuration to site owners by default and that
-       may cause errors when users install. Uncomment this if you want to and
-       are allowed to enable caching.
-     -->
-    <!--
-    <caching>
-      <profiles>
-        <add extension=".php" policy="DisableCache" kernelCachePolicy="DisableCache" />
-        <add extension=".html" policy="CacheForTimePeriod" kernelCachePolicy="CacheForTimePeriod" duration="14:00:00" />
-      </profiles>
-    </caching>
-     -->
-
     <rewrite>
       <rules>
         <rule name="Protect files and directories from prying eyes" stopProcessing="true">
-          <match url="\.(engine|inc|info|install|module|profile|test|po|sh|.*sql|theme|tpl(\.php)?|xtmpl|svn-base)$|^(code-style\.pl|Entries.*|Repository|Root|Tag|Template|all-wcprops|entries|format)$" />
+          <match url="\.(engine|inc|info|install|make|module|profile|test|po|sh|.*sql|theme|tpl(\.php)?|xtmpl)$|^(\..*|Entries.*|Repository|Root|Tag|Template)$" />
           <action type="CustomResponse" statusCode="403" subStatusCode="0" statusReason="Forbidden" statusDescription="Access is forbidden." />
         </rule>
-
         <rule name="Force simple error message for requests for non-existent favicon.ico" stopProcessing="true">
           <match url="favicon\.ico" />
           <action type="CustomResponse" statusCode="404" subStatusCode="1" statusReason="File Not Found" statusDescription="The requested file favicon.ico was not found" />
         </rule>
-
-    <!-- To redirect all users to access the site WITH the 'www.' prefix,
-     http://example.com/... will be redirected to http://www.example.com/...)
-     adapt and uncomment the following:   -->
-    <!--
-        <rule name="Redirect to add www" stopProcessing="true">
-          <match url="^(.*)$" ignoreCase="false" />
-          <conditions>
-            <add input="{HTTP_HOST}" pattern="^example\.com$" />
-          </conditions>
-          <action type="Redirect" redirectType="Permanent" url="http://www.example.com/{R:1}" />
-        </rule>
-    -->
-
-    <!-- To redirect all users to access the site WITHOUT the 'www.' prefix,
-     http://www.example.com/... will be redirected to http://example.com/...)
-     adapt and uncomment the following:   -->
-    <!--
-        <rule name="Redirect to remove www" stopProcessing="true">
-          <match url="^(.*)$" ignoreCase="false" />
-          <conditions>
-            <add input="{HTTP_HOST}" pattern="^www\.example\.com$" />
-          </conditions>
-          <action type="Redirect" redirectType="Permanent" url="http://example.com/{R:1}" />
-        </rule>
-    -->
-
         <!-- Rewrite URLs of the form 'x' to the form 'index.php?q=x'. -->
-        <rule name="Short URLS" stopProcessing="true">
+        <rule name="Short URLs" stopProcessing="true">
           <match url="^(.*)$" ignoreCase="false" />
           <conditions>
             <add input="{REQUEST_FILENAME}" matchType="IsFile" ignoreCase="false" negate="true" />
             <add input="{REQUEST_FILENAME}" matchType="IsDirectory" ignoreCase="false" negate="true" />
             <add input="{URL}" pattern="^/favicon.ico$" ignoreCase="false" negate="true" />
           </conditions>
-          <!-- Pass all requests not referring directly to files in the
-            filesystem to index.php. Clean URLs are handled in
-            drupal_environment_initialize(). -->
-          <action type="Rewrite" url="index.php" />
+          <action type="Rewrite" url="index.php?q={R:1}" appendQueryString="true" />
         </rule>
       </rules>
     </rewrite>
 
-  <!-- If running Windows Server 2008 R2 this can be commented out -->
-    <!-- httpErrors>
+    <httpErrors>
       <remove statusCode="404" subStatusCode="-1" />
       <error statusCode="404" prefixLanguageFilePath="" path="/index.php" responseMode="ExecuteURL" />
-    </httpErrors -->
+    </httpErrors>
 
     <defaultDocument>
-     <!-- Set the default document -->
+      <!-- Set the default document -->
       <files>
-         <clear />
+        <remove value="index.php" />
         <add value="index.php" />
       </files>
     </defaultDocument>
-
   </system.webServer>
 </configuration>
+
