working through substitution