add DictionaryField & small refactoring
set extra to message_annotation