if (++i >= tlength) { return null;  } retval = New(charAt(i)); return this; }
if (retval == null) { int pos = (int) oldpos.value; vString subj = (vString) k$subject.self.Deref(); if (matches(subj, pos - 1)) { k$pos.self.SafeAssign(vInteger.New(pos + tlength)); retval = vString.New(subj, pos, pos+tlength); return this; } else { return null; } } else { k$pos.self.Assign(oldpos); return null; } }
	public vDescriptor resume() {	    if (++i >= tlength) {		return null; /*FAIL*/	    }	    retval = New(charAt(i));	    return this;	}