updated message parseing