custom message writer