Recode to support external modules