less error prone