Substitution should just substitute, not optimise