better performance with grouping on words (may break other situations, warning