nonnumeric sort