71      parameter( one = 1.0d+0 )
 
   76      INTEGER            I, INFO, J, N_ERR_BNDS, NPARAMS
 
   77      DOUBLE PRECISION   RCOND, RPVGRW, BERR
 
   81      DOUBLE PRECISION   C( NMAX ), R( NMAX ), R1( NMAX ), R2( NMAX ),
 
   82     $                   RF( NMAX ), RW( NMAX ), ERR_BNDS_N( NMAX, 3 ),
 
   83     $                   ERR_BNDS_C( NMAX, 3 ), PARAMS( 1 )
 
   84      COMPLEX*16         A( NMAX, NMAX ), AF( NMAX, NMAX ), B( NMAX ),
 
   85     $                   E( NMAX ), W( 2*NMAX ), X( NMAX )
 
  105      COMMON             / infoc / infot, nout, ok, lerr
 
  106      COMMON             / srnamc / srnamt
 
  109      INTRINSIC          dble, dcmplx
 
  114      WRITE( nout, fmt = * )
 
  121            a( i, j ) = dcmplx( 1.d0 / dble( i+j ),
 
  122     $                  -1.d0 / dble( i+j ) )
 
  123            af( i, j ) = dcmplx( 1.d0 / dble( i+j ),
 
  124     $                   -1.d0 / dble( i+j ) )
 
  139      IF( lsamen( 2, c2, 
'GE' ) ) 
THEN 
  145         CALL zgesv( -1, 0, a, 1, ip, b, 1, info )
 
  146         CALL chkxer( 
'ZGESV ', infot, nout, lerr, ok )
 
  148         CALL zgesv( 0, -1, a, 1, ip, b, 1, info )
 
  149         CALL chkxer( 
'ZGESV ', infot, nout, lerr, ok )
 
  151         CALL zgesv( 2, 1, a, 1, ip, b, 2, info )
 
  152         CALL chkxer( 
'ZGESV ', infot, nout, lerr, ok )
 
  154         CALL zgesv( 2, 1, a, 2, ip, b, 1, info )
 
  155         CALL chkxer( 
'ZGESV ', infot, nout, lerr, ok )
 
  161         CALL zgesvx( 
'/', 
'N', 0, 0, a, 1, af, 1, ip, eq, r, c, b, 1,
 
  162     $                x, 1, rcond, r1, r2, w, rw, info )
 
  163         CALL chkxer( 
'ZGESVX', infot, nout, lerr, ok )
 
  165         CALL zgesvx( 
'N', 
'/', 0, 0, a, 1, af, 1, ip, eq, r, c, b, 1,
 
  166     $                x, 1, rcond, r1, r2, w, rw, info )
 
  167         CALL chkxer( 
'ZGESVX', infot, nout, lerr, ok )
 
  169         CALL zgesvx( 
'N', 
'N', -1, 0, a, 1, af, 1, ip, eq, r, c, b, 1,
 
  170     $                x, 1, rcond, r1, r2, w, rw, info )
 
  171         CALL chkxer( 
'ZGESVX', infot, nout, lerr, ok )
 
  173         CALL zgesvx( 
'N', 
'N', 0, -1, a, 1, af, 1, ip, eq, r, c, b, 1,
 
  174     $                x, 1, rcond, r1, r2, w, rw, info )
 
  175         CALL chkxer( 
'ZGESVX', infot, nout, lerr, ok )
 
  177         CALL zgesvx( 
'N', 
'N', 2, 1, a, 1, af, 2, ip, eq, r, c, b, 2,
 
  178     $                x, 2, rcond, r1, r2, w, rw, info )
 
  179         CALL chkxer( 
'ZGESVX', infot, nout, lerr, ok )
 
  181         CALL zgesvx( 
'N', 
'N', 2, 1, a, 2, af, 1, ip, eq, r, c, b, 2,
 
  182     $                x, 2, rcond, r1, r2, w, rw, info )
 
  183         CALL chkxer( 
'ZGESVX', infot, nout, lerr, ok )
 
  186         CALL zgesvx( 
'F', 
'N', 0, 0, a, 1, af, 1, ip, eq, r, c, b, 1,
 
  187     $                x, 1, rcond, r1, r2, w, rw, info )
 
  188         CALL chkxer( 
'ZGESVX', infot, nout, lerr, ok )
 
  191         CALL zgesvx( 
'F', 
'N', 1, 0, a, 1, af, 1, ip, eq, r, c, b, 1,
 
  192     $                x, 1, rcond, r1, r2, w, rw, info )
 
  193         CALL chkxer( 
'ZGESVX', infot, nout, lerr, ok )
 
  196         CALL zgesvx( 
'F', 
'N', 1, 0, a, 1, af, 1, ip, eq, r, c, b, 1,
 
  197     $                x, 1, rcond, r1, r2, w, rw, info )
 
  198         CALL chkxer( 
'ZGESVX', infot, nout, lerr, ok )
 
  200         CALL zgesvx( 
'N', 
'N', 2, 1, a, 2, af, 2, ip, eq, r, c, b, 1,
 
  201     $                x, 2, rcond, r1, r2, w, rw, info )
 
  202         CALL chkxer( 
'ZGESVX', infot, nout, lerr, ok )
 
  204         CALL zgesvx( 
'N', 
'N', 2, 1, a, 2, af, 2, ip, eq, r, c, b, 2,
 
  205     $                x, 1, rcond, r1, r2, w, rw, info )
 
  206         CALL chkxer( 
'ZGESVX', infot, nout, lerr, ok )
 
  214         CALL zgesvxx( 
'/', 
'N', 0, 0, a, 1, af, 1, ip, eq, r, c, b,
 
  215     $                1, x, 1, rcond, rpvgrw, berr, n_err_bnds,
 
  216     $                err_bnds_n, err_bnds_c, nparams, params, w, rw,
 
  218         CALL chkxer( 
'ZGESVXX', infot, nout, lerr, ok )
 
  220         CALL zgesvxx( 
'N', 
'/', 0, 0, a, 1, af, 1, ip, eq, r, c, b,
 
  221     $                1, x, 1, rcond, rpvgrw, berr, n_err_bnds,
 
  222     $                err_bnds_n, err_bnds_c, nparams, params, w, rw,
 
  224         CALL chkxer( 
'ZGESVXX', infot, nout, lerr, ok )
 
  226         CALL zgesvxx( 
'N', 
'N', -1, 0, a, 1, af, 1, ip, eq, r, c, b,
 
  227     $                1, x, 1, rcond, rpvgrw, berr, n_err_bnds,
 
  228     $                err_bnds_n, err_bnds_c, nparams, params, w, rw,
 
  230         CALL chkxer( 
'ZGESVXX', infot, nout, lerr, ok )
 
  232         CALL zgesvxx( 
'N', 
'N', 0, -1, a, 1, af, 1, ip, eq, r, c, b,
 
  233     $                1, x, 1, rcond, rpvgrw, berr, n_err_bnds,
 
  234     $                err_bnds_n, err_bnds_c, nparams, params, w, rw,
 
  236         CALL chkxer( 
'ZGESVXX', infot, nout, lerr, ok )
 
  238         CALL zgesvxx( 
'N', 
'N', 2, 1, a, 1, af, 2, ip, eq, r, c, b,
 
  239     $                2, x, 2, rcond, rpvgrw, berr, n_err_bnds,
 
  240     $                err_bnds_n, err_bnds_c, nparams, params, w, rw,
 
  242         CALL chkxer( 
'ZGESVXX', infot, nout, lerr, ok )
 
  244         CALL zgesvxx( 
'N', 
'N', 2, 1, a, 2, af, 1, ip, eq, r, c, b,
 
  245     $                2, x, 2, rcond, rpvgrw, berr, n_err_bnds,
 
  246     $                err_bnds_n, err_bnds_c, nparams, params, w, rw,
 
  248         CALL chkxer( 
'ZGESVXX', infot, nout, lerr, ok )
 
  251         CALL zgesvxx( 
'F', 
'N', 0, 0, a, 1, af, 1, ip, eq, r, c, b,
 
  252     $                1, x, 1, rcond, rpvgrw, berr, n_err_bnds,
 
  253     $                err_bnds_n, err_bnds_c, nparams, params, w, rw,
 
  255         CALL chkxer( 
'ZGESVXX', infot, nout, lerr, ok )
 
  258         CALL zgesvxx( 
'F', 
'N', 1, 0, a, 1, af, 1, ip, eq, r, c, b,
 
  259     $                1, x, 1, rcond, rpvgrw, berr, n_err_bnds,
 
  260     $                err_bnds_n, err_bnds_c, nparams, params, w, rw,
 
  262         CALL chkxer( 
'ZGESVXX', infot, nout, lerr, ok )
 
  265         CALL zgesvxx( 
'F', 
'N', 1, 0, a, 1, af, 1, ip, eq, r, c, b,
 
  266     $                1, x, 1, rcond, rpvgrw, berr, n_err_bnds,
 
  267     $                err_bnds_n, err_bnds_c, nparams, params, w, rw,
 
  269         CALL chkxer( 
'ZGESVXX', infot, nout, lerr, ok )
 
  271         CALL zgesvxx( 
'N', 
'N', 2, 1, a, 2, af, 2, ip, eq, r, c, b,
 
  272     $                1, x, 2, rcond, rpvgrw, berr, n_err_bnds,
 
  273     $                err_bnds_n, err_bnds_c, nparams, params, w, rw,
 
  275         CALL chkxer( 
'ZGESVXX', infot, nout, lerr, ok )
 
  277         CALL zgesvxx( 
'N', 
'N', 2, 1, a, 2, af, 2, ip, eq, r, c, b,
 
  278     $                2, x, 1, rcond, rpvgrw, berr, n_err_bnds,
 
  279     $                err_bnds_n, err_bnds_c, nparams, params, w, rw,
 
  281         CALL chkxer( 
'ZGESVXX', infot, nout, lerr, ok )
 
  283      ELSE IF( lsamen( 2, c2, 
'GB' ) ) 
THEN 
  289         CALL zgbsv( -1, 0, 0, 0, a, 1, ip, b, 1, info )
 
  290         CALL chkxer( 
'ZGBSV ', infot, nout, lerr, ok )
 
  292         CALL zgbsv( 1, -1, 0, 0, a, 1, ip, b, 1, info )
 
  293         CALL chkxer( 
'ZGBSV ', infot, nout, lerr, ok )
 
  295         CALL zgbsv( 1, 0, -1, 0, a, 1, ip, b, 1, info )
 
  296         CALL chkxer( 
'ZGBSV ', infot, nout, lerr, ok )
 
  298         CALL zgbsv( 0, 0, 0, -1, a, 1, ip, b, 1, info )
 
  299         CALL chkxer( 
'ZGBSV ', infot, nout, lerr, ok )
 
  301         CALL zgbsv( 1, 1, 1, 0, a, 3, ip, b, 1, info )
 
  302         CALL chkxer( 
'ZGBSV ', infot, nout, lerr, ok )
 
  304         CALL zgbsv( 2, 0, 0, 0, a, 1, ip, b, 1, info )
 
  305         CALL chkxer( 
'ZGBSV ', infot, nout, lerr, ok )
 
  311         CALL zgbsvx( 
'/', 
'N', 0, 0, 0, 0, a, 1, af, 1, ip, eq, r, c,
 
  312     $                b, 1, x, 1, rcond, r1, r2, w, rw, info )
 
  313         CALL chkxer( 
'ZGBSVX', infot, nout, lerr, ok )
 
  315         CALL zgbsvx( 
'N', 
'/', 0, 0, 0, 0, a, 1, af, 1, ip, eq, r, c,
 
  316     $                b, 1, x, 1, rcond, r1, r2, w, rw, info )
 
  317         CALL chkxer( 
'ZGBSVX', infot, nout, lerr, ok )
 
  319         CALL zgbsvx( 
'N', 
'N', -1, 0, 0, 0, a, 1, af, 1, ip, eq, r, c,
 
  320     $                b, 1, x, 1, rcond, r1, r2, w, rw, info )
 
  321         CALL chkxer( 
'ZGBSVX', infot, nout, lerr, ok )
 
  323         CALL zgbsvx( 
'N', 
'N', 1, -1, 0, 0, a, 1, af, 1, ip, eq, r, c,
 
  324     $                b, 1, x, 1, rcond, r1, r2, w, rw, info )
 
  325         CALL chkxer( 
'ZGBSVX', infot, nout, lerr, ok )
 
  327         CALL zgbsvx( 
'N', 
'N', 1, 0, -1, 0, a, 1, af, 1, ip, eq, r, c,
 
  328     $                b, 1, x, 1, rcond, r1, r2, w, rw, info )
 
  329         CALL chkxer( 
'ZGBSVX', infot, nout, lerr, ok )
 
  331         CALL zgbsvx( 
'N', 
'N', 0, 0, 0, -1, a, 1, af, 1, ip, eq, r, c,
 
  332     $                b, 1, x, 1, rcond, r1, r2, w, rw, info )
 
  333         CALL chkxer( 
'ZGBSVX', infot, nout, lerr, ok )
 
  335         CALL zgbsvx( 
'N', 
'N', 1, 1, 1, 0, a, 2, af, 4, ip, eq, r, c,
 
  336     $                b, 1, x, 1, rcond, r1, r2, w, rw, info )
 
  337         CALL chkxer( 
'ZGBSVX', infot, nout, lerr, ok )
 
  339         CALL zgbsvx( 
'N', 
'N', 1, 1, 1, 0, a, 3, af, 3, ip, eq, r, c,
 
  340     $                b, 1, x, 1, rcond, r1, r2, w, rw, info )
 
  341         CALL chkxer( 
'ZGBSVX', infot, nout, lerr, ok )
 
  344         CALL zgbsvx( 
'F', 
'N', 0, 0, 0, 0, a, 1, af, 1, ip, eq, r, c,
 
  345     $                b, 1, x, 1, rcond, r1, r2, w, rw, info )
 
  346         CALL chkxer( 
'ZGBSVX', infot, nout, lerr, ok )
 
  349         CALL zgbsvx( 
'F', 
'N', 1, 0, 0, 0, a, 1, af, 1, ip, eq, r, c,
 
  350     $                b, 1, x, 1, rcond, r1, r2, w, rw, info )
 
  351         CALL chkxer( 
'ZGBSVX', infot, nout, lerr, ok )
 
  354         CALL zgbsvx( 
'F', 
'N', 1, 0, 0, 0, a, 1, af, 1, ip, eq, r, c,
 
  355     $                b, 1, x, 1, rcond, r1, r2, w, rw, info )
 
  356         CALL chkxer( 
'ZGBSVX', infot, nout, lerr, ok )
 
  358         CALL zgbsvx( 
'N', 
'N', 2, 0, 0, 0, a, 1, af, 1, ip, eq, r, c,
 
  359     $                b, 1, x, 2, rcond, r1, r2, w, rw, info )
 
  360         CALL chkxer( 
'ZGBSVX', infot, nout, lerr, ok )
 
  362         CALL zgbsvx( 
'N', 
'N', 2, 0, 0, 0, a, 1, af, 1, ip, eq, r, c,
 
  363     $                b, 2, x, 1, rcond, r1, r2, w, rw, info )
 
  364         CALL chkxer( 
'ZGBSVX', infot, nout, lerr, ok )
 
  372         CALL zgbsvxx( 
'/', 
'N', 0, 0, 0, 0, a, 1, af, 1, ip, eq, r, c,
 
  373     $                b, 1, x, 1, rcond, rpvgrw, berr, n_err_bnds,
 
  374     $                err_bnds_n, err_bnds_c, nparams, params, w, rw,
 
  376         CALL chkxer( 
'ZGBSVXX', infot, nout, lerr, ok )
 
  378         CALL zgbsvxx( 
'N', 
'/', 0, 1, 1, 0, a, 1, af, 1, ip, eq, r, c,
 
  379     $                b, 1, x, 1, rcond, rpvgrw, berr, n_err_bnds,
 
  380     $                err_bnds_n, err_bnds_c, nparams, params, w, rw,
 
  382         CALL chkxer( 
'ZGBSVXX', infot, nout, lerr, ok )
 
  384         CALL zgbsvxx( 
'N', 
'N', -1, 1, 1, 0, a, 1, af, 1, ip, eq, r, c,
 
  385     $                b, 1, x, 1, rcond, rpvgrw, berr, n_err_bnds,
 
  386     $                err_bnds_n, err_bnds_c, nparams, params, w, rw,
 
  388         CALL chkxer( 
'ZGBSVXX', infot, nout, lerr, ok )
 
  390         CALL zgbsvxx( 
'N', 
'N', 2, -1, 1, 0, a, 1, af, 1, ip, eq,
 
  391     $                r, c, b, 1, x, 1, rcond, rpvgrw, berr, n_err_bnds,
 
  392     $                err_bnds_n, err_bnds_c, nparams, params, w, rw,
 
  394         CALL chkxer( 
'ZGBSVXX', infot, nout, lerr, ok )
 
  396         CALL zgbsvxx( 
'N', 
'N', 2, 1, -1, 0, a, 1, af, 1, ip, eq,
 
  397     $                r, c, b, 1, x, 1, rcond, rpvgrw, berr, n_err_bnds,
 
  398     $                err_bnds_n, err_bnds_c, nparams, params, w, rw,
 
  400         CALL chkxer( 
'ZGBSVXX', infot, nout, lerr, ok )
 
  402         CALL zgbsvxx( 
'N', 
'N', 0, 1, 1, -1, a, 1, af, 1, ip, eq, r, c,
 
  403     $                b, 1, x, 1, rcond, rpvgrw, berr, n_err_bnds,
 
  404     $                err_bnds_n, err_bnds_c, nparams, params, w, rw,
 
  406         CALL chkxer( 
'ZGBSVXX', infot, nout, lerr, ok )
 
  408         CALL zgbsvxx( 
'N', 
'N', 2, 1, 1, 1, a, 2, af, 2, ip, eq, r, c,
 
  409     $                b, 2, x, 2, rcond, rpvgrw, berr, n_err_bnds,
 
  410     $                err_bnds_n, err_bnds_c, nparams, params, w, rw,
 
  412         CALL chkxer( 
'ZGBSVXX', infot, nout, lerr, ok )
 
  414         CALL zgbsvxx( 
'N', 
'N', 2, 1, 1, 1, a, 3, af, 3, ip, eq, r, c,
 
  415     $                b, 2, x, 2, rcond, rpvgrw, berr, n_err_bnds,
 
  416     $                err_bnds_n, err_bnds_c, nparams, params, w, rw,
 
  418         CALL chkxer( 
'ZGBSVXX', infot, nout, lerr, ok )
 
  421         CALL zgbsvxx( 
'F', 
'N', 0, 1, 1, 0, a, 3, af, 4, ip, eq, r, c,
 
  422     $                b, 1, x, 1, rcond, rpvgrw, berr, n_err_bnds,
 
  423     $                err_bnds_n, err_bnds_c, nparams, params, w, rw,
 
  425         CALL chkxer( 
'ZGBSVXX', infot, nout, lerr, ok )
 
  428         CALL zgbsvxx( 
'F', 
'N', 1, 1, 1, 0, a, 3, af, 4, ip, eq, r, c,
 
  429     $                b, 1, x, 1, rcond, rpvgrw, berr, n_err_bnds,
 
  430     $                err_bnds_n, err_bnds_c, nparams, params, w, rw,
 
  432         CALL chkxer( 
'ZGBSVXX', infot, nout, lerr, ok )
 
  435         CALL zgbsvxx( 
'F', 
'N', 1, 1, 1, 0, a, 3, af, 4, ip, eq, r, c,
 
  436     $                b, 1, x, 1, rcond, rpvgrw, berr, n_err_bnds,
 
  437     $                err_bnds_n, err_bnds_c, nparams, params, w, rw,
 
  439         CALL chkxer( 
'ZGBSVXX', infot, nout, lerr, ok )
 
  441         CALL zgbsvxx( 
'N', 
'N', 2, 1, 1, 1, a, 3, af, 4, ip, eq, r, c,
 
  442     $                b, 1, x, 2, rcond, rpvgrw, berr, n_err_bnds,
 
  443     $                err_bnds_n, err_bnds_c, nparams, params, w, rw,
 
  445         CALL chkxer( 
'ZGBSVXX', infot, nout, lerr, ok )
 
  447         CALL zgbsvxx( 
'N', 
'N', 2, 1, 1, 1, a, 3, af, 4, ip, eq, r, c,
 
  448     $                b, 2, x, 1, rcond, rpvgrw, berr, n_err_bnds,
 
  449     $                err_bnds_n, err_bnds_c, nparams, params, w, rw,
 
  451         CALL chkxer( 
'ZGBSVXX', infot, nout, lerr, ok )
 
  453      ELSE IF( lsamen( 2, c2, 
'GT' ) ) 
THEN 
  459         CALL zgtsv( -1, 0, a( 1, 1 ), a( 1, 2 ), a( 1, 3 ), b, 1,
 
  461         CALL chkxer( 
'ZGTSV ', infot, nout, lerr, ok )
 
  463         CALL zgtsv( 0, -1, a( 1, 1 ), a( 1, 2 ), a( 1, 3 ), b, 1,
 
  465         CALL chkxer( 
'ZGTSV ', infot, nout, lerr, ok )
 
  467         CALL zgtsv( 2, 0, a( 1, 1 ), a( 1, 2 ), a( 1, 3 ), b, 1, info )
 
  468         CALL chkxer( 
'ZGTSV ', infot, nout, lerr, ok )
 
  474         CALL zgtsvx( 
'/', 
'N', 0, 0, a( 1, 1 ), a( 1, 2 ), a( 1, 3 ),
 
  475     $                af( 1, 1 ), af( 1, 2 ), af( 1, 3 ), af( 1, 4 ),
 
  476     $                ip, b, 1, x, 1, rcond, r1, r2, w, rw, info )
 
  477         CALL chkxer( 
'ZGTSVX', infot, nout, lerr, ok )
 
  479         CALL zgtsvx( 
'N', 
'/', 0, 0, a( 1, 1 ), a( 1, 2 ), a( 1, 3 ),
 
  480     $                af( 1, 1 ), af( 1, 2 ), af( 1, 3 ), af( 1, 4 ),
 
  481     $                ip, b, 1, x, 1, rcond, r1, r2, w, rw, info )
 
  482         CALL chkxer( 
'ZGTSVX', infot, nout, lerr, ok )
 
  484         CALL zgtsvx( 
'N', 
'N', -1, 0, a( 1, 1 ), a( 1, 2 ), a( 1, 3 ),
 
  485     $                af( 1, 1 ), af( 1, 2 ), af( 1, 3 ), af( 1, 4 ),
 
  486     $                ip, b, 1, x, 1, rcond, r1, r2, w, rw, info )
 
  487         CALL chkxer( 
'ZGTSVX', infot, nout, lerr, ok )
 
  489         CALL zgtsvx( 
'N', 
'N', 0, -1, a( 1, 1 ), a( 1, 2 ), a( 1, 3 ),
 
  490     $                af( 1, 1 ), af( 1, 2 ), af( 1, 3 ), af( 1, 4 ),
 
  491     $                ip, b, 1, x, 1, rcond, r1, r2, w, rw, info )
 
  492         CALL chkxer( 
'ZGTSVX', infot, nout, lerr, ok )
 
  494         CALL zgtsvx( 
'N', 
'N', 2, 0, a( 1, 1 ), a( 1, 2 ), a( 1, 3 ),
 
  495     $                af( 1, 1 ), af( 1, 2 ), af( 1, 3 ), af( 1, 4 ),
 
  496     $                ip, b, 1, x, 2, rcond, r1, r2, w, rw, info )
 
  497         CALL chkxer( 
'ZGTSVX', infot, nout, lerr, ok )
 
  499         CALL zgtsvx( 
'N', 
'N', 2, 0, a( 1, 1 ), a( 1, 2 ), a( 1, 3 ),
 
  500     $                af( 1, 1 ), af( 1, 2 ), af( 1, 3 ), af( 1, 4 ),
 
  501     $                ip, b, 2, x, 1, rcond, r1, r2, w, rw, info )
 
  502         CALL chkxer( 
'ZGTSVX', infot, nout, lerr, ok )
 
  504      ELSE IF( lsamen( 2, c2, 
'HR' ) ) 
THEN 
  508         srnamt = 
'ZHESV_ROOK' 
  510         CALL zhesv_rook( 
'/', 0, 0, a, 1, ip, b, 1, w, 1, info )
 
  511         CALL chkxer( 
'ZHESV_ROOK', infot, nout, lerr, ok )
 
  513         CALL zhesv_rook( 
'U', -1, 0, a, 1, ip, b, 1, w, 1, info )
 
  514         CALL chkxer( 
'ZHESV_ROOK', infot, nout, lerr, ok )
 
  516         CALL zhesv_rook( 
'U', 0, -1, a, 1, ip, b, 1, w, 1, info )
 
  517         CALL chkxer( 
'ZHESV_ROOK', infot, nout, lerr, ok )
 
  519         CALL zhesv_rook( 
'U', 2, 0, a, 2, ip, b, 1, w, 1, info )
 
  520         CALL chkxer( 
'ZHESV_ROOK', infot, nout, lerr, ok )
 
  522      ELSE IF( lsamen( 2, c2, 
'PO' ) ) 
THEN 
  528         CALL zposv( 
'/', 0, 0, a, 1, b, 1, info )
 
  529         CALL chkxer( 
'ZPOSV ', infot, nout, lerr, ok )
 
  531         CALL zposv( 
'U', -1, 0, a, 1, b, 1, info )
 
  532         CALL chkxer( 
'ZPOSV ', infot, nout, lerr, ok )
 
  534         CALL zposv( 
'U', 0, -1, a, 1, b, 1, info )
 
  535         CALL chkxer( 
'ZPOSV ', infot, nout, lerr, ok )
 
  537         CALL zposv( 
'U', 2, 0, a, 1, b, 2, info )
 
  538         CALL chkxer( 
'ZPOSV ', infot, nout, lerr, ok )
 
  540         CALL zposv( 
'U', 2, 0, a, 2, b, 1, info )
 
  541         CALL chkxer( 
'ZPOSV ', infot, nout, lerr, ok )
 
  547         CALL zposvx( 
'/', 
'U', 0, 0, a, 1, af, 1, eq, c, b, 1, x, 1,
 
  548     $                rcond, r1, r2, w, rw, info )
 
  549         CALL chkxer( 
'ZPOSVX', infot, nout, lerr, ok )
 
  551         CALL zposvx( 
'N', 
'/', 0, 0, a, 1, af, 1, eq, c, b, 1, x, 1,
 
  552     $                rcond, r1, r2, w, rw, info )
 
  553         CALL chkxer( 
'ZPOSVX', infot, nout, lerr, ok )
 
  555         CALL zposvx( 
'N', 
'U', -1, 0, a, 1, af, 1, eq, c, b, 1, x, 1,
 
  556     $                rcond, r1, r2, w, rw, info )
 
  557         CALL chkxer( 
'ZPOSVX', infot, nout, lerr, ok )
 
  559         CALL zposvx( 
'N', 
'U', 0, -1, a, 1, af, 1, eq, c, b, 1, x, 1,
 
  560     $                rcond, r1, r2, w, rw, info )
 
  561         CALL chkxer( 
'ZPOSVX', infot, nout, lerr, ok )
 
  563         CALL zposvx( 
'N', 
'U', 2, 0, a, 1, af, 2, eq, c, b, 2, x, 2,
 
  564     $                rcond, r1, r2, w, rw, info )
 
  565         CALL chkxer( 
'ZPOSVX', infot, nout, lerr, ok )
 
  567         CALL zposvx( 
'N', 
'U', 2, 0, a, 2, af, 1, eq, c, b, 2, x, 2,
 
  568     $                rcond, r1, r2, w, rw, info )
 
  569         CALL chkxer( 
'ZPOSVX', infot, nout, lerr, ok )
 
  572         CALL zposvx( 
'F', 
'U', 0, 0, a, 1, af, 1, eq, c, b, 1, x, 1,
 
  573     $                rcond, r1, r2, w, rw, info )
 
  574         CALL chkxer( 
'ZPOSVX', infot, nout, lerr, ok )
 
  577         CALL zposvx( 
'F', 
'U', 1, 0, a, 1, af, 1, eq, c, b, 1, x, 1,
 
  578     $                rcond, r1, r2, w, rw, info )
 
  579         CALL chkxer( 
'ZPOSVX', infot, nout, lerr, ok )
 
  581         CALL zposvx( 
'N', 
'U', 2, 0, a, 2, af, 2, eq, c, b, 1, x, 2,
 
  582     $                rcond, r1, r2, w, rw, info )
 
  583         CALL chkxer( 
'ZPOSVX', infot, nout, lerr, ok )
 
  585         CALL zposvx( 
'N', 
'U', 2, 0, a, 2, af, 2, eq, c, b, 2, x, 1,
 
  586     $                rcond, r1, r2, w, rw, info )
 
  587         CALL chkxer( 
'ZPOSVX', infot, nout, lerr, ok )
 
  595         CALL zposvxx( 
'/', 
'U', 0, 0, a, 1, af, 1, eq, c, b, 1, x, 1,
 
  596     $                rcond, rpvgrw, berr, n_err_bnds, err_bnds_n,
 
  597     $                err_bnds_c, nparams, params, w, rw, info )
 
  598         CALL chkxer( 
'ZPOSVXX', infot, nout, lerr, ok )
 
  600         CALL zposvxx( 
'N', 
'/', 0, 0, a, 1, af, 1, eq, c, b, 1, x, 1,
 
  601     $                rcond, rpvgrw, berr, n_err_bnds, err_bnds_n,
 
  602     $                err_bnds_c, nparams, params, w, rw, info )
 
  603         CALL chkxer( 
'ZPOSVXX', infot, nout, lerr, ok )
 
  605         CALL zposvxx( 
'N', 
'U', -1, 0, a, 1, af, 1, eq, c, b, 1, x, 1,
 
  606     $                rcond, rpvgrw, berr, n_err_bnds, err_bnds_n,
 
  607     $                err_bnds_c, nparams, params, w, rw, info )
 
  608         CALL chkxer( 
'ZPOSVXX', infot, nout, lerr, ok )
 
  610         CALL zposvxx( 
'N', 
'U', 0, -1, a, 1, af, 1, eq, c, b, 1, x, 1,
 
  611     $                rcond, rpvgrw, berr, n_err_bnds, err_bnds_n,
 
  612     $                err_bnds_c, nparams, params, w, rw, info )
 
  613         CALL chkxer( 
'ZPOSVXX', infot, nout, lerr, ok )
 
  615         CALL zposvxx( 
'N', 
'U', 2, 0, a, 1, af, 2, eq, c, b, 2, x, 2,
 
  616     $                rcond, rpvgrw, berr, n_err_bnds, err_bnds_n,
 
  617     $                err_bnds_c, nparams, params, w, rw, info )
 
  618         CALL chkxer( 
'ZPOSVXX', infot, nout, lerr, ok )
 
  620         CALL zposvxx( 
'N', 
'U', 2, 0, a, 2, af, 1, eq, c, b, 2, x, 2,
 
  621     $                rcond, rpvgrw, berr, n_err_bnds, err_bnds_n,
 
  622     $                err_bnds_c, nparams, params, w, rw, info )
 
  623         CALL chkxer( 
'ZPOSVXX', infot, nout, lerr, ok )
 
  626         CALL zposvxx( 
'F', 
'U', 0, 0, a, 1, af, 1, eq, c, b, 1, x, 1,
 
  627     $                rcond, rpvgrw, berr, n_err_bnds, err_bnds_n,
 
  628     $                err_bnds_c, nparams, params, w, rw, info )
 
  629         CALL chkxer( 
'ZPOSVXX', infot, nout, lerr, ok )
 
  632         CALL zposvxx( 
'F', 
'U', 1, 0, a, 1, af, 1, eq, c, b, 1, x, 1,
 
  633     $                rcond, rpvgrw, berr, n_err_bnds, err_bnds_n,
 
  634     $                err_bnds_c, nparams, params, w, rw, info )
 
  635         CALL chkxer( 
'ZPOSVXX', infot, nout, lerr, ok )
 
  637         CALL zposvxx( 
'N', 
'U', 2, 0, a, 2, af, 2, eq, c, b, 1, x, 2,
 
  638     $                rcond, rpvgrw, berr, n_err_bnds, err_bnds_n,
 
  639     $                err_bnds_c, nparams, params, w, rw, info )
 
  640         CALL chkxer( 
'ZPOSVXX', infot, nout, lerr, ok )
 
  642         CALL zposvxx( 
'N', 
'U', 2, 0, a, 2, af, 2, eq, c, b, 2, x, 1,
 
  643     $                rcond, rpvgrw, berr, n_err_bnds, err_bnds_n,
 
  644     $                err_bnds_c, nparams, params, w, rw, info )
 
  645         CALL chkxer( 
'ZPOSVXX', infot, nout, lerr, ok )
 
  647      ELSE IF( lsamen( 2, c2, 
'PP' ) ) 
THEN 
  653         CALL zppsv( 
'/', 0, 0, a, b, 1, info )
 
  654         CALL chkxer( 
'ZPPSV ', infot, nout, lerr, ok )
 
  656         CALL zppsv( 
'U', -1, 0, a, b, 1, info )
 
  657         CALL chkxer( 
'ZPPSV ', infot, nout, lerr, ok )
 
  659         CALL zppsv( 
'U', 0, -1, a, b, 1, info )
 
  660         CALL chkxer( 
'ZPPSV ', infot, nout, lerr, ok )
 
  662         CALL zppsv( 
'U', 2, 0, a, b, 1, info )
 
  663         CALL chkxer( 
'ZPPSV ', infot, nout, lerr, ok )
 
  669         CALL zppsvx( 
'/', 
'U', 0, 0, a, af, eq, c, b, 1, x, 1, rcond,
 
  670     $                r1, r2, w, rw, info )
 
  671         CALL chkxer( 
'ZPPSVX', infot, nout, lerr, ok )
 
  673         CALL zppsvx( 
'N', 
'/', 0, 0, a, af, eq, c, b, 1, x, 1, rcond,
 
  674     $                r1, r2, w, rw, info )
 
  675         CALL chkxer( 
'ZPPSVX', infot, nout, lerr, ok )
 
  677         CALL zppsvx( 
'N', 
'U', -1, 0, a, af, eq, c, b, 1, x, 1, rcond,
 
  678     $                r1, r2, w, rw, info )
 
  679         CALL chkxer( 
'ZPPSVX', infot, nout, lerr, ok )
 
  681         CALL zppsvx( 
'N', 
'U', 0, -1, a, af, eq, c, b, 1, x, 1, rcond,
 
  682     $                r1, r2, w, rw, info )
 
  683         CALL chkxer( 
'ZPPSVX', infot, nout, lerr, ok )
 
  686         CALL zppsvx( 
'F', 
'U', 0, 0, a, af, eq, c, b, 1, x, 1, rcond,
 
  687     $                r1, r2, w, rw, info )
 
  688         CALL chkxer( 
'ZPPSVX', infot, nout, lerr, ok )
 
  691         CALL zppsvx( 
'F', 
'U', 1, 0, a, af, eq, c, b, 1, x, 1, rcond,
 
  692     $                r1, r2, w, rw, info )
 
  693         CALL chkxer( 
'ZPPSVX', infot, nout, lerr, ok )
 
  695         CALL zppsvx( 
'N', 
'U', 2, 0, a, af, eq, c, b, 1, x, 2, rcond,
 
  696     $                r1, r2, w, rw, info )
 
  697         CALL chkxer( 
'ZPPSVX', infot, nout, lerr, ok )
 
  699         CALL zppsvx( 
'N', 
'U', 2, 0, a, af, eq, c, b, 2, x, 1, rcond,
 
  700     $                r1, r2, w, rw, info )
 
  701         CALL chkxer( 
'ZPPSVX', infot, nout, lerr, ok )
 
  703      ELSE IF( lsamen( 2, c2, 
'PB' ) ) 
THEN 
  709         CALL zpbsv( 
'/', 0, 0, 0, a, 1, b, 1, info )
 
  710         CALL chkxer( 
'ZPBSV ', infot, nout, lerr, ok )
 
  712         CALL zpbsv( 
'U', -1, 0, 0, a, 1, b, 1, info )
 
  713         CALL chkxer( 
'ZPBSV ', infot, nout, lerr, ok )
 
  715         CALL zpbsv( 
'U', 1, -1, 0, a, 1, b, 1, info )
 
  716         CALL chkxer( 
'ZPBSV ', infot, nout, lerr, ok )
 
  718         CALL zpbsv( 
'U', 0, 0, -1, a, 1, b, 1, info )
 
  719         CALL chkxer( 
'ZPBSV ', infot, nout, lerr, ok )
 
  721         CALL zpbsv( 
'U', 1, 1, 0, a, 1, b, 2, info )
 
  722         CALL chkxer( 
'ZPBSV ', infot, nout, lerr, ok )
 
  724         CALL zpbsv( 
'U', 2, 0, 0, a, 1, b, 1, info )
 
  725         CALL chkxer( 
'ZPBSV ', infot, nout, lerr, ok )
 
  731         CALL zpbsvx( 
'/', 
'U', 0, 0, 0, a, 1, af, 1, eq, c, b, 1, x, 1,
 
  732     $                rcond, r1, r2, w, rw, info )
 
  733         CALL chkxer( 
'ZPBSVX', infot, nout, lerr, ok )
 
  735         CALL zpbsvx( 
'N', 
'/', 0, 0, 0, a, 1, af, 1, eq, c, b, 1, x, 1,
 
  736     $                rcond, r1, r2, w, rw, info )
 
  737         CALL chkxer( 
'ZPBSVX', infot, nout, lerr, ok )
 
  739         CALL zpbsvx( 
'N', 
'U', -1, 0, 0, a, 1, af, 1, eq, c, b, 1, x,
 
  740     $                1, rcond, r1, r2, w, rw, info )
 
  741         CALL chkxer( 
'ZPBSVX', infot, nout, lerr, ok )
 
  743         CALL zpbsvx( 
'N', 
'U', 1, -1, 0, a, 1, af, 1, eq, c, b, 1, x,
 
  744     $                1, rcond, r1, r2, w, rw, info )
 
  745         CALL chkxer( 
'ZPBSVX', infot, nout, lerr, ok )
 
  747         CALL zpbsvx( 
'N', 
'U', 0, 0, -1, a, 1, af, 1, eq, c, b, 1, x,
 
  748     $                1, rcond, r1, r2, w, rw, info )
 
  749         CALL chkxer( 
'ZPBSVX', infot, nout, lerr, ok )
 
  751         CALL zpbsvx( 
'N', 
'U', 1, 1, 0, a, 1, af, 2, eq, c, b, 2, x, 2,
 
  752     $                rcond, r1, r2, w, rw, info )
 
  753         CALL chkxer( 
'ZPBSVX', infot, nout, lerr, ok )
 
  755         CALL zpbsvx( 
'N', 
'U', 1, 1, 0, a, 2, af, 1, eq, c, b, 2, x, 2,
 
  756     $                rcond, r1, r2, w, rw, info )
 
  757         CALL chkxer( 
'ZPBSVX', infot, nout, lerr, ok )
 
  760         CALL zpbsvx( 
'F', 
'U', 0, 0, 0, a, 1, af, 1, eq, c, b, 1, x, 1,
 
  761     $                rcond, r1, r2, w, rw, info )
 
  762         CALL chkxer( 
'ZPBSVX', infot, nout, lerr, ok )
 
  765         CALL zpbsvx( 
'F', 
'U', 1, 0, 0, a, 1, af, 1, eq, c, b, 1, x, 1,
 
  766     $                rcond, r1, r2, w, rw, info )
 
  767         CALL chkxer( 
'ZPBSVX', infot, nout, lerr, ok )
 
  769         CALL zpbsvx( 
'N', 
'U', 2, 0, 0, a, 1, af, 1, eq, c, b, 1, x, 2,
 
  770     $                rcond, r1, r2, w, rw, info )
 
  771         CALL chkxer( 
'ZPBSVX', infot, nout, lerr, ok )
 
  773         CALL zpbsvx( 
'N', 
'U', 2, 0, 0, a, 1, af, 1, eq, c, b, 2, x, 1,
 
  774     $                rcond, r1, r2, w, rw, info )
 
  775         CALL chkxer( 
'ZPBSVX', infot, nout, lerr, ok )
 
  777      ELSE IF( lsamen( 2, c2, 
'PT' ) ) 
THEN 
  783         CALL zptsv( -1, 0, r, a( 1, 1 ), b, 1, info )
 
  784         CALL chkxer( 
'ZPTSV ', infot, nout, lerr, ok )
 
  786         CALL zptsv( 0, -1, r, a( 1, 1 ), b, 1, info )
 
  787         CALL chkxer( 
'ZPTSV ', infot, nout, lerr, ok )
 
  789         CALL zptsv( 2, 0, r, a( 1, 1 ), b, 1, info )
 
  790         CALL chkxer( 
'ZPTSV ', infot, nout, lerr, ok )
 
  796         CALL zptsvx( 
'/', 0, 0, r, a( 1, 1 ), rf, af( 1, 1 ), b, 1, x,
 
  797     $                1, rcond, r1, r2, w, rw, info )
 
  798         CALL chkxer( 
'ZPTSVX', infot, nout, lerr, ok )
 
  800         CALL zptsvx( 
'N', -1, 0, r, a( 1, 1 ), rf, af( 1, 1 ), b, 1, x,
 
  801     $                1, rcond, r1, r2, w, rw, info )
 
  802         CALL chkxer( 
'ZPTSVX', infot, nout, lerr, ok )
 
  804         CALL zptsvx( 
'N', 0, -1, r, a( 1, 1 ), rf, af( 1, 1 ), b, 1, x,
 
  805     $                1, rcond, r1, r2, w, rw, info )
 
  806         CALL chkxer( 
'ZPTSVX', infot, nout, lerr, ok )
 
  808         CALL zptsvx( 
'N', 2, 0, r, a( 1, 1 ), rf, af( 1, 1 ), b, 1, x,
 
  809     $                2, rcond, r1, r2, w, rw, info )
 
  810         CALL chkxer( 
'ZPTSVX', infot, nout, lerr, ok )
 
  812         CALL zptsvx( 
'N', 2, 0, r, a( 1, 1 ), rf, af( 1, 1 ), b, 2, x,
 
  813     $                1, rcond, r1, r2, w, rw, info )
 
  814         CALL chkxer( 
'ZPTSVX', infot, nout, lerr, ok )
 
  816      ELSE IF( lsamen( 2, c2, 
'HE' ) ) 
THEN 
  822         CALL zhesv( 
'/', 0, 0, a, 1, ip, b, 1, w, 1, info )
 
  823         CALL chkxer( 
'ZHESV ', infot, nout, lerr, ok )
 
  825         CALL zhesv( 
'U', -1, 0, a, 1, ip, b, 1, w, 1, info )
 
  826         CALL chkxer( 
'ZHESV ', infot, nout, lerr, ok )
 
  828         CALL zhesv( 
'U', 0, -1, a, 1, ip, b, 1, w, 1, info )
 
  829         CALL chkxer( 
'ZHESV ', infot, nout, lerr, ok )
 
  831         CALL zhesv( 
'U', 2, 0, a, 1, ip, b, 2, w, 1, info )
 
  832         CALL chkxer( 
'ZHESV ', infot, nout, lerr, ok )
 
  834         CALL zhesv( 
'U', 2, 0, a, 2, ip, b, 1, w, 1, info )
 
  835         CALL chkxer( 
'ZHESV ', infot, nout, lerr, ok )
 
  837         CALL zhesv( 
'U', 0, 0, a, 1, ip, b, 1, w, 0, info )
 
  838         CALL chkxer( 
'ZHESV ', infot, nout, lerr, ok )
 
  840         CALL zhesv( 
'U', 0, 0, a, 1, ip, b, 1, w, -2, info )
 
  841         CALL chkxer( 
'ZHESV ', infot, nout, lerr, ok )
 
  847         CALL zhesvx( 
'/', 
'U', 0, 0, a, 1, af, 1, ip, b, 1, x, 1,
 
  848     $                rcond, r1, r2, w, 1, rw, info )
 
  849         CALL chkxer( 
'ZHESVX', infot, nout, lerr, ok )
 
  851         CALL zhesvx( 
'N', 
'/', 0, 0, a, 1, af, 1, ip, b, 1, x, 1,
 
  852     $                rcond, r1, r2, w, 1, rw, info )
 
  853         CALL chkxer( 
'ZHESVX', infot, nout, lerr, ok )
 
  855         CALL zhesvx( 
'N', 
'U', -1, 0, a, 1, af, 1, ip, b, 1, x, 1,
 
  856     $                rcond, r1, r2, w, 1, rw, info )
 
  857         CALL chkxer( 
'ZHESVX', infot, nout, lerr, ok )
 
  859         CALL zhesvx( 
'N', 
'U', 0, -1, a, 1, af, 1, ip, b, 1, x, 1,
 
  860     $                rcond, r1, r2, w, 1, rw, info )
 
  861         CALL chkxer( 
'ZHESVX', infot, nout, lerr, ok )
 
  863         CALL zhesvx( 
'N', 
'U', 2, 0, a, 1, af, 2, ip, b, 2, x, 2,
 
  864     $                rcond, r1, r2, w, 4, rw, info )
 
  865         CALL chkxer( 
'ZHESVX', infot, nout, lerr, ok )
 
  867         CALL zhesvx( 
'N', 
'U', 2, 0, a, 2, af, 1, ip, b, 2, x, 2,
 
  868     $                rcond, r1, r2, w, 4, rw, info )
 
  869         CALL chkxer( 
'ZHESVX', infot, nout, lerr, ok )
 
  871         CALL zhesvx( 
'N', 
'U', 2, 0, a, 2, af, 2, ip, b, 1, x, 2,
 
  872     $                rcond, r1, r2, w, 4, rw, info )
 
  873         CALL chkxer( 
'ZHESVX', infot, nout, lerr, ok )
 
  875         CALL zhesvx( 
'N', 
'U', 2, 0, a, 2, af, 2, ip, b, 2, x, 1,
 
  876     $                rcond, r1, r2, w, 4, rw, info )
 
  877         CALL chkxer( 
'ZHESVX', infot, nout, lerr, ok )
 
  879         CALL zhesvx( 
'N', 
'U', 2, 0, a, 2, af, 2, ip, b, 2, x, 2,
 
  880     $                rcond, r1, r2, w, 3, rw, info )
 
  881         CALL chkxer( 
'ZHESVX', infot, nout, lerr, ok )
 
  889         CALL zhesvxx( 
'/', 
'U', 0, 0, a, 1, af, 1, ip, eq, c, b, 1, x,
 
  890     $                1, rcond, rpvgrw, berr, n_err_bnds, err_bnds_n,
 
  891     $                err_bnds_c, nparams, params, w, rw, info )
 
  892         CALL chkxer( 
'ZHESVXX', infot, nout, lerr, ok )
 
  894         CALL zhesvxx( 
'N', 
'/', 0, 0, a, 1, af, 1, ip, eq, c, b, 1, x,
 
  895     $                1, rcond, rpvgrw, berr, n_err_bnds, err_bnds_n,
 
  896     $                err_bnds_c, nparams, params, w, rw, info )
 
  897         CALL chkxer( 
'ZHESVXX', infot, nout, lerr, ok )
 
  899         CALL zhesvxx( 
'N', 
'U', -1, 0, a, 1, af, 1, ip, eq, c, b, 1, x,
 
  900     $                1, rcond, rpvgrw, berr, n_err_bnds, err_bnds_n,
 
  901     $                err_bnds_c, nparams, params, w, rw, info )
 
  902         CALL chkxer( 
'ZHESVXX', infot, nout, lerr, ok )
 
  904         CALL zhesvxx( 
'N', 
'U', 0, -1, a, 1, af, 1, ip, eq, c, b, 1, x,
 
  905     $                1, rcond, rpvgrw, berr, n_err_bnds, err_bnds_n,
 
  906     $                err_bnds_c, nparams, params, w, rw, info )
 
  907         CALL chkxer( 
'ZHESVXX', infot, nout, lerr, ok )
 
  909         CALL zhesvxx( 
'N', 
'U', 2, 0, a, 1, af, 2, ip, eq, c, b, 2, x,
 
  910     $                2, rcond, rpvgrw, berr, n_err_bnds, err_bnds_n,
 
  911     $                err_bnds_c, nparams, params, w, rw, info )
 
  912         CALL chkxer( 
'ZHESVXX', infot, nout, lerr, ok )
 
  914         CALL zhesvxx( 
'N', 
'U', 2, 0, a, 2, af, 1, ip, eq, c, b, 2, x,
 
  915     $                2, rcond, rpvgrw, berr, n_err_bnds, err_bnds_n,
 
  916     $                err_bnds_c,  nparams, params, w, rw, info )
 
  917         CALL chkxer( 
'ZHESVXX', infot, nout, lerr, ok )
 
  920         CALL zhesvxx( 
'F', 
'U', 0, 0, a, 1, af, 1, ip, eq, c, b, 1, x,
 
  921     $                1, rcond, rpvgrw, berr, n_err_bnds, err_bnds_n,
 
  922     $                err_bnds_c, nparams, params, w, rw, info )
 
  923         CALL chkxer( 
'ZHESVXX', infot, nout, lerr, ok )
 
  926         CALL zhesvxx( 
'F', 
'U', 1, 0, a, 1, af, 1, ip, eq, c, b, 1, x,
 
  927     $                1, rcond, rpvgrw, berr, n_err_bnds, err_bnds_n,
 
  928     $                err_bnds_c, nparams, params, w, rw, info )
 
  929         CALL chkxer( 
'ZHESVXX', infot, nout, lerr, ok )
 
  931         CALL zhesvxx( 
'N', 
'U', 2, 0, a, 2, af, 2, ip, eq, c, b, 1, x,
 
  932     $                2, rcond, rpvgrw, berr, n_err_bnds, err_bnds_n,
 
  933     $                err_bnds_c, nparams, params, w, rw, info )
 
  934         CALL chkxer( 
'ZHESVXX', infot, nout, lerr, ok )
 
  936         CALL zhesvxx( 
'N', 
'U', 2, 0, a, 2, af, 2, ip, eq, c, b, 2, x,
 
  937     $                1, rcond, rpvgrw, berr, n_err_bnds, err_bnds_n,
 
  938     $                err_bnds_c, nparams, params, w, rw, info )
 
  939         CALL chkxer( 
'ZHESVXX', infot, nout, lerr, ok )
 
  941      ELSE IF( lsamen( 2, c2, 
'HR' ) ) 
THEN 
  945         srnamt = 
'ZHESV_ROOK' 
  947         CALL zhesv_rook( 
'/', 0, 0, a, 1, ip, b, 1, w, 1, info )
 
  948         CALL chkxer( 
'ZHESV_ROOK', infot, nout, lerr, ok )
 
  950         CALL zhesv_rook( 
'U', -1, 0, a, 1, ip, b, 1, w, 1, info )
 
  951         CALL chkxer( 
'ZHESV_ROOK', infot, nout, lerr, ok )
 
  953         CALL zhesv_rook( 
'U', 0, -1, a, 1, ip, b, 1, w, 1, info )
 
  954         CALL chkxer( 
'ZHESV_ROOK', infot, nout, lerr, ok )
 
  956         CALL zhesv_rook( 
'U', 2, 0, a, 2, ip, b, 1, w, 1, info )
 
  957         CALL chkxer( 
'ZHESV_ROOK', infot, nout, lerr, ok )
 
  959         CALL zhesv_rook( 
'U', 0, 0, a, 1, ip, b, 1, w, 0, info )
 
  960         CALL chkxer( 
'ZHESV_ROOK', infot, nout, lerr, ok )
 
  962         CALL zhesv_rook( 
'U', 0, 0, a, 1, ip, b, 1, w, -2, info )
 
  963         CALL chkxer( 
'ZHESV_ROOK', infot, nout, lerr, ok )
 
  965      ELSE IF( lsamen( 2, c2, 
'HK' ) ) 
THEN 
  979         CALL zhesv_rk( 
'/', 0, 0, a, 1, e, ip, b, 1, w, 1, info )
 
  980         CALL chkxer( 
'ZHESV_RK', infot, nout, lerr, ok )
 
  982         CALL zhesv_rk( 
'U', -1, 0, a, 1, e, ip, b, 1, w, 1, info )
 
  983         CALL chkxer( 
'ZHESV_RK', infot, nout, lerr, ok )
 
  985         CALL zhesv_rk( 
'U', 0, -1, a, 1, e, ip, b, 1, w, 1, info )
 
  986         CALL chkxer( 
'ZHESV_RK', infot, nout, lerr, ok )
 
  988         CALL zhesv_rk( 
'U', 2, 0, a, 1, e, ip, b, 2, w, 1, info )
 
  989         CALL chkxer( 
'ZHESV_RK', infot, nout, lerr, ok )
 
  991         CALL zhesv_rk( 
'U', 2, 0, a, 2, e, ip, b, 1, w, 1, info )
 
  992         CALL chkxer( 
'ZHESV_RK', infot, nout, lerr, ok )
 
  994         CALL zhesv_rk( 
'U', 0, 0, a, 1, e, ip, b, 1, w, 0, info )
 
  995         CALL chkxer( 
'ZHESV_RK', infot, nout, lerr, ok )
 
  997         CALL zhesv_rk( 
'U', 0, 0, a, 1, e, ip, b, 1, w, -2, info )
 
  998         CALL chkxer( 
'ZHESV_RK', infot, nout, lerr, ok )
 
 1000      ELSE IF( lsamen( 2, c2, 
'HP' ) ) 
THEN 
 1006         CALL zhpsv( 
'/', 0, 0, a, ip, b, 1, info )
 
 1007         CALL chkxer( 
'ZHPSV ', infot, nout, lerr, ok )
 
 1009         CALL zhpsv( 
'U', -1, 0, a, ip, b, 1, info )
 
 1010         CALL chkxer( 
'ZHPSV ', infot, nout, lerr, ok )
 
 1012         CALL zhpsv( 
'U', 0, -1, a, ip, b, 1, info )
 
 1013         CALL chkxer( 
'ZHPSV ', infot, nout, lerr, ok )
 
 1015         CALL zhpsv( 
'U', 2, 0, a, ip, b, 1, info )
 
 1016         CALL chkxer( 
'ZHPSV ', infot, nout, lerr, ok )
 
 1022         CALL zhpsvx( 
'/', 
'U', 0, 0, a, af, ip, b, 1, x, 1, rcond, r1,
 
 1024         CALL chkxer( 
'ZHPSVX', infot, nout, lerr, ok )
 
 1026         CALL zhpsvx( 
'N', 
'/', 0, 0, a, af, ip, b, 1, x, 1, rcond, r1,
 
 1028         CALL chkxer( 
'ZHPSVX', infot, nout, lerr, ok )
 
 1030         CALL zhpsvx( 
'N', 
'U', -1, 0, a, af, ip, b, 1, x, 1, rcond, r1,
 
 1032         CALL chkxer( 
'ZHPSVX', infot, nout, lerr, ok )
 
 1034         CALL zhpsvx( 
'N', 
'U', 0, -1, a, af, ip, b, 1, x, 1, rcond, r1,
 
 1036         CALL chkxer( 
'ZHPSVX', infot, nout, lerr, ok )
 
 1038         CALL zhpsvx( 
'N', 
'U', 2, 0, a, af, ip, b, 1, x, 2, rcond, r1,
 
 1040         CALL chkxer( 
'ZHPSVX', infot, nout, lerr, ok )
 
 1042         CALL zhpsvx( 
'N', 
'U', 2, 0, a, af, ip, b, 2, x, 1, rcond, r1,
 
 1044         CALL chkxer( 
'ZHPSVX', infot, nout, lerr, ok )
 
 1046      ELSE IF( lsamen( 2, c2, 
'SY' ) ) 
THEN 
 1052         CALL zsysv( 
'/', 0, 0, a, 1, ip, b, 1, w, 1, info )
 
 1053         CALL chkxer( 
'ZSYSV ', infot, nout, lerr, ok )
 
 1055         CALL zsysv( 
'U', -1, 0, a, 1, ip, b, 1, w, 1, info )
 
 1056         CALL chkxer( 
'ZSYSV ', infot, nout, lerr, ok )
 
 1058         CALL zsysv( 
'U', 0, -1, a, 1, ip, b, 1, w, 1, info )
 
 1059         CALL chkxer( 
'ZSYSV ', infot, nout, lerr, ok )
 
 1061         CALL zsysv( 
'U', 2, 0, a, 2, ip, b, 1, w, 1, info )
 
 1062         CALL chkxer( 
'ZSYSV ', infot, nout, lerr, ok )
 
 1064         CALL zsysv( 
'U', 0, 0, a, 1, ip, b, 1, w, 0, info )
 
 1065         CALL chkxer( 
'ZSYSV ', infot, nout, lerr, ok )
 
 1067         CALL zsysv( 
'U', 0, 0, a, 1, ip, b, 1, w, -2, info )
 
 1068         CALL chkxer( 
'ZSYSV ', infot, nout, lerr, ok )
 
 1074         CALL zsysvx( 
'/', 
'U', 0, 0, a, 1, af, 1, ip, b, 1, x, 1,
 
 1075     $                rcond, r1, r2, w, 1, rw, info )
 
 1076         CALL chkxer( 
'ZSYSVX', infot, nout, lerr, ok )
 
 1078         CALL zsysvx( 
'N', 
'/', 0, 0, a, 1, af, 1, ip, b, 1, x, 1,
 
 1079     $                rcond, r1, r2, w, 1, rw, info )
 
 1080         CALL chkxer( 
'ZSYSVX', infot, nout, lerr, ok )
 
 1082         CALL zsysvx( 
'N', 
'U', -1, 0, a, 1, af, 1, ip, b, 1, x, 1,
 
 1083     $                rcond, r1, r2, w, 1, rw, info )
 
 1084         CALL chkxer( 
'ZSYSVX', infot, nout, lerr, ok )
 
 1086         CALL zsysvx( 
'N', 
'U', 0, -1, a, 1, af, 1, ip, b, 1, x, 1,
 
 1087     $                rcond, r1, r2, w, 1, rw, info )
 
 1088         CALL chkxer( 
'ZSYSVX', infot, nout, lerr, ok )
 
 1090         CALL zsysvx( 
'N', 
'U', 2, 0, a, 1, af, 2, ip, b, 2, x, 2,
 
 1091     $                rcond, r1, r2, w, 4, rw, info )
 
 1092         CALL chkxer( 
'ZSYSVX', infot, nout, lerr, ok )
 
 1094         CALL zsysvx( 
'N', 
'U', 2, 0, a, 2, af, 1, ip, b, 2, x, 2,
 
 1095     $                rcond, r1, r2, w, 4, rw, info )
 
 1096         CALL chkxer( 
'ZSYSVX', infot, nout, lerr, ok )
 
 1098         CALL zsysvx( 
'N', 
'U', 2, 0, a, 2, af, 2, ip, b, 1, x, 2,
 
 1099     $                rcond, r1, r2, w, 4, rw, info )
 
 1100         CALL chkxer( 
'ZSYSVX', infot, nout, lerr, ok )
 
 1102         CALL zsysvx( 
'N', 
'U', 2, 0, a, 2, af, 2, ip, b, 2, x, 1,
 
 1103     $                rcond, r1, r2, w, 4, rw, info )
 
 1104         CALL chkxer( 
'ZSYSVX', infot, nout, lerr, ok )
 
 1106         CALL zsysvx( 
'N', 
'U', 2, 0, a, 2, af, 2, ip, b, 2, x, 2,
 
 1107     $                rcond, r1, r2, w, 3, rw, info )
 
 1108         CALL chkxer( 
'ZSYSVX', infot, nout, lerr, ok )
 
 1117         CALL zsysvxx( 
'/', 
'U', 0, 0, a, 1, af, 1, ip, eq, r, b, 1, x,
 
 1118     $        1, rcond, rpvgrw, berr, n_err_bnds, err_bnds_n,
 
 1119     $        err_bnds_c, nparams, params, w, rw, info )
 
 1120         CALL chkxer( 
'ZSYSVXX', infot, nout, lerr, ok )
 
 1122         CALL zsysvxx( 
'N', 
'/', 0, 0, a, 1, af, 1, ip, eq, r, b, 1, x,
 
 1123     $        1, rcond, rpvgrw, berr, n_err_bnds, err_bnds_n,
 
 1124     $        err_bnds_c, nparams, params, w, rw, info )
 
 1125         CALL chkxer( 
'ZSYSVXX', infot, nout, lerr, ok )
 
 1127         CALL zsysvxx( 
'N', 
'U', -1, 0, a, 1, af, 1, ip, eq, r, b, 1, x,
 
 1128     $        1, rcond, rpvgrw, berr, n_err_bnds, err_bnds_n,
 
 1129     $        err_bnds_c, nparams, params, w, rw, info )
 
 1130         CALL chkxer( 
'ZSYSVXX', infot, nout, lerr, ok )
 
 1133         CALL zsysvxx( 
'N', 
'U', 0, -1, a, 1, af, 1, ip, eq, r, b, 1, x,
 
 1134     $        1, rcond, rpvgrw, berr, n_err_bnds, err_bnds_n,
 
 1135     $        err_bnds_c, nparams, params, w, rw, info )
 
 1136         CALL chkxer( 
'ZSYSVXX', infot, nout, lerr, ok )
 
 1139         CALL zsysvxx( 
'N', 
'U', 2, 0, a, 1, af, 2, ip, eq, r, b, 2, x,
 
 1140     $        2, rcond, rpvgrw, berr, n_err_bnds, err_bnds_n,
 
 1141     $        err_bnds_c, nparams, params, w, rw, info )
 
 1142         CALL chkxer( 
'ZSYSVXX', infot, nout, lerr, ok )
 
 1144         CALL zsysvxx( 
'N', 
'U', 2, 0, a, 2, af, 1, ip, eq, r, b, 2, x,
 
 1145     $        2, rcond, rpvgrw, berr, n_err_bnds, err_bnds_n,
 
 1146     $        err_bnds_c, nparams, params, w, rw, info )
 
 1147         CALL chkxer( 
'ZSYSVXX', infot, nout, lerr, ok )
 
 1149         CALL zsysvxx( 
'F', 
'U', 2, 0, a, 2, af, 2, ip, 
'A', r, b, 2, x,
 
 1150     $        2, rcond, rpvgrw, berr, n_err_bnds, err_bnds_n,
 
 1151     $        err_bnds_c, nparams, params, w, rw, info )
 
 1152         CALL chkxer( 
'ZSYSVXX', infot, nout, lerr, ok )
 
 1155         CALL zsysvxx( 
'F', 
'U', 2, 0, a, 2, af, 2, ip, eq, r, b, 2, x,
 
 1156     $        2, rcond, rpvgrw, berr, n_err_bnds, err_bnds_n,
 
 1157     $        err_bnds_c, nparams, params, w, rw, info )
 
 1158         CALL chkxer( 
'ZSYSVXX', infot, nout, lerr, ok )
 
 1162         CALL zsysvxx( 
'F', 
'U', 2, 0, a, 2, af, 2, ip, eq, r, b, 2, x,
 
 1163     $        2, rcond, rpvgrw, berr, n_err_bnds, err_bnds_n,
 
 1164     $        err_bnds_c, nparams, params, w, rw, info )
 
 1165         CALL chkxer( 
'ZSYSVXX', infot, nout, lerr, ok )
 
 1168         CALL zsysvxx( 
'N', 
'U', 2, 0, a, 2, af, 2, ip, eq, r, b, 1, x,
 
 1169     $        2, rcond, rpvgrw, berr, n_err_bnds, err_bnds_n,
 
 1170     $        err_bnds_c, nparams, params, w, rw, info )
 
 1171         CALL chkxer( 
'ZSYSVXX', infot, nout, lerr, ok )
 
 1173         CALL zsysvxx( 
'N', 
'U', 2, 0, a, 2, af, 2, ip, eq, r, b, 2, x,
 
 1174     $        1, rcond, rpvgrw, berr, n_err_bnds, err_bnds_n,
 
 1175     $        err_bnds_c, nparams, params, w, rw, info )
 
 1176         CALL chkxer( 
'ZSYSVXX', infot, nout, lerr, ok )
 
 1178      ELSE IF( lsamen( 2, c2, 
'SR' ) ) 
THEN 
 1182         srnamt = 
'ZSYSV_ROOK' 
 1184         CALL zsysv_rook( 
'/', 0, 0, a, 1, ip, b, 1, w, 1, info )
 
 1185         CALL chkxer( 
'ZSYSV_ROOK', infot, nout, lerr, ok )
 
 1187         CALL zsysv_rook( 
'U', -1, 0, a, 1, ip, b, 1, w, 1, info )
 
 1188         CALL chkxer( 
'ZSYSV_ROOK', infot, nout, lerr, ok )
 
 1190         CALL zsysv_rook( 
'U', 0, -1, a, 1, ip, b, 1, w, 1, info )
 
 1191         CALL chkxer( 
'ZSYSV_ROOK', infot, nout, lerr, ok )
 
 1193         CALL zsysv_rook( 
'U', 2, 0, a, 2, ip, b, 1, w, 1, info )
 
 1194         CALL chkxer( 
'ZSYSV_ROOK', infot, nout, lerr, ok )
 
 1196         CALL zsysv_rook( 
'U', 0, 0, a, 1, ip, b, 1, w, 0, info )
 
 1197         CALL chkxer( 
'ZSYSV_ROOK', infot, nout, lerr, ok )
 
 1199         CALL zsysv_rook( 
'U', 0, 0, a, 1, ip, b, 1, w, -2, info )
 
 1201      ELSE IF( lsamen( 2, c2, 
'SK' ) ) 
THEN 
 1215         CALL zsysv_rk( 
'/', 0, 0, a, 1, e, ip, b, 1, w, 1, info )
 
 1216         CALL chkxer( 
'ZSYSV_RK', infot, nout, lerr, ok )
 
 1218         CALL zsysv_rk( 
'U', -1, 0, a, 1, e, ip, b, 1, w, 1, info )
 
 1219         CALL chkxer( 
'ZSYSV_RK', infot, nout, lerr, ok )
 
 1221         CALL zsysv_rk( 
'U', 0, -1, a, 1, e, ip, b, 1, w, 1, info )
 
 1222         CALL chkxer( 
'ZSYSV_RK', infot, nout, lerr, ok )
 
 1224         CALL zsysv_rk( 
'U', 2, 0, a, 1, e, ip, b, 2, w, 1, info )
 
 1225         CALL chkxer( 
'ZSYSV_RK', infot, nout, lerr, ok )
 
 1227         CALL zsysv_rk( 
'U', 2, 0, a, 2, e, ip, b, 1, w, 1, info )
 
 1228         CALL chkxer( 
'ZSYSV_RK', infot, nout, lerr, ok )
 
 1230         CALL zsysv_rk( 
'U', 0, 0, a, 1, e, ip, b, 1, w, 0, info )
 
 1231         CALL chkxer( 
'ZSYSV_RK', infot, nout, lerr, ok )
 
 1233         CALL zsysv_rk( 
'U', 0, 0, a, 1, e, ip, b, 1, w, -2, info )
 
 1234         CALL chkxer( 
'ZSYSV_RK', infot, nout, lerr, ok )
 
 1236      ELSE IF( lsamen( 2, c2, 
'SP' ) ) 
THEN 
 1242         CALL zspsv( 
'/', 0, 0, a, ip, b, 1, info )
 
 1243         CALL chkxer( 
'ZSPSV ', infot, nout, lerr, ok )
 
 1245         CALL zspsv( 
'U', -1, 0, a, ip, b, 1, info )
 
 1246         CALL chkxer( 
'ZSPSV ', infot, nout, lerr, ok )
 
 1248         CALL zspsv( 
'U', 0, -1, a, ip, b, 1, info )
 
 1249         CALL chkxer( 
'ZSPSV ', infot, nout, lerr, ok )
 
 1251         CALL zspsv( 
'U', 2, 0, a, ip, b, 1, info )
 
 1252         CALL chkxer( 
'ZSPSV ', infot, nout, lerr, ok )
 
 1258         CALL zspsvx( 
'/', 
'U', 0, 0, a, af, ip, b, 1, x, 1, rcond, r1,
 
 1260         CALL chkxer( 
'ZSPSVX', infot, nout, lerr, ok )
 
 1262         CALL zspsvx( 
'N', 
'/', 0, 0, a, af, ip, b, 1, x, 1, rcond, r1,
 
 1264         CALL chkxer( 
'ZSPSVX', infot, nout, lerr, ok )
 
 1266         CALL zspsvx( 
'N', 
'U', -1, 0, a, af, ip, b, 1, x, 1, rcond, r1,
 
 1268         CALL chkxer( 
'ZSPSVX', infot, nout, lerr, ok )
 
 1270         CALL zspsvx( 
'N', 
'U', 0, -1, a, af, ip, b, 1, x, 1, rcond, r1,
 
 1272         CALL chkxer( 
'ZSPSVX', infot, nout, lerr, ok )
 
 1274         CALL zspsvx( 
'N', 
'U', 2, 0, a, af, ip, b, 1, x, 2, rcond, r1,
 
 1276         CALL chkxer( 
'ZSPSVX', infot, nout, lerr, ok )
 
 1278         CALL zspsvx( 
'N', 
'U', 2, 0, a, af, ip, b, 2, x, 1, rcond, r1,
 
 1280         CALL chkxer( 
'ZSPSVX', infot, nout, lerr, ok )
 
 1286         WRITE( nout, fmt = 9999 )path
 
 1288         WRITE( nout, fmt = 9998 )path
 
 1291 9999 
FORMAT( 1x, a3, 
' drivers passed the tests of the error exits' )
 
 1292 9998 
FORMAT( 
' *** ', a3, 
' drivers failed the tests of the error ',