adding new message types and using them in various operations