moved annotations to the interface to have a cleaner bean