1       subroutine   concmp   ( cmbase, rnbase, cnbase, vindex, nrows ,
 
    2      $                        ncols , nvrows, nvcols, rowstr, colidx,
 
    3      $                        colstr, rowidx, predrw, nextrw, predcl,    ,
 
    4      $                        nextcl, ctab  , rtab  , colmrk, rowmrk,
 
    5      $                        cmclad, cmrwad, cnto  , rnto  , numcmp ) 
 
   91       integer         cmbase, rnbase, cnbase, vindex, nrows , ncols ,
 
   92      $                nvrows, nvcols, numcmp
 
   94       integer         colstr (nrows+1), rowstr (ncols+1), rowidx (*),
 
   97       integer         predrw (ncols), nextrw (nrows),
 
   98      $                predcl(nrows), nextcl(ncols),
 
   99      $                cmclad(ncols), cmrwad(nrows),
 
  100      $                colmrk(ncols), rowmrk(nrows),
 
  102      $                cnto(ncols) , rnto(nrows)
 
  108       integer         col, compn, p, cn, rn, row, xcol, xrow
 
  129          if  ( rowmrk(p) .eq. vindex )  
then 
  139             ctab(numcmp)            = cnbase + 1 + cn
 
  140             rtab(numcmp)            = rnbase + 1 + rn
 
  141             cmclad(cmbase + numcmp) = ctab(numcmp)
 
  142             cmrwad(cmbase + numcmp) = rtab(numcmp)
 
  145             nextrw(row)             = rowstr(row)
 
  154  100        
do 200 xcol = nextrw(row), rowstr(row + 1) -1
 
  157                if  ( colmrk(col) .eq. vindex )  
then 
  165                   nextrw(row) = xcol + 1
 
  168                   nextcl(col) = colstr(col)
 
  179             nextrw(row) = rowstr(row + 1)
 
  181             if  ( col .eq. 0 )  go to 500
 
  189  300        
do 400 xrow = nextcl(col), colstr(col + 1) - 1
 
  191                if  ( rowmrk(row) .eq. vindex )  
then 
  199                   nextcl(col) = xrow + 1
 
  202                   nextrw(row) = rowstr(row)
 
  212             nextcl(col) = colstr(col + 1)
 
  225       cmclad(cmbase + 1 + numcmp)  = cnbase + 1 + nvcols
 
  226       cmrwad(cmbase + 1 + numcmp)  = rnbase + 1 + nvrows
 
  228       do 600 col = 1, ncols
 
  230    if  ( compn .gt. 0 )  
then 
  231             cnto(ctab(compn)) = col
 
  232             ctab(compn)        = ctab(compn) + 1
 
  237       do 700 row = 1, nrows
 
  239    if  ( compn .gt. 0 ) 
then 
  240             rnto(rtab(compn)) = row
 
  241             rtab(compn)        = rtab(compn) + 1
 
subroutine concmp(cmbase, rnbase, cnbase, vindex, nrows, ncols, nvrows, nvcols, rowstr, colidx, colstr, rowidx, predrw, nextrw, predcl,, nextcl, ctab, rtab, colmrk, rowmrk, cmclad, cmrwad, cnto, rnto, numcmp)