refactor tons of shit - breaking messageList/replay