oh and also didn't call pre() func