Better int/float validation