Separate the "early" and the "normal" part of the macro.