generate message list