added support for @Preferences