/**
* Bootstraps MultilingualPress.
*
* @since 3.0.0
* @wp-hook plugins_loaded
*
* @return bool Whether or not MultilingualPress was bootstrapped successfully.
*/
function bootstrap()
{
$container = new AddOnlyContainer();
$container->share('multilingualpress.properties', new ImmutablePluginProperties(__FILE__));
$multilingualpress = new MultilingualPress($container);
$multilingualpress->register_service_provider(new CoreServiceProvider())->register_service_provider(new APIServiceProvider())->register_service_provider(new AssetServiceProvider())->register_service_provider(new DatabaseServiceProvider())->register_service_provider(new FactoryProvider())->register_service_provider(new InstallationServiceProvider())->register_service_provider(new Module\AlternativeLanguageTitleInAdminBar\ServiceProvider())->register_service_provider(new Module\CustomPostTypeSupport\ServiceProvider())->register_service_provider(new Module\Trasher\ServiceProvider())->register_service_provider(new Module\UserAdminLanguage\ServiceProvider())->register_service_provider(new SiteDuplicationServiceProvider())->register_service_provider(new Widget\WidgetServiceProvider());
/**
* MultilingualPress functions.
*/
require_once __DIR__ . '/src/functions.php';
return $multilingualpress->bootstrap();
}