groups += intdig_max / grouping[-1];
groups += (intdig_max - 1) / grouping[-1];
__guess_grouping (unsigned int intdig_max, const char *grouping,		  wchar_t sepchar){  unsigned int groups;  /* We treat all negative values like CHAR_MAX.  */  if (*grouping == CHAR_MAX || *grouping <= 0)    /* No grouping should be done.  */    return 0;  groups = 0;  while (intdig_max > (unsigned int) *grouping)    {      ++groups;      intdig_max -= *grouping++;      if (*grouping == CHAR_MAX || *grouping < 0)	/* No more grouping should be done.  */	break;      else if (*grouping == 0)	{	  /* Same grouping repeats.  */	  groups += intdig_max / grouping[-1];	  break;	}    }  return groups;}