void ensureOwnTermBytes(){
  NRCell cell0=cellsByLevel[0];
  if (cell0.termBuf == null)   return;
  System.arraycopy(term.bytes,term.offset,cell0.termBuf,0,term.length);
  term.bytes=cell0.termBuf;
  term.offset=0;
  cell0.termBuf=null;
}

void ensureOwnTermBytes ( ) { NRCell cell0 = cellsByLevel [ 0 ] ; if ( cell0 . termBuf == null ) return ; System . arraycopy ( term . bytes , term . offset , cell0 . termBuf , 0 , term . length ) ; term . bytes = cell0 . termBuf ; term . offset = 0 ; cell0 . termBuf = null ; }
ensure we own term . bytes so that it ' s safe to modify . we detect via a kluge in which cellsbylevel [ 0 ] . termbuf is non - null , which is a pre - allocated for use to replace term . bytes .
