Cleaned up is_ws() & is_num()