if (!**stringp) {			 *stringp = 0;			 return 0;			 }
PUBLIC char *LYstrsep ARGS2(	char **,	stringp,	CONST char *,	delim){    char *tmp, *out;    if (!stringp || !*stringp)		/* nothing to do? */	return 0;			/* then don't fall on our faces */    if (!**stringp) {			/* empty string: */	*stringp = 0;			/* let caller see he's done; */	return 0;			/* no tokens in an empty string */    }    out = *stringp;			/* save the start of the string */    tmp = strpbrk(*stringp, delim);    if (tmp) {	*tmp = '\0';			/* terminate the substring with \0 */	*stringp = ++tmp;		/* point at the next substring */    }    else *stringp = 0;			/* this was the last substring: */					/* let caller see he's done */    return out;}