/**
 * Populate the $wpmdbpro_media_files global with an instance of the WPMDBPro_Media_Files class and return it.
 *
 * @param bool $cli Running in WP-CLI environment.
 *
 * @return WPMDBPro_Media_Files The one true global instance of the WPMDBPro_Media_Files class.
 */
function wp_migrate_db_pro_media_files($cli = false)
{
    global $wpmdbpro_media_files;
    if (!class_exists('WPMDBPro_Addon')) {
        return false;
    }
    // Allows hooks to bypass the regular admin / ajax checks to force load the Media Files addon (required for the CLI addon)
    $force_load = apply_filters('wp_migrate_db_pro_media_files_force_load', false);
    if (false === $force_load && !is_null($wpmdbpro_media_files)) {
        return $wpmdbpro_media_files;
    }
    if (false === $force_load && (!function_exists('wp_migrate_db_pro_loaded') || !wp_migrate_db_pro_loaded())) {
        return false;
    }
    load_plugin_textdomain('wp-migrate-db-pro-media-files', false, dirname(plugin_basename(__FILE__)) . '/languages/');
    require_once dirname(__FILE__) . '/class/wpmdbpro-media-files.php';
    require_once dirname(__FILE__) . '/class/wpmdbpro-media-files-base.php';
    require_once dirname(__FILE__) . '/class/wpmdbpro-media-files-local.php';
    require_once dirname(__FILE__) . '/class/wpmdbpro-media-files-remote.php';
    if ($cli) {
        require_once dirname(__FILE__) . '/class/cli/wpmdbpro-media-files-cli.php';
        require_once dirname(__FILE__) . '/class/cli/wpmdbpro-media-files-cli-bar.php';
        $wpmdbpro_media_files = new WPMDBPro_Media_Files_CLI(__FILE__);
    } else {
        $wpmdbpro_media_files = new WPMDBPro_Media_Files(__FILE__);
    }
    return $wpmdbpro_media_files;
}
/**
 * Populate the $wpmdbpro_media_files global with an instance of the WPMDBPro_Media_Filesclass and return it.
 *
 * @return WPMDBPro_Media_Files The one true global instance of the WPMDBPro_Media_Files class.
 */
function wp_migrate_db_pro_media_files()
{
    global $wpmdbpro_media_files;
    if (!is_null($wpmdbpro_media_files)) {
        return $wpmdbpro_media_files;
    }
    // Allows hooks to bypass the regular admin / ajax checks to force load the Media Files addon (required for the CLI addon)
    $force_load = apply_filters('wp_migrate_db_pro_media_files_force_load', false);
    if (false === $force_load && (!function_exists('wp_migrate_db_pro_loaded') || !wp_migrate_db_pro_loaded())) {
        return false;
    }
    require_once dirname(__FILE__) . '/class/wpmdbpro-media-files.php';
    $wpmdbpro_media_files = new WPMDBPro_Media_Files(__FILE__);
    return $wpmdbpro_media_files;
}
/**
 * Populate the $wpmdbpro_multisite_tools global with an instance of the WPMDBPro_Multisite_Tools class and return it.
 *
 * @param bool $cli
 *
 * @return WPMDBPro_Multisite_Tools The one true global instance of the WPMDBPro_Multisite_Tools class.
 */
function wp_migrate_db_pro_multisite_tools($cli = false)
{
    global $wpmdbpro_multisite_tools;
    if (!class_exists('WPMDBPro_Addon')) {
        return false;
    }
    // Allows hooks to bypass the regular admin / ajax checks to force load the addon (required for the CLI addon).
    $force_load = apply_filters('wp_migrate_db_pro_multisite_tools_force_load', false);
    if (false === $force_load && !is_null($wpmdbpro_multisite_tools)) {
        return $wpmdbpro_multisite_tools;
    }
    if (false === $force_load && (!function_exists('wp_migrate_db_pro_loaded') || !wp_migrate_db_pro_loaded() || is_multisite() && wp_is_large_network())) {
        return false;
    }
    load_plugin_textdomain('wp-migrate-db-pro-multisite-tools', false, dirname(plugin_basename(__FILE__)) . '/languages/');
    require_once dirname(__FILE__) . '/class/wpmdbpro-multisite-tools.php';
    if ($cli) {
        require_once dirname(__FILE__) . '/class/cli/wpmdbpro-multisite-tools-cli.php';
        $wpmdbpro_multisite_tools = new WPMDBPro_Multisite_Tools_CLI(__FILE__);
    } else {
        $wpmdbpro_multisite_tools = new WPMDBPro_Multisite_Tools(__FILE__);
    }
    return $wpmdbpro_multisite_tools;
}