static function ( MediaWikiServices $services ): CommentParser { return new CommentParser( $services->getMainConfig(), $services->getContentLanguage(), $services->getLanguageConverterFactory(), $services->getService( 'DiscussionTools.LanguageData' ), $services->getTitleParser() ); }, 'DiscussionTools.LanguageData' => static function ( MediaWikiServices $services ): LanguageData { return new LanguageData( $services->getMainConfig(), $services->getContentLanguage(), $services->getLanguageConverterFactory(), $services->getSpecialPageFactory() ); }, 'DiscussionTools.SubscriptionStore' => static function ( MediaWikiServices $services ): SubscriptionStore { return new SubscriptionStore( $services->getConfigFactory(), $services->getDBLoadBalancerFactory(), $services->getReadOnlyMode(), $services->getUserFactory() ); }, 'DiscussionTools.ThreadItemStore' => static function ( MediaWikiServices $services ): ThreadItemStore { return new ThreadItemStore( $services->getConfigFactory(), $services->getDBLoadBalancerFactory(), $services->getReadOnlyMode(), $services->getPageStore(), $services->getRevisionStore(), $services->getTitleFormatter(), $services->getActorStore() ); }, 'DiscussionTools.ThreadItemFormatter' => static function ( MediaWikiServices $services ): ThreadItemFormatter { return new ThreadItemFormatter( $services->getTitleFormatter(), $services->getLinkRenderer() ); }, ];