refactor messages #9
close #15