added is_digit()