first step of code revue
code review: adding message info, code restructuration