handle precision and scale