static DF1(jtgsuffix){A h,*hv,z,*zv;I m,n,r; RZ(w); if(jt->rank&&jt->rank[1]<AR(w)){r=jt->rank[1]; jt->rank=0; R rank1ex(w,self,jt->rank[1],jtgsuffix);} jt->rank=0; n=IC(w); h=VAV(self)->h; hv=AAV(h); m=AN(h); GATV(z,BOX,n,1,0); zv=AAV(z); DO(n, RZ(zv[i]=df1(drop(sc(i),w),hv[i%m])););
static DF1(rank1) { DECLF; A h=sv->h; I m,*v=AV(h),wr; RZ(w); wr=AR(w); m=efr(wr,v[0]); R m<wr?rank1ex(w,fs,m,f1):CALL1(f1,w,fs); }
static DF1(cons1) { V*sv=VAV(self); RZ(w); R rank1ex(w,self,efr(AR(w),*AV(sv->h)),cons1a); }
static DF1(jtsuffix){DECLF;I r; RZ(w); if(jt->rank&&jt->rank[1]<AR(w)){r=jt->rank[1]; jt->rank=0; R rank1ex(w,self,r,jtsuffix);} jt->rank=0; R eachl(IX(IC(w)),w,atop(fs,ds(CDROP))); } /* f\."r w for general f */
static F1(preparse){A lab,s,*sv,t,*tv,y,*yv;I i,j=0,n; RZ(w); RZ(t=every(BOX&AT(w)?w:rank1ex(w,0L,1L,box),tokens)); R box(t); }