added message struct