populate_options

The timeline below displays how wordpress function populate_options has changed across different WordPress versions. If a version is not listed, refer to the next available version below.

WordPress Version: 4.3

/**
 * Create WordPress options and set the default values.
 *
 * @since 1.5.0
 * @since 5.1.0 The $options parameter has been added.
 *
 * @global wpdb $wpdb                  WordPress database abstraction object.
 * @global int  $wp_db_version         WordPress database version.
 * @global int  $wp_current_db_version The old (current) database version.
 *
 * @param array $options Optional. Custom option $key => $value pairs to use. Default empty array.
 */
function populate_options(array $options = array())
{
    global $wpdb, $wp_db_version, $wp_current_db_version;
    $guessurl = wp_guess_url();
    /**
     * Fires before creating WordPress options and populating their default values.
     *
     * @since 2.6.0
     */
    do_action('populate_options');
    // If WP_DEFAULT_THEME doesn't exist, fall back to the latest core default theme.
    $stylesheet = WP_DEFAULT_THEME;
    $template = WP_DEFAULT_THEME;
    $theme = wp_get_theme(WP_DEFAULT_THEME);
    if (!$theme->exists()) {
        $theme = WP_Theme::get_core_default_theme();
    }
    // If we can't find a core default theme, WP_DEFAULT_THEME is the best we can do.
    if ($theme) {
        $stylesheet = $theme->get_stylesheet();
        $template = $theme->get_template();
    }
    $timezone_string = '';
    $gmt_offset = 0;
    /*
     * translators: default GMT offset or timezone string. Must be either a valid offset (-12 to 14)
     * or a valid timezone string (America/New_York). See https://www.php.net/manual/en/timezones.php
     * for all timezone strings currently supported by PHP.
     *
     * Important: When a previous timezone string, like `Europe/Kiev`, has been superseded by an
     * updated one, like `Europe/Kyiv`, as a rule of thumb, the **old** timezone name should be used
     * in the "translation" to allow for the default timezone setting to be PHP cross-version compatible,
     * as old timezone names will be recognized in new PHP versions, while new timezone names cannot
     * be recognized in old PHP versions.
     *
     * To verify which timezone strings are available in the _oldest_ PHP version supported, you can
     * use https://3v4l.org/6YQAt#v5.6.20 and replace the "BR" (Brazil) in the code line with the
     * country code for which you want to look up the supported timezone names.
     */
    $offset_or_tz = _x('0', 'default GMT offset or timezone string');
    if (is_numeric($offset_or_tz)) {
        $gmt_offset = $offset_or_tz;
    } elseif ($offset_or_tz && in_array($offset_or_tz, timezone_identifiers_list(DateTimeZone::ALL_WITH_BC), true)) {
        $timezone_string = $offset_or_tz;
    }
    $defaults = array(
        'siteurl' => $guessurl,
        'home' => $guessurl,
        'blogname' => __('My Site'),
        'blogdescription' => '',
        'users_can_register' => 0,
        'admin_email' => '[email protected]',
        /* translators: Default start of the week. 0 = Sunday, 1 = Monday. */
        'start_of_week' => _x('1', 'start of week'),
        'use_balanceTags' => 0,
        'use_smilies' => 1,
        'require_name_email' => 1,
        'comments_notify' => 1,
        'posts_per_rss' => 10,
        'rss_use_excerpt' => 0,
        'mailserver_url' => 'mail.example.com',
        'mailserver_login' => '[email protected]',
        'mailserver_pass' => 'password',
        'mailserver_port' => 110,
        'default_category' => 1,
        'default_comment_status' => 'open',
        'default_ping_status' => 'open',
        'default_pingback_flag' => 1,
        'posts_per_page' => 10,
        /* translators: Default date format, see https://www.php.net/manual/datetime.format.php */
        'date_format' => __('F j, Y'),
        /* translators: Default time format, see https://www.php.net/manual/datetime.format.php */
        'time_format' => __('g:i a'),
        /* translators: Links last updated date format, see https://www.php.net/manual/datetime.format.php */
        'links_updated_date_format' => __('F j, Y g:i a'),
        'comment_moderation' => 0,
        'moderation_notify' => 1,
        'permalink_structure' => '',
        'rewrite_rules' => '',
        'hack_file' => 0,
        'blog_charset' => 'UTF-8',
        'moderation_keys' => '',
        'active_plugins' => array(),
        'category_base' => '',
        'ping_sites' => 'http://rpc.pingomatic.com/',
        'comment_max_links' => 2,
        'gmt_offset' => $gmt_offset,
        // 1.5.0
        'default_email_category' => 1,
        'recently_edited' => '',
        'template' => $template,
        'stylesheet' => $stylesheet,
        'comment_registration' => 0,
        'html_type' => 'text/html',
        // 1.5.1
        'use_trackback' => 0,
        // 2.0.0
        'default_role' => 'subscriber',
        'db_version' => $wp_db_version,
        // 2.0.1
        'uploads_use_yearmonth_folders' => 1,
        'upload_path' => '',
        // 2.1.0
        'blog_public' => '1',
        'default_link_category' => 2,
        'show_on_front' => 'posts',
        // 2.2.0
        'tag_base' => '',
        // 2.5.0
        'show_avatars' => '1',
        'avatar_rating' => 'G',
        'upload_url_path' => '',
        'thumbnail_size_w' => 150,
        'thumbnail_size_h' => 150,
        'thumbnail_crop' => 1,
        'medium_size_w' => 300,
        'medium_size_h' => 300,
        // 2.6.0
        'avatar_default' => 'mystery',
        // 2.7.0
        'large_size_w' => 1024,
        'large_size_h' => 1024,
        'image_default_link_type' => 'none',
        'image_default_size' => '',
        'image_default_align' => '',
        'close_comments_for_old_posts' => 0,
        'close_comments_days_old' => 14,
        'thread_comments' => 1,
        'thread_comments_depth' => 5,
        'page_comments' => 0,
        'comments_per_page' => 50,
        'default_comments_page' => 'newest',
        'comment_order' => 'asc',
        'sticky_posts' => array(),
        'widget_categories' => array(),
        'widget_text' => array(),
        'widget_rss' => array(),
        'uninstall_plugins' => array(),
        // 2.8.0
        'timezone_string' => $timezone_string,
        // 3.0.0
        'page_for_posts' => 0,
        'page_on_front' => 0,
        // 3.1.0
        'default_post_format' => 0,
        // 3.5.0
        'link_manager_enabled' => 0,
        // 4.3.0
        'finished_splitting_shared_terms' => 1,
        'site_icon' => 0,
        // 4.4.0
        'medium_large_size_w' => 768,
        'medium_large_size_h' => 0,
        // 4.9.6
        'wp_page_for_privacy_policy' => 0,
        // 4.9.8
        'show_comments_cookies_opt_in' => 1,
        // 5.3.0
        'admin_email_lifespan' => time() + 6 * MONTH_IN_SECONDS,
        // 5.5.0
        'disallowed_keys' => '',
        'comment_previously_approved' => 1,
        'auto_plugin_theme_update_emails' => array(),
        // 5.6.0
        'auto_update_core_dev' => 'enabled',
        'auto_update_core_minor' => 'enabled',
        /*
         * Default to enabled for new installs.
         * See https://core.trac.wordpress.org/ticket/51742.
         */
        'auto_update_core_major' => 'enabled',
        // 5.8.0
        'wp_force_deactivated_plugins' => array(),
        // 6.4.0
        'wp_attachment_pages_enabled' => 0,
    );
    // 3.3.0
    if (!is_multisite()) {
        $defaults['initial_db_version'] = (!empty($wp_current_db_version) && $wp_current_db_version < $wp_db_version) ? $wp_current_db_version : $wp_db_version;
    }
    // 3.0.0 multisite.
    if (is_multisite()) {
        $defaults['permalink_structure'] = '/%year%/%monthnum%/%day%/%postname%/';
    }
    $options = wp_parse_args($options, $defaults);
    // Set autoload to no for these options.
    $fat_options = array('moderation_keys', 'recently_edited', 'disallowed_keys', 'uninstall_plugins', 'auto_plugin_theme_update_emails');
    $keys = "'" . implode("', '", array_keys($options)) . "'";
    $existing_options = $wpdb->get_col("SELECT option_name FROM {$wpdb->options} WHERE option_name in ( {$keys} )");
    // phpcs:ignore WordPress.DB.PreparedSQL.NotPrepared
    $insert = '';
    foreach ($options as $option => $value) {
        if (in_array($option, $existing_options, true)) {
            continue;
        }
        if (in_array($option, $fat_options, true)) {
            $autoload = 'no';
        } else {
            $autoload = 'yes';
        }
        if (!empty($insert)) {
            $insert .= ', ';
        }
        $value = maybe_serialize(sanitize_option($option, $value));
        $insert .= $wpdb->prepare('(%s, %s, %s)', $option, $value, $autoload);
    }
    if (!empty($insert)) {
        $wpdb->query("INSERT INTO {$wpdb->options} (option_name, option_value, autoload) VALUES " . $insert);
        // phpcs:ignore WordPress.DB.PreparedSQL.NotPrepared
    }
    // In case it is set, but blank, update "home".
    if (!__get_option('home')) {
        update_option('home', $guessurl);
    }
    // Delete unused options.
    $unusedoptions = array('blodotgsping_url', 'bodyterminator', 'emailtestonly', 'phoneemail_separator', 'smilies_directory', 'subjectprefix', 'use_bbcode', 'use_blodotgsping', 'use_phoneemail', 'use_quicktags', 'use_weblogsping', 'weblogs_cache_file', 'use_preview', 'use_htmltrans', 'smilies_directory', 'fileupload_allowedusers', 'use_phoneemail', 'default_post_status', 'default_post_category', 'archive_mode', 'time_difference', 'links_minadminlevel', 'links_use_adminlevels', 'links_rating_type', 'links_rating_char', 'links_rating_ignore_zero', 'links_rating_single_image', 'links_rating_image0', 'links_rating_image1', 'links_rating_image2', 'links_rating_image3', 'links_rating_image4', 'links_rating_image5', 'links_rating_image6', 'links_rating_image7', 'links_rating_image8', 'links_rating_image9', 'links_recently_updated_time', 'links_recently_updated_prepend', 'links_recently_updated_append', 'weblogs_cacheminutes', 'comment_allowed_tags', 'search_engine_friendly_urls', 'default_geourl_lat', 'default_geourl_lon', 'use_default_geourl', 'weblogs_xml_url', 'new_users_can_blog', '_wpnonce', '_wp_http_referer', 'Update', 'action', 'rich_editing', 'autosave_interval', 'deactivated_plugins', 'can_compress_scripts', 'page_uris', 'update_core', 'update_plugins', 'update_themes', 'doing_cron', 'random_seed', 'rss_excerpt_length', 'secret', 'use_linksupdate', 'default_comment_status_page', 'wporg_popular_tags', 'what_to_show', 'rss_language', 'language', 'enable_xmlrpc', 'enable_app', 'embed_autourls', 'default_post_edit_rows', 'gzipcompression', 'advanced_edit');
    foreach ($unusedoptions as $option) {
        delete_option($option);
    }
    // Delete obsolete magpie stuff.
    $wpdb->query("DELETE FROM {$wpdb->options} WHERE option_name REGEXP '^rss_[0-9a-f]{32}(_ts)?\$'");
    // Clear expired transients.
    delete_expired_transients(true);
}

WordPress Version: 6.4

/**
 * Create WordPress options and set the default values.
 *
 * @since 1.5.0
 * @since 5.1.0 The $options parameter has been added.
 *
 * @global wpdb $wpdb                  WordPress database abstraction object.
 * @global int  $wp_db_version         WordPress database version.
 * @global int  $wp_current_db_version The old (current) database version.
 *
 * @param array $options Optional. Custom option $key => $value pairs to use. Default empty array.
 */
function populate_options(array $options = array())
{
    global $wpdb, $wp_db_version, $wp_current_db_version;
    $guessurl = wp_guess_url();
    /**
     * Fires before creating WordPress options and populating their default values.
     *
     * @since 2.6.0
     */
    do_action('populate_options');
    // If WP_DEFAULT_THEME doesn't exist, fall back to the latest core default theme.
    $stylesheet = WP_DEFAULT_THEME;
    $template = WP_DEFAULT_THEME;
    $theme = wp_get_theme(WP_DEFAULT_THEME);
    if (!$theme->exists()) {
        $theme = WP_Theme::get_core_default_theme();
    }
    // If we can't find a core default theme, WP_DEFAULT_THEME is the best we can do.
    if ($theme) {
        $stylesheet = $theme->get_stylesheet();
        $template = $theme->get_template();
    }
    $timezone_string = '';
    $gmt_offset = 0;
    /*
     * translators: default GMT offset or timezone string. Must be either a valid offset (-12 to 14)
     * or a valid timezone string (America/New_York). See https://www.php.net/manual/en/timezones.php
     * for all timezone strings currently supported by PHP.
     *
     * Important: When a previous timezone string, like `Europe/Kiev`, has been superseded by an
     * updated one, like `Europe/Kyiv`, as a rule of thumb, the **old** timezone name should be used
     * in the "translation" to allow for the default timezone setting to be PHP cross-version compatible,
     * as old timezone names will be recognized in new PHP versions, while new timezone names cannot
     * be recognized in old PHP versions.
     *
     * To verify which timezone strings are available in the _oldest_ PHP version supported, you can
     * use https://3v4l.org/6YQAt#v5.6.20 and replace the "BR" (Brazil) in the code line with the
     * country code for which you want to look up the supported timezone names.
     */
    $offset_or_tz = _x('0', 'default GMT offset or timezone string');
    if (is_numeric($offset_or_tz)) {
        $gmt_offset = $offset_or_tz;
    } elseif ($offset_or_tz && in_array($offset_or_tz, timezone_identifiers_list(DateTimeZone::ALL_WITH_BC), true)) {
        $timezone_string = $offset_or_tz;
    }
    $defaults = array(
        'siteurl' => $guessurl,
        'home' => $guessurl,
        'blogname' => __('My Site'),
        'blogdescription' => '',
        'users_can_register' => 0,
        'admin_email' => '[email protected]',
        /* translators: Default start of the week. 0 = Sunday, 1 = Monday. */
        'start_of_week' => _x('1', 'start of week'),
        'use_balanceTags' => 0,
        'use_smilies' => 1,
        'require_name_email' => 1,
        'comments_notify' => 1,
        'posts_per_rss' => 10,
        'rss_use_excerpt' => 0,
        'mailserver_url' => 'mail.example.com',
        'mailserver_login' => '[email protected]',
        'mailserver_pass' => 'password',
        'mailserver_port' => 110,
        'default_category' => 1,
        'default_comment_status' => 'open',
        'default_ping_status' => 'open',
        'default_pingback_flag' => 1,
        'posts_per_page' => 10,
        /* translators: Default date format, see https://www.php.net/manual/datetime.format.php */
        'date_format' => __('F j, Y'),
        /* translators: Default time format, see https://www.php.net/manual/datetime.format.php */
        'time_format' => __('g:i a'),
        /* translators: Links last updated date format, see https://www.php.net/manual/datetime.format.php */
        'links_updated_date_format' => __('F j, Y g:i a'),
        'comment_moderation' => 0,
        'moderation_notify' => 1,
        'permalink_structure' => '',
        'rewrite_rules' => '',
        'hack_file' => 0,
        'blog_charset' => 'UTF-8',
        'moderation_keys' => '',
        'active_plugins' => array(),
        'category_base' => '',
        'ping_sites' => 'http://rpc.pingomatic.com/',
        'comment_max_links' => 2,
        'gmt_offset' => $gmt_offset,
        // 1.5.0
        'default_email_category' => 1,
        'recently_edited' => '',
        'template' => $template,
        'stylesheet' => $stylesheet,
        'comment_registration' => 0,
        'html_type' => 'text/html',
        // 1.5.1
        'use_trackback' => 0,
        // 2.0.0
        'default_role' => 'subscriber',
        'db_version' => $wp_db_version,
        // 2.0.1
        'uploads_use_yearmonth_folders' => 1,
        'upload_path' => '',
        // 2.1.0
        'blog_public' => '1',
        'default_link_category' => 2,
        'show_on_front' => 'posts',
        // 2.2.0
        'tag_base' => '',
        // 2.5.0
        'show_avatars' => '1',
        'avatar_rating' => 'G',
        'upload_url_path' => '',
        'thumbnail_size_w' => 150,
        'thumbnail_size_h' => 150,
        'thumbnail_crop' => 1,
        'medium_size_w' => 300,
        'medium_size_h' => 300,
        // 2.6.0
        'avatar_default' => 'mystery',
        // 2.7.0
        'large_size_w' => 1024,
        'large_size_h' => 1024,
        'image_default_link_type' => 'none',
        'image_default_size' => '',
        'image_default_align' => '',
        'close_comments_for_old_posts' => 0,
        'close_comments_days_old' => 14,
        'thread_comments' => 1,
        'thread_comments_depth' => 5,
        'page_comments' => 0,
        'comments_per_page' => 50,
        'default_comments_page' => 'newest',
        'comment_order' => 'asc',
        'sticky_posts' => array(),
        'widget_categories' => array(),
        'widget_text' => array(),
        'widget_rss' => array(),
        'uninstall_plugins' => array(),
        // 2.8.0
        'timezone_string' => $timezone_string,
        // 3.0.0
        'page_for_posts' => 0,
        'page_on_front' => 0,
        // 3.1.0
        'default_post_format' => 0,
        // 3.5.0
        'link_manager_enabled' => 0,
        // 4.3.0
        'finished_splitting_shared_terms' => 1,
        'site_icon' => 0,
        // 4.4.0
        'medium_large_size_w' => 768,
        'medium_large_size_h' => 0,
        // 4.9.6
        'wp_page_for_privacy_policy' => 0,
        // 4.9.8
        'show_comments_cookies_opt_in' => 1,
        // 5.3.0
        'admin_email_lifespan' => time() + 6 * MONTH_IN_SECONDS,
        // 5.5.0
        'disallowed_keys' => '',
        'comment_previously_approved' => 1,
        'auto_plugin_theme_update_emails' => array(),
        // 5.6.0
        'auto_update_core_dev' => 'enabled',
        'auto_update_core_minor' => 'enabled',
        /*
         * Default to enabled for new installs.
         * See https://core.trac.wordpress.org/ticket/51742.
         */
        'auto_update_core_major' => 'enabled',
        // 5.8.0
        'wp_force_deactivated_plugins' => array(),
        // 6.4.0
        'wp_attachment_pages_enabled' => 0,
    );
    // 3.3.0
    if (!is_multisite()) {
        $defaults['initial_db_version'] = (!empty($wp_current_db_version) && $wp_current_db_version < $wp_db_version) ? $wp_current_db_version : $wp_db_version;
    }
    // 3.0.0 multisite.
    if (is_multisite()) {
        $defaults['permalink_structure'] = '/%year%/%monthnum%/%day%/%postname%/';
    }
    $options = wp_parse_args($options, $defaults);
    // Set autoload to no for these options.
    $fat_options = array('moderation_keys', 'recently_edited', 'disallowed_keys', 'uninstall_plugins', 'auto_plugin_theme_update_emails');
    $keys = "'" . implode("', '", array_keys($options)) . "'";
    $existing_options = $wpdb->get_col("SELECT option_name FROM {$wpdb->options} WHERE option_name in ( {$keys} )");
    // phpcs:ignore WordPress.DB.PreparedSQL.NotPrepared
    $insert = '';
    foreach ($options as $option => $value) {
        if (in_array($option, $existing_options, true)) {
            continue;
        }
        if (in_array($option, $fat_options, true)) {
            $autoload = 'no';
        } else {
            $autoload = 'yes';
        }
        if (is_array($value)) {
            $value = serialize($value);
        }
        if (!empty($insert)) {
            $insert .= ', ';
        }
        $insert .= $wpdb->prepare('(%s, %s, %s)', $option, $value, $autoload);
    }
    if (!empty($insert)) {
        $wpdb->query("INSERT INTO {$wpdb->options} (option_name, option_value, autoload) VALUES " . $insert);
        // phpcs:ignore WordPress.DB.PreparedSQL.NotPrepared
    }
    // In case it is set, but blank, update "home".
    if (!__get_option('home')) {
        update_option('home', $guessurl);
    }
    // Delete unused options.
    $unusedoptions = array('blodotgsping_url', 'bodyterminator', 'emailtestonly', 'phoneemail_separator', 'smilies_directory', 'subjectprefix', 'use_bbcode', 'use_blodotgsping', 'use_phoneemail', 'use_quicktags', 'use_weblogsping', 'weblogs_cache_file', 'use_preview', 'use_htmltrans', 'smilies_directory', 'fileupload_allowedusers', 'use_phoneemail', 'default_post_status', 'default_post_category', 'archive_mode', 'time_difference', 'links_minadminlevel', 'links_use_adminlevels', 'links_rating_type', 'links_rating_char', 'links_rating_ignore_zero', 'links_rating_single_image', 'links_rating_image0', 'links_rating_image1', 'links_rating_image2', 'links_rating_image3', 'links_rating_image4', 'links_rating_image5', 'links_rating_image6', 'links_rating_image7', 'links_rating_image8', 'links_rating_image9', 'links_recently_updated_time', 'links_recently_updated_prepend', 'links_recently_updated_append', 'weblogs_cacheminutes', 'comment_allowed_tags', 'search_engine_friendly_urls', 'default_geourl_lat', 'default_geourl_lon', 'use_default_geourl', 'weblogs_xml_url', 'new_users_can_blog', '_wpnonce', '_wp_http_referer', 'Update', 'action', 'rich_editing', 'autosave_interval', 'deactivated_plugins', 'can_compress_scripts', 'page_uris', 'update_core', 'update_plugins', 'update_themes', 'doing_cron', 'random_seed', 'rss_excerpt_length', 'secret', 'use_linksupdate', 'default_comment_status_page', 'wporg_popular_tags', 'what_to_show', 'rss_language', 'language', 'enable_xmlrpc', 'enable_app', 'embed_autourls', 'default_post_edit_rows', 'gzipcompression', 'advanced_edit');
    foreach ($unusedoptions as $option) {
        delete_option($option);
    }
    // Delete obsolete magpie stuff.
    $wpdb->query("DELETE FROM {$wpdb->options} WHERE option_name REGEXP '^rss_[0-9a-f]{32}(_ts)?\$'");
    // Clear expired transients.
    delete_expired_transients(true);
}

WordPress Version: 3.3

/**
 * Create WordPress options and set the default values.
 *
 * @since 1.5.0
 * @since 5.1.0 The $options parameter has been added.
 *
 * @global wpdb $wpdb                  WordPress database abstraction object.
 * @global int  $wp_db_version         WordPress database version.
 * @global int  $wp_current_db_version The old (current) database version.
 *
 * @param array $options Optional. Custom option $key => $value pairs to use. Default empty array.
 */
function populate_options(array $options = array())
{
    global $wpdb, $wp_db_version, $wp_current_db_version;
    $guessurl = wp_guess_url();
    /**
     * Fires before creating WordPress options and populating their default values.
     *
     * @since 2.6.0
     */
    do_action('populate_options');
    // If WP_DEFAULT_THEME doesn't exist, fall back to the latest core default theme.
    $stylesheet = WP_DEFAULT_THEME;
    $template = WP_DEFAULT_THEME;
    $theme = wp_get_theme(WP_DEFAULT_THEME);
    if (!$theme->exists()) {
        $theme = WP_Theme::get_core_default_theme();
    }
    // If we can't find a core default theme, WP_DEFAULT_THEME is the best we can do.
    if ($theme) {
        $stylesheet = $theme->get_stylesheet();
        $template = $theme->get_template();
    }
    $timezone_string = '';
    $gmt_offset = 0;
    /*
     * translators: default GMT offset or timezone string. Must be either a valid offset (-12 to 14)
     * or a valid timezone string (America/New_York). See https://www.php.net/manual/en/timezones.php
     * for all timezone strings currently supported by PHP.
     *
     * Important: When a previous timezone string, like `Europe/Kiev`, has been superseded by an
     * updated one, like `Europe/Kyiv`, as a rule of thumb, the **old** timezone name should be used
     * in the "translation" to allow for the default timezone setting to be PHP cross-version compatible,
     * as old timezone names will be recognized in new PHP versions, while new timezone names cannot
     * be recognized in old PHP versions.
     *
     * To verify which timezone strings are available in the _oldest_ PHP version supported, you can
     * use https://3v4l.org/6YQAt#v5.6.20 and replace the "BR" (Brazil) in the code line with the
     * country code for which you want to look up the supported timezone names.
     */
    $offset_or_tz = _x('0', 'default GMT offset or timezone string');
    if (is_numeric($offset_or_tz)) {
        $gmt_offset = $offset_or_tz;
    } elseif ($offset_or_tz && in_array($offset_or_tz, timezone_identifiers_list(DateTimeZone::ALL_WITH_BC), true)) {
        $timezone_string = $offset_or_tz;
    }
    $defaults = array(
        'siteurl' => $guessurl,
        'home' => $guessurl,
        'blogname' => __('My Site'),
        'blogdescription' => '',
        'users_can_register' => 0,
        'admin_email' => '[email protected]',
        /* translators: Default start of the week. 0 = Sunday, 1 = Monday. */
        'start_of_week' => _x('1', 'start of week'),
        'use_balanceTags' => 0,
        'use_smilies' => 1,
        'require_name_email' => 1,
        'comments_notify' => 1,
        'posts_per_rss' => 10,
        'rss_use_excerpt' => 0,
        'mailserver_url' => 'mail.example.com',
        'mailserver_login' => '[email protected]',
        'mailserver_pass' => 'password',
        'mailserver_port' => 110,
        'default_category' => 1,
        'default_comment_status' => 'open',
        'default_ping_status' => 'open',
        'default_pingback_flag' => 1,
        'posts_per_page' => 10,
        /* translators: Default date format, see https://www.php.net/manual/datetime.format.php */
        'date_format' => __('F j, Y'),
        /* translators: Default time format, see https://www.php.net/manual/datetime.format.php */
        'time_format' => __('g:i a'),
        /* translators: Links last updated date format, see https://www.php.net/manual/datetime.format.php */
        'links_updated_date_format' => __('F j, Y g:i a'),
        'comment_moderation' => 0,
        'moderation_notify' => 1,
        'permalink_structure' => '',
        'rewrite_rules' => '',
        'hack_file' => 0,
        'blog_charset' => 'UTF-8',
        'moderation_keys' => '',
        'active_plugins' => array(),
        'category_base' => '',
        'ping_sites' => 'http://rpc.pingomatic.com/',
        'comment_max_links' => 2,
        'gmt_offset' => $gmt_offset,
        // 1.5.0
        'default_email_category' => 1,
        'recently_edited' => '',
        'template' => $template,
        'stylesheet' => $stylesheet,
        'comment_registration' => 0,
        'html_type' => 'text/html',
        // 1.5.1
        'use_trackback' => 0,
        // 2.0.0
        'default_role' => 'subscriber',
        'db_version' => $wp_db_version,
        // 2.0.1
        'uploads_use_yearmonth_folders' => 1,
        'upload_path' => '',
        // 2.1.0
        'blog_public' => '1',
        'default_link_category' => 2,
        'show_on_front' => 'posts',
        // 2.2.0
        'tag_base' => '',
        // 2.5.0
        'show_avatars' => '1',
        'avatar_rating' => 'G',
        'upload_url_path' => '',
        'thumbnail_size_w' => 150,
        'thumbnail_size_h' => 150,
        'thumbnail_crop' => 1,
        'medium_size_w' => 300,
        'medium_size_h' => 300,
        // 2.6.0
        'avatar_default' => 'mystery',
        // 2.7.0
        'large_size_w' => 1024,
        'large_size_h' => 1024,
        'image_default_link_type' => 'none',
        'image_default_size' => '',
        'image_default_align' => '',
        'close_comments_for_old_posts' => 0,
        'close_comments_days_old' => 14,
        'thread_comments' => 1,
        'thread_comments_depth' => 5,
        'page_comments' => 0,
        'comments_per_page' => 50,
        'default_comments_page' => 'newest',
        'comment_order' => 'asc',
        'sticky_posts' => array(),
        'widget_categories' => array(),
        'widget_text' => array(),
        'widget_rss' => array(),
        'uninstall_plugins' => array(),
        // 2.8.0
        'timezone_string' => $timezone_string,
        // 3.0.0
        'page_for_posts' => 0,
        'page_on_front' => 0,
        // 3.1.0
        'default_post_format' => 0,
        // 3.5.0
        'link_manager_enabled' => 0,
        // 4.3.0
        'finished_splitting_shared_terms' => 1,
        'site_icon' => 0,
        // 4.4.0
        'medium_large_size_w' => 768,
        'medium_large_size_h' => 0,
        // 4.9.6
        'wp_page_for_privacy_policy' => 0,
        // 4.9.8
        'show_comments_cookies_opt_in' => 1,
        // 5.3.0
        'admin_email_lifespan' => time() + 6 * MONTH_IN_SECONDS,
        // 5.5.0
        'disallowed_keys' => '',
        'comment_previously_approved' => 1,
        'auto_plugin_theme_update_emails' => array(),
        // 5.6.0
        'auto_update_core_dev' => 'enabled',
        'auto_update_core_minor' => 'enabled',
        /*
         * Default to enabled for new installs.
         * See https://core.trac.wordpress.org/ticket/51742.
         */
        'auto_update_core_major' => 'enabled',
        // 5.8.0
        'wp_force_deactivated_plugins' => array(),
    );
    // 3.3.0
    if (!is_multisite()) {
        $defaults['initial_db_version'] = (!empty($wp_current_db_version) && $wp_current_db_version < $wp_db_version) ? $wp_current_db_version : $wp_db_version;
    }
    // 3.0.0 multisite.
    if (is_multisite()) {
        $defaults['permalink_structure'] = '/%year%/%monthnum%/%day%/%postname%/';
    }
    $options = wp_parse_args($options, $defaults);
    // Set autoload to no for these options.
    $fat_options = array('moderation_keys', 'recently_edited', 'disallowed_keys', 'uninstall_plugins', 'auto_plugin_theme_update_emails');
    $keys = "'" . implode("', '", array_keys($options)) . "'";
    $existing_options = $wpdb->get_col("SELECT option_name FROM {$wpdb->options} WHERE option_name in ( {$keys} )");
    // phpcs:ignore WordPress.DB.PreparedSQL.NotPrepared
    $insert = '';
    foreach ($options as $option => $value) {
        if (in_array($option, $existing_options, true)) {
            continue;
        }
        if (in_array($option, $fat_options, true)) {
            $autoload = 'no';
        } else {
            $autoload = 'yes';
        }
        if (!empty($insert)) {
            $insert .= ', ';
        }
        $value = maybe_serialize(sanitize_option($option, $value));
        $insert .= $wpdb->prepare('(%s, %s, %s)', $option, $value, $autoload);
    }
    if (!empty($insert)) {
        $wpdb->query("INSERT INTO {$wpdb->options} (option_name, option_value, autoload) VALUES " . $insert);
        // phpcs:ignore WordPress.DB.PreparedSQL.NotPrepared
    }
    // In case it is set, but blank, update "home".
    if (!__get_option('home')) {
        update_option('home', $guessurl);
    }
    // Delete unused options.
    $unusedoptions = array('blodotgsping_url', 'bodyterminator', 'emailtestonly', 'phoneemail_separator', 'smilies_directory', 'subjectprefix', 'use_bbcode', 'use_blodotgsping', 'use_phoneemail', 'use_quicktags', 'use_weblogsping', 'weblogs_cache_file', 'use_preview', 'use_htmltrans', 'smilies_directory', 'fileupload_allowedusers', 'use_phoneemail', 'default_post_status', 'default_post_category', 'archive_mode', 'time_difference', 'links_minadminlevel', 'links_use_adminlevels', 'links_rating_type', 'links_rating_char', 'links_rating_ignore_zero', 'links_rating_single_image', 'links_rating_image0', 'links_rating_image1', 'links_rating_image2', 'links_rating_image3', 'links_rating_image4', 'links_rating_image5', 'links_rating_image6', 'links_rating_image7', 'links_rating_image8', 'links_rating_image9', 'links_recently_updated_time', 'links_recently_updated_prepend', 'links_recently_updated_append', 'weblogs_cacheminutes', 'comment_allowed_tags', 'search_engine_friendly_urls', 'default_geourl_lat', 'default_geourl_lon', 'use_default_geourl', 'weblogs_xml_url', 'new_users_can_blog', '_wpnonce', '_wp_http_referer', 'Update', 'action', 'rich_editing', 'autosave_interval', 'deactivated_plugins', 'can_compress_scripts', 'page_uris', 'update_core', 'update_plugins', 'update_themes', 'doing_cron', 'random_seed', 'rss_excerpt_length', 'secret', 'use_linksupdate', 'default_comment_status_page', 'wporg_popular_tags', 'what_to_show', 'rss_language', 'language', 'enable_xmlrpc', 'enable_app', 'embed_autourls', 'default_post_edit_rows', 'gzipcompression', 'advanced_edit');
    foreach ($unusedoptions as $option) {
        delete_option($option);
    }
    // Delete obsolete magpie stuff.
    $wpdb->query("DELETE FROM {$wpdb->options} WHERE option_name REGEXP '^rss_[0-9a-f]{32}(_ts)?\$'");
    // Clear expired transients.
    delete_expired_transients(true);
}

WordPress Version: 6.3

/**
 * Create WordPress options and set the default values.
 *
 * @since 1.5.0
 * @since 5.1.0 The $options parameter has been added.
 *
 * @global wpdb $wpdb                  WordPress database abstraction object.
 * @global int  $wp_db_version         WordPress database version.
 * @global int  $wp_current_db_version The old (current) database version.
 *
 * @param array $options Optional. Custom option $key => $value pairs to use. Default empty array.
 */
function populate_options(array $options = array())
{
    global $wpdb, $wp_db_version, $wp_current_db_version;
    $guessurl = wp_guess_url();
    /**
     * Fires before creating WordPress options and populating their default values.
     *
     * @since 2.6.0
     */
    do_action('populate_options');
    // If WP_DEFAULT_THEME doesn't exist, fall back to the latest core default theme.
    $stylesheet = WP_DEFAULT_THEME;
    $template = WP_DEFAULT_THEME;
    $theme = wp_get_theme(WP_DEFAULT_THEME);
    if (!$theme->exists()) {
        $theme = WP_Theme::get_core_default_theme();
    }
    // If we can't find a core default theme, WP_DEFAULT_THEME is the best we can do.
    if ($theme) {
        $stylesheet = $theme->get_stylesheet();
        $template = $theme->get_template();
    }
    $timezone_string = '';
    $gmt_offset = 0;
    /*
     * translators: default GMT offset or timezone string. Must be either a valid offset (-12 to 14)
     * or a valid timezone string (America/New_York). See https://www.php.net/manual/en/timezones.php
     * for all timezone strings currently supported by PHP.
     *
     * Important: When a previous timezone string, like `Europe/Kiev`, has been superseded by an
     * updated one, like `Europe/Kyiv`, as a rule of thumb, the **old** timezone name should be used
     * in the "translation" to allow for the default timezone setting to be PHP cross-version compatible,
     * as old timezone names will be recognized in new PHP versions, while new timezone names cannot
     * be recognized in old PHP versions.
     *
     * To verify which timezone strings are available in the _oldest_ PHP version supported, you can
     * use https://3v4l.org/6YQAt#v5.6.20 and replace the "BR" (Brazil) in the code line with the
     * country code for which you want to look up the supported timezone names.
     */
    $offset_or_tz = _x('0', 'default GMT offset or timezone string');
    if (is_numeric($offset_or_tz)) {
        $gmt_offset = $offset_or_tz;
    } elseif ($offset_or_tz && in_array($offset_or_tz, timezone_identifiers_list(DateTimeZone::ALL_WITH_BC), true)) {
        $timezone_string = $offset_or_tz;
    }
    $defaults = array(
        'siteurl' => $guessurl,
        'home' => $guessurl,
        'blogname' => __('My Site'),
        'blogdescription' => '',
        'users_can_register' => 0,
        'admin_email' => '[email protected]',
        /* translators: Default start of the week. 0 = Sunday, 1 = Monday. */
        'start_of_week' => _x('1', 'start of week'),
        'use_balanceTags' => 0,
        'use_smilies' => 1,
        'require_name_email' => 1,
        'comments_notify' => 1,
        'posts_per_rss' => 10,
        'rss_use_excerpt' => 0,
        'mailserver_url' => 'mail.example.com',
        'mailserver_login' => '[email protected]',
        'mailserver_pass' => 'password',
        'mailserver_port' => 110,
        'default_category' => 1,
        'default_comment_status' => 'open',
        'default_ping_status' => 'open',
        'default_pingback_flag' => 1,
        'posts_per_page' => 10,
        /* translators: Default date format, see https://www.php.net/manual/datetime.format.php */
        'date_format' => __('F j, Y'),
        /* translators: Default time format, see https://www.php.net/manual/datetime.format.php */
        'time_format' => __('g:i a'),
        /* translators: Links last updated date format, see https://www.php.net/manual/datetime.format.php */
        'links_updated_date_format' => __('F j, Y g:i a'),
        'comment_moderation' => 0,
        'moderation_notify' => 1,
        'permalink_structure' => '',
        'rewrite_rules' => '',
        'hack_file' => 0,
        'blog_charset' => 'UTF-8',
        'moderation_keys' => '',
        'active_plugins' => array(),
        'category_base' => '',
        'ping_sites' => 'http://rpc.pingomatic.com/',
        'comment_max_links' => 2,
        'gmt_offset' => $gmt_offset,
        // 1.5.0
        'default_email_category' => 1,
        'recently_edited' => '',
        'template' => $template,
        'stylesheet' => $stylesheet,
        'comment_registration' => 0,
        'html_type' => 'text/html',
        // 1.5.1
        'use_trackback' => 0,
        // 2.0.0
        'default_role' => 'subscriber',
        'db_version' => $wp_db_version,
        // 2.0.1
        'uploads_use_yearmonth_folders' => 1,
        'upload_path' => '',
        // 2.1.0
        'blog_public' => '1',
        'default_link_category' => 2,
        'show_on_front' => 'posts',
        // 2.2.0
        'tag_base' => '',
        // 2.5.0
        'show_avatars' => '1',
        'avatar_rating' => 'G',
        'upload_url_path' => '',
        'thumbnail_size_w' => 150,
        'thumbnail_size_h' => 150,
        'thumbnail_crop' => 1,
        'medium_size_w' => 300,
        'medium_size_h' => 300,
        // 2.6.0
        'avatar_default' => 'mystery',
        // 2.7.0
        'large_size_w' => 1024,
        'large_size_h' => 1024,
        'image_default_link_type' => 'none',
        'image_default_size' => '',
        'image_default_align' => '',
        'close_comments_for_old_posts' => 0,
        'close_comments_days_old' => 14,
        'thread_comments' => 1,
        'thread_comments_depth' => 5,
        'page_comments' => 0,
        'comments_per_page' => 50,
        'default_comments_page' => 'newest',
        'comment_order' => 'asc',
        'sticky_posts' => array(),
        'widget_categories' => array(),
        'widget_text' => array(),
        'widget_rss' => array(),
        'uninstall_plugins' => array(),
        // 2.8.0
        'timezone_string' => $timezone_string,
        // 3.0.0
        'page_for_posts' => 0,
        'page_on_front' => 0,
        // 3.1.0
        'default_post_format' => 0,
        // 3.5.0
        'link_manager_enabled' => 0,
        // 4.3.0
        'finished_splitting_shared_terms' => 1,
        'site_icon' => 0,
        // 4.4.0
        'medium_large_size_w' => 768,
        'medium_large_size_h' => 0,
        // 4.9.6
        'wp_page_for_privacy_policy' => 0,
        // 4.9.8
        'show_comments_cookies_opt_in' => 1,
        // 5.3.0
        'admin_email_lifespan' => time() + 6 * MONTH_IN_SECONDS,
        // 5.5.0
        'disallowed_keys' => '',
        'comment_previously_approved' => 1,
        'auto_plugin_theme_update_emails' => array(),
        // 5.6.0
        'auto_update_core_dev' => 'enabled',
        'auto_update_core_minor' => 'enabled',
        /*
         * Default to enabled for new installs.
         * See https://core.trac.wordpress.org/ticket/51742.
         */
        'auto_update_core_major' => 'enabled',
        // 5.8.0
        'wp_force_deactivated_plugins' => array(),
    );
    // 3.3.0
    if (!is_multisite()) {
        $defaults['initial_db_version'] = (!empty($wp_current_db_version) && $wp_current_db_version < $wp_db_version) ? $wp_current_db_version : $wp_db_version;
    }
    // 3.0.0 multisite.
    if (is_multisite()) {
        $defaults['permalink_structure'] = '/%year%/%monthnum%/%day%/%postname%/';
    }
    $options = wp_parse_args($options, $defaults);
    // Set autoload to no for these options.
    $fat_options = array('moderation_keys', 'recently_edited', 'disallowed_keys', 'uninstall_plugins', 'auto_plugin_theme_update_emails');
    $keys = "'" . implode("', '", array_keys($options)) . "'";
    $existing_options = $wpdb->get_col("SELECT option_name FROM {$wpdb->options} WHERE option_name in ( {$keys} )");
    // phpcs:ignore WordPress.DB.PreparedSQL.NotPrepared
    $insert = '';
    foreach ($options as $option => $value) {
        if (in_array($option, $existing_options, true)) {
            continue;
        }
        if (in_array($option, $fat_options, true)) {
            $autoload = 'no';
        } else {
            $autoload = 'yes';
        }
        if (is_array($value)) {
            $value = serialize($value);
        }
        if (!empty($insert)) {
            $insert .= ', ';
        }
        $insert .= $wpdb->prepare('(%s, %s, %s)', $option, $value, $autoload);
    }
    if (!empty($insert)) {
        $wpdb->query("INSERT INTO {$wpdb->options} (option_name, option_value, autoload) VALUES " . $insert);
        // phpcs:ignore WordPress.DB.PreparedSQL.NotPrepared
    }
    // In case it is set, but blank, update "home".
    if (!__get_option('home')) {
        update_option('home', $guessurl);
    }
    // Delete unused options.
    $unusedoptions = array('blodotgsping_url', 'bodyterminator', 'emailtestonly', 'phoneemail_separator', 'smilies_directory', 'subjectprefix', 'use_bbcode', 'use_blodotgsping', 'use_phoneemail', 'use_quicktags', 'use_weblogsping', 'weblogs_cache_file', 'use_preview', 'use_htmltrans', 'smilies_directory', 'fileupload_allowedusers', 'use_phoneemail', 'default_post_status', 'default_post_category', 'archive_mode', 'time_difference', 'links_minadminlevel', 'links_use_adminlevels', 'links_rating_type', 'links_rating_char', 'links_rating_ignore_zero', 'links_rating_single_image', 'links_rating_image0', 'links_rating_image1', 'links_rating_image2', 'links_rating_image3', 'links_rating_image4', 'links_rating_image5', 'links_rating_image6', 'links_rating_image7', 'links_rating_image8', 'links_rating_image9', 'links_recently_updated_time', 'links_recently_updated_prepend', 'links_recently_updated_append', 'weblogs_cacheminutes', 'comment_allowed_tags', 'search_engine_friendly_urls', 'default_geourl_lat', 'default_geourl_lon', 'use_default_geourl', 'weblogs_xml_url', 'new_users_can_blog', '_wpnonce', '_wp_http_referer', 'Update', 'action', 'rich_editing', 'autosave_interval', 'deactivated_plugins', 'can_compress_scripts', 'page_uris', 'update_core', 'update_plugins', 'update_themes', 'doing_cron', 'random_seed', 'rss_excerpt_length', 'secret', 'use_linksupdate', 'default_comment_status_page', 'wporg_popular_tags', 'what_to_show', 'rss_language', 'language', 'enable_xmlrpc', 'enable_app', 'embed_autourls', 'default_post_edit_rows', 'gzipcompression', 'advanced_edit');
    foreach ($unusedoptions as $option) {
        delete_option($option);
    }
    // Delete obsolete magpie stuff.
    $wpdb->query("DELETE FROM {$wpdb->options} WHERE option_name REGEXP '^rss_[0-9a-f]{32}(_ts)?\$'");
    // Clear expired transients.
    delete_expired_transients(true);
}

WordPress Version: 2.4

/**
 * Create WordPress options and set the default values.
 *
 * @since 1.5.0
 * @since 5.1.0 The $options parameter has been added.
 *
 * @global wpdb $wpdb                  WordPress database abstraction object.
 * @global int  $wp_db_version         WordPress database version.
 * @global int  $wp_current_db_version The old (current) database version.
 *
 * @param array $options Optional. Custom option $key => $value pairs to use. Default empty array.
 */
function populate_options(array $options = array())
{
    global $wpdb, $wp_db_version, $wp_current_db_version;
    $guessurl = wp_guess_url();
    /**
     * Fires before creating WordPress options and populating their default values.
     *
     * @since 2.6.0
     */
    do_action('populate_options');
    // If WP_DEFAULT_THEME doesn't exist, fall back to the latest core default theme.
    $stylesheet = WP_DEFAULT_THEME;
    $template = WP_DEFAULT_THEME;
    $theme = wp_get_theme(WP_DEFAULT_THEME);
    if (!$theme->exists()) {
        $theme = WP_Theme::get_core_default_theme();
    }
    // If we can't find a core default theme, WP_DEFAULT_THEME is the best we can do.
    if ($theme) {
        $stylesheet = $theme->get_stylesheet();
        $template = $theme->get_template();
    }
    $timezone_string = '';
    $gmt_offset = 0;
    /*
     * translators: default GMT offset or timezone string. Must be either a valid offset (-12 to 14)
     * or a valid timezone string (America/New_York). See https://www.php.net/manual/en/timezones.php
     * for all timezone strings currently supported by PHP.
     *
     * Important: When a previous timezone string, like `Europe/Kiev`, has been superseded by an
     * updated one, like `Europe/Kyiv`, as a rule of thumb, the **old** timezone name should be used
     * in the "translation" to allow for the default timezone setting to be PHP cross-version compatible,
     * as old timezone names will be recognized in new PHP versions, while new timezone names cannot
     * be recognized in old PHP versions.
     *
     * To verify which timezone strings are available in the _oldest_ PHP version supported, you can
     * use https://3v4l.org/6YQAt#v5.6.20 and replace the "BR" (Brazil) in the code line with the
     * country code for which you want to look up the supported timezone names.
     */
    $offset_or_tz = _x('0', 'default GMT offset or timezone string');
    if (is_numeric($offset_or_tz)) {
        $gmt_offset = $offset_or_tz;
    } elseif ($offset_or_tz && in_array($offset_or_tz, timezone_identifiers_list(DateTimeZone::ALL_WITH_BC), true)) {
        $timezone_string = $offset_or_tz;
    }
    $defaults = array(
        'siteurl' => $guessurl,
        'home' => $guessurl,
        'blogname' => __('My Site'),
        'blogdescription' => '',
        'users_can_register' => 0,
        'admin_email' => '[email protected]',
        /* translators: Default start of the week. 0 = Sunday, 1 = Monday. */
        'start_of_week' => _x('1', 'start of week'),
        'use_balanceTags' => 0,
        'use_smilies' => 1,
        'require_name_email' => 1,
        'comments_notify' => 1,
        'posts_per_rss' => 10,
        'rss_use_excerpt' => 0,
        'mailserver_url' => 'mail.example.com',
        'mailserver_login' => '[email protected]',
        'mailserver_pass' => 'password',
        'mailserver_port' => 110,
        'default_category' => 1,
        'default_comment_status' => 'open',
        'default_ping_status' => 'open',
        'default_pingback_flag' => 1,
        'posts_per_page' => 10,
        /* translators: Default date format, see https://www.php.net/manual/datetime.format.php */
        'date_format' => __('F j, Y'),
        /* translators: Default time format, see https://www.php.net/manual/datetime.format.php */
        'time_format' => __('g:i a'),
        /* translators: Links last updated date format, see https://www.php.net/manual/datetime.format.php */
        'links_updated_date_format' => __('F j, Y g:i a'),
        'comment_moderation' => 0,
        'moderation_notify' => 1,
        'permalink_structure' => '',
        'rewrite_rules' => '',
        'hack_file' => 0,
        'blog_charset' => 'UTF-8',
        'moderation_keys' => '',
        'active_plugins' => array(),
        'category_base' => '',
        'ping_sites' => 'http://rpc.pingomatic.com/',
        'comment_max_links' => 2,
        'gmt_offset' => $gmt_offset,
        // 1.5.0
        'default_email_category' => 1,
        'recently_edited' => '',
        'template' => $template,
        'stylesheet' => $stylesheet,
        'comment_registration' => 0,
        'html_type' => 'text/html',
        // 1.5.1
        'use_trackback' => 0,
        // 2.0.0
        'default_role' => 'subscriber',
        'db_version' => $wp_db_version,
        // 2.0.1
        'uploads_use_yearmonth_folders' => 1,
        'upload_path' => '',
        // 2.1.0
        'blog_public' => '1',
        'default_link_category' => 2,
        'show_on_front' => 'posts',
        // 2.2.0
        'tag_base' => '',
        // 2.5.0
        'show_avatars' => '1',
        'avatar_rating' => 'G',
        'upload_url_path' => '',
        'thumbnail_size_w' => 150,
        'thumbnail_size_h' => 150,
        'thumbnail_crop' => 1,
        'medium_size_w' => 300,
        'medium_size_h' => 300,
        // 2.6.0
        'avatar_default' => 'mystery',
        // 2.7.0
        'large_size_w' => 1024,
        'large_size_h' => 1024,
        'image_default_link_type' => 'none',
        'image_default_size' => '',
        'image_default_align' => '',
        'close_comments_for_old_posts' => 0,
        'close_comments_days_old' => 14,
        'thread_comments' => 1,
        'thread_comments_depth' => 5,
        'page_comments' => 0,
        'comments_per_page' => 50,
        'default_comments_page' => 'newest',
        'comment_order' => 'asc',
        'sticky_posts' => array(),
        'widget_categories' => array(),
        'widget_text' => array(),
        'widget_rss' => array(),
        'uninstall_plugins' => array(),
        // 2.8.0
        'timezone_string' => $timezone_string,
        // 3.0.0
        'page_for_posts' => 0,
        'page_on_front' => 0,
        // 3.1.0
        'default_post_format' => 0,
        // 3.5.0
        'link_manager_enabled' => 0,
        // 4.3.0
        'finished_splitting_shared_terms' => 1,
        'site_icon' => 0,
        // 4.4.0
        'medium_large_size_w' => 768,
        'medium_large_size_h' => 0,
        // 4.9.6
        'wp_page_for_privacy_policy' => 0,
        // 4.9.8
        'show_comments_cookies_opt_in' => 1,
        // 5.3.0
        'admin_email_lifespan' => time() + 6 * MONTH_IN_SECONDS,
        // 5.5.0
        'disallowed_keys' => '',
        'comment_previously_approved' => 1,
        'auto_plugin_theme_update_emails' => array(),
        // 5.6.0
        'auto_update_core_dev' => 'enabled',
        'auto_update_core_minor' => 'enabled',
        // Default to enabled for new installs.
        // See https://core.trac.wordpress.org/ticket/51742.
        'auto_update_core_major' => 'enabled',
        // 5.8.0
        'wp_force_deactivated_plugins' => array(),
    );
    // 3.3.0
    if (!is_multisite()) {
        $defaults['initial_db_version'] = (!empty($wp_current_db_version) && $wp_current_db_version < $wp_db_version) ? $wp_current_db_version : $wp_db_version;
    }
    // 3.0.0 multisite.
    if (is_multisite()) {
        $defaults['permalink_structure'] = '/%year%/%monthnum%/%day%/%postname%/';
    }
    $options = wp_parse_args($options, $defaults);
    // Set autoload to no for these options.
    $fat_options = array('moderation_keys', 'recently_edited', 'disallowed_keys', 'uninstall_plugins', 'auto_plugin_theme_update_emails');
    $keys = "'" . implode("', '", array_keys($options)) . "'";
    $existing_options = $wpdb->get_col("SELECT option_name FROM {$wpdb->options} WHERE option_name in ( {$keys} )");
    // phpcs:ignore WordPress.DB.PreparedSQL.NotPrepared
    $insert = '';
    foreach ($options as $option => $value) {
        if (in_array($option, $existing_options, true)) {
            continue;
        }
        if (in_array($option, $fat_options, true)) {
            $autoload = 'no';
        } else {
            $autoload = 'yes';
        }
        if (!empty($insert)) {
            $insert .= ', ';
        }
        $value = maybe_serialize(sanitize_option($option, $value));
        $insert .= $wpdb->prepare('(%s, %s, %s)', $option, $value, $autoload);
    }
    if (!empty($insert)) {
        $wpdb->query("INSERT INTO {$wpdb->options} (option_name, option_value, autoload) VALUES " . $insert);
        // phpcs:ignore WordPress.DB.PreparedSQL.NotPrepared
    }
    // In case it is set, but blank, update "home".
    if (!__get_option('home')) {
        update_option('home', $guessurl);
    }
    // Delete unused options.
    $unusedoptions = array('blodotgsping_url', 'bodyterminator', 'emailtestonly', 'phoneemail_separator', 'smilies_directory', 'subjectprefix', 'use_bbcode', 'use_blodotgsping', 'use_phoneemail', 'use_quicktags', 'use_weblogsping', 'weblogs_cache_file', 'use_preview', 'use_htmltrans', 'smilies_directory', 'fileupload_allowedusers', 'use_phoneemail', 'default_post_status', 'default_post_category', 'archive_mode', 'time_difference', 'links_minadminlevel', 'links_use_adminlevels', 'links_rating_type', 'links_rating_char', 'links_rating_ignore_zero', 'links_rating_single_image', 'links_rating_image0', 'links_rating_image1', 'links_rating_image2', 'links_rating_image3', 'links_rating_image4', 'links_rating_image5', 'links_rating_image6', 'links_rating_image7', 'links_rating_image8', 'links_rating_image9', 'links_recently_updated_time', 'links_recently_updated_prepend', 'links_recently_updated_append', 'weblogs_cacheminutes', 'comment_allowed_tags', 'search_engine_friendly_urls', 'default_geourl_lat', 'default_geourl_lon', 'use_default_geourl', 'weblogs_xml_url', 'new_users_can_blog', '_wpnonce', '_wp_http_referer', 'Update', 'action', 'rich_editing', 'autosave_interval', 'deactivated_plugins', 'can_compress_scripts', 'page_uris', 'update_core', 'update_plugins', 'update_themes', 'doing_cron', 'random_seed', 'rss_excerpt_length', 'secret', 'use_linksupdate', 'default_comment_status_page', 'wporg_popular_tags', 'what_to_show', 'rss_language', 'language', 'enable_xmlrpc', 'enable_app', 'embed_autourls', 'default_post_edit_rows', 'gzipcompression', 'advanced_edit');
    foreach ($unusedoptions as $option) {
        delete_option($option);
    }
    // Delete obsolete magpie stuff.
    $wpdb->query("DELETE FROM {$wpdb->options} WHERE option_name REGEXP '^rss_[0-9a-f]{32}(_ts)?\$'");
    // Clear expired transients.
    delete_expired_transients(true);
}

WordPress Version: 6.2

/**
 * Create WordPress options and set the default values.
 *
 * @since 1.5.0
 * @since 5.1.0 The $options parameter has been added.
 *
 * @global wpdb $wpdb                  WordPress database abstraction object.
 * @global int  $wp_db_version         WordPress database version.
 * @global int  $wp_current_db_version The old (current) database version.
 *
 * @param array $options Optional. Custom option $key => $value pairs to use. Default empty array.
 */
function populate_options(array $options = array())
{
    global $wpdb, $wp_db_version, $wp_current_db_version;
    $guessurl = wp_guess_url();
    /**
     * Fires before creating WordPress options and populating their default values.
     *
     * @since 2.6.0
     */
    do_action('populate_options');
    // If WP_DEFAULT_THEME doesn't exist, fall back to the latest core default theme.
    $stylesheet = WP_DEFAULT_THEME;
    $template = WP_DEFAULT_THEME;
    $theme = wp_get_theme(WP_DEFAULT_THEME);
    if (!$theme->exists()) {
        $theme = WP_Theme::get_core_default_theme();
    }
    // If we can't find a core default theme, WP_DEFAULT_THEME is the best we can do.
    if ($theme) {
        $stylesheet = $theme->get_stylesheet();
        $template = $theme->get_template();
    }
    $timezone_string = '';
    $gmt_offset = 0;
    /*
     * translators: default GMT offset or timezone string. Must be either a valid offset (-12 to 14)
     * or a valid timezone string (America/New_York). See https://www.php.net/manual/en/timezones.php
     * for all timezone strings currently supported by PHP.
     *
     * Important: When a previous timezone string, like `Europe/Kiev`, has been superseded by an
     * updated one, like `Europe/Kyiv`, as a rule of thumb, the **old** timezone name should be used
     * in the "translation" to allow for the default timezone setting to be PHP cross-version compatible,
     * as old timezone names will be recognized in new PHP versions, while new timezone names cannot
     * be recognized in old PHP versions.
     *
     * To verify which timezone strings are available in the _oldest_ PHP version supported, you can
     * use https://3v4l.org/6YQAt#v5.6.20 and replace the "BR" (Brazil) in the code line with the
     * country code for which you want to look up the supported timezone names.
     */
    $offset_or_tz = _x('0', 'default GMT offset or timezone string');
    if (is_numeric($offset_or_tz)) {
        $gmt_offset = $offset_or_tz;
    } elseif ($offset_or_tz && in_array($offset_or_tz, timezone_identifiers_list(DateTimeZone::ALL_WITH_BC), true)) {
        $timezone_string = $offset_or_tz;
    }
    $defaults = array(
        'siteurl' => $guessurl,
        'home' => $guessurl,
        'blogname' => __('My Site'),
        'blogdescription' => '',
        'users_can_register' => 0,
        'admin_email' => '[email protected]',
        /* translators: Default start of the week. 0 = Sunday, 1 = Monday. */
        'start_of_week' => _x('1', 'start of week'),
        'use_balanceTags' => 0,
        'use_smilies' => 1,
        'require_name_email' => 1,
        'comments_notify' => 1,
        'posts_per_rss' => 10,
        'rss_use_excerpt' => 0,
        'mailserver_url' => 'mail.example.com',
        'mailserver_login' => '[email protected]',
        'mailserver_pass' => 'password',
        'mailserver_port' => 110,
        'default_category' => 1,
        'default_comment_status' => 'open',
        'default_ping_status' => 'open',
        'default_pingback_flag' => 1,
        'posts_per_page' => 10,
        /* translators: Default date format, see https://www.php.net/manual/datetime.format.php */
        'date_format' => __('F j, Y'),
        /* translators: Default time format, see https://www.php.net/manual/datetime.format.php */
        'time_format' => __('g:i a'),
        /* translators: Links last updated date format, see https://www.php.net/manual/datetime.format.php */
        'links_updated_date_format' => __('F j, Y g:i a'),
        'comment_moderation' => 0,
        'moderation_notify' => 1,
        'permalink_structure' => '',
        'rewrite_rules' => '',
        'hack_file' => 0,
        'blog_charset' => 'UTF-8',
        'moderation_keys' => '',
        'active_plugins' => array(),
        'category_base' => '',
        'ping_sites' => 'http://rpc.pingomatic.com/',
        'comment_max_links' => 2,
        'gmt_offset' => $gmt_offset,
        // 1.5.0
        'default_email_category' => 1,
        'recently_edited' => '',
        'template' => $template,
        'stylesheet' => $stylesheet,
        'comment_registration' => 0,
        'html_type' => 'text/html',
        // 1.5.1
        'use_trackback' => 0,
        // 2.0.0
        'default_role' => 'subscriber',
        'db_version' => $wp_db_version,
        // 2.0.1
        'uploads_use_yearmonth_folders' => 1,
        'upload_path' => '',
        // 2.1.0
        'blog_public' => '1',
        'default_link_category' => 2,
        'show_on_front' => 'posts',
        // 2.2.0
        'tag_base' => '',
        // 2.5.0
        'show_avatars' => '1',
        'avatar_rating' => 'G',
        'upload_url_path' => '',
        'thumbnail_size_w' => 150,
        'thumbnail_size_h' => 150,
        'thumbnail_crop' => 1,
        'medium_size_w' => 300,
        'medium_size_h' => 300,
        // 2.6.0
        'avatar_default' => 'mystery',
        // 2.7.0
        'large_size_w' => 1024,
        'large_size_h' => 1024,
        'image_default_link_type' => 'none',
        'image_default_size' => '',
        'image_default_align' => '',
        'close_comments_for_old_posts' => 0,
        'close_comments_days_old' => 14,
        'thread_comments' => 1,
        'thread_comments_depth' => 5,
        'page_comments' => 0,
        'comments_per_page' => 50,
        'default_comments_page' => 'newest',
        'comment_order' => 'asc',
        'sticky_posts' => array(),
        'widget_categories' => array(),
        'widget_text' => array(),
        'widget_rss' => array(),
        'uninstall_plugins' => array(),
        // 2.8.0
        'timezone_string' => $timezone_string,
        // 3.0.0
        'page_for_posts' => 0,
        'page_on_front' => 0,
        // 3.1.0
        'default_post_format' => 0,
        // 3.5.0
        'link_manager_enabled' => 0,
        // 4.3.0
        'finished_splitting_shared_terms' => 1,
        'site_icon' => 0,
        // 4.4.0
        'medium_large_size_w' => 768,
        'medium_large_size_h' => 0,
        // 4.9.6
        'wp_page_for_privacy_policy' => 0,
        // 4.9.8
        'show_comments_cookies_opt_in' => 1,
        // 5.3.0
        'admin_email_lifespan' => time() + 6 * MONTH_IN_SECONDS,
        // 5.5.0
        'disallowed_keys' => '',
        'comment_previously_approved' => 1,
        'auto_plugin_theme_update_emails' => array(),
        // 5.6.0
        'auto_update_core_dev' => 'enabled',
        'auto_update_core_minor' => 'enabled',
        // Default to enabled for new installs.
        // See https://core.trac.wordpress.org/ticket/51742.
        'auto_update_core_major' => 'enabled',
        // 5.8.0
        'wp_force_deactivated_plugins' => array(),
    );
    // 3.3.0
    if (!is_multisite()) {
        $defaults['initial_db_version'] = (!empty($wp_current_db_version) && $wp_current_db_version < $wp_db_version) ? $wp_current_db_version : $wp_db_version;
    }
    // 3.0.0 multisite.
    if (is_multisite()) {
        $defaults['permalink_structure'] = '/%year%/%monthnum%/%day%/%postname%/';
    }
    $options = wp_parse_args($options, $defaults);
    // Set autoload to no for these options.
    $fat_options = array('moderation_keys', 'recently_edited', 'disallowed_keys', 'uninstall_plugins', 'auto_plugin_theme_update_emails');
    $keys = "'" . implode("', '", array_keys($options)) . "'";
    $existing_options = $wpdb->get_col("SELECT option_name FROM {$wpdb->options} WHERE option_name in ( {$keys} )");
    // phpcs:ignore WordPress.DB.PreparedSQL.NotPrepared
    $insert = '';
    foreach ($options as $option => $value) {
        if (in_array($option, $existing_options, true)) {
            continue;
        }
        if (in_array($option, $fat_options, true)) {
            $autoload = 'no';
        } else {
            $autoload = 'yes';
        }
        if (is_array($value)) {
            $value = serialize($value);
        }
        if (!empty($insert)) {
            $insert .= ', ';
        }
        $insert .= $wpdb->prepare('(%s, %s, %s)', $option, $value, $autoload);
    }
    if (!empty($insert)) {
        $wpdb->query("INSERT INTO {$wpdb->options} (option_name, option_value, autoload) VALUES " . $insert);
        // phpcs:ignore WordPress.DB.PreparedSQL.NotPrepared
    }
    // In case it is set, but blank, update "home".
    if (!__get_option('home')) {
        update_option('home', $guessurl);
    }
    // Delete unused options.
    $unusedoptions = array('blodotgsping_url', 'bodyterminator', 'emailtestonly', 'phoneemail_separator', 'smilies_directory', 'subjectprefix', 'use_bbcode', 'use_blodotgsping', 'use_phoneemail', 'use_quicktags', 'use_weblogsping', 'weblogs_cache_file', 'use_preview', 'use_htmltrans', 'smilies_directory', 'fileupload_allowedusers', 'use_phoneemail', 'default_post_status', 'default_post_category', 'archive_mode', 'time_difference', 'links_minadminlevel', 'links_use_adminlevels', 'links_rating_type', 'links_rating_char', 'links_rating_ignore_zero', 'links_rating_single_image', 'links_rating_image0', 'links_rating_image1', 'links_rating_image2', 'links_rating_image3', 'links_rating_image4', 'links_rating_image5', 'links_rating_image6', 'links_rating_image7', 'links_rating_image8', 'links_rating_image9', 'links_recently_updated_time', 'links_recently_updated_prepend', 'links_recently_updated_append', 'weblogs_cacheminutes', 'comment_allowed_tags', 'search_engine_friendly_urls', 'default_geourl_lat', 'default_geourl_lon', 'use_default_geourl', 'weblogs_xml_url', 'new_users_can_blog', '_wpnonce', '_wp_http_referer', 'Update', 'action', 'rich_editing', 'autosave_interval', 'deactivated_plugins', 'can_compress_scripts', 'page_uris', 'update_core', 'update_plugins', 'update_themes', 'doing_cron', 'random_seed', 'rss_excerpt_length', 'secret', 'use_linksupdate', 'default_comment_status_page', 'wporg_popular_tags', 'what_to_show', 'rss_language', 'language', 'enable_xmlrpc', 'enable_app', 'embed_autourls', 'default_post_edit_rows', 'gzipcompression', 'advanced_edit');
    foreach ($unusedoptions as $option) {
        delete_option($option);
    }
    // Delete obsolete magpie stuff.
    $wpdb->query("DELETE FROM {$wpdb->options} WHERE option_name REGEXP '^rss_[0-9a-f]{32}(_ts)?\$'");
    // Clear expired transients.
    delete_expired_transients(true);
}

WordPress Version: 1.5

/**
 * Create WordPress options and set the default values.
 *
 * @since 1.5.0
 * @since 5.1.0 The $options parameter has been added.
 *
 * @global wpdb $wpdb                  WordPress database abstraction object.
 * @global int  $wp_db_version         WordPress database version.
 * @global int  $wp_current_db_version The old (current) database version.
 *
 * @param array $options Optional. Custom option $key => $value pairs to use. Default empty array.
 */
function populate_options(array $options = array())
{
    global $wpdb, $wp_db_version, $wp_current_db_version;
    $guessurl = wp_guess_url();
    /**
     * Fires before creating WordPress options and populating their default values.
     *
     * @since 2.6.0
     */
    do_action('populate_options');
    // If WP_DEFAULT_THEME doesn't exist, fall back to the latest core default theme.
    $stylesheet = WP_DEFAULT_THEME;
    $template = WP_DEFAULT_THEME;
    $theme = wp_get_theme(WP_DEFAULT_THEME);
    if (!$theme->exists()) {
        $theme = WP_Theme::get_core_default_theme();
    }
    // If we can't find a core default theme, WP_DEFAULT_THEME is the best we can do.
    if ($theme) {
        $stylesheet = $theme->get_stylesheet();
        $template = $theme->get_template();
    }
    $timezone_string = '';
    $gmt_offset = 0;
    /*
     * translators: default GMT offset or timezone string. Must be either a valid offset (-12 to 14)
     * or a valid timezone string (America/New_York). See https://www.php.net/manual/en/timezones.php
     * for all timezone strings currently supported by PHP.
     *
     * Important: When a previous timezone string, like `Europe/Kiev`, has been superseded by an
     * updated one, like `Europe/Kyiv`, as a rule of thumb, the **old** timezone name should be used
     * in the "translation" to allow for the default timezone setting to be PHP cross-version compatible,
     * as old timezone names will be recognized in new PHP versions, while new timezone names cannot
     * be recognized in old PHP versions.
     *
     * To verify which timezone strings are available in the _oldest_ PHP version supported, you can
     * use https://3v4l.org/6YQAt#v5.6.20 and replace the "BR" (Brazil) in the code line with the
     * country code for which you want to look up the supported timezone names.
     */
    $offset_or_tz = _x('0', 'default GMT offset or timezone string');
    if (is_numeric($offset_or_tz)) {
        $gmt_offset = $offset_or_tz;
    } elseif ($offset_or_tz && in_array($offset_or_tz, timezone_identifiers_list(DateTimeZone::ALL_WITH_BC), true)) {
        $timezone_string = $offset_or_tz;
    }
    $defaults = array(
        'siteurl' => $guessurl,
        'home' => $guessurl,
        'blogname' => __('My Site'),
        'blogdescription' => '',
        'users_can_register' => 0,
        'admin_email' => '[email protected]',
        /* translators: Default start of the week. 0 = Sunday, 1 = Monday. */
        'start_of_week' => _x('1', 'start of week'),
        'use_balanceTags' => 0,
        'use_smilies' => 1,
        'require_name_email' => 1,
        'comments_notify' => 1,
        'posts_per_rss' => 10,
        'rss_use_excerpt' => 0,
        'mailserver_url' => 'mail.example.com',
        'mailserver_login' => '[email protected]',
        'mailserver_pass' => 'password',
        'mailserver_port' => 110,
        'default_category' => 1,
        'default_comment_status' => 'open',
        'default_ping_status' => 'open',
        'default_pingback_flag' => 1,
        'posts_per_page' => 10,
        /* translators: Default date format, see https://www.php.net/manual/datetime.format.php */
        'date_format' => __('F j, Y'),
        /* translators: Default time format, see https://www.php.net/manual/datetime.format.php */
        'time_format' => __('g:i a'),
        /* translators: Links last updated date format, see https://www.php.net/manual/datetime.format.php */
        'links_updated_date_format' => __('F j, Y g:i a'),
        'comment_moderation' => 0,
        'moderation_notify' => 1,
        'permalink_structure' => '',
        'rewrite_rules' => '',
        'hack_file' => 0,
        'blog_charset' => 'UTF-8',
        'moderation_keys' => '',
        'active_plugins' => array(),
        'category_base' => '',
        'ping_sites' => 'http://rpc.pingomatic.com/',
        'comment_max_links' => 2,
        'gmt_offset' => $gmt_offset,
        // 1.5.0
        'default_email_category' => 1,
        'recently_edited' => '',
        'template' => $template,
        'stylesheet' => $stylesheet,
        'comment_registration' => 0,
        'html_type' => 'text/html',
        // 1.5.1
        'use_trackback' => 0,
        // 2.0.0
        'default_role' => 'subscriber',
        'db_version' => $wp_db_version,
        // 2.0.1
        'uploads_use_yearmonth_folders' => 1,
        'upload_path' => '',
        // 2.1.0
        'blog_public' => '1',
        'default_link_category' => 2,
        'show_on_front' => 'posts',
        // 2.2.0
        'tag_base' => '',
        // 2.5.0
        'show_avatars' => '1',
        'avatar_rating' => 'G',
        'upload_url_path' => '',
        'thumbnail_size_w' => 150,
        'thumbnail_size_h' => 150,
        'thumbnail_crop' => 1,
        'medium_size_w' => 300,
        'medium_size_h' => 300,
        // 2.6.0
        'avatar_default' => 'mystery',
        // 2.7.0
        'large_size_w' => 1024,
        'large_size_h' => 1024,
        'image_default_link_type' => 'none',
        'image_default_size' => '',
        'image_default_align' => '',
        'close_comments_for_old_posts' => 0,
        'close_comments_days_old' => 14,
        'thread_comments' => 1,
        'thread_comments_depth' => 5,
        'page_comments' => 0,
        'comments_per_page' => 50,
        'default_comments_page' => 'newest',
        'comment_order' => 'asc',
        'sticky_posts' => array(),
        'widget_categories' => array(),
        'widget_text' => array(),
        'widget_rss' => array(),
        'uninstall_plugins' => array(),
        // 2.8.0
        'timezone_string' => $timezone_string,
        // 3.0.0
        'page_for_posts' => 0,
        'page_on_front' => 0,
        // 3.1.0
        'default_post_format' => 0,
        // 3.5.0
        'link_manager_enabled' => 0,
        // 4.3.0
        'finished_splitting_shared_terms' => 1,
        'site_icon' => 0,
        // 4.4.0
        'medium_large_size_w' => 768,
        'medium_large_size_h' => 0,
        // 4.9.6
        'wp_page_for_privacy_policy' => 0,
        // 4.9.8
        'show_comments_cookies_opt_in' => 1,
        // 5.3.0
        'admin_email_lifespan' => time() + 6 * MONTH_IN_SECONDS,
        // 5.5.0
        'disallowed_keys' => '',
        'comment_previously_approved' => 1,
        'auto_plugin_theme_update_emails' => array(),
        // 5.6.0
        'auto_update_core_dev' => 'enabled',
        'auto_update_core_minor' => 'enabled',
        // Default to enabled for new installs.
        // See https://core.trac.wordpress.org/ticket/51742.
        'auto_update_core_major' => 'enabled',
        // 5.8.0
        'wp_force_deactivated_plugins' => array(),
    );
    // 3.3.0
    if (!is_multisite()) {
        $defaults['initial_db_version'] = (!empty($wp_current_db_version) && $wp_current_db_version < $wp_db_version) ? $wp_current_db_version : $wp_db_version;
    }
    // 3.0.0 multisite.
    if (is_multisite()) {
        $defaults['permalink_structure'] = '/%year%/%monthnum%/%day%/%postname%/';
    }
    $options = wp_parse_args($options, $defaults);
    // Set autoload to no for these options.
    $fat_options = array('moderation_keys', 'recently_edited', 'disallowed_keys', 'uninstall_plugins', 'auto_plugin_theme_update_emails');
    $keys = "'" . implode("', '", array_keys($options)) . "'";
    $existing_options = $wpdb->get_col("SELECT option_name FROM {$wpdb->options} WHERE option_name in ( {$keys} )");
    // phpcs:ignore WordPress.DB.PreparedSQL.NotPrepared
    $insert = '';
    foreach ($options as $option => $value) {
        if (in_array($option, $existing_options, true)) {
            continue;
        }
        if (in_array($option, $fat_options, true)) {
            $autoload = 'no';
        } else {
            $autoload = 'yes';
        }
        if (!empty($insert)) {
            $insert .= ', ';
        }
        $value = maybe_serialize(sanitize_option($option, $value));
        $insert .= $wpdb->prepare('(%s, %s, %s)', $option, $value, $autoload);
    }
    if (!empty($insert)) {
        $wpdb->query("INSERT INTO {$wpdb->options} (option_name, option_value, autoload) VALUES " . $insert);
        // phpcs:ignore WordPress.DB.PreparedSQL.NotPrepared
    }
    // In case it is set, but blank, update "home".
    if (!__get_option('home')) {
        update_option('home', $guessurl);
    }
    // Delete unused options.
    $unusedoptions = array('blodotgsping_url', 'bodyterminator', 'emailtestonly', 'phoneemail_separator', 'smilies_directory', 'subjectprefix', 'use_bbcode', 'use_blodotgsping', 'use_phoneemail', 'use_quicktags', 'use_weblogsping', 'weblogs_cache_file', 'use_preview', 'use_htmltrans', 'smilies_directory', 'fileupload_allowedusers', 'use_phoneemail', 'default_post_status', 'default_post_category', 'archive_mode', 'time_difference', 'links_minadminlevel', 'links_use_adminlevels', 'links_rating_type', 'links_rating_char', 'links_rating_ignore_zero', 'links_rating_single_image', 'links_rating_image0', 'links_rating_image1', 'links_rating_image2', 'links_rating_image3', 'links_rating_image4', 'links_rating_image5', 'links_rating_image6', 'links_rating_image7', 'links_rating_image8', 'links_rating_image9', 'links_recently_updated_time', 'links_recently_updated_prepend', 'links_recently_updated_append', 'weblogs_cacheminutes', 'comment_allowed_tags', 'search_engine_friendly_urls', 'default_geourl_lat', 'default_geourl_lon', 'use_default_geourl', 'weblogs_xml_url', 'new_users_can_blog', '_wpnonce', '_wp_http_referer', 'Update', 'action', 'rich_editing', 'autosave_interval', 'deactivated_plugins', 'can_compress_scripts', 'page_uris', 'update_core', 'update_plugins', 'update_themes', 'doing_cron', 'random_seed', 'rss_excerpt_length', 'secret', 'use_linksupdate', 'default_comment_status_page', 'wporg_popular_tags', 'what_to_show', 'rss_language', 'language', 'enable_xmlrpc', 'enable_app', 'embed_autourls', 'default_post_edit_rows', 'gzipcompression', 'advanced_edit');
    foreach ($unusedoptions as $option) {
        delete_option($option);
    }
    // Delete obsolete magpie stuff.
    $wpdb->query("DELETE FROM {$wpdb->options} WHERE option_name REGEXP '^rss_[0-9a-f]{32}(_ts)?\$'");
    // Clear expired transients.
    delete_expired_transients(true);
}

WordPress Version: 6.1

/**
 * Create WordPress options and set the default values.
 *
 * @since 1.5.0
 * @since 5.1.0 The $options parameter has been added.
 *
 * @global wpdb $wpdb                  WordPress database abstraction object.
 * @global int  $wp_db_version         WordPress database version.
 * @global int  $wp_current_db_version The old (current) database version.
 *
 * @param array $options Optional. Custom option $key => $value pairs to use. Default empty array.
 */
function populate_options(array $options = array())
{
    global $wpdb, $wp_db_version, $wp_current_db_version;
    $guessurl = wp_guess_url();
    /**
     * Fires before creating WordPress options and populating their default values.
     *
     * @since 2.6.0
     */
    do_action('populate_options');
    // If WP_DEFAULT_THEME doesn't exist, fall back to the latest core default theme.
    $stylesheet = WP_DEFAULT_THEME;
    $template = WP_DEFAULT_THEME;
    $theme = wp_get_theme(WP_DEFAULT_THEME);
    if (!$theme->exists()) {
        $theme = WP_Theme::get_core_default_theme();
    }
    // If we can't find a core default theme, WP_DEFAULT_THEME is the best we can do.
    if ($theme) {
        $stylesheet = $theme->get_stylesheet();
        $template = $theme->get_template();
    }
    $timezone_string = '';
    $gmt_offset = 0;
    /*
     * translators: default GMT offset or timezone string. Must be either a valid offset (-12 to 14)
     * or a valid timezone string (America/New_York). See https://www.php.net/manual/en/timezones.php
     * for all timezone strings currently supported by PHP.
     *
     * Important: When a previous timezone string, like `Europe/Kiev`, has been superseded by an
     * updated one, like `Europe/Kyiv`, as a rule of thumb, the **old** timezone name should be used
     * in the "translation" to allow for the default timezone setting to be PHP cross-version compatible,
     * as old timezone names will be recognized in new PHP versions, while new timezone names cannot
     * be recognized in old PHP versions.
     *
     * To verify which timezone strings are available in the _oldest_ PHP version supported, you can
     * use https://3v4l.org/6YQAt#v5.6.20 and replace the "BR" (Brazil) in the code line with the
     * country code for which you want to look up the supported timezone names.
     */
    $offset_or_tz = _x('0', 'default GMT offset or timezone string');
    if (is_numeric($offset_or_tz)) {
        $gmt_offset = $offset_or_tz;
    } elseif ($offset_or_tz && in_array($offset_or_tz, timezone_identifiers_list(DateTimeZone::ALL_WITH_BC), true)) {
        $timezone_string = $offset_or_tz;
    }
    $defaults = array(
        'siteurl' => $guessurl,
        'home' => $guessurl,
        'blogname' => __('My Site'),
        'blogdescription' => '',
        'users_can_register' => 0,
        'admin_email' => '[email protected]',
        /* translators: Default start of the week. 0 = Sunday, 1 = Monday. */
        'start_of_week' => _x('1', 'start of week'),
        'use_balanceTags' => 0,
        'use_smilies' => 1,
        'require_name_email' => 1,
        'comments_notify' => 1,
        'posts_per_rss' => 10,
        'rss_use_excerpt' => 0,
        'mailserver_url' => 'mail.example.com',
        'mailserver_login' => '[email protected]',
        'mailserver_pass' => 'password',
        'mailserver_port' => 110,
        'default_category' => 1,
        'default_comment_status' => 'open',
        'default_ping_status' => 'open',
        'default_pingback_flag' => 1,
        'posts_per_page' => 10,
        /* translators: Default date format, see https://www.php.net/manual/datetime.format.php */
        'date_format' => __('F j, Y'),
        /* translators: Default time format, see https://www.php.net/manual/datetime.format.php */
        'time_format' => __('g:i a'),
        /* translators: Links last updated date format, see https://www.php.net/manual/datetime.format.php */
        'links_updated_date_format' => __('F j, Y g:i a'),
        'comment_moderation' => 0,
        'moderation_notify' => 1,
        'permalink_structure' => '',
        'rewrite_rules' => '',
        'hack_file' => 0,
        'blog_charset' => 'UTF-8',
        'moderation_keys' => '',
        'active_plugins' => array(),
        'category_base' => '',
        'ping_sites' => 'http://rpc.pingomatic.com/',
        'comment_max_links' => 2,
        'gmt_offset' => $gmt_offset,
        // 1.5.0
        'default_email_category' => 1,
        'recently_edited' => '',
        'template' => $template,
        'stylesheet' => $stylesheet,
        'comment_registration' => 0,
        'html_type' => 'text/html',
        // 1.5.1
        'use_trackback' => 0,
        // 2.0.0
        'default_role' => 'subscriber',
        'db_version' => $wp_db_version,
        // 2.0.1
        'uploads_use_yearmonth_folders' => 1,
        'upload_path' => '',
        // 2.1.0
        'blog_public' => '1',
        'default_link_category' => 2,
        'show_on_front' => 'posts',
        // 2.2.0
        'tag_base' => '',
        // 2.5.0
        'show_avatars' => '1',
        'avatar_rating' => 'G',
        'upload_url_path' => '',
        'thumbnail_size_w' => 150,
        'thumbnail_size_h' => 150,
        'thumbnail_crop' => 1,
        'medium_size_w' => 300,
        'medium_size_h' => 300,
        // 2.6.0
        'avatar_default' => 'mystery',
        // 2.7.0
        'large_size_w' => 1024,
        'large_size_h' => 1024,
        'image_default_link_type' => 'none',
        'image_default_size' => '',
        'image_default_align' => '',
        'close_comments_for_old_posts' => 0,
        'close_comments_days_old' => 14,
        'thread_comments' => 1,
        'thread_comments_depth' => 5,
        'page_comments' => 0,
        'comments_per_page' => 50,
        'default_comments_page' => 'newest',
        'comment_order' => 'asc',
        'sticky_posts' => array(),
        'widget_categories' => array(),
        'widget_text' => array(),
        'widget_rss' => array(),
        'uninstall_plugins' => array(),
        // 2.8.0
        'timezone_string' => $timezone_string,
        // 3.0.0
        'page_for_posts' => 0,
        'page_on_front' => 0,
        // 3.1.0
        'default_post_format' => 0,
        // 3.5.0
        'link_manager_enabled' => 0,
        // 4.3.0
        'finished_splitting_shared_terms' => 1,
        'site_icon' => 0,
        // 4.4.0
        'medium_large_size_w' => 768,
        'medium_large_size_h' => 0,
        // 4.9.6
        'wp_page_for_privacy_policy' => 0,
        // 4.9.8
        'show_comments_cookies_opt_in' => 1,
        // 5.3.0
        'admin_email_lifespan' => time() + 6 * MONTH_IN_SECONDS,
        // 5.5.0
        'disallowed_keys' => '',
        'comment_previously_approved' => 1,
        'auto_plugin_theme_update_emails' => array(),
        // 5.6.0
        'auto_update_core_dev' => 'enabled',
        'auto_update_core_minor' => 'enabled',
        // Default to enabled for new installs.
        // See https://core.trac.wordpress.org/ticket/51742.
        'auto_update_core_major' => 'enabled',
        // 5.8.0
        'wp_force_deactivated_plugins' => array(),
    );
    // 3.3.0
    if (!is_multisite()) {
        $defaults['initial_db_version'] = (!empty($wp_current_db_version) && $wp_current_db_version < $wp_db_version) ? $wp_current_db_version : $wp_db_version;
    }
    // 3.0.0 multisite.
    if (is_multisite()) {
        $defaults['permalink_structure'] = '/%year%/%monthnum%/%day%/%postname%/';
    }
    $options = wp_parse_args($options, $defaults);
    // Set autoload to no for these options.
    $fat_options = array('moderation_keys', 'recently_edited', 'disallowed_keys', 'uninstall_plugins', 'auto_plugin_theme_update_emails');
    $keys = "'" . implode("', '", array_keys($options)) . "'";
    $existing_options = $wpdb->get_col("SELECT option_name FROM {$wpdb->options} WHERE option_name in ( {$keys} )");
    // phpcs:ignore WordPress.DB.PreparedSQL.NotPrepared
    $insert = '';
    foreach ($options as $option => $value) {
        if (in_array($option, $existing_options, true)) {
            continue;
        }
        if (in_array($option, $fat_options, true)) {
            $autoload = 'no';
        } else {
            $autoload = 'yes';
        }
        if (is_array($value)) {
            $value = serialize($value);
        }
        if (!empty($insert)) {
            $insert .= ', ';
        }
        $insert .= $wpdb->prepare('(%s, %s, %s)', $option, $value, $autoload);
    }
    if (!empty($insert)) {
        $wpdb->query("INSERT INTO {$wpdb->options} (option_name, option_value, autoload) VALUES " . $insert);
        // phpcs:ignore WordPress.DB.PreparedSQL.NotPrepared
    }
    // In case it is set, but blank, update "home".
    if (!__get_option('home')) {
        update_option('home', $guessurl);
    }
    // Delete unused options.
    $unusedoptions = array('blodotgsping_url', 'bodyterminator', 'emailtestonly', 'phoneemail_separator', 'smilies_directory', 'subjectprefix', 'use_bbcode', 'use_blodotgsping', 'use_phoneemail', 'use_quicktags', 'use_weblogsping', 'weblogs_cache_file', 'use_preview', 'use_htmltrans', 'smilies_directory', 'fileupload_allowedusers', 'use_phoneemail', 'default_post_status', 'default_post_category', 'archive_mode', 'time_difference', 'links_minadminlevel', 'links_use_adminlevels', 'links_rating_type', 'links_rating_char', 'links_rating_ignore_zero', 'links_rating_single_image', 'links_rating_image0', 'links_rating_image1', 'links_rating_image2', 'links_rating_image3', 'links_rating_image4', 'links_rating_image5', 'links_rating_image6', 'links_rating_image7', 'links_rating_image8', 'links_rating_image9', 'links_recently_updated_time', 'links_recently_updated_prepend', 'links_recently_updated_append', 'weblogs_cacheminutes', 'comment_allowed_tags', 'search_engine_friendly_urls', 'default_geourl_lat', 'default_geourl_lon', 'use_default_geourl', 'weblogs_xml_url', 'new_users_can_blog', '_wpnonce', '_wp_http_referer', 'Update', 'action', 'rich_editing', 'autosave_interval', 'deactivated_plugins', 'can_compress_scripts', 'page_uris', 'update_core', 'update_plugins', 'update_themes', 'doing_cron', 'random_seed', 'rss_excerpt_length', 'secret', 'use_linksupdate', 'default_comment_status_page', 'wporg_popular_tags', 'what_to_show', 'rss_language', 'language', 'enable_xmlrpc', 'enable_app', 'embed_autourls', 'default_post_edit_rows', 'gzipcompression', 'advanced_edit');
    foreach ($unusedoptions as $option) {
        delete_option($option);
    }
    // Delete obsolete magpie stuff.
    $wpdb->query("DELETE FROM {$wpdb->options} WHERE option_name REGEXP '^rss_[0-9a-f]{32}(_ts)?\$'");
    // Clear expired transients.
    delete_expired_transients(true);
}

WordPress Version: 9.9

/**
 * Create WordPress options and set the default values.
 *
 * @since 1.5.0
 * @since 5.1.0 The $options parameter has been added.
 *
 * @global wpdb $wpdb                  WordPress database abstraction object.
 * @global int  $wp_db_version         WordPress database version.
 * @global int  $wp_current_db_version The old (current) database version.
 *
 * @param array $options Optional. Custom option $key => $value pairs to use. Default empty array.
 */
function populate_options(array $options = array())
{
    global $wpdb, $wp_db_version, $wp_current_db_version;
    $guessurl = wp_guess_url();
    /**
     * Fires before creating WordPress options and populating their default values.
     *
     * @since 2.6.0
     */
    do_action('populate_options');
    // If WP_DEFAULT_THEME doesn't exist, fall back to the latest core default theme.
    $stylesheet = WP_DEFAULT_THEME;
    $template = WP_DEFAULT_THEME;
    $theme = wp_get_theme(WP_DEFAULT_THEME);
    if (!$theme->exists()) {
        $theme = WP_Theme::get_core_default_theme();
    }
    // If we can't find a core default theme, WP_DEFAULT_THEME is the best we can do.
    if ($theme) {
        $stylesheet = $theme->get_stylesheet();
        $template = $theme->get_template();
    }
    $timezone_string = '';
    $gmt_offset = 0;
    /*
     * translators: default GMT offset or timezone string. Must be either a valid offset (-12 to 14)
     * or a valid timezone string (America/New_York). See https://www.php.net/manual/en/timezones.php
     * for all timezone strings supported by PHP.
     */
    $offset_or_tz = _x('0', 'default GMT offset or timezone string');
    if (is_numeric($offset_or_tz)) {
        $gmt_offset = $offset_or_tz;
    } elseif ($offset_or_tz && in_array($offset_or_tz, timezone_identifiers_list(), true)) {
        $timezone_string = $offset_or_tz;
    }
    $defaults = array(
        'siteurl' => $guessurl,
        'home' => $guessurl,
        'blogname' => __('My Site'),
        /* translators: Site tagline. */
        'blogdescription' => __('Just another WordPress site'),
        'users_can_register' => 0,
        'admin_email' => '[email protected]',
        /* translators: Default start of the week. 0 = Sunday, 1 = Monday. */
        'start_of_week' => _x('1', 'start of week'),
        'use_balanceTags' => 0,
        'use_smilies' => 1,
        'require_name_email' => 1,
        'comments_notify' => 1,
        'posts_per_rss' => 10,
        'rss_use_excerpt' => 0,
        'mailserver_url' => 'mail.example.com',
        'mailserver_login' => '[email protected]',
        'mailserver_pass' => 'password',
        'mailserver_port' => 110,
        'default_category' => 1,
        'default_comment_status' => 'open',
        'default_ping_status' => 'open',
        'default_pingback_flag' => 1,
        'posts_per_page' => 10,
        /* translators: Default date format, see https://www.php.net/manual/datetime.format.php */
        'date_format' => __('F j, Y'),
        /* translators: Default time format, see https://www.php.net/manual/datetime.format.php */
        'time_format' => __('g:i a'),
        /* translators: Links last updated date format, see https://www.php.net/manual/datetime.format.php */
        'links_updated_date_format' => __('F j, Y g:i a'),
        'comment_moderation' => 0,
        'moderation_notify' => 1,
        'permalink_structure' => '',
        'rewrite_rules' => '',
        'hack_file' => 0,
        'blog_charset' => 'UTF-8',
        'moderation_keys' => '',
        'active_plugins' => array(),
        'category_base' => '',
        'ping_sites' => 'http://rpc.pingomatic.com/',
        'comment_max_links' => 2,
        'gmt_offset' => $gmt_offset,
        // 1.5.0
        'default_email_category' => 1,
        'recently_edited' => '',
        'template' => $template,
        'stylesheet' => $stylesheet,
        'comment_registration' => 0,
        'html_type' => 'text/html',
        // 1.5.1
        'use_trackback' => 0,
        // 2.0.0
        'default_role' => 'subscriber',
        'db_version' => $wp_db_version,
        // 2.0.1
        'uploads_use_yearmonth_folders' => 1,
        'upload_path' => '',
        // 2.1.0
        'blog_public' => '1',
        'default_link_category' => 2,
        'show_on_front' => 'posts',
        // 2.2.0
        'tag_base' => '',
        // 2.5.0
        'show_avatars' => '1',
        'avatar_rating' => 'G',
        'upload_url_path' => '',
        'thumbnail_size_w' => 150,
        'thumbnail_size_h' => 150,
        'thumbnail_crop' => 1,
        'medium_size_w' => 300,
        'medium_size_h' => 300,
        // 2.6.0
        'avatar_default' => 'mystery',
        // 2.7.0
        'large_size_w' => 1024,
        'large_size_h' => 1024,
        'image_default_link_type' => 'none',
        'image_default_size' => '',
        'image_default_align' => '',
        'close_comments_for_old_posts' => 0,
        'close_comments_days_old' => 14,
        'thread_comments' => 1,
        'thread_comments_depth' => 5,
        'page_comments' => 0,
        'comments_per_page' => 50,
        'default_comments_page' => 'newest',
        'comment_order' => 'asc',
        'sticky_posts' => array(),
        'widget_categories' => array(),
        'widget_text' => array(),
        'widget_rss' => array(),
        'uninstall_plugins' => array(),
        // 2.8.0
        'timezone_string' => $timezone_string,
        // 3.0.0
        'page_for_posts' => 0,
        'page_on_front' => 0,
        // 3.1.0
        'default_post_format' => 0,
        // 3.5.0
        'link_manager_enabled' => 0,
        // 4.3.0
        'finished_splitting_shared_terms' => 1,
        'site_icon' => 0,
        // 4.4.0
        'medium_large_size_w' => 768,
        'medium_large_size_h' => 0,
        // 4.9.6
        'wp_page_for_privacy_policy' => 0,
        // 4.9.8
        'show_comments_cookies_opt_in' => 1,
        // 5.3.0
        'admin_email_lifespan' => time() + 6 * MONTH_IN_SECONDS,
        // 5.5.0
        'disallowed_keys' => '',
        'comment_previously_approved' => 1,
        'auto_plugin_theme_update_emails' => array(),
        // 5.6.0
        'auto_update_core_dev' => 'enabled',
        'auto_update_core_minor' => 'enabled',
        // Default to enabled for new installs.
        // See https://core.trac.wordpress.org/ticket/51742.
        'auto_update_core_major' => 'enabled',
        // 5.8.0
        'wp_force_deactivated_plugins' => array(),
    );
    // 3.3.0
    if (!is_multisite()) {
        $defaults['initial_db_version'] = (!empty($wp_current_db_version) && $wp_current_db_version < $wp_db_version) ? $wp_current_db_version : $wp_db_version;
    }
    // 3.0.0 multisite.
    if (is_multisite()) {
        /* translators: %s: Network title. */
        $defaults['blogdescription'] = sprintf(__('Just another %s site'), get_network()->site_name);
        $defaults['permalink_structure'] = '/%year%/%monthnum%/%day%/%postname%/';
    }
    $options = wp_parse_args($options, $defaults);
    // Set autoload to no for these options.
    $fat_options = array('moderation_keys', 'recently_edited', 'disallowed_keys', 'uninstall_plugins', 'auto_plugin_theme_update_emails');
    $keys = "'" . implode("', '", array_keys($options)) . "'";
    $existing_options = $wpdb->get_col("SELECT option_name FROM {$wpdb->options} WHERE option_name in ( {$keys} )");
    // phpcs:ignore WordPress.DB.PreparedSQL.NotPrepared
    $insert = '';
    foreach ($options as $option => $value) {
        if (in_array($option, $existing_options, true)) {
            continue;
        }
        if (in_array($option, $fat_options, true)) {
            $autoload = 'no';
        } else {
            $autoload = 'yes';
        }
        if (!empty($insert)) {
            $insert .= ', ';
        }
        $value = maybe_serialize(sanitize_option($option, $value));
        $insert .= $wpdb->prepare('(%s, %s, %s)', $option, $value, $autoload);
    }
    if (!empty($insert)) {
        $wpdb->query("INSERT INTO {$wpdb->options} (option_name, option_value, autoload) VALUES " . $insert);
        // phpcs:ignore WordPress.DB.PreparedSQL.NotPrepared
    }
    // In case it is set, but blank, update "home".
    if (!__get_option('home')) {
        update_option('home', $guessurl);
    }
    // Delete unused options.
    $unusedoptions = array('blodotgsping_url', 'bodyterminator', 'emailtestonly', 'phoneemail_separator', 'smilies_directory', 'subjectprefix', 'use_bbcode', 'use_blodotgsping', 'use_phoneemail', 'use_quicktags', 'use_weblogsping', 'weblogs_cache_file', 'use_preview', 'use_htmltrans', 'smilies_directory', 'fileupload_allowedusers', 'use_phoneemail', 'default_post_status', 'default_post_category', 'archive_mode', 'time_difference', 'links_minadminlevel', 'links_use_adminlevels', 'links_rating_type', 'links_rating_char', 'links_rating_ignore_zero', 'links_rating_single_image', 'links_rating_image0', 'links_rating_image1', 'links_rating_image2', 'links_rating_image3', 'links_rating_image4', 'links_rating_image5', 'links_rating_image6', 'links_rating_image7', 'links_rating_image8', 'links_rating_image9', 'links_recently_updated_time', 'links_recently_updated_prepend', 'links_recently_updated_append', 'weblogs_cacheminutes', 'comment_allowed_tags', 'search_engine_friendly_urls', 'default_geourl_lat', 'default_geourl_lon', 'use_default_geourl', 'weblogs_xml_url', 'new_users_can_blog', '_wpnonce', '_wp_http_referer', 'Update', 'action', 'rich_editing', 'autosave_interval', 'deactivated_plugins', 'can_compress_scripts', 'page_uris', 'update_core', 'update_plugins', 'update_themes', 'doing_cron', 'random_seed', 'rss_excerpt_length', 'secret', 'use_linksupdate', 'default_comment_status_page', 'wporg_popular_tags', 'what_to_show', 'rss_language', 'language', 'enable_xmlrpc', 'enable_app', 'embed_autourls', 'default_post_edit_rows', 'gzipcompression', 'advanced_edit');
    foreach ($unusedoptions as $option) {
        delete_option($option);
    }
    // Delete obsolete magpie stuff.
    $wpdb->query("DELETE FROM {$wpdb->options} WHERE option_name REGEXP '^rss_[0-9a-f]{32}(_ts)?\$'");
    // Clear expired transients.
    delete_expired_transients(true);
}

WordPress Version: 5.9

/**
 * Create WordPress options and set the default values.
 *
 * @since 1.5.0
 * @since 5.1.0 The $options parameter has been added.
 *
 * @global wpdb $wpdb                  WordPress database abstraction object.
 * @global int  $wp_db_version         WordPress database version.
 * @global int  $wp_current_db_version The old (current) database version.
 *
 * @param array $options Optional. Custom option $key => $value pairs to use. Default empty array.
 */
function populate_options(array $options = array())
{
    global $wpdb, $wp_db_version, $wp_current_db_version;
    $guessurl = wp_guess_url();
    /**
     * Fires before creating WordPress options and populating their default values.
     *
     * @since 2.6.0
     */
    do_action('populate_options');
    // If WP_DEFAULT_THEME doesn't exist, fall back to the latest core default theme.
    $stylesheet = WP_DEFAULT_THEME;
    $template = WP_DEFAULT_THEME;
    $theme = wp_get_theme(WP_DEFAULT_THEME);
    if (!$theme->exists()) {
        $theme = WP_Theme::get_core_default_theme();
    }
    // If we can't find a core default theme, WP_DEFAULT_THEME is the best we can do.
    if ($theme) {
        $stylesheet = $theme->get_stylesheet();
        $template = $theme->get_template();
    }
    $timezone_string = '';
    $gmt_offset = 0;
    /*
     * translators: default GMT offset or timezone string. Must be either a valid offset (-12 to 14)
     * or a valid timezone string (America/New_York). See https://www.php.net/manual/en/timezones.php
     * for all timezone strings supported by PHP.
     */
    $offset_or_tz = _x('0', 'default GMT offset or timezone string');
    if (is_numeric($offset_or_tz)) {
        $gmt_offset = $offset_or_tz;
    } elseif ($offset_or_tz && in_array($offset_or_tz, timezone_identifiers_list(), true)) {
        $timezone_string = $offset_or_tz;
    }
    $defaults = array(
        'siteurl' => $guessurl,
        'home' => $guessurl,
        'blogname' => __('My Site'),
        /* translators: Site tagline. */
        'blogdescription' => __('Just another WordPress site'),
        'users_can_register' => 0,
        'admin_email' => '[email protected]',
        /* translators: Default start of the week. 0 = Sunday, 1 = Monday. */
        'start_of_week' => _x('1', 'start of week'),
        'use_balanceTags' => 0,
        'use_smilies' => 1,
        'require_name_email' => 1,
        'comments_notify' => 1,
        'posts_per_rss' => 10,
        'rss_use_excerpt' => 0,
        'mailserver_url' => 'mail.example.com',
        'mailserver_login' => '[email protected]',
        'mailserver_pass' => 'password',
        'mailserver_port' => 110,
        'default_category' => 1,
        'default_comment_status' => 'open',
        'default_ping_status' => 'open',
        'default_pingback_flag' => 1,
        'posts_per_page' => 10,
        /* translators: Default date format, see https://www.php.net/manual/datetime.format.php */
        'date_format' => __('F j, Y'),
        /* translators: Default time format, see https://www.php.net/manual/datetime.format.php */
        'time_format' => __('g:i a'),
        /* translators: Links last updated date format, see https://www.php.net/manual/datetime.format.php */
        'links_updated_date_format' => __('F j, Y g:i a'),
        'comment_moderation' => 0,
        'moderation_notify' => 1,
        'permalink_structure' => '',
        'rewrite_rules' => '',
        'hack_file' => 0,
        'blog_charset' => 'UTF-8',
        'moderation_keys' => '',
        'active_plugins' => array(),
        'category_base' => '',
        'ping_sites' => 'http://rpc.pingomatic.com/',
        'comment_max_links' => 2,
        'gmt_offset' => $gmt_offset,
        // 1.5.0
        'default_email_category' => 1,
        'recently_edited' => '',
        'template' => $template,
        'stylesheet' => $stylesheet,
        'comment_registration' => 0,
        'html_type' => 'text/html',
        // 1.5.1
        'use_trackback' => 0,
        // 2.0.0
        'default_role' => 'subscriber',
        'db_version' => $wp_db_version,
        // 2.0.1
        'uploads_use_yearmonth_folders' => 1,
        'upload_path' => '',
        // 2.1.0
        'blog_public' => '1',
        'default_link_category' => 2,
        'show_on_front' => 'posts',
        // 2.2.0
        'tag_base' => '',
        // 2.5.0
        'show_avatars' => '1',
        'avatar_rating' => 'G',
        'upload_url_path' => '',
        'thumbnail_size_w' => 150,
        'thumbnail_size_h' => 150,
        'thumbnail_crop' => 1,
        'medium_size_w' => 300,
        'medium_size_h' => 300,
        // 2.6.0
        'avatar_default' => 'mystery',
        // 2.7.0
        'large_size_w' => 1024,
        'large_size_h' => 1024,
        'image_default_link_type' => 'none',
        'image_default_size' => '',
        'image_default_align' => '',
        'close_comments_for_old_posts' => 0,
        'close_comments_days_old' => 14,
        'thread_comments' => 1,
        'thread_comments_depth' => 5,
        'page_comments' => 0,
        'comments_per_page' => 50,
        'default_comments_page' => 'newest',
        'comment_order' => 'asc',
        'sticky_posts' => array(),
        'widget_categories' => array(),
        'widget_text' => array(),
        'widget_rss' => array(),
        'uninstall_plugins' => array(),
        // 2.8.0
        'timezone_string' => $timezone_string,
        // 3.0.0
        'page_for_posts' => 0,
        'page_on_front' => 0,
        // 3.1.0
        'default_post_format' => 0,
        // 3.5.0
        'link_manager_enabled' => 0,
        // 4.3.0
        'finished_splitting_shared_terms' => 1,
        'site_icon' => 0,
        // 4.4.0
        'medium_large_size_w' => 768,
        'medium_large_size_h' => 0,
        // 4.9.6
        'wp_page_for_privacy_policy' => 0,
        // 4.9.8
        'show_comments_cookies_opt_in' => 1,
        // 5.3.0
        'admin_email_lifespan' => time() + 6 * MONTH_IN_SECONDS,
        // 5.5.0
        'disallowed_keys' => '',
        'comment_previously_approved' => 1,
        'auto_plugin_theme_update_emails' => array(),
        // 5.6.0
        'auto_update_core_dev' => 'enabled',
        'auto_update_core_minor' => 'enabled',
        // Default to enabled for new installs.
        // See https://core.trac.wordpress.org/ticket/51742.
        'auto_update_core_major' => 'enabled',
        // 5.8.0
        'wp_force_deactivated_plugins' => array(),
    );
    // 3.3.0
    if (!is_multisite()) {
        $defaults['initial_db_version'] = (!empty($wp_current_db_version) && $wp_current_db_version < $wp_db_version) ? $wp_current_db_version : $wp_db_version;
    }
    // 3.0.0 multisite.
    if (is_multisite()) {
        /* translators: %s: Network title. */
        $defaults['blogdescription'] = sprintf(__('Just another %s site'), get_network()->site_name);
        $defaults['permalink_structure'] = '/%year%/%monthnum%/%day%/%postname%/';
    }
    $options = wp_parse_args($options, $defaults);
    // Set autoload to no for these options.
    $fat_options = array('moderation_keys', 'recently_edited', 'disallowed_keys', 'uninstall_plugins', 'auto_plugin_theme_update_emails');
    $keys = "'" . implode("', '", array_keys($options)) . "'";
    $existing_options = $wpdb->get_col("SELECT option_name FROM {$wpdb->options} WHERE option_name in ( {$keys} )");
    // phpcs:ignore WordPress.DB.PreparedSQL.NotPrepared
    $insert = '';
    foreach ($options as $option => $value) {
        if (in_array($option, $existing_options, true)) {
            continue;
        }
        if (in_array($option, $fat_options, true)) {
            $autoload = 'no';
        } else {
            $autoload = 'yes';
        }
        if (is_array($value)) {
            $value = serialize($value);
        }
        if (!empty($insert)) {
            $insert .= ', ';
        }
        $insert .= $wpdb->prepare('(%s, %s, %s)', $option, $value, $autoload);
    }
    if (!empty($insert)) {
        $wpdb->query("INSERT INTO {$wpdb->options} (option_name, option_value, autoload) VALUES " . $insert);
        // phpcs:ignore WordPress.DB.PreparedSQL.NotPrepared
    }
    // In case it is set, but blank, update "home".
    if (!__get_option('home')) {
        update_option('home', $guessurl);
    }
    // Delete unused options.
    $unusedoptions = array('blodotgsping_url', 'bodyterminator', 'emailtestonly', 'phoneemail_separator', 'smilies_directory', 'subjectprefix', 'use_bbcode', 'use_blodotgsping', 'use_phoneemail', 'use_quicktags', 'use_weblogsping', 'weblogs_cache_file', 'use_preview', 'use_htmltrans', 'smilies_directory', 'fileupload_allowedusers', 'use_phoneemail', 'default_post_status', 'default_post_category', 'archive_mode', 'time_difference', 'links_minadminlevel', 'links_use_adminlevels', 'links_rating_type', 'links_rating_char', 'links_rating_ignore_zero', 'links_rating_single_image', 'links_rating_image0', 'links_rating_image1', 'links_rating_image2', 'links_rating_image3', 'links_rating_image4', 'links_rating_image5', 'links_rating_image6', 'links_rating_image7', 'links_rating_image8', 'links_rating_image9', 'links_recently_updated_time', 'links_recently_updated_prepend', 'links_recently_updated_append', 'weblogs_cacheminutes', 'comment_allowed_tags', 'search_engine_friendly_urls', 'default_geourl_lat', 'default_geourl_lon', 'use_default_geourl', 'weblogs_xml_url', 'new_users_can_blog', '_wpnonce', '_wp_http_referer', 'Update', 'action', 'rich_editing', 'autosave_interval', 'deactivated_plugins', 'can_compress_scripts', 'page_uris', 'update_core', 'update_plugins', 'update_themes', 'doing_cron', 'random_seed', 'rss_excerpt_length', 'secret', 'use_linksupdate', 'default_comment_status_page', 'wporg_popular_tags', 'what_to_show', 'rss_language', 'language', 'enable_xmlrpc', 'enable_app', 'embed_autourls', 'default_post_edit_rows', 'gzipcompression', 'advanced_edit');
    foreach ($unusedoptions as $option) {
        delete_option($option);
    }
    // Delete obsolete magpie stuff.
    $wpdb->query("DELETE FROM {$wpdb->options} WHERE option_name REGEXP '^rss_[0-9a-f]{32}(_ts)?\$'");
    // Clear expired transients.
    delete_expired_transients(true);
}

WordPress Version: 8.9

/**
 * Create WordPress options and set the default values.
 *
 * @since 1.5.0
 * @since 5.1.0 The $options parameter has been added.
 *
 * @global wpdb $wpdb                  WordPress database abstraction object.
 * @global int  $wp_db_version         WordPress database version.
 * @global int  $wp_current_db_version The old (current) database version.
 *
 * @param array $options Optional. Custom option $key => $value pairs to use. Default empty array.
 */
function populate_options(array $options = array())
{
    global $wpdb, $wp_db_version, $wp_current_db_version;
    $guessurl = wp_guess_url();
    /**
     * Fires before creating WordPress options and populating their default values.
     *
     * @since 2.6.0
     */
    do_action('populate_options');
    // If WP_DEFAULT_THEME doesn't exist, fall back to the latest core default theme.
    $stylesheet = WP_DEFAULT_THEME;
    $template = WP_DEFAULT_THEME;
    $theme = wp_get_theme(WP_DEFAULT_THEME);
    if (!$theme->exists()) {
        $theme = WP_Theme::get_core_default_theme();
    }
    // If we can't find a core default theme, WP_DEFAULT_THEME is the best we can do.
    if ($theme) {
        $stylesheet = $theme->get_stylesheet();
        $template = $theme->get_template();
    }
    $timezone_string = '';
    $gmt_offset = 0;
    /*
     * translators: default GMT offset or timezone string. Must be either a valid offset (-12 to 14)
     * or a valid timezone string (America/New_York). See https://www.php.net/manual/en/timezones.php
     * for all timezone strings supported by PHP.
     */
    $offset_or_tz = _x('0', 'default GMT offset or timezone string');
    // phpcs:ignore WordPress.WP.I18n.NoEmptyStrings
    if (is_numeric($offset_or_tz)) {
        $gmt_offset = $offset_or_tz;
    } elseif ($offset_or_tz && in_array($offset_or_tz, timezone_identifiers_list(), true)) {
        $timezone_string = $offset_or_tz;
    }
    $defaults = array(
        'siteurl' => $guessurl,
        'home' => $guessurl,
        'blogname' => __('My Site'),
        /* translators: Site tagline. */
        'blogdescription' => __('Just another WordPress site'),
        'users_can_register' => 0,
        'admin_email' => '[email protected]',
        /* translators: Default start of the week. 0 = Sunday, 1 = Monday. */
        'start_of_week' => _x('1', 'start of week'),
        'use_balanceTags' => 0,
        'use_smilies' => 1,
        'require_name_email' => 1,
        'comments_notify' => 1,
        'posts_per_rss' => 10,
        'rss_use_excerpt' => 0,
        'mailserver_url' => 'mail.example.com',
        'mailserver_login' => '[email protected]',
        'mailserver_pass' => 'password',
        'mailserver_port' => 110,
        'default_category' => 1,
        'default_comment_status' => 'open',
        'default_ping_status' => 'open',
        'default_pingback_flag' => 1,
        'posts_per_page' => 10,
        /* translators: Default date format, see https://www.php.net/manual/datetime.format.php */
        'date_format' => __('F j, Y'),
        /* translators: Default time format, see https://www.php.net/manual/datetime.format.php */
        'time_format' => __('g:i a'),
        /* translators: Links last updated date format, see https://www.php.net/manual/datetime.format.php */
        'links_updated_date_format' => __('F j, Y g:i a'),
        'comment_moderation' => 0,
        'moderation_notify' => 1,
        'permalink_structure' => '',
        'rewrite_rules' => '',
        'hack_file' => 0,
        'blog_charset' => 'UTF-8',
        'moderation_keys' => '',
        'active_plugins' => array(),
        'category_base' => '',
        'ping_sites' => 'http://rpc.pingomatic.com/',
        'comment_max_links' => 2,
        'gmt_offset' => $gmt_offset,
        // 1.5.0
        'default_email_category' => 1,
        'recently_edited' => '',
        'template' => $template,
        'stylesheet' => $stylesheet,
        'comment_registration' => 0,
        'html_type' => 'text/html',
        // 1.5.1
        'use_trackback' => 0,
        // 2.0.0
        'default_role' => 'subscriber',
        'db_version' => $wp_db_version,
        // 2.0.1
        'uploads_use_yearmonth_folders' => 1,
        'upload_path' => '',
        // 2.1.0
        'blog_public' => '1',
        'default_link_category' => 2,
        'show_on_front' => 'posts',
        // 2.2.0
        'tag_base' => '',
        // 2.5.0
        'show_avatars' => '1',
        'avatar_rating' => 'G',
        'upload_url_path' => '',
        'thumbnail_size_w' => 150,
        'thumbnail_size_h' => 150,
        'thumbnail_crop' => 1,
        'medium_size_w' => 300,
        'medium_size_h' => 300,
        // 2.6.0
        'avatar_default' => 'mystery',
        // 2.7.0
        'large_size_w' => 1024,
        'large_size_h' => 1024,
        'image_default_link_type' => 'none',
        'image_default_size' => '',
        'image_default_align' => '',
        'close_comments_for_old_posts' => 0,
        'close_comments_days_old' => 14,
        'thread_comments' => 1,
        'thread_comments_depth' => 5,
        'page_comments' => 0,
        'comments_per_page' => 50,
        'default_comments_page' => 'newest',
        'comment_order' => 'asc',
        'sticky_posts' => array(),
        'widget_categories' => array(),
        'widget_text' => array(),
        'widget_rss' => array(),
        'uninstall_plugins' => array(),
        // 2.8.0
        'timezone_string' => $timezone_string,
        // 3.0.0
        'page_for_posts' => 0,
        'page_on_front' => 0,
        // 3.1.0
        'default_post_format' => 0,
        // 3.5.0
        'link_manager_enabled' => 0,
        // 4.3.0
        'finished_splitting_shared_terms' => 1,
        'site_icon' => 0,
        // 4.4.0
        'medium_large_size_w' => 768,
        'medium_large_size_h' => 0,
        // 4.9.6
        'wp_page_for_privacy_policy' => 0,
        // 4.9.8
        'show_comments_cookies_opt_in' => 1,
        // 5.3.0
        'admin_email_lifespan' => time() + 6 * MONTH_IN_SECONDS,
        // 5.5.0
        'disallowed_keys' => '',
        'comment_previously_approved' => 1,
        'auto_plugin_theme_update_emails' => array(),
        // 5.6.0
        'auto_update_core_dev' => 'enabled',
        'auto_update_core_minor' => 'enabled',
        // Default to enabled for new installs.
        // See https://core.trac.wordpress.org/ticket/51742.
        'auto_update_core_major' => 'enabled',
        // 5.8.0
        'wp_force_deactivated_plugins' => array(),
    );
    // 3.3.0
    if (!is_multisite()) {
        $defaults['initial_db_version'] = (!empty($wp_current_db_version) && $wp_current_db_version < $wp_db_version) ? $wp_current_db_version : $wp_db_version;
    }
    // 3.0.0 multisite.
    if (is_multisite()) {
        /* translators: %s: Network title. */
        $defaults['blogdescription'] = sprintf(__('Just another %s site'), get_network()->site_name);
        $defaults['permalink_structure'] = '/%year%/%monthnum%/%day%/%postname%/';
    }
    $options = wp_parse_args($options, $defaults);
    // Set autoload to no for these options.
    $fat_options = array('moderation_keys', 'recently_edited', 'disallowed_keys', 'uninstall_plugins', 'auto_plugin_theme_update_emails');
    $keys = "'" . implode("', '", array_keys($options)) . "'";
    $existing_options = $wpdb->get_col("SELECT option_name FROM {$wpdb->options} WHERE option_name in ( {$keys} )");
    // phpcs:ignore WordPress.DB.PreparedSQL.NotPrepared
    $insert = '';
    foreach ($options as $option => $value) {
        if (in_array($option, $existing_options, true)) {
            continue;
        }
        if (in_array($option, $fat_options, true)) {
            $autoload = 'no';
        } else {
            $autoload = 'yes';
        }
        if (!empty($insert)) {
            $insert .= ', ';
        }
        $value = maybe_serialize(sanitize_option($option, $value));
        $insert .= $wpdb->prepare('(%s, %s, %s)', $option, $value, $autoload);
    }
    if (!empty($insert)) {
        $wpdb->query("INSERT INTO {$wpdb->options} (option_name, option_value, autoload) VALUES " . $insert);
        // phpcs:ignore WordPress.DB.PreparedSQL.NotPrepared
    }
    // In case it is set, but blank, update "home".
    if (!__get_option('home')) {
        update_option('home', $guessurl);
    }
    // Delete unused options.
    $unusedoptions = array('blodotgsping_url', 'bodyterminator', 'emailtestonly', 'phoneemail_separator', 'smilies_directory', 'subjectprefix', 'use_bbcode', 'use_blodotgsping', 'use_phoneemail', 'use_quicktags', 'use_weblogsping', 'weblogs_cache_file', 'use_preview', 'use_htmltrans', 'smilies_directory', 'fileupload_allowedusers', 'use_phoneemail', 'default_post_status', 'default_post_category', 'archive_mode', 'time_difference', 'links_minadminlevel', 'links_use_adminlevels', 'links_rating_type', 'links_rating_char', 'links_rating_ignore_zero', 'links_rating_single_image', 'links_rating_image0', 'links_rating_image1', 'links_rating_image2', 'links_rating_image3', 'links_rating_image4', 'links_rating_image5', 'links_rating_image6', 'links_rating_image7', 'links_rating_image8', 'links_rating_image9', 'links_recently_updated_time', 'links_recently_updated_prepend', 'links_recently_updated_append', 'weblogs_cacheminutes', 'comment_allowed_tags', 'search_engine_friendly_urls', 'default_geourl_lat', 'default_geourl_lon', 'use_default_geourl', 'weblogs_xml_url', 'new_users_can_blog', '_wpnonce', '_wp_http_referer', 'Update', 'action', 'rich_editing', 'autosave_interval', 'deactivated_plugins', 'can_compress_scripts', 'page_uris', 'update_core', 'update_plugins', 'update_themes', 'doing_cron', 'random_seed', 'rss_excerpt_length', 'secret', 'use_linksupdate', 'default_comment_status_page', 'wporg_popular_tags', 'what_to_show', 'rss_language', 'language', 'enable_xmlrpc', 'enable_app', 'embed_autourls', 'default_post_edit_rows', 'gzipcompression', 'advanced_edit');
    foreach ($unusedoptions as $option) {
        delete_option($option);
    }
    // Delete obsolete magpie stuff.
    $wpdb->query("DELETE FROM {$wpdb->options} WHERE option_name REGEXP '^rss_[0-9a-f]{32}(_ts)?\$'");
    // Clear expired transients.
    delete_expired_transients(true);
}

WordPress Version: 5.8

/**
 * Create WordPress options and set the default values.
 *
 * @since 1.5.0
 * @since 5.1.0 The $options parameter has been added.
 *
 * @global wpdb $wpdb                  WordPress database abstraction object.
 * @global int  $wp_db_version         WordPress database version.
 * @global int  $wp_current_db_version The old (current) database version.
 *
 * @param array $options Optional. Custom option $key => $value pairs to use. Default empty array.
 */
function populate_options(array $options = array())
{
    global $wpdb, $wp_db_version, $wp_current_db_version;
    $guessurl = wp_guess_url();
    /**
     * Fires before creating WordPress options and populating their default values.
     *
     * @since 2.6.0
     */
    do_action('populate_options');
    // If WP_DEFAULT_THEME doesn't exist, fall back to the latest core default theme.
    $stylesheet = WP_DEFAULT_THEME;
    $template = WP_DEFAULT_THEME;
    $theme = wp_get_theme(WP_DEFAULT_THEME);
    if (!$theme->exists()) {
        $theme = WP_Theme::get_core_default_theme();
    }
    // If we can't find a core default theme, WP_DEFAULT_THEME is the best we can do.
    if ($theme) {
        $stylesheet = $theme->get_stylesheet();
        $template = $theme->get_template();
    }
    $timezone_string = '';
    $gmt_offset = 0;
    /*
     * translators: default GMT offset or timezone string. Must be either a valid offset (-12 to 14)
     * or a valid timezone string (America/New_York). See https://www.php.net/manual/en/timezones.php
     * for all timezone strings supported by PHP.
     */
    $offset_or_tz = _x('0', 'default GMT offset or timezone string');
    // phpcs:ignore WordPress.WP.I18n.NoEmptyStrings
    if (is_numeric($offset_or_tz)) {
        $gmt_offset = $offset_or_tz;
    } elseif ($offset_or_tz && in_array($offset_or_tz, timezone_identifiers_list(), true)) {
        $timezone_string = $offset_or_tz;
    }
    $defaults = array(
        'siteurl' => $guessurl,
        'home' => $guessurl,
        'blogname' => __('My Site'),
        /* translators: Site tagline. */
        'blogdescription' => __('Just another WordPress site'),
        'users_can_register' => 0,
        'admin_email' => '[email protected]',
        /* translators: Default start of the week. 0 = Sunday, 1 = Monday. */
        'start_of_week' => _x('1', 'start of week'),
        'use_balanceTags' => 0,
        'use_smilies' => 1,
        'require_name_email' => 1,
        'comments_notify' => 1,
        'posts_per_rss' => 10,
        'rss_use_excerpt' => 0,
        'mailserver_url' => 'mail.example.com',
        'mailserver_login' => '[email protected]',
        'mailserver_pass' => 'password',
        'mailserver_port' => 110,
        'default_category' => 1,
        'default_comment_status' => 'open',
        'default_ping_status' => 'open',
        'default_pingback_flag' => 1,
        'posts_per_page' => 10,
        /* translators: Default date format, see https://www.php.net/manual/datetime.format.php */
        'date_format' => __('F j, Y'),
        /* translators: Default time format, see https://www.php.net/manual/datetime.format.php */
        'time_format' => __('g:i a'),
        /* translators: Links last updated date format, see https://www.php.net/manual/datetime.format.php */
        'links_updated_date_format' => __('F j, Y g:i a'),
        'comment_moderation' => 0,
        'moderation_notify' => 1,
        'permalink_structure' => '',
        'rewrite_rules' => '',
        'hack_file' => 0,
        'blog_charset' => 'UTF-8',
        'moderation_keys' => '',
        'active_plugins' => array(),
        'category_base' => '',
        'ping_sites' => 'http://rpc.pingomatic.com/',
        'comment_max_links' => 2,
        'gmt_offset' => $gmt_offset,
        // 1.5.0
        'default_email_category' => 1,
        'recently_edited' => '',
        'template' => $template,
        'stylesheet' => $stylesheet,
        'comment_registration' => 0,
        'html_type' => 'text/html',
        // 1.5.1
        'use_trackback' => 0,
        // 2.0.0
        'default_role' => 'subscriber',
        'db_version' => $wp_db_version,
        // 2.0.1
        'uploads_use_yearmonth_folders' => 1,
        'upload_path' => '',
        // 2.1.0
        'blog_public' => '1',
        'default_link_category' => 2,
        'show_on_front' => 'posts',
        // 2.2.0
        'tag_base' => '',
        // 2.5.0
        'show_avatars' => '1',
        'avatar_rating' => 'G',
        'upload_url_path' => '',
        'thumbnail_size_w' => 150,
        'thumbnail_size_h' => 150,
        'thumbnail_crop' => 1,
        'medium_size_w' => 300,
        'medium_size_h' => 300,
        // 2.6.0
        'avatar_default' => 'mystery',
        // 2.7.0
        'large_size_w' => 1024,
        'large_size_h' => 1024,
        'image_default_link_type' => 'none',
        'image_default_size' => '',
        'image_default_align' => '',
        'close_comments_for_old_posts' => 0,
        'close_comments_days_old' => 14,
        'thread_comments' => 1,
        'thread_comments_depth' => 5,
        'page_comments' => 0,
        'comments_per_page' => 50,
        'default_comments_page' => 'newest',
        'comment_order' => 'asc',
        'sticky_posts' => array(),
        'widget_categories' => array(),
        'widget_text' => array(),
        'widget_rss' => array(),
        'uninstall_plugins' => array(),
        // 2.8.0
        'timezone_string' => $timezone_string,
        // 3.0.0
        'page_for_posts' => 0,
        'page_on_front' => 0,
        // 3.1.0
        'default_post_format' => 0,
        // 3.5.0
        'link_manager_enabled' => 0,
        // 4.3.0
        'finished_splitting_shared_terms' => 1,
        'site_icon' => 0,
        // 4.4.0
        'medium_large_size_w' => 768,
        'medium_large_size_h' => 0,
        // 4.9.6
        'wp_page_for_privacy_policy' => 0,
        // 4.9.8
        'show_comments_cookies_opt_in' => 1,
        // 5.3.0
        'admin_email_lifespan' => time() + 6 * MONTH_IN_SECONDS,
        // 5.5.0
        'disallowed_keys' => '',
        'comment_previously_approved' => 1,
        'auto_plugin_theme_update_emails' => array(),
        // 5.6.0
        'auto_update_core_dev' => 'enabled',
        'auto_update_core_minor' => 'enabled',
        // Default to enabled for new installs.
        // See https://core.trac.wordpress.org/ticket/51742.
        'auto_update_core_major' => 'enabled',
        // 5.8.0
        'wp_force_deactivated_plugins' => array(),
    );
    // 3.3.0
    if (!is_multisite()) {
        $defaults['initial_db_version'] = (!empty($wp_current_db_version) && $wp_current_db_version < $wp_db_version) ? $wp_current_db_version : $wp_db_version;
    }
    // 3.0.0 multisite.
    if (is_multisite()) {
        /* translators: %s: Network title. */
        $defaults['blogdescription'] = sprintf(__('Just another %s site'), get_network()->site_name);
        $defaults['permalink_structure'] = '/%year%/%monthnum%/%day%/%postname%/';
    }
    $options = wp_parse_args($options, $defaults);
    // Set autoload to no for these options.
    $fat_options = array('moderation_keys', 'recently_edited', 'disallowed_keys', 'uninstall_plugins', 'auto_plugin_theme_update_emails');
    $keys = "'" . implode("', '", array_keys($options)) . "'";
    $existing_options = $wpdb->get_col("SELECT option_name FROM {$wpdb->options} WHERE option_name in ( {$keys} )");
    // phpcs:ignore WordPress.DB.PreparedSQL.NotPrepared
    $insert = '';
    foreach ($options as $option => $value) {
        if (in_array($option, $existing_options, true)) {
            continue;
        }
        if (in_array($option, $fat_options, true)) {
            $autoload = 'no';
        } else {
            $autoload = 'yes';
        }
        if (is_array($value)) {
            $value = serialize($value);
        }
        if (!empty($insert)) {
            $insert .= ', ';
        }
        $insert .= $wpdb->prepare('(%s, %s, %s)', $option, $value, $autoload);
    }
    if (!empty($insert)) {
        $wpdb->query("INSERT INTO {$wpdb->options} (option_name, option_value, autoload) VALUES " . $insert);
        // phpcs:ignore WordPress.DB.PreparedSQL.NotPrepared
    }
    // In case it is set, but blank, update "home".
    if (!__get_option('home')) {
        update_option('home', $guessurl);
    }
    // Delete unused options.
    $unusedoptions = array('blodotgsping_url', 'bodyterminator', 'emailtestonly', 'phoneemail_separator', 'smilies_directory', 'subjectprefix', 'use_bbcode', 'use_blodotgsping', 'use_phoneemail', 'use_quicktags', 'use_weblogsping', 'weblogs_cache_file', 'use_preview', 'use_htmltrans', 'smilies_directory', 'fileupload_allowedusers', 'use_phoneemail', 'default_post_status', 'default_post_category', 'archive_mode', 'time_difference', 'links_minadminlevel', 'links_use_adminlevels', 'links_rating_type', 'links_rating_char', 'links_rating_ignore_zero', 'links_rating_single_image', 'links_rating_image0', 'links_rating_image1', 'links_rating_image2', 'links_rating_image3', 'links_rating_image4', 'links_rating_image5', 'links_rating_image6', 'links_rating_image7', 'links_rating_image8', 'links_rating_image9', 'links_recently_updated_time', 'links_recently_updated_prepend', 'links_recently_updated_append', 'weblogs_cacheminutes', 'comment_allowed_tags', 'search_engine_friendly_urls', 'default_geourl_lat', 'default_geourl_lon', 'use_default_geourl', 'weblogs_xml_url', 'new_users_can_blog', '_wpnonce', '_wp_http_referer', 'Update', 'action', 'rich_editing', 'autosave_interval', 'deactivated_plugins', 'can_compress_scripts', 'page_uris', 'update_core', 'update_plugins', 'update_themes', 'doing_cron', 'random_seed', 'rss_excerpt_length', 'secret', 'use_linksupdate', 'default_comment_status_page', 'wporg_popular_tags', 'what_to_show', 'rss_language', 'language', 'enable_xmlrpc', 'enable_app', 'embed_autourls', 'default_post_edit_rows', 'gzipcompression', 'advanced_edit');
    foreach ($unusedoptions as $option) {
        delete_option($option);
    }
    // Delete obsolete magpie stuff.
    $wpdb->query("DELETE FROM {$wpdb->options} WHERE option_name REGEXP '^rss_[0-9a-f]{32}(_ts)?\$'");
    // Clear expired transients.
    delete_expired_transients(true);
}

WordPress Version: 7.2

/**
 * Create WordPress options and set the default values.
 *
 * @since 1.5.0
 * @since 5.1.0 The $options parameter has been added.
 *
 * @global wpdb $wpdb                  WordPress database abstraction object.
 * @global int  $wp_db_version         WordPress database version.
 * @global int  $wp_current_db_version The old (current) database version.
 *
 * @param array $options Optional. Custom option $key => $value pairs to use. Default empty array.
 */
function populate_options(array $options = array())
{
    global $wpdb, $wp_db_version, $wp_current_db_version;
    $guessurl = wp_guess_url();
    /**
     * Fires before creating WordPress options and populating their default values.
     *
     * @since 2.6.0
     */
    do_action('populate_options');
    // If WP_DEFAULT_THEME doesn't exist, fall back to the latest core default theme.
    $stylesheet = WP_DEFAULT_THEME;
    $template = WP_DEFAULT_THEME;
    $theme = wp_get_theme(WP_DEFAULT_THEME);
    if (!$theme->exists()) {
        $theme = WP_Theme::get_core_default_theme();
    }
    // If we can't find a core default theme, WP_DEFAULT_THEME is the best we can do.
    if ($theme) {
        $stylesheet = $theme->get_stylesheet();
        $template = $theme->get_template();
    }
    $timezone_string = '';
    $gmt_offset = 0;
    /*
     * translators: default GMT offset or timezone string. Must be either a valid offset (-12 to 14)
     * or a valid timezone string (America/New_York). See https://www.php.net/manual/en/timezones.php
     * for all timezone strings supported by PHP.
     */
    $offset_or_tz = _x('0', 'default GMT offset or timezone string');
    // phpcs:ignore WordPress.WP.I18n.NoEmptyStrings
    if (is_numeric($offset_or_tz)) {
        $gmt_offset = $offset_or_tz;
    } elseif ($offset_or_tz && in_array($offset_or_tz, timezone_identifiers_list(), true)) {
        $timezone_string = $offset_or_tz;
    }
    $defaults = array(
        'siteurl' => $guessurl,
        'home' => $guessurl,
        'blogname' => __('My Site'),
        /* translators: Site tagline. */
        'blogdescription' => __('Just another WordPress site'),
        'users_can_register' => 0,
        'admin_email' => '[email protected]',
        /* translators: Default start of the week. 0 = Sunday, 1 = Monday. */
        'start_of_week' => _x('1', 'start of week'),
        'use_balanceTags' => 0,
        'use_smilies' => 1,
        'require_name_email' => 1,
        'comments_notify' => 1,
        'posts_per_rss' => 10,
        'rss_use_excerpt' => 0,
        'mailserver_url' => 'mail.example.com',
        'mailserver_login' => '[email protected]',
        'mailserver_pass' => 'password',
        'mailserver_port' => 110,
        'default_category' => 1,
        'default_comment_status' => 'open',
        'default_ping_status' => 'open',
        'default_pingback_flag' => 1,
        'posts_per_page' => 10,
        /* translators: Default date format, see https://www.php.net/manual/datetime.format.php */
        'date_format' => __('F j, Y'),
        /* translators: Default time format, see https://www.php.net/manual/datetime.format.php */
        'time_format' => __('g:i a'),
        /* translators: Links last updated date format, see https://www.php.net/manual/datetime.format.php */
        'links_updated_date_format' => __('F j, Y g:i a'),
        'comment_moderation' => 0,
        'moderation_notify' => 1,
        'permalink_structure' => '',
        'rewrite_rules' => '',
        'hack_file' => 0,
        'blog_charset' => 'UTF-8',
        'moderation_keys' => '',
        'active_plugins' => array(),
        'category_base' => '',
        'ping_sites' => 'http://rpc.pingomatic.com/',
        'comment_max_links' => 2,
        'gmt_offset' => $gmt_offset,
        // 1.5.0
        'default_email_category' => 1,
        'recently_edited' => '',
        'template' => $template,
        'stylesheet' => $stylesheet,
        'comment_registration' => 0,
        'html_type' => 'text/html',
        // 1.5.1
        'use_trackback' => 0,
        // 2.0.0
        'default_role' => 'subscriber',
        'db_version' => $wp_db_version,
        // 2.0.1
        'uploads_use_yearmonth_folders' => 1,
        'upload_path' => '',
        // 2.1.0
        'blog_public' => '1',
        'default_link_category' => 2,
        'show_on_front' => 'posts',
        // 2.2.0
        'tag_base' => '',
        // 2.5.0
        'show_avatars' => '1',
        'avatar_rating' => 'G',
        'upload_url_path' => '',
        'thumbnail_size_w' => 150,
        'thumbnail_size_h' => 150,
        'thumbnail_crop' => 1,
        'medium_size_w' => 300,
        'medium_size_h' => 300,
        // 2.6.0
        'avatar_default' => 'mystery',
        // 2.7.0
        'large_size_w' => 1024,
        'large_size_h' => 1024,
        'image_default_link_type' => 'none',
        'image_default_size' => '',
        'image_default_align' => '',
        'close_comments_for_old_posts' => 0,
        'close_comments_days_old' => 14,
        'thread_comments' => 1,
        'thread_comments_depth' => 5,
        'page_comments' => 0,
        'comments_per_page' => 50,
        'default_comments_page' => 'newest',
        'comment_order' => 'asc',
        'sticky_posts' => array(),
        'widget_categories' => array(),
        'widget_text' => array(),
        'widget_rss' => array(),
        'uninstall_plugins' => array(),
        // 2.8.0
        'timezone_string' => $timezone_string,
        // 3.0.0
        'page_for_posts' => 0,
        'page_on_front' => 0,
        // 3.1.0
        'default_post_format' => 0,
        // 3.5.0
        'link_manager_enabled' => 0,
        // 4.3.0
        'finished_splitting_shared_terms' => 1,
        'site_icon' => 0,
        // 4.4.0
        'medium_large_size_w' => 768,
        'medium_large_size_h' => 0,
        // 4.9.6
        'wp_page_for_privacy_policy' => 0,
        // 4.9.8
        'show_comments_cookies_opt_in' => 1,
        // 5.3.0
        'admin_email_lifespan' => time() + 6 * MONTH_IN_SECONDS,
        // 5.5.0
        'disallowed_keys' => '',
        'comment_previously_approved' => 1,
        'auto_plugin_theme_update_emails' => array(),
        // 5.6.0
        'auto_update_core_dev' => 'enabled',
        'auto_update_core_minor' => 'enabled',
        // Default to enabled for new installs.
        // See https://core.trac.wordpress.org/ticket/51742.
        'auto_update_core_major' => 'enabled',
    );
    // 3.3.0
    if (!is_multisite()) {
        $defaults['initial_db_version'] = (!empty($wp_current_db_version) && $wp_current_db_version < $wp_db_version) ? $wp_current_db_version : $wp_db_version;
    }
    // 3.0.0 multisite.
    if (is_multisite()) {
        /* translators: %s: Network title. */
        $defaults['blogdescription'] = sprintf(__('Just another %s site'), get_network()->site_name);
        $defaults['permalink_structure'] = '/%year%/%monthnum%/%day%/%postname%/';
    }
    $options = wp_parse_args($options, $defaults);
    // Set autoload to no for these options.
    $fat_options = array('moderation_keys', 'recently_edited', 'disallowed_keys', 'uninstall_plugins', 'auto_plugin_theme_update_emails');
    $keys = "'" . implode("', '", array_keys($options)) . "'";
    $existing_options = $wpdb->get_col("SELECT option_name FROM {$wpdb->options} WHERE option_name in ( {$keys} )");
    // phpcs:ignore WordPress.DB.PreparedSQL.NotPrepared
    $insert = '';
    foreach ($options as $option => $value) {
        if (in_array($option, $existing_options, true)) {
            continue;
        }
        if (in_array($option, $fat_options, true)) {
            $autoload = 'no';
        } else {
            $autoload = 'yes';
        }
        if (is_array($value)) {
            $value = serialize($value);
        }
        if (!empty($insert)) {
            $insert .= ', ';
        }
        $insert .= $wpdb->prepare('(%s, %s, %s)', $option, $value, $autoload);
    }
    if (!empty($insert)) {
        $wpdb->query("INSERT INTO {$wpdb->options} (option_name, option_value, autoload) VALUES " . $insert);
        // phpcs:ignore WordPress.DB.PreparedSQL.NotPrepared
    }
    // In case it is set, but blank, update "home".
    if (!__get_option('home')) {
        update_option('home', $guessurl);
    }
    // Delete unused options.
    $unusedoptions = array('blodotgsping_url', 'bodyterminator', 'emailtestonly', 'phoneemail_separator', 'smilies_directory', 'subjectprefix', 'use_bbcode', 'use_blodotgsping', 'use_phoneemail', 'use_quicktags', 'use_weblogsping', 'weblogs_cache_file', 'use_preview', 'use_htmltrans', 'smilies_directory', 'fileupload_allowedusers', 'use_phoneemail', 'default_post_status', 'default_post_category', 'archive_mode', 'time_difference', 'links_minadminlevel', 'links_use_adminlevels', 'links_rating_type', 'links_rating_char', 'links_rating_ignore_zero', 'links_rating_single_image', 'links_rating_image0', 'links_rating_image1', 'links_rating_image2', 'links_rating_image3', 'links_rating_image4', 'links_rating_image5', 'links_rating_image6', 'links_rating_image7', 'links_rating_image8', 'links_rating_image9', 'links_recently_updated_time', 'links_recently_updated_prepend', 'links_recently_updated_append', 'weblogs_cacheminutes', 'comment_allowed_tags', 'search_engine_friendly_urls', 'default_geourl_lat', 'default_geourl_lon', 'use_default_geourl', 'weblogs_xml_url', 'new_users_can_blog', '_wpnonce', '_wp_http_referer', 'Update', 'action', 'rich_editing', 'autosave_interval', 'deactivated_plugins', 'can_compress_scripts', 'page_uris', 'update_core', 'update_plugins', 'update_themes', 'doing_cron', 'random_seed', 'rss_excerpt_length', 'secret', 'use_linksupdate', 'default_comment_status_page', 'wporg_popular_tags', 'what_to_show', 'rss_language', 'language', 'enable_xmlrpc', 'enable_app', 'embed_autourls', 'default_post_edit_rows', 'gzipcompression', 'advanced_edit');
    foreach ($unusedoptions as $option) {
        delete_option($option);
    }
    // Delete obsolete magpie stuff.
    $wpdb->query("DELETE FROM {$wpdb->options} WHERE option_name REGEXP '^rss_[0-9a-f]{32}(_ts)?\$'");
    // Clear expired transients.
    delete_expired_transients(true);
}

WordPress Version: .11

/**
 * Create WordPress options and set the default values.
 *
 * @since 1.5.0
 * @since 5.1.0 The $options parameter has been added.
 *
 * @global wpdb $wpdb                  WordPress database abstraction object.
 * @global int  $wp_db_version         WordPress database version.
 * @global int  $wp_current_db_version The old (current) database version.
 *
 * @param array $options Optional. Custom option $key => $value pairs to use. Default empty array.
 */
function populate_options(array $options = array())
{
    global $wpdb, $wp_db_version, $wp_current_db_version;
    $guessurl = wp_guess_url();
    /**
     * Fires before creating WordPress options and populating their default values.
     *
     * @since 2.6.0
     */
    do_action('populate_options');
    // If WP_DEFAULT_THEME doesn't exist, fall back to the latest core default theme.
    $stylesheet = WP_DEFAULT_THEME;
    $template = WP_DEFAULT_THEME;
    $theme = wp_get_theme(WP_DEFAULT_THEME);
    if (!$theme->exists()) {
        $theme = WP_Theme::get_core_default_theme();
    }
    // If we can't find a core default theme, WP_DEFAULT_THEME is the best we can do.
    if ($theme) {
        $stylesheet = $theme->get_stylesheet();
        $template = $theme->get_template();
    }
    $timezone_string = '';
    $gmt_offset = 0;
    /*
     * translators: default GMT offset or timezone string. Must be either a valid offset (-12 to 14)
     * or a valid timezone string (America/New_York). See https://www.php.net/manual/en/timezones.php
     * for all timezone strings supported by PHP.
     */
    $offset_or_tz = _x('0', 'default GMT offset or timezone string');
    // phpcs:ignore WordPress.WP.I18n.NoEmptyStrings
    if (is_numeric($offset_or_tz)) {
        $gmt_offset = $offset_or_tz;
    } elseif ($offset_or_tz && in_array($offset_or_tz, timezone_identifiers_list(), true)) {
        $timezone_string = $offset_or_tz;
    }
    $defaults = array(
        'siteurl' => $guessurl,
        'home' => $guessurl,
        'blogname' => __('My Site'),
        /* translators: Site tagline. */
        'blogdescription' => __('Just another WordPress site'),
        'users_can_register' => 0,
        'admin_email' => '[email protected]',
        /* translators: Default start of the week. 0 = Sunday, 1 = Monday. */
        'start_of_week' => _x('1', 'start of week'),
        'use_balanceTags' => 0,
        'use_smilies' => 1,
        'require_name_email' => 1,
        'comments_notify' => 1,
        'posts_per_rss' => 10,
        'rss_use_excerpt' => 0,
        'mailserver_url' => 'mail.example.com',
        'mailserver_login' => '[email protected]',
        'mailserver_pass' => 'password',
        'mailserver_port' => 110,
        'default_category' => 1,
        'default_comment_status' => 'open',
        'default_ping_status' => 'open',
        'default_pingback_flag' => 1,
        'posts_per_page' => 10,
        /* translators: Default date format, see https://www.php.net/manual/datetime.format.php */
        'date_format' => __('F j, Y'),
        /* translators: Default time format, see https://www.php.net/manual/datetime.format.php */
        'time_format' => __('g:i a'),
        /* translators: Links last updated date format, see https://www.php.net/manual/datetime.format.php */
        'links_updated_date_format' => __('F j, Y g:i a'),
        'comment_moderation' => 0,
        'moderation_notify' => 1,
        'permalink_structure' => '',
        'rewrite_rules' => '',
        'hack_file' => 0,
        'blog_charset' => 'UTF-8',
        'moderation_keys' => '',
        'active_plugins' => array(),
        'category_base' => '',
        'ping_sites' => 'http://rpc.pingomatic.com/',
        'comment_max_links' => 2,
        'gmt_offset' => $gmt_offset,
        // 1.5.0
        'default_email_category' => 1,
        'recently_edited' => '',
        'template' => $template,
        'stylesheet' => $stylesheet,
        'comment_registration' => 0,
        'html_type' => 'text/html',
        // 1.5.1
        'use_trackback' => 0,
        // 2.0.0
        'default_role' => 'subscriber',
        'db_version' => $wp_db_version,
        // 2.0.1
        'uploads_use_yearmonth_folders' => 1,
        'upload_path' => '',
        // 2.1.0
        'blog_public' => '1',
        'default_link_category' => 2,
        'show_on_front' => 'posts',
        // 2.2.0
        'tag_base' => '',
        // 2.5.0
        'show_avatars' => '1',
        'avatar_rating' => 'G',
        'upload_url_path' => '',
        'thumbnail_size_w' => 150,
        'thumbnail_size_h' => 150,
        'thumbnail_crop' => 1,
        'medium_size_w' => 300,
        'medium_size_h' => 300,
        // 2.6.0
        'avatar_default' => 'mystery',
        // 2.7.0
        'large_size_w' => 1024,
        'large_size_h' => 1024,
        'image_default_link_type' => 'none',
        'image_default_size' => '',
        'image_default_align' => '',
        'close_comments_for_old_posts' => 0,
        'close_comments_days_old' => 14,
        'thread_comments' => 1,
        'thread_comments_depth' => 5,
        'page_comments' => 0,
        'comments_per_page' => 50,
        'default_comments_page' => 'newest',
        'comment_order' => 'asc',
        'sticky_posts' => array(),
        'widget_categories' => array(),
        'widget_text' => array(),
        'widget_rss' => array(),
        'uninstall_plugins' => array(),
        // 2.8.0
        'timezone_string' => $timezone_string,
        // 3.0.0
        'page_for_posts' => 0,
        'page_on_front' => 0,
        // 3.1.0
        'default_post_format' => 0,
        // 3.5.0
        'link_manager_enabled' => 0,
        // 4.3.0
        'finished_splitting_shared_terms' => 1,
        'site_icon' => 0,
        // 4.4.0
        'medium_large_size_w' => 768,
        'medium_large_size_h' => 0,
        // 4.9.6
        'wp_page_for_privacy_policy' => 0,
        // 4.9.8
        'show_comments_cookies_opt_in' => 1,
        // 5.3.0
        'admin_email_lifespan' => time() + 6 * MONTH_IN_SECONDS,
        // 5.5.0
        'disallowed_keys' => '',
        'comment_previously_approved' => 1,
        'auto_plugin_theme_update_emails' => array(),
        // 5.6.0
        'auto_update_core_dev' => 'enabled',
        'auto_update_core_minor' => 'enabled',
        // Default to enabled for new installs.
        // See https://core.trac.wordpress.org/ticket/51742.
        'auto_update_core_major' => 'enabled',
    );
    // 3.3.0
    if (!is_multisite()) {
        $defaults['initial_db_version'] = (!empty($wp_current_db_version) && $wp_current_db_version < $wp_db_version) ? $wp_current_db_version : $wp_db_version;
    }
    // 3.0.0 multisite.
    if (is_multisite()) {
        /* translators: %s: Network title. */
        $defaults['blogdescription'] = sprintf(__('Just another %s site'), get_network()->site_name);
        $defaults['permalink_structure'] = '/%year%/%monthnum%/%day%/%postname%/';
    }
    $options = wp_parse_args($options, $defaults);
    // Set autoload to no for these options.
    $fat_options = array('moderation_keys', 'recently_edited', 'disallowed_keys', 'uninstall_plugins', 'auto_plugin_theme_update_emails');
    $keys = "'" . implode("', '", array_keys($options)) . "'";
    $existing_options = $wpdb->get_col("SELECT option_name FROM {$wpdb->options} WHERE option_name in ( {$keys} )");
    // phpcs:ignore WordPress.DB.PreparedSQL.NotPrepared
    $insert = '';
    foreach ($options as $option => $value) {
        if (in_array($option, $existing_options, true)) {
            continue;
        }
        if (in_array($option, $fat_options, true)) {
            $autoload = 'no';
        } else {
            $autoload = 'yes';
        }
        if (!empty($insert)) {
            $insert .= ', ';
        }
        $value = maybe_serialize(sanitize_option($option, $value));
        $insert .= $wpdb->prepare('(%s, %s, %s)', $option, $value, $autoload);
    }
    if (!empty($insert)) {
        $wpdb->query("INSERT INTO {$wpdb->options} (option_name, option_value, autoload) VALUES " . $insert);
        // phpcs:ignore WordPress.DB.PreparedSQL.NotPrepared
    }
    // In case it is set, but blank, update "home".
    if (!__get_option('home')) {
        update_option('home', $guessurl);
    }
    // Delete unused options.
    $unusedoptions = array('blodotgsping_url', 'bodyterminator', 'emailtestonly', 'phoneemail_separator', 'smilies_directory', 'subjectprefix', 'use_bbcode', 'use_blodotgsping', 'use_phoneemail', 'use_quicktags', 'use_weblogsping', 'weblogs_cache_file', 'use_preview', 'use_htmltrans', 'smilies_directory', 'fileupload_allowedusers', 'use_phoneemail', 'default_post_status', 'default_post_category', 'archive_mode', 'time_difference', 'links_minadminlevel', 'links_use_adminlevels', 'links_rating_type', 'links_rating_char', 'links_rating_ignore_zero', 'links_rating_single_image', 'links_rating_image0', 'links_rating_image1', 'links_rating_image2', 'links_rating_image3', 'links_rating_image4', 'links_rating_image5', 'links_rating_image6', 'links_rating_image7', 'links_rating_image8', 'links_rating_image9', 'links_recently_updated_time', 'links_recently_updated_prepend', 'links_recently_updated_append', 'weblogs_cacheminutes', 'comment_allowed_tags', 'search_engine_friendly_urls', 'default_geourl_lat', 'default_geourl_lon', 'use_default_geourl', 'weblogs_xml_url', 'new_users_can_blog', '_wpnonce', '_wp_http_referer', 'Update', 'action', 'rich_editing', 'autosave_interval', 'deactivated_plugins', 'can_compress_scripts', 'page_uris', 'update_core', 'update_plugins', 'update_themes', 'doing_cron', 'random_seed', 'rss_excerpt_length', 'secret', 'use_linksupdate', 'default_comment_status_page', 'wporg_popular_tags', 'what_to_show', 'rss_language', 'language', 'enable_xmlrpc', 'enable_app', 'embed_autourls', 'default_post_edit_rows', 'gzipcompression', 'advanced_edit');
    foreach ($unusedoptions as $option) {
        delete_option($option);
    }
    // Delete obsolete magpie stuff.
    $wpdb->query("DELETE FROM {$wpdb->options} WHERE option_name REGEXP '^rss_[0-9a-f]{32}(_ts)?\$'");
    // Clear expired transients.
    delete_expired_transients(true);
}

WordPress Version: 6.2

/**
 * Create WordPress options and set the default values.
 *
 * @since 1.5.0
 * @since 5.1.0 The $options parameter has been added.
 *
 * @global wpdb $wpdb                  WordPress database abstraction object.
 * @global int  $wp_db_version         WordPress database version.
 * @global int  $wp_current_db_version The old (current) database version.
 *
 * @param array $options Optional. Custom option $key => $value pairs to use. Default empty array.
 */
function populate_options(array $options = array())
{
    global $wpdb, $wp_db_version, $wp_current_db_version;
    $guessurl = wp_guess_url();
    /**
     * Fires before creating WordPress options and populating their default values.
     *
     * @since 2.6.0
     */
    do_action('populate_options');
    // If WP_DEFAULT_THEME doesn't exist, fall back to the latest core default theme.
    $stylesheet = WP_DEFAULT_THEME;
    $template = WP_DEFAULT_THEME;
    $theme = wp_get_theme(WP_DEFAULT_THEME);
    if (!$theme->exists()) {
        $theme = WP_Theme::get_core_default_theme();
    }
    // If we can't find a core default theme, WP_DEFAULT_THEME is the best we can do.
    if ($theme) {
        $stylesheet = $theme->get_stylesheet();
        $template = $theme->get_template();
    }
    $timezone_string = '';
    $gmt_offset = 0;
    /*
     * translators: default GMT offset or timezone string. Must be either a valid offset (-12 to 14)
     * or a valid timezone string (America/New_York). See https://www.php.net/manual/en/timezones.php
     * for all timezone strings supported by PHP.
     */
    $offset_or_tz = _x('0', 'default GMT offset or timezone string');
    // phpcs:ignore WordPress.WP.I18n.NoEmptyStrings
    if (is_numeric($offset_or_tz)) {
        $gmt_offset = $offset_or_tz;
    } elseif ($offset_or_tz && in_array($offset_or_tz, timezone_identifiers_list(), true)) {
        $timezone_string = $offset_or_tz;
    }
    $defaults = array(
        'siteurl' => $guessurl,
        'home' => $guessurl,
        'blogname' => __('My Site'),
        /* translators: Site tagline. */
        'blogdescription' => __('Just another WordPress site'),
        'users_can_register' => 0,
        'admin_email' => '[email protected]',
        /* translators: Default start of the week. 0 = Sunday, 1 = Monday. */
        'start_of_week' => _x('1', 'start of week'),
        'use_balanceTags' => 0,
        'use_smilies' => 1,
        'require_name_email' => 1,
        'comments_notify' => 1,
        'posts_per_rss' => 10,
        'rss_use_excerpt' => 0,
        'mailserver_url' => 'mail.example.com',
        'mailserver_login' => '[email protected]',
        'mailserver_pass' => 'password',
        'mailserver_port' => 110,
        'default_category' => 1,
        'default_comment_status' => 'open',
        'default_ping_status' => 'open',
        'default_pingback_flag' => 1,
        'posts_per_page' => 10,
        /* translators: Default date format, see https://www.php.net/manual/datetime.format.php */
        'date_format' => __('F j, Y'),
        /* translators: Default time format, see https://www.php.net/manual/datetime.format.php */
        'time_format' => __('g:i a'),
        /* translators: Links last updated date format, see https://www.php.net/manual/datetime.format.php */
        'links_updated_date_format' => __('F j, Y g:i a'),
        'comment_moderation' => 0,
        'moderation_notify' => 1,
        'permalink_structure' => '',
        'rewrite_rules' => '',
        'hack_file' => 0,
        'blog_charset' => 'UTF-8',
        'moderation_keys' => '',
        'active_plugins' => array(),
        'category_base' => '',
        'ping_sites' => 'http://rpc.pingomatic.com/',
        'comment_max_links' => 2,
        'gmt_offset' => $gmt_offset,
        // 1.5.0
        'default_email_category' => 1,
        'recently_edited' => '',
        'template' => $template,
        'stylesheet' => $stylesheet,
        'comment_registration' => 0,
        'html_type' => 'text/html',
        // 1.5.1
        'use_trackback' => 0,
        // 2.0.0
        'default_role' => 'subscriber',
        'db_version' => $wp_db_version,
        // 2.0.1
        'uploads_use_yearmonth_folders' => 1,
        'upload_path' => '',
        // 2.1.0
        'blog_public' => '1',
        'default_link_category' => 2,
        'show_on_front' => 'posts',
        // 2.2.0
        'tag_base' => '',
        // 2.5.0
        'show_avatars' => '1',
        'avatar_rating' => 'G',
        'upload_url_path' => '',
        'thumbnail_size_w' => 150,
        'thumbnail_size_h' => 150,
        'thumbnail_crop' => 1,
        'medium_size_w' => 300,
        'medium_size_h' => 300,
        // 2.6.0
        'avatar_default' => 'mystery',
        // 2.7.0
        'large_size_w' => 1024,
        'large_size_h' => 1024,
        'image_default_link_type' => 'none',
        'image_default_size' => '',
        'image_default_align' => '',
        'close_comments_for_old_posts' => 0,
        'close_comments_days_old' => 14,
        'thread_comments' => 1,
        'thread_comments_depth' => 5,
        'page_comments' => 0,
        'comments_per_page' => 50,
        'default_comments_page' => 'newest',
        'comment_order' => 'asc',
        'sticky_posts' => array(),
        'widget_categories' => array(),
        'widget_text' => array(),
        'widget_rss' => array(),
        'uninstall_plugins' => array(),
        // 2.8.0
        'timezone_string' => $timezone_string,
        // 3.0.0
        'page_for_posts' => 0,
        'page_on_front' => 0,
        // 3.1.0
        'default_post_format' => 0,
        // 3.5.0
        'link_manager_enabled' => 0,
        // 4.3.0
        'finished_splitting_shared_terms' => 1,
        'site_icon' => 0,
        // 4.4.0
        'medium_large_size_w' => 768,
        'medium_large_size_h' => 0,
        // 4.9.6
        'wp_page_for_privacy_policy' => 0,
        // 4.9.8
        'show_comments_cookies_opt_in' => 1,
        // 5.3.0
        'admin_email_lifespan' => time() + 6 * MONTH_IN_SECONDS,
        // 5.5.0
        'disallowed_keys' => '',
        'comment_previously_approved' => 1,
        'auto_plugin_theme_update_emails' => array(),
        // 5.6.0
        'auto_update_core_dev' => 'enabled',
        'auto_update_core_minor' => 'enabled',
        // Default to enabled for new installs.
        // See https://core.trac.wordpress.org/ticket/51742.
        'auto_update_core_major' => 'enabled',
    );
    // 3.3.0
    if (!is_multisite()) {
        $defaults['initial_db_version'] = (!empty($wp_current_db_version) && $wp_current_db_version < $wp_db_version) ? $wp_current_db_version : $wp_db_version;
    }
    // 3.0.0 multisite.
    if (is_multisite()) {
        /* translators: %s: Network title. */
        $defaults['blogdescription'] = sprintf(__('Just another %s site'), get_network()->site_name);
        $defaults['permalink_structure'] = '/%year%/%monthnum%/%day%/%postname%/';
    }
    $options = wp_parse_args($options, $defaults);
    // Set autoload to no for these options.
    $fat_options = array('moderation_keys', 'recently_edited', 'disallowed_keys', 'uninstall_plugins', 'auto_plugin_theme_update_emails');
    $keys = "'" . implode("', '", array_keys($options)) . "'";
    $existing_options = $wpdb->get_col("SELECT option_name FROM {$wpdb->options} WHERE option_name in ( {$keys} )");
    // phpcs:ignore WordPress.DB.PreparedSQL.NotPrepared
    $insert = '';
    foreach ($options as $option => $value) {
        if (in_array($option, $existing_options, true)) {
            continue;
        }
        if (in_array($option, $fat_options, true)) {
            $autoload = 'no';
        } else {
            $autoload = 'yes';
        }
        if (is_array($value)) {
            $value = serialize($value);
        }
        if (!empty($insert)) {
            $insert .= ', ';
        }
        $insert .= $wpdb->prepare('(%s, %s, %s)', $option, $value, $autoload);
    }
    if (!empty($insert)) {
        $wpdb->query("INSERT INTO {$wpdb->options} (option_name, option_value, autoload) VALUES " . $insert);
        // phpcs:ignore WordPress.DB.PreparedSQL.NotPrepared
    }
    // In case it is set, but blank, update "home".
    if (!__get_option('home')) {
        update_option('home', $guessurl);
    }
    // Delete unused options.
    $unusedoptions = array('blodotgsping_url', 'bodyterminator', 'emailtestonly', 'phoneemail_separator', 'smilies_directory', 'subjectprefix', 'use_bbcode', 'use_blodotgsping', 'use_phoneemail', 'use_quicktags', 'use_weblogsping', 'weblogs_cache_file', 'use_preview', 'use_htmltrans', 'smilies_directory', 'fileupload_allowedusers', 'use_phoneemail', 'default_post_status', 'default_post_category', 'archive_mode', 'time_difference', 'links_minadminlevel', 'links_use_adminlevels', 'links_rating_type', 'links_rating_char', 'links_rating_ignore_zero', 'links_rating_single_image', 'links_rating_image0', 'links_rating_image1', 'links_rating_image2', 'links_rating_image3', 'links_rating_image4', 'links_rating_image5', 'links_rating_image6', 'links_rating_image7', 'links_rating_image8', 'links_rating_image9', 'links_recently_updated_time', 'links_recently_updated_prepend', 'links_recently_updated_append', 'weblogs_cacheminutes', 'comment_allowed_tags', 'search_engine_friendly_urls', 'default_geourl_lat', 'default_geourl_lon', 'use_default_geourl', 'weblogs_xml_url', 'new_users_can_blog', '_wpnonce', '_wp_http_referer', 'Update', 'action', 'rich_editing', 'autosave_interval', 'deactivated_plugins', 'can_compress_scripts', 'page_uris', 'update_core', 'update_plugins', 'update_themes', 'doing_cron', 'random_seed', 'rss_excerpt_length', 'secret', 'use_linksupdate', 'default_comment_status_page', 'wporg_popular_tags', 'what_to_show', 'rss_language', 'language', 'enable_xmlrpc', 'enable_app', 'embed_autourls', 'default_post_edit_rows', 'gzipcompression', 'advanced_edit');
    foreach ($unusedoptions as $option) {
        delete_option($option);
    }
    // Delete obsolete magpie stuff.
    $wpdb->query("DELETE FROM {$wpdb->options} WHERE option_name REGEXP '^rss_[0-9a-f]{32}(_ts)?\$'");
    // Clear expired transients.
    delete_expired_transients(true);
}

WordPress Version: .13

/**
 * Create WordPress options and set the default values.
 *
 * @since 1.5.0
 * @since 5.1.0 The $options parameter has been added.
 *
 * @global wpdb $wpdb                  WordPress database abstraction object.
 * @global int  $wp_db_version         WordPress database version.
 * @global int  $wp_current_db_version The old (current) database version.
 *
 * @param array $options Optional. Custom option $key => $value pairs to use. Default empty array.
 */
function populate_options(array $options = array())
{
    global $wpdb, $wp_db_version, $wp_current_db_version;
    $guessurl = wp_guess_url();
    /**
     * Fires before creating WordPress options and populating their default values.
     *
     * @since 2.6.0
     */
    do_action('populate_options');
    // If WP_DEFAULT_THEME doesn't exist, fall back to the latest core default theme.
    $stylesheet = WP_DEFAULT_THEME;
    $template = WP_DEFAULT_THEME;
    $theme = wp_get_theme(WP_DEFAULT_THEME);
    if (!$theme->exists()) {
        $theme = WP_Theme::get_core_default_theme();
    }
    // If we can't find a core default theme, WP_DEFAULT_THEME is the best we can do.
    if ($theme) {
        $stylesheet = $theme->get_stylesheet();
        $template = $theme->get_template();
    }
    $timezone_string = '';
    $gmt_offset = 0;
    /*
     * translators: default GMT offset or timezone string. Must be either a valid offset (-12 to 14)
     * or a valid timezone string (America/New_York). See https://www.php.net/manual/en/timezones.php
     * for all timezone strings supported by PHP.
     */
    $offset_or_tz = _x('0', 'default GMT offset or timezone string');
    // phpcs:ignore WordPress.WP.I18n.NoEmptyStrings
    if (is_numeric($offset_or_tz)) {
        $gmt_offset = $offset_or_tz;
    } elseif ($offset_or_tz && in_array($offset_or_tz, timezone_identifiers_list(), true)) {
        $timezone_string = $offset_or_tz;
    }
    $defaults = array(
        'siteurl' => $guessurl,
        'home' => $guessurl,
        'blogname' => __('My Site'),
        /* translators: Site tagline. */
        'blogdescription' => __('Just another WordPress site'),
        'users_can_register' => 0,
        'admin_email' => '[email protected]',
        /* translators: Default start of the week. 0 = Sunday, 1 = Monday. */
        'start_of_week' => _x('1', 'start of week'),
        'use_balanceTags' => 0,
        'use_smilies' => 1,
        'require_name_email' => 1,
        'comments_notify' => 1,
        'posts_per_rss' => 10,
        'rss_use_excerpt' => 0,
        'mailserver_url' => 'mail.example.com',
        'mailserver_login' => '[email protected]',
        'mailserver_pass' => 'password',
        'mailserver_port' => 110,
        'default_category' => 1,
        'default_comment_status' => 'open',
        'default_ping_status' => 'open',
        'default_pingback_flag' => 1,
        'posts_per_page' => 10,
        /* translators: Default date format, see https://www.php.net/manual/datetime.format.php */
        'date_format' => __('F j, Y'),
        /* translators: Default time format, see https://www.php.net/manual/datetime.format.php */
        'time_format' => __('g:i a'),
        /* translators: Links last updated date format, see https://www.php.net/manual/datetime.format.php */
        'links_updated_date_format' => __('F j, Y g:i a'),
        'comment_moderation' => 0,
        'moderation_notify' => 1,
        'permalink_structure' => '',
        'rewrite_rules' => '',
        'hack_file' => 0,
        'blog_charset' => 'UTF-8',
        'moderation_keys' => '',
        'active_plugins' => array(),
        'category_base' => '',
        'ping_sites' => 'http://rpc.pingomatic.com/',
        'comment_max_links' => 2,
        'gmt_offset' => $gmt_offset,
        // 1.5.0
        'default_email_category' => 1,
        'recently_edited' => '',
        'template' => $template,
        'stylesheet' => $stylesheet,
        'comment_registration' => 0,
        'html_type' => 'text/html',
        // 1.5.1
        'use_trackback' => 0,
        // 2.0.0
        'default_role' => 'subscriber',
        'db_version' => $wp_db_version,
        // 2.0.1
        'uploads_use_yearmonth_folders' => 1,
        'upload_path' => '',
        // 2.1.0
        'blog_public' => '1',
        'default_link_category' => 2,
        'show_on_front' => 'posts',
        // 2.2.0
        'tag_base' => '',
        // 2.5.0
        'show_avatars' => '1',
        'avatar_rating' => 'G',
        'upload_url_path' => '',
        'thumbnail_size_w' => 150,
        'thumbnail_size_h' => 150,
        'thumbnail_crop' => 1,
        'medium_size_w' => 300,
        'medium_size_h' => 300,
        // 2.6.0
        'avatar_default' => 'mystery',
        // 2.7.0
        'large_size_w' => 1024,
        'large_size_h' => 1024,
        'image_default_link_type' => 'none',
        'image_default_size' => '',
        'image_default_align' => '',
        'close_comments_for_old_posts' => 0,
        'close_comments_days_old' => 14,
        'thread_comments' => 1,
        'thread_comments_depth' => 5,
        'page_comments' => 0,
        'comments_per_page' => 50,
        'default_comments_page' => 'newest',
        'comment_order' => 'asc',
        'sticky_posts' => array(),
        'widget_categories' => array(),
        'widget_text' => array(),
        'widget_rss' => array(),
        'uninstall_plugins' => array(),
        // 2.8.0
        'timezone_string' => $timezone_string,
        // 3.0.0
        'page_for_posts' => 0,
        'page_on_front' => 0,
        // 3.1.0
        'default_post_format' => 0,
        // 3.5.0
        'link_manager_enabled' => 0,
        // 4.3.0
        'finished_splitting_shared_terms' => 1,
        'site_icon' => 0,
        // 4.4.0
        'medium_large_size_w' => 768,
        'medium_large_size_h' => 0,
        // 4.9.6
        'wp_page_for_privacy_policy' => 0,
        // 4.9.8
        'show_comments_cookies_opt_in' => 1,
        // 5.3.0
        'admin_email_lifespan' => time() + 6 * MONTH_IN_SECONDS,
        // 5.5.0
        'disallowed_keys' => '',
        'comment_previously_approved' => 1,
        'auto_plugin_theme_update_emails' => array(),
        // 5.6.0
        'auto_update_core_dev' => 'enabled',
        'auto_update_core_minor' => 'enabled',
        // Default to enabled for new installs.
        // See https://core.trac.wordpress.org/ticket/51742.
        'auto_update_core_major' => 'enabled',
    );
    // 3.3.0
    if (!is_multisite()) {
        $defaults['initial_db_version'] = (!empty($wp_current_db_version) && $wp_current_db_version < $wp_db_version) ? $wp_current_db_version : $wp_db_version;
    }
    // 3.0.0 multisite.
    if (is_multisite()) {
        /* translators: %s: Network title. */
        $defaults['blogdescription'] = sprintf(__('Just another %s site'), get_network()->site_name);
        $defaults['permalink_structure'] = '/%year%/%monthnum%/%day%/%postname%/';
    }
    $options = wp_parse_args($options, $defaults);
    // Set autoload to no for these options.
    $fat_options = array('moderation_keys', 'recently_edited', 'disallowed_keys', 'uninstall_plugins', 'auto_plugin_theme_update_emails');
    $keys = "'" . implode("', '", array_keys($options)) . "'";
    $existing_options = $wpdb->get_col("SELECT option_name FROM {$wpdb->options} WHERE option_name in ( {$keys} )");
    // phpcs:ignore WordPress.DB.PreparedSQL.NotPrepared
    $insert = '';
    foreach ($options as $option => $value) {
        if (in_array($option, $existing_options, true)) {
            continue;
        }
        if (in_array($option, $fat_options, true)) {
            $autoload = 'no';
        } else {
            $autoload = 'yes';
        }
        if (!empty($insert)) {
            $insert .= ', ';
        }
        $value = maybe_serialize(sanitize_option($option, $value));
        $insert .= $wpdb->prepare('(%s, %s, %s)', $option, $value, $autoload);
    }
    if (!empty($insert)) {
        $wpdb->query("INSERT INTO {$wpdb->options} (option_name, option_value, autoload) VALUES " . $insert);
        // phpcs:ignore WordPress.DB.PreparedSQL.NotPrepared
    }
    // In case it is set, but blank, update "home".
    if (!__get_option('home')) {
        update_option('home', $guessurl);
    }
    // Delete unused options.
    $unusedoptions = array('blodotgsping_url', 'bodyterminator', 'emailtestonly', 'phoneemail_separator', 'smilies_directory', 'subjectprefix', 'use_bbcode', 'use_blodotgsping', 'use_phoneemail', 'use_quicktags', 'use_weblogsping', 'weblogs_cache_file', 'use_preview', 'use_htmltrans', 'smilies_directory', 'fileupload_allowedusers', 'use_phoneemail', 'default_post_status', 'default_post_category', 'archive_mode', 'time_difference', 'links_minadminlevel', 'links_use_adminlevels', 'links_rating_type', 'links_rating_char', 'links_rating_ignore_zero', 'links_rating_single_image', 'links_rating_image0', 'links_rating_image1', 'links_rating_image2', 'links_rating_image3', 'links_rating_image4', 'links_rating_image5', 'links_rating_image6', 'links_rating_image7', 'links_rating_image8', 'links_rating_image9', 'links_recently_updated_time', 'links_recently_updated_prepend', 'links_recently_updated_append', 'weblogs_cacheminutes', 'comment_allowed_tags', 'search_engine_friendly_urls', 'default_geourl_lat', 'default_geourl_lon', 'use_default_geourl', 'weblogs_xml_url', 'new_users_can_blog', '_wpnonce', '_wp_http_referer', 'Update', 'action', 'rich_editing', 'autosave_interval', 'deactivated_plugins', 'can_compress_scripts', 'page_uris', 'update_core', 'update_plugins', 'update_themes', 'doing_cron', 'random_seed', 'rss_excerpt_length', 'secret', 'use_linksupdate', 'default_comment_status_page', 'wporg_popular_tags', 'what_to_show', 'rss_language', 'language', 'enable_xmlrpc', 'enable_app', 'embed_autourls', 'default_post_edit_rows', 'gzipcompression', 'advanced_edit');
    foreach ($unusedoptions as $option) {
        delete_option($option);
    }
    // Delete obsolete magpie stuff.
    $wpdb->query("DELETE FROM {$wpdb->options} WHERE option_name REGEXP '^rss_[0-9a-f]{32}(_ts)?\$'");
    // Clear expired transients.
    delete_expired_transients(true);
}

WordPress Version: 5.6

/**
 * Create WordPress options and set the default values.
 *
 * @since 1.5.0
 * @since 5.1.0 The $options parameter has been added.
 *
 * @global wpdb $wpdb                  WordPress database abstraction object.
 * @global int  $wp_db_version         WordPress database version.
 * @global int  $wp_current_db_version The old (current) database version.
 *
 * @param array $options Optional. Custom option $key => $value pairs to use. Default empty array.
 */
function populate_options(array $options = array())
{
    global $wpdb, $wp_db_version, $wp_current_db_version;
    $guessurl = wp_guess_url();
    /**
     * Fires before creating WordPress options and populating their default values.
     *
     * @since 2.6.0
     */
    do_action('populate_options');
    // If WP_DEFAULT_THEME doesn't exist, fall back to the latest core default theme.
    $stylesheet = WP_DEFAULT_THEME;
    $template = WP_DEFAULT_THEME;
    $theme = wp_get_theme(WP_DEFAULT_THEME);
    if (!$theme->exists()) {
        $theme = WP_Theme::get_core_default_theme();
    }
    // If we can't find a core default theme, WP_DEFAULT_THEME is the best we can do.
    if ($theme) {
        $stylesheet = $theme->get_stylesheet();
        $template = $theme->get_template();
    }
    $timezone_string = '';
    $gmt_offset = 0;
    /*
     * translators: default GMT offset or timezone string. Must be either a valid offset (-12 to 14)
     * or a valid timezone string (America/New_York). See https://www.php.net/manual/en/timezones.php
     * for all timezone strings supported by PHP.
     */
    $offset_or_tz = _x('0', 'default GMT offset or timezone string');
    // phpcs:ignore WordPress.WP.I18n.NoEmptyStrings
    if (is_numeric($offset_or_tz)) {
        $gmt_offset = $offset_or_tz;
    } elseif ($offset_or_tz && in_array($offset_or_tz, timezone_identifiers_list(), true)) {
        $timezone_string = $offset_or_tz;
    }
    $defaults = array(
        'siteurl' => $guessurl,
        'home' => $guessurl,
        'blogname' => __('My Site'),
        /* translators: Site tagline. */
        'blogdescription' => __('Just another WordPress site'),
        'users_can_register' => 0,
        'admin_email' => '[email protected]',
        /* translators: Default start of the week. 0 = Sunday, 1 = Monday. */
        'start_of_week' => _x('1', 'start of week'),
        'use_balanceTags' => 0,
        'use_smilies' => 1,
        'require_name_email' => 1,
        'comments_notify' => 1,
        'posts_per_rss' => 10,
        'rss_use_excerpt' => 0,
        'mailserver_url' => 'mail.example.com',
        'mailserver_login' => '[email protected]',
        'mailserver_pass' => 'password',
        'mailserver_port' => 110,
        'default_category' => 1,
        'default_comment_status' => 'open',
        'default_ping_status' => 'open',
        'default_pingback_flag' => 1,
        'posts_per_page' => 10,
        /* translators: Default date format, see https://www.php.net/manual/datetime.format.php */
        'date_format' => __('F j, Y'),
        /* translators: Default time format, see https://www.php.net/manual/datetime.format.php */
        'time_format' => __('g:i a'),
        /* translators: Links last updated date format, see https://www.php.net/manual/datetime.format.php */
        'links_updated_date_format' => __('F j, Y g:i a'),
        'comment_moderation' => 0,
        'moderation_notify' => 1,
        'permalink_structure' => '',
        'rewrite_rules' => '',
        'hack_file' => 0,
        'blog_charset' => 'UTF-8',
        'moderation_keys' => '',
        'active_plugins' => array(),
        'category_base' => '',
        'ping_sites' => 'http://rpc.pingomatic.com/',
        'comment_max_links' => 2,
        'gmt_offset' => $gmt_offset,
        // 1.5.0
        'default_email_category' => 1,
        'recently_edited' => '',
        'template' => $template,
        'stylesheet' => $stylesheet,
        'comment_registration' => 0,
        'html_type' => 'text/html',
        // 1.5.1
        'use_trackback' => 0,
        // 2.0.0
        'default_role' => 'subscriber',
        'db_version' => $wp_db_version,
        // 2.0.1
        'uploads_use_yearmonth_folders' => 1,
        'upload_path' => '',
        // 2.1.0
        'blog_public' => '1',
        'default_link_category' => 2,
        'show_on_front' => 'posts',
        // 2.2.0
        'tag_base' => '',
        // 2.5.0
        'show_avatars' => '1',
        'avatar_rating' => 'G',
        'upload_url_path' => '',
        'thumbnail_size_w' => 150,
        'thumbnail_size_h' => 150,
        'thumbnail_crop' => 1,
        'medium_size_w' => 300,
        'medium_size_h' => 300,
        // 2.6.0
        'avatar_default' => 'mystery',
        // 2.7.0
        'large_size_w' => 1024,
        'large_size_h' => 1024,
        'image_default_link_type' => 'none',
        'image_default_size' => '',
        'image_default_align' => '',
        'close_comments_for_old_posts' => 0,
        'close_comments_days_old' => 14,
        'thread_comments' => 1,
        'thread_comments_depth' => 5,
        'page_comments' => 0,
        'comments_per_page' => 50,
        'default_comments_page' => 'newest',
        'comment_order' => 'asc',
        'sticky_posts' => array(),
        'widget_categories' => array(),
        'widget_text' => array(),
        'widget_rss' => array(),
        'uninstall_plugins' => array(),
        // 2.8.0
        'timezone_string' => $timezone_string,
        // 3.0.0
        'page_for_posts' => 0,
        'page_on_front' => 0,
        // 3.1.0
        'default_post_format' => 0,
        // 3.5.0
        'link_manager_enabled' => 0,
        // 4.3.0
        'finished_splitting_shared_terms' => 1,
        'site_icon' => 0,
        // 4.4.0
        'medium_large_size_w' => 768,
        'medium_large_size_h' => 0,
        // 4.9.6
        'wp_page_for_privacy_policy' => 0,
        // 4.9.8
        'show_comments_cookies_opt_in' => 1,
        // 5.3.0
        'admin_email_lifespan' => time() + 6 * MONTH_IN_SECONDS,
        // 5.5.0
        'disallowed_keys' => '',
        'comment_previously_approved' => 1,
        'auto_plugin_theme_update_emails' => array(),
        // 5.6.0
        'auto_update_core_dev' => 'enabled',
        'auto_update_core_minor' => 'enabled',
        // Default to enabled for new installs.
        // See https://core.trac.wordpress.org/ticket/51742.
        'auto_update_core_major' => 'enabled',
    );
    // 3.3.0
    if (!is_multisite()) {
        $defaults['initial_db_version'] = (!empty($wp_current_db_version) && $wp_current_db_version < $wp_db_version) ? $wp_current_db_version : $wp_db_version;
    }
    // 3.0.0 multisite.
    if (is_multisite()) {
        /* translators: %s: Network title. */
        $defaults['blogdescription'] = sprintf(__('Just another %s site'), get_network()->site_name);
        $defaults['permalink_structure'] = '/%year%/%monthnum%/%day%/%postname%/';
    }
    $options = wp_parse_args($options, $defaults);
    // Set autoload to no for these options.
    $fat_options = array('moderation_keys', 'recently_edited', 'disallowed_keys', 'uninstall_plugins', 'auto_plugin_theme_update_emails');
    $keys = "'" . implode("', '", array_keys($options)) . "'";
    $existing_options = $wpdb->get_col("SELECT option_name FROM {$wpdb->options} WHERE option_name in ( {$keys} )");
    // phpcs:ignore WordPress.DB.PreparedSQL.NotPrepared
    $insert = '';
    foreach ($options as $option => $value) {
        if (in_array($option, $existing_options, true)) {
            continue;
        }
        if (in_array($option, $fat_options, true)) {
            $autoload = 'no';
        } else {
            $autoload = 'yes';
        }
        if (is_array($value)) {
            $value = serialize($value);
        }
        if (!empty($insert)) {
            $insert .= ', ';
        }
        $insert .= $wpdb->prepare('(%s, %s, %s)', $option, $value, $autoload);
    }
    if (!empty($insert)) {
        $wpdb->query("INSERT INTO {$wpdb->options} (option_name, option_value, autoload) VALUES " . $insert);
        // phpcs:ignore WordPress.DB.PreparedSQL.NotPrepared
    }
    // In case it is set, but blank, update "home".
    if (!__get_option('home')) {
        update_option('home', $guessurl);
    }
    // Delete unused options.
    $unusedoptions = array('blodotgsping_url', 'bodyterminator', 'emailtestonly', 'phoneemail_separator', 'smilies_directory', 'subjectprefix', 'use_bbcode', 'use_blodotgsping', 'use_phoneemail', 'use_quicktags', 'use_weblogsping', 'weblogs_cache_file', 'use_preview', 'use_htmltrans', 'smilies_directory', 'fileupload_allowedusers', 'use_phoneemail', 'default_post_status', 'default_post_category', 'archive_mode', 'time_difference', 'links_minadminlevel', 'links_use_adminlevels', 'links_rating_type', 'links_rating_char', 'links_rating_ignore_zero', 'links_rating_single_image', 'links_rating_image0', 'links_rating_image1', 'links_rating_image2', 'links_rating_image3', 'links_rating_image4', 'links_rating_image5', 'links_rating_image6', 'links_rating_image7', 'links_rating_image8', 'links_rating_image9', 'links_recently_updated_time', 'links_recently_updated_prepend', 'links_recently_updated_append', 'weblogs_cacheminutes', 'comment_allowed_tags', 'search_engine_friendly_urls', 'default_geourl_lat', 'default_geourl_lon', 'use_default_geourl', 'weblogs_xml_url', 'new_users_can_blog', '_wpnonce', '_wp_http_referer', 'Update', 'action', 'rich_editing', 'autosave_interval', 'deactivated_plugins', 'can_compress_scripts', 'page_uris', 'update_core', 'update_plugins', 'update_themes', 'doing_cron', 'random_seed', 'rss_excerpt_length', 'secret', 'use_linksupdate', 'default_comment_status_page', 'wporg_popular_tags', 'what_to_show', 'rss_language', 'language', 'enable_xmlrpc', 'enable_app', 'embed_autourls', 'default_post_edit_rows', 'gzipcompression', 'advanced_edit');
    foreach ($unusedoptions as $option) {
        delete_option($option);
    }
    // Delete obsolete magpie stuff.
    $wpdb->query("DELETE FROM {$wpdb->options} WHERE option_name REGEXP '^rss_[0-9a-f]{32}(_ts)?\$'");
    // Clear expired transients.
    delete_expired_transients(true);
}

WordPress Version: 5.2

/**
 * Create WordPress options and set the default values.
 *
 * @since 1.5.0
 * @since 5.1.0 The $options parameter has been added.
 *
 * @global wpdb $wpdb                  WordPress database abstraction object.
 * @global int  $wp_db_version         WordPress database version.
 * @global int  $wp_current_db_version The old (current) database version.
 *
 * @param array $options Optional. Custom option $key => $value pairs to use. Default empty array.
 */
function populate_options(array $options = array())
{
    global $wpdb, $wp_db_version, $wp_current_db_version;
    $guessurl = wp_guess_url();
    /**
     * Fires before creating WordPress options and populating their default values.
     *
     * @since 2.6.0
     */
    do_action('populate_options');
    // If WP_DEFAULT_THEME doesn't exist, fall back to the latest core default theme.
    $stylesheet = WP_DEFAULT_THEME;
    $template = WP_DEFAULT_THEME;
    $theme = wp_get_theme(WP_DEFAULT_THEME);
    if (!$theme->exists()) {
        $theme = WP_Theme::get_core_default_theme();
    }
    // If we can't find a core default theme, WP_DEFAULT_THEME is the best we can do.
    if ($theme) {
        $stylesheet = $theme->get_stylesheet();
        $template = $theme->get_template();
    }
    $timezone_string = '';
    $gmt_offset = 0;
    /*
     * translators: default GMT offset or timezone string. Must be either a valid offset (-12 to 14)
     * or a valid timezone string (America/New_York). See https://www.php.net/manual/en/timezones.php
     * for all timezone strings supported by PHP.
     */
    $offset_or_tz = _x('0', 'default GMT offset or timezone string');
    // phpcs:ignore WordPress.WP.I18n.NoEmptyStrings
    if (is_numeric($offset_or_tz)) {
        $gmt_offset = $offset_or_tz;
    } elseif ($offset_or_tz && in_array($offset_or_tz, timezone_identifiers_list(), true)) {
        $timezone_string = $offset_or_tz;
    }
    $defaults = array(
        'siteurl' => $guessurl,
        'home' => $guessurl,
        'blogname' => __('My Site'),
        /* translators: Site tagline. */
        'blogdescription' => __('Just another WordPress site'),
        'users_can_register' => 0,
        'admin_email' => '[email protected]',
        /* translators: Default start of the week. 0 = Sunday, 1 = Monday. */
        'start_of_week' => _x('1', 'start of week'),
        'use_balanceTags' => 0,
        'use_smilies' => 1,
        'require_name_email' => 1,
        'comments_notify' => 1,
        'posts_per_rss' => 10,
        'rss_use_excerpt' => 0,
        'mailserver_url' => 'mail.example.com',
        'mailserver_login' => '[email protected]',
        'mailserver_pass' => 'password',
        'mailserver_port' => 110,
        'default_category' => 1,
        'default_comment_status' => 'open',
        'default_ping_status' => 'open',
        'default_pingback_flag' => 1,
        'posts_per_page' => 10,
        /* translators: Default date format, see https://www.php.net/date */
        'date_format' => __('F j, Y'),
        /* translators: Default time format, see https://www.php.net/date */
        'time_format' => __('g:i a'),
        /* translators: Links last updated date format, see https://www.php.net/date */
        'links_updated_date_format' => __('F j, Y g:i a'),
        'comment_moderation' => 0,
        'moderation_notify' => 1,
        'permalink_structure' => '',
        'rewrite_rules' => '',
        'hack_file' => 0,
        'blog_charset' => 'UTF-8',
        'moderation_keys' => '',
        'active_plugins' => array(),
        'category_base' => '',
        'ping_sites' => 'http://rpc.pingomatic.com/',
        'comment_max_links' => 2,
        'gmt_offset' => $gmt_offset,
        // 1.5.0
        'default_email_category' => 1,
        'recently_edited' => '',
        'template' => $template,
        'stylesheet' => $stylesheet,
        'comment_registration' => 0,
        'html_type' => 'text/html',
        // 1.5.1
        'use_trackback' => 0,
        // 2.0.0
        'default_role' => 'subscriber',
        'db_version' => $wp_db_version,
        // 2.0.1
        'uploads_use_yearmonth_folders' => 1,
        'upload_path' => '',
        // 2.1.0
        'blog_public' => '1',
        'default_link_category' => 2,
        'show_on_front' => 'posts',
        // 2.2.0
        'tag_base' => '',
        // 2.5.0
        'show_avatars' => '1',
        'avatar_rating' => 'G',
        'upload_url_path' => '',
        'thumbnail_size_w' => 150,
        'thumbnail_size_h' => 150,
        'thumbnail_crop' => 1,
        'medium_size_w' => 300,
        'medium_size_h' => 300,
        // 2.6.0
        'avatar_default' => 'mystery',
        // 2.7.0
        'large_size_w' => 1024,
        'large_size_h' => 1024,
        'image_default_link_type' => 'none',
        'image_default_size' => '',
        'image_default_align' => '',
        'close_comments_for_old_posts' => 0,
        'close_comments_days_old' => 14,
        'thread_comments' => 1,
        'thread_comments_depth' => 5,
        'page_comments' => 0,
        'comments_per_page' => 50,
        'default_comments_page' => 'newest',
        'comment_order' => 'asc',
        'sticky_posts' => array(),
        'widget_categories' => array(),
        'widget_text' => array(),
        'widget_rss' => array(),
        'uninstall_plugins' => array(),
        // 2.8.0
        'timezone_string' => $timezone_string,
        // 3.0.0
        'page_for_posts' => 0,
        'page_on_front' => 0,
        // 3.1.0
        'default_post_format' => 0,
        // 3.5.0
        'link_manager_enabled' => 0,
        // 4.3.0
        'finished_splitting_shared_terms' => 1,
        'site_icon' => 0,
        // 4.4.0
        'medium_large_size_w' => 768,
        'medium_large_size_h' => 0,
        // 4.9.6
        'wp_page_for_privacy_policy' => 0,
        // 4.9.8
        'show_comments_cookies_opt_in' => 1,
        // 5.3.0
        'admin_email_lifespan' => time() + 6 * MONTH_IN_SECONDS,
        // 5.5.0
        'disallowed_keys' => '',
        'comment_previously_approved' => 1,
        'auto_plugin_theme_update_emails' => array(),
    );
    // 3.3.0
    if (!is_multisite()) {
        $defaults['initial_db_version'] = (!empty($wp_current_db_version) && $wp_current_db_version < $wp_db_version) ? $wp_current_db_version : $wp_db_version;
    }
    // 3.0.0 multisite.
    if (is_multisite()) {
        /* translators: %s: Network title. */
        $defaults['blogdescription'] = sprintf(__('Just another %s site'), get_network()->site_name);
        $defaults['permalink_structure'] = '/%year%/%monthnum%/%day%/%postname%/';
    }
    $options = wp_parse_args($options, $defaults);
    // Set autoload to no for these options.
    $fat_options = array('moderation_keys', 'recently_edited', 'disallowed_keys', 'uninstall_plugins', 'auto_plugin_theme_update_emails');
    $keys = "'" . implode("', '", array_keys($options)) . "'";
    $existing_options = $wpdb->get_col("SELECT option_name FROM {$wpdb->options} WHERE option_name in ( {$keys} )");
    // phpcs:ignore WordPress.DB.PreparedSQL.NotPrepared
    $insert = '';
    foreach ($options as $option => $value) {
        if (in_array($option, $existing_options, true)) {
            continue;
        }
        if (in_array($option, $fat_options, true)) {
            $autoload = 'no';
        } else {
            $autoload = 'yes';
        }
        if (is_array($value)) {
            $value = serialize($value);
        }
        if (!empty($insert)) {
            $insert .= ', ';
        }
        $insert .= $wpdb->prepare('(%s, %s, %s)', $option, $value, $autoload);
    }
    if (!empty($insert)) {
        $wpdb->query("INSERT INTO {$wpdb->options} (option_name, option_value, autoload) VALUES " . $insert);
        // phpcs:ignore WordPress.DB.PreparedSQL.NotPrepared
    }
    // In case it is set, but blank, update "home".
    if (!__get_option('home')) {
        update_option('home', $guessurl);
    }
    // Delete unused options.
    $unusedoptions = array('blodotgsping_url', 'bodyterminator', 'emailtestonly', 'phoneemail_separator', 'smilies_directory', 'subjectprefix', 'use_bbcode', 'use_blodotgsping', 'use_phoneemail', 'use_quicktags', 'use_weblogsping', 'weblogs_cache_file', 'use_preview', 'use_htmltrans', 'smilies_directory', 'fileupload_allowedusers', 'use_phoneemail', 'default_post_status', 'default_post_category', 'archive_mode', 'time_difference', 'links_minadminlevel', 'links_use_adminlevels', 'links_rating_type', 'links_rating_char', 'links_rating_ignore_zero', 'links_rating_single_image', 'links_rating_image0', 'links_rating_image1', 'links_rating_image2', 'links_rating_image3', 'links_rating_image4', 'links_rating_image5', 'links_rating_image6', 'links_rating_image7', 'links_rating_image8', 'links_rating_image9', 'links_recently_updated_time', 'links_recently_updated_prepend', 'links_recently_updated_append', 'weblogs_cacheminutes', 'comment_allowed_tags', 'search_engine_friendly_urls', 'default_geourl_lat', 'default_geourl_lon', 'use_default_geourl', 'weblogs_xml_url', 'new_users_can_blog', '_wpnonce', '_wp_http_referer', 'Update', 'action', 'rich_editing', 'autosave_interval', 'deactivated_plugins', 'can_compress_scripts', 'page_uris', 'update_core', 'update_plugins', 'update_themes', 'doing_cron', 'random_seed', 'rss_excerpt_length', 'secret', 'use_linksupdate', 'default_comment_status_page', 'wporg_popular_tags', 'what_to_show', 'rss_language', 'language', 'enable_xmlrpc', 'enable_app', 'embed_autourls', 'default_post_edit_rows', 'gzipcompression', 'advanced_edit');
    foreach ($unusedoptions as $option) {
        delete_option($option);
    }
    // Delete obsolete magpie stuff.
    $wpdb->query("DELETE FROM {$wpdb->options} WHERE option_name REGEXP '^rss_[0-9a-f]{32}(_ts)?\$'");
    // Clear expired transients.
    delete_expired_transients(true);
}

WordPress Version: .14

/**
 * Create WordPress options and set the default values.
 *
 * @since 1.5.0
 * @since 5.1.0 The $options parameter has been added.
 *
 * @global wpdb $wpdb                  WordPress database abstraction object.
 * @global int  $wp_db_version         WordPress database version.
 * @global int  $wp_current_db_version The old (current) database version.
 *
 * @param array $options Optional. Custom option $key => $value pairs to use. Default empty array.
 */
function populate_options(array $options = array())
{
    global $wpdb, $wp_db_version, $wp_current_db_version;
    $guessurl = wp_guess_url();
    /**
     * Fires before creating WordPress options and populating their default values.
     *
     * @since 2.6.0
     */
    do_action('populate_options');
    // If WP_DEFAULT_THEME doesn't exist, fall back to the latest core default theme.
    $stylesheet = WP_DEFAULT_THEME;
    $template = WP_DEFAULT_THEME;
    $theme = wp_get_theme(WP_DEFAULT_THEME);
    if (!$theme->exists()) {
        $theme = WP_Theme::get_core_default_theme();
    }
    // If we can't find a core default theme, WP_DEFAULT_THEME is the best we can do.
    if ($theme) {
        $stylesheet = $theme->get_stylesheet();
        $template = $theme->get_template();
    }
    $timezone_string = '';
    $gmt_offset = 0;
    /*
     * translators: default GMT offset or timezone string. Must be either a valid offset (-12 to 14)
     * or a valid timezone string (America/New_York). See https://www.php.net/manual/en/timezones.php
     * for all timezone strings supported by PHP.
     */
    $offset_or_tz = _x('0', 'default GMT offset or timezone string');
    // phpcs:ignore WordPress.WP.I18n.NoEmptyStrings
    if (is_numeric($offset_or_tz)) {
        $gmt_offset = $offset_or_tz;
    } elseif ($offset_or_tz && in_array($offset_or_tz, timezone_identifiers_list(), true)) {
        $timezone_string = $offset_or_tz;
    }
    $defaults = array(
        'siteurl' => $guessurl,
        'home' => $guessurl,
        'blogname' => __('My Site'),
        /* translators: Site tagline. */
        'blogdescription' => __('Just another WordPress site'),
        'users_can_register' => 0,
        'admin_email' => '[email protected]',
        /* translators: Default start of the week. 0 = Sunday, 1 = Monday. */
        'start_of_week' => _x('1', 'start of week'),
        'use_balanceTags' => 0,
        'use_smilies' => 1,
        'require_name_email' => 1,
        'comments_notify' => 1,
        'posts_per_rss' => 10,
        'rss_use_excerpt' => 0,
        'mailserver_url' => 'mail.example.com',
        'mailserver_login' => '[email protected]',
        'mailserver_pass' => 'password',
        'mailserver_port' => 110,
        'default_category' => 1,
        'default_comment_status' => 'open',
        'default_ping_status' => 'open',
        'default_pingback_flag' => 1,
        'posts_per_page' => 10,
        /* translators: Default date format, see https://www.php.net/date */
        'date_format' => __('F j, Y'),
        /* translators: Default time format, see https://www.php.net/date */
        'time_format' => __('g:i a'),
        /* translators: Links last updated date format, see https://www.php.net/date */
        'links_updated_date_format' => __('F j, Y g:i a'),
        'comment_moderation' => 0,
        'moderation_notify' => 1,
        'permalink_structure' => '',
        'rewrite_rules' => '',
        'hack_file' => 0,
        'blog_charset' => 'UTF-8',
        'moderation_keys' => '',
        'active_plugins' => array(),
        'category_base' => '',
        'ping_sites' => 'http://rpc.pingomatic.com/',
        'comment_max_links' => 2,
        'gmt_offset' => $gmt_offset,
        // 1.5.0
        'default_email_category' => 1,
        'recently_edited' => '',
        'template' => $template,
        'stylesheet' => $stylesheet,
        'comment_registration' => 0,
        'html_type' => 'text/html',
        // 1.5.1
        'use_trackback' => 0,
        // 2.0.0
        'default_role' => 'subscriber',
        'db_version' => $wp_db_version,
        // 2.0.1
        'uploads_use_yearmonth_folders' => 1,
        'upload_path' => '',
        // 2.1.0
        'blog_public' => '1',
        'default_link_category' => 2,
        'show_on_front' => 'posts',
        // 2.2.0
        'tag_base' => '',
        // 2.5.0
        'show_avatars' => '1',
        'avatar_rating' => 'G',
        'upload_url_path' => '',
        'thumbnail_size_w' => 150,
        'thumbnail_size_h' => 150,
        'thumbnail_crop' => 1,
        'medium_size_w' => 300,
        'medium_size_h' => 300,
        // 2.6.0
        'avatar_default' => 'mystery',
        // 2.7.0
        'large_size_w' => 1024,
        'large_size_h' => 1024,
        'image_default_link_type' => 'none',
        'image_default_size' => '',
        'image_default_align' => '',
        'close_comments_for_old_posts' => 0,
        'close_comments_days_old' => 14,
        'thread_comments' => 1,
        'thread_comments_depth' => 5,
        'page_comments' => 0,
        'comments_per_page' => 50,
        'default_comments_page' => 'newest',
        'comment_order' => 'asc',
        'sticky_posts' => array(),
        'widget_categories' => array(),
        'widget_text' => array(),
        'widget_rss' => array(),
        'uninstall_plugins' => array(),
        // 2.8.0
        'timezone_string' => $timezone_string,
        // 3.0.0
        'page_for_posts' => 0,
        'page_on_front' => 0,
        // 3.1.0
        'default_post_format' => 0,
        // 3.5.0
        'link_manager_enabled' => 0,
        // 4.3.0
        'finished_splitting_shared_terms' => 1,
        'site_icon' => 0,
        // 4.4.0
        'medium_large_size_w' => 768,
        'medium_large_size_h' => 0,
        // 4.9.6
        'wp_page_for_privacy_policy' => 0,
        // 4.9.8
        'show_comments_cookies_opt_in' => 1,
        // 5.3.0
        'admin_email_lifespan' => time() + 6 * MONTH_IN_SECONDS,
        // 5.5.0
        'disallowed_keys' => '',
        'comment_previously_approved' => 1,
        'auto_plugin_theme_update_emails' => array(),
    );
    // 3.3.0
    if (!is_multisite()) {
        $defaults['initial_db_version'] = (!empty($wp_current_db_version) && $wp_current_db_version < $wp_db_version) ? $wp_current_db_version : $wp_db_version;
    }
    // 3.0.0 multisite.
    if (is_multisite()) {
        /* translators: %s: Network title. */
        $defaults['blogdescription'] = sprintf(__('Just another %s site'), get_network()->site_name);
        $defaults['permalink_structure'] = '/%year%/%monthnum%/%day%/%postname%/';
    }
    $options = wp_parse_args($options, $defaults);
    // Set autoload to no for these options.
    $fat_options = array('moderation_keys', 'recently_edited', 'disallowed_keys', 'uninstall_plugins', 'auto_plugin_theme_update_emails');
    $keys = "'" . implode("', '", array_keys($options)) . "'";
    $existing_options = $wpdb->get_col("SELECT option_name FROM {$wpdb->options} WHERE option_name in ( {$keys} )");
    // phpcs:ignore WordPress.DB.PreparedSQL.NotPrepared
    $insert = '';
    foreach ($options as $option => $value) {
        if (in_array($option, $existing_options, true)) {
            continue;
        }
        if (in_array($option, $fat_options, true)) {
            $autoload = 'no';
        } else {
            $autoload = 'yes';
        }
        if (!empty($insert)) {
            $insert .= ', ';
        }
        $value = maybe_serialize(sanitize_option($option, $value));
        $insert .= $wpdb->prepare('(%s, %s, %s)', $option, $value, $autoload);
    }
    if (!empty($insert)) {
        $wpdb->query("INSERT INTO {$wpdb->options} (option_name, option_value, autoload) VALUES " . $insert);
        // phpcs:ignore WordPress.DB.PreparedSQL.NotPrepared
    }
    // In case it is set, but blank, update "home".
    if (!__get_option('home')) {
        update_option('home', $guessurl);
    }
    // Delete unused options.
    $unusedoptions = array('blodotgsping_url', 'bodyterminator', 'emailtestonly', 'phoneemail_separator', 'smilies_directory', 'subjectprefix', 'use_bbcode', 'use_blodotgsping', 'use_phoneemail', 'use_quicktags', 'use_weblogsping', 'weblogs_cache_file', 'use_preview', 'use_htmltrans', 'smilies_directory', 'fileupload_allowedusers', 'use_phoneemail', 'default_post_status', 'default_post_category', 'archive_mode', 'time_difference', 'links_minadminlevel', 'links_use_adminlevels', 'links_rating_type', 'links_rating_char', 'links_rating_ignore_zero', 'links_rating_single_image', 'links_rating_image0', 'links_rating_image1', 'links_rating_image2', 'links_rating_image3', 'links_rating_image4', 'links_rating_image5', 'links_rating_image6', 'links_rating_image7', 'links_rating_image8', 'links_rating_image9', 'links_recently_updated_time', 'links_recently_updated_prepend', 'links_recently_updated_append', 'weblogs_cacheminutes', 'comment_allowed_tags', 'search_engine_friendly_urls', 'default_geourl_lat', 'default_geourl_lon', 'use_default_geourl', 'weblogs_xml_url', 'new_users_can_blog', '_wpnonce', '_wp_http_referer', 'Update', 'action', 'rich_editing', 'autosave_interval', 'deactivated_plugins', 'can_compress_scripts', 'page_uris', 'update_core', 'update_plugins', 'update_themes', 'doing_cron', 'random_seed', 'rss_excerpt_length', 'secret', 'use_linksupdate', 'default_comment_status_page', 'wporg_popular_tags', 'what_to_show', 'rss_language', 'language', 'enable_xmlrpc', 'enable_app', 'embed_autourls', 'default_post_edit_rows', 'gzipcompression', 'advanced_edit');
    foreach ($unusedoptions as $option) {
        delete_option($option);
    }
    // Delete obsolete magpie stuff.
    $wpdb->query("DELETE FROM {$wpdb->options} WHERE option_name REGEXP '^rss_[0-9a-f]{32}(_ts)?\$'");
    // Clear expired transients.
    delete_expired_transients(true);
}

WordPress Version: 5.5

/**
 * Create WordPress options and set the default values.
 *
 * @since 1.5.0
 * @since 5.1.0 The $options parameter has been added.
 *
 * @global wpdb $wpdb                  WordPress database abstraction object.
 * @global int  $wp_db_version         WordPress database version.
 * @global int  $wp_current_db_version The old (current) database version.
 *
 * @param array $options Optional. Custom option $key => $value pairs to use. Default empty array.
 */
function populate_options(array $options = array())
{
    global $wpdb, $wp_db_version, $wp_current_db_version;
    $guessurl = wp_guess_url();
    /**
     * Fires before creating WordPress options and populating their default values.
     *
     * @since 2.6.0
     */
    do_action('populate_options');
    // If WP_DEFAULT_THEME doesn't exist, fall back to the latest core default theme.
    $stylesheet = WP_DEFAULT_THEME;
    $template = WP_DEFAULT_THEME;
    $theme = wp_get_theme(WP_DEFAULT_THEME);
    if (!$theme->exists()) {
        $theme = WP_Theme::get_core_default_theme();
    }
    // If we can't find a core default theme, WP_DEFAULT_THEME is the best we can do.
    if ($theme) {
        $stylesheet = $theme->get_stylesheet();
        $template = $theme->get_template();
    }
    $timezone_string = '';
    $gmt_offset = 0;
    /*
     * translators: default GMT offset or timezone string. Must be either a valid offset (-12 to 14)
     * or a valid timezone string (America/New_York). See https://www.php.net/manual/en/timezones.php
     * for all timezone strings supported by PHP.
     */
    $offset_or_tz = _x('0', 'default GMT offset or timezone string');
    // phpcs:ignore WordPress.WP.I18n.NoEmptyStrings
    if (is_numeric($offset_or_tz)) {
        $gmt_offset = $offset_or_tz;
    } elseif ($offset_or_tz && in_array($offset_or_tz, timezone_identifiers_list(), true)) {
        $timezone_string = $offset_or_tz;
    }
    $defaults = array(
        'siteurl' => $guessurl,
        'home' => $guessurl,
        'blogname' => __('My Site'),
        /* translators: Site tagline. */
        'blogdescription' => __('Just another WordPress site'),
        'users_can_register' => 0,
        'admin_email' => '[email protected]',
        /* translators: Default start of the week. 0 = Sunday, 1 = Monday. */
        'start_of_week' => _x('1', 'start of week'),
        'use_balanceTags' => 0,
        'use_smilies' => 1,
        'require_name_email' => 1,
        'comments_notify' => 1,
        'posts_per_rss' => 10,
        'rss_use_excerpt' => 0,
        'mailserver_url' => 'mail.example.com',
        'mailserver_login' => '[email protected]',
        'mailserver_pass' => 'password',
        'mailserver_port' => 110,
        'default_category' => 1,
        'default_comment_status' => 'open',
        'default_ping_status' => 'open',
        'default_pingback_flag' => 1,
        'posts_per_page' => 10,
        /* translators: Default date format, see https://www.php.net/date */
        'date_format' => __('F j, Y'),
        /* translators: Default time format, see https://www.php.net/date */
        'time_format' => __('g:i a'),
        /* translators: Links last updated date format, see https://www.php.net/date */
        'links_updated_date_format' => __('F j, Y g:i a'),
        'comment_moderation' => 0,
        'moderation_notify' => 1,
        'permalink_structure' => '',
        'rewrite_rules' => '',
        'hack_file' => 0,
        'blog_charset' => 'UTF-8',
        'moderation_keys' => '',
        'active_plugins' => array(),
        'category_base' => '',
        'ping_sites' => 'http://rpc.pingomatic.com/',
        'comment_max_links' => 2,
        'gmt_offset' => $gmt_offset,
        // 1.5.0
        'default_email_category' => 1,
        'recently_edited' => '',
        'template' => $template,
        'stylesheet' => $stylesheet,
        'comment_registration' => 0,
        'html_type' => 'text/html',
        // 1.5.1
        'use_trackback' => 0,
        // 2.0.0
        'default_role' => 'subscriber',
        'db_version' => $wp_db_version,
        // 2.0.1
        'uploads_use_yearmonth_folders' => 1,
        'upload_path' => '',
        // 2.1.0
        'blog_public' => '1',
        'default_link_category' => 2,
        'show_on_front' => 'posts',
        // 2.2.0
        'tag_base' => '',
        // 2.5.0
        'show_avatars' => '1',
        'avatar_rating' => 'G',
        'upload_url_path' => '',
        'thumbnail_size_w' => 150,
        'thumbnail_size_h' => 150,
        'thumbnail_crop' => 1,
        'medium_size_w' => 300,
        'medium_size_h' => 300,
        // 2.6.0
        'avatar_default' => 'mystery',
        // 2.7.0
        'large_size_w' => 1024,
        'large_size_h' => 1024,
        'image_default_link_type' => 'none',
        'image_default_size' => '',
        'image_default_align' => '',
        'close_comments_for_old_posts' => 0,
        'close_comments_days_old' => 14,
        'thread_comments' => 1,
        'thread_comments_depth' => 5,
        'page_comments' => 0,
        'comments_per_page' => 50,
        'default_comments_page' => 'newest',
        'comment_order' => 'asc',
        'sticky_posts' => array(),
        'widget_categories' => array(),
        'widget_text' => array(),
        'widget_rss' => array(),
        'uninstall_plugins' => array(),
        // 2.8.0
        'timezone_string' => $timezone_string,
        // 3.0.0
        'page_for_posts' => 0,
        'page_on_front' => 0,
        // 3.1.0
        'default_post_format' => 0,
        // 3.5.0
        'link_manager_enabled' => 0,
        // 4.3.0
        'finished_splitting_shared_terms' => 1,
        'site_icon' => 0,
        // 4.4.0
        'medium_large_size_w' => 768,
        'medium_large_size_h' => 0,
        // 4.9.6
        'wp_page_for_privacy_policy' => 0,
        // 4.9.8
        'show_comments_cookies_opt_in' => 1,
        // 5.3.0
        'admin_email_lifespan' => time() + 6 * MONTH_IN_SECONDS,
        // 5.5.0
        'disallowed_keys' => '',
        'comment_previously_approved' => 1,
        'auto_plugin_theme_update_emails' => array(),
    );
    // 3.3.0
    if (!is_multisite()) {
        $defaults['initial_db_version'] = (!empty($wp_current_db_version) && $wp_current_db_version < $wp_db_version) ? $wp_current_db_version : $wp_db_version;
    }
    // 3.0.0 multisite.
    if (is_multisite()) {
        /* translators: %s: Network title. */
        $defaults['blogdescription'] = sprintf(__('Just another %s site'), get_network()->site_name);
        $defaults['permalink_structure'] = '/%year%/%monthnum%/%day%/%postname%/';
    }
    $options = wp_parse_args($options, $defaults);
    // Set autoload to no for these options.
    $fat_options = array('moderation_keys', 'recently_edited', 'disallowed_keys', 'uninstall_plugins', 'auto_plugin_theme_update_emails');
    $keys = "'" . implode("', '", array_keys($options)) . "'";
    $existing_options = $wpdb->get_col("SELECT option_name FROM {$wpdb->options} WHERE option_name in ( {$keys} )");
    // phpcs:ignore WordPress.DB.PreparedSQL.NotPrepared
    $insert = '';
    foreach ($options as $option => $value) {
        if (in_array($option, $existing_options, true)) {
            continue;
        }
        if (in_array($option, $fat_options, true)) {
            $autoload = 'no';
        } else {
            $autoload = 'yes';
        }
        if (is_array($value)) {
            $value = serialize($value);
        }
        if (!empty($insert)) {
            $insert .= ', ';
        }
        $insert .= $wpdb->prepare('(%s, %s, %s)', $option, $value, $autoload);
    }
    if (!empty($insert)) {
        $wpdb->query("INSERT INTO {$wpdb->options} (option_name, option_value, autoload) VALUES " . $insert);
        // phpcs:ignore WordPress.DB.PreparedSQL.NotPrepared
    }
    // In case it is set, but blank, update "home".
    if (!__get_option('home')) {
        update_option('home', $guessurl);
    }
    // Delete unused options.
    $unusedoptions = array('blodotgsping_url', 'bodyterminator', 'emailtestonly', 'phoneemail_separator', 'smilies_directory', 'subjectprefix', 'use_bbcode', 'use_blodotgsping', 'use_phoneemail', 'use_quicktags', 'use_weblogsping', 'weblogs_cache_file', 'use_preview', 'use_htmltrans', 'smilies_directory', 'fileupload_allowedusers', 'use_phoneemail', 'default_post_status', 'default_post_category', 'archive_mode', 'time_difference', 'links_minadminlevel', 'links_use_adminlevels', 'links_rating_type', 'links_rating_char', 'links_rating_ignore_zero', 'links_rating_single_image', 'links_rating_image0', 'links_rating_image1', 'links_rating_image2', 'links_rating_image3', 'links_rating_image4', 'links_rating_image5', 'links_rating_image6', 'links_rating_image7', 'links_rating_image8', 'links_rating_image9', 'links_recently_updated_time', 'links_recently_updated_prepend', 'links_recently_updated_append', 'weblogs_cacheminutes', 'comment_allowed_tags', 'search_engine_friendly_urls', 'default_geourl_lat', 'default_geourl_lon', 'use_default_geourl', 'weblogs_xml_url', 'new_users_can_blog', '_wpnonce', '_wp_http_referer', 'Update', 'action', 'rich_editing', 'autosave_interval', 'deactivated_plugins', 'can_compress_scripts', 'page_uris', 'update_core', 'update_plugins', 'update_themes', 'doing_cron', 'random_seed', 'rss_excerpt_length', 'secret', 'use_linksupdate', 'default_comment_status_page', 'wporg_popular_tags', 'what_to_show', 'rss_language', 'language', 'enable_xmlrpc', 'enable_app', 'embed_autourls', 'default_post_edit_rows', 'gzipcompression', 'advanced_edit');
    foreach ($unusedoptions as $option) {
        delete_option($option);
    }
    // Delete obsolete magpie stuff.
    $wpdb->query("DELETE FROM {$wpdb->options} WHERE option_name REGEXP '^rss_[0-9a-f]{32}(_ts)?\$'");
    // Clear expired transients.
    delete_expired_transients(true);
}

WordPress Version: 4.2

/**
 * Create WordPress options and set the default values.
 *
 * @since 1.5.0
 * @since 5.1.0 The $options parameter has been added.
 *
 * @global wpdb $wpdb                  WordPress database abstraction object.
 * @global int  $wp_db_version         WordPress database version.
 * @global int  $wp_current_db_version The old (current) database version.
 *
 * @param array $options Optional. Custom option $key => $value pairs to use. Default empty array.
 */
function populate_options(array $options = array())
{
    global $wpdb, $wp_db_version, $wp_current_db_version;
    $guessurl = wp_guess_url();
    /**
     * Fires before creating WordPress options and populating their default values.
     *
     * @since 2.6.0
     */
    do_action('populate_options');
    if (ini_get('safe_mode')) {
        // Safe mode can break mkdir() so use a flat structure by default.
        $uploads_use_yearmonth_folders = 0;
    } else {
        $uploads_use_yearmonth_folders = 1;
    }
    // If WP_DEFAULT_THEME doesn't exist, fall back to the latest core default theme.
    $stylesheet = WP_DEFAULT_THEME;
    $template = WP_DEFAULT_THEME;
    $theme = wp_get_theme(WP_DEFAULT_THEME);
    if (!$theme->exists()) {
        $theme = WP_Theme::get_core_default_theme();
    }
    // If we can't find a core default theme, WP_DEFAULT_THEME is the best we can do.
    if ($theme) {
        $stylesheet = $theme->get_stylesheet();
        $template = $theme->get_template();
    }
    $timezone_string = '';
    $gmt_offset = 0;
    /*
     * translators: default GMT offset or timezone string. Must be either a valid offset (-12 to 14)
     * or a valid timezone string (America/New_York). See https://www.php.net/manual/en/timezones.php
     * for all timezone strings supported by PHP.
     */
    $offset_or_tz = _x('0', 'default GMT offset or timezone string');
    // phpcs:ignore WordPress.WP.I18n.NoEmptyStrings
    if (is_numeric($offset_or_tz)) {
        $gmt_offset = $offset_or_tz;
    } elseif ($offset_or_tz && in_array($offset_or_tz, timezone_identifiers_list())) {
        $timezone_string = $offset_or_tz;
    }
    $defaults = array(
        'siteurl' => $guessurl,
        'home' => $guessurl,
        'blogname' => __('My Site'),
        /* translators: Site tagline. */
        'blogdescription' => __('Just another WordPress site'),
        'users_can_register' => 0,
        'admin_email' => '[email protected]',
        /* translators: Default start of the week. 0 = Sunday, 1 = Monday. */
        'start_of_week' => _x('1', 'start of week'),
        'use_balanceTags' => 0,
        'use_smilies' => 1,
        'require_name_email' => 1,
        'comments_notify' => 1,
        'posts_per_rss' => 10,
        'rss_use_excerpt' => 0,
        'mailserver_url' => 'mail.example.com',
        'mailserver_login' => '[email protected]',
        'mailserver_pass' => 'password',
        'mailserver_port' => 110,
        'default_category' => 1,
        'default_comment_status' => 'open',
        'default_ping_status' => 'open',
        'default_pingback_flag' => 1,
        'posts_per_page' => 10,
        /* translators: Default date format, see https://www.php.net/date */
        'date_format' => __('F j, Y'),
        /* translators: Default time format, see https://www.php.net/date */
        'time_format' => __('g:i a'),
        /* translators: Links last updated date format, see https://www.php.net/date */
        'links_updated_date_format' => __('F j, Y g:i a'),
        'comment_moderation' => 0,
        'moderation_notify' => 1,
        'permalink_structure' => '',
        'rewrite_rules' => '',
        'hack_file' => 0,
        'blog_charset' => 'UTF-8',
        'moderation_keys' => '',
        'active_plugins' => array(),
        'category_base' => '',
        'ping_sites' => 'http://rpc.pingomatic.com/',
        'comment_max_links' => 2,
        'gmt_offset' => $gmt_offset,
        // 1.5
        'default_email_category' => 1,
        'recently_edited' => '',
        'template' => $template,
        'stylesheet' => $stylesheet,
        'comment_whitelist' => 1,
        'blacklist_keys' => '',
        'comment_registration' => 0,
        'html_type' => 'text/html',
        // 1.5.1
        'use_trackback' => 0,
        // 2.0
        'default_role' => 'subscriber',
        'db_version' => $wp_db_version,
        // 2.0.1
        'uploads_use_yearmonth_folders' => $uploads_use_yearmonth_folders,
        'upload_path' => '',
        // 2.1
        'blog_public' => '1',
        'default_link_category' => 2,
        'show_on_front' => 'posts',
        // 2.2
        'tag_base' => '',
        // 2.5
        'show_avatars' => '1',
        'avatar_rating' => 'G',
        'upload_url_path' => '',
        'thumbnail_size_w' => 150,
        'thumbnail_size_h' => 150,
        'thumbnail_crop' => 1,
        'medium_size_w' => 300,
        'medium_size_h' => 300,
        // 2.6
        'avatar_default' => 'mystery',
        // 2.7
        'large_size_w' => 1024,
        'large_size_h' => 1024,
        'image_default_link_type' => 'none',
        'image_default_size' => '',
        'image_default_align' => '',
        'close_comments_for_old_posts' => 0,
        'close_comments_days_old' => 14,
        'thread_comments' => 1,
        'thread_comments_depth' => 5,
        'page_comments' => 0,
        'comments_per_page' => 50,
        'default_comments_page' => 'newest',
        'comment_order' => 'asc',
        'sticky_posts' => array(),
        'widget_categories' => array(),
        'widget_text' => array(),
        'widget_rss' => array(),
        'uninstall_plugins' => array(),
        // 2.8
        'timezone_string' => $timezone_string,
        // 3.0
        'page_for_posts' => 0,
        'page_on_front' => 0,
        // 3.1
        'default_post_format' => 0,
        // 3.5
        'link_manager_enabled' => 0,
        // 4.3.0
        'finished_splitting_shared_terms' => 1,
        'site_icon' => 0,
        // 4.4.0
        'medium_large_size_w' => 768,
        'medium_large_size_h' => 0,
        // 4.9.6
        'wp_page_for_privacy_policy' => 0,
        // 4.9.8
        'show_comments_cookies_opt_in' => 1,
        // 5.3.0
        'admin_email_lifespan' => time() + 6 * MONTH_IN_SECONDS,
    );
    // 3.3
    if (!is_multisite()) {
        $defaults['initial_db_version'] = (!empty($wp_current_db_version) && $wp_current_db_version < $wp_db_version) ? $wp_current_db_version : $wp_db_version;
    }
    // 3.0 multisite.
    if (is_multisite()) {
        /* translators: %s: Network title. */
        $defaults['blogdescription'] = sprintf(__('Just another %s site'), get_network()->site_name);
        $defaults['permalink_structure'] = '/%year%/%monthnum%/%day%/%postname%/';
    }
    $options = wp_parse_args($options, $defaults);
    // Set autoload to no for these options.
    $fat_options = array('moderation_keys', 'recently_edited', 'blacklist_keys', 'uninstall_plugins');
    $keys = "'" . implode("', '", array_keys($options)) . "'";
    $existing_options = $wpdb->get_col("SELECT option_name FROM {$wpdb->options} WHERE option_name in ( {$keys} )");
    // phpcs:ignore WordPress.DB.PreparedSQL.NotPrepared
    $insert = '';
    foreach ($options as $option => $value) {
        if (in_array($option, $existing_options)) {
            continue;
        }
        if (in_array($option, $fat_options)) {
            $autoload = 'no';
        } else {
            $autoload = 'yes';
        }
        if (is_array($value)) {
            $value = serialize($value);
        }
        if (!empty($insert)) {
            $insert .= ', ';
        }
        $insert .= $wpdb->prepare('(%s, %s, %s)', $option, $value, $autoload);
    }
    if (!empty($insert)) {
        $wpdb->query("INSERT INTO {$wpdb->options} (option_name, option_value, autoload) VALUES " . $insert);
        // phpcs:ignore WordPress.DB.PreparedSQL.NotPrepared
    }
    // In case it is set, but blank, update "home".
    if (!__get_option('home')) {
        update_option('home', $guessurl);
    }
    // Delete unused options.
    $unusedoptions = array('blodotgsping_url', 'bodyterminator', 'emailtestonly', 'phoneemail_separator', 'smilies_directory', 'subjectprefix', 'use_bbcode', 'use_blodotgsping', 'use_phoneemail', 'use_quicktags', 'use_weblogsping', 'weblogs_cache_file', 'use_preview', 'use_htmltrans', 'smilies_directory', 'fileupload_allowedusers', 'use_phoneemail', 'default_post_status', 'default_post_category', 'archive_mode', 'time_difference', 'links_minadminlevel', 'links_use_adminlevels', 'links_rating_type', 'links_rating_char', 'links_rating_ignore_zero', 'links_rating_single_image', 'links_rating_image0', 'links_rating_image1', 'links_rating_image2', 'links_rating_image3', 'links_rating_image4', 'links_rating_image5', 'links_rating_image6', 'links_rating_image7', 'links_rating_image8', 'links_rating_image9', 'links_recently_updated_time', 'links_recently_updated_prepend', 'links_recently_updated_append', 'weblogs_cacheminutes', 'comment_allowed_tags', 'search_engine_friendly_urls', 'default_geourl_lat', 'default_geourl_lon', 'use_default_geourl', 'weblogs_xml_url', 'new_users_can_blog', '_wpnonce', '_wp_http_referer', 'Update', 'action', 'rich_editing', 'autosave_interval', 'deactivated_plugins', 'can_compress_scripts', 'page_uris', 'update_core', 'update_plugins', 'update_themes', 'doing_cron', 'random_seed', 'rss_excerpt_length', 'secret', 'use_linksupdate', 'default_comment_status_page', 'wporg_popular_tags', 'what_to_show', 'rss_language', 'language', 'enable_xmlrpc', 'enable_app', 'embed_autourls', 'default_post_edit_rows', 'gzipcompression', 'advanced_edit');
    foreach ($unusedoptions as $option) {
        delete_option($option);
    }
    // Delete obsolete magpie stuff.
    $wpdb->query("DELETE FROM {$wpdb->options} WHERE option_name REGEXP '^rss_[0-9a-f]{32}(_ts)?\$'");
    // Clear expired transients.
    delete_expired_transients(true);
}

WordPress Version: .15

/**
 * Create WordPress options and set the default values.
 *
 * @since 1.5.0
 * @since 5.1.0 The $options parameter has been added.
 *
 * @global wpdb $wpdb                  WordPress database abstraction object.
 * @global int  $wp_db_version         WordPress database version.
 * @global int  $wp_current_db_version The old (current) database version.
 *
 * @param array $options Optional. Custom option $key => $value pairs to use. Default empty array.
 */
function populate_options(array $options = array())
{
    global $wpdb, $wp_db_version, $wp_current_db_version;
    $guessurl = wp_guess_url();
    /**
     * Fires before creating WordPress options and populating their default values.
     *
     * @since 2.6.0
     */
    do_action('populate_options');
    if (ini_get('safe_mode')) {
        // Safe mode can break mkdir() so use a flat structure by default.
        $uploads_use_yearmonth_folders = 0;
    } else {
        $uploads_use_yearmonth_folders = 1;
    }
    // If WP_DEFAULT_THEME doesn't exist, fall back to the latest core default theme.
    $stylesheet = WP_DEFAULT_THEME;
    $template = WP_DEFAULT_THEME;
    $theme = wp_get_theme(WP_DEFAULT_THEME);
    if (!$theme->exists()) {
        $theme = WP_Theme::get_core_default_theme();
    }
    // If we can't find a core default theme, WP_DEFAULT_THEME is the best we can do.
    if ($theme) {
        $stylesheet = $theme->get_stylesheet();
        $template = $theme->get_template();
    }
    $timezone_string = '';
    $gmt_offset = 0;
    /*
     * translators: default GMT offset or timezone string. Must be either a valid offset (-12 to 14)
     * or a valid timezone string (America/New_York). See https://www.php.net/manual/en/timezones.php
     * for all timezone strings supported by PHP.
     */
    $offset_or_tz = _x('0', 'default GMT offset or timezone string');
    // phpcs:ignore WordPress.WP.I18n.NoEmptyStrings
    if (is_numeric($offset_or_tz)) {
        $gmt_offset = $offset_or_tz;
    } elseif ($offset_or_tz && in_array($offset_or_tz, timezone_identifiers_list())) {
        $timezone_string = $offset_or_tz;
    }
    $defaults = array(
        'siteurl' => $guessurl,
        'home' => $guessurl,
        'blogname' => __('My Site'),
        /* translators: Site tagline. */
        'blogdescription' => __('Just another WordPress site'),
        'users_can_register' => 0,
        'admin_email' => '[email protected]',
        /* translators: Default start of the week. 0 = Sunday, 1 = Monday. */
        'start_of_week' => _x('1', 'start of week'),
        'use_balanceTags' => 0,
        'use_smilies' => 1,
        'require_name_email' => 1,
        'comments_notify' => 1,
        'posts_per_rss' => 10,
        'rss_use_excerpt' => 0,
        'mailserver_url' => 'mail.example.com',
        'mailserver_login' => '[email protected]',
        'mailserver_pass' => 'password',
        'mailserver_port' => 110,
        'default_category' => 1,
        'default_comment_status' => 'open',
        'default_ping_status' => 'open',
        'default_pingback_flag' => 1,
        'posts_per_page' => 10,
        /* translators: Default date format, see https://www.php.net/date */
        'date_format' => __('F j, Y'),
        /* translators: Default time format, see https://www.php.net/date */
        'time_format' => __('g:i a'),
        /* translators: Links last updated date format, see https://www.php.net/date */
        'links_updated_date_format' => __('F j, Y g:i a'),
        'comment_moderation' => 0,
        'moderation_notify' => 1,
        'permalink_structure' => '',
        'rewrite_rules' => '',
        'hack_file' => 0,
        'blog_charset' => 'UTF-8',
        'moderation_keys' => '',
        'active_plugins' => array(),
        'category_base' => '',
        'ping_sites' => 'http://rpc.pingomatic.com/',
        'comment_max_links' => 2,
        'gmt_offset' => $gmt_offset,
        // 1.5
        'default_email_category' => 1,
        'recently_edited' => '',
        'template' => $template,
        'stylesheet' => $stylesheet,
        'comment_whitelist' => 1,
        'blacklist_keys' => '',
        'comment_registration' => 0,
        'html_type' => 'text/html',
        // 1.5.1
        'use_trackback' => 0,
        // 2.0
        'default_role' => 'subscriber',
        'db_version' => $wp_db_version,
        // 2.0.1
        'uploads_use_yearmonth_folders' => $uploads_use_yearmonth_folders,
        'upload_path' => '',
        // 2.1
        'blog_public' => '1',
        'default_link_category' => 2,
        'show_on_front' => 'posts',
        // 2.2
        'tag_base' => '',
        // 2.5
        'show_avatars' => '1',
        'avatar_rating' => 'G',
        'upload_url_path' => '',
        'thumbnail_size_w' => 150,
        'thumbnail_size_h' => 150,
        'thumbnail_crop' => 1,
        'medium_size_w' => 300,
        'medium_size_h' => 300,
        // 2.6
        'avatar_default' => 'mystery',
        // 2.7
        'large_size_w' => 1024,
        'large_size_h' => 1024,
        'image_default_link_type' => 'none',
        'image_default_size' => '',
        'image_default_align' => '',
        'close_comments_for_old_posts' => 0,
        'close_comments_days_old' => 14,
        'thread_comments' => 1,
        'thread_comments_depth' => 5,
        'page_comments' => 0,
        'comments_per_page' => 50,
        'default_comments_page' => 'newest',
        'comment_order' => 'asc',
        'sticky_posts' => array(),
        'widget_categories' => array(),
        'widget_text' => array(),
        'widget_rss' => array(),
        'uninstall_plugins' => array(),
        // 2.8
        'timezone_string' => $timezone_string,
        // 3.0
        'page_for_posts' => 0,
        'page_on_front' => 0,
        // 3.1
        'default_post_format' => 0,
        // 3.5
        'link_manager_enabled' => 0,
        // 4.3.0
        'finished_splitting_shared_terms' => 1,
        'site_icon' => 0,
        // 4.4.0
        'medium_large_size_w' => 768,
        'medium_large_size_h' => 0,
        // 4.9.6
        'wp_page_for_privacy_policy' => 0,
        // 4.9.8
        'show_comments_cookies_opt_in' => 1,
        // 5.3.0
        'admin_email_lifespan' => time() + 6 * MONTH_IN_SECONDS,
    );
    // 3.3
    if (!is_multisite()) {
        $defaults['initial_db_version'] = (!empty($wp_current_db_version) && $wp_current_db_version < $wp_db_version) ? $wp_current_db_version : $wp_db_version;
    }
    // 3.0 multisite.
    if (is_multisite()) {
        /* translators: %s: Network title. */
        $defaults['blogdescription'] = sprintf(__('Just another %s site'), get_network()->site_name);
        $defaults['permalink_structure'] = '/%year%/%monthnum%/%day%/%postname%/';
    }
    $options = wp_parse_args($options, $defaults);
    // Set autoload to no for these options.
    $fat_options = array('moderation_keys', 'recently_edited', 'blacklist_keys', 'uninstall_plugins');
    $keys = "'" . implode("', '", array_keys($options)) . "'";
    $existing_options = $wpdb->get_col("SELECT option_name FROM {$wpdb->options} WHERE option_name in ( {$keys} )");
    // phpcs:ignore WordPress.DB.PreparedSQL.NotPrepared
    $insert = '';
    foreach ($options as $option => $value) {
        if (in_array($option, $existing_options)) {
            continue;
        }
        if (in_array($option, $fat_options)) {
            $autoload = 'no';
        } else {
            $autoload = 'yes';
        }
        if (!empty($insert)) {
            $insert .= ', ';
        }
        $value = maybe_serialize(sanitize_option($option, $value));
        $insert .= $wpdb->prepare('(%s, %s, %s)', $option, $value, $autoload);
    }
    if (!empty($insert)) {
        $wpdb->query("INSERT INTO {$wpdb->options} (option_name, option_value, autoload) VALUES " . $insert);
        // phpcs:ignore WordPress.DB.PreparedSQL.NotPrepared
    }
    // In case it is set, but blank, update "home".
    if (!__get_option('home')) {
        update_option('home', $guessurl);
    }
    // Delete unused options.
    $unusedoptions = array('blodotgsping_url', 'bodyterminator', 'emailtestonly', 'phoneemail_separator', 'smilies_directory', 'subjectprefix', 'use_bbcode', 'use_blodotgsping', 'use_phoneemail', 'use_quicktags', 'use_weblogsping', 'weblogs_cache_file', 'use_preview', 'use_htmltrans', 'smilies_directory', 'fileupload_allowedusers', 'use_phoneemail', 'default_post_status', 'default_post_category', 'archive_mode', 'time_difference', 'links_minadminlevel', 'links_use_adminlevels', 'links_rating_type', 'links_rating_char', 'links_rating_ignore_zero', 'links_rating_single_image', 'links_rating_image0', 'links_rating_image1', 'links_rating_image2', 'links_rating_image3', 'links_rating_image4', 'links_rating_image5', 'links_rating_image6', 'links_rating_image7', 'links_rating_image8', 'links_rating_image9', 'links_recently_updated_time', 'links_recently_updated_prepend', 'links_recently_updated_append', 'weblogs_cacheminutes', 'comment_allowed_tags', 'search_engine_friendly_urls', 'default_geourl_lat', 'default_geourl_lon', 'use_default_geourl', 'weblogs_xml_url', 'new_users_can_blog', '_wpnonce', '_wp_http_referer', 'Update', 'action', 'rich_editing', 'autosave_interval', 'deactivated_plugins', 'can_compress_scripts', 'page_uris', 'update_core', 'update_plugins', 'update_themes', 'doing_cron', 'random_seed', 'rss_excerpt_length', 'secret', 'use_linksupdate', 'default_comment_status_page', 'wporg_popular_tags', 'what_to_show', 'rss_language', 'language', 'enable_xmlrpc', 'enable_app', 'embed_autourls', 'default_post_edit_rows', 'gzipcompression', 'advanced_edit');
    foreach ($unusedoptions as $option) {
        delete_option($option);
    }
    // Delete obsolete magpie stuff.
    $wpdb->query("DELETE FROM {$wpdb->options} WHERE option_name REGEXP '^rss_[0-9a-f]{32}(_ts)?\$'");
    // Clear expired transients.
    delete_expired_transients(true);
}

WordPress Version: 5.4

/**
 * Create WordPress options and set the default values.
 *
 * @since 1.5.0
 * @since 5.1.0 The $options parameter has been added.
 *
 * @global wpdb $wpdb                  WordPress database abstraction object.
 * @global int  $wp_db_version         WordPress database version.
 * @global int  $wp_current_db_version The old (current) database version.
 *
 * @param array $options Optional. Custom option $key => $value pairs to use. Default empty array.
 */
function populate_options(array $options = array())
{
    global $wpdb, $wp_db_version, $wp_current_db_version;
    $guessurl = wp_guess_url();
    /**
     * Fires before creating WordPress options and populating their default values.
     *
     * @since 2.6.0
     */
    do_action('populate_options');
    if (ini_get('safe_mode')) {
        // Safe mode can break mkdir() so use a flat structure by default.
        $uploads_use_yearmonth_folders = 0;
    } else {
        $uploads_use_yearmonth_folders = 1;
    }
    // If WP_DEFAULT_THEME doesn't exist, fall back to the latest core default theme.
    $stylesheet = WP_DEFAULT_THEME;
    $template = WP_DEFAULT_THEME;
    $theme = wp_get_theme(WP_DEFAULT_THEME);
    if (!$theme->exists()) {
        $theme = WP_Theme::get_core_default_theme();
    }
    // If we can't find a core default theme, WP_DEFAULT_THEME is the best we can do.
    if ($theme) {
        $stylesheet = $theme->get_stylesheet();
        $template = $theme->get_template();
    }
    $timezone_string = '';
    $gmt_offset = 0;
    /*
     * translators: default GMT offset or timezone string. Must be either a valid offset (-12 to 14)
     * or a valid timezone string (America/New_York). See https://www.php.net/manual/en/timezones.php
     * for all timezone strings supported by PHP.
     */
    $offset_or_tz = _x('0', 'default GMT offset or timezone string');
    // phpcs:ignore WordPress.WP.I18n.NoEmptyStrings
    if (is_numeric($offset_or_tz)) {
        $gmt_offset = $offset_or_tz;
    } elseif ($offset_or_tz && in_array($offset_or_tz, timezone_identifiers_list())) {
        $timezone_string = $offset_or_tz;
    }
    $defaults = array(
        'siteurl' => $guessurl,
        'home' => $guessurl,
        'blogname' => __('My Site'),
        /* translators: Site tagline. */
        'blogdescription' => __('Just another WordPress site'),
        'users_can_register' => 0,
        'admin_email' => '[email protected]',
        /* translators: Default start of the week. 0 = Sunday, 1 = Monday. */
        'start_of_week' => _x('1', 'start of week'),
        'use_balanceTags' => 0,
        'use_smilies' => 1,
        'require_name_email' => 1,
        'comments_notify' => 1,
        'posts_per_rss' => 10,
        'rss_use_excerpt' => 0,
        'mailserver_url' => 'mail.example.com',
        'mailserver_login' => '[email protected]',
        'mailserver_pass' => 'password',
        'mailserver_port' => 110,
        'default_category' => 1,
        'default_comment_status' => 'open',
        'default_ping_status' => 'open',
        'default_pingback_flag' => 1,
        'posts_per_page' => 10,
        /* translators: Default date format, see https://www.php.net/date */
        'date_format' => __('F j, Y'),
        /* translators: Default time format, see https://www.php.net/date */
        'time_format' => __('g:i a'),
        /* translators: Links last updated date format, see https://www.php.net/date */
        'links_updated_date_format' => __('F j, Y g:i a'),
        'comment_moderation' => 0,
        'moderation_notify' => 1,
        'permalink_structure' => '',
        'rewrite_rules' => '',
        'hack_file' => 0,
        'blog_charset' => 'UTF-8',
        'moderation_keys' => '',
        'active_plugins' => array(),
        'category_base' => '',
        'ping_sites' => 'http://rpc.pingomatic.com/',
        'comment_max_links' => 2,
        'gmt_offset' => $gmt_offset,
        // 1.5
        'default_email_category' => 1,
        'recently_edited' => '',
        'template' => $template,
        'stylesheet' => $stylesheet,
        'comment_whitelist' => 1,
        'blacklist_keys' => '',
        'comment_registration' => 0,
        'html_type' => 'text/html',
        // 1.5.1
        'use_trackback' => 0,
        // 2.0
        'default_role' => 'subscriber',
        'db_version' => $wp_db_version,
        // 2.0.1
        'uploads_use_yearmonth_folders' => $uploads_use_yearmonth_folders,
        'upload_path' => '',
        // 2.1
        'blog_public' => '1',
        'default_link_category' => 2,
        'show_on_front' => 'posts',
        // 2.2
        'tag_base' => '',
        // 2.5
        'show_avatars' => '1',
        'avatar_rating' => 'G',
        'upload_url_path' => '',
        'thumbnail_size_w' => 150,
        'thumbnail_size_h' => 150,
        'thumbnail_crop' => 1,
        'medium_size_w' => 300,
        'medium_size_h' => 300,
        // 2.6
        'avatar_default' => 'mystery',
        // 2.7
        'large_size_w' => 1024,
        'large_size_h' => 1024,
        'image_default_link_type' => 'none',
        'image_default_size' => '',
        'image_default_align' => '',
        'close_comments_for_old_posts' => 0,
        'close_comments_days_old' => 14,
        'thread_comments' => 1,
        'thread_comments_depth' => 5,
        'page_comments' => 0,
        'comments_per_page' => 50,
        'default_comments_page' => 'newest',
        'comment_order' => 'asc',
        'sticky_posts' => array(),
        'widget_categories' => array(),
        'widget_text' => array(),
        'widget_rss' => array(),
        'uninstall_plugins' => array(),
        // 2.8
        'timezone_string' => $timezone_string,
        // 3.0
        'page_for_posts' => 0,
        'page_on_front' => 0,
        // 3.1
        'default_post_format' => 0,
        // 3.5
        'link_manager_enabled' => 0,
        // 4.3.0
        'finished_splitting_shared_terms' => 1,
        'site_icon' => 0,
        // 4.4.0
        'medium_large_size_w' => 768,
        'medium_large_size_h' => 0,
        // 4.9.6
        'wp_page_for_privacy_policy' => 0,
        // 4.9.8
        'show_comments_cookies_opt_in' => 1,
        // 5.3.0
        'admin_email_lifespan' => time() + 6 * MONTH_IN_SECONDS,
    );
    // 3.3
    if (!is_multisite()) {
        $defaults['initial_db_version'] = (!empty($wp_current_db_version) && $wp_current_db_version < $wp_db_version) ? $wp_current_db_version : $wp_db_version;
    }
    // 3.0 multisite.
    if (is_multisite()) {
        /* translators: %s: Network title. */
        $defaults['blogdescription'] = sprintf(__('Just another %s site'), get_network()->site_name);
        $defaults['permalink_structure'] = '/%year%/%monthnum%/%day%/%postname%/';
    }
    $options = wp_parse_args($options, $defaults);
    // Set autoload to no for these options.
    $fat_options = array('moderation_keys', 'recently_edited', 'blacklist_keys', 'uninstall_plugins');
    $keys = "'" . implode("', '", array_keys($options)) . "'";
    $existing_options = $wpdb->get_col("SELECT option_name FROM {$wpdb->options} WHERE option_name in ( {$keys} )");
    // phpcs:ignore WordPress.DB.PreparedSQL.NotPrepared
    $insert = '';
    foreach ($options as $option => $value) {
        if (in_array($option, $existing_options)) {
            continue;
        }
        if (in_array($option, $fat_options)) {
            $autoload = 'no';
        } else {
            $autoload = 'yes';
        }
        if (is_array($value)) {
            $value = serialize($value);
        }
        if (!empty($insert)) {
            $insert .= ', ';
        }
        $insert .= $wpdb->prepare('(%s, %s, %s)', $option, $value, $autoload);
    }
    if (!empty($insert)) {
        $wpdb->query("INSERT INTO {$wpdb->options} (option_name, option_value, autoload) VALUES " . $insert);
        // phpcs:ignore WordPress.DB.PreparedSQL.NotPrepared
    }
    // In case it is set, but blank, update "home".
    if (!__get_option('home')) {
        update_option('home', $guessurl);
    }
    // Delete unused options.
    $unusedoptions = array('blodotgsping_url', 'bodyterminator', 'emailtestonly', 'phoneemail_separator', 'smilies_directory', 'subjectprefix', 'use_bbcode', 'use_blodotgsping', 'use_phoneemail', 'use_quicktags', 'use_weblogsping', 'weblogs_cache_file', 'use_preview', 'use_htmltrans', 'smilies_directory', 'fileupload_allowedusers', 'use_phoneemail', 'default_post_status', 'default_post_category', 'archive_mode', 'time_difference', 'links_minadminlevel', 'links_use_adminlevels', 'links_rating_type', 'links_rating_char', 'links_rating_ignore_zero', 'links_rating_single_image', 'links_rating_image0', 'links_rating_image1', 'links_rating_image2', 'links_rating_image3', 'links_rating_image4', 'links_rating_image5', 'links_rating_image6', 'links_rating_image7', 'links_rating_image8', 'links_rating_image9', 'links_recently_updated_time', 'links_recently_updated_prepend', 'links_recently_updated_append', 'weblogs_cacheminutes', 'comment_allowed_tags', 'search_engine_friendly_urls', 'default_geourl_lat', 'default_geourl_lon', 'use_default_geourl', 'weblogs_xml_url', 'new_users_can_blog', '_wpnonce', '_wp_http_referer', 'Update', 'action', 'rich_editing', 'autosave_interval', 'deactivated_plugins', 'can_compress_scripts', 'page_uris', 'update_core', 'update_plugins', 'update_themes', 'doing_cron', 'random_seed', 'rss_excerpt_length', 'secret', 'use_linksupdate', 'default_comment_status_page', 'wporg_popular_tags', 'what_to_show', 'rss_language', 'language', 'enable_xmlrpc', 'enable_app', 'embed_autourls', 'default_post_edit_rows', 'gzipcompression', 'advanced_edit');
    foreach ($unusedoptions as $option) {
        delete_option($option);
    }
    // Delete obsolete magpie stuff.
    $wpdb->query("DELETE FROM {$wpdb->options} WHERE option_name REGEXP '^rss_[0-9a-f]{32}(_ts)?\$'");
    // Clear expired transients.
    delete_expired_transients(true);
}

WordPress Version: 3.2

/**
 * Create WordPress options and set the default values.
 *
 * @since 1.5.0
 * @since 5.1.0 The $options parameter has been added.
 *
 * @global wpdb $wpdb                  WordPress database abstraction object.
 * @global int  $wp_db_version         WordPress database version.
 * @global int  $wp_current_db_version The old (current) database version.
 *
 * @param array $options Optional. Custom option $key => $value pairs to use. Default empty array.
 */
function populate_options(array $options = array())
{
    global $wpdb, $wp_db_version, $wp_current_db_version;
    $guessurl = wp_guess_url();
    /**
     * Fires before creating WordPress options and populating their default values.
     *
     * @since 2.6.0
     */
    do_action('populate_options');
    if (ini_get('safe_mode')) {
        // Safe mode can break mkdir() so use a flat structure by default.
        $uploads_use_yearmonth_folders = 0;
    } else {
        $uploads_use_yearmonth_folders = 1;
    }
    // If WP_DEFAULT_THEME doesn't exist, fall back to the latest core default theme.
    $stylesheet = WP_DEFAULT_THEME;
    $template = WP_DEFAULT_THEME;
    $theme = wp_get_theme(WP_DEFAULT_THEME);
    if (!$theme->exists()) {
        $theme = WP_Theme::get_core_default_theme();
    }
    // If we can't find a core default theme, WP_DEFAULT_THEME is the best we can do.
    if ($theme) {
        $stylesheet = $theme->get_stylesheet();
        $template = $theme->get_template();
    }
    $timezone_string = '';
    $gmt_offset = 0;
    /*
     * translators: default GMT offset or timezone string. Must be either a valid offset (-12 to 14)
     * or a valid timezone string (America/New_York). See https://secure.php.net/manual/en/timezones.php
     * for all timezone strings supported by PHP.
     */
    $offset_or_tz = _x('0', 'default GMT offset or timezone string');
    // phpcs:ignore WordPress.WP.I18n.NoEmptyStrings
    if (is_numeric($offset_or_tz)) {
        $gmt_offset = $offset_or_tz;
    } elseif ($offset_or_tz && in_array($offset_or_tz, timezone_identifiers_list())) {
        $timezone_string = $offset_or_tz;
    }
    $defaults = array(
        'siteurl' => $guessurl,
        'home' => $guessurl,
        'blogname' => __('My Site'),
        /* translators: Site tagline. */
        'blogdescription' => __('Just another WordPress site'),
        'users_can_register' => 0,
        'admin_email' => '[email protected]',
        /* translators: Default start of the week. 0 = Sunday, 1 = Monday. */
        'start_of_week' => _x('1', 'start of week'),
        'use_balanceTags' => 0,
        'use_smilies' => 1,
        'require_name_email' => 1,
        'comments_notify' => 1,
        'posts_per_rss' => 10,
        'rss_use_excerpt' => 0,
        'mailserver_url' => 'mail.example.com',
        'mailserver_login' => '[email protected]',
        'mailserver_pass' => 'password',
        'mailserver_port' => 110,
        'default_category' => 1,
        'default_comment_status' => 'open',
        'default_ping_status' => 'open',
        'default_pingback_flag' => 1,
        'posts_per_page' => 10,
        /* translators: Default date format, see https://secure.php.net/date */
        'date_format' => __('F j, Y'),
        /* translators: Default time format, see https://secure.php.net/date */
        'time_format' => __('g:i a'),
        /* translators: Links last updated date format, see https://secure.php.net/date */
        'links_updated_date_format' => __('F j, Y g:i a'),
        'comment_moderation' => 0,
        'moderation_notify' => 1,
        'permalink_structure' => '',
        'rewrite_rules' => '',
        'hack_file' => 0,
        'blog_charset' => 'UTF-8',
        'moderation_keys' => '',
        'active_plugins' => array(),
        'category_base' => '',
        'ping_sites' => 'http://rpc.pingomatic.com/',
        'comment_max_links' => 2,
        'gmt_offset' => $gmt_offset,
        // 1.5
        'default_email_category' => 1,
        'recently_edited' => '',
        'template' => $template,
        'stylesheet' => $stylesheet,
        'comment_whitelist' => 1,
        'blacklist_keys' => '',
        'comment_registration' => 0,
        'html_type' => 'text/html',
        // 1.5.1
        'use_trackback' => 0,
        // 2.0
        'default_role' => 'subscriber',
        'db_version' => $wp_db_version,
        // 2.0.1
        'uploads_use_yearmonth_folders' => $uploads_use_yearmonth_folders,
        'upload_path' => '',
        // 2.1
        'blog_public' => '1',
        'default_link_category' => 2,
        'show_on_front' => 'posts',
        // 2.2
        'tag_base' => '',
        // 2.5
        'show_avatars' => '1',
        'avatar_rating' => 'G',
        'upload_url_path' => '',
        'thumbnail_size_w' => 150,
        'thumbnail_size_h' => 150,
        'thumbnail_crop' => 1,
        'medium_size_w' => 300,
        'medium_size_h' => 300,
        // 2.6
        'avatar_default' => 'mystery',
        // 2.7
        'large_size_w' => 1024,
        'large_size_h' => 1024,
        'image_default_link_type' => 'none',
        'image_default_size' => '',
        'image_default_align' => '',
        'close_comments_for_old_posts' => 0,
        'close_comments_days_old' => 14,
        'thread_comments' => 1,
        'thread_comments_depth' => 5,
        'page_comments' => 0,
        'comments_per_page' => 50,
        'default_comments_page' => 'newest',
        'comment_order' => 'asc',
        'sticky_posts' => array(),
        'widget_categories' => array(),
        'widget_text' => array(),
        'widget_rss' => array(),
        'uninstall_plugins' => array(),
        // 2.8
        'timezone_string' => $timezone_string,
        // 3.0
        'page_for_posts' => 0,
        'page_on_front' => 0,
        // 3.1
        'default_post_format' => 0,
        // 3.5
        'link_manager_enabled' => 0,
        // 4.3.0
        'finished_splitting_shared_terms' => 1,
        'site_icon' => 0,
        // 4.4.0
        'medium_large_size_w' => 768,
        'medium_large_size_h' => 0,
        // 4.9.6
        'wp_page_for_privacy_policy' => 0,
        // 4.9.8
        'show_comments_cookies_opt_in' => 1,
        // 5.3.0
        'admin_email_lifespan' => time() + 6 * MONTH_IN_SECONDS,
    );
    // 3.3
    if (!is_multisite()) {
        $defaults['initial_db_version'] = (!empty($wp_current_db_version) && $wp_current_db_version < $wp_db_version) ? $wp_current_db_version : $wp_db_version;
    }
    // 3.0 multisite
    if (is_multisite()) {
        /* translators: %s: Network title. */
        $defaults['blogdescription'] = sprintf(__('Just another %s site'), get_network()->site_name);
        $defaults['permalink_structure'] = '/%year%/%monthnum%/%day%/%postname%/';
    }
    $options = wp_parse_args($options, $defaults);
    // Set autoload to no for these options
    $fat_options = array('moderation_keys', 'recently_edited', 'blacklist_keys', 'uninstall_plugins');
    $keys = "'" . implode("', '", array_keys($options)) . "'";
    $existing_options = $wpdb->get_col("SELECT option_name FROM {$wpdb->options} WHERE option_name in ( {$keys} )");
    // phpcs:ignore WordPress.DB.PreparedSQL.NotPrepared
    $insert = '';
    foreach ($options as $option => $value) {
        if (in_array($option, $existing_options)) {
            continue;
        }
        if (in_array($option, $fat_options)) {
            $autoload = 'no';
        } else {
            $autoload = 'yes';
        }
        if (is_array($value)) {
            $value = serialize($value);
        }
        if (!empty($insert)) {
            $insert .= ', ';
        }
        $insert .= $wpdb->prepare('(%s, %s, %s)', $option, $value, $autoload);
    }
    if (!empty($insert)) {
        $wpdb->query("INSERT INTO {$wpdb->options} (option_name, option_value, autoload) VALUES " . $insert);
        // phpcs:ignore WordPress.DB.PreparedSQL.NotPrepared
    }
    // In case it is set, but blank, update "home".
    if (!__get_option('home')) {
        update_option('home', $guessurl);
    }
    // Delete unused options.
    $unusedoptions = array('blodotgsping_url', 'bodyterminator', 'emailtestonly', 'phoneemail_separator', 'smilies_directory', 'subjectprefix', 'use_bbcode', 'use_blodotgsping', 'use_phoneemail', 'use_quicktags', 'use_weblogsping', 'weblogs_cache_file', 'use_preview', 'use_htmltrans', 'smilies_directory', 'fileupload_allowedusers', 'use_phoneemail', 'default_post_status', 'default_post_category', 'archive_mode', 'time_difference', 'links_minadminlevel', 'links_use_adminlevels', 'links_rating_type', 'links_rating_char', 'links_rating_ignore_zero', 'links_rating_single_image', 'links_rating_image0', 'links_rating_image1', 'links_rating_image2', 'links_rating_image3', 'links_rating_image4', 'links_rating_image5', 'links_rating_image6', 'links_rating_image7', 'links_rating_image8', 'links_rating_image9', 'links_recently_updated_time', 'links_recently_updated_prepend', 'links_recently_updated_append', 'weblogs_cacheminutes', 'comment_allowed_tags', 'search_engine_friendly_urls', 'default_geourl_lat', 'default_geourl_lon', 'use_default_geourl', 'weblogs_xml_url', 'new_users_can_blog', '_wpnonce', '_wp_http_referer', 'Update', 'action', 'rich_editing', 'autosave_interval', 'deactivated_plugins', 'can_compress_scripts', 'page_uris', 'update_core', 'update_plugins', 'update_themes', 'doing_cron', 'random_seed', 'rss_excerpt_length', 'secret', 'use_linksupdate', 'default_comment_status_page', 'wporg_popular_tags', 'what_to_show', 'rss_language', 'language', 'enable_xmlrpc', 'enable_app', 'embed_autourls', 'default_post_edit_rows', 'gzipcompression', 'advanced_edit');
    foreach ($unusedoptions as $option) {
        delete_option($option);
    }
    // Delete obsolete magpie stuff.
    $wpdb->query("DELETE FROM {$wpdb->options} WHERE option_name REGEXP '^rss_[0-9a-f]{32}(_ts)?\$'");
    // Clear expired transients
    delete_expired_transients(true);
}

WordPress Version: .17

/**
 * Create WordPress options and set the default values.
 *
 * @since 1.5.0
 * @since 5.1.0 The $options parameter has been added.
 *
 * @global wpdb $wpdb                  WordPress database abstraction object.
 * @global int  $wp_db_version         WordPress database version.
 * @global int  $wp_current_db_version The old (current) database version.
 *
 * @param array $options Optional. Custom option $key => $value pairs to use. Default empty array.
 */
function populate_options(array $options = array())
{
    global $wpdb, $wp_db_version, $wp_current_db_version;
    $guessurl = wp_guess_url();
    /**
     * Fires before creating WordPress options and populating their default values.
     *
     * @since 2.6.0
     */
    do_action('populate_options');
    if (ini_get('safe_mode')) {
        // Safe mode can break mkdir() so use a flat structure by default.
        $uploads_use_yearmonth_folders = 0;
    } else {
        $uploads_use_yearmonth_folders = 1;
    }
    // If WP_DEFAULT_THEME doesn't exist, fall back to the latest core default theme.
    $stylesheet = WP_DEFAULT_THEME;
    $template = WP_DEFAULT_THEME;
    $theme = wp_get_theme(WP_DEFAULT_THEME);
    if (!$theme->exists()) {
        $theme = WP_Theme::get_core_default_theme();
    }
    // If we can't find a core default theme, WP_DEFAULT_THEME is the best we can do.
    if ($theme) {
        $stylesheet = $theme->get_stylesheet();
        $template = $theme->get_template();
    }
    $timezone_string = '';
    $gmt_offset = 0;
    /*
     * translators: default GMT offset or timezone string. Must be either a valid offset (-12 to 14)
     * or a valid timezone string (America/New_York). See https://secure.php.net/manual/en/timezones.php
     * for all timezone strings supported by PHP.
     */
    $offset_or_tz = _x('0', 'default GMT offset or timezone string');
    // phpcs:ignore WordPress.WP.I18n.NoEmptyStrings
    if (is_numeric($offset_or_tz)) {
        $gmt_offset = $offset_or_tz;
    } elseif ($offset_or_tz && in_array($offset_or_tz, timezone_identifiers_list())) {
        $timezone_string = $offset_or_tz;
    }
    $defaults = array(
        'siteurl' => $guessurl,
        'home' => $guessurl,
        'blogname' => __('My Site'),
        /* translators: Site tagline. */
        'blogdescription' => __('Just another WordPress site'),
        'users_can_register' => 0,
        'admin_email' => '[email protected]',
        /* translators: Default start of the week. 0 = Sunday, 1 = Monday. */
        'start_of_week' => _x('1', 'start of week'),
        'use_balanceTags' => 0,
        'use_smilies' => 1,
        'require_name_email' => 1,
        'comments_notify' => 1,
        'posts_per_rss' => 10,
        'rss_use_excerpt' => 0,
        'mailserver_url' => 'mail.example.com',
        'mailserver_login' => '[email protected]',
        'mailserver_pass' => 'password',
        'mailserver_port' => 110,
        'default_category' => 1,
        'default_comment_status' => 'open',
        'default_ping_status' => 'open',
        'default_pingback_flag' => 1,
        'posts_per_page' => 10,
        /* translators: Default date format, see https://secure.php.net/date */
        'date_format' => __('F j, Y'),
        /* translators: Default time format, see https://secure.php.net/date */
        'time_format' => __('g:i a'),
        /* translators: Links last updated date format, see https://secure.php.net/date */
        'links_updated_date_format' => __('F j, Y g:i a'),
        'comment_moderation' => 0,
        'moderation_notify' => 1,
        'permalink_structure' => '',
        'rewrite_rules' => '',
        'hack_file' => 0,
        'blog_charset' => 'UTF-8',
        'moderation_keys' => '',
        'active_plugins' => array(),
        'category_base' => '',
        'ping_sites' => 'http://rpc.pingomatic.com/',
        'comment_max_links' => 2,
        'gmt_offset' => $gmt_offset,
        // 1.5
        'default_email_category' => 1,
        'recently_edited' => '',
        'template' => $template,
        'stylesheet' => $stylesheet,
        'comment_whitelist' => 1,
        'blacklist_keys' => '',
        'comment_registration' => 0,
        'html_type' => 'text/html',
        // 1.5.1
        'use_trackback' => 0,
        // 2.0
        'default_role' => 'subscriber',
        'db_version' => $wp_db_version,
        // 2.0.1
        'uploads_use_yearmonth_folders' => $uploads_use_yearmonth_folders,
        'upload_path' => '',
        // 2.1
        'blog_public' => '1',
        'default_link_category' => 2,
        'show_on_front' => 'posts',
        // 2.2
        'tag_base' => '',
        // 2.5
        'show_avatars' => '1',
        'avatar_rating' => 'G',
        'upload_url_path' => '',
        'thumbnail_size_w' => 150,
        'thumbnail_size_h' => 150,
        'thumbnail_crop' => 1,
        'medium_size_w' => 300,
        'medium_size_h' => 300,
        // 2.6
        'avatar_default' => 'mystery',
        // 2.7
        'large_size_w' => 1024,
        'large_size_h' => 1024,
        'image_default_link_type' => 'none',
        'image_default_size' => '',
        'image_default_align' => '',
        'close_comments_for_old_posts' => 0,
        'close_comments_days_old' => 14,
        'thread_comments' => 1,
        'thread_comments_depth' => 5,
        'page_comments' => 0,
        'comments_per_page' => 50,
        'default_comments_page' => 'newest',
        'comment_order' => 'asc',
        'sticky_posts' => array(),
        'widget_categories' => array(),
        'widget_text' => array(),
        'widget_rss' => array(),
        'uninstall_plugins' => array(),
        // 2.8
        'timezone_string' => $timezone_string,
        // 3.0
        'page_for_posts' => 0,
        'page_on_front' => 0,
        // 3.1
        'default_post_format' => 0,
        // 3.5
        'link_manager_enabled' => 0,
        // 4.3.0
        'finished_splitting_shared_terms' => 1,
        'site_icon' => 0,
        // 4.4.0
        'medium_large_size_w' => 768,
        'medium_large_size_h' => 0,
        // 4.9.6
        'wp_page_for_privacy_policy' => 0,
        // 4.9.8
        'show_comments_cookies_opt_in' => 1,
        // 5.3.0
        'admin_email_lifespan' => time() + 6 * MONTH_IN_SECONDS,
    );
    // 3.3
    if (!is_multisite()) {
        $defaults['initial_db_version'] = (!empty($wp_current_db_version) && $wp_current_db_version < $wp_db_version) ? $wp_current_db_version : $wp_db_version;
    }
    // 3.0 multisite
    if (is_multisite()) {
        /* translators: %s: Network title. */
        $defaults['blogdescription'] = sprintf(__('Just another %s site'), get_network()->site_name);
        $defaults['permalink_structure'] = '/%year%/%monthnum%/%day%/%postname%/';
    }
    $options = wp_parse_args($options, $defaults);
    // Set autoload to no for these options
    $fat_options = array('moderation_keys', 'recently_edited', 'blacklist_keys', 'uninstall_plugins');
    $keys = "'" . implode("', '", array_keys($options)) . "'";
    $existing_options = $wpdb->get_col("SELECT option_name FROM {$wpdb->options} WHERE option_name in ( {$keys} )");
    // phpcs:ignore WordPress.DB.PreparedSQL.NotPrepared
    $insert = '';
    foreach ($options as $option => $value) {
        if (in_array($option, $existing_options)) {
            continue;
        }
        if (in_array($option, $fat_options)) {
            $autoload = 'no';
        } else {
            $autoload = 'yes';
        }
        if (!empty($insert)) {
            $insert .= ', ';
        }
        $value = maybe_serialize(sanitize_option($option, $value));
        $insert .= $wpdb->prepare('(%s, %s, %s)', $option, $value, $autoload);
    }
    if (!empty($insert)) {
        $wpdb->query("INSERT INTO {$wpdb->options} (option_name, option_value, autoload) VALUES " . $insert);
        // phpcs:ignore WordPress.DB.PreparedSQL.NotPrepared
    }
    // In case it is set, but blank, update "home".
    if (!__get_option('home')) {
        update_option('home', $guessurl);
    }
    // Delete unused options.
    $unusedoptions = array('blodotgsping_url', 'bodyterminator', 'emailtestonly', 'phoneemail_separator', 'smilies_directory', 'subjectprefix', 'use_bbcode', 'use_blodotgsping', 'use_phoneemail', 'use_quicktags', 'use_weblogsping', 'weblogs_cache_file', 'use_preview', 'use_htmltrans', 'smilies_directory', 'fileupload_allowedusers', 'use_phoneemail', 'default_post_status', 'default_post_category', 'archive_mode', 'time_difference', 'links_minadminlevel', 'links_use_adminlevels', 'links_rating_type', 'links_rating_char', 'links_rating_ignore_zero', 'links_rating_single_image', 'links_rating_image0', 'links_rating_image1', 'links_rating_image2', 'links_rating_image3', 'links_rating_image4', 'links_rating_image5', 'links_rating_image6', 'links_rating_image7', 'links_rating_image8', 'links_rating_image9', 'links_recently_updated_time', 'links_recently_updated_prepend', 'links_recently_updated_append', 'weblogs_cacheminutes', 'comment_allowed_tags', 'search_engine_friendly_urls', 'default_geourl_lat', 'default_geourl_lon', 'use_default_geourl', 'weblogs_xml_url', 'new_users_can_blog', '_wpnonce', '_wp_http_referer', 'Update', 'action', 'rich_editing', 'autosave_interval', 'deactivated_plugins', 'can_compress_scripts', 'page_uris', 'update_core', 'update_plugins', 'update_themes', 'doing_cron', 'random_seed', 'rss_excerpt_length', 'secret', 'use_linksupdate', 'default_comment_status_page', 'wporg_popular_tags', 'what_to_show', 'rss_language', 'language', 'enable_xmlrpc', 'enable_app', 'embed_autourls', 'default_post_edit_rows', 'gzipcompression', 'advanced_edit');
    foreach ($unusedoptions as $option) {
        delete_option($option);
    }
    // Delete obsolete magpie stuff.
    $wpdb->query("DELETE FROM {$wpdb->options} WHERE option_name REGEXP '^rss_[0-9a-f]{32}(_ts)?\$'");
    // Clear expired transients
    delete_expired_transients(true);
}

WordPress Version: 5.3

/**
 * Create WordPress options and set the default values.
 *
 * @since 1.5.0
 * @since 5.1.0 The $options parameter has been added.
 *
 * @global wpdb $wpdb                  WordPress database abstraction object.
 * @global int  $wp_db_version         WordPress database version.
 * @global int  $wp_current_db_version The old (current) database version.
 *
 * @param array $options Optional. Custom option $key => $value pairs to use. Default empty array.
 */
function populate_options(array $options = array())
{
    global $wpdb, $wp_db_version, $wp_current_db_version;
    $guessurl = wp_guess_url();
    /**
     * Fires before creating WordPress options and populating their default values.
     *
     * @since 2.6.0
     */
    do_action('populate_options');
    if (ini_get('safe_mode')) {
        // Safe mode can break mkdir() so use a flat structure by default.
        $uploads_use_yearmonth_folders = 0;
    } else {
        $uploads_use_yearmonth_folders = 1;
    }
    // If WP_DEFAULT_THEME doesn't exist, fall back to the latest core default theme.
    $stylesheet = WP_DEFAULT_THEME;
    $template = WP_DEFAULT_THEME;
    $theme = wp_get_theme(WP_DEFAULT_THEME);
    if (!$theme->exists()) {
        $theme = WP_Theme::get_core_default_theme();
    }
    // If we can't find a core default theme, WP_DEFAULT_THEME is the best we can do.
    if ($theme) {
        $stylesheet = $theme->get_stylesheet();
        $template = $theme->get_template();
    }
    $timezone_string = '';
    $gmt_offset = 0;
    /*
     * translators: default GMT offset or timezone string. Must be either a valid offset (-12 to 14)
     * or a valid timezone string (America/New_York). See https://secure.php.net/manual/en/timezones.php
     * for all timezone strings supported by PHP.
     */
    $offset_or_tz = _x('0', 'default GMT offset or timezone string');
    // phpcs:ignore WordPress.WP.I18n.NoEmptyStrings
    if (is_numeric($offset_or_tz)) {
        $gmt_offset = $offset_or_tz;
    } elseif ($offset_or_tz && in_array($offset_or_tz, timezone_identifiers_list())) {
        $timezone_string = $offset_or_tz;
    }
    $defaults = array(
        'siteurl' => $guessurl,
        'home' => $guessurl,
        'blogname' => __('My Site'),
        /* translators: Site tagline. */
        'blogdescription' => __('Just another WordPress site'),
        'users_can_register' => 0,
        'admin_email' => '[email protected]',
        /* translators: Default start of the week. 0 = Sunday, 1 = Monday. */
        'start_of_week' => _x('1', 'start of week'),
        'use_balanceTags' => 0,
        'use_smilies' => 1,
        'require_name_email' => 1,
        'comments_notify' => 1,
        'posts_per_rss' => 10,
        'rss_use_excerpt' => 0,
        'mailserver_url' => 'mail.example.com',
        'mailserver_login' => '[email protected]',
        'mailserver_pass' => 'password',
        'mailserver_port' => 110,
        'default_category' => 1,
        'default_comment_status' => 'open',
        'default_ping_status' => 'open',
        'default_pingback_flag' => 1,
        'posts_per_page' => 10,
        /* translators: Default date format, see https://secure.php.net/date */
        'date_format' => __('F j, Y'),
        /* translators: Default time format, see https://secure.php.net/date */
        'time_format' => __('g:i a'),
        /* translators: Links last updated date format, see https://secure.php.net/date */
        'links_updated_date_format' => __('F j, Y g:i a'),
        'comment_moderation' => 0,
        'moderation_notify' => 1,
        'permalink_structure' => '',
        'rewrite_rules' => '',
        'hack_file' => 0,
        'blog_charset' => 'UTF-8',
        'moderation_keys' => '',
        'active_plugins' => array(),
        'category_base' => '',
        'ping_sites' => 'http://rpc.pingomatic.com/',
        'comment_max_links' => 2,
        'gmt_offset' => $gmt_offset,
        // 1.5
        'default_email_category' => 1,
        'recently_edited' => '',
        'template' => $template,
        'stylesheet' => $stylesheet,
        'comment_whitelist' => 1,
        'blacklist_keys' => '',
        'comment_registration' => 0,
        'html_type' => 'text/html',
        // 1.5.1
        'use_trackback' => 0,
        // 2.0
        'default_role' => 'subscriber',
        'db_version' => $wp_db_version,
        // 2.0.1
        'uploads_use_yearmonth_folders' => $uploads_use_yearmonth_folders,
        'upload_path' => '',
        // 2.1
        'blog_public' => '1',
        'default_link_category' => 2,
        'show_on_front' => 'posts',
        // 2.2
        'tag_base' => '',
        // 2.5
        'show_avatars' => '1',
        'avatar_rating' => 'G',
        'upload_url_path' => '',
        'thumbnail_size_w' => 150,
        'thumbnail_size_h' => 150,
        'thumbnail_crop' => 1,
        'medium_size_w' => 300,
        'medium_size_h' => 300,
        // 2.6
        'avatar_default' => 'mystery',
        // 2.7
        'large_size_w' => 1024,
        'large_size_h' => 1024,
        'image_default_link_type' => 'none',
        'image_default_size' => '',
        'image_default_align' => '',
        'close_comments_for_old_posts' => 0,
        'close_comments_days_old' => 14,
        'thread_comments' => 1,
        'thread_comments_depth' => 5,
        'page_comments' => 0,
        'comments_per_page' => 50,
        'default_comments_page' => 'newest',
        'comment_order' => 'asc',
        'sticky_posts' => array(),
        'widget_categories' => array(),
        'widget_text' => array(),
        'widget_rss' => array(),
        'uninstall_plugins' => array(),
        // 2.8
        'timezone_string' => $timezone_string,
        // 3.0
        'page_for_posts' => 0,
        'page_on_front' => 0,
        // 3.1
        'default_post_format' => 0,
        // 3.5
        'link_manager_enabled' => 0,
        // 4.3.0
        'finished_splitting_shared_terms' => 1,
        'site_icon' => 0,
        // 4.4.0
        'medium_large_size_w' => 768,
        'medium_large_size_h' => 0,
        // 4.9.6
        'wp_page_for_privacy_policy' => 0,
        // 4.9.8
        'show_comments_cookies_opt_in' => 1,
        // 5.3.0
        'admin_email_lifespan' => time() + 6 * MONTH_IN_SECONDS,
    );
    // 3.3
    if (!is_multisite()) {
        $defaults['initial_db_version'] = (!empty($wp_current_db_version) && $wp_current_db_version < $wp_db_version) ? $wp_current_db_version : $wp_db_version;
    }
    // 3.0 multisite
    if (is_multisite()) {
        /* translators: %s: Network title. */
        $defaults['blogdescription'] = sprintf(__('Just another %s site'), get_network()->site_name);
        $defaults['permalink_structure'] = '/%year%/%monthnum%/%day%/%postname%/';
    }
    $options = wp_parse_args($options, $defaults);
    // Set autoload to no for these options
    $fat_options = array('moderation_keys', 'recently_edited', 'blacklist_keys', 'uninstall_plugins');
    $keys = "'" . implode("', '", array_keys($options)) . "'";
    $existing_options = $wpdb->get_col("SELECT option_name FROM {$wpdb->options} WHERE option_name in ( {$keys} )");
    // phpcs:ignore WordPress.DB.PreparedSQL.NotPrepared
    $insert = '';
    foreach ($options as $option => $value) {
        if (in_array($option, $existing_options)) {
            continue;
        }
        if (in_array($option, $fat_options)) {
            $autoload = 'no';
        } else {
            $autoload = 'yes';
        }
        if (is_array($value)) {
            $value = serialize($value);
        }
        if (!empty($insert)) {
            $insert .= ', ';
        }
        $insert .= $wpdb->prepare('(%s, %s, %s)', $option, $value, $autoload);
    }
    if (!empty($insert)) {
        $wpdb->query("INSERT INTO {$wpdb->options} (option_name, option_value, autoload) VALUES " . $insert);
        // phpcs:ignore WordPress.DB.PreparedSQL.NotPrepared
    }
    // In case it is set, but blank, update "home".
    if (!__get_option('home')) {
        update_option('home', $guessurl);
    }
    // Delete unused options.
    $unusedoptions = array('blodotgsping_url', 'bodyterminator', 'emailtestonly', 'phoneemail_separator', 'smilies_directory', 'subjectprefix', 'use_bbcode', 'use_blodotgsping', 'use_phoneemail', 'use_quicktags', 'use_weblogsping', 'weblogs_cache_file', 'use_preview', 'use_htmltrans', 'smilies_directory', 'fileupload_allowedusers', 'use_phoneemail', 'default_post_status', 'default_post_category', 'archive_mode', 'time_difference', 'links_minadminlevel', 'links_use_adminlevels', 'links_rating_type', 'links_rating_char', 'links_rating_ignore_zero', 'links_rating_single_image', 'links_rating_image0', 'links_rating_image1', 'links_rating_image2', 'links_rating_image3', 'links_rating_image4', 'links_rating_image5', 'links_rating_image6', 'links_rating_image7', 'links_rating_image8', 'links_rating_image9', 'links_recently_updated_time', 'links_recently_updated_prepend', 'links_recently_updated_append', 'weblogs_cacheminutes', 'comment_allowed_tags', 'search_engine_friendly_urls', 'default_geourl_lat', 'default_geourl_lon', 'use_default_geourl', 'weblogs_xml_url', 'new_users_can_blog', '_wpnonce', '_wp_http_referer', 'Update', 'action', 'rich_editing', 'autosave_interval', 'deactivated_plugins', 'can_compress_scripts', 'page_uris', 'update_core', 'update_plugins', 'update_themes', 'doing_cron', 'random_seed', 'rss_excerpt_length', 'secret', 'use_linksupdate', 'default_comment_status_page', 'wporg_popular_tags', 'what_to_show', 'rss_language', 'language', 'enable_xmlrpc', 'enable_app', 'embed_autourls', 'default_post_edit_rows', 'gzipcompression', 'advanced_edit');
    foreach ($unusedoptions as $option) {
        delete_option($option);
    }
    // Delete obsolete magpie stuff.
    $wpdb->query("DELETE FROM {$wpdb->options} WHERE option_name REGEXP '^rss_[0-9a-f]{32}(_ts)?\$'");
    // Clear expired transients
    delete_expired_transients(true);
}

WordPress Version: 2.3

/**
 * Create WordPress options and set the default values.
 *
 * @since 1.5.0
 * @since 5.1.0 The $options parameter has been added.
 *
 * @global wpdb $wpdb WordPress database abstraction object.
 * @global int  $wp_db_version
 * @global int  $wp_current_db_version
 *
 * @param array $options Optional. Custom option $key => $value pairs to use. Default empty array.
 */
function populate_options(array $options = array())
{
    global $wpdb, $wp_db_version, $wp_current_db_version;
    $guessurl = wp_guess_url();
    /**
     * Fires before creating WordPress options and populating their default values.
     *
     * @since 2.6.0
     */
    do_action('populate_options');
    if (ini_get('safe_mode')) {
        // Safe mode can break mkdir() so use a flat structure by default.
        $uploads_use_yearmonth_folders = 0;
    } else {
        $uploads_use_yearmonth_folders = 1;
    }
    // If WP_DEFAULT_THEME doesn't exist, fall back to the latest core default theme.
    $stylesheet = WP_DEFAULT_THEME;
    $template = WP_DEFAULT_THEME;
    $theme = wp_get_theme(WP_DEFAULT_THEME);
    if (!$theme->exists()) {
        $theme = WP_Theme::get_core_default_theme();
    }
    // If we can't find a core default theme, WP_DEFAULT_THEME is the best we can do.
    if ($theme) {
        $stylesheet = $theme->get_stylesheet();
        $template = $theme->get_template();
    }
    $timezone_string = '';
    $gmt_offset = 0;
    /*
     * translators: default GMT offset or timezone string. Must be either a valid offset (-12 to 14)
     * or a valid timezone string (America/New_York). See https://secure.php.net/manual/en/timezones.php
     * for all timezone strings supported by PHP.
     */
    $offset_or_tz = _x('0', 'default GMT offset or timezone string');
    // phpcs:ignore WordPress.WP.I18n.NoEmptyStrings
    if (is_numeric($offset_or_tz)) {
        $gmt_offset = $offset_or_tz;
    } elseif ($offset_or_tz && in_array($offset_or_tz, timezone_identifiers_list())) {
        $timezone_string = $offset_or_tz;
    }
    $defaults = array(
        'siteurl' => $guessurl,
        'home' => $guessurl,
        'blogname' => __('My Site'),
        /* translators: site tagline */
        'blogdescription' => __('Just another WordPress site'),
        'users_can_register' => 0,
        'admin_email' => '[email protected]',
        /* translators: default start of the week. 0 = Sunday, 1 = Monday */
        'start_of_week' => _x('1', 'start of week'),
        'use_balanceTags' => 0,
        'use_smilies' => 1,
        'require_name_email' => 1,
        'comments_notify' => 1,
        'posts_per_rss' => 10,
        'rss_use_excerpt' => 0,
        'mailserver_url' => 'mail.example.com',
        'mailserver_login' => '[email protected]',
        'mailserver_pass' => 'password',
        'mailserver_port' => 110,
        'default_category' => 1,
        'default_comment_status' => 'open',
        'default_ping_status' => 'open',
        'default_pingback_flag' => 1,
        'posts_per_page' => 10,
        /* translators: default date format, see https://secure.php.net/date */
        'date_format' => __('F j, Y'),
        /* translators: default time format, see https://secure.php.net/date */
        'time_format' => __('g:i a'),
        /* translators: links last updated date format, see https://secure.php.net/date */
        'links_updated_date_format' => __('F j, Y g:i a'),
        'comment_moderation' => 0,
        'moderation_notify' => 1,
        'permalink_structure' => '',
        'rewrite_rules' => '',
        'hack_file' => 0,
        'blog_charset' => 'UTF-8',
        'moderation_keys' => '',
        'active_plugins' => array(),
        'category_base' => '',
        'ping_sites' => 'http://rpc.pingomatic.com/',
        'comment_max_links' => 2,
        'gmt_offset' => $gmt_offset,
        // 1.5
        'default_email_category' => 1,
        'recently_edited' => '',
        'template' => $template,
        'stylesheet' => $stylesheet,
        'comment_whitelist' => 1,
        'blacklist_keys' => '',
        'comment_registration' => 0,
        'html_type' => 'text/html',
        // 1.5.1
        'use_trackback' => 0,
        // 2.0
        'default_role' => 'subscriber',
        'db_version' => $wp_db_version,
        // 2.0.1
        'uploads_use_yearmonth_folders' => $uploads_use_yearmonth_folders,
        'upload_path' => '',
        // 2.1
        'blog_public' => '1',
        'default_link_category' => 2,
        'show_on_front' => 'posts',
        // 2.2
        'tag_base' => '',
        // 2.5
        'show_avatars' => '1',
        'avatar_rating' => 'G',
        'upload_url_path' => '',
        'thumbnail_size_w' => 150,
        'thumbnail_size_h' => 150,
        'thumbnail_crop' => 1,
        'medium_size_w' => 300,
        'medium_size_h' => 300,
        // 2.6
        'avatar_default' => 'mystery',
        // 2.7
        'large_size_w' => 1024,
        'large_size_h' => 1024,
        'image_default_link_type' => 'none',
        'image_default_size' => '',
        'image_default_align' => '',
        'close_comments_for_old_posts' => 0,
        'close_comments_days_old' => 14,
        'thread_comments' => 1,
        'thread_comments_depth' => 5,
        'page_comments' => 0,
        'comments_per_page' => 50,
        'default_comments_page' => 'newest',
        'comment_order' => 'asc',
        'sticky_posts' => array(),
        'widget_categories' => array(),
        'widget_text' => array(),
        'widget_rss' => array(),
        'uninstall_plugins' => array(),
        // 2.8
        'timezone_string' => $timezone_string,
        // 3.0
        'page_for_posts' => 0,
        'page_on_front' => 0,
        // 3.1
        'default_post_format' => 0,
        // 3.5
        'link_manager_enabled' => 0,
        // 4.3.0
        'finished_splitting_shared_terms' => 1,
        'site_icon' => 0,
        // 4.4.0
        'medium_large_size_w' => 768,
        'medium_large_size_h' => 0,
        // 4.9.6
        'wp_page_for_privacy_policy' => 0,
        // 4.9.8
        'show_comments_cookies_opt_in' => 1,
    );
    // 3.3
    if (!is_multisite()) {
        $defaults['initial_db_version'] = (!empty($wp_current_db_version) && $wp_current_db_version < $wp_db_version) ? $wp_current_db_version : $wp_db_version;
    }
    // 3.0 multisite
    if (is_multisite()) {
        /* translators: site tagline */
        $defaults['blogdescription'] = sprintf(__('Just another %s site'), get_network()->site_name);
        $defaults['permalink_structure'] = '/%year%/%monthnum%/%day%/%postname%/';
    }
    $options = wp_parse_args($options, $defaults);
    // Set autoload to no for these options
    $fat_options = array('moderation_keys', 'recently_edited', 'blacklist_keys', 'uninstall_plugins');
    $keys = "'" . implode("', '", array_keys($options)) . "'";
    $existing_options = $wpdb->get_col("SELECT option_name FROM {$wpdb->options} WHERE option_name in ( {$keys} )");
    // phpcs:ignore WordPress.DB.PreparedSQL.NotPrepared
    $insert = '';
    foreach ($options as $option => $value) {
        if (in_array($option, $existing_options)) {
            continue;
        }
        if (in_array($option, $fat_options)) {
            $autoload = 'no';
        } else {
            $autoload = 'yes';
        }
        if (is_array($value)) {
            $value = serialize($value);
        }
        if (!empty($insert)) {
            $insert .= ', ';
        }
        $insert .= $wpdb->prepare('(%s, %s, %s)', $option, $value, $autoload);
    }
    if (!empty($insert)) {
        $wpdb->query("INSERT INTO {$wpdb->options} (option_name, option_value, autoload) VALUES " . $insert);
        // phpcs:ignore WordPress.DB.PreparedSQL.NotPrepared
    }
    // In case it is set, but blank, update "home".
    if (!__get_option('home')) {
        update_option('home', $guessurl);
    }
    // Delete unused options.
    $unusedoptions = array('blodotgsping_url', 'bodyterminator', 'emailtestonly', 'phoneemail_separator', 'smilies_directory', 'subjectprefix', 'use_bbcode', 'use_blodotgsping', 'use_phoneemail', 'use_quicktags', 'use_weblogsping', 'weblogs_cache_file', 'use_preview', 'use_htmltrans', 'smilies_directory', 'fileupload_allowedusers', 'use_phoneemail', 'default_post_status', 'default_post_category', 'archive_mode', 'time_difference', 'links_minadminlevel', 'links_use_adminlevels', 'links_rating_type', 'links_rating_char', 'links_rating_ignore_zero', 'links_rating_single_image', 'links_rating_image0', 'links_rating_image1', 'links_rating_image2', 'links_rating_image3', 'links_rating_image4', 'links_rating_image5', 'links_rating_image6', 'links_rating_image7', 'links_rating_image8', 'links_rating_image9', 'links_recently_updated_time', 'links_recently_updated_prepend', 'links_recently_updated_append', 'weblogs_cacheminutes', 'comment_allowed_tags', 'search_engine_friendly_urls', 'default_geourl_lat', 'default_geourl_lon', 'use_default_geourl', 'weblogs_xml_url', 'new_users_can_blog', '_wpnonce', '_wp_http_referer', 'Update', 'action', 'rich_editing', 'autosave_interval', 'deactivated_plugins', 'can_compress_scripts', 'page_uris', 'update_core', 'update_plugins', 'update_themes', 'doing_cron', 'random_seed', 'rss_excerpt_length', 'secret', 'use_linksupdate', 'default_comment_status_page', 'wporg_popular_tags', 'what_to_show', 'rss_language', 'language', 'enable_xmlrpc', 'enable_app', 'embed_autourls', 'default_post_edit_rows', 'gzipcompression', 'advanced_edit');
    foreach ($unusedoptions as $option) {
        delete_option($option);
    }
    // Delete obsolete magpie stuff.
    $wpdb->query("DELETE FROM {$wpdb->options} WHERE option_name REGEXP '^rss_[0-9a-f]{32}(_ts)?\$'");
    // Clear expired transients
    delete_expired_transients(true);
}

WordPress Version: .20

/**
 * Create WordPress options and set the default values.
 *
 * @since 1.5.0
 * @since 5.1.0 The $options parameter has been added.
 *
 * @global wpdb $wpdb WordPress database abstraction object.
 * @global int  $wp_db_version
 * @global int  $wp_current_db_version
 *
 * @param array $options Optional. Custom option $key => $value pairs to use. Default empty array.
 */
function populate_options(array $options = array())
{
    global $wpdb, $wp_db_version, $wp_current_db_version;
    $guessurl = wp_guess_url();
    /**
     * Fires before creating WordPress options and populating their default values.
     *
     * @since 2.6.0
     */
    do_action('populate_options');
    if (ini_get('safe_mode')) {
        // Safe mode can break mkdir() so use a flat structure by default.
        $uploads_use_yearmonth_folders = 0;
    } else {
        $uploads_use_yearmonth_folders = 1;
    }
    // If WP_DEFAULT_THEME doesn't exist, fall back to the latest core default theme.
    $stylesheet = WP_DEFAULT_THEME;
    $template = WP_DEFAULT_THEME;
    $theme = wp_get_theme(WP_DEFAULT_THEME);
    if (!$theme->exists()) {
        $theme = WP_Theme::get_core_default_theme();
    }
    // If we can't find a core default theme, WP_DEFAULT_THEME is the best we can do.
    if ($theme) {
        $stylesheet = $theme->get_stylesheet();
        $template = $theme->get_template();
    }
    $timezone_string = '';
    $gmt_offset = 0;
    /*
     * translators: default GMT offset or timezone string. Must be either a valid offset (-12 to 14)
     * or a valid timezone string (America/New_York). See https://secure.php.net/manual/en/timezones.php
     * for all timezone strings supported by PHP.
     */
    $offset_or_tz = _x('0', 'default GMT offset or timezone string');
    // phpcs:ignore WordPress.WP.I18n.NoEmptyStrings
    if (is_numeric($offset_or_tz)) {
        $gmt_offset = $offset_or_tz;
    } elseif ($offset_or_tz && in_array($offset_or_tz, timezone_identifiers_list())) {
        $timezone_string = $offset_or_tz;
    }
    $defaults = array(
        'siteurl' => $guessurl,
        'home' => $guessurl,
        'blogname' => __('My Site'),
        /* translators: site tagline */
        'blogdescription' => __('Just another WordPress site'),
        'users_can_register' => 0,
        'admin_email' => '[email protected]',
        /* translators: default start of the week. 0 = Sunday, 1 = Monday */
        'start_of_week' => _x('1', 'start of week'),
        'use_balanceTags' => 0,
        'use_smilies' => 1,
        'require_name_email' => 1,
        'comments_notify' => 1,
        'posts_per_rss' => 10,
        'rss_use_excerpt' => 0,
        'mailserver_url' => 'mail.example.com',
        'mailserver_login' => '[email protected]',
        'mailserver_pass' => 'password',
        'mailserver_port' => 110,
        'default_category' => 1,
        'default_comment_status' => 'open',
        'default_ping_status' => 'open',
        'default_pingback_flag' => 1,
        'posts_per_page' => 10,
        /* translators: default date format, see https://secure.php.net/date */
        'date_format' => __('F j, Y'),
        /* translators: default time format, see https://secure.php.net/date */
        'time_format' => __('g:i a'),
        /* translators: links last updated date format, see https://secure.php.net/date */
        'links_updated_date_format' => __('F j, Y g:i a'),
        'comment_moderation' => 0,
        'moderation_notify' => 1,
        'permalink_structure' => '',
        'rewrite_rules' => '',
        'hack_file' => 0,
        'blog_charset' => 'UTF-8',
        'moderation_keys' => '',
        'active_plugins' => array(),
        'category_base' => '',
        'ping_sites' => 'http://rpc.pingomatic.com/',
        'comment_max_links' => 2,
        'gmt_offset' => $gmt_offset,
        // 1.5
        'default_email_category' => 1,
        'recently_edited' => '',
        'template' => $template,
        'stylesheet' => $stylesheet,
        'comment_whitelist' => 1,
        'blacklist_keys' => '',
        'comment_registration' => 0,
        'html_type' => 'text/html',
        // 1.5.1
        'use_trackback' => 0,
        // 2.0
        'default_role' => 'subscriber',
        'db_version' => $wp_db_version,
        // 2.0.1
        'uploads_use_yearmonth_folders' => $uploads_use_yearmonth_folders,
        'upload_path' => '',
        // 2.1
        'blog_public' => '1',
        'default_link_category' => 2,
        'show_on_front' => 'posts',
        // 2.2
        'tag_base' => '',
        // 2.5
        'show_avatars' => '1',
        'avatar_rating' => 'G',
        'upload_url_path' => '',
        'thumbnail_size_w' => 150,
        'thumbnail_size_h' => 150,
        'thumbnail_crop' => 1,
        'medium_size_w' => 300,
        'medium_size_h' => 300,
        // 2.6
        'avatar_default' => 'mystery',
        // 2.7
        'large_size_w' => 1024,
        'large_size_h' => 1024,
        'image_default_link_type' => 'none',
        'image_default_size' => '',
        'image_default_align' => '',
        'close_comments_for_old_posts' => 0,
        'close_comments_days_old' => 14,
        'thread_comments' => 1,
        'thread_comments_depth' => 5,
        'page_comments' => 0,
        'comments_per_page' => 50,
        'default_comments_page' => 'newest',
        'comment_order' => 'asc',
        'sticky_posts' => array(),
        'widget_categories' => array(),
        'widget_text' => array(),
        'widget_rss' => array(),
        'uninstall_plugins' => array(),
        // 2.8
        'timezone_string' => $timezone_string,
        // 3.0
        'page_for_posts' => 0,
        'page_on_front' => 0,
        // 3.1
        'default_post_format' => 0,
        // 3.5
        'link_manager_enabled' => 0,
        // 4.3.0
        'finished_splitting_shared_terms' => 1,
        'site_icon' => 0,
        // 4.4.0
        'medium_large_size_w' => 768,
        'medium_large_size_h' => 0,
        // 4.9.6
        'wp_page_for_privacy_policy' => 0,
        // 4.9.8
        'show_comments_cookies_opt_in' => 1,
    );
    // 3.3
    if (!is_multisite()) {
        $defaults['initial_db_version'] = (!empty($wp_current_db_version) && $wp_current_db_version < $wp_db_version) ? $wp_current_db_version : $wp_db_version;
    }
    // 3.0 multisite
    if (is_multisite()) {
        /* translators: site tagline */
        $defaults['blogdescription'] = sprintf(__('Just another %s site'), get_network()->site_name);
        $defaults['permalink_structure'] = '/%year%/%monthnum%/%day%/%postname%/';
    }
    $options = wp_parse_args($options, $defaults);
    // Set autoload to no for these options
    $fat_options = array('moderation_keys', 'recently_edited', 'blacklist_keys', 'uninstall_plugins');
    $keys = "'" . implode("', '", array_keys($options)) . "'";
    $existing_options = $wpdb->get_col("SELECT option_name FROM {$wpdb->options} WHERE option_name in ( {$keys} )");
    // phpcs:ignore WordPress.DB.PreparedSQL.NotPrepared
    $insert = '';
    foreach ($options as $option => $value) {
        if (in_array($option, $existing_options)) {
            continue;
        }
        if (in_array($option, $fat_options)) {
            $autoload = 'no';
        } else {
            $autoload = 'yes';
        }
        if (!empty($insert)) {
            $insert .= ', ';
        }
        $value = maybe_serialize(sanitize_option($option, $value));
        $insert .= $wpdb->prepare('(%s, %s, %s)', $option, $value, $autoload);
    }
    if (!empty($insert)) {
        $wpdb->query("INSERT INTO {$wpdb->options} (option_name, option_value, autoload) VALUES " . $insert);
        // phpcs:ignore WordPress.DB.PreparedSQL.NotPrepared
    }
    // In case it is set, but blank, update "home".
    if (!__get_option('home')) {
        update_option('home', $guessurl);
    }
    // Delete unused options.
    $unusedoptions = array('blodotgsping_url', 'bodyterminator', 'emailtestonly', 'phoneemail_separator', 'smilies_directory', 'subjectprefix', 'use_bbcode', 'use_blodotgsping', 'use_phoneemail', 'use_quicktags', 'use_weblogsping', 'weblogs_cache_file', 'use_preview', 'use_htmltrans', 'smilies_directory', 'fileupload_allowedusers', 'use_phoneemail', 'default_post_status', 'default_post_category', 'archive_mode', 'time_difference', 'links_minadminlevel', 'links_use_adminlevels', 'links_rating_type', 'links_rating_char', 'links_rating_ignore_zero', 'links_rating_single_image', 'links_rating_image0', 'links_rating_image1', 'links_rating_image2', 'links_rating_image3', 'links_rating_image4', 'links_rating_image5', 'links_rating_image6', 'links_rating_image7', 'links_rating_image8', 'links_rating_image9', 'links_recently_updated_time', 'links_recently_updated_prepend', 'links_recently_updated_append', 'weblogs_cacheminutes', 'comment_allowed_tags', 'search_engine_friendly_urls', 'default_geourl_lat', 'default_geourl_lon', 'use_default_geourl', 'weblogs_xml_url', 'new_users_can_blog', '_wpnonce', '_wp_http_referer', 'Update', 'action', 'rich_editing', 'autosave_interval', 'deactivated_plugins', 'can_compress_scripts', 'page_uris', 'update_core', 'update_plugins', 'update_themes', 'doing_cron', 'random_seed', 'rss_excerpt_length', 'secret', 'use_linksupdate', 'default_comment_status_page', 'wporg_popular_tags', 'what_to_show', 'rss_language', 'language', 'enable_xmlrpc', 'enable_app', 'embed_autourls', 'default_post_edit_rows', 'gzipcompression', 'advanced_edit');
    foreach ($unusedoptions as $option) {
        delete_option($option);
    }
    // Delete obsolete magpie stuff.
    $wpdb->query("DELETE FROM {$wpdb->options} WHERE option_name REGEXP '^rss_[0-9a-f]{32}(_ts)?\$'");
    // Clear expired transients
    delete_expired_transients(true);
}

WordPress Version: 1.2

/**
 * Create WordPress options and set the default values.
 *
 * @since 1.5.0
 * @since 5.1.0 The $options parameter has been added.
 *
 * @global wpdb $wpdb WordPress database abstraction object.
 * @global int  $wp_db_version
 * @global int  $wp_current_db_version
 *
 * @param array $options Optional. Custom option $key => $value pairs to use. Default empty array.
 */
function populate_options(array $options = array())
{
    global $wpdb, $wp_db_version, $wp_current_db_version;
    $guessurl = wp_guess_url();
    /**
     * Fires before creating WordPress options and populating their default values.
     *
     * @since 2.6.0
     */
    do_action('populate_options');
    if (ini_get('safe_mode')) {
        // Safe mode can break mkdir() so use a flat structure by default.
        $uploads_use_yearmonth_folders = 0;
    } else {
        $uploads_use_yearmonth_folders = 1;
    }
    // If WP_DEFAULT_THEME doesn't exist, fall back to the latest core default theme.
    $stylesheet = WP_DEFAULT_THEME;
    $template = WP_DEFAULT_THEME;
    $theme = wp_get_theme(WP_DEFAULT_THEME);
    if (!$theme->exists()) {
        $theme = WP_Theme::get_core_default_theme();
    }
    // If we can't find a core default theme, WP_DEFAULT_THEME is the best we can do.
    if ($theme) {
        $stylesheet = $theme->get_stylesheet();
        $template = $theme->get_template();
    }
    $timezone_string = '';
    $gmt_offset = 0;
    /*
     * translators: default GMT offset or timezone string. Must be either a valid offset (-12 to 14)
     * or a valid timezone string (America/New_York). See https://secure.php.net/manual/en/timezones.php
     * for all timezone strings supported by PHP.
     */
    $offset_or_tz = _x('0', 'default GMT offset or timezone string');
    // phpcs:ignore WordPress.WP.I18n.NoEmptyStrings
    if (is_numeric($offset_or_tz)) {
        $gmt_offset = $offset_or_tz;
    } elseif ($offset_or_tz && in_array($offset_or_tz, timezone_identifiers_list())) {
        $timezone_string = $offset_or_tz;
    }
    $defaults = array(
        'siteurl' => $guessurl,
        'home' => $guessurl,
        'blogname' => __('My Site'),
        /* translators: site tagline */
        'blogdescription' => __('Just another WordPress site'),
        'users_can_register' => 0,
        'admin_email' => '[email protected]',
        /* translators: default start of the week. 0 = Sunday, 1 = Monday */
        'start_of_week' => _x('1', 'start of week'),
        'use_balanceTags' => 0,
        'use_smilies' => 1,
        'require_name_email' => 1,
        'comments_notify' => 1,
        'posts_per_rss' => 10,
        'rss_use_excerpt' => 0,
        'mailserver_url' => 'mail.example.com',
        'mailserver_login' => '[email protected]',
        'mailserver_pass' => 'password',
        'mailserver_port' => 110,
        'default_category' => 1,
        'default_comment_status' => 'open',
        'default_ping_status' => 'open',
        'default_pingback_flag' => 1,
        'posts_per_page' => 10,
        /* translators: default date format, see https://secure.php.net/date */
        'date_format' => __('F j, Y'),
        /* translators: default time format, see https://secure.php.net/date */
        'time_format' => __('g:i a'),
        /* translators: links last updated date format, see https://secure.php.net/date */
        'links_updated_date_format' => __('F j, Y g:i a'),
        'comment_moderation' => 0,
        'moderation_notify' => 1,
        'permalink_structure' => '',
        'rewrite_rules' => '',
        'hack_file' => 0,
        'blog_charset' => 'UTF-8',
        'moderation_keys' => '',
        'active_plugins' => array(),
        'category_base' => '',
        'ping_sites' => 'http://rpc.pingomatic.com/',
        'comment_max_links' => 2,
        'gmt_offset' => $gmt_offset,
        // 1.5
        'default_email_category' => 1,
        'recently_edited' => '',
        'template' => $template,
        'stylesheet' => $stylesheet,
        'comment_whitelist' => 1,
        'blacklist_keys' => '',
        'comment_registration' => 0,
        'html_type' => 'text/html',
        // 1.5.1
        'use_trackback' => 0,
        // 2.0
        'default_role' => 'subscriber',
        'db_version' => $wp_db_version,
        // 2.0.1
        'uploads_use_yearmonth_folders' => $uploads_use_yearmonth_folders,
        'upload_path' => '',
        // 2.1
        'blog_public' => '1',
        'default_link_category' => 2,
        'show_on_front' => 'posts',
        // 2.2
        'tag_base' => '',
        // 2.5
        'show_avatars' => '1',
        'avatar_rating' => 'G',
        'upload_url_path' => '',
        'thumbnail_size_w' => 150,
        'thumbnail_size_h' => 150,
        'thumbnail_crop' => 1,
        'medium_size_w' => 300,
        'medium_size_h' => 300,
        // 2.6
        'avatar_default' => 'mystery',
        // 2.7
        'large_size_w' => 1024,
        'large_size_h' => 1024,
        'image_default_link_type' => 'none',
        'image_default_size' => '',
        'image_default_align' => '',
        'close_comments_for_old_posts' => 0,
        'close_comments_days_old' => 14,
        'thread_comments' => 1,
        'thread_comments_depth' => 5,
        'page_comments' => 0,
        'comments_per_page' => 50,
        'default_comments_page' => 'newest',
        'comment_order' => 'asc',
        'sticky_posts' => array(),
        'widget_categories' => array(),
        'widget_text' => array(),
        'widget_rss' => array(),
        'uninstall_plugins' => array(),
        // 2.8
        'timezone_string' => $timezone_string,
        // 3.0
        'page_for_posts' => 0,
        'page_on_front' => 0,
        // 3.1
        'default_post_format' => 0,
        // 3.5
        'link_manager_enabled' => 0,
        // 4.3.0
        'finished_splitting_shared_terms' => 1,
        'site_icon' => 0,
        // 4.4.0
        'medium_large_size_w' => 768,
        'medium_large_size_h' => 0,
        // 4.9.6
        'wp_page_for_privacy_policy' => 0,
        // 4.9.8
        'show_comments_cookies_opt_in' => 1,
    );
    // 3.3
    if (!is_multisite()) {
        $defaults['initial_db_version'] = (!empty($wp_current_db_version) && $wp_current_db_version < $wp_db_version) ? $wp_current_db_version : $wp_db_version;
    }
    // 3.0 multisite
    if (is_multisite()) {
        /* translators: site tagline */
        $defaults['blogdescription'] = sprintf(__('Just another %s site'), get_network()->site_name);
        $defaults['permalink_structure'] = '/%year%/%monthnum%/%day%/%postname%/';
    }
    $options = wp_parse_args($options, $defaults);
    // Set autoload to no for these options
    $fat_options = array('moderation_keys', 'recently_edited', 'blacklist_keys', 'uninstall_plugins');
    $keys = "'" . implode("', '", array_keys($options)) . "'";
    $existing_options = $wpdb->get_col("SELECT option_name FROM {$wpdb->options} WHERE option_name in ( {$keys} )");
    // phpcs:ignore WordPress.DB.PreparedSQL.NotPrepared
    $insert = '';
    foreach ($options as $option => $value) {
        if (in_array($option, $existing_options)) {
            continue;
        }
        if (in_array($option, $fat_options)) {
            $autoload = 'no';
        } else {
            $autoload = 'yes';
        }
        if (is_array($value)) {
            $value = serialize($value);
        }
        if (!empty($insert)) {
            $insert .= ', ';
        }
        $insert .= $wpdb->prepare('(%s, %s, %s)', $option, $value, $autoload);
    }
    if (!empty($insert)) {
        $wpdb->query("INSERT INTO {$wpdb->options} (option_name, option_value, autoload) VALUES " . $insert);
        // phpcs:ignore WordPress.DB.PreparedSQL.NotPrepared
    }
    // In case it is set, but blank, update "home".
    if (!__get_option('home')) {
        update_option('home', $guessurl);
    }
    // Delete unused options.
    $unusedoptions = array('blodotgsping_url', 'bodyterminator', 'emailtestonly', 'phoneemail_separator', 'smilies_directory', 'subjectprefix', 'use_bbcode', 'use_blodotgsping', 'use_phoneemail', 'use_quicktags', 'use_weblogsping', 'weblogs_cache_file', 'use_preview', 'use_htmltrans', 'smilies_directory', 'fileupload_allowedusers', 'use_phoneemail', 'default_post_status', 'default_post_category', 'archive_mode', 'time_difference', 'links_minadminlevel', 'links_use_adminlevels', 'links_rating_type', 'links_rating_char', 'links_rating_ignore_zero', 'links_rating_single_image', 'links_rating_image0', 'links_rating_image1', 'links_rating_image2', 'links_rating_image3', 'links_rating_image4', 'links_rating_image5', 'links_rating_image6', 'links_rating_image7', 'links_rating_image8', 'links_rating_image9', 'links_recently_updated_time', 'links_recently_updated_prepend', 'links_recently_updated_append', 'weblogs_cacheminutes', 'comment_allowed_tags', 'search_engine_friendly_urls', 'default_geourl_lat', 'default_geourl_lon', 'use_default_geourl', 'weblogs_xml_url', 'new_users_can_blog', '_wpnonce', '_wp_http_referer', 'Update', 'action', 'rich_editing', 'autosave_interval', 'deactivated_plugins', 'can_compress_scripts', 'page_uris', 'update_core', 'update_plugins', 'update_themes', 'doing_cron', 'random_seed', 'rss_excerpt_length', 'secret', 'use_linksupdate', 'default_comment_status_page', 'wporg_popular_tags', 'what_to_show', 'rss_language', 'language', 'enable_xmlrpc', 'enable_app', 'embed_autourls', 'default_post_edit_rows', 'gzipcompression', 'advanced_edit');
    foreach ($unusedoptions as $option) {
        delete_option($option);
    }
    // Delete obsolete magpie stuff.
    $wpdb->query("DELETE FROM {$wpdb->options} WHERE option_name REGEXP '^rss_[0-9a-f]{32}(_ts)?\$'");
    // Clear expired transients
    delete_expired_transients(true);
}

WordPress Version: .18

/**
 * Create WordPress options and set the default values.
 *
 * @since 1.5.0
 * @since 5.1.0 The $options parameter has been added.
 *
 * @global wpdb $wpdb WordPress database abstraction object.
 * @global int  $wp_db_version
 * @global int  $wp_current_db_version
 *
 * @param array $options Optional. Custom option $key => $value pairs to use. Default empty array.
 */
function populate_options(array $options = array())
{
    global $wpdb, $wp_db_version, $wp_current_db_version;
    $guessurl = wp_guess_url();
    /**
     * Fires before creating WordPress options and populating their default values.
     *
     * @since 2.6.0
     */
    do_action('populate_options');
    if (ini_get('safe_mode')) {
        // Safe mode can break mkdir() so use a flat structure by default.
        $uploads_use_yearmonth_folders = 0;
    } else {
        $uploads_use_yearmonth_folders = 1;
    }
    // If WP_DEFAULT_THEME doesn't exist, fall back to the latest core default theme.
    $stylesheet = WP_DEFAULT_THEME;
    $template = WP_DEFAULT_THEME;
    $theme = wp_get_theme(WP_DEFAULT_THEME);
    if (!$theme->exists()) {
        $theme = WP_Theme::get_core_default_theme();
    }
    // If we can't find a core default theme, WP_DEFAULT_THEME is the best we can do.
    if ($theme) {
        $stylesheet = $theme->get_stylesheet();
        $template = $theme->get_template();
    }
    $timezone_string = '';
    $gmt_offset = 0;
    /*
     * translators: default GMT offset or timezone string. Must be either a valid offset (-12 to 14)
     * or a valid timezone string (America/New_York). See https://secure.php.net/manual/en/timezones.php
     * for all timezone strings supported by PHP.
     */
    $offset_or_tz = _x('0', 'default GMT offset or timezone string');
    // phpcs:ignore WordPress.WP.I18n.NoEmptyStrings
    if (is_numeric($offset_or_tz)) {
        $gmt_offset = $offset_or_tz;
    } elseif ($offset_or_tz && in_array($offset_or_tz, timezone_identifiers_list())) {
        $timezone_string = $offset_or_tz;
    }
    $defaults = array(
        'siteurl' => $guessurl,
        'home' => $guessurl,
        'blogname' => __('My Site'),
        /* translators: site tagline */
        'blogdescription' => __('Just another WordPress site'),
        'users_can_register' => 0,
        'admin_email' => '[email protected]',
        /* translators: default start of the week. 0 = Sunday, 1 = Monday */
        'start_of_week' => _x('1', 'start of week'),
        'use_balanceTags' => 0,
        'use_smilies' => 1,
        'require_name_email' => 1,
        'comments_notify' => 1,
        'posts_per_rss' => 10,
        'rss_use_excerpt' => 0,
        'mailserver_url' => 'mail.example.com',
        'mailserver_login' => '[email protected]',
        'mailserver_pass' => 'password',
        'mailserver_port' => 110,
        'default_category' => 1,
        'default_comment_status' => 'open',
        'default_ping_status' => 'open',
        'default_pingback_flag' => 1,
        'posts_per_page' => 10,
        /* translators: default date format, see https://secure.php.net/date */
        'date_format' => __('F j, Y'),
        /* translators: default time format, see https://secure.php.net/date */
        'time_format' => __('g:i a'),
        /* translators: links last updated date format, see https://secure.php.net/date */
        'links_updated_date_format' => __('F j, Y g:i a'),
        'comment_moderation' => 0,
        'moderation_notify' => 1,
        'permalink_structure' => '',
        'rewrite_rules' => '',
        'hack_file' => 0,
        'blog_charset' => 'UTF-8',
        'moderation_keys' => '',
        'active_plugins' => array(),
        'category_base' => '',
        'ping_sites' => 'http://rpc.pingomatic.com/',
        'comment_max_links' => 2,
        'gmt_offset' => $gmt_offset,
        // 1.5
        'default_email_category' => 1,
        'recently_edited' => '',
        'template' => $template,
        'stylesheet' => $stylesheet,
        'comment_whitelist' => 1,
        'blacklist_keys' => '',
        'comment_registration' => 0,
        'html_type' => 'text/html',
        // 1.5.1
        'use_trackback' => 0,
        // 2.0
        'default_role' => 'subscriber',
        'db_version' => $wp_db_version,
        // 2.0.1
        'uploads_use_yearmonth_folders' => $uploads_use_yearmonth_folders,
        'upload_path' => '',
        // 2.1
        'blog_public' => '1',
        'default_link_category' => 2,
        'show_on_front' => 'posts',
        // 2.2
        'tag_base' => '',
        // 2.5
        'show_avatars' => '1',
        'avatar_rating' => 'G',
        'upload_url_path' => '',
        'thumbnail_size_w' => 150,
        'thumbnail_size_h' => 150,
        'thumbnail_crop' => 1,
        'medium_size_w' => 300,
        'medium_size_h' => 300,
        // 2.6
        'avatar_default' => 'mystery',
        // 2.7
        'large_size_w' => 1024,
        'large_size_h' => 1024,
        'image_default_link_type' => 'none',
        'image_default_size' => '',
        'image_default_align' => '',
        'close_comments_for_old_posts' => 0,
        'close_comments_days_old' => 14,
        'thread_comments' => 1,
        'thread_comments_depth' => 5,
        'page_comments' => 0,
        'comments_per_page' => 50,
        'default_comments_page' => 'newest',
        'comment_order' => 'asc',
        'sticky_posts' => array(),
        'widget_categories' => array(),
        'widget_text' => array(),
        'widget_rss' => array(),
        'uninstall_plugins' => array(),
        // 2.8
        'timezone_string' => $timezone_string,
        // 3.0
        'page_for_posts' => 0,
        'page_on_front' => 0,
        // 3.1
        'default_post_format' => 0,
        // 3.5
        'link_manager_enabled' => 0,
        // 4.3.0
        'finished_splitting_shared_terms' => 1,
        'site_icon' => 0,
        // 4.4.0
        'medium_large_size_w' => 768,
        'medium_large_size_h' => 0,
        // 4.9.6
        'wp_page_for_privacy_policy' => 0,
        // 4.9.8
        'show_comments_cookies_opt_in' => 1,
    );
    // 3.3
    if (!is_multisite()) {
        $defaults['initial_db_version'] = (!empty($wp_current_db_version) && $wp_current_db_version < $wp_db_version) ? $wp_current_db_version : $wp_db_version;
    }
    // 3.0 multisite
    if (is_multisite()) {
        /* translators: site tagline */
        $defaults['blogdescription'] = sprintf(__('Just another %s site'), get_network()->site_name);
        $defaults['permalink_structure'] = '/%year%/%monthnum%/%day%/%postname%/';
    }
    $options = wp_parse_args($options, $defaults);
    // Set autoload to no for these options
    $fat_options = array('moderation_keys', 'recently_edited', 'blacklist_keys', 'uninstall_plugins');
    $keys = "'" . implode("', '", array_keys($options)) . "'";
    $existing_options = $wpdb->get_col("SELECT option_name FROM {$wpdb->options} WHERE option_name in ( {$keys} )");
    // phpcs:ignore WordPress.DB.PreparedSQL.NotPrepared
    $insert = '';
    foreach ($options as $option => $value) {
        if (in_array($option, $existing_options)) {
            continue;
        }
        if (in_array($option, $fat_options)) {
            $autoload = 'no';
        } else {
            $autoload = 'yes';
        }
        if (!empty($insert)) {
            $insert .= ', ';
        }
        $value = maybe_serialize(sanitize_option($option, $value));
        $insert .= $wpdb->prepare('(%s, %s, %s)', $option, $value, $autoload);
    }
    if (!empty($insert)) {
        $wpdb->query("INSERT INTO {$wpdb->options} (option_name, option_value, autoload) VALUES " . $insert);
        // phpcs:ignore WordPress.DB.PreparedSQL.NotPrepared
    }
    // In case it is set, but blank, update "home".
    if (!__get_option('home')) {
        update_option('home', $guessurl);
    }
    // Delete unused options.
    $unusedoptions = array('blodotgsping_url', 'bodyterminator', 'emailtestonly', 'phoneemail_separator', 'smilies_directory', 'subjectprefix', 'use_bbcode', 'use_blodotgsping', 'use_phoneemail', 'use_quicktags', 'use_weblogsping', 'weblogs_cache_file', 'use_preview', 'use_htmltrans', 'smilies_directory', 'fileupload_allowedusers', 'use_phoneemail', 'default_post_status', 'default_post_category', 'archive_mode', 'time_difference', 'links_minadminlevel', 'links_use_adminlevels', 'links_rating_type', 'links_rating_char', 'links_rating_ignore_zero', 'links_rating_single_image', 'links_rating_image0', 'links_rating_image1', 'links_rating_image2', 'links_rating_image3', 'links_rating_image4', 'links_rating_image5', 'links_rating_image6', 'links_rating_image7', 'links_rating_image8', 'links_rating_image9', 'links_recently_updated_time', 'links_recently_updated_prepend', 'links_recently_updated_append', 'weblogs_cacheminutes', 'comment_allowed_tags', 'search_engine_friendly_urls', 'default_geourl_lat', 'default_geourl_lon', 'use_default_geourl', 'weblogs_xml_url', 'new_users_can_blog', '_wpnonce', '_wp_http_referer', 'Update', 'action', 'rich_editing', 'autosave_interval', 'deactivated_plugins', 'can_compress_scripts', 'page_uris', 'update_core', 'update_plugins', 'update_themes', 'doing_cron', 'random_seed', 'rss_excerpt_length', 'secret', 'use_linksupdate', 'default_comment_status_page', 'wporg_popular_tags', 'what_to_show', 'rss_language', 'language', 'enable_xmlrpc', 'enable_app', 'embed_autourls', 'default_post_edit_rows', 'gzipcompression', 'advanced_edit');
    foreach ($unusedoptions as $option) {
        delete_option($option);
    }
    // Delete obsolete magpie stuff.
    $wpdb->query("DELETE FROM {$wpdb->options} WHERE option_name REGEXP '^rss_[0-9a-f]{32}(_ts)?\$'");
    // Clear expired transients
    delete_expired_transients(true);
}

WordPress Version: 5.1

/**
 * Create WordPress options and set the default values.
 *
 * @since 1.5.0
 * @since 5.1.0 The $options parameter has been added.
 *
 * @global wpdb $wpdb WordPress database abstraction object.
 * @global int  $wp_db_version
 * @global int  $wp_current_db_version
 *
 * @param array $options Optional. Custom option $key => $value pairs to use. Default empty array.
 */
function populate_options(array $options = array())
{
    global $wpdb, $wp_db_version, $wp_current_db_version;
    $guessurl = wp_guess_url();
    /**
     * Fires before creating WordPress options and populating their default values.
     *
     * @since 2.6.0
     */
    do_action('populate_options');
    if (ini_get('safe_mode')) {
        // Safe mode can break mkdir() so use a flat structure by default.
        $uploads_use_yearmonth_folders = 0;
    } else {
        $uploads_use_yearmonth_folders = 1;
    }
    // If WP_DEFAULT_THEME doesn't exist, fall back to the latest core default theme.
    $stylesheet = WP_DEFAULT_THEME;
    $template = WP_DEFAULT_THEME;
    $theme = wp_get_theme(WP_DEFAULT_THEME);
    if (!$theme->exists()) {
        $theme = WP_Theme::get_core_default_theme();
    }
    // If we can't find a core default theme, WP_DEFAULT_THEME is the best we can do.
    if ($theme) {
        $stylesheet = $theme->get_stylesheet();
        $template = $theme->get_template();
    }
    $timezone_string = '';
    $gmt_offset = 0;
    /*
     * translators: default GMT offset or timezone string. Must be either a valid offset (-12 to 14)
     * or a valid timezone string (America/New_York). See https://secure.php.net/manual/en/timezones.php
     * for all timezone strings supported by PHP.
     */
    $offset_or_tz = _x('0', 'default GMT offset or timezone string');
    // phpcs:ignore WordPress.WP.I18n.NoEmptyStrings
    if (is_numeric($offset_or_tz)) {
        $gmt_offset = $offset_or_tz;
    } elseif ($offset_or_tz && in_array($offset_or_tz, timezone_identifiers_list())) {
        $timezone_string = $offset_or_tz;
    }
    $defaults = array(
        'siteurl' => $guessurl,
        'home' => $guessurl,
        'blogname' => __('My Site'),
        /* translators: site tagline */
        'blogdescription' => __('Just another WordPress site'),
        'users_can_register' => 0,
        'admin_email' => '[email protected]',
        /* translators: default start of the week. 0 = Sunday, 1 = Monday */
        'start_of_week' => _x('1', 'start of week'),
        'use_balanceTags' => 0,
        'use_smilies' => 1,
        'require_name_email' => 1,
        'comments_notify' => 1,
        'posts_per_rss' => 10,
        'rss_use_excerpt' => 0,
        'mailserver_url' => 'mail.example.com',
        'mailserver_login' => '[email protected]',
        'mailserver_pass' => 'password',
        'mailserver_port' => 110,
        'default_category' => 1,
        'default_comment_status' => 'open',
        'default_ping_status' => 'open',
        'default_pingback_flag' => 1,
        'posts_per_page' => 10,
        /* translators: default date format, see https://secure.php.net/date */
        'date_format' => __('F j, Y'),
        /* translators: default time format, see https://secure.php.net/date */
        'time_format' => __('g:i a'),
        /* translators: links last updated date format, see https://secure.php.net/date */
        'links_updated_date_format' => __('F j, Y g:i a'),
        'comment_moderation' => 0,
        'moderation_notify' => 1,
        'permalink_structure' => '',
        'rewrite_rules' => '',
        'hack_file' => 0,
        'blog_charset' => 'UTF-8',
        'moderation_keys' => '',
        'active_plugins' => array(),
        'category_base' => '',
        'ping_sites' => 'http://rpc.pingomatic.com/',
        'comment_max_links' => 2,
        'gmt_offset' => $gmt_offset,
        // 1.5
        'default_email_category' => 1,
        'recently_edited' => '',
        'template' => $template,
        'stylesheet' => $stylesheet,
        'comment_whitelist' => 1,
        'blacklist_keys' => '',
        'comment_registration' => 0,
        'html_type' => 'text/html',
        // 1.5.1
        'use_trackback' => 0,
        // 2.0
        'default_role' => 'subscriber',
        'db_version' => $wp_db_version,
        // 2.0.1
        'uploads_use_yearmonth_folders' => $uploads_use_yearmonth_folders,
        'upload_path' => '',
        // 2.1
        'blog_public' => '1',
        'default_link_category' => 2,
        'show_on_front' => 'posts',
        // 2.2
        'tag_base' => '',
        // 2.5
        'show_avatars' => '1',
        'avatar_rating' => 'G',
        'upload_url_path' => '',
        'thumbnail_size_w' => 150,
        'thumbnail_size_h' => 150,
        'thumbnail_crop' => 1,
        'medium_size_w' => 300,
        'medium_size_h' => 300,
        // 2.6
        'avatar_default' => 'mystery',
        // 2.7
        'large_size_w' => 1024,
        'large_size_h' => 1024,
        'image_default_link_type' => 'none',
        'image_default_size' => '',
        'image_default_align' => '',
        'close_comments_for_old_posts' => 0,
        'close_comments_days_old' => 14,
        'thread_comments' => 1,
        'thread_comments_depth' => 5,
        'page_comments' => 0,
        'comments_per_page' => 50,
        'default_comments_page' => 'newest',
        'comment_order' => 'asc',
        'sticky_posts' => array(),
        'widget_categories' => array(),
        'widget_text' => array(),
        'widget_rss' => array(),
        'uninstall_plugins' => array(),
        // 2.8
        'timezone_string' => $timezone_string,
        // 3.0
        'page_for_posts' => 0,
        'page_on_front' => 0,
        // 3.1
        'default_post_format' => 0,
        // 3.5
        'link_manager_enabled' => 0,
        // 4.3.0
        'finished_splitting_shared_terms' => 1,
        'site_icon' => 0,
        // 4.4.0
        'medium_large_size_w' => 768,
        'medium_large_size_h' => 0,
        // 4.9.6
        'wp_page_for_privacy_policy' => 0,
        // 4.9.8
        'show_comments_cookies_opt_in' => 1,
    );
    // 3.3
    if (!is_multisite()) {
        $defaults['initial_db_version'] = (!empty($wp_current_db_version) && $wp_current_db_version < $wp_db_version) ? $wp_current_db_version : $wp_db_version;
    }
    // 3.0 multisite
    if (is_multisite()) {
        /* translators: site tagline */
        $defaults['blogdescription'] = sprintf(__('Just another %s site'), get_network()->site_name);
        $defaults['permalink_structure'] = '/%year%/%monthnum%/%day%/%postname%/';
    }
    $options = wp_parse_args($options, $defaults);
    // Set autoload to no for these options
    $fat_options = array('moderation_keys', 'recently_edited', 'blacklist_keys', 'uninstall_plugins');
    $keys = "'" . implode("', '", array_keys($options)) . "'";
    $existing_options = $wpdb->get_col("SELECT option_name FROM {$wpdb->options} WHERE option_name in ( {$keys} )");
    // phpcs:ignore WordPress.DB.PreparedSQL.NotPrepared
    $insert = '';
    foreach ($options as $option => $value) {
        if (in_array($option, $existing_options)) {
            continue;
        }
        if (in_array($option, $fat_options)) {
            $autoload = 'no';
        } else {
            $autoload = 'yes';
        }
        if (is_array($value)) {
            $value = serialize($value);
        }
        if (!empty($insert)) {
            $insert .= ', ';
        }
        $insert .= $wpdb->prepare('(%s, %s, %s)', $option, $value, $autoload);
    }
    if (!empty($insert)) {
        $wpdb->query("INSERT INTO {$wpdb->options} (option_name, option_value, autoload) VALUES " . $insert);
        // phpcs:ignore WordPress.DB.PreparedSQL.NotPrepared
    }
    // In case it is set, but blank, update "home".
    if (!__get_option('home')) {
        update_option('home', $guessurl);
    }
    // Delete unused options.
    $unusedoptions = array('blodotgsping_url', 'bodyterminator', 'emailtestonly', 'phoneemail_separator', 'smilies_directory', 'subjectprefix', 'use_bbcode', 'use_blodotgsping', 'use_phoneemail', 'use_quicktags', 'use_weblogsping', 'weblogs_cache_file', 'use_preview', 'use_htmltrans', 'smilies_directory', 'fileupload_allowedusers', 'use_phoneemail', 'default_post_status', 'default_post_category', 'archive_mode', 'time_difference', 'links_minadminlevel', 'links_use_adminlevels', 'links_rating_type', 'links_rating_char', 'links_rating_ignore_zero', 'links_rating_single_image', 'links_rating_image0', 'links_rating_image1', 'links_rating_image2', 'links_rating_image3', 'links_rating_image4', 'links_rating_image5', 'links_rating_image6', 'links_rating_image7', 'links_rating_image8', 'links_rating_image9', 'links_recently_updated_time', 'links_recently_updated_prepend', 'links_recently_updated_append', 'weblogs_cacheminutes', 'comment_allowed_tags', 'search_engine_friendly_urls', 'default_geourl_lat', 'default_geourl_lon', 'use_default_geourl', 'weblogs_xml_url', 'new_users_can_blog', '_wpnonce', '_wp_http_referer', 'Update', 'action', 'rich_editing', 'autosave_interval', 'deactivated_plugins', 'can_compress_scripts', 'page_uris', 'update_core', 'update_plugins', 'update_themes', 'doing_cron', 'random_seed', 'rss_excerpt_length', 'secret', 'use_linksupdate', 'default_comment_status_page', 'wporg_popular_tags', 'what_to_show', 'rss_language', 'language', 'enable_xmlrpc', 'enable_app', 'embed_autourls', 'default_post_edit_rows', 'gzipcompression', 'advanced_edit');
    foreach ($unusedoptions as $option) {
        delete_option($option);
    }
    // Delete obsolete magpie stuff.
    $wpdb->query("DELETE FROM {$wpdb->options} WHERE option_name REGEXP '^rss_[0-9a-f]{32}(_ts)?\$'");
    // Clear expired transients
    delete_expired_transients(true);
}

WordPress Version: 0.3

/**
 * Create WordPress options and set the default values.
 *
 * @since 1.5.0
 *
 * @global wpdb $wpdb WordPress database abstraction object.
 * @global int  $wp_db_version
 * @global int  $wp_current_db_version
 */
function populate_options()
{
    global $wpdb, $wp_db_version, $wp_current_db_version;
    $guessurl = wp_guess_url();
    /**
     * Fires before creating WordPress options and populating their default values.
     *
     * @since 2.6.0
     */
    do_action('populate_options');
    if (ini_get('safe_mode')) {
        // Safe mode can break mkdir() so use a flat structure by default.
        $uploads_use_yearmonth_folders = 0;
    } else {
        $uploads_use_yearmonth_folders = 1;
    }
    // If WP_DEFAULT_THEME doesn't exist, fall back to the latest core default theme.
    $stylesheet = $template = WP_DEFAULT_THEME;
    $theme = wp_get_theme(WP_DEFAULT_THEME);
    if (!$theme->exists()) {
        $theme = WP_Theme::get_core_default_theme();
    }
    // If we can't find a core default theme, WP_DEFAULT_THEME is the best we can do.
    if ($theme) {
        $stylesheet = $theme->get_stylesheet();
        $template = $theme->get_template();
    }
    $timezone_string = '';
    $gmt_offset = 0;
    /* translators: default GMT offset or timezone string. Must be either a valid offset (-12 to 14)
    	   or a valid timezone string (America/New_York). See https://secure.php.net/manual/en/timezones.php
    	   for all timezone strings supported by PHP.
    	*/
    $offset_or_tz = _x('0', 'default GMT offset or timezone string');
    if (is_numeric($offset_or_tz)) {
        $gmt_offset = $offset_or_tz;
    } elseif ($offset_or_tz && in_array($offset_or_tz, timezone_identifiers_list())) {
        $timezone_string = $offset_or_tz;
    }
    $options = array(
        'siteurl' => $guessurl,
        'home' => $guessurl,
        'blogname' => __('My Site'),
        /* translators: site tagline */
        'blogdescription' => __('Just another WordPress site'),
        'users_can_register' => 0,
        'admin_email' => '[email protected]',
        /* translators: default start of the week. 0 = Sunday, 1 = Monday */
        'start_of_week' => _x('1', 'start of week'),
        'use_balanceTags' => 0,
        'use_smilies' => 1,
        'require_name_email' => 1,
        'comments_notify' => 1,
        'posts_per_rss' => 10,
        'rss_use_excerpt' => 0,
        'mailserver_url' => 'mail.example.com',
        'mailserver_login' => '[email protected]',
        'mailserver_pass' => 'password',
        'mailserver_port' => 110,
        'default_category' => 1,
        'default_comment_status' => 'open',
        'default_ping_status' => 'open',
        'default_pingback_flag' => 1,
        'posts_per_page' => 10,
        /* translators: default date format, see https://secure.php.net/date */
        'date_format' => __('F j, Y'),
        /* translators: default time format, see https://secure.php.net/date */
        'time_format' => __('g:i a'),
        /* translators: links last updated date format, see https://secure.php.net/date */
        'links_updated_date_format' => __('F j, Y g:i a'),
        'comment_moderation' => 0,
        'moderation_notify' => 1,
        'permalink_structure' => '',
        'rewrite_rules' => '',
        'hack_file' => 0,
        'blog_charset' => 'UTF-8',
        'moderation_keys' => '',
        'active_plugins' => array(),
        'category_base' => '',
        'ping_sites' => 'http://rpc.pingomatic.com/',
        'comment_max_links' => 2,
        'gmt_offset' => $gmt_offset,
        // 1.5
        'default_email_category' => 1,
        'recently_edited' => '',
        'template' => $template,
        'stylesheet' => $stylesheet,
        'comment_whitelist' => 1,
        'blacklist_keys' => '',
        'comment_registration' => 0,
        'html_type' => 'text/html',
        // 1.5.1
        'use_trackback' => 0,
        // 2.0
        'default_role' => 'subscriber',
        'db_version' => $wp_db_version,
        // 2.0.1
        'uploads_use_yearmonth_folders' => $uploads_use_yearmonth_folders,
        'upload_path' => '',
        // 2.1
        'blog_public' => '1',
        'default_link_category' => 2,
        'show_on_front' => 'posts',
        // 2.2
        'tag_base' => '',
        // 2.5
        'show_avatars' => '1',
        'avatar_rating' => 'G',
        'upload_url_path' => '',
        'thumbnail_size_w' => 150,
        'thumbnail_size_h' => 150,
        'thumbnail_crop' => 1,
        'medium_size_w' => 300,
        'medium_size_h' => 300,
        // 2.6
        'avatar_default' => 'mystery',
        // 2.7
        'large_size_w' => 1024,
        'large_size_h' => 1024,
        'image_default_link_type' => 'none',
        'image_default_size' => '',
        'image_default_align' => '',
        'close_comments_for_old_posts' => 0,
        'close_comments_days_old' => 14,
        'thread_comments' => 1,
        'thread_comments_depth' => 5,
        'page_comments' => 0,
        'comments_per_page' => 50,
        'default_comments_page' => 'newest',
        'comment_order' => 'asc',
        'sticky_posts' => array(),
        'widget_categories' => array(),
        'widget_text' => array(),
        'widget_rss' => array(),
        'uninstall_plugins' => array(),
        // 2.8
        'timezone_string' => $timezone_string,
        // 3.0
        'page_for_posts' => 0,
        'page_on_front' => 0,
        // 3.1
        'default_post_format' => 0,
        // 3.5
        'link_manager_enabled' => 0,
        // 4.3.0
        'finished_splitting_shared_terms' => 1,
        'site_icon' => 0,
        // 4.4.0
        'medium_large_size_w' => 768,
        'medium_large_size_h' => 0,
        // 4.9.6
        'wp_page_for_privacy_policy' => 0,
        // 4.9.8
        'show_comments_cookies_opt_in' => 0,
    );
    // 3.3
    if (!is_multisite()) {
        $options['initial_db_version'] = (!empty($wp_current_db_version) && $wp_current_db_version < $wp_db_version) ? $wp_current_db_version : $wp_db_version;
    }
    // 3.0 multisite
    if (is_multisite()) {
        /* translators: site tagline */
        $options['blogdescription'] = sprintf(__('Just another %s site'), get_network()->site_name);
        $options['permalink_structure'] = '/%year%/%monthnum%/%day%/%postname%/';
    }
    // Set autoload to no for these options
    $fat_options = array('moderation_keys', 'recently_edited', 'blacklist_keys', 'uninstall_plugins');
    $keys = "'" . implode("', '", array_keys($options)) . "'";
    $existing_options = $wpdb->get_col("SELECT option_name FROM {$wpdb->options} WHERE option_name in ( {$keys} )");
    $insert = '';
    foreach ($options as $option => $value) {
        if (in_array($option, $existing_options)) {
            continue;
        }
        if (in_array($option, $fat_options)) {
            $autoload = 'no';
        } else {
            $autoload = 'yes';
        }
        if (is_array($value)) {
            $value = serialize($value);
        }
        if (!empty($insert)) {
            $insert .= ', ';
        }
        $insert .= $wpdb->prepare("(%s, %s, %s)", $option, $value, $autoload);
    }
    if (!empty($insert)) {
        $wpdb->query("INSERT INTO {$wpdb->options} (option_name, option_value, autoload) VALUES " . $insert);
    }
    // In case it is set, but blank, update "home".
    if (!__get_option('home')) {
        update_option('home', $guessurl);
    }
    // Delete unused options.
    $unusedoptions = array('blodotgsping_url', 'bodyterminator', 'emailtestonly', 'phoneemail_separator', 'smilies_directory', 'subjectprefix', 'use_bbcode', 'use_blodotgsping', 'use_phoneemail', 'use_quicktags', 'use_weblogsping', 'weblogs_cache_file', 'use_preview', 'use_htmltrans', 'smilies_directory', 'fileupload_allowedusers', 'use_phoneemail', 'default_post_status', 'default_post_category', 'archive_mode', 'time_difference', 'links_minadminlevel', 'links_use_adminlevels', 'links_rating_type', 'links_rating_char', 'links_rating_ignore_zero', 'links_rating_single_image', 'links_rating_image0', 'links_rating_image1', 'links_rating_image2', 'links_rating_image3', 'links_rating_image4', 'links_rating_image5', 'links_rating_image6', 'links_rating_image7', 'links_rating_image8', 'links_rating_image9', 'links_recently_updated_time', 'links_recently_updated_prepend', 'links_recently_updated_append', 'weblogs_cacheminutes', 'comment_allowed_tags', 'search_engine_friendly_urls', 'default_geourl_lat', 'default_geourl_lon', 'use_default_geourl', 'weblogs_xml_url', 'new_users_can_blog', '_wpnonce', '_wp_http_referer', 'Update', 'action', 'rich_editing', 'autosave_interval', 'deactivated_plugins', 'can_compress_scripts', 'page_uris', 'update_core', 'update_plugins', 'update_themes', 'doing_cron', 'random_seed', 'rss_excerpt_length', 'secret', 'use_linksupdate', 'default_comment_status_page', 'wporg_popular_tags', 'what_to_show', 'rss_language', 'language', 'enable_xmlrpc', 'enable_app', 'embed_autourls', 'default_post_edit_rows', 'gzipcompression', 'advanced_edit');
    foreach ($unusedoptions as $option) {
        delete_option($option);
    }
    // Delete obsolete magpie stuff.
    $wpdb->query("DELETE FROM {$wpdb->options} WHERE option_name REGEXP '^rss_[0-9a-f]{32}(_ts)?\$'");
    // Clear expired transients
    delete_expired_transients(true);
}

WordPress Version: .21

/**
 * Create WordPress options and set the default values.
 *
 * @since 1.5.0
 *
 * @global wpdb $wpdb WordPress database abstraction object.
 * @global int  $wp_db_version
 * @global int  $wp_current_db_version
 */
function populate_options()
{
    global $wpdb, $wp_db_version, $wp_current_db_version;
    $guessurl = wp_guess_url();
    /**
     * Fires before creating WordPress options and populating their default values.
     *
     * @since 2.6.0
     */
    do_action('populate_options');
    if (ini_get('safe_mode')) {
        // Safe mode can break mkdir() so use a flat structure by default.
        $uploads_use_yearmonth_folders = 0;
    } else {
        $uploads_use_yearmonth_folders = 1;
    }
    // If WP_DEFAULT_THEME doesn't exist, fall back to the latest core default theme.
    $stylesheet = $template = WP_DEFAULT_THEME;
    $theme = wp_get_theme(WP_DEFAULT_THEME);
    if (!$theme->exists()) {
        $theme = WP_Theme::get_core_default_theme();
    }
    // If we can't find a core default theme, WP_DEFAULT_THEME is the best we can do.
    if ($theme) {
        $stylesheet = $theme->get_stylesheet();
        $template = $theme->get_template();
    }
    $timezone_string = '';
    $gmt_offset = 0;
    /* translators: default GMT offset or timezone string. Must be either a valid offset (-12 to 14)
    	   or a valid timezone string (America/New_York). See https://secure.php.net/manual/en/timezones.php
    	   for all timezone strings supported by PHP.
    	*/
    $offset_or_tz = _x('0', 'default GMT offset or timezone string');
    if (is_numeric($offset_or_tz)) {
        $gmt_offset = $offset_or_tz;
    } elseif ($offset_or_tz && in_array($offset_or_tz, timezone_identifiers_list())) {
        $timezone_string = $offset_or_tz;
    }
    $options = array(
        'siteurl' => $guessurl,
        'home' => $guessurl,
        'blogname' => __('My Site'),
        /* translators: site tagline */
        'blogdescription' => __('Just another WordPress site'),
        'users_can_register' => 0,
        'admin_email' => '[email protected]',
        /* translators: default start of the week. 0 = Sunday, 1 = Monday */
        'start_of_week' => _x('1', 'start of week'),
        'use_balanceTags' => 0,
        'use_smilies' => 1,
        'require_name_email' => 1,
        'comments_notify' => 1,
        'posts_per_rss' => 10,
        'rss_use_excerpt' => 0,
        'mailserver_url' => 'mail.example.com',
        'mailserver_login' => '[email protected]',
        'mailserver_pass' => 'password',
        'mailserver_port' => 110,
        'default_category' => 1,
        'default_comment_status' => 'open',
        'default_ping_status' => 'open',
        'default_pingback_flag' => 1,
        'posts_per_page' => 10,
        /* translators: default date format, see https://secure.php.net/date */
        'date_format' => __('F j, Y'),
        /* translators: default time format, see https://secure.php.net/date */
        'time_format' => __('g:i a'),
        /* translators: links last updated date format, see https://secure.php.net/date */
        'links_updated_date_format' => __('F j, Y g:i a'),
        'comment_moderation' => 0,
        'moderation_notify' => 1,
        'permalink_structure' => '',
        'rewrite_rules' => '',
        'hack_file' => 0,
        'blog_charset' => 'UTF-8',
        'moderation_keys' => '',
        'active_plugins' => array(),
        'category_base' => '',
        'ping_sites' => 'http://rpc.pingomatic.com/',
        'comment_max_links' => 2,
        'gmt_offset' => $gmt_offset,
        // 1.5
        'default_email_category' => 1,
        'recently_edited' => '',
        'template' => $template,
        'stylesheet' => $stylesheet,
        'comment_whitelist' => 1,
        'blacklist_keys' => '',
        'comment_registration' => 0,
        'html_type' => 'text/html',
        // 1.5.1
        'use_trackback' => 0,
        // 2.0
        'default_role' => 'subscriber',
        'db_version' => $wp_db_version,
        // 2.0.1
        'uploads_use_yearmonth_folders' => $uploads_use_yearmonth_folders,
        'upload_path' => '',
        // 2.1
        'blog_public' => '1',
        'default_link_category' => 2,
        'show_on_front' => 'posts',
        // 2.2
        'tag_base' => '',
        // 2.5
        'show_avatars' => '1',
        'avatar_rating' => 'G',
        'upload_url_path' => '',
        'thumbnail_size_w' => 150,
        'thumbnail_size_h' => 150,
        'thumbnail_crop' => 1,
        'medium_size_w' => 300,
        'medium_size_h' => 300,
        // 2.6
        'avatar_default' => 'mystery',
        // 2.7
        'large_size_w' => 1024,
        'large_size_h' => 1024,
        'image_default_link_type' => 'none',
        'image_default_size' => '',
        'image_default_align' => '',
        'close_comments_for_old_posts' => 0,
        'close_comments_days_old' => 14,
        'thread_comments' => 1,
        'thread_comments_depth' => 5,
        'page_comments' => 0,
        'comments_per_page' => 50,
        'default_comments_page' => 'newest',
        'comment_order' => 'asc',
        'sticky_posts' => array(),
        'widget_categories' => array(),
        'widget_text' => array(),
        'widget_rss' => array(),
        'uninstall_plugins' => array(),
        // 2.8
        'timezone_string' => $timezone_string,
        // 3.0
        'page_for_posts' => 0,
        'page_on_front' => 0,
        // 3.1
        'default_post_format' => 0,
        // 3.5
        'link_manager_enabled' => 0,
        // 4.3.0
        'finished_splitting_shared_terms' => 1,
        'site_icon' => 0,
        // 4.4.0
        'medium_large_size_w' => 768,
        'medium_large_size_h' => 0,
        // 4.9.6
        'wp_page_for_privacy_policy' => 0,
        // 4.9.8
        'show_comments_cookies_opt_in' => 0,
    );
    // 3.3
    if (!is_multisite()) {
        $options['initial_db_version'] = (!empty($wp_current_db_version) && $wp_current_db_version < $wp_db_version) ? $wp_current_db_version : $wp_db_version;
    }
    // 3.0 multisite
    if (is_multisite()) {
        /* translators: site tagline */
        $options['blogdescription'] = sprintf(__('Just another %s site'), get_network()->site_name);
        $options['permalink_structure'] = '/%year%/%monthnum%/%day%/%postname%/';
    }
    // Set autoload to no for these options
    $fat_options = array('moderation_keys', 'recently_edited', 'blacklist_keys', 'uninstall_plugins');
    $keys = "'" . implode("', '", array_keys($options)) . "'";
    $existing_options = $wpdb->get_col("SELECT option_name FROM {$wpdb->options} WHERE option_name in ( {$keys} )");
    $insert = '';
    foreach ($options as $option => $value) {
        if (in_array($option, $existing_options)) {
            continue;
        }
        if (in_array($option, $fat_options)) {
            $autoload = 'no';
        } else {
            $autoload = 'yes';
        }
        if (!empty($insert)) {
            $insert .= ', ';
        }
        $value = maybe_serialize(sanitize_option($option, $value));
        $insert .= $wpdb->prepare("(%s, %s, %s)", $option, $value, $autoload);
    }
    if (!empty($insert)) {
        $wpdb->query("INSERT INTO {$wpdb->options} (option_name, option_value, autoload) VALUES " . $insert);
    }
    // In case it is set, but blank, update "home".
    if (!__get_option('home')) {
        update_option('home', $guessurl);
    }
    // Delete unused options.
    $unusedoptions = array('blodotgsping_url', 'bodyterminator', 'emailtestonly', 'phoneemail_separator', 'smilies_directory', 'subjectprefix', 'use_bbcode', 'use_blodotgsping', 'use_phoneemail', 'use_quicktags', 'use_weblogsping', 'weblogs_cache_file', 'use_preview', 'use_htmltrans', 'smilies_directory', 'fileupload_allowedusers', 'use_phoneemail', 'default_post_status', 'default_post_category', 'archive_mode', 'time_difference', 'links_minadminlevel', 'links_use_adminlevels', 'links_rating_type', 'links_rating_char', 'links_rating_ignore_zero', 'links_rating_single_image', 'links_rating_image0', 'links_rating_image1', 'links_rating_image2', 'links_rating_image3', 'links_rating_image4', 'links_rating_image5', 'links_rating_image6', 'links_rating_image7', 'links_rating_image8', 'links_rating_image9', 'links_recently_updated_time', 'links_recently_updated_prepend', 'links_recently_updated_append', 'weblogs_cacheminutes', 'comment_allowed_tags', 'search_engine_friendly_urls', 'default_geourl_lat', 'default_geourl_lon', 'use_default_geourl', 'weblogs_xml_url', 'new_users_can_blog', '_wpnonce', '_wp_http_referer', 'Update', 'action', 'rich_editing', 'autosave_interval', 'deactivated_plugins', 'can_compress_scripts', 'page_uris', 'update_core', 'update_plugins', 'update_themes', 'doing_cron', 'random_seed', 'rss_excerpt_length', 'secret', 'use_linksupdate', 'default_comment_status_page', 'wporg_popular_tags', 'what_to_show', 'rss_language', 'language', 'enable_xmlrpc', 'enable_app', 'embed_autourls', 'default_post_edit_rows', 'gzipcompression', 'advanced_edit');
    foreach ($unusedoptions as $option) {
        delete_option($option);
    }
    // Delete obsolete magpie stuff.
    $wpdb->query("DELETE FROM {$wpdb->options} WHERE option_name REGEXP '^rss_[0-9a-f]{32}(_ts)?\$'");
    // Clear expired transients
    delete_expired_transients(true);
}

WordPress Version: 9.8

/**
 * Create WordPress options and set the default values.
 *
 * @since 1.5.0
 *
 * @global wpdb $wpdb WordPress database abstraction object.
 * @global int  $wp_db_version
 * @global int  $wp_current_db_version
 */
function populate_options()
{
    global $wpdb, $wp_db_version, $wp_current_db_version;
    $guessurl = wp_guess_url();
    /**
     * Fires before creating WordPress options and populating their default values.
     *
     * @since 2.6.0
     */
    do_action('populate_options');
    if (ini_get('safe_mode')) {
        // Safe mode can break mkdir() so use a flat structure by default.
        $uploads_use_yearmonth_folders = 0;
    } else {
        $uploads_use_yearmonth_folders = 1;
    }
    // If WP_DEFAULT_THEME doesn't exist, fall back to the latest core default theme.
    $stylesheet = $template = WP_DEFAULT_THEME;
    $theme = wp_get_theme(WP_DEFAULT_THEME);
    if (!$theme->exists()) {
        $theme = WP_Theme::get_core_default_theme();
    }
    // If we can't find a core default theme, WP_DEFAULT_THEME is the best we can do.
    if ($theme) {
        $stylesheet = $theme->get_stylesheet();
        $template = $theme->get_template();
    }
    $timezone_string = '';
    $gmt_offset = 0;
    /* translators: default GMT offset or timezone string. Must be either a valid offset (-12 to 14)
    	   or a valid timezone string (America/New_York). See https://secure.php.net/manual/en/timezones.php
    	   for all timezone strings supported by PHP.
    	*/
    $offset_or_tz = _x('0', 'default GMT offset or timezone string');
    if (is_numeric($offset_or_tz)) {
        $gmt_offset = $offset_or_tz;
    } elseif ($offset_or_tz && in_array($offset_or_tz, timezone_identifiers_list())) {
        $timezone_string = $offset_or_tz;
    }
    $options = array(
        'siteurl' => $guessurl,
        'home' => $guessurl,
        'blogname' => __('My Site'),
        /* translators: site tagline */
        'blogdescription' => __('Just another WordPress site'),
        'users_can_register' => 0,
        'admin_email' => '[email protected]',
        /* translators: default start of the week. 0 = Sunday, 1 = Monday */
        'start_of_week' => _x('1', 'start of week'),
        'use_balanceTags' => 0,
        'use_smilies' => 1,
        'require_name_email' => 1,
        'comments_notify' => 1,
        'posts_per_rss' => 10,
        'rss_use_excerpt' => 0,
        'mailserver_url' => 'mail.example.com',
        'mailserver_login' => '[email protected]',
        'mailserver_pass' => 'password',
        'mailserver_port' => 110,
        'default_category' => 1,
        'default_comment_status' => 'open',
        'default_ping_status' => 'open',
        'default_pingback_flag' => 1,
        'posts_per_page' => 10,
        /* translators: default date format, see https://secure.php.net/date */
        'date_format' => __('F j, Y'),
        /* translators: default time format, see https://secure.php.net/date */
        'time_format' => __('g:i a'),
        /* translators: links last updated date format, see https://secure.php.net/date */
        'links_updated_date_format' => __('F j, Y g:i a'),
        'comment_moderation' => 0,
        'moderation_notify' => 1,
        'permalink_structure' => '',
        'rewrite_rules' => '',
        'hack_file' => 0,
        'blog_charset' => 'UTF-8',
        'moderation_keys' => '',
        'active_plugins' => array(),
        'category_base' => '',
        'ping_sites' => 'http://rpc.pingomatic.com/',
        'comment_max_links' => 2,
        'gmt_offset' => $gmt_offset,
        // 1.5
        'default_email_category' => 1,
        'recently_edited' => '',
        'template' => $template,
        'stylesheet' => $stylesheet,
        'comment_whitelist' => 1,
        'blacklist_keys' => '',
        'comment_registration' => 0,
        'html_type' => 'text/html',
        // 1.5.1
        'use_trackback' => 0,
        // 2.0
        'default_role' => 'subscriber',
        'db_version' => $wp_db_version,
        // 2.0.1
        'uploads_use_yearmonth_folders' => $uploads_use_yearmonth_folders,
        'upload_path' => '',
        // 2.1
        'blog_public' => '1',
        'default_link_category' => 2,
        'show_on_front' => 'posts',
        // 2.2
        'tag_base' => '',
        // 2.5
        'show_avatars' => '1',
        'avatar_rating' => 'G',
        'upload_url_path' => '',
        'thumbnail_size_w' => 150,
        'thumbnail_size_h' => 150,
        'thumbnail_crop' => 1,
        'medium_size_w' => 300,
        'medium_size_h' => 300,
        // 2.6
        'avatar_default' => 'mystery',
        // 2.7
        'large_size_w' => 1024,
        'large_size_h' => 1024,
        'image_default_link_type' => 'none',
        'image_default_size' => '',
        'image_default_align' => '',
        'close_comments_for_old_posts' => 0,
        'close_comments_days_old' => 14,
        'thread_comments' => 1,
        'thread_comments_depth' => 5,
        'page_comments' => 0,
        'comments_per_page' => 50,
        'default_comments_page' => 'newest',
        'comment_order' => 'asc',
        'sticky_posts' => array(),
        'widget_categories' => array(),
        'widget_text' => array(),
        'widget_rss' => array(),
        'uninstall_plugins' => array(),
        // 2.8
        'timezone_string' => $timezone_string,
        // 3.0
        'page_for_posts' => 0,
        'page_on_front' => 0,
        // 3.1
        'default_post_format' => 0,
        // 3.5
        'link_manager_enabled' => 0,
        // 4.3.0
        'finished_splitting_shared_terms' => 1,
        'site_icon' => 0,
        // 4.4.0
        'medium_large_size_w' => 768,
        'medium_large_size_h' => 0,
        // 4.9.6
        'wp_page_for_privacy_policy' => 0,
        // 4.9.8
        'show_comments_cookies_opt_in' => 0,
    );
    // 3.3
    if (!is_multisite()) {
        $options['initial_db_version'] = (!empty($wp_current_db_version) && $wp_current_db_version < $wp_db_version) ? $wp_current_db_version : $wp_db_version;
    }
    // 3.0 multisite
    if (is_multisite()) {
        /* translators: site tagline */
        $options['blogdescription'] = sprintf(__('Just another %s site'), get_network()->site_name);
        $options['permalink_structure'] = '/%year%/%monthnum%/%day%/%postname%/';
    }
    // Set autoload to no for these options
    $fat_options = array('moderation_keys', 'recently_edited', 'blacklist_keys', 'uninstall_plugins');
    $keys = "'" . implode("', '", array_keys($options)) . "'";
    $existing_options = $wpdb->get_col("SELECT option_name FROM {$wpdb->options} WHERE option_name in ( {$keys} )");
    $insert = '';
    foreach ($options as $option => $value) {
        if (in_array($option, $existing_options)) {
            continue;
        }
        if (in_array($option, $fat_options)) {
            $autoload = 'no';
        } else {
            $autoload = 'yes';
        }
        if (is_array($value)) {
            $value = serialize($value);
        }
        if (!empty($insert)) {
            $insert .= ', ';
        }
        $insert .= $wpdb->prepare("(%s, %s, %s)", $option, $value, $autoload);
    }
    if (!empty($insert)) {
        $wpdb->query("INSERT INTO {$wpdb->options} (option_name, option_value, autoload) VALUES " . $insert);
    }
    // In case it is set, but blank, update "home".
    if (!__get_option('home')) {
        update_option('home', $guessurl);
    }
    // Delete unused options.
    $unusedoptions = array('blodotgsping_url', 'bodyterminator', 'emailtestonly', 'phoneemail_separator', 'smilies_directory', 'subjectprefix', 'use_bbcode', 'use_blodotgsping', 'use_phoneemail', 'use_quicktags', 'use_weblogsping', 'weblogs_cache_file', 'use_preview', 'use_htmltrans', 'smilies_directory', 'fileupload_allowedusers', 'use_phoneemail', 'default_post_status', 'default_post_category', 'archive_mode', 'time_difference', 'links_minadminlevel', 'links_use_adminlevels', 'links_rating_type', 'links_rating_char', 'links_rating_ignore_zero', 'links_rating_single_image', 'links_rating_image0', 'links_rating_image1', 'links_rating_image2', 'links_rating_image3', 'links_rating_image4', 'links_rating_image5', 'links_rating_image6', 'links_rating_image7', 'links_rating_image8', 'links_rating_image9', 'links_recently_updated_time', 'links_recently_updated_prepend', 'links_recently_updated_append', 'weblogs_cacheminutes', 'comment_allowed_tags', 'search_engine_friendly_urls', 'default_geourl_lat', 'default_geourl_lon', 'use_default_geourl', 'weblogs_xml_url', 'new_users_can_blog', '_wpnonce', '_wp_http_referer', 'Update', 'action', 'rich_editing', 'autosave_interval', 'deactivated_plugins', 'can_compress_scripts', 'page_uris', 'update_core', 'update_plugins', 'update_themes', 'doing_cron', 'random_seed', 'rss_excerpt_length', 'secret', 'use_linksupdate', 'default_comment_status_page', 'wporg_popular_tags', 'what_to_show', 'rss_language', 'language', 'enable_xmlrpc', 'enable_app', 'embed_autourls', 'default_post_edit_rows', 'gzipcompression', 'advanced_edit');
    foreach ($unusedoptions as $option) {
        delete_option($option);
    }
    // Delete obsolete magpie stuff.
    $wpdb->query("DELETE FROM {$wpdb->options} WHERE option_name REGEXP '^rss_[0-9a-f]{32}(_ts)?\$'");
    // Clear expired transients
    delete_expired_transients(true);
}

WordPress Version: 9.6

/**
 * Create WordPress options and set the default values.
 *
 * @since 1.5.0
 *
 * @global wpdb $wpdb WordPress database abstraction object.
 * @global int  $wp_db_version
 * @global int  $wp_current_db_version
 */
function populate_options()
{
    global $wpdb, $wp_db_version, $wp_current_db_version;
    $guessurl = wp_guess_url();
    /**
     * Fires before creating WordPress options and populating their default values.
     *
     * @since 2.6.0
     */
    do_action('populate_options');
    if (ini_get('safe_mode')) {
        // Safe mode can break mkdir() so use a flat structure by default.
        $uploads_use_yearmonth_folders = 0;
    } else {
        $uploads_use_yearmonth_folders = 1;
    }
    // If WP_DEFAULT_THEME doesn't exist, fall back to the latest core default theme.
    $stylesheet = $template = WP_DEFAULT_THEME;
    $theme = wp_get_theme(WP_DEFAULT_THEME);
    if (!$theme->exists()) {
        $theme = WP_Theme::get_core_default_theme();
    }
    // If we can't find a core default theme, WP_DEFAULT_THEME is the best we can do.
    if ($theme) {
        $stylesheet = $theme->get_stylesheet();
        $template = $theme->get_template();
    }
    $timezone_string = '';
    $gmt_offset = 0;
    /* translators: default GMT offset or timezone string. Must be either a valid offset (-12 to 14)
    	   or a valid timezone string (America/New_York). See https://secure.php.net/manual/en/timezones.php
    	   for all timezone strings supported by PHP.
    	*/
    $offset_or_tz = _x('0', 'default GMT offset or timezone string');
    if (is_numeric($offset_or_tz)) {
        $gmt_offset = $offset_or_tz;
    } elseif ($offset_or_tz && in_array($offset_or_tz, timezone_identifiers_list())) {
        $timezone_string = $offset_or_tz;
    }
    $options = array(
        'siteurl' => $guessurl,
        'home' => $guessurl,
        'blogname' => __('My Site'),
        /* translators: site tagline */
        'blogdescription' => __('Just another WordPress site'),
        'users_can_register' => 0,
        'admin_email' => '[email protected]',
        /* translators: default start of the week. 0 = Sunday, 1 = Monday */
        'start_of_week' => _x('1', 'start of week'),
        'use_balanceTags' => 0,
        'use_smilies' => 1,
        'require_name_email' => 1,
        'comments_notify' => 1,
        'posts_per_rss' => 10,
        'rss_use_excerpt' => 0,
        'mailserver_url' => 'mail.example.com',
        'mailserver_login' => '[email protected]',
        'mailserver_pass' => 'password',
        'mailserver_port' => 110,
        'default_category' => 1,
        'default_comment_status' => 'open',
        'default_ping_status' => 'open',
        'default_pingback_flag' => 1,
        'posts_per_page' => 10,
        /* translators: default date format, see https://secure.php.net/date */
        'date_format' => __('F j, Y'),
        /* translators: default time format, see https://secure.php.net/date */
        'time_format' => __('g:i a'),
        /* translators: links last updated date format, see https://secure.php.net/date */
        'links_updated_date_format' => __('F j, Y g:i a'),
        'comment_moderation' => 0,
        'moderation_notify' => 1,
        'permalink_structure' => '',
        'rewrite_rules' => '',
        'hack_file' => 0,
        'blog_charset' => 'UTF-8',
        'moderation_keys' => '',
        'active_plugins' => array(),
        'category_base' => '',
        'ping_sites' => 'http://rpc.pingomatic.com/',
        'comment_max_links' => 2,
        'gmt_offset' => $gmt_offset,
        // 1.5
        'default_email_category' => 1,
        'recently_edited' => '',
        'template' => $template,
        'stylesheet' => $stylesheet,
        'comment_whitelist' => 1,
        'blacklist_keys' => '',
        'comment_registration' => 0,
        'html_type' => 'text/html',
        // 1.5.1
        'use_trackback' => 0,
        // 2.0
        'default_role' => 'subscriber',
        'db_version' => $wp_db_version,
        // 2.0.1
        'uploads_use_yearmonth_folders' => $uploads_use_yearmonth_folders,
        'upload_path' => '',
        // 2.1
        'blog_public' => '1',
        'default_link_category' => 2,
        'show_on_front' => 'posts',
        // 2.2
        'tag_base' => '',
        // 2.5
        'show_avatars' => '1',
        'avatar_rating' => 'G',
        'upload_url_path' => '',
        'thumbnail_size_w' => 150,
        'thumbnail_size_h' => 150,
        'thumbnail_crop' => 1,
        'medium_size_w' => 300,
        'medium_size_h' => 300,
        // 2.6
        'avatar_default' => 'mystery',
        // 2.7
        'large_size_w' => 1024,
        'large_size_h' => 1024,
        'image_default_link_type' => 'none',
        'image_default_size' => '',
        'image_default_align' => '',
        'close_comments_for_old_posts' => 0,
        'close_comments_days_old' => 14,
        'thread_comments' => 1,
        'thread_comments_depth' => 5,
        'page_comments' => 0,
        'comments_per_page' => 50,
        'default_comments_page' => 'newest',
        'comment_order' => 'asc',
        'sticky_posts' => array(),
        'widget_categories' => array(),
        'widget_text' => array(),
        'widget_rss' => array(),
        'uninstall_plugins' => array(),
        // 2.8
        'timezone_string' => $timezone_string,
        // 3.0
        'page_for_posts' => 0,
        'page_on_front' => 0,
        // 3.1
        'default_post_format' => 0,
        // 3.5
        'link_manager_enabled' => 0,
        // 4.3.0
        'finished_splitting_shared_terms' => 1,
        'site_icon' => 0,
        // 4.4.0
        'medium_large_size_w' => 768,
        'medium_large_size_h' => 0,
        // 4.9.6
        'wp_page_for_privacy_policy' => 0,
    );
    // 3.3
    if (!is_multisite()) {
        $options['initial_db_version'] = (!empty($wp_current_db_version) && $wp_current_db_version < $wp_db_version) ? $wp_current_db_version : $wp_db_version;
    }
    // 3.0 multisite
    if (is_multisite()) {
        /* translators: site tagline */
        $options['blogdescription'] = sprintf(__('Just another %s site'), get_network()->site_name);
        $options['permalink_structure'] = '/%year%/%monthnum%/%day%/%postname%/';
    }
    // Set autoload to no for these options
    $fat_options = array('moderation_keys', 'recently_edited', 'blacklist_keys', 'uninstall_plugins');
    $keys = "'" . implode("', '", array_keys($options)) . "'";
    $existing_options = $wpdb->get_col("SELECT option_name FROM {$wpdb->options} WHERE option_name in ( {$keys} )");
    $insert = '';
    foreach ($options as $option => $value) {
        if (in_array($option, $existing_options)) {
            continue;
        }
        if (in_array($option, $fat_options)) {
            $autoload = 'no';
        } else {
            $autoload = 'yes';
        }
        if (is_array($value)) {
            $value = serialize($value);
        }
        if (!empty($insert)) {
            $insert .= ', ';
        }
        $insert .= $wpdb->prepare("(%s, %s, %s)", $option, $value, $autoload);
    }
    if (!empty($insert)) {
        $wpdb->query("INSERT INTO {$wpdb->options} (option_name, option_value, autoload) VALUES " . $insert);
    }
    // In case it is set, but blank, update "home".
    if (!__get_option('home')) {
        update_option('home', $guessurl);
    }
    // Delete unused options.
    $unusedoptions = array('blodotgsping_url', 'bodyterminator', 'emailtestonly', 'phoneemail_separator', 'smilies_directory', 'subjectprefix', 'use_bbcode', 'use_blodotgsping', 'use_phoneemail', 'use_quicktags', 'use_weblogsping', 'weblogs_cache_file', 'use_preview', 'use_htmltrans', 'smilies_directory', 'fileupload_allowedusers', 'use_phoneemail', 'default_post_status', 'default_post_category', 'archive_mode', 'time_difference', 'links_minadminlevel', 'links_use_adminlevels', 'links_rating_type', 'links_rating_char', 'links_rating_ignore_zero', 'links_rating_single_image', 'links_rating_image0', 'links_rating_image1', 'links_rating_image2', 'links_rating_image3', 'links_rating_image4', 'links_rating_image5', 'links_rating_image6', 'links_rating_image7', 'links_rating_image8', 'links_rating_image9', 'links_recently_updated_time', 'links_recently_updated_prepend', 'links_recently_updated_append', 'weblogs_cacheminutes', 'comment_allowed_tags', 'search_engine_friendly_urls', 'default_geourl_lat', 'default_geourl_lon', 'use_default_geourl', 'weblogs_xml_url', 'new_users_can_blog', '_wpnonce', '_wp_http_referer', 'Update', 'action', 'rich_editing', 'autosave_interval', 'deactivated_plugins', 'can_compress_scripts', 'page_uris', 'update_core', 'update_plugins', 'update_themes', 'doing_cron', 'random_seed', 'rss_excerpt_length', 'secret', 'use_linksupdate', 'default_comment_status_page', 'wporg_popular_tags', 'what_to_show', 'rss_language', 'language', 'enable_xmlrpc', 'enable_app', 'embed_autourls', 'default_post_edit_rows', 'gzipcompression', 'advanced_edit');
    foreach ($unusedoptions as $option) {
        delete_option($option);
    }
    // Delete obsolete magpie stuff.
    $wpdb->query("DELETE FROM {$wpdb->options} WHERE option_name REGEXP '^rss_[0-9a-f]{32}(_ts)?\$'");
    // Clear expired transients
    delete_expired_transients(true);
}

WordPress Version: 9.3

/**
 * Create WordPress options and set the default values.
 *
 * @since 1.5.0
 *
 * @global wpdb $wpdb WordPress database abstraction object.
 * @global int  $wp_db_version
 * @global int  $wp_current_db_version
 */
function populate_options()
{
    global $wpdb, $wp_db_version, $wp_current_db_version;
    $guessurl = wp_guess_url();
    /**
     * Fires before creating WordPress options and populating their default values.
     *
     * @since 2.6.0
     */
    do_action('populate_options');
    if (ini_get('safe_mode')) {
        // Safe mode can break mkdir() so use a flat structure by default.
        $uploads_use_yearmonth_folders = 0;
    } else {
        $uploads_use_yearmonth_folders = 1;
    }
    // If WP_DEFAULT_THEME doesn't exist, fall back to the latest core default theme.
    $stylesheet = $template = WP_DEFAULT_THEME;
    $theme = wp_get_theme(WP_DEFAULT_THEME);
    if (!$theme->exists()) {
        $theme = WP_Theme::get_core_default_theme();
    }
    // If we can't find a core default theme, WP_DEFAULT_THEME is the best we can do.
    if ($theme) {
        $stylesheet = $theme->get_stylesheet();
        $template = $theme->get_template();
    }
    $timezone_string = '';
    $gmt_offset = 0;
    /* translators: default GMT offset or timezone string. Must be either a valid offset (-12 to 14)
    	   or a valid timezone string (America/New_York). See https://secure.php.net/manual/en/timezones.php
    	   for all timezone strings supported by PHP.
    	*/
    $offset_or_tz = _x('0', 'default GMT offset or timezone string');
    if (is_numeric($offset_or_tz)) {
        $gmt_offset = $offset_or_tz;
    } elseif ($offset_or_tz && in_array($offset_or_tz, timezone_identifiers_list())) {
        $timezone_string = $offset_or_tz;
    }
    $options = array(
        'siteurl' => $guessurl,
        'home' => $guessurl,
        'blogname' => __('My Site'),
        /* translators: site tagline */
        'blogdescription' => __('Just another WordPress site'),
        'users_can_register' => 0,
        'admin_email' => '[email protected]',
        /* translators: default start of the week. 0 = Sunday, 1 = Monday */
        'start_of_week' => _x('1', 'start of week'),
        'use_balanceTags' => 0,
        'use_smilies' => 1,
        'require_name_email' => 1,
        'comments_notify' => 1,
        'posts_per_rss' => 10,
        'rss_use_excerpt' => 0,
        'mailserver_url' => 'mail.example.com',
        'mailserver_login' => '[email protected]',
        'mailserver_pass' => 'password',
        'mailserver_port' => 110,
        'default_category' => 1,
        'default_comment_status' => 'open',
        'default_ping_status' => 'open',
        'default_pingback_flag' => 1,
        'posts_per_page' => 10,
        /* translators: default date format, see https://secure.php.net/date */
        'date_format' => __('F j, Y'),
        /* translators: default time format, see https://secure.php.net/date */
        'time_format' => __('g:i a'),
        /* translators: links last updated date format, see https://secure.php.net/date */
        'links_updated_date_format' => __('F j, Y g:i a'),
        'comment_moderation' => 0,
        'moderation_notify' => 1,
        'permalink_structure' => '',
        'rewrite_rules' => '',
        'hack_file' => 0,
        'blog_charset' => 'UTF-8',
        'moderation_keys' => '',
        'active_plugins' => array(),
        'category_base' => '',
        'ping_sites' => 'http://rpc.pingomatic.com/',
        'comment_max_links' => 2,
        'gmt_offset' => $gmt_offset,
        // 1.5
        'default_email_category' => 1,
        'recently_edited' => '',
        'template' => $template,
        'stylesheet' => $stylesheet,
        'comment_whitelist' => 1,
        'blacklist_keys' => '',
        'comment_registration' => 0,
        'html_type' => 'text/html',
        // 1.5.1
        'use_trackback' => 0,
        // 2.0
        'default_role' => 'subscriber',
        'db_version' => $wp_db_version,
        // 2.0.1
        'uploads_use_yearmonth_folders' => $uploads_use_yearmonth_folders,
        'upload_path' => '',
        // 2.1
        'blog_public' => '1',
        'default_link_category' => 2,
        'show_on_front' => 'posts',
        // 2.2
        'tag_base' => '',
        // 2.5
        'show_avatars' => '1',
        'avatar_rating' => 'G',
        'upload_url_path' => '',
        'thumbnail_size_w' => 150,
        'thumbnail_size_h' => 150,
        'thumbnail_crop' => 1,
        'medium_size_w' => 300,
        'medium_size_h' => 300,
        // 2.6
        'avatar_default' => 'mystery',
        // 2.7
        'large_size_w' => 1024,
        'large_size_h' => 1024,
        'image_default_link_type' => 'none',
        'image_default_size' => '',
        'image_default_align' => '',
        'close_comments_for_old_posts' => 0,
        'close_comments_days_old' => 14,
        'thread_comments' => 1,
        'thread_comments_depth' => 5,
        'page_comments' => 0,
        'comments_per_page' => 50,
        'default_comments_page' => 'newest',
        'comment_order' => 'asc',
        'sticky_posts' => array(),
        'widget_categories' => array(),
        'widget_text' => array(),
        'widget_rss' => array(),
        'uninstall_plugins' => array(),
        // 2.8
        'timezone_string' => $timezone_string,
        // 3.0
        'page_for_posts' => 0,
        'page_on_front' => 0,
        // 3.1
        'default_post_format' => 0,
        // 3.5
        'link_manager_enabled' => 0,
        // 4.3.0
        'finished_splitting_shared_terms' => 1,
        'site_icon' => 0,
        // 4.4.0
        'medium_large_size_w' => 768,
        'medium_large_size_h' => 0,
    );
    // 3.3
    if (!is_multisite()) {
        $options['initial_db_version'] = (!empty($wp_current_db_version) && $wp_current_db_version < $wp_db_version) ? $wp_current_db_version : $wp_db_version;
    }
    // 3.0 multisite
    if (is_multisite()) {
        /* translators: site tagline */
        $options['blogdescription'] = sprintf(__('Just another %s site'), get_network()->site_name);
        $options['permalink_structure'] = '/%year%/%monthnum%/%day%/%postname%/';
    }
    // Set autoload to no for these options
    $fat_options = array('moderation_keys', 'recently_edited', 'blacklist_keys', 'uninstall_plugins');
    $keys = "'" . implode("', '", array_keys($options)) . "'";
    $existing_options = $wpdb->get_col("SELECT option_name FROM {$wpdb->options} WHERE option_name in ( {$keys} )");
    $insert = '';
    foreach ($options as $option => $value) {
        if (in_array($option, $existing_options)) {
            continue;
        }
        if (in_array($option, $fat_options)) {
            $autoload = 'no';
        } else {
            $autoload = 'yes';
        }
        if (is_array($value)) {
            $value = serialize($value);
        }
        if (!empty($insert)) {
            $insert .= ', ';
        }
        $insert .= $wpdb->prepare("(%s, %s, %s)", $option, $value, $autoload);
    }
    if (!empty($insert)) {
        $wpdb->query("INSERT INTO {$wpdb->options} (option_name, option_value, autoload) VALUES " . $insert);
    }
    // In case it is set, but blank, update "home".
    if (!__get_option('home')) {
        update_option('home', $guessurl);
    }
    // Delete unused options.
    $unusedoptions = array('blodotgsping_url', 'bodyterminator', 'emailtestonly', 'phoneemail_separator', 'smilies_directory', 'subjectprefix', 'use_bbcode', 'use_blodotgsping', 'use_phoneemail', 'use_quicktags', 'use_weblogsping', 'weblogs_cache_file', 'use_preview', 'use_htmltrans', 'smilies_directory', 'fileupload_allowedusers', 'use_phoneemail', 'default_post_status', 'default_post_category', 'archive_mode', 'time_difference', 'links_minadminlevel', 'links_use_adminlevels', 'links_rating_type', 'links_rating_char', 'links_rating_ignore_zero', 'links_rating_single_image', 'links_rating_image0', 'links_rating_image1', 'links_rating_image2', 'links_rating_image3', 'links_rating_image4', 'links_rating_image5', 'links_rating_image6', 'links_rating_image7', 'links_rating_image8', 'links_rating_image9', 'links_recently_updated_time', 'links_recently_updated_prepend', 'links_recently_updated_append', 'weblogs_cacheminutes', 'comment_allowed_tags', 'search_engine_friendly_urls', 'default_geourl_lat', 'default_geourl_lon', 'use_default_geourl', 'weblogs_xml_url', 'new_users_can_blog', '_wpnonce', '_wp_http_referer', 'Update', 'action', 'rich_editing', 'autosave_interval', 'deactivated_plugins', 'can_compress_scripts', 'page_uris', 'update_core', 'update_plugins', 'update_themes', 'doing_cron', 'random_seed', 'rss_excerpt_length', 'secret', 'use_linksupdate', 'default_comment_status_page', 'wporg_popular_tags', 'what_to_show', 'rss_language', 'language', 'enable_xmlrpc', 'enable_app', 'embed_autourls', 'default_post_edit_rows', 'gzipcompression', 'advanced_edit');
    foreach ($unusedoptions as $option) {
        delete_option($option);
    }
    // Delete obsolete magpie stuff.
    $wpdb->query("DELETE FROM {$wpdb->options} WHERE option_name REGEXP '^rss_[0-9a-f]{32}(_ts)?\$'");
    // Clear expired transients
    delete_expired_transients(true);
}

WordPress Version: .25

/**
 * Create WordPress options and set the default values.
 *
 * @since 1.5.0
 *
 * @global wpdb $wpdb WordPress database abstraction object.
 * @global int  $wp_db_version
 * @global int  $wp_current_db_version
 */
function populate_options()
{
    global $wpdb, $wp_db_version, $wp_current_db_version;
    $guessurl = wp_guess_url();
    /**
     * Fires before creating WordPress options and populating their default values.
     *
     * @since 2.6.0
     */
    do_action('populate_options');
    if (ini_get('safe_mode')) {
        // Safe mode can break mkdir() so use a flat structure by default.
        $uploads_use_yearmonth_folders = 0;
    } else {
        $uploads_use_yearmonth_folders = 1;
    }
    // If WP_DEFAULT_THEME doesn't exist, fall back to the latest core default theme.
    $stylesheet = $template = WP_DEFAULT_THEME;
    $theme = wp_get_theme(WP_DEFAULT_THEME);
    if (!$theme->exists()) {
        $theme = WP_Theme::get_core_default_theme();
    }
    // If we can't find a core default theme, WP_DEFAULT_THEME is the best we can do.
    if ($theme) {
        $stylesheet = $theme->get_stylesheet();
        $template = $theme->get_template();
    }
    $timezone_string = '';
    $gmt_offset = 0;
    /* translators: default GMT offset or timezone string. Must be either a valid offset (-12 to 14)
    	   or a valid timezone string (America/New_York). See https://secure.php.net/manual/en/timezones.php
    	   for all timezone strings supported by PHP.
    	*/
    $offset_or_tz = _x('0', 'default GMT offset or timezone string');
    if (is_numeric($offset_or_tz)) {
        $gmt_offset = $offset_or_tz;
    } elseif ($offset_or_tz && in_array($offset_or_tz, timezone_identifiers_list())) {
        $timezone_string = $offset_or_tz;
    }
    $options = array(
        'siteurl' => $guessurl,
        'home' => $guessurl,
        'blogname' => __('My Site'),
        /* translators: site tagline */
        'blogdescription' => __('Just another WordPress site'),
        'users_can_register' => 0,
        'admin_email' => '[email protected]',
        /* translators: default start of the week. 0 = Sunday, 1 = Monday */
        'start_of_week' => _x('1', 'start of week'),
        'use_balanceTags' => 0,
        'use_smilies' => 1,
        'require_name_email' => 1,
        'comments_notify' => 1,
        'posts_per_rss' => 10,
        'rss_use_excerpt' => 0,
        'mailserver_url' => 'mail.example.com',
        'mailserver_login' => '[email protected]',
        'mailserver_pass' => 'password',
        'mailserver_port' => 110,
        'default_category' => 1,
        'default_comment_status' => 'open',
        'default_ping_status' => 'open',
        'default_pingback_flag' => 1,
        'posts_per_page' => 10,
        /* translators: default date format, see https://secure.php.net/date */
        'date_format' => __('F j, Y'),
        /* translators: default time format, see https://secure.php.net/date */
        'time_format' => __('g:i a'),
        /* translators: links last updated date format, see https://secure.php.net/date */
        'links_updated_date_format' => __('F j, Y g:i a'),
        'comment_moderation' => 0,
        'moderation_notify' => 1,
        'permalink_structure' => '',
        'rewrite_rules' => '',
        'hack_file' => 0,
        'blog_charset' => 'UTF-8',
        'moderation_keys' => '',
        'active_plugins' => array(),
        'category_base' => '',
        'ping_sites' => 'http://rpc.pingomatic.com/',
        'comment_max_links' => 2,
        'gmt_offset' => $gmt_offset,
        // 1.5
        'default_email_category' => 1,
        'recently_edited' => '',
        'template' => $template,
        'stylesheet' => $stylesheet,
        'comment_whitelist' => 1,
        'blacklist_keys' => '',
        'comment_registration' => 0,
        'html_type' => 'text/html',
        // 1.5.1
        'use_trackback' => 0,
        // 2.0
        'default_role' => 'subscriber',
        'db_version' => $wp_db_version,
        // 2.0.1
        'uploads_use_yearmonth_folders' => $uploads_use_yearmonth_folders,
        'upload_path' => '',
        // 2.1
        'blog_public' => '1',
        'default_link_category' => 2,
        'show_on_front' => 'posts',
        // 2.2
        'tag_base' => '',
        // 2.5
        'show_avatars' => '1',
        'avatar_rating' => 'G',
        'upload_url_path' => '',
        'thumbnail_size_w' => 150,
        'thumbnail_size_h' => 150,
        'thumbnail_crop' => 1,
        'medium_size_w' => 300,
        'medium_size_h' => 300,
        // 2.6
        'avatar_default' => 'mystery',
        // 2.7
        'large_size_w' => 1024,
        'large_size_h' => 1024,
        'image_default_link_type' => 'none',
        'image_default_size' => '',
        'image_default_align' => '',
        'close_comments_for_old_posts' => 0,
        'close_comments_days_old' => 14,
        'thread_comments' => 1,
        'thread_comments_depth' => 5,
        'page_comments' => 0,
        'comments_per_page' => 50,
        'default_comments_page' => 'newest',
        'comment_order' => 'asc',
        'sticky_posts' => array(),
        'widget_categories' => array(),
        'widget_text' => array(),
        'widget_rss' => array(),
        'uninstall_plugins' => array(),
        // 2.8
        'timezone_string' => $timezone_string,
        // 3.0
        'page_for_posts' => 0,
        'page_on_front' => 0,
        // 3.1
        'default_post_format' => 0,
        // 3.5
        'link_manager_enabled' => 0,
        // 4.3.0
        'finished_splitting_shared_terms' => 1,
        'site_icon' => 0,
        // 4.4.0
        'medium_large_size_w' => 768,
        'medium_large_size_h' => 0,
        // 4.9.6
        'wp_page_for_privacy_policy' => 0,
        // 4.9.8
        'show_comments_cookies_opt_in' => 0,
    );
    // 3.3
    if (!is_multisite()) {
        $options['initial_db_version'] = (!empty($wp_current_db_version) && $wp_current_db_version < $wp_db_version) ? $wp_current_db_version : $wp_db_version;
    }
    // 3.0 multisite
    if (is_multisite()) {
        /* translators: site tagline */
        $options['blogdescription'] = sprintf(__('Just another %s site'), get_network()->site_name);
        $options['permalink_structure'] = '/%year%/%monthnum%/%day%/%postname%/';
    }
    // Set autoload to no for these options
    $fat_options = array('moderation_keys', 'recently_edited', 'blacklist_keys', 'uninstall_plugins');
    $keys = "'" . implode("', '", array_keys($options)) . "'";
    $existing_options = $wpdb->get_col("SELECT option_name FROM {$wpdb->options} WHERE option_name in ( {$keys} )");
    $insert = '';
    foreach ($options as $option => $value) {
        if (in_array($option, $existing_options)) {
            continue;
        }
        if (in_array($option, $fat_options)) {
            $autoload = 'no';
        } else {
            $autoload = 'yes';
        }
        if (!empty($insert)) {
            $insert .= ', ';
        }
        $value = maybe_serialize(sanitize_option($option, $value));
        $insert .= $wpdb->prepare("(%s, %s, %s)", $option, $value, $autoload);
    }
    if (!empty($insert)) {
        $wpdb->query("INSERT INTO {$wpdb->options} (option_name, option_value, autoload) VALUES " . $insert);
    }
    // In case it is set, but blank, update "home".
    if (!__get_option('home')) {
        update_option('home', $guessurl);
    }
    // Delete unused options.
    $unusedoptions = array('blodotgsping_url', 'bodyterminator', 'emailtestonly', 'phoneemail_separator', 'smilies_directory', 'subjectprefix', 'use_bbcode', 'use_blodotgsping', 'use_phoneemail', 'use_quicktags', 'use_weblogsping', 'weblogs_cache_file', 'use_preview', 'use_htmltrans', 'smilies_directory', 'fileupload_allowedusers', 'use_phoneemail', 'default_post_status', 'default_post_category', 'archive_mode', 'time_difference', 'links_minadminlevel', 'links_use_adminlevels', 'links_rating_type', 'links_rating_char', 'links_rating_ignore_zero', 'links_rating_single_image', 'links_rating_image0', 'links_rating_image1', 'links_rating_image2', 'links_rating_image3', 'links_rating_image4', 'links_rating_image5', 'links_rating_image6', 'links_rating_image7', 'links_rating_image8', 'links_rating_image9', 'links_recently_updated_time', 'links_recently_updated_prepend', 'links_recently_updated_append', 'weblogs_cacheminutes', 'comment_allowed_tags', 'search_engine_friendly_urls', 'default_geourl_lat', 'default_geourl_lon', 'use_default_geourl', 'weblogs_xml_url', 'new_users_can_blog', '_wpnonce', '_wp_http_referer', 'Update', 'action', 'rich_editing', 'autosave_interval', 'deactivated_plugins', 'can_compress_scripts', 'page_uris', 'update_core', 'update_plugins', 'update_themes', 'doing_cron', 'random_seed', 'rss_excerpt_length', 'secret', 'use_linksupdate', 'default_comment_status_page', 'wporg_popular_tags', 'what_to_show', 'rss_language', 'language', 'enable_xmlrpc', 'enable_app', 'embed_autourls', 'default_post_edit_rows', 'gzipcompression', 'advanced_edit');
    foreach ($unusedoptions as $option) {
        delete_option($option);
    }
    // Delete obsolete magpie stuff.
    $wpdb->query("DELETE FROM {$wpdb->options} WHERE option_name REGEXP '^rss_[0-9a-f]{32}(_ts)?\$'");
    // Clear expired transients
    delete_expired_transients(true);
}

WordPress Version: .20

/**
 * Create WordPress options and set the default values.
 *
 * @since 1.5.0
 *
 * @global wpdb $wpdb WordPress database abstraction object.
 * @global int  $wp_db_version
 * @global int  $wp_current_db_version
 */
function populate_options()
{
    global $wpdb, $wp_db_version, $wp_current_db_version;
    $guessurl = wp_guess_url();
    /**
     * Fires before creating WordPress options and populating their default values.
     *
     * @since 2.6.0
     */
    do_action('populate_options');
    if (ini_get('safe_mode')) {
        // Safe mode can break mkdir() so use a flat structure by default.
        $uploads_use_yearmonth_folders = 0;
    } else {
        $uploads_use_yearmonth_folders = 1;
    }
    // If WP_DEFAULT_THEME doesn't exist, fall back to the latest core default theme.
    $stylesheet = $template = WP_DEFAULT_THEME;
    $theme = wp_get_theme(WP_DEFAULT_THEME);
    if (!$theme->exists()) {
        $theme = WP_Theme::get_core_default_theme();
    }
    // If we can't find a core default theme, WP_DEFAULT_THEME is the best we can do.
    if ($theme) {
        $stylesheet = $theme->get_stylesheet();
        $template = $theme->get_template();
    }
    $timezone_string = '';
    $gmt_offset = 0;
    /* translators: default GMT offset or timezone string. Must be either a valid offset (-12 to 14)
    	   or a valid timezone string (America/New_York). See https://secure.php.net/manual/en/timezones.php
    	   for all timezone strings supported by PHP.
    	*/
    $offset_or_tz = _x('0', 'default GMT offset or timezone string');
    if (is_numeric($offset_or_tz)) {
        $gmt_offset = $offset_or_tz;
    } elseif ($offset_or_tz && in_array($offset_or_tz, timezone_identifiers_list())) {
        $timezone_string = $offset_or_tz;
    }
    $options = array(
        'siteurl' => $guessurl,
        'home' => $guessurl,
        'blogname' => __('My Site'),
        /* translators: site tagline */
        'blogdescription' => __('Just another WordPress site'),
        'users_can_register' => 0,
        'admin_email' => '[email protected]',
        /* translators: default start of the week. 0 = Sunday, 1 = Monday */
        'start_of_week' => _x('1', 'start of week'),
        'use_balanceTags' => 0,
        'use_smilies' => 1,
        'require_name_email' => 1,
        'comments_notify' => 1,
        'posts_per_rss' => 10,
        'rss_use_excerpt' => 0,
        'mailserver_url' => 'mail.example.com',
        'mailserver_login' => '[email protected]',
        'mailserver_pass' => 'password',
        'mailserver_port' => 110,
        'default_category' => 1,
        'default_comment_status' => 'open',
        'default_ping_status' => 'open',
        'default_pingback_flag' => 1,
        'posts_per_page' => 10,
        /* translators: default date format, see https://secure.php.net/date */
        'date_format' => __('F j, Y'),
        /* translators: default time format, see https://secure.php.net/date */
        'time_format' => __('g:i a'),
        /* translators: links last updated date format, see https://secure.php.net/date */
        'links_updated_date_format' => __('F j, Y g:i a'),
        'comment_moderation' => 0,
        'moderation_notify' => 1,
        'permalink_structure' => '',
        'rewrite_rules' => '',
        'hack_file' => 0,
        'blog_charset' => 'UTF-8',
        'moderation_keys' => '',
        'active_plugins' => array(),
        'category_base' => '',
        'ping_sites' => 'http://rpc.pingomatic.com/',
        'comment_max_links' => 2,
        'gmt_offset' => $gmt_offset,
        // 1.5
        'default_email_category' => 1,
        'recently_edited' => '',
        'template' => $template,
        'stylesheet' => $stylesheet,
        'comment_whitelist' => 1,
        'blacklist_keys' => '',
        'comment_registration' => 0,
        'html_type' => 'text/html',
        // 1.5.1
        'use_trackback' => 0,
        // 2.0
        'default_role' => 'subscriber',
        'db_version' => $wp_db_version,
        // 2.0.1
        'uploads_use_yearmonth_folders' => $uploads_use_yearmonth_folders,
        'upload_path' => '',
        // 2.1
        'blog_public' => '1',
        'default_link_category' => 2,
        'show_on_front' => 'posts',
        // 2.2
        'tag_base' => '',
        // 2.5
        'show_avatars' => '1',
        'avatar_rating' => 'G',
        'upload_url_path' => '',
        'thumbnail_size_w' => 150,
        'thumbnail_size_h' => 150,
        'thumbnail_crop' => 1,
        'medium_size_w' => 300,
        'medium_size_h' => 300,
        // 2.6
        'avatar_default' => 'mystery',
        // 2.7
        'large_size_w' => 1024,
        'large_size_h' => 1024,
        'image_default_link_type' => 'none',
        'image_default_size' => '',
        'image_default_align' => '',
        'close_comments_for_old_posts' => 0,
        'close_comments_days_old' => 14,
        'thread_comments' => 1,
        'thread_comments_depth' => 5,
        'page_comments' => 0,
        'comments_per_page' => 50,
        'default_comments_page' => 'newest',
        'comment_order' => 'asc',
        'sticky_posts' => array(),
        'widget_categories' => array(),
        'widget_text' => array(),
        'widget_rss' => array(),
        'uninstall_plugins' => array(),
        // 2.8
        'timezone_string' => $timezone_string,
        // 3.0
        'page_for_posts' => 0,
        'page_on_front' => 0,
        // 3.1
        'default_post_format' => 0,
        // 3.5
        'link_manager_enabled' => 0,
        // 4.3.0
        'finished_splitting_shared_terms' => 1,
        'site_icon' => 0,
        // 4.4.0
        'medium_large_size_w' => 768,
        'medium_large_size_h' => 0,
        // 4.9.6
        'wp_page_for_privacy_policy' => 0,
        // 4.9.8
        'show_comments_cookies_opt_in' => 0,
    );
    // 3.3
    if (!is_multisite()) {
        $options['initial_db_version'] = (!empty($wp_current_db_version) && $wp_current_db_version < $wp_db_version) ? $wp_current_db_version : $wp_db_version;
    }
    // 3.0 multisite
    if (is_multisite()) {
        /* translators: site tagline */
        $options['blogdescription'] = sprintf(__('Just another %s site'), get_network()->site_name);
        $options['permalink_structure'] = '/%year%/%monthnum%/%day%/%postname%/';
    }
    // Set autoload to no for these options
    $fat_options = array('moderation_keys', 'recently_edited', 'blacklist_keys', 'uninstall_plugins');
    $keys = "'" . implode("', '", array_keys($options)) . "'";
    $existing_options = $wpdb->get_col("SELECT option_name FROM {$wpdb->options} WHERE option_name in ( {$keys} )");
    $insert = '';
    foreach ($options as $option => $value) {
        if (in_array($option, $existing_options)) {
            continue;
        }
        if (in_array($option, $fat_options)) {
            $autoload = 'no';
        } else {
            $autoload = 'yes';
        }
        if (is_array($value)) {
            $value = serialize($value);
        }
        if (!empty($insert)) {
            $insert .= ', ';
        }
        $insert .= $wpdb->prepare("(%s, %s, %s)", $option, $value, $autoload);
    }
    if (!empty($insert)) {
        $wpdb->query("INSERT INTO {$wpdb->options} (option_name, option_value, autoload) VALUES " . $insert);
    }
    // In case it is set, but blank, update "home".
    if (!__get_option('home')) {
        update_option('home', $guessurl);
    }
    // Delete unused options.
    $unusedoptions = array('blodotgsping_url', 'bodyterminator', 'emailtestonly', 'phoneemail_separator', 'smilies_directory', 'subjectprefix', 'use_bbcode', 'use_blodotgsping', 'use_phoneemail', 'use_quicktags', 'use_weblogsping', 'weblogs_cache_file', 'use_preview', 'use_htmltrans', 'smilies_directory', 'fileupload_allowedusers', 'use_phoneemail', 'default_post_status', 'default_post_category', 'archive_mode', 'time_difference', 'links_minadminlevel', 'links_use_adminlevels', 'links_rating_type', 'links_rating_char', 'links_rating_ignore_zero', 'links_rating_single_image', 'links_rating_image0', 'links_rating_image1', 'links_rating_image2', 'links_rating_image3', 'links_rating_image4', 'links_rating_image5', 'links_rating_image6', 'links_rating_image7', 'links_rating_image8', 'links_rating_image9', 'links_recently_updated_time', 'links_recently_updated_prepend', 'links_recently_updated_append', 'weblogs_cacheminutes', 'comment_allowed_tags', 'search_engine_friendly_urls', 'default_geourl_lat', 'default_geourl_lon', 'use_default_geourl', 'weblogs_xml_url', 'new_users_can_blog', '_wpnonce', '_wp_http_referer', 'Update', 'action', 'rich_editing', 'autosave_interval', 'deactivated_plugins', 'can_compress_scripts', 'page_uris', 'update_core', 'update_plugins', 'update_themes', 'doing_cron', 'random_seed', 'rss_excerpt_length', 'secret', 'use_linksupdate', 'default_comment_status_page', 'wporg_popular_tags', 'what_to_show', 'rss_language', 'language', 'enable_xmlrpc', 'enable_app', 'embed_autourls', 'default_post_edit_rows', 'gzipcompression', 'advanced_edit');
    foreach ($unusedoptions as $option) {
        delete_option($option);
    }
    // Delete obsolete magpie stuff.
    $wpdb->query("DELETE FROM {$wpdb->options} WHERE option_name REGEXP '^rss_[0-9a-f]{32}(_ts)?\$'");
    // Clear expired transients
    delete_expired_transients(true);
}

WordPress Version: 9.2

/**
 * Create WordPress options and set the default values.
 *
 * @since 1.5.0
 *
 * @global wpdb $wpdb WordPress database abstraction object.
 * @global int  $wp_db_version
 * @global int  $wp_current_db_version
 */
function populate_options()
{
    global $wpdb, $wp_db_version, $wp_current_db_version;
    $guessurl = wp_guess_url();
    /**
     * Fires before creating WordPress options and populating their default values.
     *
     * @since 2.6.0
     */
    do_action('populate_options');
    if (ini_get('safe_mode')) {
        // Safe mode can break mkdir() so use a flat structure by default.
        $uploads_use_yearmonth_folders = 0;
    } else {
        $uploads_use_yearmonth_folders = 1;
    }
    // If WP_DEFAULT_THEME doesn't exist, fall back to the latest core default theme.
    $stylesheet = $template = WP_DEFAULT_THEME;
    $theme = wp_get_theme(WP_DEFAULT_THEME);
    if (!$theme->exists()) {
        $theme = WP_Theme::get_core_default_theme();
    }
    // If we can't find a core default theme, WP_DEFAULT_THEME is the best we can do.
    if ($theme) {
        $stylesheet = $theme->get_stylesheet();
        $template = $theme->get_template();
    }
    $timezone_string = '';
    $gmt_offset = 0;
    /* translators: default GMT offset or timezone string. Must be either a valid offset (-12 to 14)
    	   or a valid timezone string (America/New_York). See https://secure.php.net/manual/en/timezones.php
    	   for all timezone strings supported by PHP.
    	*/
    $offset_or_tz = _x('0', 'default GMT offset or timezone string');
    if (is_numeric($offset_or_tz)) {
        $gmt_offset = $offset_or_tz;
    } elseif ($offset_or_tz && in_array($offset_or_tz, timezone_identifiers_list())) {
        $timezone_string = $offset_or_tz;
    }
    $options = array(
        'siteurl' => $guessurl,
        'home' => $guessurl,
        'blogname' => __('My Site'),
        /* translators: site tagline */
        'blogdescription' => __('Just another WordPress site'),
        'users_can_register' => 0,
        'admin_email' => '[email protected]',
        /* translators: default start of the week. 0 = Sunday, 1 = Monday */
        'start_of_week' => _x('1', 'start of week'),
        'use_balanceTags' => 0,
        'use_smilies' => 1,
        'require_name_email' => 1,
        'comments_notify' => 1,
        'posts_per_rss' => 10,
        'rss_use_excerpt' => 0,
        'mailserver_url' => 'mail.example.com',
        'mailserver_login' => '[email protected]',
        'mailserver_pass' => 'password',
        'mailserver_port' => 110,
        'default_category' => 1,
        'default_comment_status' => 'open',
        'default_ping_status' => 'open',
        'default_pingback_flag' => 1,
        'posts_per_page' => 10,
        /* translators: default date format, see https://secure.php.net/date */
        'date_format' => __('F j, Y'),
        /* translators: default time format, see https://secure.php.net/date */
        'time_format' => __('g:i a'),
        /* translators: links last updated date format, see https://secure.php.net/date */
        'links_updated_date_format' => __('F j, Y g:i a'),
        'comment_moderation' => 0,
        'moderation_notify' => 1,
        'permalink_structure' => '',
        'rewrite_rules' => '',
        'hack_file' => 0,
        'blog_charset' => 'UTF-8',
        'moderation_keys' => '',
        'active_plugins' => array(),
        'category_base' => '',
        'ping_sites' => 'http://rpc.pingomatic.com/',
        'comment_max_links' => 2,
        'gmt_offset' => $gmt_offset,
        // 1.5
        'default_email_category' => 1,
        'recently_edited' => '',
        'template' => $template,
        'stylesheet' => $stylesheet,
        'comment_whitelist' => 1,
        'blacklist_keys' => '',
        'comment_registration' => 0,
        'html_type' => 'text/html',
        // 1.5.1
        'use_trackback' => 0,
        // 2.0
        'default_role' => 'subscriber',
        'db_version' => $wp_db_version,
        // 2.0.1
        'uploads_use_yearmonth_folders' => $uploads_use_yearmonth_folders,
        'upload_path' => '',
        // 2.1
        'blog_public' => '1',
        'default_link_category' => 2,
        'show_on_front' => 'posts',
        // 2.2
        'tag_base' => '',
        // 2.5
        'show_avatars' => '1',
        'avatar_rating' => 'G',
        'upload_url_path' => '',
        'thumbnail_size_w' => 150,
        'thumbnail_size_h' => 150,
        'thumbnail_crop' => 1,
        'medium_size_w' => 300,
        'medium_size_h' => 300,
        // 2.6
        'avatar_default' => 'mystery',
        // 2.7
        'large_size_w' => 1024,
        'large_size_h' => 1024,
        'image_default_link_type' => 'none',
        'image_default_size' => '',
        'image_default_align' => '',
        'close_comments_for_old_posts' => 0,
        'close_comments_days_old' => 14,
        'thread_comments' => 1,
        'thread_comments_depth' => 5,
        'page_comments' => 0,
        'comments_per_page' => 50,
        'default_comments_page' => 'newest',
        'comment_order' => 'asc',
        'sticky_posts' => array(),
        'widget_categories' => array(),
        'widget_text' => array(),
        'widget_rss' => array(),
        'uninstall_plugins' => array(),
        // 2.8
        'timezone_string' => $timezone_string,
        // 3.0
        'page_for_posts' => 0,
        'page_on_front' => 0,
        // 3.1
        'default_post_format' => 0,
        // 3.5
        'link_manager_enabled' => 0,
        // 4.3.0
        'finished_splitting_shared_terms' => 1,
        'site_icon' => 0,
        // 4.4.0
        'medium_large_size_w' => 768,
        'medium_large_size_h' => 0,
    );
    // 3.3
    if (!is_multisite()) {
        $options['initial_db_version'] = (!empty($wp_current_db_version) && $wp_current_db_version < $wp_db_version) ? $wp_current_db_version : $wp_db_version;
    }
    // 3.0 multisite
    if (is_multisite()) {
        /* translators: site tagline */
        $options['blogdescription'] = sprintf(__('Just another %s site'), get_network()->site_name);
        $options['permalink_structure'] = '/%year%/%monthnum%/%day%/%postname%/';
    }
    // Set autoload to no for these options
    $fat_options = array('moderation_keys', 'recently_edited', 'blacklist_keys', 'uninstall_plugins');
    $keys = "'" . implode("', '", array_keys($options)) . "'";
    $existing_options = $wpdb->get_col("SELECT option_name FROM {$wpdb->options} WHERE option_name in ( {$keys} )");
    $insert = '';
    foreach ($options as $option => $value) {
        if (in_array($option, $existing_options)) {
            continue;
        }
        if (in_array($option, $fat_options)) {
            $autoload = 'no';
        } else {
            $autoload = 'yes';
        }
        if (is_array($value)) {
            $value = serialize($value);
        }
        if (!empty($insert)) {
            $insert .= ', ';
        }
        $insert .= $wpdb->prepare("(%s, %s, %s)", $option, $value, $autoload);
    }
    if (!empty($insert)) {
        $wpdb->query("INSERT INTO {$wpdb->options} (option_name, option_value, autoload) VALUES " . $insert);
    }
    // In case it is set, but blank, update "home".
    if (!__get_option('home')) {
        update_option('home', $guessurl);
    }
    // Delete unused options.
    $unusedoptions = array('blodotgsping_url', 'bodyterminator', 'emailtestonly', 'phoneemail_separator', 'smilies_directory', 'subjectprefix', 'use_bbcode', 'use_blodotgsping', 'use_phoneemail', 'use_quicktags', 'use_weblogsping', 'weblogs_cache_file', 'use_preview', 'use_htmltrans', 'smilies_directory', 'fileupload_allowedusers', 'use_phoneemail', 'default_post_status', 'default_post_category', 'archive_mode', 'time_difference', 'links_minadminlevel', 'links_use_adminlevels', 'links_rating_type', 'links_rating_char', 'links_rating_ignore_zero', 'links_rating_single_image', 'links_rating_image0', 'links_rating_image1', 'links_rating_image2', 'links_rating_image3', 'links_rating_image4', 'links_rating_image5', 'links_rating_image6', 'links_rating_image7', 'links_rating_image8', 'links_rating_image9', 'links_recently_updated_time', 'links_recently_updated_prepend', 'links_recently_updated_append', 'weblogs_cacheminutes', 'comment_allowed_tags', 'search_engine_friendly_urls', 'default_geourl_lat', 'default_geourl_lon', 'use_default_geourl', 'weblogs_xml_url', 'new_users_can_blog', '_wpnonce', '_wp_http_referer', 'Update', 'action', 'rich_editing', 'autosave_interval', 'deactivated_plugins', 'can_compress_scripts', 'page_uris', 'update_core', 'update_plugins', 'update_themes', 'doing_cron', 'random_seed', 'rss_excerpt_length', 'secret', 'use_linksupdate', 'default_comment_status_page', 'wporg_popular_tags', 'what_to_show', 'rss_language', 'language', 'enable_xmlrpc', 'enable_app', 'embed_autourls', 'default_post_edit_rows', 'gzipcompression', 'advanced_edit');
    foreach ($unusedoptions as $option) {
        delete_option($option);
    }
    // Delete obsolete magpie stuff.
    $wpdb->query("DELETE FROM {$wpdb->options} WHERE option_name REGEXP '^rss_[0-9a-f]{32}(_ts)?\$'");
    // Clear expired transients
    delete_expired_transients(true);
}

WordPress Version: .10

/**
 * Create WordPress options and set the default values.
 *
 * @since 1.5.0
 *
 * @global wpdb $wpdb WordPress database abstraction object.
 * @global int  $wp_db_version
 * @global int  $wp_current_db_version
 */
function populate_options()
{
    global $wpdb, $wp_db_version, $wp_current_db_version;
    $guessurl = wp_guess_url();
    /**
     * Fires before creating WordPress options and populating their default values.
     *
     * @since 2.6.0
     */
    do_action('populate_options');
    if (ini_get('safe_mode')) {
        // Safe mode can break mkdir() so use a flat structure by default.
        $uploads_use_yearmonth_folders = 0;
    } else {
        $uploads_use_yearmonth_folders = 1;
    }
    // If WP_DEFAULT_THEME doesn't exist, fall back to the latest core default theme.
    $stylesheet = $template = WP_DEFAULT_THEME;
    $theme = wp_get_theme(WP_DEFAULT_THEME);
    if (!$theme->exists()) {
        $theme = WP_Theme::get_core_default_theme();
    }
    // If we can't find a core default theme, WP_DEFAULT_THEME is the best we can do.
    if ($theme) {
        $stylesheet = $theme->get_stylesheet();
        $template = $theme->get_template();
    }
    $timezone_string = '';
    $gmt_offset = 0;
    /* translators: default GMT offset or timezone string. Must be either a valid offset (-12 to 14)
    	   or a valid timezone string (America/New_York). See https://secure.php.net/manual/en/timezones.php
    	   for all timezone strings supported by PHP.
    	*/
    $offset_or_tz = _x('0', 'default GMT offset or timezone string');
    if (is_numeric($offset_or_tz)) {
        $gmt_offset = $offset_or_tz;
    } elseif ($offset_or_tz && in_array($offset_or_tz, timezone_identifiers_list())) {
        $timezone_string = $offset_or_tz;
    }
    $options = array(
        'siteurl' => $guessurl,
        'home' => $guessurl,
        'blogname' => __('My Site'),
        /* translators: site tagline */
        'blogdescription' => __('Just another WordPress site'),
        'users_can_register' => 0,
        'admin_email' => '[email protected]',
        /* translators: default start of the week. 0 = Sunday, 1 = Monday */
        'start_of_week' => _x('1', 'start of week'),
        'use_balanceTags' => 0,
        'use_smilies' => 1,
        'require_name_email' => 1,
        'comments_notify' => 1,
        'posts_per_rss' => 10,
        'rss_use_excerpt' => 0,
        'mailserver_url' => 'mail.example.com',
        'mailserver_login' => '[email protected]',
        'mailserver_pass' => 'password',
        'mailserver_port' => 110,
        'default_category' => 1,
        'default_comment_status' => 'open',
        'default_ping_status' => 'open',
        'default_pingback_flag' => 1,
        'posts_per_page' => 10,
        /* translators: default date format, see https://secure.php.net/date */
        'date_format' => __('F j, Y'),
        /* translators: default time format, see https://secure.php.net/date */
        'time_format' => __('g:i a'),
        /* translators: links last updated date format, see https://secure.php.net/date */
        'links_updated_date_format' => __('F j, Y g:i a'),
        'comment_moderation' => 0,
        'moderation_notify' => 1,
        'permalink_structure' => '',
        'rewrite_rules' => '',
        'hack_file' => 0,
        'blog_charset' => 'UTF-8',
        'moderation_keys' => '',
        'active_plugins' => array(),
        'category_base' => '',
        'ping_sites' => 'http://rpc.pingomatic.com/',
        'comment_max_links' => 2,
        'gmt_offset' => $gmt_offset,
        // 1.5
        'default_email_category' => 1,
        'recently_edited' => '',
        'template' => $template,
        'stylesheet' => $stylesheet,
        'comment_whitelist' => 1,
        'blacklist_keys' => '',
        'comment_registration' => 0,
        'html_type' => 'text/html',
        // 1.5.1
        'use_trackback' => 0,
        // 2.0
        'default_role' => 'subscriber',
        'db_version' => $wp_db_version,
        // 2.0.1
        'uploads_use_yearmonth_folders' => $uploads_use_yearmonth_folders,
        'upload_path' => '',
        // 2.1
        'blog_public' => '1',
        'default_link_category' => 2,
        'show_on_front' => 'posts',
        // 2.2
        'tag_base' => '',
        // 2.5
        'show_avatars' => '1',
        'avatar_rating' => 'G',
        'upload_url_path' => '',
        'thumbnail_size_w' => 150,
        'thumbnail_size_h' => 150,
        'thumbnail_crop' => 1,
        'medium_size_w' => 300,
        'medium_size_h' => 300,
        // 2.6
        'avatar_default' => 'mystery',
        // 2.7
        'large_size_w' => 1024,
        'large_size_h' => 1024,
        'image_default_link_type' => 'none',
        'image_default_size' => '',
        'image_default_align' => '',
        'close_comments_for_old_posts' => 0,
        'close_comments_days_old' => 14,
        'thread_comments' => 1,
        'thread_comments_depth' => 5,
        'page_comments' => 0,
        'comments_per_page' => 50,
        'default_comments_page' => 'newest',
        'comment_order' => 'asc',
        'sticky_posts' => array(),
        'widget_categories' => array(),
        'widget_text' => array(),
        'widget_rss' => array(),
        'uninstall_plugins' => array(),
        // 2.8
        'timezone_string' => $timezone_string,
        // 3.0
        'page_for_posts' => 0,
        'page_on_front' => 0,
        // 3.1
        'default_post_format' => 0,
        // 3.5
        'link_manager_enabled' => 0,
        // 4.3.0
        'finished_splitting_shared_terms' => 1,
        'site_icon' => 0,
        // 4.4.0
        'medium_large_size_w' => 768,
        'medium_large_size_h' => 0,
        // 4.9.6
        'wp_page_for_privacy_policy' => 0,
        // 4.9.8
        'show_comments_cookies_opt_in' => 0,
    );
    // 3.3
    if (!is_multisite()) {
        $options['initial_db_version'] = (!empty($wp_current_db_version) && $wp_current_db_version < $wp_db_version) ? $wp_current_db_version : $wp_db_version;
    }
    // 3.0 multisite
    if (is_multisite()) {
        /* translators: site tagline */
        $options['blogdescription'] = sprintf(__('Just another %s site'), get_network()->site_name);
        $options['permalink_structure'] = '/%year%/%monthnum%/%day%/%postname%/';
    }
    // Set autoload to no for these options
    $fat_options = array('moderation_keys', 'recently_edited', 'blacklist_keys', 'uninstall_plugins');
    $keys = "'" . implode("', '", array_keys($options)) . "'";
    $existing_options = $wpdb->get_col("SELECT option_name FROM {$wpdb->options} WHERE option_name in ( {$keys} )");
    $insert = '';
    foreach ($options as $option => $value) {
        if (in_array($option, $existing_options)) {
            continue;
        }
        if (in_array($option, $fat_options)) {
            $autoload = 'no';
        } else {
            $autoload = 'yes';
        }
        if (is_array($value)) {
            $value = serialize($value);
        }
        if (!empty($insert)) {
            $insert .= ', ';
        }
        $insert .= $wpdb->prepare("(%s, %s, %s)", $option, $value, $autoload);
    }
    if (!empty($insert)) {
        $wpdb->query("INSERT INTO {$wpdb->options} (option_name, option_value, autoload) VALUES " . $insert);
    }
    // In case it is set, but blank, update "home".
    if (!__get_option('home')) {
        update_option('home', $guessurl);
    }
    // Delete unused options.
    $unusedoptions = array('blodotgsping_url', 'bodyterminator', 'emailtestonly', 'phoneemail_separator', 'smilies_directory', 'subjectprefix', 'use_bbcode', 'use_blodotgsping', 'use_phoneemail', 'use_quicktags', 'use_weblogsping', 'weblogs_cache_file', 'use_preview', 'use_htmltrans', 'smilies_directory', 'fileupload_allowedusers', 'use_phoneemail', 'default_post_status', 'default_post_category', 'archive_mode', 'time_difference', 'links_minadminlevel', 'links_use_adminlevels', 'links_rating_type', 'links_rating_char', 'links_rating_ignore_zero', 'links_rating_single_image', 'links_rating_image0', 'links_rating_image1', 'links_rating_image2', 'links_rating_image3', 'links_rating_image4', 'links_rating_image5', 'links_rating_image6', 'links_rating_image7', 'links_rating_image8', 'links_rating_image9', 'links_recently_updated_time', 'links_recently_updated_prepend', 'links_recently_updated_append', 'weblogs_cacheminutes', 'comment_allowed_tags', 'search_engine_friendly_urls', 'default_geourl_lat', 'default_geourl_lon', 'use_default_geourl', 'weblogs_xml_url', 'new_users_can_blog', '_wpnonce', '_wp_http_referer', 'Update', 'action', 'rich_editing', 'autosave_interval', 'deactivated_plugins', 'can_compress_scripts', 'page_uris', 'update_core', 'update_plugins', 'update_themes', 'doing_cron', 'random_seed', 'rss_excerpt_length', 'secret', 'use_linksupdate', 'default_comment_status_page', 'wporg_popular_tags', 'what_to_show', 'rss_language', 'language', 'enable_xmlrpc', 'enable_app', 'embed_autourls', 'default_post_edit_rows', 'gzipcompression', 'advanced_edit');
    foreach ($unusedoptions as $option) {
        delete_option($option);
    }
    // Delete obsolete magpie stuff.
    $wpdb->query("DELETE FROM {$wpdb->options} WHERE option_name REGEXP '^rss_[0-9a-f]{32}(_ts)?\$'");
    // Clear expired transients
    delete_expired_transients(true);
}

WordPress Version: 4.9

/**
 * Create WordPress options and set the default values.
 *
 * @since 1.5.0
 *
 * @global wpdb $wpdb WordPress database abstraction object.
 * @global int  $wp_db_version
 * @global int  $wp_current_db_version
 */
function populate_options()
{
    global $wpdb, $wp_db_version, $wp_current_db_version;
    $guessurl = wp_guess_url();
    /**
     * Fires before creating WordPress options and populating their default values.
     *
     * @since 2.6.0
     */
    do_action('populate_options');
    if (ini_get('safe_mode')) {
        // Safe mode can break mkdir() so use a flat structure by default.
        $uploads_use_yearmonth_folders = 0;
    } else {
        $uploads_use_yearmonth_folders = 1;
    }
    // If WP_DEFAULT_THEME doesn't exist, fall back to the latest core default theme.
    $stylesheet = $template = WP_DEFAULT_THEME;
    $theme = wp_get_theme(WP_DEFAULT_THEME);
    if (!$theme->exists()) {
        $theme = WP_Theme::get_core_default_theme();
    }
    // If we can't find a core default theme, WP_DEFAULT_THEME is the best we can do.
    if ($theme) {
        $stylesheet = $theme->get_stylesheet();
        $template = $theme->get_template();
    }
    $timezone_string = '';
    $gmt_offset = 0;
    /* translators: default GMT offset or timezone string. Must be either a valid offset (-12 to 14)
    	   or a valid timezone string (America/New_York). See https://secure.php.net/manual/en/timezones.php
    	   for all timezone strings supported by PHP.
    	*/
    $offset_or_tz = _x('0', 'default GMT offset or timezone string');
    if (is_numeric($offset_or_tz)) {
        $gmt_offset = $offset_or_tz;
    } elseif ($offset_or_tz && in_array($offset_or_tz, timezone_identifiers_list())) {
        $timezone_string = $offset_or_tz;
    }
    $options = array(
        'siteurl' => $guessurl,
        'home' => $guessurl,
        'blogname' => __('My Site'),
        /* translators: site tagline */
        'blogdescription' => __('Just another WordPress site'),
        'users_can_register' => 0,
        'admin_email' => '[email protected]',
        /* translators: default start of the week. 0 = Sunday, 1 = Monday */
        'start_of_week' => _x('1', 'start of week'),
        'use_balanceTags' => 0,
        'use_smilies' => 1,
        'require_name_email' => 1,
        'comments_notify' => 1,
        'posts_per_rss' => 10,
        'rss_use_excerpt' => 0,
        'mailserver_url' => 'mail.example.com',
        'mailserver_login' => '[email protected]',
        'mailserver_pass' => 'password',
        'mailserver_port' => 110,
        'default_category' => 1,
        'default_comment_status' => 'open',
        'default_ping_status' => 'open',
        'default_pingback_flag' => 1,
        'posts_per_page' => 10,
        /* translators: default date format, see https://secure.php.net/date */
        'date_format' => __('F j, Y'),
        /* translators: default time format, see https://secure.php.net/date */
        'time_format' => __('g:i a'),
        /* translators: links last updated date format, see https://secure.php.net/date */
        'links_updated_date_format' => __('F j, Y g:i a'),
        'comment_moderation' => 0,
        'moderation_notify' => 1,
        'permalink_structure' => '',
        'rewrite_rules' => '',
        'hack_file' => 0,
        'blog_charset' => 'UTF-8',
        'moderation_keys' => '',
        'active_plugins' => array(),
        'category_base' => '',
        'ping_sites' => 'http://rpc.pingomatic.com/',
        'comment_max_links' => 2,
        'gmt_offset' => $gmt_offset,
        // 1.5
        'default_email_category' => 1,
        'recently_edited' => '',
        'template' => $template,
        'stylesheet' => $stylesheet,
        'comment_whitelist' => 1,
        'blacklist_keys' => '',
        'comment_registration' => 0,
        'html_type' => 'text/html',
        // 1.5.1
        'use_trackback' => 0,
        // 2.0
        'default_role' => 'subscriber',
        'db_version' => $wp_db_version,
        // 2.0.1
        'uploads_use_yearmonth_folders' => $uploads_use_yearmonth_folders,
        'upload_path' => '',
        // 2.1
        'blog_public' => '1',
        'default_link_category' => 2,
        'show_on_front' => 'posts',
        // 2.2
        'tag_base' => '',
        // 2.5
        'show_avatars' => '1',
        'avatar_rating' => 'G',
        'upload_url_path' => '',
        'thumbnail_size_w' => 150,
        'thumbnail_size_h' => 150,
        'thumbnail_crop' => 1,
        'medium_size_w' => 300,
        'medium_size_h' => 300,
        // 2.6
        'avatar_default' => 'mystery',
        // 2.7
        'large_size_w' => 1024,
        'large_size_h' => 1024,
        'image_default_link_type' => 'none',
        'image_default_size' => '',
        'image_default_align' => '',
        'close_comments_for_old_posts' => 0,
        'close_comments_days_old' => 14,
        'thread_comments' => 1,
        'thread_comments_depth' => 5,
        'page_comments' => 0,
        'comments_per_page' => 50,
        'default_comments_page' => 'newest',
        'comment_order' => 'asc',
        'sticky_posts' => array(),
        'widget_categories' => array(),
        'widget_text' => array(),
        'widget_rss' => array(),
        'uninstall_plugins' => array(),
        // 2.8
        'timezone_string' => $timezone_string,
        // 3.0
        'page_for_posts' => 0,
        'page_on_front' => 0,
        // 3.1
        'default_post_format' => 0,
        // 3.5
        'link_manager_enabled' => 0,
        // 4.3.0
        'finished_splitting_shared_terms' => 1,
        'site_icon' => 0,
        // 4.4.0
        'medium_large_size_w' => 768,
        'medium_large_size_h' => 0,
    );
    // 3.3
    if (!is_multisite()) {
        $options['initial_db_version'] = (!empty($wp_current_db_version) && $wp_current_db_version < $wp_db_version) ? $wp_current_db_version : $wp_db_version;
    }
    // 3.0 multisite
    if (is_multisite()) {
        /* translators: site tagline */
        $options['blogdescription'] = sprintf(__('Just another %s site'), get_network()->site_name);
        $options['permalink_structure'] = '/%year%/%monthnum%/%day%/%postname%/';
    }
    // Set autoload to no for these options
    $fat_options = array('moderation_keys', 'recently_edited', 'blacklist_keys', 'uninstall_plugins');
    $keys = "'" . implode("', '", array_keys($options)) . "'";
    $existing_options = $wpdb->get_col("SELECT option_name FROM {$wpdb->options} WHERE option_name in ( {$keys} )");
    $insert = '';
    foreach ($options as $option => $value) {
        if (in_array($option, $existing_options)) {
            continue;
        }
        if (in_array($option, $fat_options)) {
            $autoload = 'no';
        } else {
            $autoload = 'yes';
        }
        if (is_array($value)) {
            $value = serialize($value);
        }
        if (!empty($insert)) {
            $insert .= ', ';
        }
        $insert .= $wpdb->prepare("(%s, %s, %s)", $option, $value, $autoload);
    }
    if (!empty($insert)) {
        $wpdb->query("INSERT INTO {$wpdb->options} (option_name, option_value, autoload) VALUES " . $insert);
    }
    // In case it is set, but blank, update "home".
    if (!__get_option('home')) {
        update_option('home', $guessurl);
    }
    // Delete unused options.
    $unusedoptions = array('blodotgsping_url', 'bodyterminator', 'emailtestonly', 'phoneemail_separator', 'smilies_directory', 'subjectprefix', 'use_bbcode', 'use_blodotgsping', 'use_phoneemail', 'use_quicktags', 'use_weblogsping', 'weblogs_cache_file', 'use_preview', 'use_htmltrans', 'smilies_directory', 'fileupload_allowedusers', 'use_phoneemail', 'default_post_status', 'default_post_category', 'archive_mode', 'time_difference', 'links_minadminlevel', 'links_use_adminlevels', 'links_rating_type', 'links_rating_char', 'links_rating_ignore_zero', 'links_rating_single_image', 'links_rating_image0', 'links_rating_image1', 'links_rating_image2', 'links_rating_image3', 'links_rating_image4', 'links_rating_image5', 'links_rating_image6', 'links_rating_image7', 'links_rating_image8', 'links_rating_image9', 'links_recently_updated_time', 'links_recently_updated_prepend', 'links_recently_updated_append', 'weblogs_cacheminutes', 'comment_allowed_tags', 'search_engine_friendly_urls', 'default_geourl_lat', 'default_geourl_lon', 'use_default_geourl', 'weblogs_xml_url', 'new_users_can_blog', '_wpnonce', '_wp_http_referer', 'Update', 'action', 'rich_editing', 'autosave_interval', 'deactivated_plugins', 'can_compress_scripts', 'page_uris', 'update_core', 'update_plugins', 'update_themes', 'doing_cron', 'random_seed', 'rss_excerpt_length', 'secret', 'use_linksupdate', 'default_comment_status_page', 'wporg_popular_tags', 'what_to_show', 'rss_language', 'language', 'enable_xmlrpc', 'enable_app', 'embed_autourls', 'default_post_edit_rows', 'gzipcompression', 'advanced_edit');
    foreach ($unusedoptions as $option) {
        delete_option($option);
    }
    // Delete obsolete magpie stuff.
    $wpdb->query("DELETE FROM {$wpdb->options} WHERE option_name REGEXP '^rss_[0-9a-f]{32}(_ts)?\$'");
    // Clear expired transients
    delete_expired_transients(true);
}

WordPress Version: 4.7

/**
 * Create WordPress options and set the default values.
 *
 * @since 1.5.0
 *
 * @global wpdb $wpdb WordPress database abstraction object.
 * @global int  $wp_db_version
 * @global int  $wp_current_db_version
 */
function populate_options()
{
    global $wpdb, $wp_db_version, $wp_current_db_version;
    $guessurl = wp_guess_url();
    /**
     * Fires before creating WordPress options and populating their default values.
     *
     * @since 2.6.0
     */
    do_action('populate_options');
    if (ini_get('safe_mode')) {
        // Safe mode can break mkdir() so use a flat structure by default.
        $uploads_use_yearmonth_folders = 0;
    } else {
        $uploads_use_yearmonth_folders = 1;
    }
    // If WP_DEFAULT_THEME doesn't exist, fall back to the latest core default theme.
    $stylesheet = $template = WP_DEFAULT_THEME;
    $theme = wp_get_theme(WP_DEFAULT_THEME);
    if (!$theme->exists()) {
        $theme = WP_Theme::get_core_default_theme();
    }
    // If we can't find a core default theme, WP_DEFAULT_THEME is the best we can do.
    if ($theme) {
        $stylesheet = $theme->get_stylesheet();
        $template = $theme->get_template();
    }
    $timezone_string = '';
    $gmt_offset = 0;
    /* translators: default GMT offset or timezone string. Must be either a valid offset (-12 to 14)
    	   or a valid timezone string (America/New_York). See https://secure.php.net/manual/en/timezones.php
    	   for all timezone strings supported by PHP.
    	*/
    $offset_or_tz = _x('0', 'default GMT offset or timezone string');
    if (is_numeric($offset_or_tz)) {
        $gmt_offset = $offset_or_tz;
    } elseif ($offset_or_tz && in_array($offset_or_tz, timezone_identifiers_list())) {
        $timezone_string = $offset_or_tz;
    }
    $options = array(
        'siteurl' => $guessurl,
        'home' => $guessurl,
        'blogname' => __('My Site'),
        /* translators: site tagline */
        'blogdescription' => __('Just another WordPress site'),
        'users_can_register' => 0,
        'admin_email' => '[email protected]',
        /* translators: default start of the week. 0 = Sunday, 1 = Monday */
        'start_of_week' => _x('1', 'start of week'),
        'use_balanceTags' => 0,
        'use_smilies' => 1,
        'require_name_email' => 1,
        'comments_notify' => 1,
        'posts_per_rss' => 10,
        'rss_use_excerpt' => 0,
        'mailserver_url' => 'mail.example.com',
        'mailserver_login' => '[email protected]',
        'mailserver_pass' => 'password',
        'mailserver_port' => 110,
        'default_category' => 1,
        'default_comment_status' => 'open',
        'default_ping_status' => 'open',
        'default_pingback_flag' => 1,
        'posts_per_page' => 10,
        /* translators: default date format, see https://secure.php.net/date */
        'date_format' => __('F j, Y'),
        /* translators: default time format, see https://secure.php.net/date */
        'time_format' => __('g:i a'),
        /* translators: links last updated date format, see https://secure.php.net/date */
        'links_updated_date_format' => __('F j, Y g:i a'),
        'comment_moderation' => 0,
        'moderation_notify' => 1,
        'permalink_structure' => '',
        'rewrite_rules' => '',
        'hack_file' => 0,
        'blog_charset' => 'UTF-8',
        'moderation_keys' => '',
        'active_plugins' => array(),
        'category_base' => '',
        'ping_sites' => 'http://rpc.pingomatic.com/',
        'comment_max_links' => 2,
        'gmt_offset' => $gmt_offset,
        // 1.5
        'default_email_category' => 1,
        'recently_edited' => '',
        'template' => $template,
        'stylesheet' => $stylesheet,
        'comment_whitelist' => 1,
        'blacklist_keys' => '',
        'comment_registration' => 0,
        'html_type' => 'text/html',
        // 1.5.1
        'use_trackback' => 0,
        // 2.0
        'default_role' => 'subscriber',
        'db_version' => $wp_db_version,
        // 2.0.1
        'uploads_use_yearmonth_folders' => $uploads_use_yearmonth_folders,
        'upload_path' => '',
        // 2.1
        'blog_public' => '1',
        'default_link_category' => 2,
        'show_on_front' => 'posts',
        // 2.2
        'tag_base' => '',
        // 2.5
        'show_avatars' => '1',
        'avatar_rating' => 'G',
        'upload_url_path' => '',
        'thumbnail_size_w' => 150,
        'thumbnail_size_h' => 150,
        'thumbnail_crop' => 1,
        'medium_size_w' => 300,
        'medium_size_h' => 300,
        // 2.6
        'avatar_default' => 'mystery',
        // 2.7
        'large_size_w' => 1024,
        'large_size_h' => 1024,
        'image_default_link_type' => 'none',
        'image_default_size' => '',
        'image_default_align' => '',
        'close_comments_for_old_posts' => 0,
        'close_comments_days_old' => 14,
        'thread_comments' => 1,
        'thread_comments_depth' => 5,
        'page_comments' => 0,
        'comments_per_page' => 50,
        'default_comments_page' => 'newest',
        'comment_order' => 'asc',
        'sticky_posts' => array(),
        'widget_categories' => array(),
        'widget_text' => array(),
        'widget_rss' => array(),
        'uninstall_plugins' => array(),
        // 2.8
        'timezone_string' => $timezone_string,
        // 3.0
        'page_for_posts' => 0,
        'page_on_front' => 0,
        // 3.1
        'default_post_format' => 0,
        // 3.5
        'link_manager_enabled' => 0,
        // 4.3.0
        'finished_splitting_shared_terms' => 1,
        'site_icon' => 0,
        // 4.4.0
        'medium_large_size_w' => 768,
        'medium_large_size_h' => 0,
    );
    // 3.3
    if (!is_multisite()) {
        $options['initial_db_version'] = (!empty($wp_current_db_version) && $wp_current_db_version < $wp_db_version) ? $wp_current_db_version : $wp_db_version;
    }
    // 3.0 multisite
    if (is_multisite()) {
        /* translators: site tagline */
        $options['blogdescription'] = sprintf(__('Just another %s site'), get_network()->site_name);
        $options['permalink_structure'] = '/%year%/%monthnum%/%day%/%postname%/';
    }
    // Set autoload to no for these options
    $fat_options = array('moderation_keys', 'recently_edited', 'blacklist_keys', 'uninstall_plugins');
    $keys = "'" . implode("', '", array_keys($options)) . "'";
    $existing_options = $wpdb->get_col("SELECT option_name FROM {$wpdb->options} WHERE option_name in ( {$keys} )");
    $insert = '';
    foreach ($options as $option => $value) {
        if (in_array($option, $existing_options)) {
            continue;
        }
        if (in_array($option, $fat_options)) {
            $autoload = 'no';
        } else {
            $autoload = 'yes';
        }
        if (is_array($value)) {
            $value = serialize($value);
        }
        if (!empty($insert)) {
            $insert .= ', ';
        }
        $insert .= $wpdb->prepare("(%s, %s, %s)", $option, $value, $autoload);
    }
    if (!empty($insert)) {
        $wpdb->query("INSERT INTO {$wpdb->options} (option_name, option_value, autoload) VALUES " . $insert);
    }
    // In case it is set, but blank, update "home".
    if (!__get_option('home')) {
        update_option('home', $guessurl);
    }
    // Delete unused options.
    $unusedoptions = array('blodotgsping_url', 'bodyterminator', 'emailtestonly', 'phoneemail_separator', 'smilies_directory', 'subjectprefix', 'use_bbcode', 'use_blodotgsping', 'use_phoneemail', 'use_quicktags', 'use_weblogsping', 'weblogs_cache_file', 'use_preview', 'use_htmltrans', 'smilies_directory', 'fileupload_allowedusers', 'use_phoneemail', 'default_post_status', 'default_post_category', 'archive_mode', 'time_difference', 'links_minadminlevel', 'links_use_adminlevels', 'links_rating_type', 'links_rating_char', 'links_rating_ignore_zero', 'links_rating_single_image', 'links_rating_image0', 'links_rating_image1', 'links_rating_image2', 'links_rating_image3', 'links_rating_image4', 'links_rating_image5', 'links_rating_image6', 'links_rating_image7', 'links_rating_image8', 'links_rating_image9', 'links_recently_updated_time', 'links_recently_updated_prepend', 'links_recently_updated_append', 'weblogs_cacheminutes', 'comment_allowed_tags', 'search_engine_friendly_urls', 'default_geourl_lat', 'default_geourl_lon', 'use_default_geourl', 'weblogs_xml_url', 'new_users_can_blog', '_wpnonce', '_wp_http_referer', 'Update', 'action', 'rich_editing', 'autosave_interval', 'deactivated_plugins', 'can_compress_scripts', 'page_uris', 'update_core', 'update_plugins', 'update_themes', 'doing_cron', 'random_seed', 'rss_excerpt_length', 'secret', 'use_linksupdate', 'default_comment_status_page', 'wporg_popular_tags', 'what_to_show', 'rss_language', 'language', 'enable_xmlrpc', 'enable_app', 'embed_autourls', 'default_post_edit_rows', 'gzipcompression', 'advanced_edit');
    foreach ($unusedoptions as $option) {
        delete_option($option);
    }
    // Delete obsolete magpie stuff.
    $wpdb->query("DELETE FROM {$wpdb->options} WHERE option_name REGEXP '^rss_[0-9a-f]{32}(_ts)?\$'");
    /*
     * Deletes all expired transients. The multi-table delete syntax is used
     * to delete the transient record from table a, and the corresponding
     * transient_timeout record from table b.
     */
    $time = time();
    $sql = "DELETE a, b FROM {$wpdb->options} a, {$wpdb->options} b\n\t\tWHERE a.option_name LIKE %s\n\t\tAND a.option_name NOT LIKE %s\n\t\tAND b.option_name = CONCAT( '_transient_timeout_', SUBSTRING( a.option_name, 12 ) )\n\t\tAND b.option_value < %d";
    $wpdb->query($wpdb->prepare($sql, $wpdb->esc_like('_transient_') . '%', $wpdb->esc_like('_transient_timeout_') . '%', $time));
    if (is_main_site() && is_main_network()) {
        $sql = "DELETE a, b FROM {$wpdb->options} a, {$wpdb->options} b\n\t\t\tWHERE a.option_name LIKE %s\n\t\t\tAND a.option_name NOT LIKE %s\n\t\t\tAND b.option_name = CONCAT( '_site_transient_timeout_', SUBSTRING( a.option_name, 17 ) )\n\t\t\tAND b.option_value < %d";
        $wpdb->query($wpdb->prepare($sql, $wpdb->esc_like('_site_transient_') . '%', $wpdb->esc_like('_site_transient_timeout_') . '%', $time));
    }
}

WordPress Version: 6.3

/**
 * Create WordPress options and set the default values.
 *
 * @since 1.5.0
 *
 * @global wpdb $wpdb WordPress database abstraction object.
 * @global int  $wp_db_version
 * @global int  $wp_current_db_version
 */
function populate_options()
{
    global $wpdb, $wp_db_version, $wp_current_db_version;
    $guessurl = wp_guess_url();
    /**
     * Fires before creating WordPress options and populating their default values.
     *
     * @since 2.6.0
     */
    do_action('populate_options');
    if (ini_get('safe_mode')) {
        // Safe mode can break mkdir() so use a flat structure by default.
        $uploads_use_yearmonth_folders = 0;
    } else {
        $uploads_use_yearmonth_folders = 1;
    }
    // If WP_DEFAULT_THEME doesn't exist, fall back to the latest core default theme.
    $stylesheet = $template = WP_DEFAULT_THEME;
    $theme = wp_get_theme(WP_DEFAULT_THEME);
    if (!$theme->exists()) {
        $theme = WP_Theme::get_core_default_theme();
    }
    // If we can't find a core default theme, WP_DEFAULT_THEME is the best we can do.
    if ($theme) {
        $stylesheet = $theme->get_stylesheet();
        $template = $theme->get_template();
    }
    $timezone_string = '';
    $gmt_offset = 0;
    /* translators: default GMT offset or timezone string. Must be either a valid offset (-12 to 14)
    	   or a valid timezone string (America/New_York). See https://secure.php.net/manual/en/timezones.php
    	   for all timezone strings supported by PHP.
    	*/
    $offset_or_tz = _x('0', 'default GMT offset or timezone string');
    if (is_numeric($offset_or_tz)) {
        $gmt_offset = $offset_or_tz;
    } elseif ($offset_or_tz && in_array($offset_or_tz, timezone_identifiers_list())) {
        $timezone_string = $offset_or_tz;
    }
    $options = array(
        'siteurl' => $guessurl,
        'home' => $guessurl,
        'blogname' => __('My Site'),
        /* translators: site tagline */
        'blogdescription' => __('Just another WordPress site'),
        'users_can_register' => 0,
        'admin_email' => '[email protected]',
        /* translators: default start of the week. 0 = Sunday, 1 = Monday */
        'start_of_week' => _x('1', 'start of week'),
        'use_balanceTags' => 0,
        'use_smilies' => 1,
        'require_name_email' => 1,
        'comments_notify' => 1,
        'posts_per_rss' => 10,
        'rss_use_excerpt' => 0,
        'mailserver_url' => 'mail.example.com',
        'mailserver_login' => '[email protected]',
        'mailserver_pass' => 'password',
        'mailserver_port' => 110,
        'default_category' => 1,
        'default_comment_status' => 'open',
        'default_ping_status' => 'open',
        'default_pingback_flag' => 1,
        'posts_per_page' => 10,
        /* translators: default date format, see https://secure.php.net/date */
        'date_format' => __('F j, Y'),
        /* translators: default time format, see https://secure.php.net/date */
        'time_format' => __('g:i a'),
        /* translators: links last updated date format, see https://secure.php.net/date */
        'links_updated_date_format' => __('F j, Y g:i a'),
        'comment_moderation' => 0,
        'moderation_notify' => 1,
        'permalink_structure' => '',
        'rewrite_rules' => '',
        'hack_file' => 0,
        'blog_charset' => 'UTF-8',
        'moderation_keys' => '',
        'active_plugins' => array(),
        'category_base' => '',
        'ping_sites' => 'http://rpc.pingomatic.com/',
        'comment_max_links' => 2,
        'gmt_offset' => $gmt_offset,
        // 1.5
        'default_email_category' => 1,
        'recently_edited' => '',
        'template' => $template,
        'stylesheet' => $stylesheet,
        'comment_whitelist' => 1,
        'blacklist_keys' => '',
        'comment_registration' => 0,
        'html_type' => 'text/html',
        // 1.5.1
        'use_trackback' => 0,
        // 2.0
        'default_role' => 'subscriber',
        'db_version' => $wp_db_version,
        // 2.0.1
        'uploads_use_yearmonth_folders' => $uploads_use_yearmonth_folders,
        'upload_path' => '',
        // 2.1
        'blog_public' => '1',
        'default_link_category' => 2,
        'show_on_front' => 'posts',
        // 2.2
        'tag_base' => '',
        // 2.5
        'show_avatars' => '1',
        'avatar_rating' => 'G',
        'upload_url_path' => '',
        'thumbnail_size_w' => 150,
        'thumbnail_size_h' => 150,
        'thumbnail_crop' => 1,
        'medium_size_w' => 300,
        'medium_size_h' => 300,
        // 2.6
        'avatar_default' => 'mystery',
        // 2.7
        'large_size_w' => 1024,
        'large_size_h' => 1024,
        'image_default_link_type' => 'none',
        'image_default_size' => '',
        'image_default_align' => '',
        'close_comments_for_old_posts' => 0,
        'close_comments_days_old' => 14,
        'thread_comments' => 1,
        'thread_comments_depth' => 5,
        'page_comments' => 0,
        'comments_per_page' => 50,
        'default_comments_page' => 'newest',
        'comment_order' => 'asc',
        'sticky_posts' => array(),
        'widget_categories' => array(),
        'widget_text' => array(),
        'widget_rss' => array(),
        'uninstall_plugins' => array(),
        // 2.8
        'timezone_string' => $timezone_string,
        // 3.0
        'page_for_posts' => 0,
        'page_on_front' => 0,
        // 3.1
        'default_post_format' => 0,
        // 3.5
        'link_manager_enabled' => 0,
        // 4.3.0
        'finished_splitting_shared_terms' => 1,
        'site_icon' => 0,
        // 4.4.0
        'medium_large_size_w' => 768,
        'medium_large_size_h' => 0,
    );
    // 3.3
    if (!is_multisite()) {
        $options['initial_db_version'] = (!empty($wp_current_db_version) && $wp_current_db_version < $wp_db_version) ? $wp_current_db_version : $wp_db_version;
    }
    // 3.0 multisite
    if (is_multisite()) {
        /* translators: site tagline */
        $options['blogdescription'] = sprintf(__('Just another %s site'), get_current_site()->site_name);
        $options['permalink_structure'] = '/%year%/%monthnum%/%day%/%postname%/';
    }
    // Set autoload to no for these options
    $fat_options = array('moderation_keys', 'recently_edited', 'blacklist_keys', 'uninstall_plugins');
    $keys = "'" . implode("', '", array_keys($options)) . "'";
    $existing_options = $wpdb->get_col("SELECT option_name FROM {$wpdb->options} WHERE option_name in ( {$keys} )");
    $insert = '';
    foreach ($options as $option => $value) {
        if (in_array($option, $existing_options)) {
            continue;
        }
        if (in_array($option, $fat_options)) {
            $autoload = 'no';
        } else {
            $autoload = 'yes';
        }
        if (is_array($value)) {
            $value = serialize($value);
        }
        if (!empty($insert)) {
            $insert .= ', ';
        }
        $insert .= $wpdb->prepare("(%s, %s, %s)", $option, $value, $autoload);
    }
    if (!empty($insert)) {
        $wpdb->query("INSERT INTO {$wpdb->options} (option_name, option_value, autoload) VALUES " . $insert);
    }
    // In case it is set, but blank, update "home".
    if (!__get_option('home')) {
        update_option('home', $guessurl);
    }
    // Delete unused options.
    $unusedoptions = array('blodotgsping_url', 'bodyterminator', 'emailtestonly', 'phoneemail_separator', 'smilies_directory', 'subjectprefix', 'use_bbcode', 'use_blodotgsping', 'use_phoneemail', 'use_quicktags', 'use_weblogsping', 'weblogs_cache_file', 'use_preview', 'use_htmltrans', 'smilies_directory', 'fileupload_allowedusers', 'use_phoneemail', 'default_post_status', 'default_post_category', 'archive_mode', 'time_difference', 'links_minadminlevel', 'links_use_adminlevels', 'links_rating_type', 'links_rating_char', 'links_rating_ignore_zero', 'links_rating_single_image', 'links_rating_image0', 'links_rating_image1', 'links_rating_image2', 'links_rating_image3', 'links_rating_image4', 'links_rating_image5', 'links_rating_image6', 'links_rating_image7', 'links_rating_image8', 'links_rating_image9', 'links_recently_updated_time', 'links_recently_updated_prepend', 'links_recently_updated_append', 'weblogs_cacheminutes', 'comment_allowed_tags', 'search_engine_friendly_urls', 'default_geourl_lat', 'default_geourl_lon', 'use_default_geourl', 'weblogs_xml_url', 'new_users_can_blog', '_wpnonce', '_wp_http_referer', 'Update', 'action', 'rich_editing', 'autosave_interval', 'deactivated_plugins', 'can_compress_scripts', 'page_uris', 'update_core', 'update_plugins', 'update_themes', 'doing_cron', 'random_seed', 'rss_excerpt_length', 'secret', 'use_linksupdate', 'default_comment_status_page', 'wporg_popular_tags', 'what_to_show', 'rss_language', 'language', 'enable_xmlrpc', 'enable_app', 'embed_autourls', 'default_post_edit_rows', 'gzipcompression', 'advanced_edit');
    foreach ($unusedoptions as $option) {
        delete_option($option);
    }
    // Delete obsolete magpie stuff.
    $wpdb->query("DELETE FROM {$wpdb->options} WHERE option_name REGEXP '^rss_[0-9a-f]{32}(_ts)?\$'");
    /*
     * Deletes all expired transients. The multi-table delete syntax is used
     * to delete the transient record from table a, and the corresponding
     * transient_timeout record from table b.
     */
    $time = time();
    $sql = "DELETE a, b FROM {$wpdb->options} a, {$wpdb->options} b\n\t\tWHERE a.option_name LIKE %s\n\t\tAND a.option_name NOT LIKE %s\n\t\tAND b.option_name = CONCAT( '_transient_timeout_', SUBSTRING( a.option_name, 12 ) )\n\t\tAND b.option_value < %d";
    $wpdb->query($wpdb->prepare($sql, $wpdb->esc_like('_transient_') . '%', $wpdb->esc_like('_transient_timeout_') . '%', $time));
    if (is_main_site() && is_main_network()) {
        $sql = "DELETE a, b FROM {$wpdb->options} a, {$wpdb->options} b\n\t\t\tWHERE a.option_name LIKE %s\n\t\t\tAND a.option_name NOT LIKE %s\n\t\t\tAND b.option_name = CONCAT( '_site_transient_timeout_', SUBSTRING( a.option_name, 17 ) )\n\t\t\tAND b.option_value < %d";
        $wpdb->query($wpdb->prepare($sql, $wpdb->esc_like('_site_transient_') . '%', $wpdb->esc_like('_site_transient_timeout_') . '%', $time));
    }
}

WordPress Version: .28

/**
 * Create WordPress options and set the default values.
 *
 * @since 1.5.0
 *
 * @global wpdb $wpdb WordPress database abstraction object.
 * @global int  $wp_db_version
 * @global int  $wp_current_db_version
 */
function populate_options()
{
    global $wpdb, $wp_db_version, $wp_current_db_version;
    $guessurl = wp_guess_url();
    /**
     * Fires before creating WordPress options and populating their default values.
     *
     * @since 2.6.0
     */
    do_action('populate_options');
    if (ini_get('safe_mode')) {
        // Safe mode can break mkdir() so use a flat structure by default.
        $uploads_use_yearmonth_folders = 0;
    } else {
        $uploads_use_yearmonth_folders = 1;
    }
    // If WP_DEFAULT_THEME doesn't exist, fall back to the latest core default theme.
    $stylesheet = $template = WP_DEFAULT_THEME;
    $theme = wp_get_theme(WP_DEFAULT_THEME);
    if (!$theme->exists()) {
        $theme = WP_Theme::get_core_default_theme();
    }
    // If we can't find a core default theme, WP_DEFAULT_THEME is the best we can do.
    if ($theme) {
        $stylesheet = $theme->get_stylesheet();
        $template = $theme->get_template();
    }
    $timezone_string = '';
    $gmt_offset = 0;
    /* translators: default GMT offset or timezone string. Must be either a valid offset (-12 to 14)
    	   or a valid timezone string (America/New_York). See https://secure.php.net/manual/en/timezones.php
    	   for all timezone strings supported by PHP.
    	*/
    $offset_or_tz = _x('0', 'default GMT offset or timezone string');
    if (is_numeric($offset_or_tz)) {
        $gmt_offset = $offset_or_tz;
    } elseif ($offset_or_tz && in_array($offset_or_tz, timezone_identifiers_list())) {
        $timezone_string = $offset_or_tz;
    }
    $options = array(
        'siteurl' => $guessurl,
        'home' => $guessurl,
        'blogname' => __('My Site'),
        /* translators: site tagline */
        'blogdescription' => __('Just another WordPress site'),
        'users_can_register' => 0,
        'admin_email' => '[email protected]',
        /* translators: default start of the week. 0 = Sunday, 1 = Monday */
        'start_of_week' => _x('1', 'start of week'),
        'use_balanceTags' => 0,
        'use_smilies' => 1,
        'require_name_email' => 1,
        'comments_notify' => 1,
        'posts_per_rss' => 10,
        'rss_use_excerpt' => 0,
        'mailserver_url' => 'mail.example.com',
        'mailserver_login' => '[email protected]',
        'mailserver_pass' => 'password',
        'mailserver_port' => 110,
        'default_category' => 1,
        'default_comment_status' => 'open',
        'default_ping_status' => 'open',
        'default_pingback_flag' => 1,
        'posts_per_page' => 10,
        /* translators: default date format, see https://secure.php.net/date */
        'date_format' => __('F j, Y'),
        /* translators: default time format, see https://secure.php.net/date */
        'time_format' => __('g:i a'),
        /* translators: links last updated date format, see https://secure.php.net/date */
        'links_updated_date_format' => __('F j, Y g:i a'),
        'comment_moderation' => 0,
        'moderation_notify' => 1,
        'permalink_structure' => '',
        'rewrite_rules' => '',
        'hack_file' => 0,
        'blog_charset' => 'UTF-8',
        'moderation_keys' => '',
        'active_plugins' => array(),
        'category_base' => '',
        'ping_sites' => 'http://rpc.pingomatic.com/',
        'comment_max_links' => 2,
        'gmt_offset' => $gmt_offset,
        // 1.5
        'default_email_category' => 1,
        'recently_edited' => '',
        'template' => $template,
        'stylesheet' => $stylesheet,
        'comment_whitelist' => 1,
        'blacklist_keys' => '',
        'comment_registration' => 0,
        'html_type' => 'text/html',
        // 1.5.1
        'use_trackback' => 0,
        // 2.0
        'default_role' => 'subscriber',
        'db_version' => $wp_db_version,
        // 2.0.1
        'uploads_use_yearmonth_folders' => $uploads_use_yearmonth_folders,
        'upload_path' => '',
        // 2.1
        'blog_public' => '1',
        'default_link_category' => 2,
        'show_on_front' => 'posts',
        // 2.2
        'tag_base' => '',
        // 2.5
        'show_avatars' => '1',
        'avatar_rating' => 'G',
        'upload_url_path' => '',
        'thumbnail_size_w' => 150,
        'thumbnail_size_h' => 150,
        'thumbnail_crop' => 1,
        'medium_size_w' => 300,
        'medium_size_h' => 300,
        // 2.6
        'avatar_default' => 'mystery',
        // 2.7
        'large_size_w' => 1024,
        'large_size_h' => 1024,
        'image_default_link_type' => 'none',
        'image_default_size' => '',
        'image_default_align' => '',
        'close_comments_for_old_posts' => 0,
        'close_comments_days_old' => 14,
        'thread_comments' => 1,
        'thread_comments_depth' => 5,
        'page_comments' => 0,
        'comments_per_page' => 50,
        'default_comments_page' => 'newest',
        'comment_order' => 'asc',
        'sticky_posts' => array(),
        'widget_categories' => array(),
        'widget_text' => array(),
        'widget_rss' => array(),
        'uninstall_plugins' => array(),
        // 2.8
        'timezone_string' => $timezone_string,
        // 3.0
        'page_for_posts' => 0,
        'page_on_front' => 0,
        // 3.1
        'default_post_format' => 0,
        // 3.5
        'link_manager_enabled' => 0,
        // 4.3.0
        'finished_splitting_shared_terms' => 1,
        'site_icon' => 0,
        // 4.4.0
        'medium_large_size_w' => 768,
        'medium_large_size_h' => 0,
    );
    // 3.3
    if (!is_multisite()) {
        $options['initial_db_version'] = (!empty($wp_current_db_version) && $wp_current_db_version < $wp_db_version) ? $wp_current_db_version : $wp_db_version;
    }
    // 3.0 multisite
    if (is_multisite()) {
        /* translators: site tagline */
        $options['blogdescription'] = sprintf(__('Just another %s site'), get_current_site()->site_name);
        $options['permalink_structure'] = '/%year%/%monthnum%/%day%/%postname%/';
    }
    // Set autoload to no for these options
    $fat_options = array('moderation_keys', 'recently_edited', 'blacklist_keys', 'uninstall_plugins');
    $keys = "'" . implode("', '", array_keys($options)) . "'";
    $existing_options = $wpdb->get_col("SELECT option_name FROM {$wpdb->options} WHERE option_name in ( {$keys} )");
    $insert = '';
    foreach ($options as $option => $value) {
        if (in_array($option, $existing_options)) {
            continue;
        }
        if (in_array($option, $fat_options)) {
            $autoload = 'no';
        } else {
            $autoload = 'yes';
        }
        if (!empty($insert)) {
            $insert .= ', ';
        }
        $value = maybe_serialize(sanitize_option($option, $value));
        $insert .= $wpdb->prepare("(%s, %s, %s)", $option, $value, $autoload);
    }
    if (!empty($insert)) {
        $wpdb->query("INSERT INTO {$wpdb->options} (option_name, option_value, autoload) VALUES " . $insert);
    }
    // In case it is set, but blank, update "home".
    if (!__get_option('home')) {
        update_option('home', $guessurl);
    }
    // Delete unused options.
    $unusedoptions = array('blodotgsping_url', 'bodyterminator', 'emailtestonly', 'phoneemail_separator', 'smilies_directory', 'subjectprefix', 'use_bbcode', 'use_blodotgsping', 'use_phoneemail', 'use_quicktags', 'use_weblogsping', 'weblogs_cache_file', 'use_preview', 'use_htmltrans', 'smilies_directory', 'fileupload_allowedusers', 'use_phoneemail', 'default_post_status', 'default_post_category', 'archive_mode', 'time_difference', 'links_minadminlevel', 'links_use_adminlevels', 'links_rating_type', 'links_rating_char', 'links_rating_ignore_zero', 'links_rating_single_image', 'links_rating_image0', 'links_rating_image1', 'links_rating_image2', 'links_rating_image3', 'links_rating_image4', 'links_rating_image5', 'links_rating_image6', 'links_rating_image7', 'links_rating_image8', 'links_rating_image9', 'links_recently_updated_time', 'links_recently_updated_prepend', 'links_recently_updated_append', 'weblogs_cacheminutes', 'comment_allowed_tags', 'search_engine_friendly_urls', 'default_geourl_lat', 'default_geourl_lon', 'use_default_geourl', 'weblogs_xml_url', 'new_users_can_blog', '_wpnonce', '_wp_http_referer', 'Update', 'action', 'rich_editing', 'autosave_interval', 'deactivated_plugins', 'can_compress_scripts', 'page_uris', 'update_core', 'update_plugins', 'update_themes', 'doing_cron', 'random_seed', 'rss_excerpt_length', 'secret', 'use_linksupdate', 'default_comment_status_page', 'wporg_popular_tags', 'what_to_show', 'rss_language', 'language', 'enable_xmlrpc', 'enable_app', 'embed_autourls', 'default_post_edit_rows', 'gzipcompression', 'advanced_edit');
    foreach ($unusedoptions as $option) {
        delete_option($option);
    }
    // Delete obsolete magpie stuff.
    $wpdb->query("DELETE FROM {$wpdb->options} WHERE option_name REGEXP '^rss_[0-9a-f]{32}(_ts)?\$'");
    /*
     * Deletes all expired transients. The multi-table delete syntax is used
     * to delete the transient record from table a, and the corresponding
     * transient_timeout record from table b.
     */
    $time = time();
    $sql = "DELETE a, b FROM {$wpdb->options} a, {$wpdb->options} b\n\t\tWHERE a.option_name LIKE %s\n\t\tAND a.option_name NOT LIKE %s\n\t\tAND b.option_name = CONCAT( '_transient_timeout_', SUBSTRING( a.option_name, 12 ) )\n\t\tAND b.option_value < %d";
    $wpdb->query($wpdb->prepare($sql, $wpdb->esc_like('_transient_') . '%', $wpdb->esc_like('_transient_timeout_') . '%', $time));
    if (is_main_site() && is_main_network()) {
        $sql = "DELETE a, b FROM {$wpdb->options} a, {$wpdb->options} b\n\t\t\tWHERE a.option_name LIKE %s\n\t\t\tAND a.option_name NOT LIKE %s\n\t\t\tAND b.option_name = CONCAT( '_site_transient_timeout_', SUBSTRING( a.option_name, 17 ) )\n\t\t\tAND b.option_value < %d";
        $wpdb->query($wpdb->prepare($sql, $wpdb->esc_like('_site_transient_') . '%', $wpdb->esc_like('_site_transient_timeout_') . '%', $time));
    }
}

WordPress Version: 4.6

/**
 * Create WordPress options and set the default values.
 *
 * @since 1.5.0
 *
 * @global wpdb $wpdb WordPress database abstraction object.
 * @global int  $wp_db_version
 * @global int  $wp_current_db_version
 */
function populate_options()
{
    global $wpdb, $wp_db_version, $wp_current_db_version;
    $guessurl = wp_guess_url();
    /**
     * Fires before creating WordPress options and populating their default values.
     *
     * @since 2.6.0
     */
    do_action('populate_options');
    if (ini_get('safe_mode')) {
        // Safe mode can break mkdir() so use a flat structure by default.
        $uploads_use_yearmonth_folders = 0;
    } else {
        $uploads_use_yearmonth_folders = 1;
    }
    // If WP_DEFAULT_THEME doesn't exist, fall back to the latest core default theme.
    $stylesheet = $template = WP_DEFAULT_THEME;
    $theme = wp_get_theme(WP_DEFAULT_THEME);
    if (!$theme->exists()) {
        $theme = WP_Theme::get_core_default_theme();
    }
    // If we can't find a core default theme, WP_DEFAULT_THEME is the best we can do.
    if ($theme) {
        $stylesheet = $theme->get_stylesheet();
        $template = $theme->get_template();
    }
    $timezone_string = '';
    $gmt_offset = 0;
    /* translators: default GMT offset or timezone string. Must be either a valid offset (-12 to 14)
    	   or a valid timezone string (America/New_York). See https://secure.php.net/manual/en/timezones.php
    	   for all timezone strings supported by PHP.
    	*/
    $offset_or_tz = _x('0', 'default GMT offset or timezone string');
    if (is_numeric($offset_or_tz)) {
        $gmt_offset = $offset_or_tz;
    } elseif ($offset_or_tz && in_array($offset_or_tz, timezone_identifiers_list())) {
        $timezone_string = $offset_or_tz;
    }
    $options = array(
        'siteurl' => $guessurl,
        'home' => $guessurl,
        'blogname' => __('My Site'),
        /* translators: site tagline */
        'blogdescription' => __('Just another WordPress site'),
        'users_can_register' => 0,
        'admin_email' => '[email protected]',
        /* translators: default start of the week. 0 = Sunday, 1 = Monday */
        'start_of_week' => _x('1', 'start of week'),
        'use_balanceTags' => 0,
        'use_smilies' => 1,
        'require_name_email' => 1,
        'comments_notify' => 1,
        'posts_per_rss' => 10,
        'rss_use_excerpt' => 0,
        'mailserver_url' => 'mail.example.com',
        'mailserver_login' => '[email protected]',
        'mailserver_pass' => 'password',
        'mailserver_port' => 110,
        'default_category' => 1,
        'default_comment_status' => 'open',
        'default_ping_status' => 'open',
        'default_pingback_flag' => 1,
        'posts_per_page' => 10,
        /* translators: default date format, see https://secure.php.net/date */
        'date_format' => __('F j, Y'),
        /* translators: default time format, see https://secure.php.net/date */
        'time_format' => __('g:i a'),
        /* translators: links last updated date format, see https://secure.php.net/date */
        'links_updated_date_format' => __('F j, Y g:i a'),
        'comment_moderation' => 0,
        'moderation_notify' => 1,
        'permalink_structure' => '',
        'rewrite_rules' => '',
        'hack_file' => 0,
        'blog_charset' => 'UTF-8',
        'moderation_keys' => '',
        'active_plugins' => array(),
        'category_base' => '',
        'ping_sites' => 'http://rpc.pingomatic.com/',
        'comment_max_links' => 2,
        'gmt_offset' => $gmt_offset,
        // 1.5
        'default_email_category' => 1,
        'recently_edited' => '',
        'template' => $template,
        'stylesheet' => $stylesheet,
        'comment_whitelist' => 1,
        'blacklist_keys' => '',
        'comment_registration' => 0,
        'html_type' => 'text/html',
        // 1.5.1
        'use_trackback' => 0,
        // 2.0
        'default_role' => 'subscriber',
        'db_version' => $wp_db_version,
        // 2.0.1
        'uploads_use_yearmonth_folders' => $uploads_use_yearmonth_folders,
        'upload_path' => '',
        // 2.1
        'blog_public' => '1',
        'default_link_category' => 2,
        'show_on_front' => 'posts',
        // 2.2
        'tag_base' => '',
        // 2.5
        'show_avatars' => '1',
        'avatar_rating' => 'G',
        'upload_url_path' => '',
        'thumbnail_size_w' => 150,
        'thumbnail_size_h' => 150,
        'thumbnail_crop' => 1,
        'medium_size_w' => 300,
        'medium_size_h' => 300,
        // 2.6
        'avatar_default' => 'mystery',
        // 2.7
        'large_size_w' => 1024,
        'large_size_h' => 1024,
        'image_default_link_type' => 'none',
        'image_default_size' => '',
        'image_default_align' => '',
        'close_comments_for_old_posts' => 0,
        'close_comments_days_old' => 14,
        'thread_comments' => 1,
        'thread_comments_depth' => 5,
        'page_comments' => 0,
        'comments_per_page' => 50,
        'default_comments_page' => 'newest',
        'comment_order' => 'asc',
        'sticky_posts' => array(),
        'widget_categories' => array(),
        'widget_text' => array(),
        'widget_rss' => array(),
        'uninstall_plugins' => array(),
        // 2.8
        'timezone_string' => $timezone_string,
        // 3.0
        'page_for_posts' => 0,
        'page_on_front' => 0,
        // 3.1
        'default_post_format' => 0,
        // 3.5
        'link_manager_enabled' => 0,
        // 4.3.0
        'finished_splitting_shared_terms' => 1,
        'site_icon' => 0,
        // 4.4.0
        'medium_large_size_w' => 768,
        'medium_large_size_h' => 0,
    );
    // 3.3
    if (!is_multisite()) {
        $options['initial_db_version'] = (!empty($wp_current_db_version) && $wp_current_db_version < $wp_db_version) ? $wp_current_db_version : $wp_db_version;
    }
    // 3.0 multisite
    if (is_multisite()) {
        /* translators: site tagline */
        $options['blogdescription'] = sprintf(__('Just another %s site'), get_current_site()->site_name);
        $options['permalink_structure'] = '/%year%/%monthnum%/%day%/%postname%/';
    }
    // Set autoload to no for these options
    $fat_options = array('moderation_keys', 'recently_edited', 'blacklist_keys', 'uninstall_plugins');
    $keys = "'" . implode("', '", array_keys($options)) . "'";
    $existing_options = $wpdb->get_col("SELECT option_name FROM {$wpdb->options} WHERE option_name in ( {$keys} )");
    $insert = '';
    foreach ($options as $option => $value) {
        if (in_array($option, $existing_options)) {
            continue;
        }
        if (in_array($option, $fat_options)) {
            $autoload = 'no';
        } else {
            $autoload = 'yes';
        }
        if (is_array($value)) {
            $value = serialize($value);
        }
        if (!empty($insert)) {
            $insert .= ', ';
        }
        $insert .= $wpdb->prepare("(%s, %s, %s)", $option, $value, $autoload);
    }
    if (!empty($insert)) {
        $wpdb->query("INSERT INTO {$wpdb->options} (option_name, option_value, autoload) VALUES " . $insert);
    }
    // In case it is set, but blank, update "home".
    if (!__get_option('home')) {
        update_option('home', $guessurl);
    }
    // Delete unused options.
    $unusedoptions = array('blodotgsping_url', 'bodyterminator', 'emailtestonly', 'phoneemail_separator', 'smilies_directory', 'subjectprefix', 'use_bbcode', 'use_blodotgsping', 'use_phoneemail', 'use_quicktags', 'use_weblogsping', 'weblogs_cache_file', 'use_preview', 'use_htmltrans', 'smilies_directory', 'fileupload_allowedusers', 'use_phoneemail', 'default_post_status', 'default_post_category', 'archive_mode', 'time_difference', 'links_minadminlevel', 'links_use_adminlevels', 'links_rating_type', 'links_rating_char', 'links_rating_ignore_zero', 'links_rating_single_image', 'links_rating_image0', 'links_rating_image1', 'links_rating_image2', 'links_rating_image3', 'links_rating_image4', 'links_rating_image5', 'links_rating_image6', 'links_rating_image7', 'links_rating_image8', 'links_rating_image9', 'links_recently_updated_time', 'links_recently_updated_prepend', 'links_recently_updated_append', 'weblogs_cacheminutes', 'comment_allowed_tags', 'search_engine_friendly_urls', 'default_geourl_lat', 'default_geourl_lon', 'use_default_geourl', 'weblogs_xml_url', 'new_users_can_blog', '_wpnonce', '_wp_http_referer', 'Update', 'action', 'rich_editing', 'autosave_interval', 'deactivated_plugins', 'can_compress_scripts', 'page_uris', 'update_core', 'update_plugins', 'update_themes', 'doing_cron', 'random_seed', 'rss_excerpt_length', 'secret', 'use_linksupdate', 'default_comment_status_page', 'wporg_popular_tags', 'what_to_show', 'rss_language', 'language', 'enable_xmlrpc', 'enable_app', 'embed_autourls', 'default_post_edit_rows', 'gzipcompression', 'advanced_edit');
    foreach ($unusedoptions as $option) {
        delete_option($option);
    }
    // Delete obsolete magpie stuff.
    $wpdb->query("DELETE FROM {$wpdb->options} WHERE option_name REGEXP '^rss_[0-9a-f]{32}(_ts)?\$'");
    /*
     * Deletes all expired transients. The multi-table delete syntax is used
     * to delete the transient record from table a, and the corresponding
     * transient_timeout record from table b.
     */
    $time = time();
    $sql = "DELETE a, b FROM {$wpdb->options} a, {$wpdb->options} b\n\t\tWHERE a.option_name LIKE %s\n\t\tAND a.option_name NOT LIKE %s\n\t\tAND b.option_name = CONCAT( '_transient_timeout_', SUBSTRING( a.option_name, 12 ) )\n\t\tAND b.option_value < %d";
    $wpdb->query($wpdb->prepare($sql, $wpdb->esc_like('_transient_') . '%', $wpdb->esc_like('_transient_timeout_') . '%', $time));
    if (is_main_site() && is_main_network()) {
        $sql = "DELETE a, b FROM {$wpdb->options} a, {$wpdb->options} b\n\t\t\tWHERE a.option_name LIKE %s\n\t\t\tAND a.option_name NOT LIKE %s\n\t\t\tAND b.option_name = CONCAT( '_site_transient_timeout_', SUBSTRING( a.option_name, 17 ) )\n\t\t\tAND b.option_value < %d";
        $wpdb->query($wpdb->prepare($sql, $wpdb->esc_like('_site_transient_') . '%', $wpdb->esc_like('_site_transient_timeout_') . '%', $time));
    }
}

WordPress Version: 5.4

/**
 * Create WordPress options and set the default values.
 *
 * @since 1.5.0
 *
 * @global wpdb $wpdb WordPress database abstraction object.
 * @global int  $wp_db_version
 * @global int  $wp_current_db_version
 */
function populate_options()
{
    global $wpdb, $wp_db_version, $wp_current_db_version;
    $guessurl = wp_guess_url();
    /**
     * Fires before creating WordPress options and populating their default values.
     *
     * @since 2.6.0
     */
    do_action('populate_options');
    if (ini_get('safe_mode')) {
        // Safe mode can break mkdir() so use a flat structure by default.
        $uploads_use_yearmonth_folders = 0;
    } else {
        $uploads_use_yearmonth_folders = 1;
    }
    // If WP_DEFAULT_THEME doesn't exist, fall back to the latest core default theme.
    $stylesheet = $template = WP_DEFAULT_THEME;
    $theme = wp_get_theme(WP_DEFAULT_THEME);
    if (!$theme->exists()) {
        $theme = WP_Theme::get_core_default_theme();
    }
    // If we can't find a core default theme, WP_DEFAULT_THEME is the best we can do.
    if ($theme) {
        $stylesheet = $theme->get_stylesheet();
        $template = $theme->get_template();
    }
    $timezone_string = '';
    $gmt_offset = 0;
    /* translators: default GMT offset or timezone string. Must be either a valid offset (-12 to 14)
    	   or a valid timezone string (America/New_York). See http://us3.php.net/manual/en/timezones.php
    	   for all timezone strings supported by PHP.
    	*/
    $offset_or_tz = _x('0', 'default GMT offset or timezone string');
    if (is_numeric($offset_or_tz)) {
        $gmt_offset = $offset_or_tz;
    } elseif ($offset_or_tz && in_array($offset_or_tz, timezone_identifiers_list())) {
        $timezone_string = $offset_or_tz;
    }
    $options = array(
        'siteurl' => $guessurl,
        'home' => $guessurl,
        'blogname' => __('My Site'),
        /* translators: site tagline */
        'blogdescription' => __('Just another WordPress site'),
        'users_can_register' => 0,
        'admin_email' => '[email protected]',
        /* translators: default start of the week. 0 = Sunday, 1 = Monday */
        'start_of_week' => _x('1', 'start of week'),
        'use_balanceTags' => 0,
        'use_smilies' => 1,
        'require_name_email' => 1,
        'comments_notify' => 1,
        'posts_per_rss' => 10,
        'rss_use_excerpt' => 0,
        'mailserver_url' => 'mail.example.com',
        'mailserver_login' => '[email protected]',
        'mailserver_pass' => 'password',
        'mailserver_port' => 110,
        'default_category' => 1,
        'default_comment_status' => 'open',
        'default_ping_status' => 'open',
        'default_pingback_flag' => 1,
        'posts_per_page' => 10,
        /* translators: default date format, see http://php.net/date */
        'date_format' => __('F j, Y'),
        /* translators: default time format, see http://php.net/date */
        'time_format' => __('g:i a'),
        /* translators: links last updated date format, see http://php.net/date */
        'links_updated_date_format' => __('F j, Y g:i a'),
        'comment_moderation' => 0,
        'moderation_notify' => 1,
        'permalink_structure' => '',
        'rewrite_rules' => '',
        'hack_file' => 0,
        'blog_charset' => 'UTF-8',
        'moderation_keys' => '',
        'active_plugins' => array(),
        'category_base' => '',
        'ping_sites' => 'http://rpc.pingomatic.com/',
        'comment_max_links' => 2,
        'gmt_offset' => $gmt_offset,
        // 1.5
        'default_email_category' => 1,
        'recently_edited' => '',
        'template' => $template,
        'stylesheet' => $stylesheet,
        'comment_whitelist' => 1,
        'blacklist_keys' => '',
        'comment_registration' => 0,
        'html_type' => 'text/html',
        // 1.5.1
        'use_trackback' => 0,
        // 2.0
        'default_role' => 'subscriber',
        'db_version' => $wp_db_version,
        // 2.0.1
        'uploads_use_yearmonth_folders' => $uploads_use_yearmonth_folders,
        'upload_path' => '',
        // 2.1
        'blog_public' => '1',
        'default_link_category' => 2,
        'show_on_front' => 'posts',
        // 2.2
        'tag_base' => '',
        // 2.5
        'show_avatars' => '1',
        'avatar_rating' => 'G',
        'upload_url_path' => '',
        'thumbnail_size_w' => 150,
        'thumbnail_size_h' => 150,
        'thumbnail_crop' => 1,
        'medium_size_w' => 300,
        'medium_size_h' => 300,
        // 2.6
        'avatar_default' => 'mystery',
        // 2.7
        'large_size_w' => 1024,
        'large_size_h' => 1024,
        'image_default_link_type' => 'none',
        'image_default_size' => '',
        'image_default_align' => '',
        'close_comments_for_old_posts' => 0,
        'close_comments_days_old' => 14,
        'thread_comments' => 1,
        'thread_comments_depth' => 5,
        'page_comments' => 0,
        'comments_per_page' => 50,
        'default_comments_page' => 'newest',
        'comment_order' => 'asc',
        'sticky_posts' => array(),
        'widget_categories' => array(),
        'widget_text' => array(),
        'widget_rss' => array(),
        'uninstall_plugins' => array(),
        // 2.8
        'timezone_string' => $timezone_string,
        // 3.0
        'page_for_posts' => 0,
        'page_on_front' => 0,
        // 3.1
        'default_post_format' => 0,
        // 3.5
        'link_manager_enabled' => 0,
        // 4.3.0
        'finished_splitting_shared_terms' => 1,
        'site_icon' => 0,
        // 4.4.0
        'medium_large_size_w' => 768,
        'medium_large_size_h' => 0,
    );
    // 3.3
    if (!is_multisite()) {
        $options['initial_db_version'] = (!empty($wp_current_db_version) && $wp_current_db_version < $wp_db_version) ? $wp_current_db_version : $wp_db_version;
    }
    // 3.0 multisite
    if (is_multisite()) {
        /* translators: site tagline */
        $options['blogdescription'] = sprintf(__('Just another %s site'), get_current_site()->site_name);
        $options['permalink_structure'] = '/%year%/%monthnum%/%day%/%postname%/';
    }
    // Set autoload to no for these options
    $fat_options = array('moderation_keys', 'recently_edited', 'blacklist_keys', 'uninstall_plugins');
    $keys = "'" . implode("', '", array_keys($options)) . "'";
    $existing_options = $wpdb->get_col("SELECT option_name FROM {$wpdb->options} WHERE option_name in ( {$keys} )");
    $insert = '';
    foreach ($options as $option => $value) {
        if (in_array($option, $existing_options)) {
            continue;
        }
        if (in_array($option, $fat_options)) {
            $autoload = 'no';
        } else {
            $autoload = 'yes';
        }
        if (is_array($value)) {
            $value = serialize($value);
        }
        if (!empty($insert)) {
            $insert .= ', ';
        }
        $insert .= $wpdb->prepare("(%s, %s, %s)", $option, $value, $autoload);
    }
    if (!empty($insert)) {
        $wpdb->query("INSERT INTO {$wpdb->options} (option_name, option_value, autoload) VALUES " . $insert);
    }
    // In case it is set, but blank, update "home".
    if (!__get_option('home')) {
        update_option('home', $guessurl);
    }
    // Delete unused options.
    $unusedoptions = array('blodotgsping_url', 'bodyterminator', 'emailtestonly', 'phoneemail_separator', 'smilies_directory', 'subjectprefix', 'use_bbcode', 'use_blodotgsping', 'use_phoneemail', 'use_quicktags', 'use_weblogsping', 'weblogs_cache_file', 'use_preview', 'use_htmltrans', 'smilies_directory', 'fileupload_allowedusers', 'use_phoneemail', 'default_post_status', 'default_post_category', 'archive_mode', 'time_difference', 'links_minadminlevel', 'links_use_adminlevels', 'links_rating_type', 'links_rating_char', 'links_rating_ignore_zero', 'links_rating_single_image', 'links_rating_image0', 'links_rating_image1', 'links_rating_image2', 'links_rating_image3', 'links_rating_image4', 'links_rating_image5', 'links_rating_image6', 'links_rating_image7', 'links_rating_image8', 'links_rating_image9', 'links_recently_updated_time', 'links_recently_updated_prepend', 'links_recently_updated_append', 'weblogs_cacheminutes', 'comment_allowed_tags', 'search_engine_friendly_urls', 'default_geourl_lat', 'default_geourl_lon', 'use_default_geourl', 'weblogs_xml_url', 'new_users_can_blog', '_wpnonce', '_wp_http_referer', 'Update', 'action', 'rich_editing', 'autosave_interval', 'deactivated_plugins', 'can_compress_scripts', 'page_uris', 'update_core', 'update_plugins', 'update_themes', 'doing_cron', 'random_seed', 'rss_excerpt_length', 'secret', 'use_linksupdate', 'default_comment_status_page', 'wporg_popular_tags', 'what_to_show', 'rss_language', 'language', 'enable_xmlrpc', 'enable_app', 'embed_autourls', 'default_post_edit_rows', 'gzipcompression', 'advanced_edit');
    foreach ($unusedoptions as $option) {
        delete_option($option);
    }
    // Delete obsolete magpie stuff.
    $wpdb->query("DELETE FROM {$wpdb->options} WHERE option_name REGEXP '^rss_[0-9a-f]{32}(_ts)?\$'");
    /*
     * Deletes all expired transients. The multi-table delete syntax is used
     * to delete the transient record from table a, and the corresponding
     * transient_timeout record from table b.
     */
    $time = time();
    $sql = "DELETE a, b FROM {$wpdb->options} a, {$wpdb->options} b\n\t\tWHERE a.option_name LIKE %s\n\t\tAND a.option_name NOT LIKE %s\n\t\tAND b.option_name = CONCAT( '_transient_timeout_', SUBSTRING( a.option_name, 12 ) )\n\t\tAND b.option_value < %d";
    $wpdb->query($wpdb->prepare($sql, $wpdb->esc_like('_transient_') . '%', $wpdb->esc_like('_transient_timeout_') . '%', $time));
    if (is_main_site() && is_main_network()) {
        $sql = "DELETE a, b FROM {$wpdb->options} a, {$wpdb->options} b\n\t\t\tWHERE a.option_name LIKE %s\n\t\t\tAND a.option_name NOT LIKE %s\n\t\t\tAND b.option_name = CONCAT( '_site_transient_timeout_', SUBSTRING( a.option_name, 17 ) )\n\t\t\tAND b.option_value < %d";
        $wpdb->query($wpdb->prepare($sql, $wpdb->esc_like('_site_transient_') . '%', $wpdb->esc_like('_site_transient_timeout_') . '%', $time));
    }
}

WordPress Version: .31

/**
 * Create WordPress options and set the default values.
 *
 * @since 1.5.0
 *
 * @global wpdb $wpdb WordPress database abstraction object.
 * @global int  $wp_db_version
 * @global int  $wp_current_db_version
 */
function populate_options()
{
    global $wpdb, $wp_db_version, $wp_current_db_version;
    $guessurl = wp_guess_url();
    /**
     * Fires before creating WordPress options and populating their default values.
     *
     * @since 2.6.0
     */
    do_action('populate_options');
    if (ini_get('safe_mode')) {
        // Safe mode can break mkdir() so use a flat structure by default.
        $uploads_use_yearmonth_folders = 0;
    } else {
        $uploads_use_yearmonth_folders = 1;
    }
    // If WP_DEFAULT_THEME doesn't exist, fall back to the latest core default theme.
    $stylesheet = $template = WP_DEFAULT_THEME;
    $theme = wp_get_theme(WP_DEFAULT_THEME);
    if (!$theme->exists()) {
        $theme = WP_Theme::get_core_default_theme();
    }
    // If we can't find a core default theme, WP_DEFAULT_THEME is the best we can do.
    if ($theme) {
        $stylesheet = $theme->get_stylesheet();
        $template = $theme->get_template();
    }
    $timezone_string = '';
    $gmt_offset = 0;
    /* translators: default GMT offset or timezone string. Must be either a valid offset (-12 to 14)
    	   or a valid timezone string (America/New_York). See http://us3.php.net/manual/en/timezones.php
    	   for all timezone strings supported by PHP.
    	*/
    $offset_or_tz = _x('0', 'default GMT offset or timezone string');
    if (is_numeric($offset_or_tz)) {
        $gmt_offset = $offset_or_tz;
    } elseif ($offset_or_tz && in_array($offset_or_tz, timezone_identifiers_list())) {
        $timezone_string = $offset_or_tz;
    }
    $options = array(
        'siteurl' => $guessurl,
        'home' => $guessurl,
        'blogname' => __('My Site'),
        /* translators: site tagline */
        'blogdescription' => __('Just another WordPress site'),
        'users_can_register' => 0,
        'admin_email' => '[email protected]',
        /* translators: default start of the week. 0 = Sunday, 1 = Monday */
        'start_of_week' => _x('1', 'start of week'),
        'use_balanceTags' => 0,
        'use_smilies' => 1,
        'require_name_email' => 1,
        'comments_notify' => 1,
        'posts_per_rss' => 10,
        'rss_use_excerpt' => 0,
        'mailserver_url' => 'mail.example.com',
        'mailserver_login' => '[email protected]',
        'mailserver_pass' => 'password',
        'mailserver_port' => 110,
        'default_category' => 1,
        'default_comment_status' => 'open',
        'default_ping_status' => 'open',
        'default_pingback_flag' => 1,
        'posts_per_page' => 10,
        /* translators: default date format, see http://php.net/date */
        'date_format' => __('F j, Y'),
        /* translators: default time format, see http://php.net/date */
        'time_format' => __('g:i a'),
        /* translators: links last updated date format, see http://php.net/date */
        'links_updated_date_format' => __('F j, Y g:i a'),
        'comment_moderation' => 0,
        'moderation_notify' => 1,
        'permalink_structure' => '',
        'rewrite_rules' => '',
        'hack_file' => 0,
        'blog_charset' => 'UTF-8',
        'moderation_keys' => '',
        'active_plugins' => array(),
        'category_base' => '',
        'ping_sites' => 'http://rpc.pingomatic.com/',
        'comment_max_links' => 2,
        'gmt_offset' => $gmt_offset,
        // 1.5
        'default_email_category' => 1,
        'recently_edited' => '',
        'template' => $template,
        'stylesheet' => $stylesheet,
        'comment_whitelist' => 1,
        'blacklist_keys' => '',
        'comment_registration' => 0,
        'html_type' => 'text/html',
        // 1.5.1
        'use_trackback' => 0,
        // 2.0
        'default_role' => 'subscriber',
        'db_version' => $wp_db_version,
        // 2.0.1
        'uploads_use_yearmonth_folders' => $uploads_use_yearmonth_folders,
        'upload_path' => '',
        // 2.1
        'blog_public' => '1',
        'default_link_category' => 2,
        'show_on_front' => 'posts',
        // 2.2
        'tag_base' => '',
        // 2.5
        'show_avatars' => '1',
        'avatar_rating' => 'G',
        'upload_url_path' => '',
        'thumbnail_size_w' => 150,
        'thumbnail_size_h' => 150,
        'thumbnail_crop' => 1,
        'medium_size_w' => 300,
        'medium_size_h' => 300,
        // 2.6
        'avatar_default' => 'mystery',
        // 2.7
        'large_size_w' => 1024,
        'large_size_h' => 1024,
        'image_default_link_type' => 'none',
        'image_default_size' => '',
        'image_default_align' => '',
        'close_comments_for_old_posts' => 0,
        'close_comments_days_old' => 14,
        'thread_comments' => 1,
        'thread_comments_depth' => 5,
        'page_comments' => 0,
        'comments_per_page' => 50,
        'default_comments_page' => 'newest',
        'comment_order' => 'asc',
        'sticky_posts' => array(),
        'widget_categories' => array(),
        'widget_text' => array(),
        'widget_rss' => array(),
        'uninstall_plugins' => array(),
        // 2.8
        'timezone_string' => $timezone_string,
        // 3.0
        'page_for_posts' => 0,
        'page_on_front' => 0,
        // 3.1
        'default_post_format' => 0,
        // 3.5
        'link_manager_enabled' => 0,
        // 4.3.0
        'finished_splitting_shared_terms' => 1,
        'site_icon' => 0,
        // 4.4.0
        'medium_large_size_w' => 768,
        'medium_large_size_h' => 0,
    );
    // 3.3
    if (!is_multisite()) {
        $options['initial_db_version'] = (!empty($wp_current_db_version) && $wp_current_db_version < $wp_db_version) ? $wp_current_db_version : $wp_db_version;
    }
    // 3.0 multisite
    if (is_multisite()) {
        /* translators: site tagline */
        $options['blogdescription'] = sprintf(__('Just another %s site'), get_current_site()->site_name);
        $options['permalink_structure'] = '/%year%/%monthnum%/%day%/%postname%/';
    }
    // Set autoload to no for these options
    $fat_options = array('moderation_keys', 'recently_edited', 'blacklist_keys', 'uninstall_plugins');
    $keys = "'" . implode("', '", array_keys($options)) . "'";
    $existing_options = $wpdb->get_col("SELECT option_name FROM {$wpdb->options} WHERE option_name in ( {$keys} )");
    $insert = '';
    foreach ($options as $option => $value) {
        if (in_array($option, $existing_options)) {
            continue;
        }
        if (in_array($option, $fat_options)) {
            $autoload = 'no';
        } else {
            $autoload = 'yes';
        }
        if (!empty($insert)) {
            $insert .= ', ';
        }
        $value = maybe_serialize(sanitize_option($option, $value));
        $insert .= $wpdb->prepare("(%s, %s, %s)", $option, $value, $autoload);
    }
    if (!empty($insert)) {
        $wpdb->query("INSERT INTO {$wpdb->options} (option_name, option_value, autoload) VALUES " . $insert);
    }
    // In case it is set, but blank, update "home".
    if (!__get_option('home')) {
        update_option('home', $guessurl);
    }
    // Delete unused options.
    $unusedoptions = array('blodotgsping_url', 'bodyterminator', 'emailtestonly', 'phoneemail_separator', 'smilies_directory', 'subjectprefix', 'use_bbcode', 'use_blodotgsping', 'use_phoneemail', 'use_quicktags', 'use_weblogsping', 'weblogs_cache_file', 'use_preview', 'use_htmltrans', 'smilies_directory', 'fileupload_allowedusers', 'use_phoneemail', 'default_post_status', 'default_post_category', 'archive_mode', 'time_difference', 'links_minadminlevel', 'links_use_adminlevels', 'links_rating_type', 'links_rating_char', 'links_rating_ignore_zero', 'links_rating_single_image', 'links_rating_image0', 'links_rating_image1', 'links_rating_image2', 'links_rating_image3', 'links_rating_image4', 'links_rating_image5', 'links_rating_image6', 'links_rating_image7', 'links_rating_image8', 'links_rating_image9', 'links_recently_updated_time', 'links_recently_updated_prepend', 'links_recently_updated_append', 'weblogs_cacheminutes', 'comment_allowed_tags', 'search_engine_friendly_urls', 'default_geourl_lat', 'default_geourl_lon', 'use_default_geourl', 'weblogs_xml_url', 'new_users_can_blog', '_wpnonce', '_wp_http_referer', 'Update', 'action', 'rich_editing', 'autosave_interval', 'deactivated_plugins', 'can_compress_scripts', 'page_uris', 'update_core', 'update_plugins', 'update_themes', 'doing_cron', 'random_seed', 'rss_excerpt_length', 'secret', 'use_linksupdate', 'default_comment_status_page', 'wporg_popular_tags', 'what_to_show', 'rss_language', 'language', 'enable_xmlrpc', 'enable_app', 'embed_autourls', 'default_post_edit_rows', 'gzipcompression', 'advanced_edit');
    foreach ($unusedoptions as $option) {
        delete_option($option);
    }
    // Delete obsolete magpie stuff.
    $wpdb->query("DELETE FROM {$wpdb->options} WHERE option_name REGEXP '^rss_[0-9a-f]{32}(_ts)?\$'");
    /*
     * Deletes all expired transients. The multi-table delete syntax is used
     * to delete the transient record from table a, and the corresponding
     * transient_timeout record from table b.
     */
    $time = time();
    $sql = "DELETE a, b FROM {$wpdb->options} a, {$wpdb->options} b\n\t\tWHERE a.option_name LIKE %s\n\t\tAND a.option_name NOT LIKE %s\n\t\tAND b.option_name = CONCAT( '_transient_timeout_', SUBSTRING( a.option_name, 12 ) )\n\t\tAND b.option_value < %d";
    $wpdb->query($wpdb->prepare($sql, $wpdb->esc_like('_transient_') . '%', $wpdb->esc_like('_transient_timeout_') . '%', $time));
    if (is_main_site() && is_main_network()) {
        $sql = "DELETE a, b FROM {$wpdb->options} a, {$wpdb->options} b\n\t\t\tWHERE a.option_name LIKE %s\n\t\t\tAND a.option_name NOT LIKE %s\n\t\t\tAND b.option_name = CONCAT( '_site_transient_timeout_', SUBSTRING( a.option_name, 17 ) )\n\t\t\tAND b.option_value < %d";
        $wpdb->query($wpdb->prepare($sql, $wpdb->esc_like('_site_transient_') . '%', $wpdb->esc_like('_site_transient_timeout_') . '%', $time));
    }
}

WordPress Version: 4.5

/**
 * Create WordPress options and set the default values.
 *
 * @since 1.5.0
 *
 * @global wpdb $wpdb WordPress database abstraction object.
 * @global int  $wp_db_version
 * @global int  $wp_current_db_version
 */
function populate_options()
{
    global $wpdb, $wp_db_version, $wp_current_db_version;
    $guessurl = wp_guess_url();
    /**
     * Fires before creating WordPress options and populating their default values.
     *
     * @since 2.6.0
     */
    do_action('populate_options');
    if (ini_get('safe_mode')) {
        // Safe mode can break mkdir() so use a flat structure by default.
        $uploads_use_yearmonth_folders = 0;
    } else {
        $uploads_use_yearmonth_folders = 1;
    }
    // If WP_DEFAULT_THEME doesn't exist, fall back to the latest core default theme.
    $stylesheet = $template = WP_DEFAULT_THEME;
    $theme = wp_get_theme(WP_DEFAULT_THEME);
    if (!$theme->exists()) {
        $theme = WP_Theme::get_core_default_theme();
    }
    // If we can't find a core default theme, WP_DEFAULT_THEME is the best we can do.
    if ($theme) {
        $stylesheet = $theme->get_stylesheet();
        $template = $theme->get_template();
    }
    $timezone_string = '';
    $gmt_offset = 0;
    /* translators: default GMT offset or timezone string. Must be either a valid offset (-12 to 14)
    	   or a valid timezone string (America/New_York). See http://us3.php.net/manual/en/timezones.php
    	   for all timezone strings supported by PHP.
    	*/
    $offset_or_tz = _x('0', 'default GMT offset or timezone string');
    if (is_numeric($offset_or_tz)) {
        $gmt_offset = $offset_or_tz;
    } elseif ($offset_or_tz && in_array($offset_or_tz, timezone_identifiers_list())) {
        $timezone_string = $offset_or_tz;
    }
    $options = array(
        'siteurl' => $guessurl,
        'home' => $guessurl,
        'blogname' => __('My Site'),
        /* translators: site tagline */
        'blogdescription' => __('Just another WordPress site'),
        'users_can_register' => 0,
        'admin_email' => '[email protected]',
        /* translators: default start of the week. 0 = Sunday, 1 = Monday */
        'start_of_week' => _x('1', 'start of week'),
        'use_balanceTags' => 0,
        'use_smilies' => 1,
        'require_name_email' => 1,
        'comments_notify' => 1,
        'posts_per_rss' => 10,
        'rss_use_excerpt' => 0,
        'mailserver_url' => 'mail.example.com',
        'mailserver_login' => '[email protected]',
        'mailserver_pass' => 'password',
        'mailserver_port' => 110,
        'default_category' => 1,
        'default_comment_status' => 'open',
        'default_ping_status' => 'open',
        'default_pingback_flag' => 1,
        'posts_per_page' => 10,
        /* translators: default date format, see http://php.net/date */
        'date_format' => __('F j, Y'),
        /* translators: default time format, see http://php.net/date */
        'time_format' => __('g:i a'),
        /* translators: links last updated date format, see http://php.net/date */
        'links_updated_date_format' => __('F j, Y g:i a'),
        'comment_moderation' => 0,
        'moderation_notify' => 1,
        'permalink_structure' => '',
        'rewrite_rules' => '',
        'hack_file' => 0,
        'blog_charset' => 'UTF-8',
        'moderation_keys' => '',
        'active_plugins' => array(),
        'category_base' => '',
        'ping_sites' => 'http://rpc.pingomatic.com/',
        'comment_max_links' => 2,
        'gmt_offset' => $gmt_offset,
        // 1.5
        'default_email_category' => 1,
        'recently_edited' => '',
        'template' => $template,
        'stylesheet' => $stylesheet,
        'comment_whitelist' => 1,
        'blacklist_keys' => '',
        'comment_registration' => 0,
        'html_type' => 'text/html',
        // 1.5.1
        'use_trackback' => 0,
        // 2.0
        'default_role' => 'subscriber',
        'db_version' => $wp_db_version,
        // 2.0.1
        'uploads_use_yearmonth_folders' => $uploads_use_yearmonth_folders,
        'upload_path' => '',
        // 2.1
        'blog_public' => '1',
        'default_link_category' => 2,
        'show_on_front' => 'posts',
        // 2.2
        'tag_base' => '',
        // 2.5
        'show_avatars' => '1',
        'avatar_rating' => 'G',
        'upload_url_path' => '',
        'thumbnail_size_w' => 150,
        'thumbnail_size_h' => 150,
        'thumbnail_crop' => 1,
        'medium_size_w' => 300,
        'medium_size_h' => 300,
        // 2.6
        'avatar_default' => 'mystery',
        // 2.7
        'large_size_w' => 1024,
        'large_size_h' => 1024,
        'image_default_link_type' => 'none',
        'image_default_size' => '',
        'image_default_align' => '',
        'close_comments_for_old_posts' => 0,
        'close_comments_days_old' => 14,
        'thread_comments' => 1,
        'thread_comments_depth' => 5,
        'page_comments' => 0,
        'comments_per_page' => 50,
        'default_comments_page' => 'newest',
        'comment_order' => 'asc',
        'sticky_posts' => array(),
        'widget_categories' => array(),
        'widget_text' => array(),
        'widget_rss' => array(),
        'uninstall_plugins' => array(),
        // 2.8
        'timezone_string' => $timezone_string,
        // 3.0
        'page_for_posts' => 0,
        'page_on_front' => 0,
        // 3.1
        'default_post_format' => 0,
        // 3.5
        'link_manager_enabled' => 0,
        // 4.3.0
        'finished_splitting_shared_terms' => 1,
        'site_icon' => 0,
        // 4.4.0
        'medium_large_size_w' => 768,
        'medium_large_size_h' => 0,
    );
    // 3.3
    if (!is_multisite()) {
        $options['initial_db_version'] = (!empty($wp_current_db_version) && $wp_current_db_version < $wp_db_version) ? $wp_current_db_version : $wp_db_version;
    }
    // 3.0 multisite
    if (is_multisite()) {
        /* translators: site tagline */
        $options['blogdescription'] = sprintf(__('Just another %s site'), get_current_site()->site_name);
        $options['permalink_structure'] = '/%year%/%monthnum%/%day%/%postname%/';
    }
    // Set autoload to no for these options
    $fat_options = array('moderation_keys', 'recently_edited', 'blacklist_keys', 'uninstall_plugins');
    $keys = "'" . implode("', '", array_keys($options)) . "'";
    $existing_options = $wpdb->get_col("SELECT option_name FROM {$wpdb->options} WHERE option_name in ( {$keys} )");
    $insert = '';
    foreach ($options as $option => $value) {
        if (in_array($option, $existing_options)) {
            continue;
        }
        if (in_array($option, $fat_options)) {
            $autoload = 'no';
        } else {
            $autoload = 'yes';
        }
        if (is_array($value)) {
            $value = serialize($value);
        }
        if (!empty($insert)) {
            $insert .= ', ';
        }
        $insert .= $wpdb->prepare("(%s, %s, %s)", $option, $value, $autoload);
    }
    if (!empty($insert)) {
        $wpdb->query("INSERT INTO {$wpdb->options} (option_name, option_value, autoload) VALUES " . $insert);
    }
    // In case it is set, but blank, update "home".
    if (!__get_option('home')) {
        update_option('home', $guessurl);
    }
    // Delete unused options.
    $unusedoptions = array('blodotgsping_url', 'bodyterminator', 'emailtestonly', 'phoneemail_separator', 'smilies_directory', 'subjectprefix', 'use_bbcode', 'use_blodotgsping', 'use_phoneemail', 'use_quicktags', 'use_weblogsping', 'weblogs_cache_file', 'use_preview', 'use_htmltrans', 'smilies_directory', 'fileupload_allowedusers', 'use_phoneemail', 'default_post_status', 'default_post_category', 'archive_mode', 'time_difference', 'links_minadminlevel', 'links_use_adminlevels', 'links_rating_type', 'links_rating_char', 'links_rating_ignore_zero', 'links_rating_single_image', 'links_rating_image0', 'links_rating_image1', 'links_rating_image2', 'links_rating_image3', 'links_rating_image4', 'links_rating_image5', 'links_rating_image6', 'links_rating_image7', 'links_rating_image8', 'links_rating_image9', 'links_recently_updated_time', 'links_recently_updated_prepend', 'links_recently_updated_append', 'weblogs_cacheminutes', 'comment_allowed_tags', 'search_engine_friendly_urls', 'default_geourl_lat', 'default_geourl_lon', 'use_default_geourl', 'weblogs_xml_url', 'new_users_can_blog', '_wpnonce', '_wp_http_referer', 'Update', 'action', 'rich_editing', 'autosave_interval', 'deactivated_plugins', 'can_compress_scripts', 'page_uris', 'update_core', 'update_plugins', 'update_themes', 'doing_cron', 'random_seed', 'rss_excerpt_length', 'secret', 'use_linksupdate', 'default_comment_status_page', 'wporg_popular_tags', 'what_to_show', 'rss_language', 'language', 'enable_xmlrpc', 'enable_app', 'embed_autourls', 'default_post_edit_rows', 'gzipcompression', 'advanced_edit');
    foreach ($unusedoptions as $option) {
        delete_option($option);
    }
    // Delete obsolete magpie stuff.
    $wpdb->query("DELETE FROM {$wpdb->options} WHERE option_name REGEXP '^rss_[0-9a-f]{32}(_ts)?\$'");
    /*
     * Deletes all expired transients. The multi-table delete syntax is used
     * to delete the transient record from table a, and the corresponding
     * transient_timeout record from table b.
     */
    $time = time();
    $sql = "DELETE a, b FROM {$wpdb->options} a, {$wpdb->options} b\n\t\tWHERE a.option_name LIKE %s\n\t\tAND a.option_name NOT LIKE %s\n\t\tAND b.option_name = CONCAT( '_transient_timeout_', SUBSTRING( a.option_name, 12 ) )\n\t\tAND b.option_value < %d";
    $wpdb->query($wpdb->prepare($sql, $wpdb->esc_like('_transient_') . '%', $wpdb->esc_like('_transient_timeout_') . '%', $time));
    if (is_main_site() && is_main_network()) {
        $sql = "DELETE a, b FROM {$wpdb->options} a, {$wpdb->options} b\n\t\t\tWHERE a.option_name LIKE %s\n\t\t\tAND a.option_name NOT LIKE %s\n\t\t\tAND b.option_name = CONCAT( '_site_transient_timeout_', SUBSTRING( a.option_name, 17 ) )\n\t\t\tAND b.option_value < %d";
        $wpdb->query($wpdb->prepare($sql, $wpdb->esc_like('_site_transient_') . '%', $wpdb->esc_like('_site_transient_timeout_') . '%', $time));
    }
}

WordPress Version: 4.4

/**
 * Create WordPress options and set the default values.
 *
 * @since 1.5.0
 *
 * @global wpdb $wpdb WordPress database abstraction object.
 * @global int  $wp_db_version
 * @global int  $wp_current_db_version
 */
function populate_options()
{
    global $wpdb, $wp_db_version, $wp_current_db_version;
    $guessurl = wp_guess_url();
    /**
     * Fires before creating WordPress options and populating their default values.
     *
     * @since 2.6.0
     */
    do_action('populate_options');
    if (ini_get('safe_mode')) {
        // Safe mode can break mkdir() so use a flat structure by default.
        $uploads_use_yearmonth_folders = 0;
    } else {
        $uploads_use_yearmonth_folders = 1;
    }
    // If WP_DEFAULT_THEME doesn't exist, fall back to the latest core default theme.
    $stylesheet = $template = WP_DEFAULT_THEME;
    $theme = wp_get_theme(WP_DEFAULT_THEME);
    if (!$theme->exists()) {
        $theme = WP_Theme::get_core_default_theme();
    }
    // If we can't find a core default theme, WP_DEFAULT_THEME is the best we can do.
    if ($theme) {
        $stylesheet = $theme->get_stylesheet();
        $template = $theme->get_template();
    }
    $timezone_string = '';
    $gmt_offset = 0;
    /* translators: default GMT offset or timezone string. Must be either a valid offset (-12 to 14)
    	   or a valid timezone string (America/New_York). See http://us3.php.net/manual/en/timezones.php
    	   for all timezone strings supported by PHP.
    	*/
    $offset_or_tz = _x('0', 'default GMT offset or timezone string');
    if (is_numeric($offset_or_tz)) {
        $gmt_offset = $offset_or_tz;
    } elseif ($offset_or_tz && in_array($offset_or_tz, timezone_identifiers_list())) {
        $timezone_string = $offset_or_tz;
    }
    $options = array(
        'siteurl' => $guessurl,
        'home' => $guessurl,
        'blogname' => __('My Site'),
        /* translators: blog tagline */
        'blogdescription' => __('Just another WordPress site'),
        'users_can_register' => 0,
        'admin_email' => '[email protected]',
        /* translators: default start of the week. 0 = Sunday, 1 = Monday */
        'start_of_week' => _x('1', 'start of week'),
        'use_balanceTags' => 0,
        'use_smilies' => 1,
        'require_name_email' => 1,
        'comments_notify' => 1,
        'posts_per_rss' => 10,
        'rss_use_excerpt' => 0,
        'mailserver_url' => 'mail.example.com',
        'mailserver_login' => '[email protected]',
        'mailserver_pass' => 'password',
        'mailserver_port' => 110,
        'default_category' => 1,
        'default_comment_status' => 'open',
        'default_ping_status' => 'open',
        'default_pingback_flag' => 1,
        'posts_per_page' => 10,
        /* translators: default date format, see http://php.net/date */
        'date_format' => __('F j, Y'),
        /* translators: default time format, see http://php.net/date */
        'time_format' => __('g:i a'),
        /* translators: links last updated date format, see http://php.net/date */
        'links_updated_date_format' => __('F j, Y g:i a'),
        'comment_moderation' => 0,
        'moderation_notify' => 1,
        'permalink_structure' => '',
        'hack_file' => 0,
        'blog_charset' => 'UTF-8',
        'moderation_keys' => '',
        'active_plugins' => array(),
        'category_base' => '',
        'ping_sites' => 'http://rpc.pingomatic.com/',
        'comment_max_links' => 2,
        'gmt_offset' => $gmt_offset,
        // 1.5
        'default_email_category' => 1,
        'recently_edited' => '',
        'template' => $template,
        'stylesheet' => $stylesheet,
        'comment_whitelist' => 1,
        'blacklist_keys' => '',
        'comment_registration' => 0,
        'html_type' => 'text/html',
        // 1.5.1
        'use_trackback' => 0,
        // 2.0
        'default_role' => 'subscriber',
        'db_version' => $wp_db_version,
        // 2.0.1
        'uploads_use_yearmonth_folders' => $uploads_use_yearmonth_folders,
        'upload_path' => '',
        // 2.1
        'blog_public' => '1',
        'default_link_category' => 2,
        'show_on_front' => 'posts',
        // 2.2
        'tag_base' => '',
        // 2.5
        'show_avatars' => '1',
        'avatar_rating' => 'G',
        'upload_url_path' => '',
        'thumbnail_size_w' => 150,
        'thumbnail_size_h' => 150,
        'thumbnail_crop' => 1,
        'medium_size_w' => 300,
        'medium_size_h' => 300,
        // 2.6
        'avatar_default' => 'mystery',
        // 2.7
        'large_size_w' => 1024,
        'large_size_h' => 1024,
        'image_default_link_type' => 'none',
        'image_default_size' => '',
        'image_default_align' => '',
        'close_comments_for_old_posts' => 0,
        'close_comments_days_old' => 14,
        'thread_comments' => 1,
        'thread_comments_depth' => 5,
        'page_comments' => 0,
        'comments_per_page' => 50,
        'default_comments_page' => 'newest',
        'comment_order' => 'asc',
        'sticky_posts' => array(),
        'widget_categories' => array(),
        'widget_text' => array(),
        'widget_rss' => array(),
        'uninstall_plugins' => array(),
        // 2.8
        'timezone_string' => $timezone_string,
        // 3.0
        'page_for_posts' => 0,
        'page_on_front' => 0,
        // 3.1
        'default_post_format' => 0,
        // 3.5
        'link_manager_enabled' => 0,
        // 4.3.0
        'finished_splitting_shared_terms' => 1,
        'site_icon' => 0,
        // 4.4.0
        'medium_large_size_w' => 768,
        'medium_large_size_h' => 0,
    );
    // 3.3
    if (!is_multisite()) {
        $options['initial_db_version'] = (!empty($wp_current_db_version) && $wp_current_db_version < $wp_db_version) ? $wp_current_db_version : $wp_db_version;
    }
    // 3.0 multisite
    if (is_multisite()) {
        /* translators: blog tagline */
        $options['blogdescription'] = sprintf(__('Just another %s site'), get_current_site()->site_name);
        $options['permalink_structure'] = '/%year%/%monthnum%/%day%/%postname%/';
    }
    // Set autoload to no for these options
    $fat_options = array('moderation_keys', 'recently_edited', 'blacklist_keys', 'uninstall_plugins');
    $keys = "'" . implode("', '", array_keys($options)) . "'";
    $existing_options = $wpdb->get_col("SELECT option_name FROM {$wpdb->options} WHERE option_name in ( {$keys} )");
    $insert = '';
    foreach ($options as $option => $value) {
        if (in_array($option, $existing_options)) {
            continue;
        }
        if (in_array($option, $fat_options)) {
            $autoload = 'no';
        } else {
            $autoload = 'yes';
        }
        if (is_array($value)) {
            $value = serialize($value);
        }
        if (!empty($insert)) {
            $insert .= ', ';
        }
        $insert .= $wpdb->prepare("(%s, %s, %s)", $option, $value, $autoload);
    }
    if (!empty($insert)) {
        $wpdb->query("INSERT INTO {$wpdb->options} (option_name, option_value, autoload) VALUES " . $insert);
    }
    // In case it is set, but blank, update "home".
    if (!__get_option('home')) {
        update_option('home', $guessurl);
    }
    // Delete unused options.
    $unusedoptions = array('blodotgsping_url', 'bodyterminator', 'emailtestonly', 'phoneemail_separator', 'smilies_directory', 'subjectprefix', 'use_bbcode', 'use_blodotgsping', 'use_phoneemail', 'use_quicktags', 'use_weblogsping', 'weblogs_cache_file', 'use_preview', 'use_htmltrans', 'smilies_directory', 'fileupload_allowedusers', 'use_phoneemail', 'default_post_status', 'default_post_category', 'archive_mode', 'time_difference', 'links_minadminlevel', 'links_use_adminlevels', 'links_rating_type', 'links_rating_char', 'links_rating_ignore_zero', 'links_rating_single_image', 'links_rating_image0', 'links_rating_image1', 'links_rating_image2', 'links_rating_image3', 'links_rating_image4', 'links_rating_image5', 'links_rating_image6', 'links_rating_image7', 'links_rating_image8', 'links_rating_image9', 'links_recently_updated_time', 'links_recently_updated_prepend', 'links_recently_updated_append', 'weblogs_cacheminutes', 'comment_allowed_tags', 'search_engine_friendly_urls', 'default_geourl_lat', 'default_geourl_lon', 'use_default_geourl', 'weblogs_xml_url', 'new_users_can_blog', '_wpnonce', '_wp_http_referer', 'Update', 'action', 'rich_editing', 'autosave_interval', 'deactivated_plugins', 'can_compress_scripts', 'page_uris', 'update_core', 'update_plugins', 'update_themes', 'doing_cron', 'random_seed', 'rss_excerpt_length', 'secret', 'use_linksupdate', 'default_comment_status_page', 'wporg_popular_tags', 'what_to_show', 'rss_language', 'language', 'enable_xmlrpc', 'enable_app', 'embed_autourls', 'default_post_edit_rows', 'gzipcompression', 'advanced_edit');
    foreach ($unusedoptions as $option) {
        delete_option($option);
    }
    // Delete obsolete magpie stuff.
    $wpdb->query("DELETE FROM {$wpdb->options} WHERE option_name REGEXP '^rss_[0-9a-f]{32}(_ts)?\$'");
    /*
     * Deletes all expired transients. The multi-table delete syntax is used
     * to delete the transient record from table a, and the corresponding
     * transient_timeout record from table b.
     */
    $time = time();
    $sql = "DELETE a, b FROM {$wpdb->options} a, {$wpdb->options} b\n\t\tWHERE a.option_name LIKE %s\n\t\tAND a.option_name NOT LIKE %s\n\t\tAND b.option_name = CONCAT( '_transient_timeout_', SUBSTRING( a.option_name, 12 ) )\n\t\tAND b.option_value < %d";
    $wpdb->query($wpdb->prepare($sql, $wpdb->esc_like('_transient_') . '%', $wpdb->esc_like('_transient_timeout_') . '%', $time));
    if (is_main_site() && is_main_network()) {
        $sql = "DELETE a, b FROM {$wpdb->options} a, {$wpdb->options} b\n\t\t\tWHERE a.option_name LIKE %s\n\t\t\tAND a.option_name NOT LIKE %s\n\t\t\tAND b.option_name = CONCAT( '_site_transient_timeout_', SUBSTRING( a.option_name, 17 ) )\n\t\t\tAND b.option_value < %d";
        $wpdb->query($wpdb->prepare($sql, $wpdb->esc_like('_site_transient_') . '%', $wpdb->esc_like('_site_transient_timeout_') . '%', $time));
    }
}

WordPress Version: .32

/**
 * Create WordPress options and set the default values.
 *
 * @since 1.5.0
 *
 * @global wpdb $wpdb WordPress database abstraction object.
 * @global int  $wp_db_version
 * @global int  $wp_current_db_version
 */
function populate_options()
{
    global $wpdb, $wp_db_version, $wp_current_db_version;
    $guessurl = wp_guess_url();
    /**
     * Fires before creating WordPress options and populating their default values.
     *
     * @since 2.6.0
     */
    do_action('populate_options');
    if (ini_get('safe_mode')) {
        // Safe mode can break mkdir() so use a flat structure by default.
        $uploads_use_yearmonth_folders = 0;
    } else {
        $uploads_use_yearmonth_folders = 1;
    }
    // If WP_DEFAULT_THEME doesn't exist, fall back to the latest core default theme.
    $stylesheet = $template = WP_DEFAULT_THEME;
    $theme = wp_get_theme(WP_DEFAULT_THEME);
    if (!$theme->exists()) {
        $theme = WP_Theme::get_core_default_theme();
    }
    // If we can't find a core default theme, WP_DEFAULT_THEME is the best we can do.
    if ($theme) {
        $stylesheet = $theme->get_stylesheet();
        $template = $theme->get_template();
    }
    $timezone_string = '';
    $gmt_offset = 0;
    /* translators: default GMT offset or timezone string. Must be either a valid offset (-12 to 14)
    	   or a valid timezone string (America/New_York). See http://us3.php.net/manual/en/timezones.php
    	   for all timezone strings supported by PHP.
    	*/
    $offset_or_tz = _x('0', 'default GMT offset or timezone string');
    if (is_numeric($offset_or_tz)) {
        $gmt_offset = $offset_or_tz;
    } elseif ($offset_or_tz && in_array($offset_or_tz, timezone_identifiers_list())) {
        $timezone_string = $offset_or_tz;
    }
    $options = array(
        'siteurl' => $guessurl,
        'home' => $guessurl,
        'blogname' => __('My Site'),
        /* translators: blog tagline */
        'blogdescription' => __('Just another WordPress site'),
        'users_can_register' => 0,
        'admin_email' => '[email protected]',
        /* translators: default start of the week. 0 = Sunday, 1 = Monday */
        'start_of_week' => _x('1', 'start of week'),
        'use_balanceTags' => 0,
        'use_smilies' => 1,
        'require_name_email' => 1,
        'comments_notify' => 1,
        'posts_per_rss' => 10,
        'rss_use_excerpt' => 0,
        'mailserver_url' => 'mail.example.com',
        'mailserver_login' => '[email protected]',
        'mailserver_pass' => 'password',
        'mailserver_port' => 110,
        'default_category' => 1,
        'default_comment_status' => 'open',
        'default_ping_status' => 'open',
        'default_pingback_flag' => 1,
        'posts_per_page' => 10,
        /* translators: default date format, see http://php.net/date */
        'date_format' => __('F j, Y'),
        /* translators: default time format, see http://php.net/date */
        'time_format' => __('g:i a'),
        /* translators: links last updated date format, see http://php.net/date */
        'links_updated_date_format' => __('F j, Y g:i a'),
        'comment_moderation' => 0,
        'moderation_notify' => 1,
        'permalink_structure' => '',
        'hack_file' => 0,
        'blog_charset' => 'UTF-8',
        'moderation_keys' => '',
        'active_plugins' => array(),
        'category_base' => '',
        'ping_sites' => 'http://rpc.pingomatic.com/',
        'comment_max_links' => 2,
        'gmt_offset' => $gmt_offset,
        // 1.5
        'default_email_category' => 1,
        'recently_edited' => '',
        'template' => $template,
        'stylesheet' => $stylesheet,
        'comment_whitelist' => 1,
        'blacklist_keys' => '',
        'comment_registration' => 0,
        'html_type' => 'text/html',
        // 1.5.1
        'use_trackback' => 0,
        // 2.0
        'default_role' => 'subscriber',
        'db_version' => $wp_db_version,
        // 2.0.1
        'uploads_use_yearmonth_folders' => $uploads_use_yearmonth_folders,
        'upload_path' => '',
        // 2.1
        'blog_public' => '1',
        'default_link_category' => 2,
        'show_on_front' => 'posts',
        // 2.2
        'tag_base' => '',
        // 2.5
        'show_avatars' => '1',
        'avatar_rating' => 'G',
        'upload_url_path' => '',
        'thumbnail_size_w' => 150,
        'thumbnail_size_h' => 150,
        'thumbnail_crop' => 1,
        'medium_size_w' => 300,
        'medium_size_h' => 300,
        // 2.6
        'avatar_default' => 'mystery',
        // 2.7
        'large_size_w' => 1024,
        'large_size_h' => 1024,
        'image_default_link_type' => 'none',
        'image_default_size' => '',
        'image_default_align' => '',
        'close_comments_for_old_posts' => 0,
        'close_comments_days_old' => 14,
        'thread_comments' => 1,
        'thread_comments_depth' => 5,
        'page_comments' => 0,
        'comments_per_page' => 50,
        'default_comments_page' => 'newest',
        'comment_order' => 'asc',
        'sticky_posts' => array(),
        'widget_categories' => array(),
        'widget_text' => array(),
        'widget_rss' => array(),
        'uninstall_plugins' => array(),
        // 2.8
        'timezone_string' => $timezone_string,
        // 3.0
        'page_for_posts' => 0,
        'page_on_front' => 0,
        // 3.1
        'default_post_format' => 0,
        // 3.5
        'link_manager_enabled' => 0,
        // 4.3.0
        'finished_splitting_shared_terms' => 1,
        'site_icon' => 0,
        // 4.4.0
        'medium_large_size_w' => 768,
        'medium_large_size_h' => 0,
    );
    // 3.3
    if (!is_multisite()) {
        $options['initial_db_version'] = (!empty($wp_current_db_version) && $wp_current_db_version < $wp_db_version) ? $wp_current_db_version : $wp_db_version;
    }
    // 3.0 multisite
    if (is_multisite()) {
        /* translators: blog tagline */
        $options['blogdescription'] = sprintf(__('Just another %s site'), get_current_site()->site_name);
        $options['permalink_structure'] = '/%year%/%monthnum%/%day%/%postname%/';
    }
    // Set autoload to no for these options
    $fat_options = array('moderation_keys', 'recently_edited', 'blacklist_keys', 'uninstall_plugins');
    $keys = "'" . implode("', '", array_keys($options)) . "'";
    $existing_options = $wpdb->get_col("SELECT option_name FROM {$wpdb->options} WHERE option_name in ( {$keys} )");
    $insert = '';
    foreach ($options as $option => $value) {
        if (in_array($option, $existing_options)) {
            continue;
        }
        if (in_array($option, $fat_options)) {
            $autoload = 'no';
        } else {
            $autoload = 'yes';
        }
        if (!empty($insert)) {
            $insert .= ', ';
        }
        $value = maybe_serialize(sanitize_option($option, $value));
        $insert .= $wpdb->prepare("(%s, %s, %s)", $option, $value, $autoload);
    }
    if (!empty($insert)) {
        $wpdb->query("INSERT INTO {$wpdb->options} (option_name, option_value, autoload) VALUES " . $insert);
    }
    // In case it is set, but blank, update "home".
    if (!__get_option('home')) {
        update_option('home', $guessurl);
    }
    // Delete unused options.
    $unusedoptions = array('blodotgsping_url', 'bodyterminator', 'emailtestonly', 'phoneemail_separator', 'smilies_directory', 'subjectprefix', 'use_bbcode', 'use_blodotgsping', 'use_phoneemail', 'use_quicktags', 'use_weblogsping', 'weblogs_cache_file', 'use_preview', 'use_htmltrans', 'smilies_directory', 'fileupload_allowedusers', 'use_phoneemail', 'default_post_status', 'default_post_category', 'archive_mode', 'time_difference', 'links_minadminlevel', 'links_use_adminlevels', 'links_rating_type', 'links_rating_char', 'links_rating_ignore_zero', 'links_rating_single_image', 'links_rating_image0', 'links_rating_image1', 'links_rating_image2', 'links_rating_image3', 'links_rating_image4', 'links_rating_image5', 'links_rating_image6', 'links_rating_image7', 'links_rating_image8', 'links_rating_image9', 'links_recently_updated_time', 'links_recently_updated_prepend', 'links_recently_updated_append', 'weblogs_cacheminutes', 'comment_allowed_tags', 'search_engine_friendly_urls', 'default_geourl_lat', 'default_geourl_lon', 'use_default_geourl', 'weblogs_xml_url', 'new_users_can_blog', '_wpnonce', '_wp_http_referer', 'Update', 'action', 'rich_editing', 'autosave_interval', 'deactivated_plugins', 'can_compress_scripts', 'page_uris', 'update_core', 'update_plugins', 'update_themes', 'doing_cron', 'random_seed', 'rss_excerpt_length', 'secret', 'use_linksupdate', 'default_comment_status_page', 'wporg_popular_tags', 'what_to_show', 'rss_language', 'language', 'enable_xmlrpc', 'enable_app', 'embed_autourls', 'default_post_edit_rows', 'gzipcompression', 'advanced_edit');
    foreach ($unusedoptions as $option) {
        delete_option($option);
    }
    // Delete obsolete magpie stuff.
    $wpdb->query("DELETE FROM {$wpdb->options} WHERE option_name REGEXP '^rss_[0-9a-f]{32}(_ts)?\$'");
    /*
     * Deletes all expired transients. The multi-table delete syntax is used
     * to delete the transient record from table a, and the corresponding
     * transient_timeout record from table b.
     */
    $time = time();
    $sql = "DELETE a, b FROM {$wpdb->options} a, {$wpdb->options} b\n\t\tWHERE a.option_name LIKE %s\n\t\tAND a.option_name NOT LIKE %s\n\t\tAND b.option_name = CONCAT( '_transient_timeout_', SUBSTRING( a.option_name, 12 ) )\n\t\tAND b.option_value < %d";
    $wpdb->query($wpdb->prepare($sql, $wpdb->esc_like('_transient_') . '%', $wpdb->esc_like('_transient_timeout_') . '%', $time));
    if (is_main_site() && is_main_network()) {
        $sql = "DELETE a, b FROM {$wpdb->options} a, {$wpdb->options} b\n\t\t\tWHERE a.option_name LIKE %s\n\t\t\tAND a.option_name NOT LIKE %s\n\t\t\tAND b.option_name = CONCAT( '_site_transient_timeout_', SUBSTRING( a.option_name, 17 ) )\n\t\t\tAND b.option_value < %d";
        $wpdb->query($wpdb->prepare($sql, $wpdb->esc_like('_site_transient_') . '%', $wpdb->esc_like('_site_transient_timeout_') . '%', $time));
    }
}

WordPress Version: 4.4

/**
 * Create WordPress options and set the default values.
 *
 * @since 1.5.0
 *
 * @global wpdb $wpdb WordPress database abstraction object.
 * @global int  $wp_db_version
 * @global int  $wp_current_db_version
 */
function populate_options()
{
    global $wpdb, $wp_db_version, $wp_current_db_version;
    $guessurl = wp_guess_url();
    /**
     * Fires before creating WordPress options and populating their default values.
     *
     * @since 2.6.0
     */
    do_action('populate_options');
    if (ini_get('safe_mode')) {
        // Safe mode can break mkdir() so use a flat structure by default.
        $uploads_use_yearmonth_folders = 0;
    } else {
        $uploads_use_yearmonth_folders = 1;
    }
    // If WP_DEFAULT_THEME doesn't exist, fall back to the latest core default theme.
    $stylesheet = $template = WP_DEFAULT_THEME;
    $theme = wp_get_theme(WP_DEFAULT_THEME);
    if (!$theme->exists()) {
        $theme = WP_Theme::get_core_default_theme();
    }
    // If we can't find a core default theme, WP_DEFAULT_THEME is the best we can do.
    if ($theme) {
        $stylesheet = $theme->get_stylesheet();
        $template = $theme->get_template();
    }
    $timezone_string = '';
    $gmt_offset = 0;
    /* translators: default GMT offset or timezone string. Must be either a valid offset (-12 to 14)
    	   or a valid timezone string (America/New_York). See http://us3.php.net/manual/en/timezones.php
    	   for all timezone strings supported by PHP.
    	*/
    $offset_or_tz = _x('0', 'default GMT offset or timezone string');
    if (is_numeric($offset_or_tz)) {
        $gmt_offset = $offset_or_tz;
    } elseif ($offset_or_tz && in_array($offset_or_tz, timezone_identifiers_list())) {
        $timezone_string = $offset_or_tz;
    }
    $options = array(
        'siteurl' => $guessurl,
        'home' => $guessurl,
        'blogname' => __('My Site'),
        /* translators: blog tagline */
        'blogdescription' => __('Just another WordPress site'),
        'users_can_register' => 0,
        'admin_email' => '[email protected]',
        /* translators: default start of the week. 0 = Sunday, 1 = Monday */
        'start_of_week' => _x('1', 'start of week'),
        'use_balanceTags' => 0,
        'use_smilies' => 1,
        'require_name_email' => 1,
        'comments_notify' => 1,
        'posts_per_rss' => 10,
        'rss_use_excerpt' => 0,
        'mailserver_url' => 'mail.example.com',
        'mailserver_login' => '[email protected]',
        'mailserver_pass' => 'password',
        'mailserver_port' => 110,
        'default_category' => 1,
        'default_comment_status' => 'open',
        'default_ping_status' => 'open',
        'default_pingback_flag' => 1,
        'posts_per_page' => 10,
        /* translators: default date format, see http://php.net/date */
        'date_format' => __('F j, Y'),
        /* translators: default time format, see http://php.net/date */
        'time_format' => __('g:i a'),
        /* translators: links last updated date format, see http://php.net/date */
        'links_updated_date_format' => __('F j, Y g:i a'),
        'comment_moderation' => 0,
        'moderation_notify' => 1,
        'permalink_structure' => '',
        'hack_file' => 0,
        'blog_charset' => 'UTF-8',
        'moderation_keys' => '',
        'active_plugins' => array(),
        'category_base' => '',
        'ping_sites' => 'http://rpc.pingomatic.com/',
        'comment_max_links' => 2,
        'gmt_offset' => $gmt_offset,
        // 1.5
        'default_email_category' => 1,
        'recently_edited' => '',
        'template' => $template,
        'stylesheet' => $stylesheet,
        'comment_whitelist' => 1,
        'blacklist_keys' => '',
        'comment_registration' => 0,
        'html_type' => 'text/html',
        // 1.5.1
        'use_trackback' => 0,
        // 2.0
        'default_role' => 'subscriber',
        'db_version' => $wp_db_version,
        // 2.0.1
        'uploads_use_yearmonth_folders' => $uploads_use_yearmonth_folders,
        'upload_path' => '',
        // 2.1
        'blog_public' => '1',
        'default_link_category' => 2,
        'show_on_front' => 'posts',
        // 2.2
        'tag_base' => '',
        // 2.5
        'show_avatars' => '1',
        'avatar_rating' => 'G',
        'upload_url_path' => '',
        'thumbnail_size_w' => 150,
        'thumbnail_size_h' => 150,
        'thumbnail_crop' => 1,
        'medium_size_w' => 300,
        'medium_size_h' => 300,
        // 2.6
        'avatar_default' => 'mystery',
        // 2.7
        'large_size_w' => 1024,
        'large_size_h' => 1024,
        'image_default_link_type' => 'none',
        'image_default_size' => '',
        'image_default_align' => '',
        'close_comments_for_old_posts' => 0,
        'close_comments_days_old' => 14,
        'thread_comments' => 1,
        'thread_comments_depth' => 5,
        'page_comments' => 0,
        'comments_per_page' => 50,
        'default_comments_page' => 'newest',
        'comment_order' => 'asc',
        'sticky_posts' => array(),
        'widget_categories' => array(),
        'widget_text' => array(),
        'widget_rss' => array(),
        'uninstall_plugins' => array(),
        // 2.8
        'timezone_string' => $timezone_string,
        // 3.0
        'page_for_posts' => 0,
        'page_on_front' => 0,
        // 3.1
        'default_post_format' => 0,
        // 3.5
        'link_manager_enabled' => 0,
        // 4.3.0
        'finished_splitting_shared_terms' => 1,
        'site_icon' => 0,
        // 4.4.0
        'medium_large_size_w' => 768,
        'medium_large_size_h' => 0,
    );
    // 3.3
    if (!is_multisite()) {
        $options['initial_db_version'] = (!empty($wp_current_db_version) && $wp_current_db_version < $wp_db_version) ? $wp_current_db_version : $wp_db_version;
    }
    // 3.0 multisite
    if (is_multisite()) {
        /* translators: blog tagline */
        $options['blogdescription'] = sprintf(__('Just another %s site'), get_current_site()->site_name);
        $options['permalink_structure'] = '/%year%/%monthnum%/%day%/%postname%/';
    }
    // Set autoload to no for these options
    $fat_options = array('moderation_keys', 'recently_edited', 'blacklist_keys', 'uninstall_plugins');
    $keys = "'" . implode("', '", array_keys($options)) . "'";
    $existing_options = $wpdb->get_col("SELECT option_name FROM {$wpdb->options} WHERE option_name in ( {$keys} )");
    $insert = '';
    foreach ($options as $option => $value) {
        if (in_array($option, $existing_options)) {
            continue;
        }
        if (in_array($option, $fat_options)) {
            $autoload = 'no';
        } else {
            $autoload = 'yes';
        }
        if (is_array($value)) {
            $value = serialize($value);
        }
        if (!empty($insert)) {
            $insert .= ', ';
        }
        $insert .= $wpdb->prepare("(%s, %s, %s)", $option, $value, $autoload);
    }
    if (!empty($insert)) {
        $wpdb->query("INSERT INTO {$wpdb->options} (option_name, option_value, autoload) VALUES " . $insert);
    }
    // In case it is set, but blank, update "home".
    if (!__get_option('home')) {
        update_option('home', $guessurl);
    }
    // Delete unused options.
    $unusedoptions = array('blodotgsping_url', 'bodyterminator', 'emailtestonly', 'phoneemail_separator', 'smilies_directory', 'subjectprefix', 'use_bbcode', 'use_blodotgsping', 'use_phoneemail', 'use_quicktags', 'use_weblogsping', 'weblogs_cache_file', 'use_preview', 'use_htmltrans', 'smilies_directory', 'fileupload_allowedusers', 'use_phoneemail', 'default_post_status', 'default_post_category', 'archive_mode', 'time_difference', 'links_minadminlevel', 'links_use_adminlevels', 'links_rating_type', 'links_rating_char', 'links_rating_ignore_zero', 'links_rating_single_image', 'links_rating_image0', 'links_rating_image1', 'links_rating_image2', 'links_rating_image3', 'links_rating_image4', 'links_rating_image5', 'links_rating_image6', 'links_rating_image7', 'links_rating_image8', 'links_rating_image9', 'links_recently_updated_time', 'links_recently_updated_prepend', 'links_recently_updated_append', 'weblogs_cacheminutes', 'comment_allowed_tags', 'search_engine_friendly_urls', 'default_geourl_lat', 'default_geourl_lon', 'use_default_geourl', 'weblogs_xml_url', 'new_users_can_blog', '_wpnonce', '_wp_http_referer', 'Update', 'action', 'rich_editing', 'autosave_interval', 'deactivated_plugins', 'can_compress_scripts', 'page_uris', 'update_core', 'update_plugins', 'update_themes', 'doing_cron', 'random_seed', 'rss_excerpt_length', 'secret', 'use_linksupdate', 'default_comment_status_page', 'wporg_popular_tags', 'what_to_show', 'rss_language', 'language', 'enable_xmlrpc', 'enable_app', 'embed_autourls', 'default_post_edit_rows', 'gzipcompression', 'advanced_edit');
    foreach ($unusedoptions as $option) {
        delete_option($option);
    }
    // Delete obsolete magpie stuff.
    $wpdb->query("DELETE FROM {$wpdb->options} WHERE option_name REGEXP '^rss_[0-9a-f]{32}(_ts)?\$'");
    /*
     * Deletes all expired transients. The multi-table delete syntax is used
     * to delete the transient record from table a, and the corresponding
     * transient_timeout record from table b.
     */
    $time = time();
    $sql = "DELETE a, b FROM {$wpdb->options} a, {$wpdb->options} b\n\t\tWHERE a.option_name LIKE %s\n\t\tAND a.option_name NOT LIKE %s\n\t\tAND b.option_name = CONCAT( '_transient_timeout_', SUBSTRING( a.option_name, 12 ) )\n\t\tAND b.option_value < %d";
    $wpdb->query($wpdb->prepare($sql, $wpdb->esc_like('_transient_') . '%', $wpdb->esc_like('_transient_timeout_') . '%', $time));
    if (is_main_site() && is_main_network()) {
        $sql = "DELETE a, b FROM {$wpdb->options} a, {$wpdb->options} b\n\t\t\tWHERE a.option_name LIKE %s\n\t\t\tAND a.option_name NOT LIKE %s\n\t\t\tAND b.option_name = CONCAT( '_site_transient_timeout_', SUBSTRING( a.option_name, 17 ) )\n\t\t\tAND b.option_value < %d";
        $wpdb->query($wpdb->prepare($sql, $wpdb->esc_like('_site_transient_') . '%', $wpdb->esc_like('_site_transient_timeout_') . '%', $time));
    }
}

WordPress Version: 3.4

/**
 * Create WordPress options and set the default values.
 *
 * @since 1.5.0
 *
 * @global wpdb $wpdb WordPress database abstraction object.
 * @global int  $wp_db_version
 * @global int  $wp_current_db_version
 */
function populate_options()
{
    global $wpdb, $wp_db_version, $wp_current_db_version;
    $guessurl = wp_guess_url();
    /**
     * Fires before creating WordPress options and populating their default values.
     *
     * @since 2.6.0
     */
    do_action('populate_options');
    if (ini_get('safe_mode')) {
        // Safe mode can break mkdir() so use a flat structure by default.
        $uploads_use_yearmonth_folders = 0;
    } else {
        $uploads_use_yearmonth_folders = 1;
    }
    $template = WP_DEFAULT_THEME;
    // If default theme is a child theme, we need to get its template
    $theme = wp_get_theme($template);
    if (!$theme->errors()) {
        $template = $theme->get_template();
    }
    $timezone_string = '';
    $gmt_offset = 0;
    /* translators: default GMT offset or timezone string. Must be either a valid offset (-12 to 14)
    	   or a valid timezone string (America/New_York). See http://us3.php.net/manual/en/timezones.php
    	   for all timezone strings supported by PHP.
    	*/
    $offset_or_tz = _x('0', 'default GMT offset or timezone string');
    if (is_numeric($offset_or_tz)) {
        $gmt_offset = $offset_or_tz;
    } elseif ($offset_or_tz && in_array($offset_or_tz, timezone_identifiers_list())) {
        $timezone_string = $offset_or_tz;
    }
    $options = array(
        'siteurl' => $guessurl,
        'home' => $guessurl,
        'blogname' => __('My Site'),
        /* translators: blog tagline */
        'blogdescription' => __('Just another WordPress site'),
        'users_can_register' => 0,
        'admin_email' => '[email protected]',
        /* translators: default start of the week. 0 = Sunday, 1 = Monday */
        'start_of_week' => _x('1', 'start of week'),
        'use_balanceTags' => 0,
        'use_smilies' => 1,
        'require_name_email' => 1,
        'comments_notify' => 1,
        'posts_per_rss' => 10,
        'rss_use_excerpt' => 0,
        'mailserver_url' => 'mail.example.com',
        'mailserver_login' => '[email protected]',
        'mailserver_pass' => 'password',
        'mailserver_port' => 110,
        'default_category' => 1,
        'default_comment_status' => 'open',
        'default_ping_status' => 'open',
        'default_pingback_flag' => 1,
        'posts_per_page' => 10,
        /* translators: default date format, see http://php.net/date */
        'date_format' => __('F j, Y'),
        /* translators: default time format, see http://php.net/date */
        'time_format' => __('g:i a'),
        /* translators: links last updated date format, see http://php.net/date */
        'links_updated_date_format' => __('F j, Y g:i a'),
        'comment_moderation' => 0,
        'moderation_notify' => 1,
        'permalink_structure' => '',
        'gzipcompression' => 0,
        'hack_file' => 0,
        'blog_charset' => 'UTF-8',
        'moderation_keys' => '',
        'active_plugins' => array(),
        'category_base' => '',
        'ping_sites' => 'http://rpc.pingomatic.com/',
        'advanced_edit' => 0,
        'comment_max_links' => 2,
        'gmt_offset' => $gmt_offset,
        // 1.5
        'default_email_category' => 1,
        'recently_edited' => '',
        'template' => $template,
        'stylesheet' => WP_DEFAULT_THEME,
        'comment_whitelist' => 1,
        'blacklist_keys' => '',
        'comment_registration' => 0,
        'html_type' => 'text/html',
        // 1.5.1
        'use_trackback' => 0,
        // 2.0
        'default_role' => 'subscriber',
        'db_version' => $wp_db_version,
        // 2.0.1
        'uploads_use_yearmonth_folders' => $uploads_use_yearmonth_folders,
        'upload_path' => '',
        // 2.1
        'blog_public' => '1',
        'default_link_category' => 2,
        'show_on_front' => 'posts',
        // 2.2
        'tag_base' => '',
        // 2.5
        'show_avatars' => '1',
        'avatar_rating' => 'G',
        'upload_url_path' => '',
        'thumbnail_size_w' => 150,
        'thumbnail_size_h' => 150,
        'thumbnail_crop' => 1,
        'medium_size_w' => 300,
        'medium_size_h' => 300,
        // 2.6
        'avatar_default' => 'mystery',
        // 2.7
        'large_size_w' => 1024,
        'large_size_h' => 1024,
        'image_default_link_type' => 'file',
        'image_default_size' => '',
        'image_default_align' => '',
        'close_comments_for_old_posts' => 0,
        'close_comments_days_old' => 14,
        'thread_comments' => 1,
        'thread_comments_depth' => 5,
        'page_comments' => 0,
        'comments_per_page' => 50,
        'default_comments_page' => 'newest',
        'comment_order' => 'asc',
        'sticky_posts' => array(),
        'widget_categories' => array(),
        'widget_text' => array(),
        'widget_rss' => array(),
        'uninstall_plugins' => array(),
        // 2.8
        'timezone_string' => $timezone_string,
        // 3.0
        'page_for_posts' => 0,
        'page_on_front' => 0,
        // 3.1
        'default_post_format' => 0,
        // 3.5
        'link_manager_enabled' => 0,
        // 4.3.0
        'finished_splitting_shared_terms' => 1,
    );
    // 3.3
    if (!is_multisite()) {
        $options['initial_db_version'] = (!empty($wp_current_db_version) && $wp_current_db_version < $wp_db_version) ? $wp_current_db_version : $wp_db_version;
    }
    // 3.0 multisite
    if (is_multisite()) {
        /* translators: blog tagline */
        $options['blogdescription'] = sprintf(__('Just another %s site'), get_current_site()->site_name);
        $options['permalink_structure'] = '/%year%/%monthnum%/%day%/%postname%/';
    }
    // Set autoload to no for these options
    $fat_options = array('moderation_keys', 'recently_edited', 'blacklist_keys', 'uninstall_plugins');
    $keys = "'" . implode("', '", array_keys($options)) . "'";
    $existing_options = $wpdb->get_col("SELECT option_name FROM {$wpdb->options} WHERE option_name in ( {$keys} )");
    $insert = '';
    foreach ($options as $option => $value) {
        if (in_array($option, $existing_options)) {
            continue;
        }
        if (in_array($option, $fat_options)) {
            $autoload = 'no';
        } else {
            $autoload = 'yes';
        }
        if (is_array($value)) {
            $value = serialize($value);
        }
        if (!empty($insert)) {
            $insert .= ', ';
        }
        $insert .= $wpdb->prepare("(%s, %s, %s)", $option, $value, $autoload);
    }
    if (!empty($insert)) {
        $wpdb->query("INSERT INTO {$wpdb->options} (option_name, option_value, autoload) VALUES " . $insert);
    }
    // In case it is set, but blank, update "home".
    if (!__get_option('home')) {
        update_option('home', $guessurl);
    }
    // Delete unused options.
    $unusedoptions = array('blodotgsping_url', 'bodyterminator', 'emailtestonly', 'phoneemail_separator', 'smilies_directory', 'subjectprefix', 'use_bbcode', 'use_blodotgsping', 'use_phoneemail', 'use_quicktags', 'use_weblogsping', 'weblogs_cache_file', 'use_preview', 'use_htmltrans', 'smilies_directory', 'fileupload_allowedusers', 'use_phoneemail', 'default_post_status', 'default_post_category', 'archive_mode', 'time_difference', 'links_minadminlevel', 'links_use_adminlevels', 'links_rating_type', 'links_rating_char', 'links_rating_ignore_zero', 'links_rating_single_image', 'links_rating_image0', 'links_rating_image1', 'links_rating_image2', 'links_rating_image3', 'links_rating_image4', 'links_rating_image5', 'links_rating_image6', 'links_rating_image7', 'links_rating_image8', 'links_rating_image9', 'links_recently_updated_time', 'links_recently_updated_prepend', 'links_recently_updated_append', 'weblogs_cacheminutes', 'comment_allowed_tags', 'search_engine_friendly_urls', 'default_geourl_lat', 'default_geourl_lon', 'use_default_geourl', 'weblogs_xml_url', 'new_users_can_blog', '_wpnonce', '_wp_http_referer', 'Update', 'action', 'rich_editing', 'autosave_interval', 'deactivated_plugins', 'can_compress_scripts', 'page_uris', 'update_core', 'update_plugins', 'update_themes', 'doing_cron', 'random_seed', 'rss_excerpt_length', 'secret', 'use_linksupdate', 'default_comment_status_page', 'wporg_popular_tags', 'what_to_show', 'rss_language', 'language', 'enable_xmlrpc', 'enable_app', 'embed_autourls', 'default_post_edit_rows');
    foreach ($unusedoptions as $option) {
        delete_option($option);
    }
    // Delete obsolete magpie stuff.
    $wpdb->query("DELETE FROM {$wpdb->options} WHERE option_name REGEXP '^rss_[0-9a-f]{32}(_ts)?\$'");
    /*
     * Deletes all expired transients. The multi-table delete syntax is used
     * to delete the transient record from table a, and the corresponding
     * transient_timeout record from table b.
     */
    $time = time();
    $sql = "DELETE a, b FROM {$wpdb->options} a, {$wpdb->options} b\n\t\tWHERE a.option_name LIKE %s\n\t\tAND a.option_name NOT LIKE %s\n\t\tAND b.option_name = CONCAT( '_transient_timeout_', SUBSTRING( a.option_name, 12 ) )\n\t\tAND b.option_value < %d";
    $wpdb->query($wpdb->prepare($sql, $wpdb->esc_like('_transient_') . '%', $wpdb->esc_like('_transient_timeout_') . '%', $time));
    if (is_main_site() && is_main_network()) {
        $sql = "DELETE a, b FROM {$wpdb->options} a, {$wpdb->options} b\n\t\t\tWHERE a.option_name LIKE %s\n\t\t\tAND a.option_name NOT LIKE %s\n\t\t\tAND b.option_name = CONCAT( '_site_transient_timeout_', SUBSTRING( a.option_name, 17 ) )\n\t\t\tAND b.option_value < %d";
        $wpdb->query($wpdb->prepare($sql, $wpdb->esc_like('_site_transient_') . '%', $wpdb->esc_like('_site_transient_timeout_') . '%', $time));
    }
}

WordPress Version: .33

/**
 * Create WordPress options and set the default values.
 *
 * @since 1.5.0
 *
 * @global wpdb $wpdb WordPress database abstraction object.
 * @global int  $wp_db_version
 * @global int  $wp_current_db_version
 */
function populate_options()
{
    global $wpdb, $wp_db_version, $wp_current_db_version;
    $guessurl = wp_guess_url();
    /**
     * Fires before creating WordPress options and populating their default values.
     *
     * @since 2.6.0
     */
    do_action('populate_options');
    if (ini_get('safe_mode')) {
        // Safe mode can break mkdir() so use a flat structure by default.
        $uploads_use_yearmonth_folders = 0;
    } else {
        $uploads_use_yearmonth_folders = 1;
    }
    $template = WP_DEFAULT_THEME;
    // If default theme is a child theme, we need to get its template
    $theme = wp_get_theme($template);
    if (!$theme->errors()) {
        $template = $theme->get_template();
    }
    $timezone_string = '';
    $gmt_offset = 0;
    /* translators: default GMT offset or timezone string. Must be either a valid offset (-12 to 14)
    	   or a valid timezone string (America/New_York). See http://us3.php.net/manual/en/timezones.php
    	   for all timezone strings supported by PHP.
    	*/
    $offset_or_tz = _x('0', 'default GMT offset or timezone string');
    if (is_numeric($offset_or_tz)) {
        $gmt_offset = $offset_or_tz;
    } elseif ($offset_or_tz && in_array($offset_or_tz, timezone_identifiers_list())) {
        $timezone_string = $offset_or_tz;
    }
    $options = array(
        'siteurl' => $guessurl,
        'home' => $guessurl,
        'blogname' => __('My Site'),
        /* translators: blog tagline */
        'blogdescription' => __('Just another WordPress site'),
        'users_can_register' => 0,
        'admin_email' => '[email protected]',
        /* translators: default start of the week. 0 = Sunday, 1 = Monday */
        'start_of_week' => _x('1', 'start of week'),
        'use_balanceTags' => 0,
        'use_smilies' => 1,
        'require_name_email' => 1,
        'comments_notify' => 1,
        'posts_per_rss' => 10,
        'rss_use_excerpt' => 0,
        'mailserver_url' => 'mail.example.com',
        'mailserver_login' => '[email protected]',
        'mailserver_pass' => 'password',
        'mailserver_port' => 110,
        'default_category' => 1,
        'default_comment_status' => 'open',
        'default_ping_status' => 'open',
        'default_pingback_flag' => 1,
        'posts_per_page' => 10,
        /* translators: default date format, see http://php.net/date */
        'date_format' => __('F j, Y'),
        /* translators: default time format, see http://php.net/date */
        'time_format' => __('g:i a'),
        /* translators: links last updated date format, see http://php.net/date */
        'links_updated_date_format' => __('F j, Y g:i a'),
        'comment_moderation' => 0,
        'moderation_notify' => 1,
        'permalink_structure' => '',
        'gzipcompression' => 0,
        'hack_file' => 0,
        'blog_charset' => 'UTF-8',
        'moderation_keys' => '',
        'active_plugins' => array(),
        'category_base' => '',
        'ping_sites' => 'http://rpc.pingomatic.com/',
        'advanced_edit' => 0,
        'comment_max_links' => 2,
        'gmt_offset' => $gmt_offset,
        // 1.5
        'default_email_category' => 1,
        'recently_edited' => '',
        'template' => $template,
        'stylesheet' => WP_DEFAULT_THEME,
        'comment_whitelist' => 1,
        'blacklist_keys' => '',
        'comment_registration' => 0,
        'html_type' => 'text/html',
        // 1.5.1
        'use_trackback' => 0,
        // 2.0
        'default_role' => 'subscriber',
        'db_version' => $wp_db_version,
        // 2.0.1
        'uploads_use_yearmonth_folders' => $uploads_use_yearmonth_folders,
        'upload_path' => '',
        // 2.1
        'blog_public' => '1',
        'default_link_category' => 2,
        'show_on_front' => 'posts',
        // 2.2
        'tag_base' => '',
        // 2.5
        'show_avatars' => '1',
        'avatar_rating' => 'G',
        'upload_url_path' => '',
        'thumbnail_size_w' => 150,
        'thumbnail_size_h' => 150,
        'thumbnail_crop' => 1,
        'medium_size_w' => 300,
        'medium_size_h' => 300,
        // 2.6
        'avatar_default' => 'mystery',
        // 2.7
        'large_size_w' => 1024,
        'large_size_h' => 1024,
        'image_default_link_type' => 'file',
        'image_default_size' => '',
        'image_default_align' => '',
        'close_comments_for_old_posts' => 0,
        'close_comments_days_old' => 14,
        'thread_comments' => 1,
        'thread_comments_depth' => 5,
        'page_comments' => 0,
        'comments_per_page' => 50,
        'default_comments_page' => 'newest',
        'comment_order' => 'asc',
        'sticky_posts' => array(),
        'widget_categories' => array(),
        'widget_text' => array(),
        'widget_rss' => array(),
        'uninstall_plugins' => array(),
        // 2.8
        'timezone_string' => $timezone_string,
        // 3.0
        'page_for_posts' => 0,
        'page_on_front' => 0,
        // 3.1
        'default_post_format' => 0,
        // 3.5
        'link_manager_enabled' => 0,
        // 4.3.0
        'finished_splitting_shared_terms' => 1,
    );
    // 3.3
    if (!is_multisite()) {
        $options['initial_db_version'] = (!empty($wp_current_db_version) && $wp_current_db_version < $wp_db_version) ? $wp_current_db_version : $wp_db_version;
    }
    // 3.0 multisite
    if (is_multisite()) {
        /* translators: blog tagline */
        $options['blogdescription'] = sprintf(__('Just another %s site'), get_current_site()->site_name);
        $options['permalink_structure'] = '/%year%/%monthnum%/%day%/%postname%/';
    }
    // Set autoload to no for these options
    $fat_options = array('moderation_keys', 'recently_edited', 'blacklist_keys', 'uninstall_plugins');
    $keys = "'" . implode("', '", array_keys($options)) . "'";
    $existing_options = $wpdb->get_col("SELECT option_name FROM {$wpdb->options} WHERE option_name in ( {$keys} )");
    $insert = '';
    foreach ($options as $option => $value) {
        if (in_array($option, $existing_options)) {
            continue;
        }
        if (in_array($option, $fat_options)) {
            $autoload = 'no';
        } else {
            $autoload = 'yes';
        }
        if (!empty($insert)) {
            $insert .= ', ';
        }
        $value = maybe_serialize(sanitize_option($option, $value));
        $insert .= $wpdb->prepare("(%s, %s, %s)", $option, $value, $autoload);
    }
    if (!empty($insert)) {
        $wpdb->query("INSERT INTO {$wpdb->options} (option_name, option_value, autoload) VALUES " . $insert);
    }
    // In case it is set, but blank, update "home".
    if (!__get_option('home')) {
        update_option('home', $guessurl);
    }
    // Delete unused options.
    $unusedoptions = array('blodotgsping_url', 'bodyterminator', 'emailtestonly', 'phoneemail_separator', 'smilies_directory', 'subjectprefix', 'use_bbcode', 'use_blodotgsping', 'use_phoneemail', 'use_quicktags', 'use_weblogsping', 'weblogs_cache_file', 'use_preview', 'use_htmltrans', 'smilies_directory', 'fileupload_allowedusers', 'use_phoneemail', 'default_post_status', 'default_post_category', 'archive_mode', 'time_difference', 'links_minadminlevel', 'links_use_adminlevels', 'links_rating_type', 'links_rating_char', 'links_rating_ignore_zero', 'links_rating_single_image', 'links_rating_image0', 'links_rating_image1', 'links_rating_image2', 'links_rating_image3', 'links_rating_image4', 'links_rating_image5', 'links_rating_image6', 'links_rating_image7', 'links_rating_image8', 'links_rating_image9', 'links_recently_updated_time', 'links_recently_updated_prepend', 'links_recently_updated_append', 'weblogs_cacheminutes', 'comment_allowed_tags', 'search_engine_friendly_urls', 'default_geourl_lat', 'default_geourl_lon', 'use_default_geourl', 'weblogs_xml_url', 'new_users_can_blog', '_wpnonce', '_wp_http_referer', 'Update', 'action', 'rich_editing', 'autosave_interval', 'deactivated_plugins', 'can_compress_scripts', 'page_uris', 'update_core', 'update_plugins', 'update_themes', 'doing_cron', 'random_seed', 'rss_excerpt_length', 'secret', 'use_linksupdate', 'default_comment_status_page', 'wporg_popular_tags', 'what_to_show', 'rss_language', 'language', 'enable_xmlrpc', 'enable_app', 'embed_autourls', 'default_post_edit_rows');
    foreach ($unusedoptions as $option) {
        delete_option($option);
    }
    // Delete obsolete magpie stuff.
    $wpdb->query("DELETE FROM {$wpdb->options} WHERE option_name REGEXP '^rss_[0-9a-f]{32}(_ts)?\$'");
    /*
     * Deletes all expired transients. The multi-table delete syntax is used
     * to delete the transient record from table a, and the corresponding
     * transient_timeout record from table b.
     */
    $time = time();
    $sql = "DELETE a, b FROM {$wpdb->options} a, {$wpdb->options} b\n\t\tWHERE a.option_name LIKE %s\n\t\tAND a.option_name NOT LIKE %s\n\t\tAND b.option_name = CONCAT( '_transient_timeout_', SUBSTRING( a.option_name, 12 ) )\n\t\tAND b.option_value < %d";
    $wpdb->query($wpdb->prepare($sql, $wpdb->esc_like('_transient_') . '%', $wpdb->esc_like('_transient_timeout_') . '%', $time));
    if (is_main_site() && is_main_network()) {
        $sql = "DELETE a, b FROM {$wpdb->options} a, {$wpdb->options} b\n\t\t\tWHERE a.option_name LIKE %s\n\t\t\tAND a.option_name NOT LIKE %s\n\t\t\tAND b.option_name = CONCAT( '_site_transient_timeout_', SUBSTRING( a.option_name, 17 ) )\n\t\t\tAND b.option_value < %d";
        $wpdb->query($wpdb->prepare($sql, $wpdb->esc_like('_site_transient_') . '%', $wpdb->esc_like('_site_transient_timeout_') . '%', $time));
    }
}

WordPress Version: 4.3

/**
 * Create WordPress options and set the default values.
 *
 * @since 1.5.0
 *
 * @global wpdb $wpdb WordPress database abstraction object.
 * @global int  $wp_db_version
 * @global int  $wp_current_db_version
 */
function populate_options()
{
    global $wpdb, $wp_db_version, $wp_current_db_version;
    $guessurl = wp_guess_url();
    /**
     * Fires before creating WordPress options and populating their default values.
     *
     * @since 2.6.0
     */
    do_action('populate_options');
    if (ini_get('safe_mode')) {
        // Safe mode can break mkdir() so use a flat structure by default.
        $uploads_use_yearmonth_folders = 0;
    } else {
        $uploads_use_yearmonth_folders = 1;
    }
    $template = WP_DEFAULT_THEME;
    // If default theme is a child theme, we need to get its template
    $theme = wp_get_theme($template);
    if (!$theme->errors()) {
        $template = $theme->get_template();
    }
    $timezone_string = '';
    $gmt_offset = 0;
    /* translators: default GMT offset or timezone string. Must be either a valid offset (-12 to 14)
    	   or a valid timezone string (America/New_York). See http://us3.php.net/manual/en/timezones.php
    	   for all timezone strings supported by PHP.
    	*/
    $offset_or_tz = _x('0', 'default GMT offset or timezone string');
    if (is_numeric($offset_or_tz)) {
        $gmt_offset = $offset_or_tz;
    } elseif ($offset_or_tz && in_array($offset_or_tz, timezone_identifiers_list())) {
        $timezone_string = $offset_or_tz;
    }
    $options = array(
        'siteurl' => $guessurl,
        'home' => $guessurl,
        'blogname' => __('My Site'),
        /* translators: blog tagline */
        'blogdescription' => __('Just another WordPress site'),
        'users_can_register' => 0,
        'admin_email' => '[email protected]',
        /* translators: default start of the week. 0 = Sunday, 1 = Monday */
        'start_of_week' => _x('1', 'start of week'),
        'use_balanceTags' => 0,
        'use_smilies' => 1,
        'require_name_email' => 1,
        'comments_notify' => 1,
        'posts_per_rss' => 10,
        'rss_use_excerpt' => 0,
        'mailserver_url' => 'mail.example.com',
        'mailserver_login' => '[email protected]',
        'mailserver_pass' => 'password',
        'mailserver_port' => 110,
        'default_category' => 1,
        'default_comment_status' => 'open',
        'default_ping_status' => 'open',
        'default_pingback_flag' => 1,
        'posts_per_page' => 10,
        /* translators: default date format, see http://php.net/date */
        'date_format' => __('F j, Y'),
        /* translators: default time format, see http://php.net/date */
        'time_format' => __('g:i a'),
        /* translators: links last updated date format, see http://php.net/date */
        'links_updated_date_format' => __('F j, Y g:i a'),
        'comment_moderation' => 0,
        'moderation_notify' => 1,
        'permalink_structure' => '',
        'gzipcompression' => 0,
        'hack_file' => 0,
        'blog_charset' => 'UTF-8',
        'moderation_keys' => '',
        'active_plugins' => array(),
        'category_base' => '',
        'ping_sites' => 'http://rpc.pingomatic.com/',
        'advanced_edit' => 0,
        'comment_max_links' => 2,
        'gmt_offset' => $gmt_offset,
        // 1.5
        'default_email_category' => 1,
        'recently_edited' => '',
        'template' => $template,
        'stylesheet' => WP_DEFAULT_THEME,
        'comment_whitelist' => 1,
        'blacklist_keys' => '',
        'comment_registration' => 0,
        'html_type' => 'text/html',
        // 1.5.1
        'use_trackback' => 0,
        // 2.0
        'default_role' => 'subscriber',
        'db_version' => $wp_db_version,
        // 2.0.1
        'uploads_use_yearmonth_folders' => $uploads_use_yearmonth_folders,
        'upload_path' => '',
        // 2.1
        'blog_public' => '1',
        'default_link_category' => 2,
        'show_on_front' => 'posts',
        // 2.2
        'tag_base' => '',
        // 2.5
        'show_avatars' => '1',
        'avatar_rating' => 'G',
        'upload_url_path' => '',
        'thumbnail_size_w' => 150,
        'thumbnail_size_h' => 150,
        'thumbnail_crop' => 1,
        'medium_size_w' => 300,
        'medium_size_h' => 300,
        // 2.6
        'avatar_default' => 'mystery',
        // 2.7
        'large_size_w' => 1024,
        'large_size_h' => 1024,
        'image_default_link_type' => 'file',
        'image_default_size' => '',
        'image_default_align' => '',
        'close_comments_for_old_posts' => 0,
        'close_comments_days_old' => 14,
        'thread_comments' => 1,
        'thread_comments_depth' => 5,
        'page_comments' => 0,
        'comments_per_page' => 50,
        'default_comments_page' => 'newest',
        'comment_order' => 'asc',
        'sticky_posts' => array(),
        'widget_categories' => array(),
        'widget_text' => array(),
        'widget_rss' => array(),
        'uninstall_plugins' => array(),
        // 2.8
        'timezone_string' => $timezone_string,
        // 3.0
        'page_for_posts' => 0,
        'page_on_front' => 0,
        // 3.1
        'default_post_format' => 0,
        // 3.5
        'link_manager_enabled' => 0,
        // 4.3.0
        'finished_splitting_shared_terms' => 1,
    );
    // 3.3
    if (!is_multisite()) {
        $options['initial_db_version'] = (!empty($wp_current_db_version) && $wp_current_db_version < $wp_db_version) ? $wp_current_db_version : $wp_db_version;
    }
    // 3.0 multisite
    if (is_multisite()) {
        /* translators: blog tagline */
        $options['blogdescription'] = sprintf(__('Just another %s site'), get_current_site()->site_name);
        $options['permalink_structure'] = '/%year%/%monthnum%/%day%/%postname%/';
    }
    // Set autoload to no for these options
    $fat_options = array('moderation_keys', 'recently_edited', 'blacklist_keys', 'uninstall_plugins');
    $keys = "'" . implode("', '", array_keys($options)) . "'";
    $existing_options = $wpdb->get_col("SELECT option_name FROM {$wpdb->options} WHERE option_name in ( {$keys} )");
    $insert = '';
    foreach ($options as $option => $value) {
        if (in_array($option, $existing_options)) {
            continue;
        }
        if (in_array($option, $fat_options)) {
            $autoload = 'no';
        } else {
            $autoload = 'yes';
        }
        if (is_array($value)) {
            $value = serialize($value);
        }
        if (!empty($insert)) {
            $insert .= ', ';
        }
        $insert .= $wpdb->prepare("(%s, %s, %s)", $option, $value, $autoload);
    }
    if (!empty($insert)) {
        $wpdb->query("INSERT INTO {$wpdb->options} (option_name, option_value, autoload) VALUES " . $insert);
    }
    // In case it is set, but blank, update "home".
    if (!__get_option('home')) {
        update_option('home', $guessurl);
    }
    // Delete unused options.
    $unusedoptions = array('blodotgsping_url', 'bodyterminator', 'emailtestonly', 'phoneemail_separator', 'smilies_directory', 'subjectprefix', 'use_bbcode', 'use_blodotgsping', 'use_phoneemail', 'use_quicktags', 'use_weblogsping', 'weblogs_cache_file', 'use_preview', 'use_htmltrans', 'smilies_directory', 'fileupload_allowedusers', 'use_phoneemail', 'default_post_status', 'default_post_category', 'archive_mode', 'time_difference', 'links_minadminlevel', 'links_use_adminlevels', 'links_rating_type', 'links_rating_char', 'links_rating_ignore_zero', 'links_rating_single_image', 'links_rating_image0', 'links_rating_image1', 'links_rating_image2', 'links_rating_image3', 'links_rating_image4', 'links_rating_image5', 'links_rating_image6', 'links_rating_image7', 'links_rating_image8', 'links_rating_image9', 'links_recently_updated_time', 'links_recently_updated_prepend', 'links_recently_updated_append', 'weblogs_cacheminutes', 'comment_allowed_tags', 'search_engine_friendly_urls', 'default_geourl_lat', 'default_geourl_lon', 'use_default_geourl', 'weblogs_xml_url', 'new_users_can_blog', '_wpnonce', '_wp_http_referer', 'Update', 'action', 'rich_editing', 'autosave_interval', 'deactivated_plugins', 'can_compress_scripts', 'page_uris', 'update_core', 'update_plugins', 'update_themes', 'doing_cron', 'random_seed', 'rss_excerpt_length', 'secret', 'use_linksupdate', 'default_comment_status_page', 'wporg_popular_tags', 'what_to_show', 'rss_language', 'language', 'enable_xmlrpc', 'enable_app', 'embed_autourls', 'default_post_edit_rows');
    foreach ($unusedoptions as $option) {
        delete_option($option);
    }
    // Delete obsolete magpie stuff.
    $wpdb->query("DELETE FROM {$wpdb->options} WHERE option_name REGEXP '^rss_[0-9a-f]{32}(_ts)?\$'");
    /*
     * Deletes all expired transients. The multi-table delete syntax is used
     * to delete the transient record from table a, and the corresponding
     * transient_timeout record from table b.
     */
    $time = time();
    $sql = "DELETE a, b FROM {$wpdb->options} a, {$wpdb->options} b\n\t\tWHERE a.option_name LIKE %s\n\t\tAND a.option_name NOT LIKE %s\n\t\tAND b.option_name = CONCAT( '_transient_timeout_', SUBSTRING( a.option_name, 12 ) )\n\t\tAND b.option_value < %d";
    $wpdb->query($wpdb->prepare($sql, $wpdb->esc_like('_transient_') . '%', $wpdb->esc_like('_transient_timeout_') . '%', $time));
    if (is_main_site() && is_main_network()) {
        $sql = "DELETE a, b FROM {$wpdb->options} a, {$wpdb->options} b\n\t\t\tWHERE a.option_name LIKE %s\n\t\t\tAND a.option_name NOT LIKE %s\n\t\t\tAND b.option_name = CONCAT( '_site_transient_timeout_', SUBSTRING( a.option_name, 17 ) )\n\t\t\tAND b.option_value < %d";
        $wpdb->query($wpdb->prepare($sql, $wpdb->esc_like('_site_transient_') . '%', $wpdb->esc_like('_site_transient_timeout_') . '%', $time));
    }
}

WordPress Version: 2.4

/**
 * Create WordPress options and set the default values.
 *
 * @since 1.5.0
 *
 * @global wpdb $wpdb WordPress database abstraction object.
 * @uses $wp_db_version
 */
function populate_options()
{
    global $wpdb, $wp_db_version, $wp_current_db_version;
    $guessurl = wp_guess_url();
    /**
     * Fires before creating WordPress options and populating their default values.
     *
     * @since 2.6.0
     */
    do_action('populate_options');
    if (ini_get('safe_mode')) {
        // Safe mode can break mkdir() so use a flat structure by default.
        $uploads_use_yearmonth_folders = 0;
    } else {
        $uploads_use_yearmonth_folders = 1;
    }
    $template = WP_DEFAULT_THEME;
    // If default theme is a child theme, we need to get its template
    $theme = wp_get_theme($template);
    if (!$theme->errors()) {
        $template = $theme->get_template();
    }
    $timezone_string = '';
    $gmt_offset = 0;
    /* translators: default GMT offset or timezone string. Must be either a valid offset (-12 to 14)
    	   or a valid timezone string (America/New_York). See http://us3.php.net/manual/en/timezones.php
    	   for all timezone strings supported by PHP.
    	*/
    $offset_or_tz = _x('0', 'default GMT offset or timezone string');
    if (is_numeric($offset_or_tz)) {
        $gmt_offset = $offset_or_tz;
    } elseif ($offset_or_tz && in_array($offset_or_tz, timezone_identifiers_list())) {
        $timezone_string = $offset_or_tz;
    }
    $options = array(
        'siteurl' => $guessurl,
        'home' => $guessurl,
        'blogname' => __('My Site'),
        /* translators: blog tagline */
        'blogdescription' => __('Just another WordPress site'),
        'users_can_register' => 0,
        'admin_email' => '[email protected]',
        /* translators: default start of the week. 0 = Sunday, 1 = Monday */
        'start_of_week' => _x('1', 'start of week'),
        'use_balanceTags' => 0,
        'use_smilies' => 1,
        'require_name_email' => 1,
        'comments_notify' => 1,
        'posts_per_rss' => 10,
        'rss_use_excerpt' => 0,
        'mailserver_url' => 'mail.example.com',
        'mailserver_login' => '[email protected]',
        'mailserver_pass' => 'password',
        'mailserver_port' => 110,
        'default_category' => 1,
        'default_comment_status' => 'open',
        'default_ping_status' => 'open',
        'default_pingback_flag' => 1,
        'posts_per_page' => 10,
        /* translators: default date format, see http://php.net/date */
        'date_format' => __('F j, Y'),
        /* translators: default time format, see http://php.net/date */
        'time_format' => __('g:i a'),
        /* translators: links last updated date format, see http://php.net/date */
        'links_updated_date_format' => __('F j, Y g:i a'),
        'comment_moderation' => 0,
        'moderation_notify' => 1,
        'permalink_structure' => '',
        'gzipcompression' => 0,
        'hack_file' => 0,
        'blog_charset' => 'UTF-8',
        'moderation_keys' => '',
        'active_plugins' => array(),
        'category_base' => '',
        'ping_sites' => 'http://rpc.pingomatic.com/',
        'advanced_edit' => 0,
        'comment_max_links' => 2,
        'gmt_offset' => $gmt_offset,
        // 1.5
        'default_email_category' => 1,
        'recently_edited' => '',
        'template' => $template,
        'stylesheet' => WP_DEFAULT_THEME,
        'comment_whitelist' => 1,
        'blacklist_keys' => '',
        'comment_registration' => 0,
        'html_type' => 'text/html',
        // 1.5.1
        'use_trackback' => 0,
        // 2.0
        'default_role' => 'subscriber',
        'db_version' => $wp_db_version,
        // 2.0.1
        'uploads_use_yearmonth_folders' => $uploads_use_yearmonth_folders,
        'upload_path' => '',
        // 2.1
        'blog_public' => '1',
        'default_link_category' => 2,
        'show_on_front' => 'posts',
        // 2.2
        'tag_base' => '',
        // 2.5
        'show_avatars' => '1',
        'avatar_rating' => 'G',
        'upload_url_path' => '',
        'thumbnail_size_w' => 150,
        'thumbnail_size_h' => 150,
        'thumbnail_crop' => 1,
        'medium_size_w' => 300,
        'medium_size_h' => 300,
        // 2.6
        'avatar_default' => 'mystery',
        // 2.7
        'large_size_w' => 1024,
        'large_size_h' => 1024,
        'image_default_link_type' => 'file',
        'image_default_size' => '',
        'image_default_align' => '',
        'close_comments_for_old_posts' => 0,
        'close_comments_days_old' => 14,
        'thread_comments' => 1,
        'thread_comments_depth' => 5,
        'page_comments' => 0,
        'comments_per_page' => 50,
        'default_comments_page' => 'newest',
        'comment_order' => 'asc',
        'sticky_posts' => array(),
        'widget_categories' => array(),
        'widget_text' => array(),
        'widget_rss' => array(),
        'uninstall_plugins' => array(),
        // 2.8
        'timezone_string' => $timezone_string,
        // 3.0
        'page_for_posts' => 0,
        'page_on_front' => 0,
        // 3.1
        'default_post_format' => 0,
        // 3.5
        'link_manager_enabled' => 0,
    );
    // 3.3
    if (!is_multisite()) {
        $options['initial_db_version'] = (!empty($wp_current_db_version) && $wp_current_db_version < $wp_db_version) ? $wp_current_db_version : $wp_db_version;
    }
    // 3.0 multisite
    if (is_multisite()) {
        /* translators: blog tagline */
        $options['blogdescription'] = sprintf(__('Just another %s site'), get_current_site()->site_name);
        $options['permalink_structure'] = '/%year%/%monthnum%/%day%/%postname%/';
    }
    // Set autoload to no for these options
    $fat_options = array('moderation_keys', 'recently_edited', 'blacklist_keys', 'uninstall_plugins');
    $keys = "'" . implode("', '", array_keys($options)) . "'";
    $existing_options = $wpdb->get_col("SELECT option_name FROM {$wpdb->options} WHERE option_name in ( {$keys} )");
    $insert = '';
    foreach ($options as $option => $value) {
        if (in_array($option, $existing_options)) {
            continue;
        }
        if (in_array($option, $fat_options)) {
            $autoload = 'no';
        } else {
            $autoload = 'yes';
        }
        if (is_array($value)) {
            $value = serialize($value);
        }
        if (!empty($insert)) {
            $insert .= ', ';
        }
        $insert .= $wpdb->prepare("(%s, %s, %s)", $option, $value, $autoload);
    }
    if (!empty($insert)) {
        $wpdb->query("INSERT INTO {$wpdb->options} (option_name, option_value, autoload) VALUES " . $insert);
    }
    // In case it is set, but blank, update "home".
    if (!__get_option('home')) {
        update_option('home', $guessurl);
    }
    // Delete unused options.
    $unusedoptions = array('blodotgsping_url', 'bodyterminator', 'emailtestonly', 'phoneemail_separator', 'smilies_directory', 'subjectprefix', 'use_bbcode', 'use_blodotgsping', 'use_phoneemail', 'use_quicktags', 'use_weblogsping', 'weblogs_cache_file', 'use_preview', 'use_htmltrans', 'smilies_directory', 'fileupload_allowedusers', 'use_phoneemail', 'default_post_status', 'default_post_category', 'archive_mode', 'time_difference', 'links_minadminlevel', 'links_use_adminlevels', 'links_rating_type', 'links_rating_char', 'links_rating_ignore_zero', 'links_rating_single_image', 'links_rating_image0', 'links_rating_image1', 'links_rating_image2', 'links_rating_image3', 'links_rating_image4', 'links_rating_image5', 'links_rating_image6', 'links_rating_image7', 'links_rating_image8', 'links_rating_image9', 'links_recently_updated_time', 'links_recently_updated_prepend', 'links_recently_updated_append', 'weblogs_cacheminutes', 'comment_allowed_tags', 'search_engine_friendly_urls', 'default_geourl_lat', 'default_geourl_lon', 'use_default_geourl', 'weblogs_xml_url', 'new_users_can_blog', '_wpnonce', '_wp_http_referer', 'Update', 'action', 'rich_editing', 'autosave_interval', 'deactivated_plugins', 'can_compress_scripts', 'page_uris', 'update_core', 'update_plugins', 'update_themes', 'doing_cron', 'random_seed', 'rss_excerpt_length', 'secret', 'use_linksupdate', 'default_comment_status_page', 'wporg_popular_tags', 'what_to_show', 'rss_language', 'language', 'enable_xmlrpc', 'enable_app', 'embed_autourls', 'default_post_edit_rows');
    foreach ($unusedoptions as $option) {
        delete_option($option);
    }
    // Delete obsolete magpie stuff.
    $wpdb->query("DELETE FROM {$wpdb->options} WHERE option_name REGEXP '^rss_[0-9a-f]{32}(_ts)?\$'");
    /*
     * Deletes all expired transients. The multi-table delete syntax is used
     * to delete the transient record from table a, and the corresponding
     * transient_timeout record from table b.
     */
    $time = time();
    $sql = "DELETE a, b FROM {$wpdb->options} a, {$wpdb->options} b\n\t\tWHERE a.option_name LIKE %s\n\t\tAND a.option_name NOT LIKE %s\n\t\tAND b.option_name = CONCAT( '_transient_timeout_', SUBSTRING( a.option_name, 12 ) )\n\t\tAND b.option_value < %d";
    $wpdb->query($wpdb->prepare($sql, $wpdb->esc_like('_transient_') . '%', $wpdb->esc_like('_transient_timeout_') . '%', $time));
    if (is_main_site() && is_main_network()) {
        $sql = "DELETE a, b FROM {$wpdb->options} a, {$wpdb->options} b\n\t\t\tWHERE a.option_name LIKE %s\n\t\t\tAND a.option_name NOT LIKE %s\n\t\t\tAND b.option_name = CONCAT( '_site_transient_timeout_', SUBSTRING( a.option_name, 17 ) )\n\t\t\tAND b.option_value < %d";
        $wpdb->query($wpdb->prepare($sql, $wpdb->esc_like('_site_transient_') . '%', $wpdb->esc_like('_site_transient_timeout_') . '%', $time));
    }
}

WordPress Version: .37

/**
 * Create WordPress options and set the default values.
 *
 * @since 1.5.0
 *
 * @global wpdb $wpdb WordPress database abstraction object.
 * @uses $wp_db_version
 */
function populate_options()
{
    global $wpdb, $wp_db_version, $wp_current_db_version;
    $guessurl = wp_guess_url();
    /**
     * Fires before creating WordPress options and populating their default values.
     *
     * @since 2.6.0
     */
    do_action('populate_options');
    if (ini_get('safe_mode')) {
        // Safe mode can break mkdir() so use a flat structure by default.
        $uploads_use_yearmonth_folders = 0;
    } else {
        $uploads_use_yearmonth_folders = 1;
    }
    $template = WP_DEFAULT_THEME;
    // If default theme is a child theme, we need to get its template
    $theme = wp_get_theme($template);
    if (!$theme->errors()) {
        $template = $theme->get_template();
    }
    $timezone_string = '';
    $gmt_offset = 0;
    /* translators: default GMT offset or timezone string. Must be either a valid offset (-12 to 14)
    	   or a valid timezone string (America/New_York). See http://us3.php.net/manual/en/timezones.php
    	   for all timezone strings supported by PHP.
    	*/
    $offset_or_tz = _x('0', 'default GMT offset or timezone string');
    if (is_numeric($offset_or_tz)) {
        $gmt_offset = $offset_or_tz;
    } elseif ($offset_or_tz && in_array($offset_or_tz, timezone_identifiers_list())) {
        $timezone_string = $offset_or_tz;
    }
    $options = array(
        'siteurl' => $guessurl,
        'home' => $guessurl,
        'blogname' => __('My Site'),
        /* translators: blog tagline */
        'blogdescription' => __('Just another WordPress site'),
        'users_can_register' => 0,
        'admin_email' => '[email protected]',
        /* translators: default start of the week. 0 = Sunday, 1 = Monday */
        'start_of_week' => _x('1', 'start of week'),
        'use_balanceTags' => 0,
        'use_smilies' => 1,
        'require_name_email' => 1,
        'comments_notify' => 1,
        'posts_per_rss' => 10,
        'rss_use_excerpt' => 0,
        'mailserver_url' => 'mail.example.com',
        'mailserver_login' => '[email protected]',
        'mailserver_pass' => 'password',
        'mailserver_port' => 110,
        'default_category' => 1,
        'default_comment_status' => 'open',
        'default_ping_status' => 'open',
        'default_pingback_flag' => 1,
        'posts_per_page' => 10,
        /* translators: default date format, see http://php.net/date */
        'date_format' => __('F j, Y'),
        /* translators: default time format, see http://php.net/date */
        'time_format' => __('g:i a'),
        /* translators: links last updated date format, see http://php.net/date */
        'links_updated_date_format' => __('F j, Y g:i a'),
        'comment_moderation' => 0,
        'moderation_notify' => 1,
        'permalink_structure' => '',
        'gzipcompression' => 0,
        'hack_file' => 0,
        'blog_charset' => 'UTF-8',
        'moderation_keys' => '',
        'active_plugins' => array(),
        'category_base' => '',
        'ping_sites' => 'http://rpc.pingomatic.com/',
        'advanced_edit' => 0,
        'comment_max_links' => 2,
        'gmt_offset' => $gmt_offset,
        // 1.5
        'default_email_category' => 1,
        'recently_edited' => '',
        'template' => $template,
        'stylesheet' => WP_DEFAULT_THEME,
        'comment_whitelist' => 1,
        'blacklist_keys' => '',
        'comment_registration' => 0,
        'html_type' => 'text/html',
        // 1.5.1
        'use_trackback' => 0,
        // 2.0
        'default_role' => 'subscriber',
        'db_version' => $wp_db_version,
        // 2.0.1
        'uploads_use_yearmonth_folders' => $uploads_use_yearmonth_folders,
        'upload_path' => '',
        // 2.1
        'blog_public' => '1',
        'default_link_category' => 2,
        'show_on_front' => 'posts',
        // 2.2
        'tag_base' => '',
        // 2.5
        'show_avatars' => '1',
        'avatar_rating' => 'G',
        'upload_url_path' => '',
        'thumbnail_size_w' => 150,
        'thumbnail_size_h' => 150,
        'thumbnail_crop' => 1,
        'medium_size_w' => 300,
        'medium_size_h' => 300,
        // 2.6
        'avatar_default' => 'mystery',
        // 2.7
        'large_size_w' => 1024,
        'large_size_h' => 1024,
        'image_default_link_type' => 'file',
        'image_default_size' => '',
        'image_default_align' => '',
        'close_comments_for_old_posts' => 0,
        'close_comments_days_old' => 14,
        'thread_comments' => 1,
        'thread_comments_depth' => 5,
        'page_comments' => 0,
        'comments_per_page' => 50,
        'default_comments_page' => 'newest',
        'comment_order' => 'asc',
        'sticky_posts' => array(),
        'widget_categories' => array(),
        'widget_text' => array(),
        'widget_rss' => array(),
        'uninstall_plugins' => array(),
        // 2.8
        'timezone_string' => $timezone_string,
        // 3.0
        'page_for_posts' => 0,
        'page_on_front' => 0,
        // 3.1
        'default_post_format' => 0,
        // 3.5
        'link_manager_enabled' => 0,
    );
    // 3.3
    if (!is_multisite()) {
        $options['initial_db_version'] = (!empty($wp_current_db_version) && $wp_current_db_version < $wp_db_version) ? $wp_current_db_version : $wp_db_version;
    }
    // 3.0 multisite
    if (is_multisite()) {
        /* translators: blog tagline */
        $options['blogdescription'] = sprintf(__('Just another %s site'), get_current_site()->site_name);
        $options['permalink_structure'] = '/%year%/%monthnum%/%day%/%postname%/';
    }
    // Set autoload to no for these options
    $fat_options = array('moderation_keys', 'recently_edited', 'blacklist_keys', 'uninstall_plugins');
    $keys = "'" . implode("', '", array_keys($options)) . "'";
    $existing_options = $wpdb->get_col("SELECT option_name FROM {$wpdb->options} WHERE option_name in ( {$keys} )");
    $insert = '';
    foreach ($options as $option => $value) {
        if (in_array($option, $existing_options)) {
            continue;
        }
        if (in_array($option, $fat_options)) {
            $autoload = 'no';
        } else {
            $autoload = 'yes';
        }
        if (!empty($insert)) {
            $insert .= ', ';
        }
        $value = maybe_serialize(sanitize_option($option, $value));
        $insert .= $wpdb->prepare("(%s, %s, %s)", $option, $value, $autoload);
    }
    if (!empty($insert)) {
        $wpdb->query("INSERT INTO {$wpdb->options} (option_name, option_value, autoload) VALUES " . $insert);
    }
    // In case it is set, but blank, update "home".
    if (!__get_option('home')) {
        update_option('home', $guessurl);
    }
    // Delete unused options.
    $unusedoptions = array('blodotgsping_url', 'bodyterminator', 'emailtestonly', 'phoneemail_separator', 'smilies_directory', 'subjectprefix', 'use_bbcode', 'use_blodotgsping', 'use_phoneemail', 'use_quicktags', 'use_weblogsping', 'weblogs_cache_file', 'use_preview', 'use_htmltrans', 'smilies_directory', 'fileupload_allowedusers', 'use_phoneemail', 'default_post_status', 'default_post_category', 'archive_mode', 'time_difference', 'links_minadminlevel', 'links_use_adminlevels', 'links_rating_type', 'links_rating_char', 'links_rating_ignore_zero', 'links_rating_single_image', 'links_rating_image0', 'links_rating_image1', 'links_rating_image2', 'links_rating_image3', 'links_rating_image4', 'links_rating_image5', 'links_rating_image6', 'links_rating_image7', 'links_rating_image8', 'links_rating_image9', 'links_recently_updated_time', 'links_recently_updated_prepend', 'links_recently_updated_append', 'weblogs_cacheminutes', 'comment_allowed_tags', 'search_engine_friendly_urls', 'default_geourl_lat', 'default_geourl_lon', 'use_default_geourl', 'weblogs_xml_url', 'new_users_can_blog', '_wpnonce', '_wp_http_referer', 'Update', 'action', 'rich_editing', 'autosave_interval', 'deactivated_plugins', 'can_compress_scripts', 'page_uris', 'update_core', 'update_plugins', 'update_themes', 'doing_cron', 'random_seed', 'rss_excerpt_length', 'secret', 'use_linksupdate', 'default_comment_status_page', 'wporg_popular_tags', 'what_to_show', 'rss_language', 'language', 'enable_xmlrpc', 'enable_app', 'embed_autourls', 'default_post_edit_rows');
    foreach ($unusedoptions as $option) {
        delete_option($option);
    }
    // Delete obsolete magpie stuff.
    $wpdb->query("DELETE FROM {$wpdb->options} WHERE option_name REGEXP '^rss_[0-9a-f]{32}(_ts)?\$'");
    /*
     * Deletes all expired transients. The multi-table delete syntax is used
     * to delete the transient record from table a, and the corresponding
     * transient_timeout record from table b.
     */
    $time = time();
    $sql = "DELETE a, b FROM {$wpdb->options} a, {$wpdb->options} b\n\t\tWHERE a.option_name LIKE %s\n\t\tAND a.option_name NOT LIKE %s\n\t\tAND b.option_name = CONCAT( '_transient_timeout_', SUBSTRING( a.option_name, 12 ) )\n\t\tAND b.option_value < %d";
    $wpdb->query($wpdb->prepare($sql, $wpdb->esc_like('_transient_') . '%', $wpdb->esc_like('_transient_timeout_') . '%', $time));
    if (is_main_site() && is_main_network()) {
        $sql = "DELETE a, b FROM {$wpdb->options} a, {$wpdb->options} b\n\t\t\tWHERE a.option_name LIKE %s\n\t\t\tAND a.option_name NOT LIKE %s\n\t\t\tAND b.option_name = CONCAT( '_site_transient_timeout_', SUBSTRING( a.option_name, 17 ) )\n\t\t\tAND b.option_value < %d";
        $wpdb->query($wpdb->prepare($sql, $wpdb->esc_like('_site_transient_') . '%', $wpdb->esc_like('_site_transient_timeout_') . '%', $time));
    }
}

WordPress Version: 1.5

/**
 * Create WordPress options and set the default values.
 *
 * @since 1.5.0
 *
 * @global wpdb $wpdb WordPress database abstraction object.
 * @uses $wp_db_version
 */
function populate_options()
{
    global $wpdb, $wp_db_version, $wp_current_db_version;
    $guessurl = wp_guess_url();
    /**
     * Fires before creating WordPress options and populating their default values.
     *
     * @since 2.6.0
     */
    do_action('populate_options');
    if (ini_get('safe_mode')) {
        // Safe mode can break mkdir() so use a flat structure by default.
        $uploads_use_yearmonth_folders = 0;
    } else {
        $uploads_use_yearmonth_folders = 1;
    }
    $template = WP_DEFAULT_THEME;
    // If default theme is a child theme, we need to get its template
    $theme = wp_get_theme($template);
    if (!$theme->errors()) {
        $template = $theme->get_template();
    }
    $timezone_string = '';
    $gmt_offset = 0;
    /* translators: default GMT offset or timezone string. Must be either a valid offset (-12 to 14)
    	   or a valid timezone string (America/New_York). See http://us3.php.net/manual/en/timezones.php
    	   for all timezone strings supported by PHP.
    	*/
    $offset_or_tz = _x('0', 'default GMT offset or timezone string');
    if (is_numeric($offset_or_tz)) {
        $gmt_offset = $offset_or_tz;
    } elseif ($offset_or_tz && in_array($offset_or_tz, timezone_identifiers_list())) {
        $timezone_string = $offset_or_tz;
    }
    $options = array(
        'siteurl' => $guessurl,
        'home' => $guessurl,
        'blogname' => __('My Site'),
        /* translators: blog tagline */
        'blogdescription' => __('Just another WordPress site'),
        'users_can_register' => 0,
        'admin_email' => '[email protected]',
        /* translators: default start of the week. 0 = Sunday, 1 = Monday */
        'start_of_week' => _x('1', 'start of week'),
        'use_balanceTags' => 0,
        'use_smilies' => 1,
        'require_name_email' => 1,
        'comments_notify' => 1,
        'posts_per_rss' => 10,
        'rss_use_excerpt' => 0,
        'mailserver_url' => 'mail.example.com',
        'mailserver_login' => '[email protected]',
        'mailserver_pass' => 'password',
        'mailserver_port' => 110,
        'default_category' => 1,
        'default_comment_status' => 'open',
        'default_ping_status' => 'open',
        'default_pingback_flag' => 1,
        'posts_per_page' => 10,
        /* translators: default date format, see http://php.net/date */
        'date_format' => __('F j, Y'),
        /* translators: default time format, see http://php.net/date */
        'time_format' => __('g:i a'),
        /* translators: links last updated date format, see http://php.net/date */
        'links_updated_date_format' => __('F j, Y g:i a'),
        'comment_moderation' => 0,
        'moderation_notify' => 1,
        'permalink_structure' => '',
        'gzipcompression' => 0,
        'hack_file' => 0,
        'blog_charset' => 'UTF-8',
        'moderation_keys' => '',
        'active_plugins' => array(),
        'category_base' => '',
        'ping_sites' => 'http://rpc.pingomatic.com/',
        'advanced_edit' => 0,
        'comment_max_links' => 2,
        'gmt_offset' => $gmt_offset,
        // 1.5
        'default_email_category' => 1,
        'recently_edited' => '',
        'template' => $template,
        'stylesheet' => WP_DEFAULT_THEME,
        'comment_whitelist' => 1,
        'blacklist_keys' => '',
        'comment_registration' => 0,
        'html_type' => 'text/html',
        // 1.5.1
        'use_trackback' => 0,
        // 2.0
        'default_role' => 'subscriber',
        'db_version' => $wp_db_version,
        // 2.0.1
        'uploads_use_yearmonth_folders' => $uploads_use_yearmonth_folders,
        'upload_path' => '',
        // 2.1
        'blog_public' => '1',
        'default_link_category' => 2,
        'show_on_front' => 'posts',
        // 2.2
        'tag_base' => '',
        // 2.5
        'show_avatars' => '1',
        'avatar_rating' => 'G',
        'upload_url_path' => '',
        'thumbnail_size_w' => 150,
        'thumbnail_size_h' => 150,
        'thumbnail_crop' => 1,
        'medium_size_w' => 300,
        'medium_size_h' => 300,
        // 2.6
        'avatar_default' => 'mystery',
        // 2.7
        'large_size_w' => 1024,
        'large_size_h' => 1024,
        'image_default_link_type' => 'file',
        'image_default_size' => '',
        'image_default_align' => '',
        'close_comments_for_old_posts' => 0,
        'close_comments_days_old' => 14,
        'thread_comments' => 1,
        'thread_comments_depth' => 5,
        'page_comments' => 0,
        'comments_per_page' => 50,
        'default_comments_page' => 'newest',
        'comment_order' => 'asc',
        'sticky_posts' => array(),
        'widget_categories' => array(),
        'widget_text' => array(),
        'widget_rss' => array(),
        'uninstall_plugins' => array(),
        // 2.8
        'timezone_string' => $timezone_string,
        // 3.0
        'page_for_posts' => 0,
        'page_on_front' => 0,
        // 3.1
        'default_post_format' => 0,
        // 3.5
        'link_manager_enabled' => 0,
    );
    // 3.3
    if (!is_multisite()) {
        $options['initial_db_version'] = (!empty($wp_current_db_version) && $wp_current_db_version < $wp_db_version) ? $wp_current_db_version : $wp_db_version;
    }
    // 3.0 multisite
    if (is_multisite()) {
        /* translators: blog tagline */
        $options['blogdescription'] = sprintf(__('Just another %s site'), get_current_site()->site_name);
        $options['permalink_structure'] = '/%year%/%monthnum%/%day%/%postname%/';
    }
    // Set autoload to no for these options
    $fat_options = array('moderation_keys', 'recently_edited', 'blacklist_keys', 'uninstall_plugins');
    $keys = "'" . implode("', '", array_keys($options)) . "'";
    $existing_options = $wpdb->get_col("SELECT option_name FROM {$wpdb->options} WHERE option_name in ( {$keys} )");
    $insert = '';
    foreach ($options as $option => $value) {
        if (in_array($option, $existing_options)) {
            continue;
        }
        if (in_array($option, $fat_options)) {
            $autoload = 'no';
        } else {
            $autoload = 'yes';
        }
        if (is_array($value)) {
            $value = serialize($value);
        }
        if (!empty($insert)) {
            $insert .= ', ';
        }
        $insert .= $wpdb->prepare("(%s, %s, %s)", $option, $value, $autoload);
    }
    if (!empty($insert)) {
        $wpdb->query("INSERT INTO {$wpdb->options} (option_name, option_value, autoload) VALUES " . $insert);
    }
    // In case it is set, but blank, update "home".
    if (!__get_option('home')) {
        update_option('home', $guessurl);
    }
    // Delete unused options.
    $unusedoptions = array('blodotgsping_url', 'bodyterminator', 'emailtestonly', 'phoneemail_separator', 'smilies_directory', 'subjectprefix', 'use_bbcode', 'use_blodotgsping', 'use_phoneemail', 'use_quicktags', 'use_weblogsping', 'weblogs_cache_file', 'use_preview', 'use_htmltrans', 'smilies_directory', 'fileupload_allowedusers', 'use_phoneemail', 'default_post_status', 'default_post_category', 'archive_mode', 'time_difference', 'links_minadminlevel', 'links_use_adminlevels', 'links_rating_type', 'links_rating_char', 'links_rating_ignore_zero', 'links_rating_single_image', 'links_rating_image0', 'links_rating_image1', 'links_rating_image2', 'links_rating_image3', 'links_rating_image4', 'links_rating_image5', 'links_rating_image6', 'links_rating_image7', 'links_rating_image8', 'links_rating_image9', 'links_recently_updated_time', 'links_recently_updated_prepend', 'links_recently_updated_append', 'weblogs_cacheminutes', 'comment_allowed_tags', 'search_engine_friendly_urls', 'default_geourl_lat', 'default_geourl_lon', 'use_default_geourl', 'weblogs_xml_url', 'new_users_can_blog', '_wpnonce', '_wp_http_referer', 'Update', 'action', 'rich_editing', 'autosave_interval', 'deactivated_plugins', 'can_compress_scripts', 'page_uris', 'update_core', 'update_plugins', 'update_themes', 'doing_cron', 'random_seed', 'rss_excerpt_length', 'secret', 'use_linksupdate', 'default_comment_status_page', 'wporg_popular_tags', 'what_to_show', 'rss_language', 'language', 'enable_xmlrpc', 'enable_app', 'embed_autourls', 'default_post_edit_rows');
    foreach ($unusedoptions as $option) {
        delete_option($option);
    }
    // Delete obsolete magpie stuff.
    $wpdb->query("DELETE FROM {$wpdb->options} WHERE option_name REGEXP '^rss_[0-9a-f]{32}(_ts)?\$'");
    /*
     * Deletes all expired transients. The multi-table delete syntax is used
     * to delete the transient record from table a, and the corresponding
     * transient_timeout record from table b.
     */
    $time = time();
    $sql = "DELETE a, b FROM {$wpdb->options} a, {$wpdb->options} b\n\t\tWHERE a.option_name LIKE %s\n\t\tAND a.option_name NOT LIKE %s\n\t\tAND b.option_name = CONCAT( '_transient_timeout_', SUBSTRING( a.option_name, 12 ) )\n\t\tAND b.option_value < %d";
    $wpdb->query($wpdb->prepare($sql, $wpdb->esc_like('_transient_') . '%', $wpdb->esc_like('_transient_timeout_') . '%', $time));
    if (is_main_site() && is_main_network()) {
        $sql = "DELETE a, b FROM {$wpdb->options} a, {$wpdb->options} b\n\t\t\tWHERE a.option_name LIKE %s\n\t\t\tAND a.option_name NOT LIKE %s\n\t\t\tAND b.option_name = CONCAT( '_site_transient_timeout_', SUBSTRING( a.option_name, 17 ) )\n\t\t\tAND b.option_value < %d";
        $wpdb->query($wpdb->prepare($sql, $wpdb->esc_like('_site_transient_') . '%', $wpdb->esc_like('_site_transient_timeout_') . '%', $time));
    }
}

WordPress Version: .40

/**
 * Create WordPress options and set the default values.
 *
 * @since 1.5.0
 *
 * @global wpdb $wpdb WordPress database abstraction object.
 * @uses $wp_db_version
 */
function populate_options()
{
    global $wpdb, $wp_db_version, $wp_current_db_version;
    $guessurl = wp_guess_url();
    /**
     * Fires before creating WordPress options and populating their default values.
     *
     * @since 2.6.0
     */
    do_action('populate_options');
    if (ini_get('safe_mode')) {
        // Safe mode can break mkdir() so use a flat structure by default.
        $uploads_use_yearmonth_folders = 0;
    } else {
        $uploads_use_yearmonth_folders = 1;
    }
    $template = WP_DEFAULT_THEME;
    // If default theme is a child theme, we need to get its template
    $theme = wp_get_theme($template);
    if (!$theme->errors()) {
        $template = $theme->get_template();
    }
    $timezone_string = '';
    $gmt_offset = 0;
    /* translators: default GMT offset or timezone string. Must be either a valid offset (-12 to 14)
    	   or a valid timezone string (America/New_York). See http://us3.php.net/manual/en/timezones.php
    	   for all timezone strings supported by PHP.
    	*/
    $offset_or_tz = _x('0', 'default GMT offset or timezone string');
    if (is_numeric($offset_or_tz)) {
        $gmt_offset = $offset_or_tz;
    } elseif ($offset_or_tz && in_array($offset_or_tz, timezone_identifiers_list())) {
        $timezone_string = $offset_or_tz;
    }
    $options = array(
        'siteurl' => $guessurl,
        'home' => $guessurl,
        'blogname' => __('My Site'),
        /* translators: blog tagline */
        'blogdescription' => __('Just another WordPress site'),
        'users_can_register' => 0,
        'admin_email' => '[email protected]',
        /* translators: default start of the week. 0 = Sunday, 1 = Monday */
        'start_of_week' => _x('1', 'start of week'),
        'use_balanceTags' => 0,
        'use_smilies' => 1,
        'require_name_email' => 1,
        'comments_notify' => 1,
        'posts_per_rss' => 10,
        'rss_use_excerpt' => 0,
        'mailserver_url' => 'mail.example.com',
        'mailserver_login' => '[email protected]',
        'mailserver_pass' => 'password',
        'mailserver_port' => 110,
        'default_category' => 1,
        'default_comment_status' => 'open',
        'default_ping_status' => 'open',
        'default_pingback_flag' => 1,
        'posts_per_page' => 10,
        /* translators: default date format, see http://php.net/date */
        'date_format' => __('F j, Y'),
        /* translators: default time format, see http://php.net/date */
        'time_format' => __('g:i a'),
        /* translators: links last updated date format, see http://php.net/date */
        'links_updated_date_format' => __('F j, Y g:i a'),
        'comment_moderation' => 0,
        'moderation_notify' => 1,
        'permalink_structure' => '',
        'gzipcompression' => 0,
        'hack_file' => 0,
        'blog_charset' => 'UTF-8',
        'moderation_keys' => '',
        'active_plugins' => array(),
        'category_base' => '',
        'ping_sites' => 'http://rpc.pingomatic.com/',
        'advanced_edit' => 0,
        'comment_max_links' => 2,
        'gmt_offset' => $gmt_offset,
        // 1.5
        'default_email_category' => 1,
        'recently_edited' => '',
        'template' => $template,
        'stylesheet' => WP_DEFAULT_THEME,
        'comment_whitelist' => 1,
        'blacklist_keys' => '',
        'comment_registration' => 0,
        'html_type' => 'text/html',
        // 1.5.1
        'use_trackback' => 0,
        // 2.0
        'default_role' => 'subscriber',
        'db_version' => $wp_db_version,
        // 2.0.1
        'uploads_use_yearmonth_folders' => $uploads_use_yearmonth_folders,
        'upload_path' => '',
        // 2.1
        'blog_public' => '1',
        'default_link_category' => 2,
        'show_on_front' => 'posts',
        // 2.2
        'tag_base' => '',
        // 2.5
        'show_avatars' => '1',
        'avatar_rating' => 'G',
        'upload_url_path' => '',
        'thumbnail_size_w' => 150,
        'thumbnail_size_h' => 150,
        'thumbnail_crop' => 1,
        'medium_size_w' => 300,
        'medium_size_h' => 300,
        // 2.6
        'avatar_default' => 'mystery',
        // 2.7
        'large_size_w' => 1024,
        'large_size_h' => 1024,
        'image_default_link_type' => 'file',
        'image_default_size' => '',
        'image_default_align' => '',
        'close_comments_for_old_posts' => 0,
        'close_comments_days_old' => 14,
        'thread_comments' => 1,
        'thread_comments_depth' => 5,
        'page_comments' => 0,
        'comments_per_page' => 50,
        'default_comments_page' => 'newest',
        'comment_order' => 'asc',
        'sticky_posts' => array(),
        'widget_categories' => array(),
        'widget_text' => array(),
        'widget_rss' => array(),
        'uninstall_plugins' => array(),
        // 2.8
        'timezone_string' => $timezone_string,
        // 3.0
        'page_for_posts' => 0,
        'page_on_front' => 0,
        // 3.1
        'default_post_format' => 0,
        // 3.5
        'link_manager_enabled' => 0,
    );
    // 3.3
    if (!is_multisite()) {
        $options['initial_db_version'] = (!empty($wp_current_db_version) && $wp_current_db_version < $wp_db_version) ? $wp_current_db_version : $wp_db_version;
    }
    // 3.0 multisite
    if (is_multisite()) {
        /* translators: blog tagline */
        $options['blogdescription'] = sprintf(__('Just another %s site'), get_current_site()->site_name);
        $options['permalink_structure'] = '/%year%/%monthnum%/%day%/%postname%/';
    }
    // Set autoload to no for these options
    $fat_options = array('moderation_keys', 'recently_edited', 'blacklist_keys', 'uninstall_plugins');
    $keys = "'" . implode("', '", array_keys($options)) . "'";
    $existing_options = $wpdb->get_col("SELECT option_name FROM {$wpdb->options} WHERE option_name in ( {$keys} )");
    $insert = '';
    foreach ($options as $option => $value) {
        if (in_array($option, $existing_options)) {
            continue;
        }
        if (in_array($option, $fat_options)) {
            $autoload = 'no';
        } else {
            $autoload = 'yes';
        }
        if (!empty($insert)) {
            $insert .= ', ';
        }
        $value = maybe_serialize(sanitize_option($option, $value));
        $insert .= $wpdb->prepare("(%s, %s, %s)", $option, $value, $autoload);
    }
    if (!empty($insert)) {
        $wpdb->query("INSERT INTO {$wpdb->options} (option_name, option_value, autoload) VALUES " . $insert);
    }
    // In case it is set, but blank, update "home".
    if (!__get_option('home')) {
        update_option('home', $guessurl);
    }
    // Delete unused options.
    $unusedoptions = array('blodotgsping_url', 'bodyterminator', 'emailtestonly', 'phoneemail_separator', 'smilies_directory', 'subjectprefix', 'use_bbcode', 'use_blodotgsping', 'use_phoneemail', 'use_quicktags', 'use_weblogsping', 'weblogs_cache_file', 'use_preview', 'use_htmltrans', 'smilies_directory', 'fileupload_allowedusers', 'use_phoneemail', 'default_post_status', 'default_post_category', 'archive_mode', 'time_difference', 'links_minadminlevel', 'links_use_adminlevels', 'links_rating_type', 'links_rating_char', 'links_rating_ignore_zero', 'links_rating_single_image', 'links_rating_image0', 'links_rating_image1', 'links_rating_image2', 'links_rating_image3', 'links_rating_image4', 'links_rating_image5', 'links_rating_image6', 'links_rating_image7', 'links_rating_image8', 'links_rating_image9', 'links_recently_updated_time', 'links_recently_updated_prepend', 'links_recently_updated_append', 'weblogs_cacheminutes', 'comment_allowed_tags', 'search_engine_friendly_urls', 'default_geourl_lat', 'default_geourl_lon', 'use_default_geourl', 'weblogs_xml_url', 'new_users_can_blog', '_wpnonce', '_wp_http_referer', 'Update', 'action', 'rich_editing', 'autosave_interval', 'deactivated_plugins', 'can_compress_scripts', 'page_uris', 'update_core', 'update_plugins', 'update_themes', 'doing_cron', 'random_seed', 'rss_excerpt_length', 'secret', 'use_linksupdate', 'default_comment_status_page', 'wporg_popular_tags', 'what_to_show', 'rss_language', 'language', 'enable_xmlrpc', 'enable_app', 'embed_autourls', 'default_post_edit_rows');
    foreach ($unusedoptions as $option) {
        delete_option($option);
    }
    // Delete obsolete magpie stuff.
    $wpdb->query("DELETE FROM {$wpdb->options} WHERE option_name REGEXP '^rss_[0-9a-f]{32}(_ts)?\$'");
    /*
     * Deletes all expired transients. The multi-table delete syntax is used
     * to delete the transient record from table a, and the corresponding
     * transient_timeout record from table b.
     */
    $time = time();
    $sql = "DELETE a, b FROM {$wpdb->options} a, {$wpdb->options} b\n\t\tWHERE a.option_name LIKE %s\n\t\tAND a.option_name NOT LIKE %s\n\t\tAND b.option_name = CONCAT( '_transient_timeout_', SUBSTRING( a.option_name, 12 ) )\n\t\tAND b.option_value < %d";
    $wpdb->query($wpdb->prepare($sql, $wpdb->esc_like('_transient_') . '%', $wpdb->esc_like('_transient_timeout_') . '%', $time));
    if (is_main_site() && is_main_network()) {
        $sql = "DELETE a, b FROM {$wpdb->options} a, {$wpdb->options} b\n\t\t\tWHERE a.option_name LIKE %s\n\t\t\tAND a.option_name NOT LIKE %s\n\t\t\tAND b.option_name = CONCAT( '_site_transient_timeout_', SUBSTRING( a.option_name, 17 ) )\n\t\t\tAND b.option_value < %d";
        $wpdb->query($wpdb->prepare($sql, $wpdb->esc_like('_site_transient_') . '%', $wpdb->esc_like('_site_transient_timeout_') . '%', $time));
    }
}

WordPress Version: 4.1

/**
 * Create WordPress options and set the default values.
 *
 * @since 1.5.0
 *
 * @global wpdb $wpdb WordPress database abstraction object.
 * @uses $wp_db_version
 */
function populate_options()
{
    global $wpdb, $wp_db_version, $wp_current_db_version;
    $guessurl = wp_guess_url();
    /**
     * Fires before creating WordPress options and populating their default values.
     *
     * @since 2.6.0
     */
    do_action('populate_options');
    if (ini_get('safe_mode')) {
        // Safe mode can break mkdir() so use a flat structure by default.
        $uploads_use_yearmonth_folders = 0;
    } else {
        $uploads_use_yearmonth_folders = 1;
    }
    $template = WP_DEFAULT_THEME;
    // If default theme is a child theme, we need to get its template
    $theme = wp_get_theme($template);
    if (!$theme->errors()) {
        $template = $theme->get_template();
    }
    $timezone_string = '';
    $gmt_offset = 0;
    /* translators: default GMT offset or timezone string. Must be either a valid offset (-12 to 14)
    	   or a valid timezone string (America/New_York). See http://us3.php.net/manual/en/timezones.php
    	   for all timezone strings supported by PHP.
    	*/
    $offset_or_tz = _x('0', 'default GMT offset or timezone string');
    if (is_numeric($offset_or_tz)) {
        $gmt_offset = $offset_or_tz;
    } elseif ($offset_or_tz && in_array($offset_or_tz, timezone_identifiers_list())) {
        $timezone_string = $offset_or_tz;
    }
    $options = array(
        'siteurl' => $guessurl,
        'home' => $guessurl,
        'blogname' => __('My Site'),
        /* translators: blog tagline */
        'blogdescription' => __('Just another WordPress site'),
        'users_can_register' => 0,
        'admin_email' => '[email protected]',
        /* translators: default start of the week. 0 = Sunday, 1 = Monday */
        'start_of_week' => _x('1', 'start of week'),
        'use_balanceTags' => 0,
        'use_smilies' => 1,
        'require_name_email' => 1,
        'comments_notify' => 1,
        'posts_per_rss' => 10,
        'rss_use_excerpt' => 0,
        'mailserver_url' => 'mail.example.com',
        'mailserver_login' => '[email protected]',
        'mailserver_pass' => 'password',
        'mailserver_port' => 110,
        'default_category' => 1,
        'default_comment_status' => 'open',
        'default_ping_status' => 'open',
        'default_pingback_flag' => 1,
        'posts_per_page' => 10,
        /* translators: default date format, see http://php.net/date */
        'date_format' => __('F j, Y'),
        /* translators: default time format, see http://php.net/date */
        'time_format' => __('g:i a'),
        /* translators: links last updated date format, see http://php.net/date */
        'links_updated_date_format' => __('F j, Y g:i a'),
        'comment_moderation' => 0,
        'moderation_notify' => 1,
        'permalink_structure' => '',
        'gzipcompression' => 0,
        'hack_file' => 0,
        'blog_charset' => 'UTF-8',
        'moderation_keys' => '',
        'active_plugins' => array(),
        'category_base' => '',
        'ping_sites' => 'http://rpc.pingomatic.com/',
        'advanced_edit' => 0,
        'comment_max_links' => 2,
        'gmt_offset' => $gmt_offset,
        // 1.5
        'default_email_category' => 1,
        'recently_edited' => '',
        'template' => $template,
        'stylesheet' => WP_DEFAULT_THEME,
        'comment_whitelist' => 1,
        'blacklist_keys' => '',
        'comment_registration' => 0,
        'html_type' => 'text/html',
        // 1.5.1
        'use_trackback' => 0,
        // 2.0
        'default_role' => 'subscriber',
        'db_version' => $wp_db_version,
        // 2.0.1
        'uploads_use_yearmonth_folders' => $uploads_use_yearmonth_folders,
        'upload_path' => '',
        // 2.1
        'blog_public' => '1',
        'default_link_category' => 2,
        'show_on_front' => 'posts',
        // 2.2
        'tag_base' => '',
        // 2.5
        'show_avatars' => '1',
        'avatar_rating' => 'G',
        'upload_url_path' => '',
        'thumbnail_size_w' => 150,
        'thumbnail_size_h' => 150,
        'thumbnail_crop' => 1,
        'medium_size_w' => 300,
        'medium_size_h' => 300,
        // 2.6
        'avatar_default' => 'mystery',
        // 2.7
        'large_size_w' => 1024,
        'large_size_h' => 1024,
        'image_default_link_type' => 'file',
        'image_default_size' => '',
        'image_default_align' => '',
        'close_comments_for_old_posts' => 0,
        'close_comments_days_old' => 14,
        'thread_comments' => 1,
        'thread_comments_depth' => 5,
        'page_comments' => 0,
        'comments_per_page' => 50,
        'default_comments_page' => 'newest',
        'comment_order' => 'asc',
        'sticky_posts' => array(),
        'widget_categories' => array(),
        'widget_text' => array(),
        'widget_rss' => array(),
        'uninstall_plugins' => array(),
        // 2.8
        'timezone_string' => $timezone_string,
        // 3.0
        'page_for_posts' => 0,
        'page_on_front' => 0,
        // 3.1
        'default_post_format' => 0,
        // 3.5
        'link_manager_enabled' => 0,
    );
    // 3.3
    if (!is_multisite()) {
        $options['initial_db_version'] = (!empty($wp_current_db_version) && $wp_current_db_version < $wp_db_version) ? $wp_current_db_version : $wp_db_version;
    }
    // 3.0 multisite
    if (is_multisite()) {
        /* translators: blog tagline */
        $options['blogdescription'] = sprintf(__('Just another %s site'), get_current_site()->site_name);
        $options['permalink_structure'] = '/%year%/%monthnum%/%day%/%postname%/';
    }
    // Set autoload to no for these options
    $fat_options = array('moderation_keys', 'recently_edited', 'blacklist_keys', 'uninstall_plugins');
    $keys = "'" . implode("', '", array_keys($options)) . "'";
    $existing_options = $wpdb->get_col("SELECT option_name FROM {$wpdb->options} WHERE option_name in ( {$keys} )");
    $insert = '';
    foreach ($options as $option => $value) {
        if (in_array($option, $existing_options)) {
            continue;
        }
        if (in_array($option, $fat_options)) {
            $autoload = 'no';
        } else {
            $autoload = 'yes';
        }
        if (is_array($value)) {
            $value = serialize($value);
        }
        if (!empty($insert)) {
            $insert .= ', ';
        }
        $insert .= $wpdb->prepare("(%s, %s, %s)", $option, $value, $autoload);
    }
    if (!empty($insert)) {
        $wpdb->query("INSERT INTO {$wpdb->options} (option_name, option_value, autoload) VALUES " . $insert);
    }
    // In case it is set, but blank, update "home".
    if (!__get_option('home')) {
        update_option('home', $guessurl);
    }
    // Delete unused options.
    $unusedoptions = array('blodotgsping_url', 'bodyterminator', 'emailtestonly', 'phoneemail_separator', 'smilies_directory', 'subjectprefix', 'use_bbcode', 'use_blodotgsping', 'use_phoneemail', 'use_quicktags', 'use_weblogsping', 'weblogs_cache_file', 'use_preview', 'use_htmltrans', 'smilies_directory', 'fileupload_allowedusers', 'use_phoneemail', 'default_post_status', 'default_post_category', 'archive_mode', 'time_difference', 'links_minadminlevel', 'links_use_adminlevels', 'links_rating_type', 'links_rating_char', 'links_rating_ignore_zero', 'links_rating_single_image', 'links_rating_image0', 'links_rating_image1', 'links_rating_image2', 'links_rating_image3', 'links_rating_image4', 'links_rating_image5', 'links_rating_image6', 'links_rating_image7', 'links_rating_image8', 'links_rating_image9', 'links_recently_updated_time', 'links_recently_updated_prepend', 'links_recently_updated_append', 'weblogs_cacheminutes', 'comment_allowed_tags', 'search_engine_friendly_urls', 'default_geourl_lat', 'default_geourl_lon', 'use_default_geourl', 'weblogs_xml_url', 'new_users_can_blog', '_wpnonce', '_wp_http_referer', 'Update', 'action', 'rich_editing', 'autosave_interval', 'deactivated_plugins', 'can_compress_scripts', 'page_uris', 'update_core', 'update_plugins', 'update_themes', 'doing_cron', 'random_seed', 'rss_excerpt_length', 'secret', 'use_linksupdate', 'default_comment_status_page', 'wporg_popular_tags', 'what_to_show', 'rss_language', 'language', 'enable_xmlrpc', 'enable_app', 'embed_autourls', 'default_post_edit_rows');
    foreach ($unusedoptions as $option) {
        delete_option($option);
    }
    // Delete obsolete magpie stuff.
    $wpdb->query("DELETE FROM {$wpdb->options} WHERE option_name REGEXP '^rss_[0-9a-f]{32}(_ts)?\$'");
    /*
     * Deletes all expired transients. The multi-table delete syntax is used
     * to delete the transient record from table a, and the corresponding
     * transient_timeout record from table b.
     */
    $time = time();
    $sql = "DELETE a, b FROM {$wpdb->options} a, {$wpdb->options} b\n\t\tWHERE a.option_name LIKE %s\n\t\tAND a.option_name NOT LIKE %s\n\t\tAND b.option_name = CONCAT( '_transient_timeout_', SUBSTRING( a.option_name, 12 ) )\n\t\tAND b.option_value < %d";
    $wpdb->query($wpdb->prepare($sql, $wpdb->esc_like('_transient_') . '%', $wpdb->esc_like('_transient_timeout_') . '%', $time));
    if (is_main_site() && is_main_network()) {
        $sql = "DELETE a, b FROM {$wpdb->options} a, {$wpdb->options} b\n\t\t\tWHERE a.option_name LIKE %s\n\t\t\tAND a.option_name NOT LIKE %s\n\t\t\tAND b.option_name = CONCAT( '_site_transient_timeout_', SUBSTRING( a.option_name, 17 ) )\n\t\t\tAND b.option_value < %d";
        $wpdb->query($wpdb->prepare($sql, $wpdb->esc_like('_site_transient_') . '%', $wpdb->esc_like('_site_transient_timeout_') . '%', $time));
    }
}

WordPress Version: 4.0

/**
 * Create WordPress options and set the default values.
 *
 * @since 1.5.0
 * @uses $wpdb
 * @uses $wp_db_version
 */
function populate_options()
{
    global $wpdb, $wp_db_version, $wp_current_db_version;
    $guessurl = wp_guess_url();
    /**
     * Fires before creating WordPress options and populating their default values.
     *
     * @since 2.6.0
     */
    do_action('populate_options');
    if (ini_get('safe_mode')) {
        // Safe mode can break mkdir() so use a flat structure by default.
        $uploads_use_yearmonth_folders = 0;
    } else {
        $uploads_use_yearmonth_folders = 1;
    }
    $template = WP_DEFAULT_THEME;
    // If default theme is a child theme, we need to get its template
    $theme = wp_get_theme($template);
    if (!$theme->errors()) {
        $template = $theme->get_template();
    }
    $timezone_string = '';
    $gmt_offset = 0;
    /* translators: default GMT offset or timezone string. Must be either a valid offset (-12 to 14)
    	   or a valid timezone string (America/New_York). See http://us3.php.net/manual/en/timezones.php
    	   for all timezone strings supported by PHP.
    	*/
    $offset_or_tz = _x('0', 'default GMT offset or timezone string');
    if (is_numeric($offset_or_tz)) {
        $gmt_offset = $offset_or_tz;
    } elseif ($offset_or_tz && in_array($offset_or_tz, timezone_identifiers_list())) {
        $timezone_string = $offset_or_tz;
    }
    $options = array(
        'siteurl' => $guessurl,
        'home' => $guessurl,
        'blogname' => __('My Site'),
        /* translators: blog tagline */
        'blogdescription' => __('Just another WordPress site'),
        'users_can_register' => 0,
        'admin_email' => '[email protected]',
        /* translators: default start of the week. 0 = Sunday, 1 = Monday */
        'start_of_week' => _x('1', 'start of week'),
        'use_balanceTags' => 0,
        'use_smilies' => 1,
        'require_name_email' => 1,
        'comments_notify' => 1,
        'posts_per_rss' => 10,
        'rss_use_excerpt' => 0,
        'mailserver_url' => 'mail.example.com',
        'mailserver_login' => '[email protected]',
        'mailserver_pass' => 'password',
        'mailserver_port' => 110,
        'default_category' => 1,
        'default_comment_status' => 'open',
        'default_ping_status' => 'open',
        'default_pingback_flag' => 1,
        'posts_per_page' => 10,
        /* translators: default date format, see http://php.net/date */
        'date_format' => __('F j, Y'),
        /* translators: default time format, see http://php.net/date */
        'time_format' => __('g:i a'),
        /* translators: links last updated date format, see http://php.net/date */
        'links_updated_date_format' => __('F j, Y g:i a'),
        'comment_moderation' => 0,
        'moderation_notify' => 1,
        'permalink_structure' => '',
        'gzipcompression' => 0,
        'hack_file' => 0,
        'blog_charset' => 'UTF-8',
        'moderation_keys' => '',
        'active_plugins' => array(),
        'category_base' => '',
        'ping_sites' => 'http://rpc.pingomatic.com/',
        'advanced_edit' => 0,
        'comment_max_links' => 2,
        'gmt_offset' => $gmt_offset,
        // 1.5
        'default_email_category' => 1,
        'recently_edited' => '',
        'template' => $template,
        'stylesheet' => WP_DEFAULT_THEME,
        'comment_whitelist' => 1,
        'blacklist_keys' => '',
        'comment_registration' => 0,
        'html_type' => 'text/html',
        // 1.5.1
        'use_trackback' => 0,
        // 2.0
        'default_role' => 'subscriber',
        'db_version' => $wp_db_version,
        // 2.0.1
        'uploads_use_yearmonth_folders' => $uploads_use_yearmonth_folders,
        'upload_path' => '',
        // 2.1
        'blog_public' => '1',
        'default_link_category' => 2,
        'show_on_front' => 'posts',
        // 2.2
        'tag_base' => '',
        // 2.5
        'show_avatars' => '1',
        'avatar_rating' => 'G',
        'upload_url_path' => '',
        'thumbnail_size_w' => 150,
        'thumbnail_size_h' => 150,
        'thumbnail_crop' => 1,
        'medium_size_w' => 300,
        'medium_size_h' => 300,
        // 2.6
        'avatar_default' => 'mystery',
        // 2.7
        'large_size_w' => 1024,
        'large_size_h' => 1024,
        'image_default_link_type' => 'file',
        'image_default_size' => '',
        'image_default_align' => '',
        'close_comments_for_old_posts' => 0,
        'close_comments_days_old' => 14,
        'thread_comments' => 1,
        'thread_comments_depth' => 5,
        'page_comments' => 0,
        'comments_per_page' => 50,
        'default_comments_page' => 'newest',
        'comment_order' => 'asc',
        'sticky_posts' => array(),
        'widget_categories' => array(),
        'widget_text' => array(),
        'widget_rss' => array(),
        'uninstall_plugins' => array(),
        // 2.8
        'timezone_string' => $timezone_string,
        // 3.0
        'page_for_posts' => 0,
        'page_on_front' => 0,
        // 3.1
        'default_post_format' => 0,
        // 3.5
        'link_manager_enabled' => 0,
    );
    // 3.3
    if (!is_multisite()) {
        $options['initial_db_version'] = (!empty($wp_current_db_version) && $wp_current_db_version < $wp_db_version) ? $wp_current_db_version : $wp_db_version;
    }
    // 3.0 multisite
    if (is_multisite()) {
        /* translators: blog tagline */
        $options['blogdescription'] = sprintf(__('Just another %s site'), get_current_site()->site_name);
        $options['permalink_structure'] = '/%year%/%monthnum%/%day%/%postname%/';
    }
    // Set autoload to no for these options
    $fat_options = array('moderation_keys', 'recently_edited', 'blacklist_keys', 'uninstall_plugins');
    $keys = "'" . implode("', '", array_keys($options)) . "'";
    $existing_options = $wpdb->get_col("SELECT option_name FROM {$wpdb->options} WHERE option_name in ( {$keys} )");
    $insert = '';
    foreach ($options as $option => $value) {
        if (in_array($option, $existing_options)) {
            continue;
        }
        if (in_array($option, $fat_options)) {
            $autoload = 'no';
        } else {
            $autoload = 'yes';
        }
        if (is_array($value)) {
            $value = serialize($value);
        }
        if (!empty($insert)) {
            $insert .= ', ';
        }
        $insert .= $wpdb->prepare("(%s, %s, %s)", $option, $value, $autoload);
    }
    if (!empty($insert)) {
        $wpdb->query("INSERT INTO {$wpdb->options} (option_name, option_value, autoload) VALUES " . $insert);
    }
    // In case it is set, but blank, update "home".
    if (!__get_option('home')) {
        update_option('home', $guessurl);
    }
    // Delete unused options.
    $unusedoptions = array('blodotgsping_url', 'bodyterminator', 'emailtestonly', 'phoneemail_separator', 'smilies_directory', 'subjectprefix', 'use_bbcode', 'use_blodotgsping', 'use_phoneemail', 'use_quicktags', 'use_weblogsping', 'weblogs_cache_file', 'use_preview', 'use_htmltrans', 'smilies_directory', 'fileupload_allowedusers', 'use_phoneemail', 'default_post_status', 'default_post_category', 'archive_mode', 'time_difference', 'links_minadminlevel', 'links_use_adminlevels', 'links_rating_type', 'links_rating_char', 'links_rating_ignore_zero', 'links_rating_single_image', 'links_rating_image0', 'links_rating_image1', 'links_rating_image2', 'links_rating_image3', 'links_rating_image4', 'links_rating_image5', 'links_rating_image6', 'links_rating_image7', 'links_rating_image8', 'links_rating_image9', 'links_recently_updated_time', 'links_recently_updated_prepend', 'links_recently_updated_append', 'weblogs_cacheminutes', 'comment_allowed_tags', 'search_engine_friendly_urls', 'default_geourl_lat', 'default_geourl_lon', 'use_default_geourl', 'weblogs_xml_url', 'new_users_can_blog', '_wpnonce', '_wp_http_referer', 'Update', 'action', 'rich_editing', 'autosave_interval', 'deactivated_plugins', 'can_compress_scripts', 'page_uris', 'update_core', 'update_plugins', 'update_themes', 'doing_cron', 'random_seed', 'rss_excerpt_length', 'secret', 'use_linksupdate', 'default_comment_status_page', 'wporg_popular_tags', 'what_to_show', 'rss_language', 'language', 'enable_xmlrpc', 'enable_app', 'embed_autourls', 'default_post_edit_rows');
    foreach ($unusedoptions as $option) {
        delete_option($option);
    }
    // Delete obsolete magpie stuff.
    $wpdb->query("DELETE FROM {$wpdb->options} WHERE option_name REGEXP '^rss_[0-9a-f]{32}(_ts)?\$'");
    /*
     * Deletes all expired transients. The multi-table delete syntax is used
     * to delete the transient record from table a, and the corresponding
     * transient_timeout record from table b.
     */
    $time = time();
    $sql = "DELETE a, b FROM {$wpdb->options} a, {$wpdb->options} b\n\t\tWHERE a.option_name LIKE %s\n\t\tAND a.option_name NOT LIKE %s\n\t\tAND b.option_name = CONCAT( '_transient_timeout_', SUBSTRING( a.option_name, 12 ) )\n\t\tAND b.option_value < %d";
    $wpdb->query($wpdb->prepare($sql, $wpdb->esc_like('_transient_') . '%', $wpdb->esc_like('_transient_timeout_') . '%', $time));
    if (is_main_site() && is_main_network()) {
        $sql = "DELETE a, b FROM {$wpdb->options} a, {$wpdb->options} b\n\t\t\tWHERE a.option_name LIKE %s\n\t\t\tAND a.option_name NOT LIKE %s\n\t\t\tAND b.option_name = CONCAT( '_site_transient_timeout_', SUBSTRING( a.option_name, 17 ) )\n\t\t\tAND b.option_value < %d";
        $wpdb->query($wpdb->prepare($sql, $wpdb->esc_like('_site_transient_') . '%', $wpdb->esc_like('_site_transient_timeout_') . '%', $time));
    }
}

WordPress Version: 3.9

/**
 * Create WordPress options and set the default values.
 *
 * @since 1.5.0
 * @uses $wpdb
 * @uses $wp_db_version
 */
function populate_options()
{
    global $wpdb, $wp_db_version, $wp_current_db_version;
    $guessurl = wp_guess_url();
    /**
     * Fires before creating WordPress options and populating their default values.
     *
     * @since 2.6.0
     */
    do_action('populate_options');
    if (ini_get('safe_mode')) {
        // Safe mode can break mkdir() so use a flat structure by default.
        $uploads_use_yearmonth_folders = 0;
    } else {
        $uploads_use_yearmonth_folders = 1;
    }
    $template = WP_DEFAULT_THEME;
    // If default theme is a child theme, we need to get its template
    $theme = wp_get_theme($template);
    if (!$theme->errors()) {
        $template = $theme->get_template();
    }
    $timezone_string = '';
    $gmt_offset = 0;
    /* translators: default GMT offset or timezone string. Must be either a valid offset (-12 to 14)
    	   or a valid timezone string (America/New_York). See http://us3.php.net/manual/en/timezones.php
    	   for all timezone strings supported by PHP.
    	*/
    $offset_or_tz = _x('0', 'default GMT offset or timezone string');
    if (is_numeric($offset_or_tz)) {
        $gmt_offset = $offset_or_tz;
    } elseif ($offset_or_tz && in_array($offset_or_tz, timezone_identifiers_list())) {
        $timezone_string = $offset_or_tz;
    }
    $options = array(
        'siteurl' => $guessurl,
        'blogname' => __('My Site'),
        /* translators: blog tagline */
        'blogdescription' => __('Just another WordPress site'),
        'users_can_register' => 0,
        'admin_email' => '[email protected]',
        /* translators: default start of the week. 0 = Sunday, 1 = Monday */
        'start_of_week' => _x('1', 'start of week'),
        'use_balanceTags' => 0,
        'use_smilies' => 1,
        'require_name_email' => 1,
        'comments_notify' => 1,
        'posts_per_rss' => 10,
        'rss_use_excerpt' => 0,
        'mailserver_url' => 'mail.example.com',
        'mailserver_login' => '[email protected]',
        'mailserver_pass' => 'password',
        'mailserver_port' => 110,
        'default_category' => 1,
        'default_comment_status' => 'open',
        'default_ping_status' => 'open',
        'default_pingback_flag' => 1,
        'posts_per_page' => 10,
        /* translators: default date format, see http://php.net/date */
        'date_format' => __('F j, Y'),
        /* translators: default time format, see http://php.net/date */
        'time_format' => __('g:i a'),
        /* translators: links last updated date format, see http://php.net/date */
        'links_updated_date_format' => __('F j, Y g:i a'),
        'comment_moderation' => 0,
        'moderation_notify' => 1,
        'permalink_structure' => '',
        'gzipcompression' => 0,
        'hack_file' => 0,
        'blog_charset' => 'UTF-8',
        'moderation_keys' => '',
        'active_plugins' => array(),
        'home' => $guessurl,
        'category_base' => '',
        'ping_sites' => 'http://rpc.pingomatic.com/',
        'advanced_edit' => 0,
        'comment_max_links' => 2,
        'gmt_offset' => $gmt_offset,
        // 1.5
        'default_email_category' => 1,
        'recently_edited' => '',
        'template' => $template,
        'stylesheet' => WP_DEFAULT_THEME,
        'comment_whitelist' => 1,
        'blacklist_keys' => '',
        'comment_registration' => 0,
        'html_type' => 'text/html',
        // 1.5.1
        'use_trackback' => 0,
        // 2.0
        'default_role' => 'subscriber',
        'db_version' => $wp_db_version,
        // 2.0.1
        'uploads_use_yearmonth_folders' => $uploads_use_yearmonth_folders,
        'upload_path' => '',
        // 2.1
        'blog_public' => '1',
        'default_link_category' => 2,
        'show_on_front' => 'posts',
        // 2.2
        'tag_base' => '',
        // 2.5
        'show_avatars' => '1',
        'avatar_rating' => 'G',
        'upload_url_path' => '',
        'thumbnail_size_w' => 150,
        'thumbnail_size_h' => 150,
        'thumbnail_crop' => 1,
        'medium_size_w' => 300,
        'medium_size_h' => 300,
        // 2.6
        'avatar_default' => 'mystery',
        // 2.7
        'large_size_w' => 1024,
        'large_size_h' => 1024,
        'image_default_link_type' => 'file',
        'image_default_size' => '',
        'image_default_align' => '',
        'close_comments_for_old_posts' => 0,
        'close_comments_days_old' => 14,
        'thread_comments' => 1,
        'thread_comments_depth' => 5,
        'page_comments' => 0,
        'comments_per_page' => 50,
        'default_comments_page' => 'newest',
        'comment_order' => 'asc',
        'sticky_posts' => array(),
        'widget_categories' => array(),
        'widget_text' => array(),
        'widget_rss' => array(),
        'uninstall_plugins' => array(),
        // 2.8
        'timezone_string' => $timezone_string,
        // 3.0
        'page_for_posts' => 0,
        'page_on_front' => 0,
        // 3.1
        'default_post_format' => 0,
        // 3.5
        'link_manager_enabled' => 0,
    );
    // 3.3
    if (!is_multisite()) {
        $options['initial_db_version'] = (!empty($wp_current_db_version) && $wp_current_db_version < $wp_db_version) ? $wp_current_db_version : $wp_db_version;
    }
    // 3.0 multisite
    if (is_multisite()) {
        /* translators: blog tagline */
        $options['blogdescription'] = sprintf(__('Just another %s site'), get_current_site()->site_name);
        $options['permalink_structure'] = '/%year%/%monthnum%/%day%/%postname%/';
    }
    // Set autoload to no for these options
    $fat_options = array('moderation_keys', 'recently_edited', 'blacklist_keys', 'uninstall_plugins');
    $keys = "'" . implode("', '", array_keys($options)) . "'";
    $existing_options = $wpdb->get_col("SELECT option_name FROM {$wpdb->options} WHERE option_name in ( {$keys} )");
    $insert = '';
    foreach ($options as $option => $value) {
        if (in_array($option, $existing_options)) {
            continue;
        }
        if (in_array($option, $fat_options)) {
            $autoload = 'no';
        } else {
            $autoload = 'yes';
        }
        if (is_array($value)) {
            $value = serialize($value);
        }
        if (!empty($insert)) {
            $insert .= ', ';
        }
        $insert .= $wpdb->prepare("(%s, %s, %s)", $option, $value, $autoload);
    }
    if (!empty($insert)) {
        $wpdb->query("INSERT INTO {$wpdb->options} (option_name, option_value, autoload) VALUES " . $insert);
    }
    // in case it is set, but blank, update "home"
    if (!__get_option('home')) {
        update_option('home', $guessurl);
    }
    // Delete unused options
    $unusedoptions = array('blodotgsping_url', 'bodyterminator', 'emailtestonly', 'phoneemail_separator', 'smilies_directory', 'subjectprefix', 'use_bbcode', 'use_blodotgsping', 'use_phoneemail', 'use_quicktags', 'use_weblogsping', 'weblogs_cache_file', 'use_preview', 'use_htmltrans', 'smilies_directory', 'fileupload_allowedusers', 'use_phoneemail', 'default_post_status', 'default_post_category', 'archive_mode', 'time_difference', 'links_minadminlevel', 'links_use_adminlevels', 'links_rating_type', 'links_rating_char', 'links_rating_ignore_zero', 'links_rating_single_image', 'links_rating_image0', 'links_rating_image1', 'links_rating_image2', 'links_rating_image3', 'links_rating_image4', 'links_rating_image5', 'links_rating_image6', 'links_rating_image7', 'links_rating_image8', 'links_rating_image9', 'links_recently_updated_time', 'links_recently_updated_prepend', 'links_recently_updated_append', 'weblogs_cacheminutes', 'comment_allowed_tags', 'search_engine_friendly_urls', 'default_geourl_lat', 'default_geourl_lon', 'use_default_geourl', 'weblogs_xml_url', 'new_users_can_blog', '_wpnonce', '_wp_http_referer', 'Update', 'action', 'rich_editing', 'autosave_interval', 'deactivated_plugins', 'can_compress_scripts', 'page_uris', 'update_core', 'update_plugins', 'update_themes', 'doing_cron', 'random_seed', 'rss_excerpt_length', 'secret', 'use_linksupdate', 'default_comment_status_page', 'wporg_popular_tags', 'what_to_show', 'rss_language', 'language', 'enable_xmlrpc', 'enable_app', 'embed_autourls', 'default_post_edit_rows');
    foreach ($unusedoptions as $option) {
        delete_option($option);
    }
    // delete obsolete magpie stuff
    $wpdb->query("DELETE FROM {$wpdb->options} WHERE option_name REGEXP '^rss_[0-9a-f]{32}(_ts)?\$'");
    // Deletes all expired transients.
    // The multi-table delete syntax is used to delete the transient record from table a,
    // and the corresponding transient_timeout record from table b.
    $time = time();
    $wpdb->query("DELETE a, b FROM {$wpdb->options} a, {$wpdb->options} b WHERE\n\t        a.option_name LIKE '\\_transient\\_%' AND\n\t        a.option_name NOT LIKE '\\_transient\\_timeout\\_%' AND\n\t        b.option_name = CONCAT( '_transient_timeout_', SUBSTRING( a.option_name, 12 ) )\n\t        AND b.option_value < {$time}");
    if (is_main_site() && is_main_network()) {
        $wpdb->query("DELETE a, b FROM {$wpdb->options} a, {$wpdb->options} b WHERE\n\t\t\ta.option_name LIKE '\\_site\\_transient\\_%' AND\n\t\t\ta.option_name NOT LIKE '\\_site\\_transient\\_timeout\\_%' AND\n\t\t\tb.option_name = CONCAT( '_site_transient_timeout_', SUBSTRING( a.option_name, 17 ) )\n\t\t\tAND b.option_value < {$time}");
    }
}

WordPress Version: 3.8

/**
 * Create WordPress options and set the default values.
 *
 * @since 1.5.0
 * @uses $wpdb
 * @uses $wp_db_version
 */
function populate_options()
{
    global $wpdb, $wp_db_version, $wp_current_db_version;
    $guessurl = wp_guess_url();
    /**
     * Fires before creating WordPress options and populating their default values.
     *
     * @since 2.6.0
     */
    do_action('populate_options');
    if (ini_get('safe_mode')) {
        // Safe mode can break mkdir() so use a flat structure by default.
        $uploads_use_yearmonth_folders = 0;
    } else {
        $uploads_use_yearmonth_folders = 1;
    }
    $template = WP_DEFAULT_THEME;
    // If default theme is a child theme, we need to get its template
    $theme = wp_get_theme($template);
    if (!$theme->errors()) {
        $template = $theme->get_template();
    }
    $timezone_string = '';
    $gmt_offset = 0;
    /* translators: default GMT offset or timezone string. Must be either a valid offset (-12 to 14)
    	   or a valid timezone string (America/New_York). See http://us3.php.net/manual/en/timezones.php
    	   for all timezone strings supported by PHP.
    	*/
    $offset_or_tz = _x('0', 'default GMT offset or timezone string');
    if (is_numeric($offset_or_tz)) {
        $gmt_offset = $offset_or_tz;
    } elseif ($offset_or_tz && in_array($offset_or_tz, timezone_identifiers_list())) {
        $timezone_string = $offset_or_tz;
    }
    $options = array(
        'siteurl' => $guessurl,
        'blogname' => __('My Site'),
        /* translators: blog tagline */
        'blogdescription' => __('Just another WordPress site'),
        'users_can_register' => 0,
        'admin_email' => '[email protected]',
        /* translators: default start of the week. 0 = Sunday, 1 = Monday */
        'start_of_week' => _x('1', 'start of week'),
        'use_balanceTags' => 0,
        'use_smilies' => 1,
        'require_name_email' => 1,
        'comments_notify' => 1,
        'posts_per_rss' => 10,
        'rss_use_excerpt' => 0,
        'mailserver_url' => 'mail.example.com',
        'mailserver_login' => '[email protected]',
        'mailserver_pass' => 'password',
        'mailserver_port' => 110,
        'default_category' => 1,
        'default_comment_status' => 'open',
        'default_ping_status' => 'open',
        'default_pingback_flag' => 1,
        'posts_per_page' => 10,
        /* translators: default date format, see http://php.net/date */
        'date_format' => __('F j, Y'),
        /* translators: default time format, see http://php.net/date */
        'time_format' => __('g:i a'),
        /* translators: links last updated date format, see http://php.net/date */
        'links_updated_date_format' => __('F j, Y g:i a'),
        'links_recently_updated_prepend' => '<em>',
        'links_recently_updated_append' => '</em>',
        'links_recently_updated_time' => 120,
        'comment_moderation' => 0,
        'moderation_notify' => 1,
        'permalink_structure' => '',
        'gzipcompression' => 0,
        'hack_file' => 0,
        'blog_charset' => 'UTF-8',
        'moderation_keys' => '',
        'active_plugins' => array(),
        'home' => $guessurl,
        'category_base' => '',
        'ping_sites' => 'http://rpc.pingomatic.com/',
        'advanced_edit' => 0,
        'comment_max_links' => 2,
        'gmt_offset' => $gmt_offset,
        // 1.5
        'default_email_category' => 1,
        'recently_edited' => '',
        'template' => $template,
        'stylesheet' => WP_DEFAULT_THEME,
        'comment_whitelist' => 1,
        'blacklist_keys' => '',
        'comment_registration' => 0,
        'html_type' => 'text/html',
        // 1.5.1
        'use_trackback' => 0,
        // 2.0
        'default_role' => 'subscriber',
        'db_version' => $wp_db_version,
        // 2.0.1
        'uploads_use_yearmonth_folders' => $uploads_use_yearmonth_folders,
        'upload_path' => '',
        // 2.1
        'blog_public' => '1',
        'default_link_category' => 2,
        'show_on_front' => 'posts',
        // 2.2
        'tag_base' => '',
        // 2.5
        'show_avatars' => '1',
        'avatar_rating' => 'G',
        'upload_url_path' => '',
        'thumbnail_size_w' => 150,
        'thumbnail_size_h' => 150,
        'thumbnail_crop' => 1,
        'medium_size_w' => 300,
        'medium_size_h' => 300,
        // 2.6
        'avatar_default' => 'mystery',
        // 2.7
        'large_size_w' => 1024,
        'large_size_h' => 1024,
        'image_default_link_type' => 'file',
        'image_default_size' => '',
        'image_default_align' => '',
        'close_comments_for_old_posts' => 0,
        'close_comments_days_old' => 14,
        'thread_comments' => 1,
        'thread_comments_depth' => 5,
        'page_comments' => 0,
        'comments_per_page' => 50,
        'default_comments_page' => 'newest',
        'comment_order' => 'asc',
        'sticky_posts' => array(),
        'widget_categories' => array(),
        'widget_text' => array(),
        'widget_rss' => array(),
        'uninstall_plugins' => array(),
        // 2.8
        'timezone_string' => $timezone_string,
        // 3.0
        'page_for_posts' => 0,
        'page_on_front' => 0,
        // 3.1
        'default_post_format' => 0,
        // 3.5
        'link_manager_enabled' => 0,
    );
    // 3.3
    if (!is_multisite()) {
        $options['initial_db_version'] = (!empty($wp_current_db_version) && $wp_current_db_version < $wp_db_version) ? $wp_current_db_version : $wp_db_version;
    }
    // 3.0 multisite
    if (is_multisite()) {
        /* translators: blog tagline */
        $options['blogdescription'] = sprintf(__('Just another %s site'), get_current_site()->site_name);
        $options['permalink_structure'] = '/%year%/%monthnum%/%day%/%postname%/';
    }
    // Set autoload to no for these options
    $fat_options = array('moderation_keys', 'recently_edited', 'blacklist_keys', 'uninstall_plugins');
    $keys = "'" . implode("', '", array_keys($options)) . "'";
    $existing_options = $wpdb->get_col("SELECT option_name FROM {$wpdb->options} WHERE option_name in ( {$keys} )");
    $insert = '';
    foreach ($options as $option => $value) {
        if (in_array($option, $existing_options)) {
            continue;
        }
        if (in_array($option, $fat_options)) {
            $autoload = 'no';
        } else {
            $autoload = 'yes';
        }
        if (is_array($value)) {
            $value = serialize($value);
        }
        if (!empty($insert)) {
            $insert .= ', ';
        }
        $insert .= $wpdb->prepare("(%s, %s, %s)", $option, $value, $autoload);
    }
    if (!empty($insert)) {
        $wpdb->query("INSERT INTO {$wpdb->options} (option_name, option_value, autoload) VALUES " . $insert);
    }
    // in case it is set, but blank, update "home"
    if (!__get_option('home')) {
        update_option('home', $guessurl);
    }
    // Delete unused options
    $unusedoptions = array('blodotgsping_url', 'bodyterminator', 'emailtestonly', 'phoneemail_separator', 'smilies_directory', 'subjectprefix', 'use_bbcode', 'use_blodotgsping', 'use_phoneemail', 'use_quicktags', 'use_weblogsping', 'weblogs_cache_file', 'use_preview', 'use_htmltrans', 'smilies_directory', 'fileupload_allowedusers', 'use_phoneemail', 'default_post_status', 'default_post_category', 'archive_mode', 'time_difference', 'links_minadminlevel', 'links_use_adminlevels', 'links_rating_type', 'links_rating_char', 'links_rating_ignore_zero', 'links_rating_single_image', 'links_rating_image0', 'links_rating_image1', 'links_rating_image2', 'links_rating_image3', 'links_rating_image4', 'links_rating_image5', 'links_rating_image6', 'links_rating_image7', 'links_rating_image8', 'links_rating_image9', 'weblogs_cacheminutes', 'comment_allowed_tags', 'search_engine_friendly_urls', 'default_geourl_lat', 'default_geourl_lon', 'use_default_geourl', 'weblogs_xml_url', 'new_users_can_blog', '_wpnonce', '_wp_http_referer', 'Update', 'action', 'rich_editing', 'autosave_interval', 'deactivated_plugins', 'can_compress_scripts', 'page_uris', 'update_core', 'update_plugins', 'update_themes', 'doing_cron', 'random_seed', 'rss_excerpt_length', 'secret', 'use_linksupdate', 'default_comment_status_page', 'wporg_popular_tags', 'what_to_show', 'rss_language', 'language', 'enable_xmlrpc', 'enable_app', 'embed_autourls', 'default_post_edit_rows');
    foreach ($unusedoptions as $option) {
        delete_option($option);
    }
    // delete obsolete magpie stuff
    $wpdb->query("DELETE FROM {$wpdb->options} WHERE option_name REGEXP '^rss_[0-9a-f]{32}(_ts)?\$'");
    // Deletes all expired transients.
    // The multi-table delete syntax is used to delete the transient record from table a,
    // and the corresponding transient_timeout record from table b.
    $time = time();
    $wpdb->query("DELETE a, b FROM {$wpdb->options} a, {$wpdb->options} b WHERE\n\t        a.option_name LIKE '\\_transient\\_%' AND\n\t        a.option_name NOT LIKE '\\_transient\\_timeout\\_%' AND\n\t        b.option_name = CONCAT( '_transient_timeout_', SUBSTRING( a.option_name, 12 ) )\n\t        AND b.option_value < {$time}");
    if (is_main_site() && is_main_network()) {
        $wpdb->query("DELETE a, b FROM {$wpdb->options} a, {$wpdb->options} b WHERE\n\t\t\ta.option_name LIKE '\\_site\\_transient\\_%' AND\n\t\t\ta.option_name NOT LIKE '\\_site\\_transient\\_timeout\\_%' AND\n\t\t\tb.option_name = CONCAT( '_site_transient_timeout_', SUBSTRING( a.option_name, 17 ) )\n\t\t\tAND b.option_value < {$time}");
    }
}

WordPress Version: 3.7

/**
 * Create WordPress options and set the default values.
 *
 * @since 1.5.0
 * @uses $wpdb
 * @uses $wp_db_version
 */
function populate_options()
{
    global $wpdb, $wp_db_version, $current_site, $wp_current_db_version;
    $guessurl = wp_guess_url();
    do_action('populate_options');
    if (ini_get('safe_mode')) {
        // Safe mode can break mkdir() so use a flat structure by default.
        $uploads_use_yearmonth_folders = 0;
    } else {
        $uploads_use_yearmonth_folders = 1;
    }
    $template = WP_DEFAULT_THEME;
    // If default theme is a child theme, we need to get its template
    $theme = wp_get_theme($template);
    if (!$theme->errors()) {
        $template = $theme->get_template();
    }
    $timezone_string = '';
    $gmt_offset = 0;
    /* translators: default GMT offset or timezone string. Must be either a valid offset (-12 to 14)
    	   or a valid timezone string (America/New_York). See http://us3.php.net/manual/en/timezones.php
    	   for all timezone strings supported by PHP.
    	*/
    $offset_or_tz = _x('0', 'default GMT offset or timezone string');
    if (is_numeric($offset_or_tz)) {
        $gmt_offset = $offset_or_tz;
    } elseif ($offset_or_tz && in_array($offset_or_tz, timezone_identifiers_list())) {
        $timezone_string = $offset_or_tz;
    }
    $options = array(
        'siteurl' => $guessurl,
        'blogname' => __('My Site'),
        /* translators: blog tagline */
        'blogdescription' => __('Just another WordPress site'),
        'users_can_register' => 0,
        'admin_email' => '[email protected]',
        /* translators: default start of the week. 0 = Sunday, 1 = Monday */
        'start_of_week' => _x('1', 'start of week'),
        'use_balanceTags' => 0,
        'use_smilies' => 1,
        'require_name_email' => 1,
        'comments_notify' => 1,
        'posts_per_rss' => 10,
        'rss_use_excerpt' => 0,
        'mailserver_url' => 'mail.example.com',
        'mailserver_login' => '[email protected]',
        'mailserver_pass' => 'password',
        'mailserver_port' => 110,
        'default_category' => 1,
        'default_comment_status' => 'open',
        'default_ping_status' => 'open',
        'default_pingback_flag' => 1,
        'posts_per_page' => 10,
        /* translators: default date format, see http://php.net/date */
        'date_format' => __('F j, Y'),
        /* translators: default time format, see http://php.net/date */
        'time_format' => __('g:i a'),
        /* translators: links last updated date format, see http://php.net/date */
        'links_updated_date_format' => __('F j, Y g:i a'),
        'links_recently_updated_prepend' => '<em>',
        'links_recently_updated_append' => '</em>',
        'links_recently_updated_time' => 120,
        'comment_moderation' => 0,
        'moderation_notify' => 1,
        'permalink_structure' => '',
        'gzipcompression' => 0,
        'hack_file' => 0,
        'blog_charset' => 'UTF-8',
        'moderation_keys' => '',
        'active_plugins' => array(),
        'home' => $guessurl,
        'category_base' => '',
        'ping_sites' => 'http://rpc.pingomatic.com/',
        'advanced_edit' => 0,
        'comment_max_links' => 2,
        'gmt_offset' => $gmt_offset,
        // 1.5
        'default_email_category' => 1,
        'recently_edited' => '',
        'template' => $template,
        'stylesheet' => WP_DEFAULT_THEME,
        'comment_whitelist' => 1,
        'blacklist_keys' => '',
        'comment_registration' => 0,
        'html_type' => 'text/html',
        // 1.5.1
        'use_trackback' => 0,
        // 2.0
        'default_role' => 'subscriber',
        'db_version' => $wp_db_version,
        // 2.0.1
        'uploads_use_yearmonth_folders' => $uploads_use_yearmonth_folders,
        'upload_path' => '',
        // 2.1
        'blog_public' => '1',
        'default_link_category' => 2,
        'show_on_front' => 'posts',
        // 2.2
        'tag_base' => '',
        // 2.5
        'show_avatars' => '1',
        'avatar_rating' => 'G',
        'upload_url_path' => '',
        'thumbnail_size_w' => 150,
        'thumbnail_size_h' => 150,
        'thumbnail_crop' => 1,
        'medium_size_w' => 300,
        'medium_size_h' => 300,
        // 2.6
        'avatar_default' => 'mystery',
        // 2.7
        'large_size_w' => 1024,
        'large_size_h' => 1024,
        'image_default_link_type' => 'file',
        'image_default_size' => '',
        'image_default_align' => '',
        'close_comments_for_old_posts' => 0,
        'close_comments_days_old' => 14,
        'thread_comments' => 1,
        'thread_comments_depth' => 5,
        'page_comments' => 0,
        'comments_per_page' => 50,
        'default_comments_page' => 'newest',
        'comment_order' => 'asc',
        'sticky_posts' => array(),
        'widget_categories' => array(),
        'widget_text' => array(),
        'widget_rss' => array(),
        'uninstall_plugins' => array(),
        // 2.8
        'timezone_string' => $timezone_string,
        // 3.0
        'page_for_posts' => 0,
        'page_on_front' => 0,
        // 3.1
        'default_post_format' => 0,
        // 3.5
        'link_manager_enabled' => 0,
    );
    // 3.3
    if (!is_multisite()) {
        $options['initial_db_version'] = (!empty($wp_current_db_version) && $wp_current_db_version < $wp_db_version) ? $wp_current_db_version : $wp_db_version;
    }
    // 3.0 multisite
    if (is_multisite()) {
        /* translators: blog tagline */
        $options['blogdescription'] = sprintf(__('Just another %s site'), $current_site->site_name);
        $options['permalink_structure'] = '/%year%/%monthnum%/%day%/%postname%/';
    }
    // Set autoload to no for these options
    $fat_options = array('moderation_keys', 'recently_edited', 'blacklist_keys', 'uninstall_plugins');
    $keys = "'" . implode("', '", array_keys($options)) . "'";
    $existing_options = $wpdb->get_col("SELECT option_name FROM {$wpdb->options} WHERE option_name in ( {$keys} )");
    $insert = '';
    foreach ($options as $option => $value) {
        if (in_array($option, $existing_options)) {
            continue;
        }
        if (in_array($option, $fat_options)) {
            $autoload = 'no';
        } else {
            $autoload = 'yes';
        }
        if (is_array($value)) {
            $value = serialize($value);
        }
        if (!empty($insert)) {
            $insert .= ', ';
        }
        $insert .= $wpdb->prepare("(%s, %s, %s)", $option, $value, $autoload);
    }
    if (!empty($insert)) {
        $wpdb->query("INSERT INTO {$wpdb->options} (option_name, option_value, autoload) VALUES " . $insert);
    }
    // in case it is set, but blank, update "home"
    if (!__get_option('home')) {
        update_option('home', $guessurl);
    }
    // Delete unused options
    $unusedoptions = array('blodotgsping_url', 'bodyterminator', 'emailtestonly', 'phoneemail_separator', 'smilies_directory', 'subjectprefix', 'use_bbcode', 'use_blodotgsping', 'use_phoneemail', 'use_quicktags', 'use_weblogsping', 'weblogs_cache_file', 'use_preview', 'use_htmltrans', 'smilies_directory', 'fileupload_allowedusers', 'use_phoneemail', 'default_post_status', 'default_post_category', 'archive_mode', 'time_difference', 'links_minadminlevel', 'links_use_adminlevels', 'links_rating_type', 'links_rating_char', 'links_rating_ignore_zero', 'links_rating_single_image', 'links_rating_image0', 'links_rating_image1', 'links_rating_image2', 'links_rating_image3', 'links_rating_image4', 'links_rating_image5', 'links_rating_image6', 'links_rating_image7', 'links_rating_image8', 'links_rating_image9', 'weblogs_cacheminutes', 'comment_allowed_tags', 'search_engine_friendly_urls', 'default_geourl_lat', 'default_geourl_lon', 'use_default_geourl', 'weblogs_xml_url', 'new_users_can_blog', '_wpnonce', '_wp_http_referer', 'Update', 'action', 'rich_editing', 'autosave_interval', 'deactivated_plugins', 'can_compress_scripts', 'page_uris', 'update_core', 'update_plugins', 'update_themes', 'doing_cron', 'random_seed', 'rss_excerpt_length', 'secret', 'use_linksupdate', 'default_comment_status_page', 'wporg_popular_tags', 'what_to_show', 'rss_language', 'language', 'enable_xmlrpc', 'enable_app', 'embed_autourls', 'default_post_edit_rows');
    foreach ($unusedoptions as $option) {
        delete_option($option);
    }
    // delete obsolete magpie stuff
    $wpdb->query("DELETE FROM {$wpdb->options} WHERE option_name REGEXP '^rss_[0-9a-f]{32}(_ts)?\$'");
    // Deletes all expired transients.
    // The multi-table delete syntax is used to delete the transient record from table a,
    // and the corresponding transient_timeout record from table b.
    $time = time();
    $wpdb->query("DELETE a, b FROM {$wpdb->options} a, {$wpdb->options} b WHERE\n\t        a.option_name LIKE '\\_transient\\_%' AND\n\t        a.option_name NOT LIKE '\\_transient\\_timeout\\_%' AND\n\t        b.option_name = CONCAT( '_transient_timeout_', SUBSTRING( a.option_name, 12 ) )\n\t        AND b.option_value < {$time}");
    if (is_main_site() && is_main_network()) {
        $wpdb->query("DELETE a, b FROM {$wpdb->options} a, {$wpdb->options} b WHERE\n\t\t\ta.option_name LIKE '\\_site\\_transient\\_%' AND\n\t\t\ta.option_name NOT LIKE '\\_site\\_transient\\_timeout\\_%' AND\n\t\t\tb.option_name = CONCAT( '_site_transient_timeout_', SUBSTRING( a.option_name, 17 ) )\n\t\t\tAND b.option_value < {$time}");
    }
}