refactor — simpler substitution, will scale better