Combine hook implementations and add preprocess.