making sure substitution actually happens