better alphanumeric handling