text: #include	"lib9.h"
  int
  getfields(char *str, char **args, int max, int mflag, char *set)
  {
  	Rune r;
  	int nr, intok, narg;
  
  	if(max <= 0)
  		return 0;
  
  	narg = 0;
  	args[narg] = str;
  	if(!mflag)
  		narg++;
  	intok = 0;
  	for(;; str += nr) {
  		nr = chartorune(&r, str);
  		if(r == 0)
  			break;
  		if(utfrune(set, r)) {
  			if(narg >= max)
  				break;
  			*str = 0;
  			intok = 0;
  			args[narg] = str + nr;
  			if(!mflag)
  				narg++;
  		} else {
  			if(!intok && mflag)
  				narg++;
  			intok = 1;
  		}
  	}
  	return narg;
  }
  