add @Singleton annotation