working on message parser