substitution method