Why just not `AbstractMessageBuilder` ?