!DEC$ FREEFORM

!
!  Copyright 2001 Compaq Computer Corporation
!  
!  Compaq and the Compaq logo Registered in U.S. Patent and Trademark
!  Office.
!  
!  Confidential computer software.  Valid license from Compaq required for
!  possession, use or copying.  Consistent with FAR 12.211 and 12.212,
!  Commerical Computer Software, Computer Software Documentation, and
!  Technical Data for Commmerical Items are licensed to the U.S. Government
!  under vendor's standard commerical license.
!

!DEC$ IF .NOT. DEFINED( __blas_d_include )

   !DEC$ DEFINE __blas_d_include

   !DEC$ IF DEFINED( _DLL )
      !DEC$ OBJCOMMENT LIB: "cxmldll.lib" 
   !DEC$ ELSE
      !DEC$ OBJCOMMENT LIB: "cxml.lib" 
   !DEC$ ENDIF

   INTERFACE
      FUNCTION damax(n,dx,incx)
         !DEC$ ATTRIBUTES DEFAULT :: damax
         INTEGER(KIND=4) :: n
         REAL(KIND=8) :: dx(*)
         INTEGER(KIND=4) :: incx
         REAL(KIND=8) :: damax
      END FUNCTION damax
   END INTERFACE

   INTERFACE
      FUNCTION damin(n,dx,incx)
         !DEC$ ATTRIBUTES DEFAULT :: damin
         INTEGER(KIND=4) :: n
         REAL(KIND=8) :: dx(*)
         INTEGER(KIND=4) :: incx
         REAL(KIND=8) :: damin
      END FUNCTION damin
   END INTERFACE

   INTERFACE
      FUNCTION dasum(n,dx,incx)
         !DEC$ ATTRIBUTES DEFAULT :: dasum
         INTEGER(KIND=4) :: n
         REAL(KIND=8) :: dx(*)
         INTEGER(KIND=4) :: incx
         REAL(KIND=8) :: dasum
      END FUNCTION dasum
   END INTERFACE

   INTERFACE
      SUBROUTINE daxpy(n,da,dx,incx,dy,incy)
         !DEC$ ATTRIBUTES DEFAULT :: daxpy
         INTEGER(KIND=4) :: n
         REAL(KIND=8) :: da
         REAL(KIND=8) :: dx(*)
         INTEGER(KIND=4) :: incx
         REAL(KIND=8) :: dy(*)
         INTEGER(KIND=4) :: incy
      END SUBROUTINE daxpy
   END INTERFACE

   INTERFACE
      SUBROUTINE dcopy(n,dx,incx,dy,incy)
         !DEC$ ATTRIBUTES DEFAULT :: dcopy
         INTEGER(KIND=4) :: n
         REAL(KIND=8) :: dx(*)
         INTEGER(KIND=4) :: incx
         REAL(KIND=8) :: dy(*)
         INTEGER(KIND=4) :: incy
      END SUBROUTINE dcopy
   END INTERFACE

   INTERFACE
      FUNCTION ddot(n,dx,incx,dy,incy)
         !DEC$ ATTRIBUTES DEFAULT :: ddot
         INTEGER(KIND=4) :: n
         REAL(KIND=8) :: dx(*)
         INTEGER(KIND=4) :: incx
         REAL(KIND=8) :: dy(*)
         INTEGER(KIND=4) :: incy
         REAL(KIND=8) :: ddot
      END FUNCTION ddot
   END INTERFACE

   INTERFACE
      SUBROUTINE dgemt(trans,m,n,alpha,a,lda,b,ldb)
         !DEC$ ATTRIBUTES DEFAULT :: dgemt
         INTEGER(KIND=4) :: ldb
         INTEGER(KIND=4) :: lda
         CHARACTER(LEN=1) :: trans
         INTEGER(KIND=4) :: m
         INTEGER(KIND=4) :: n
         REAL(KIND=8) :: alpha
         REAL(KIND=8) :: a(lda,*)
         REAL(KIND=8) :: b(ldb,*)
      END SUBROUTINE dgemt
   END INTERFACE

   INTERFACE
      SUBROUTINE dgemv(trans,m,n,alpha,a,lda,x,incx,beta,y,incy)
         !DEC$ ATTRIBUTES DEFAULT :: dgemv
         INTEGER(KIND=4) :: lda
         CHARACTER(LEN=1) :: trans
         INTEGER(KIND=4) :: m
         INTEGER(KIND=4) :: n
         REAL(KIND=8) :: alpha
         REAL(KIND=8) :: a(lda,*)
         REAL(KIND=8) :: x(*)
         INTEGER(KIND=4) :: incx
         REAL(KIND=8) :: beta
         REAL(KIND=8) :: y(*)
         INTEGER(KIND=4) :: incy
      END SUBROUTINE dgemv
   END INTERFACE

   INTERFACE
      SUBROUTINE dger(m,n,alpha,x,incx,y,incy,a,lda)
         !DEC$ ATTRIBUTES DEFAULT :: dger
         INTEGER(KIND=4) :: lda
         INTEGER(KIND=4) :: m
         INTEGER(KIND=4) :: n
         REAL(KIND=8) :: alpha
         REAL(KIND=8) :: x(*)
         INTEGER(KIND=4) :: incx
         REAL(KIND=8) :: y(*)
         INTEGER(KIND=4) :: incy
         REAL(KIND=8) :: a(lda,*)
      END SUBROUTINE dger
   END INTERFACE

   INTERFACE
      FUNCTION dmax(n,dx,incx)
         !DEC$ ATTRIBUTES DEFAULT :: dmax
         INTEGER(KIND=4) :: n
         REAL(KIND=8) :: dx(*)
         INTEGER(KIND=4) :: incx
         REAL(KIND=8) :: dmax
      END FUNCTION dmax
   END INTERFACE

   INTERFACE
      FUNCTION dmin(n,dx,incx)
         !DEC$ ATTRIBUTES DEFAULT :: dmin
         INTEGER(KIND=4) :: n
         REAL(KIND=8) :: dx(*)
         INTEGER(KIND=4) :: incx
         REAL(KIND=8) :: dmin
      END FUNCTION dmin
   END INTERFACE

   INTERFACE
      FUNCTION dnorm2(n,dx,incx)
         !DEC$ ATTRIBUTES DEFAULT :: dnorm2
         INTEGER(KIND=4) :: n
         REAL(KIND=8) :: dx(*)
         INTEGER(KIND=4) :: incx
         REAL(KIND=8) :: dnorm2
      END FUNCTION dnorm2
   END INTERFACE

   INTERFACE
      FUNCTION dnrm2(n,dx,incx)
         !DEC$ ATTRIBUTES DEFAULT :: dnrm2
         INTEGER(KIND=4) :: n
         REAL(KIND=8) :: dx(*)
         INTEGER(KIND=4) :: incx
         REAL(KIND=8) :: dnrm2
      END FUNCTION dnrm2
   END INTERFACE

   INTERFACE
      FUNCTION dnrsq(n,dx,incx)
         !DEC$ ATTRIBUTES DEFAULT :: dnrsq
         INTEGER(KIND=4) :: n
         REAL(KIND=8) :: dx(*)
         INTEGER(KIND=4) :: incx
         REAL(KIND=8) :: dnrsq
      END FUNCTION dnrsq
   END INTERFACE

   INTERFACE
      SUBROUTINE drot(n,dx,incx,dy,incy,c,s)
         !DEC$ ATTRIBUTES DEFAULT :: drot
         INTEGER(KIND=4) :: n
         REAL(KIND=8) :: dx(*)
         INTEGER(KIND=4) :: incx
         REAL(KIND=8) :: dy(*)
         INTEGER(KIND=4) :: incy
         REAL(KIND=8) :: c
         REAL(KIND=8) :: s
      END SUBROUTINE drot
   END INTERFACE

   INTERFACE
      SUBROUTINE drotg(da,db,c,s)
         !DEC$ ATTRIBUTES DEFAULT :: drotg
         REAL(KIND=8) :: da
         REAL(KIND=8) :: db
         REAL(KIND=8) :: c
         REAL(KIND=8) :: s
      END SUBROUTINE drotg
   END INTERFACE

   INTERFACE
      SUBROUTINE drotm(n,dx,incx,dy,incy,dparam)
         !DEC$ ATTRIBUTES DEFAULT :: drotm
         INTEGER(KIND=4) :: n
         REAL(KIND=8) :: dx(*)
         INTEGER(KIND=4) :: incx
         REAL(KIND=8) :: dy(*)
         INTEGER(KIND=4) :: incy
         REAL(KIND=8) :: dparam(5)
      END SUBROUTINE drotm
   END INTERFACE

   INTERFACE
      SUBROUTINE drotmg(dd1,dd2,dx1,dy1,dparam)
         !DEC$ ATTRIBUTES DEFAULT :: drotmg
         REAL(KIND=8) :: dd1
         REAL(KIND=8) :: dd2
         REAL(KIND=8) :: dx1
         REAL(KIND=8) :: dy1
         REAL(KIND=8) :: dparam(5)
      END SUBROUTINE drotmg
   END INTERFACE

   INTERFACE
      SUBROUTINE dsbmv(uplo,n,k,alpha,a,lda,x,incx,beta,y,incy)
         !DEC$ ATTRIBUTES DEFAULT :: dsbmv
         INTEGER(KIND=4) :: lda
         CHARACTER(LEN=1) :: uplo
         INTEGER(KIND=4) :: n
         INTEGER(KIND=4) :: k
         REAL(KIND=8) :: alpha
         REAL(KIND=8) :: a(lda,*)
         REAL(KIND=8) :: x(*)
         INTEGER(KIND=4) :: incx
         REAL(KIND=8) :: beta
         REAL(KIND=8) :: y(*)
         INTEGER(KIND=4) :: incy
      END SUBROUTINE dsbmv
   END INTERFACE

   INTERFACE
      SUBROUTINE dscal(n,da,dx,incx)
         !DEC$ ATTRIBUTES DEFAULT :: dscal
         INTEGER(KIND=4) :: n
         REAL(KIND=8) :: da
         REAL(KIND=8) :: dx(*)
         INTEGER(KIND=4) :: incx
      END SUBROUTINE dscal
   END INTERFACE

   INTERFACE
      FUNCTION dsdot(n,sx,incx,sy,incy)
         !DEC$ ATTRIBUTES DEFAULT :: dsdot
         INTEGER(KIND=4) :: n
         REAL(KIND=4) :: sx(*)
         INTEGER(KIND=4) :: incx
         REAL(KIND=4) :: sy(*)
         INTEGER(KIND=4) :: incy
         REAL(KIND=8) :: dsdot
      END FUNCTION dsdot
   END INTERFACE

   INTERFACE
      SUBROUTINE dset(n,da,dx,incx)
         !DEC$ ATTRIBUTES DEFAULT :: dset
         INTEGER(KIND=4) :: n
         REAL(KIND=8) :: da
         REAL(KIND=8) :: dx(*)
         INTEGER(KIND=4) :: incx
      END SUBROUTINE dset
   END INTERFACE

   INTERFACE
      SUBROUTINE dspmv(uplo,n,alpha,ap,x,incx,beta,y,incy)
         !DEC$ ATTRIBUTES DEFAULT :: dspmv
         CHARACTER(LEN=1) :: uplo
         INTEGER(KIND=4) :: n
         REAL(KIND=8) :: alpha
         REAL(KIND=8) :: ap(*)
         REAL(KIND=8) :: x(*)
         INTEGER(KIND=4) :: incx
         REAL(KIND=8) :: beta
         REAL(KIND=8) :: y(*)
         INTEGER(KIND=4) :: incy
      END SUBROUTINE dspmv
   END INTERFACE

   INTERFACE
      SUBROUTINE dspr(uplo,n,alpha,x,incx,ap)
         !DEC$ ATTRIBUTES DEFAULT :: dspr
         CHARACTER(LEN=1) :: uplo
         INTEGER(KIND=4) :: n
         REAL(KIND=8) :: alpha
         REAL(KIND=8) :: x(*)
         INTEGER(KIND=4) :: incx
         REAL(KIND=8) :: ap(*)
      END SUBROUTINE dspr
   END INTERFACE

   INTERFACE
      SUBROUTINE dspr2(uplo,n,alpha,x,incx,y,incy,ap)
         !DEC$ ATTRIBUTES DEFAULT :: dspr2
         CHARACTER(LEN=1) :: uplo
         INTEGER(KIND=4) :: n
         REAL(KIND=8) :: alpha
         REAL(KIND=8) :: x(*)
         INTEGER(KIND=4) :: incx
         REAL(KIND=8) :: y(*)
         INTEGER(KIND=4) :: incy
         REAL(KIND=8) :: ap(*)
      END SUBROUTINE dspr2
   END INTERFACE

   INTERFACE
      FUNCTION dsum(n,dx,incx)
         !DEC$ ATTRIBUTES DEFAULT :: dsum
         INTEGER(KIND=4) :: n
         REAL(KIND=8) :: dx(*)
         INTEGER(KIND=4) :: incx
         REAL(KIND=8) :: dsum
      END FUNCTION dsum
   END INTERFACE

   INTERFACE
      SUBROUTINE dswap(n,dx,incx,dy,incy)
         !DEC$ ATTRIBUTES DEFAULT :: dswap
         INTEGER(KIND=4) :: n
         REAL(KIND=8) :: dx(*)
         INTEGER(KIND=4) :: incx
         REAL(KIND=8) :: dy(*)
         INTEGER(KIND=4) :: incy
      END SUBROUTINE dswap
   END INTERFACE

   INTERFACE
      SUBROUTINE dsymm(side,uplo,m,n,alpha,a,lda,b,ldb,beta,c,ldc)
         !DEC$ ATTRIBUTES DEFAULT :: dsymm
         INTEGER(KIND=4) :: ldc
         INTEGER(KIND=4) :: ldb
         INTEGER(KIND=4) :: lda
         CHARACTER(LEN=1) :: side
         CHARACTER(LEN=1) :: uplo
         INTEGER(KIND=4) :: m
         INTEGER(KIND=4) :: n
         REAL(KIND=8) :: alpha
         REAL(KIND=8) :: a(lda,*)
         REAL(KIND=8) :: b(ldb,*)
         REAL(KIND=8) :: beta
         REAL(KIND=8) :: c(ldc,*)
      END SUBROUTINE dsymm
   END INTERFACE

   INTERFACE
      SUBROUTINE dsymv(uplo,n,alpha,a,lda,x,incx,beta,y,incy)
         !DEC$ ATTRIBUTES DEFAULT :: dsymv
         INTEGER(KIND=4) :: lda
         CHARACTER(LEN=1) :: uplo
         INTEGER(KIND=4) :: n
         REAL(KIND=8) :: alpha
         REAL(KIND=8) :: a(lda,*)
         REAL(KIND=8) :: x(*)
         INTEGER(KIND=4) :: incx
         REAL(KIND=8) :: beta
         REAL(KIND=8) :: y(*)
         INTEGER(KIND=4) :: incy
      END SUBROUTINE dsymv
   END INTERFACE

   INTERFACE
      SUBROUTINE dsyr(uplo,n,alpha,x,incx,a,lda)
         !DEC$ ATTRIBUTES DEFAULT :: dsyr
         INTEGER(KIND=4) :: lda
         CHARACTER(LEN=1) :: uplo
         INTEGER(KIND=4) :: n
         REAL(KIND=8) :: alpha
         REAL(KIND=8) :: x(*)
         INTEGER(KIND=4) :: incx
         REAL(KIND=8) :: a(lda,*)
      END SUBROUTINE dsyr
   END INTERFACE

   INTERFACE
      SUBROUTINE dsyr2(uplo,n,alpha,x,incx,y,incy,a,lda)
         !DEC$ ATTRIBUTES DEFAULT :: dsyr2
         INTEGER(KIND=4) :: lda
         CHARACTER(LEN=1) :: uplo
         INTEGER(KIND=4) :: n
         REAL(KIND=8) :: alpha
         REAL(KIND=8) :: x(*)
         INTEGER(KIND=4) :: incx
         REAL(KIND=8) :: y(*)
         INTEGER(KIND=4) :: incy
         REAL(KIND=8) :: a(lda,*)
      END SUBROUTINE dsyr2
   END INTERFACE

   INTERFACE
      SUBROUTINE dsyrk(uplo,trans,n,k,alpha,a,lda,beta,c,ldc)
         !DEC$ ATTRIBUTES DEFAULT :: dsyrk
         INTEGER(KIND=4) :: ldc
         INTEGER(KIND=4) :: lda
         CHARACTER(LEN=1) :: uplo
         CHARACTER(LEN=1) :: trans
         INTEGER(KIND=4) :: n
         INTEGER(KIND=4) :: k
         REAL(KIND=8) :: alpha
         REAL(KIND=8) :: a(lda,*)
         REAL(KIND=8) :: beta
         REAL(KIND=8) :: c(ldc,*)
      END SUBROUTINE dsyrk
   END INTERFACE

   INTERFACE
      SUBROUTINE dtbmv(uplo,trans,diag,n,k,a,lda,x,incx)
         !DEC$ ATTRIBUTES DEFAULT :: dtbmv
         INTEGER(KIND=4) :: lda
         CHARACTER(LEN=1) :: uplo
         CHARACTER(LEN=1) :: trans
         CHARACTER(LEN=1) :: diag
         INTEGER(KIND=4) :: n
         INTEGER(KIND=4) :: k
         REAL(KIND=8) :: a(lda,*)
         REAL(KIND=8) :: x(*)
         INTEGER(KIND=4) :: incx
      END SUBROUTINE dtbmv
   END INTERFACE

   INTERFACE
      SUBROUTINE dtbsv(uplo,trans,diag,n,k,a,lda,x,incx)
         !DEC$ ATTRIBUTES DEFAULT :: dtbsv
         INTEGER(KIND=4) :: lda
         CHARACTER(LEN=1) :: uplo
         CHARACTER(LEN=1) :: trans
         CHARACTER(LEN=1) :: diag
         INTEGER(KIND=4) :: n
         INTEGER(KIND=4) :: k
         REAL(KIND=8) :: a(lda,*)
         REAL(KIND=8) :: x(*)
         INTEGER(KIND=4) :: incx
      END SUBROUTINE dtbsv
   END INTERFACE

   INTERFACE
      SUBROUTINE dtpmv(uplo,trans,diag,n,ap,x,incx)
         !DEC$ ATTRIBUTES DEFAULT :: dtpmv
         CHARACTER(LEN=1) :: uplo
         CHARACTER(LEN=1) :: trans
         CHARACTER(LEN=1) :: diag
         INTEGER(KIND=4) :: n
         REAL(KIND=8) :: ap(*)
         REAL(KIND=8) :: x(*)
         INTEGER(KIND=4) :: incx
      END SUBROUTINE dtpmv
   END INTERFACE

   INTERFACE
      SUBROUTINE dtpsv(uplo,trans,diag,n,ap,x,incx)
         !DEC$ ATTRIBUTES DEFAULT :: dtpsv
         CHARACTER(LEN=1) :: uplo
         CHARACTER(LEN=1) :: trans
         CHARACTER(LEN=1) :: diag
         INTEGER(KIND=4) :: n
         REAL(KIND=8) :: ap(*)
         REAL(KIND=8) :: x(*)
         INTEGER(KIND=4) :: incx
      END SUBROUTINE dtpsv
   END INTERFACE

   INTERFACE
      SUBROUTINE dtrmv(uplo,trans,diag,n,a,lda,x,incx)
         !DEC$ ATTRIBUTES DEFAULT :: dtrmv
         INTEGER(KIND=4) :: lda
         CHARACTER(LEN=1) :: uplo
         CHARACTER(LEN=1) :: trans
         CHARACTER(LEN=1) :: diag
         INTEGER(KIND=4) :: n
         REAL(KIND=8) :: a(lda,*)
         REAL(KIND=8) :: x(*)
         INTEGER(KIND=4) :: incx
      END SUBROUTINE dtrmv
   END INTERFACE

   INTERFACE
      SUBROUTINE dtrsv(uplo,trans,diag,n,a,lda,x,incx)
         !DEC$ ATTRIBUTES DEFAULT :: dtrsv
         INTEGER(KIND=4) :: lda
         CHARACTER(LEN=1) :: uplo
         CHARACTER(LEN=1) :: trans
         CHARACTER(LEN=1) :: diag
         INTEGER(KIND=4) :: n
         REAL(KIND=8) :: a(lda,*)
         REAL(KIND=8) :: x(*)
         INTEGER(KIND=4) :: incx
      END SUBROUTINE dtrsv
   END INTERFACE

   INTERFACE
      SUBROUTINE dvcal(n,da,dx,incx,dy,incy)
         !DEC$ ATTRIBUTES DEFAULT :: dvcal
         INTEGER(KIND=4) :: n
         REAL(KIND=8) :: da
         REAL(KIND=8) :: dx(*)
         INTEGER(KIND=4) :: incx
         REAL(KIND=8) :: dy(*)
         INTEGER(KIND=4) :: incy
      END SUBROUTINE dvcal
   END INTERFACE

   INTERFACE
      FUNCTION dzamax(n,zx,incx)
         !DEC$ ATTRIBUTES DEFAULT :: dzamax
         INTEGER(KIND=4) :: n
         COMPLEX(KIND=8) :: zx(*)
         INTEGER(KIND=4) :: incx
         REAL(KIND=8) :: dzamax
      END FUNCTION dzamax
   END INTERFACE

   INTERFACE
      FUNCTION dzamin(n,zx,incx)
         !DEC$ ATTRIBUTES DEFAULT :: dzamin
         INTEGER(KIND=4) :: n
         COMPLEX(KIND=8) :: zx(*)
         INTEGER(KIND=4) :: incx
         REAL(KIND=8) :: dzamin
      END FUNCTION dzamin
   END INTERFACE

   INTERFACE
      FUNCTION dzasum(n,zx,incx)
         !DEC$ ATTRIBUTES DEFAULT :: dzasum
         INTEGER(KIND=4) :: n
         COMPLEX(KIND=8) :: zx(*)
         INTEGER(KIND=4) :: incx
         REAL(KIND=8) :: dzasum
      END FUNCTION dzasum
   END INTERFACE

   INTERFACE
      SUBROUTINE dzaxpy(n,da,dx,incx,dy,incy,dz,incz)
         !DEC$ ATTRIBUTES DEFAULT :: dzaxpy
         INTEGER(KIND=4) :: n
         REAL(KIND=8) :: da
         REAL(KIND=8) :: dx(*)
         INTEGER(KIND=4) :: incx
         REAL(KIND=8) :: dy(*)
         INTEGER(KIND=4) :: incy
         REAL(KIND=8) :: dz(*)
         INTEGER(KIND=4) :: incz
      END SUBROUTINE dzaxpy
   END INTERFACE

   INTERFACE
      FUNCTION dznorm2(n,zx,incx)
         !DEC$ ATTRIBUTES DEFAULT :: dznorm2
         INTEGER(KIND=4) :: n
         COMPLEX(KIND=8) :: zx(*)
         INTEGER(KIND=4) :: incx
         REAL(KIND=8) :: dznorm2
      END FUNCTION dznorm2
   END INTERFACE

   INTERFACE
      FUNCTION dznrm2(n,zx,incx)
         !DEC$ ATTRIBUTES DEFAULT :: dznrm2
         INTEGER(KIND=4) :: n
         COMPLEX(KIND=8) :: zx(*)
         INTEGER(KIND=4) :: incx
         REAL(KIND=8) :: dznrm2
      END FUNCTION dznrm2
   END INTERFACE

   INTERFACE
      FUNCTION dznrsq(n,zx,incx)
         !DEC$ ATTRIBUTES DEFAULT :: dznrsq
         INTEGER(KIND=4) :: n
         REAL(KIND=8) :: zx(2,*)
         INTEGER(KIND=4) :: incx
         REAL(KIND=8) :: dznrsq
      END FUNCTION dznrsq
   END INTERFACE

   INTERFACE
      FUNCTION idamax(n,dx,incx)
         !DEC$ ATTRIBUTES DEFAULT :: idamax
         INTEGER(KIND=4) :: n
         REAL(KIND=8) :: dx(*)
         INTEGER(KIND=4) :: incx
         INTEGER(KIND=4) :: idamax
      END FUNCTION idamax
   END INTERFACE

   INTERFACE
      FUNCTION idamin(n,dx,incx)
         !DEC$ ATTRIBUTES DEFAULT :: idamin
         INTEGER(KIND=4) :: n
         REAL(KIND=8) :: dx(*)
         INTEGER(KIND=4) :: incx
         INTEGER(KIND=4) :: idamin
      END FUNCTION idamin
   END INTERFACE

   INTERFACE
      FUNCTION idmax(n,dx,incx)
         !DEC$ ATTRIBUTES DEFAULT :: idmax
         INTEGER(KIND=4) :: n
         REAL(KIND=8) :: dx(*)
         INTEGER(KIND=4) :: incx
         INTEGER(KIND=4) :: idmax
      END FUNCTION idmax
   END INTERFACE

   INTERFACE
      FUNCTION idmin(n,dx,incx)
         !DEC$ ATTRIBUTES DEFAULT :: idmin
         INTEGER(KIND=4) :: n
         REAL(KIND=8) :: dx(*)
         INTEGER(KIND=4) :: incx
         INTEGER(KIND=4) :: idmin
      END FUNCTION idmin
   END INTERFACE

!DEC$ ENDIF
