1       subroutine factrb ( w, ipivot, d, nrow, ncol, last, iflag )
    33       integer ipivot(nrow),ncol,last,iflag, i,ipivi,ipivk,j,k,kp1
    34       double precision w(nrow,ncol),d(nrow),
    35      & awikdi,colmax,ratio,rowmax
    41     9       rowmax = dmax1(rowmax, dabs(w(i,j)))
    42          if (rowmax .eq. 0.0d+00)            
go to 999
    53          if (k .eq. nrow)               
go to 21
    56          colmax = dabs(w(ipivk,k))/d(ipivk)
    60             awikdi = dabs(w(ipivi,k))/d(ipivi)
    61             if (awikdi .le. colmax)     
go to 15
    65          if (j .eq. k)                  
go to 16
    73          if (dabs(w(ipivk,k))+d(ipivk) .le. d(ipivk))
    81             w(ipivi,k) = w(ipivi,k)/w(ipivk,k)
    84    20          w(ipivi,j) = ratio*w(ipivk,j) + w(ipivi,j)
    87          if (k .le. last)               
go to 11
    91    21 
if( dabs(w(ipivk,nrow))+d(ipivk) .gt. d(ipivk) )
 subroutine factrb(w, ipivot, d, nrow, ncol, last, iflag)