CELLWL(S←,F←,I←,V,n,s,B)
[Cell write, linear. S← is either a sample point for a cell c in
r-dimensional space, for some r>=1, or NULL.
F← is either or a defining formula for c, or NULL.  I← is
a cell index for c.  V is a variable list of length r.  n is a 
nonnegative @beta -digit@. s is a @beta -digit@.  
The cell index and dimension of c are written in the output stream.
If S←>NULL and s>0, then an exact description of the sample
point of c is written in the output stream. If S←>NULL and n>0, 
a decimal approximation to the sample point of c is written
with n decimal digits following the decimal point of each coordinate. 
If F←~=NULL, the defining formula of c is written.
B is the r-variate integral polynomial basis of the cad.
The output buffer is emptied beforehand and afterwards.]
     const NULL=0, UNDEF=-1.
     safe M,b,J,d.
(1)  d=CELDIM(I←);  r=length(V);
     CLOUT("BEGINCELL");  emptob;
     clout("index");  emptob;
     owrite(I←);  emptob;
     if S←>NULL then { 
     clout("BASISSIGNATURE");  emptob;
     S^^=SIGNTR(r,B,S←); SGNWR(S^^);  emptob };
     clout("samplepoint");  emptob;
     if S←>NULL then { 
     clout("PRIMITIVESAMPLEPOINT");  emptob;
     S1=S←  ADV3(S1;M,b,J,S1) }
     else clout("nilsamplepoint");
     EMPTOB;
     if s>0&S←>NULL then APWRL(LIST3(M,b,J));
     if F←>NULL then { 
     clout("definingformula");  emptob;
     QFFWL(F←,V); emptob };
     CLOUT("ENDCELL");  emptob;
     blines(1);  return..