simplified substitution