This is pretty weird - maybe you could have a body() function that just returns the body, and a bodyForReply() function that yields this result?